mirror of
https://github.com/ApfelTeeSaft/RebrewU.git
synced 2026-08-26 19:33:27 +00:00
38493 lines
2.0 MiB
Plaintext
38493 lines
2.0 MiB
Plaintext
// Generated by RebrewU -- do not edit
|
|
#include <rebrewu_runtime.h>
|
|
#include <stdint.h>
|
|
#include <math.h>
|
|
|
|
#include "Gambit.h"
|
|
|
|
// fn_026903B0 @ 0x26903b0
|
|
void Gambit_fn_026903B0(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_026903B0: ; // 0x26903b0
|
|
/* 026903B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 026903B4 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026903B4 */ _t1 = _t0 & 0x00000001u;
|
|
/* 026903B4 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 026903B4 */ goto L_026903B8;
|
|
L_026903B8: ; // 0x26903b8
|
|
/* 026903B8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 026903B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 026903BC */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026903BC */ _t3 = _t2 & 0x00000001u;
|
|
/* 026903BC */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 026903BC */ goto L_026903C0;
|
|
L_026903C0: ; // 0x26903c0
|
|
/* 026903C0 */ 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_026903C4 @ 0x26903c4
|
|
void Gambit_fn_026903C4(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_026903C4: ; // 0x26903c4
|
|
/* 026903C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 026903C8 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026903C8 */ _t1 = _t0 & 0x00000001u;
|
|
/* 026903C8 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 026903C8 */ goto L_026903CC;
|
|
L_026903CC: ; // 0x26903cc
|
|
/* 026903CC */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 026903CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 026903D0 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026903D0 */ _t3 = _t2 & 0x00000001u;
|
|
/* 026903D0 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 026903D0 */ goto L_026903D4;
|
|
L_026903D4: ; // 0x26903d4
|
|
/* 026903D4 */ 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_026903D8 @ 0x26903d8
|
|
void Gambit_fn_026903D8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_026903D8: ; // 0x26903d8
|
|
/* 026903D8 */ cpu->r[11] = 0x101D0000u;
|
|
/* 026903DC */ _t0 = cpu->r[11] + 0x00000DD8u;
|
|
/* 026903DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 026903DC */ cpu->r[11] = _t0;
|
|
/* 026903E0 */ cpu->r[12] = 0x101D0000u;
|
|
/* 026903E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 026903E8 */ cpu->r[12] = cpu->r[12] + 0x00000DDCu;
|
|
/* 026903EC */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026903EC */ _t2 = _t1 & 0x00000001u;
|
|
/* 026903EC */ if (_t2) goto L_026903F0; else goto L_02690404;
|
|
L_026903F0: ; // 0x26903f0
|
|
/* 026903F0 */ cpu->r[9] = 0x100E0000u;
|
|
/* 026903F4 */ cpu->r[8] = 0x00000001u;
|
|
/* 026903F8 */ cpu->r[9] = cpu->r[9] + 0x00003660u;
|
|
/* 026903FC */ _t3 = cpu->r[11] + 0x00000000u;
|
|
/* 026903FC */ rbrew_write32(cpu->mem, _t3, cpu->r[8]);
|
|
/* 02690400 */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 02690400 */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
L_02690404: ; // 0x2690404
|
|
/* 02690404 */ cpu->r[10] = cpu->r[4] ^ cpu->r[12];
|
|
/* 02690408 */ cpu->r[0] = rbrew_clz32(cpu->r[10]);
|
|
/* 0269040C */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 02690410 */ return;
|
|
}
|
|
|
|
// fn_02690414 @ 0x2690414
|
|
void Gambit_fn_02690414(CPUState* cpu) {
|
|
L_02690414: ; // 0x2690414
|
|
/* 02690414 */ return;
|
|
}
|
|
|
|
// fn_02690418 @ 0x2690418
|
|
void Gambit_fn_02690418(CPUState* cpu) {
|
|
L_02690418: ; // 0x2690418
|
|
/* 02690418 */ return;
|
|
}
|
|
|
|
// fn_0269041C @ 0x269041c
|
|
void Gambit_fn_0269041C(CPUState* cpu) {
|
|
L_0269041C: ; // 0x269041c
|
|
/* 0269041C */ return;
|
|
}
|
|
|
|
// fn_02690420 @ 0x2690420
|
|
void Gambit_fn_02690420(CPUState* cpu) {
|
|
L_02690420: ; // 0x2690420
|
|
/* 02690420 */ return;
|
|
}
|
|
|
|
// fn_02690424 @ 0x2690424
|
|
void Gambit_fn_02690424(CPUState* cpu) {
|
|
L_02690424: ; // 0x2690424
|
|
/* 02690424 */ return;
|
|
}
|
|
|
|
// fn_02690428 @ 0x2690428
|
|
void Gambit_fn_02690428(CPUState* cpu) {
|
|
L_02690428: ; // 0x2690428
|
|
/* 02690428 */ return;
|
|
}
|
|
|
|
// fn_0269042C @ 0x269042c
|
|
void Gambit_fn_0269042C(CPUState* cpu) {
|
|
uint32_t _t0, _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_0269042C: ; // 0x269042c
|
|
/* 0269042C */ cpu->r[0] = cpu->lr;
|
|
/* 02690430 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 02690430 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02690430 */ cpu->r[1] = _t0;
|
|
/* 02690434 */ _t1 = cpu->r[1] + 0x00000030u;
|
|
/* 02690434 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 02690438 */ /* nop */
|
|
/* 0269043C */ _t2 = cpu->r[1] + 0x00000020u;
|
|
/* 0269043C */ rbrew_write_f64(cpu->mem, _t2, cpu->f[30]);
|
|
/* 02690440 */ _t3 = cpu->r[1] + 0x00000038u;
|
|
/* 02690440 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 02690444 */ _t4 = cpu->r[1] + 0x00000018u;
|
|
/* 02690444 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 02690448 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02690448 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 0269044C */ _t6 = cpu->r[1] + 0x00000044u;
|
|
/* 0269044C */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02690450 */ /* nop */
|
|
/* 02690454 */ _t7 = cpu->r[1] + 0x00000010u;
|
|
/* 02690454 */ rbrew_write32(cpu->mem, _t7, cpu->r[28]);
|
|
/* 02690458 */ cpu->r[30] = cpu->r[3];
|
|
/* 02690458 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0269045C */ _t8 = cpu->r[1] + 0x00000028u;
|
|
/* 0269045C */ rbrew_write_f32(cpu->mem, _t8, cpu->f[30]);
|
|
/* 02690460 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02690460 */ rbrew_write32(cpu->mem, _t9, cpu->r[29]);
|
|
/* 02690464 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02690464 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02690464 */ if (_t11) goto L_02690468; else goto L_02690478;
|
|
L_02690468: ; // 0x2690468
|
|
/* 02690468 */ cpu->r[3] = 0x00000108u;
|
|
/* 0269046C */ Gambit_fn_02801A78(cpu);
|
|
/* 02690470 */ cpu->r[30] = cpu->r[3];
|
|
/* 02690470 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02690474 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02690474 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02690474 */ if (_t13) goto L_02690674; else goto L_02690478;
|
|
L_02690478: ; // 0x2690478
|
|
/* 02690478 */ cpu->r[8] = 0x100E0000u;
|
|
/* 0269047C */ cpu->r[11] = 0x100E0000u;
|
|
/* 02690480 */ cpu->r[8] = cpu->r[8] + 0x00003748u;
|
|
/* 02690484 */ cpu->r[11] = cpu->r[11] + 0x000037C0u;
|
|
/* 02690488 */ cpu->r[3] = cpu->r[30];
|
|
/* 0269048C */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269048C */ rbrew_write32(cpu->mem, _t14, cpu->r[8]);
|
|
/* 02690490 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02690494 */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 02690494 */ rbrew_write32(cpu->mem, _t15, cpu->r[11]);
|
|
/* 02690498 */ Gambit_fn_02690118(cpu);
|
|
/* 0269049C */ cpu->r[6] = 0x100E0000u;
|
|
/* 026904A0 */ cpu->r[9] = 0x100E0000u;
|
|
/* 026904A4 */ _t16 = cpu->r[6] + 0x000037BCu;
|
|
/* 026904A4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 026904A8 */ cpu->r[31] = 0x101F0000u;
|
|
/* 026904AC */ _t17 = cpu->r[9] + 0x000037B8u;
|
|
/* 026904AC */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 026904B0 */ cpu->r[8] = 0x100E0000u;
|
|
/* 026904B4 */ cpu->f[2] = cpu->f[31];
|
|
/* 026904B8 */ cpu->r[31] = cpu->r[31] + 0x00006338u;
|
|
/* 026904BC */ cpu->f[1] = cpu->f[30];
|
|
/* 026904C0 */ cpu->r[8] = cpu->r[8] + 0x00003854u;
|
|
/* 026904C4 */ cpu->r[4] = cpu->r[31];
|
|
/* 026904C8 */ cpu->r[3] = cpu->r[30] + 0x00000070u;
|
|
/* 026904CC */ _t18 = cpu->r[30] + 0x00000004u;
|
|
/* 026904CC */ rbrew_write32(cpu->mem, _t18, cpu->r[8]);
|
|
/* 026904D0 */ Gambit_fn_02698DA8(cpu);
|
|
/* 026904D4 */ cpu->r[28] = cpu->r[30] + 0x000000F4u;
|
|
/* 026904D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 026904D8 */ cpu->r[29] = 0x00000000u;
|
|
/* 026904DC */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026904DC */ _t20 = _t19 & 0x00000001u;
|
|
/* 026904DC */ if (_t20) goto L_026904E0; else goto L_026904F0;
|
|
L_026904E0: ; // 0x26904e0
|
|
/* 026904E0 */ cpu->r[3] = 0x00000014u;
|
|
/* 026904E4 */ Gambit_fn_02801A78(cpu);
|
|
/* 026904E8 */ cpu->r[28] = cpu->r[3];
|
|
/* 026904E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 026904EC */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026904EC */ _t22 = _t21 & 0x00000001u;
|
|
/* 026904EC */ if (_t22) goto L_0269051C; else goto L_026904F0;
|
|
L_026904F0: ; // 0x26904f0
|
|
/* 026904F0 */ cpu->r[3] = cpu->r[28];
|
|
/* 026904F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 026904F4 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026904F4 */ _t24 = _t23 & 0x00000001u;
|
|
/* 026904F4 */ if (_t24) goto L_026904F8; else goto L_02690508;
|
|
L_026904F8: ; // 0x26904f8
|
|
/* 026904F8 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 026904FC */ Gambit_fn_02801A78(cpu);
|
|
/* 02690500 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02690504 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02690504 */ _t26 = _t25 & 0x00000001u;
|
|
/* 02690504 */ if (_t26) goto L_02690514; else goto L_02690508;
|
|
L_02690508: ; // 0x2690508
|
|
/* 02690508 */ _t27 = cpu->r[3] + 0x00000004u;
|
|
/* 02690508 */ rbrew_write32(cpu->mem, _t27, cpu->r[29]);
|
|
/* 0269050C */ _t28 = cpu->r[3] + 0x00000000u;
|
|
/* 0269050C */ rbrew_write32(cpu->mem, _t28, cpu->r[29]);
|
|
/* 02690510 */ _t29 = cpu->r[3] + 0x00000008u;
|
|
/* 02690510 */ rbrew_write32(cpu->mem, _t29, cpu->r[29]);
|
|
L_02690514: ; // 0x2690514
|
|
/* 02690514 */ _t30 = cpu->r[28] + 0x00000010u;
|
|
/* 02690514 */ rbrew_write32(cpu->mem, _t30, cpu->r[29]);
|
|
/* 02690518 */ _t31 = cpu->r[28] + 0x0000000Cu;
|
|
/* 02690518 */ rbrew_write32(cpu->mem, _t31, cpu->r[29]);
|
|
L_0269051C: ; // 0x269051c
|
|
/* 0269051C */ cpu->f[1] = cpu->f[30];
|
|
/* 02690520 */ cpu->r[3] = cpu->r[30] + 0x00000070u;
|
|
/* 02690524 */ Gambit_fn_0269947C(cpu);
|
|
/* 02690528 */ cpu->f[1] = cpu->f[31];
|
|
/* 0269052C */ cpu->r[3] = cpu->r[30] + 0x00000070u;
|
|
/* 02690530 */ Gambit_fn_02699484(cpu);
|
|
/* 02690534 */ cpu->r[4] = 0x101F0000u;
|
|
/* 02690538 */ cpu->r[3] = cpu->r[30] + 0x00000070u;
|
|
/* 0269053C */ cpu->r[4] = cpu->r[4] + 0xFFFFD870u;
|
|
/* 02690540 */ Gambit_fn_02699458(cpu);
|
|
/* 02690544 */ cpu->r[5] = 0x00000004u;
|
|
/* 02690548 */ cpu->r[4] = 0x00000000u;
|
|
/* 0269054C */ cpu->r[3] = 0x00000180u;
|
|
/* 02690550 */ Gambit_fn_02801ADC(cpu);
|
|
/* 02690554 */ cpu->r[12] = cpu->r[3];
|
|
/* 02690554 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02690558 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02690558 */ _t33 = _t32 & 0x00000001u;
|
|
/* 02690558 */ if (_t33) goto L_02690598; else goto L_0269055C;
|
|
L_0269055C: ; // 0x269055c
|
|
/* 0269055C */ cpu->r[0] = 0x00000007u;
|
|
/* 02690560 */ cpu->r[9] = 0x00000000u;
|
|
/* 02690564 */ cpu->r[11] = cpu->r[12] + 0x0000002Cu;
|
|
/* 02690568 */ cpu->ctr = cpu->r[0];
|
|
/* 0269056C */ _t34 = cpu->r[30] + 0x00000100u;
|
|
/* 0269056C */ rbrew_write32(cpu->mem, _t34, cpu->r[12]);
|
|
L_02690570: ; // 0x2690570
|
|
/* 02690570 */ _t35 = cpu->r[12] + cpu->r[9];
|
|
/* 02690570 */ rbrew_write32(cpu->mem, _t35, cpu->r[11]);
|
|
/* 02690574 */ cpu->r[9] = cpu->r[9] + 0x0000002Cu;
|
|
/* 02690578 */ cpu->r[11] = cpu->r[11] + 0x0000002Cu;
|
|
/* 0269057C */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0269057C */ _t36 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0269057C */ _t37 = _t36 >> (0x00000002u & 31u);
|
|
/* 0269057C */ _t38 = _t37 & 0x00000001u;
|
|
/* 0269057C */ if (_t38) goto L_02690570; else goto L_02690580;
|
|
L_02690580: ; // 0x2690580
|
|
/* 02690580 */ _t39 = cpu->r[12] + 0x00000134u;
|
|
/* 02690580 */ rbrew_write32(cpu->mem, _t39, cpu->r[29]);
|
|
/* 02690584 */ cpu->r[5] = cpu->r[12] + 0x00000160u;
|
|
/* 02690588 */ cpu->r[3] = cpu->r[30] + 0x000000F4u;
|
|
/* 0269058C */ cpu->r[4] = 0x00000008u;
|
|
/* 02690590 */ _t40 = cpu->r[30] + 0x00000104u;
|
|
/* 02690590 */ rbrew_write32(cpu->mem, _t40, cpu->r[12]);
|
|
/* 02690594 */ Gambit_fn_028023A8(cpu);
|
|
L_02690598: ; // 0x2690598
|
|
/* 02690598 */ cpu->r[9] = 0x100E0000u;
|
|
/* 0269059C */ cpu->r[3] = 0x101F0000u;
|
|
/* 026905A0 */ cpu->r[0] = 0x00000008u;
|
|
/* 026905A4 */ _t41 = cpu->r[9] + 0x00003734u;
|
|
/* 026905A4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 026905A8 */ cpu->r[9] = 0x00000000u;
|
|
/* 026905AC */ cpu->r[3] = cpu->r[3] + 0x0000635Cu;
|
|
/* 026905B0 */ cpu->r[29] = cpu->r[9];
|
|
/* 026905B4 */ cpu->ctr = cpu->r[0];
|
|
/* 026905B8 */ _t42 = cpu->r[30] + 0x000000F4u;
|
|
/* 026905B8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t42);
|
|
/* 026905BC */ cpu->r[4] = 0x00000001u;
|
|
L_026905C0: ; // 0x26905c0
|
|
/* 026905C0 */ _t43 = cpu->r[30] + 0x000000F8u;
|
|
/* 026905C0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t43);
|
|
/* 026905C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], cpu->r[8]);
|
|
/* 026905C8 */ _t44 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026905C8 */ _t45 = _t44 & 0x00000001u;
|
|
/* 026905C8 */ if (_t45) goto L_026905CC; else goto L_0269066C;
|
|
L_026905CC: ; // 0x26905cc
|
|
/* 026905CC */ _t46 = cpu->r[30] + 0x00000100u;
|
|
/* 026905CC */ cpu->r[11] = rbrew_read32(cpu->mem, _t46);
|
|
/* 026905D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 026905D4 */ _t47 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026905D4 */ _t48 = _t47 & 0x00000001u;
|
|
/* 026905D4 */ if (_t48) goto L_026905E0; else goto L_026905D8;
|
|
L_026905D8: ; // 0x26905d8
|
|
/* 026905D8 */ _t49 = cpu->r[11] + 0x00000000u;
|
|
/* 026905D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t49);
|
|
/* 026905DC */ _t50 = cpu->r[30] + 0x00000100u;
|
|
/* 026905DC */ rbrew_write32(cpu->mem, _t50, cpu->r[0]);
|
|
L_026905E0: ; // 0x26905e0
|
|
/* 026905E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 026905E4 */ _t51 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026905E4 */ _t52 = _t51 & 0x00000001u;
|
|
/* 026905E4 */ if (_t52) goto L_02690640; else goto L_026905E8;
|
|
L_026905E8: ; // 0x26905e8
|
|
/* 026905E8 */ _t53 = cpu->r[11] + 0x00000000u;
|
|
/* 026905E8 */ rbrew_write32(cpu->mem, _t53, cpu->r[9]);
|
|
/* 026905EC */ _t54 = cpu->r[31] + 0x00000000u;
|
|
/* 026905EC */ cpu->r[6] = rbrew_read32(cpu->mem, _t54);
|
|
/* 026905F0 */ _t55 = cpu->r[11] + 0x00000004u;
|
|
/* 026905F0 */ rbrew_write32(cpu->mem, _t55, cpu->r[6]);
|
|
/* 026905F4 */ _t56 = cpu->r[31] + 0x00000004u;
|
|
/* 026905F4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t56);
|
|
/* 026905F8 */ _t57 = cpu->r[11] + 0x00000008u;
|
|
/* 026905F8 */ rbrew_write32(cpu->mem, _t57, cpu->r[7]);
|
|
/* 026905FC */ _t58 = cpu->r[31] + 0x00000008u;
|
|
/* 026905FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t58);
|
|
/* 02690600 */ _t59 = cpu->r[11] + 0x0000000Cu;
|
|
/* 02690600 */ rbrew_write32(cpu->mem, _t59, cpu->r[0]);
|
|
/* 02690604 */ _t60 = cpu->r[3] + 0x00000000u;
|
|
/* 02690604 */ cpu->r[7] = rbrew_read32(cpu->mem, _t60);
|
|
/* 02690608 */ _t61 = cpu->r[11] + 0x00000010u;
|
|
/* 02690608 */ rbrew_write32(cpu->mem, _t61, cpu->r[7]);
|
|
/* 0269060C */ _t62 = cpu->r[3] + 0x00000004u;
|
|
/* 0269060C */ cpu->r[10] = rbrew_read32(cpu->mem, _t62);
|
|
/* 02690610 */ _t63 = cpu->r[11] + 0x00000014u;
|
|
/* 02690610 */ rbrew_write32(cpu->mem, _t63, cpu->r[10]);
|
|
/* 02690614 */ _t64 = cpu->r[3] + 0x00000008u;
|
|
/* 02690614 */ cpu->r[12] = rbrew_read32(cpu->mem, _t64);
|
|
/* 02690618 */ _t65 = cpu->r[11] + 0x00000020u;
|
|
/* 02690618 */ rbrew_write32(cpu->mem, _t65, cpu->r[29]);
|
|
/* 0269061C */ _t66 = cpu->r[11] + 0x00000018u;
|
|
/* 0269061C */ rbrew_write32(cpu->mem, _t66, cpu->r[12]);
|
|
/* 02690620 */ _t67 = cpu->r[11] + 0x00000028u;
|
|
/* 02690620 */ rbrew_write32(cpu->mem, _t67, cpu->r[4]);
|
|
/* 02690624 */ _t68 = cpu->r[11] + 0x0000001Cu;
|
|
/* 02690624 */ rbrew_write_f32(cpu->mem, _t68, cpu->f[0]);
|
|
/* 02690628 */ _t69 = cpu->r[11] + 0x00000024u;
|
|
/* 02690628 */ rbrew_write8(cpu->mem, _t69, (uint8_t)cpu->r[29]);
|
|
/* 0269062C */ _t70 = cpu->r[30] + 0x000000F8u;
|
|
/* 0269062C */ cpu->r[0] = rbrew_read32(cpu->mem, _t70);
|
|
/* 02690630 */ _t71 = cpu->r[30] + 0x000000F4u;
|
|
/* 02690630 */ cpu->r[5] = rbrew_read32(cpu->mem, _t71);
|
|
/* 02690634 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], cpu->r[0]);
|
|
/* 02690638 */ _t72 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02690638 */ _t73 = _t72 & 0x00000001u;
|
|
/* 02690638 */ if (_t73) goto L_0269063C; else goto L_0269066C;
|
|
L_0269063C: ; // 0x269063c
|
|
/* 0269063C */ goto L_02690654;
|
|
L_02690640: ; // 0x2690640
|
|
/* 02690640 */ _t74 = cpu->r[30] + 0x000000F4u;
|
|
/* 02690640 */ cpu->r[5] = rbrew_read32(cpu->mem, _t74);
|
|
/* 02690644 */ _t75 = cpu->r[30] + 0x000000F8u;
|
|
/* 02690644 */ cpu->r[0] = rbrew_read32(cpu->mem, _t75);
|
|
/* 02690648 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], cpu->r[0]);
|
|
/* 0269064C */ cpu->r[11] = 0x00000000u;
|
|
/* 02690650 */ _t76 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02690650 */ _t77 = _t76 & 0x00000001u;
|
|
/* 02690650 */ if (_t77) goto L_02690654; else goto L_0269066C;
|
|
L_02690654: ; // 0x2690654
|
|
/* 02690654 */ _t78 = cpu->r[30] + 0x000000FCu;
|
|
/* 02690654 */ cpu->r[6] = rbrew_read32(cpu->mem, _t78);
|
|
/* 02690658 */ cpu->r[5] = rbrew_rlwinm(cpu->r[5], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0269065C */ _t79 = cpu->r[5] + cpu->r[6];
|
|
/* 0269065C */ rbrew_write32(cpu->mem, _t79, cpu->r[11]);
|
|
/* 02690660 */ _t80 = cpu->r[30] + 0x000000F4u;
|
|
/* 02690660 */ cpu->r[7] = rbrew_read32(cpu->mem, _t80);
|
|
/* 02690664 */ cpu->r[5] = cpu->r[7] + 0x00000001u;
|
|
/* 02690668 */ _t81 = cpu->r[30] + 0x000000F4u;
|
|
/* 02690668 */ rbrew_write32(cpu->mem, _t81, cpu->r[5]);
|
|
L_0269066C: ; // 0x269066c
|
|
/* 0269066C */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 02690670 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02690670 */ _t82 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02690670 */ _t83 = _t82 >> (0x00000002u & 31u);
|
|
/* 02690670 */ _t84 = _t83 & 0x00000001u;
|
|
/* 02690670 */ if (_t84) goto L_026905C0; else goto L_02690674;
|
|
L_02690674: ; // 0x2690674
|
|
/* 02690674 */ _t85 = cpu->r[1] + 0x00000010u;
|
|
/* 02690674 */ cpu->r[28] = rbrew_read32(cpu->mem, _t85);
|
|
/* 02690678 */ _t86 = cpu->r[1] + 0x00000014u;
|
|
/* 02690678 */ cpu->r[29] = rbrew_read32(cpu->mem, _t86);
|
|
/* 0269067C */ _t87 = cpu->r[1] + 0x00000038u;
|
|
/* 0269067C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t87);
|
|
/* 02690680 */ _t88 = cpu->r[1] + 0x00000028u;
|
|
/* 02690680 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t88);
|
|
/* 02690684 */ _t89 = cpu->r[1] + 0x00000030u;
|
|
/* 02690684 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t89);
|
|
/* 02690688 */ _t90 = cpu->r[1] + 0x00000020u;
|
|
/* 02690688 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t90);
|
|
/* 0269068C */ _t91 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269068C */ cpu->r[31] = rbrew_read32(cpu->mem, _t91);
|
|
/* 02690690 */ cpu->r[3] = cpu->r[30];
|
|
/* 02690694 */ _t92 = cpu->r[1] + 0x00000018u;
|
|
/* 02690694 */ cpu->r[30] = rbrew_read32(cpu->mem, _t92);
|
|
/* 02690698 */ _t93 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02690698 */ _t94 = _t93 & 0x00000001u;
|
|
/* 02690698 */ if (_t94) goto L_0269069C; // else: addr-0 trap, fall-through
|
|
L_0269069C: ; // 0x269069c
|
|
/* 0269069C */ _t95 = cpu->r[1] + 0x00000044u;
|
|
/* 0269069C */ cpu->r[0] = rbrew_read32(cpu->mem, _t95);
|
|
/* 026906A0 */ cpu->lr = cpu->r[0];
|
|
/* 026906A4 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 026906A8 */ return;
|
|
}
|
|
|
|
// fn_02690430 @ 0x2690430
|
|
void Gambit_fn_02690430(CPUState* cpu) {
|
|
uint32_t _t0, _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_02690430: ; // 0x2690430
|
|
/* 02690430 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 02690430 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02690430 */ cpu->r[1] = _t0;
|
|
/* 02690434 */ _t1 = cpu->r[1] + 0x00000030u;
|
|
/* 02690434 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 02690438 */ /* nop */
|
|
/* 0269043C */ _t2 = cpu->r[1] + 0x00000020u;
|
|
/* 0269043C */ rbrew_write_f64(cpu->mem, _t2, cpu->f[30]);
|
|
/* 02690440 */ _t3 = cpu->r[1] + 0x00000038u;
|
|
/* 02690440 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 02690444 */ _t4 = cpu->r[1] + 0x00000018u;
|
|
/* 02690444 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 02690448 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02690448 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 0269044C */ _t6 = cpu->r[1] + 0x00000044u;
|
|
/* 0269044C */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02690450 */ /* nop */
|
|
/* 02690454 */ _t7 = cpu->r[1] + 0x00000010u;
|
|
/* 02690454 */ rbrew_write32(cpu->mem, _t7, cpu->r[28]);
|
|
/* 02690458 */ cpu->r[30] = cpu->r[3];
|
|
/* 02690458 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0269045C */ _t8 = cpu->r[1] + 0x00000028u;
|
|
/* 0269045C */ rbrew_write_f32(cpu->mem, _t8, cpu->f[30]);
|
|
/* 02690460 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02690460 */ rbrew_write32(cpu->mem, _t9, cpu->r[29]);
|
|
/* 02690464 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02690464 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02690464 */ if (_t11) goto L_02690468; else goto L_02690478;
|
|
L_02690468: ; // 0x2690468
|
|
/* 02690468 */ cpu->r[3] = 0x00000108u;
|
|
/* 0269046C */ Gambit_fn_02801A78(cpu);
|
|
/* 02690470 */ cpu->r[30] = cpu->r[3];
|
|
/* 02690470 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02690474 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02690474 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02690474 */ if (_t13) goto L_02690674; else goto L_02690478;
|
|
L_02690478: ; // 0x2690478
|
|
/* 02690478 */ cpu->r[8] = 0x100E0000u;
|
|
/* 0269047C */ cpu->r[11] = 0x100E0000u;
|
|
/* 02690480 */ cpu->r[8] = cpu->r[8] + 0x00003748u;
|
|
/* 02690484 */ cpu->r[11] = cpu->r[11] + 0x000037C0u;
|
|
/* 02690488 */ cpu->r[3] = cpu->r[30];
|
|
/* 0269048C */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269048C */ rbrew_write32(cpu->mem, _t14, cpu->r[8]);
|
|
/* 02690490 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02690494 */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 02690494 */ rbrew_write32(cpu->mem, _t15, cpu->r[11]);
|
|
/* 02690498 */ Gambit_fn_02690118(cpu);
|
|
/* 0269049C */ cpu->r[6] = 0x100E0000u;
|
|
/* 026904A0 */ cpu->r[9] = 0x100E0000u;
|
|
/* 026904A4 */ _t16 = cpu->r[6] + 0x000037BCu;
|
|
/* 026904A4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 026904A8 */ cpu->r[31] = 0x101F0000u;
|
|
/* 026904AC */ _t17 = cpu->r[9] + 0x000037B8u;
|
|
/* 026904AC */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 026904B0 */ cpu->r[8] = 0x100E0000u;
|
|
/* 026904B4 */ cpu->f[2] = cpu->f[31];
|
|
/* 026904B8 */ cpu->r[31] = cpu->r[31] + 0x00006338u;
|
|
/* 026904BC */ cpu->f[1] = cpu->f[30];
|
|
/* 026904C0 */ cpu->r[8] = cpu->r[8] + 0x00003854u;
|
|
/* 026904C4 */ cpu->r[4] = cpu->r[31];
|
|
/* 026904C8 */ cpu->r[3] = cpu->r[30] + 0x00000070u;
|
|
/* 026904CC */ _t18 = cpu->r[30] + 0x00000004u;
|
|
/* 026904CC */ rbrew_write32(cpu->mem, _t18, cpu->r[8]);
|
|
/* 026904D0 */ Gambit_fn_02698DA8(cpu);
|
|
/* 026904D4 */ cpu->r[28] = cpu->r[30] + 0x000000F4u;
|
|
/* 026904D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 026904D8 */ cpu->r[29] = 0x00000000u;
|
|
/* 026904DC */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026904DC */ _t20 = _t19 & 0x00000001u;
|
|
/* 026904DC */ if (_t20) goto L_026904E0; else goto L_026904F0;
|
|
L_026904E0: ; // 0x26904e0
|
|
/* 026904E0 */ cpu->r[3] = 0x00000014u;
|
|
/* 026904E4 */ Gambit_fn_02801A78(cpu);
|
|
/* 026904E8 */ cpu->r[28] = cpu->r[3];
|
|
/* 026904E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 026904EC */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026904EC */ _t22 = _t21 & 0x00000001u;
|
|
/* 026904EC */ if (_t22) goto L_0269051C; else goto L_026904F0;
|
|
L_026904F0: ; // 0x26904f0
|
|
/* 026904F0 */ cpu->r[3] = cpu->r[28];
|
|
/* 026904F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 026904F4 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026904F4 */ _t24 = _t23 & 0x00000001u;
|
|
/* 026904F4 */ if (_t24) goto L_026904F8; else goto L_02690508;
|
|
L_026904F8: ; // 0x26904f8
|
|
/* 026904F8 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 026904FC */ Gambit_fn_02801A78(cpu);
|
|
/* 02690500 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02690504 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02690504 */ _t26 = _t25 & 0x00000001u;
|
|
/* 02690504 */ if (_t26) goto L_02690514; else goto L_02690508;
|
|
L_02690508: ; // 0x2690508
|
|
/* 02690508 */ _t27 = cpu->r[3] + 0x00000004u;
|
|
/* 02690508 */ rbrew_write32(cpu->mem, _t27, cpu->r[29]);
|
|
/* 0269050C */ _t28 = cpu->r[3] + 0x00000000u;
|
|
/* 0269050C */ rbrew_write32(cpu->mem, _t28, cpu->r[29]);
|
|
/* 02690510 */ _t29 = cpu->r[3] + 0x00000008u;
|
|
/* 02690510 */ rbrew_write32(cpu->mem, _t29, cpu->r[29]);
|
|
L_02690514: ; // 0x2690514
|
|
/* 02690514 */ _t30 = cpu->r[28] + 0x00000010u;
|
|
/* 02690514 */ rbrew_write32(cpu->mem, _t30, cpu->r[29]);
|
|
/* 02690518 */ _t31 = cpu->r[28] + 0x0000000Cu;
|
|
/* 02690518 */ rbrew_write32(cpu->mem, _t31, cpu->r[29]);
|
|
L_0269051C: ; // 0x269051c
|
|
/* 0269051C */ cpu->f[1] = cpu->f[30];
|
|
/* 02690520 */ cpu->r[3] = cpu->r[30] + 0x00000070u;
|
|
/* 02690524 */ Gambit_fn_0269947C(cpu);
|
|
/* 02690528 */ cpu->f[1] = cpu->f[31];
|
|
/* 0269052C */ cpu->r[3] = cpu->r[30] + 0x00000070u;
|
|
/* 02690530 */ Gambit_fn_02699484(cpu);
|
|
/* 02690534 */ cpu->r[4] = 0x101F0000u;
|
|
/* 02690538 */ cpu->r[3] = cpu->r[30] + 0x00000070u;
|
|
/* 0269053C */ cpu->r[4] = cpu->r[4] + 0xFFFFD870u;
|
|
/* 02690540 */ Gambit_fn_02699458(cpu);
|
|
/* 02690544 */ cpu->r[5] = 0x00000004u;
|
|
/* 02690548 */ cpu->r[4] = 0x00000000u;
|
|
/* 0269054C */ cpu->r[3] = 0x00000180u;
|
|
/* 02690550 */ Gambit_fn_02801ADC(cpu);
|
|
/* 02690554 */ cpu->r[12] = cpu->r[3];
|
|
/* 02690554 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02690558 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02690558 */ _t33 = _t32 & 0x00000001u;
|
|
/* 02690558 */ if (_t33) goto L_02690598; else goto L_0269055C;
|
|
L_0269055C: ; // 0x269055c
|
|
/* 0269055C */ cpu->r[0] = 0x00000007u;
|
|
/* 02690560 */ cpu->r[9] = 0x00000000u;
|
|
/* 02690564 */ cpu->r[11] = cpu->r[12] + 0x0000002Cu;
|
|
/* 02690568 */ cpu->ctr = cpu->r[0];
|
|
/* 0269056C */ _t34 = cpu->r[30] + 0x00000100u;
|
|
/* 0269056C */ rbrew_write32(cpu->mem, _t34, cpu->r[12]);
|
|
L_02690570: ; // 0x2690570
|
|
/* 02690570 */ _t35 = cpu->r[12] + cpu->r[9];
|
|
/* 02690570 */ rbrew_write32(cpu->mem, _t35, cpu->r[11]);
|
|
/* 02690574 */ cpu->r[9] = cpu->r[9] + 0x0000002Cu;
|
|
/* 02690578 */ cpu->r[11] = cpu->r[11] + 0x0000002Cu;
|
|
/* 0269057C */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0269057C */ _t36 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0269057C */ _t37 = _t36 >> (0x00000002u & 31u);
|
|
/* 0269057C */ _t38 = _t37 & 0x00000001u;
|
|
/* 0269057C */ if (_t38) goto L_02690570; else goto L_02690580;
|
|
L_02690580: ; // 0x2690580
|
|
/* 02690580 */ _t39 = cpu->r[12] + 0x00000134u;
|
|
/* 02690580 */ rbrew_write32(cpu->mem, _t39, cpu->r[29]);
|
|
/* 02690584 */ cpu->r[5] = cpu->r[12] + 0x00000160u;
|
|
/* 02690588 */ cpu->r[3] = cpu->r[30] + 0x000000F4u;
|
|
/* 0269058C */ cpu->r[4] = 0x00000008u;
|
|
/* 02690590 */ _t40 = cpu->r[30] + 0x00000104u;
|
|
/* 02690590 */ rbrew_write32(cpu->mem, _t40, cpu->r[12]);
|
|
/* 02690594 */ Gambit_fn_028023A8(cpu);
|
|
L_02690598: ; // 0x2690598
|
|
/* 02690598 */ cpu->r[9] = 0x100E0000u;
|
|
/* 0269059C */ cpu->r[3] = 0x101F0000u;
|
|
/* 026905A0 */ cpu->r[0] = 0x00000008u;
|
|
/* 026905A4 */ _t41 = cpu->r[9] + 0x00003734u;
|
|
/* 026905A4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 026905A8 */ cpu->r[9] = 0x00000000u;
|
|
/* 026905AC */ cpu->r[3] = cpu->r[3] + 0x0000635Cu;
|
|
/* 026905B0 */ cpu->r[29] = cpu->r[9];
|
|
/* 026905B4 */ cpu->ctr = cpu->r[0];
|
|
/* 026905B8 */ _t42 = cpu->r[30] + 0x000000F4u;
|
|
/* 026905B8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t42);
|
|
/* 026905BC */ cpu->r[4] = 0x00000001u;
|
|
L_026905C0: ; // 0x26905c0
|
|
/* 026905C0 */ _t43 = cpu->r[30] + 0x000000F8u;
|
|
/* 026905C0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t43);
|
|
/* 026905C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], cpu->r[8]);
|
|
/* 026905C8 */ _t44 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026905C8 */ _t45 = _t44 & 0x00000001u;
|
|
/* 026905C8 */ if (_t45) goto L_026905CC; else goto L_0269066C;
|
|
L_026905CC: ; // 0x26905cc
|
|
/* 026905CC */ _t46 = cpu->r[30] + 0x00000100u;
|
|
/* 026905CC */ cpu->r[11] = rbrew_read32(cpu->mem, _t46);
|
|
/* 026905D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 026905D4 */ _t47 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026905D4 */ _t48 = _t47 & 0x00000001u;
|
|
/* 026905D4 */ if (_t48) goto L_026905E0; else goto L_026905D8;
|
|
L_026905D8: ; // 0x26905d8
|
|
/* 026905D8 */ _t49 = cpu->r[11] + 0x00000000u;
|
|
/* 026905D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t49);
|
|
/* 026905DC */ _t50 = cpu->r[30] + 0x00000100u;
|
|
/* 026905DC */ rbrew_write32(cpu->mem, _t50, cpu->r[0]);
|
|
L_026905E0: ; // 0x26905e0
|
|
/* 026905E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 026905E4 */ _t51 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026905E4 */ _t52 = _t51 & 0x00000001u;
|
|
/* 026905E4 */ if (_t52) goto L_02690640; else goto L_026905E8;
|
|
L_026905E8: ; // 0x26905e8
|
|
/* 026905E8 */ _t53 = cpu->r[11] + 0x00000000u;
|
|
/* 026905E8 */ rbrew_write32(cpu->mem, _t53, cpu->r[9]);
|
|
/* 026905EC */ _t54 = cpu->r[31] + 0x00000000u;
|
|
/* 026905EC */ cpu->r[6] = rbrew_read32(cpu->mem, _t54);
|
|
/* 026905F0 */ _t55 = cpu->r[11] + 0x00000004u;
|
|
/* 026905F0 */ rbrew_write32(cpu->mem, _t55, cpu->r[6]);
|
|
/* 026905F4 */ _t56 = cpu->r[31] + 0x00000004u;
|
|
/* 026905F4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t56);
|
|
/* 026905F8 */ _t57 = cpu->r[11] + 0x00000008u;
|
|
/* 026905F8 */ rbrew_write32(cpu->mem, _t57, cpu->r[7]);
|
|
/* 026905FC */ _t58 = cpu->r[31] + 0x00000008u;
|
|
/* 026905FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t58);
|
|
/* 02690600 */ _t59 = cpu->r[11] + 0x0000000Cu;
|
|
/* 02690600 */ rbrew_write32(cpu->mem, _t59, cpu->r[0]);
|
|
/* 02690604 */ _t60 = cpu->r[3] + 0x00000000u;
|
|
/* 02690604 */ cpu->r[7] = rbrew_read32(cpu->mem, _t60);
|
|
/* 02690608 */ _t61 = cpu->r[11] + 0x00000010u;
|
|
/* 02690608 */ rbrew_write32(cpu->mem, _t61, cpu->r[7]);
|
|
/* 0269060C */ _t62 = cpu->r[3] + 0x00000004u;
|
|
/* 0269060C */ cpu->r[10] = rbrew_read32(cpu->mem, _t62);
|
|
/* 02690610 */ _t63 = cpu->r[11] + 0x00000014u;
|
|
/* 02690610 */ rbrew_write32(cpu->mem, _t63, cpu->r[10]);
|
|
/* 02690614 */ _t64 = cpu->r[3] + 0x00000008u;
|
|
/* 02690614 */ cpu->r[12] = rbrew_read32(cpu->mem, _t64);
|
|
/* 02690618 */ _t65 = cpu->r[11] + 0x00000020u;
|
|
/* 02690618 */ rbrew_write32(cpu->mem, _t65, cpu->r[29]);
|
|
/* 0269061C */ _t66 = cpu->r[11] + 0x00000018u;
|
|
/* 0269061C */ rbrew_write32(cpu->mem, _t66, cpu->r[12]);
|
|
/* 02690620 */ _t67 = cpu->r[11] + 0x00000028u;
|
|
/* 02690620 */ rbrew_write32(cpu->mem, _t67, cpu->r[4]);
|
|
/* 02690624 */ _t68 = cpu->r[11] + 0x0000001Cu;
|
|
/* 02690624 */ rbrew_write_f32(cpu->mem, _t68, cpu->f[0]);
|
|
/* 02690628 */ _t69 = cpu->r[11] + 0x00000024u;
|
|
/* 02690628 */ rbrew_write8(cpu->mem, _t69, (uint8_t)cpu->r[29]);
|
|
/* 0269062C */ _t70 = cpu->r[30] + 0x000000F8u;
|
|
/* 0269062C */ cpu->r[0] = rbrew_read32(cpu->mem, _t70);
|
|
/* 02690630 */ _t71 = cpu->r[30] + 0x000000F4u;
|
|
/* 02690630 */ cpu->r[5] = rbrew_read32(cpu->mem, _t71);
|
|
/* 02690634 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], cpu->r[0]);
|
|
/* 02690638 */ _t72 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02690638 */ _t73 = _t72 & 0x00000001u;
|
|
/* 02690638 */ if (_t73) goto L_0269063C; else goto L_0269066C;
|
|
L_0269063C: ; // 0x269063c
|
|
/* 0269063C */ goto L_02690654;
|
|
L_02690640: ; // 0x2690640
|
|
/* 02690640 */ _t74 = cpu->r[30] + 0x000000F4u;
|
|
/* 02690640 */ cpu->r[5] = rbrew_read32(cpu->mem, _t74);
|
|
/* 02690644 */ _t75 = cpu->r[30] + 0x000000F8u;
|
|
/* 02690644 */ cpu->r[0] = rbrew_read32(cpu->mem, _t75);
|
|
/* 02690648 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], cpu->r[0]);
|
|
/* 0269064C */ cpu->r[11] = 0x00000000u;
|
|
/* 02690650 */ _t76 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02690650 */ _t77 = _t76 & 0x00000001u;
|
|
/* 02690650 */ if (_t77) goto L_02690654; else goto L_0269066C;
|
|
L_02690654: ; // 0x2690654
|
|
/* 02690654 */ _t78 = cpu->r[30] + 0x000000FCu;
|
|
/* 02690654 */ cpu->r[6] = rbrew_read32(cpu->mem, _t78);
|
|
/* 02690658 */ cpu->r[5] = rbrew_rlwinm(cpu->r[5], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0269065C */ _t79 = cpu->r[5] + cpu->r[6];
|
|
/* 0269065C */ rbrew_write32(cpu->mem, _t79, cpu->r[11]);
|
|
/* 02690660 */ _t80 = cpu->r[30] + 0x000000F4u;
|
|
/* 02690660 */ cpu->r[7] = rbrew_read32(cpu->mem, _t80);
|
|
/* 02690664 */ cpu->r[5] = cpu->r[7] + 0x00000001u;
|
|
/* 02690668 */ _t81 = cpu->r[30] + 0x000000F4u;
|
|
/* 02690668 */ rbrew_write32(cpu->mem, _t81, cpu->r[5]);
|
|
L_0269066C: ; // 0x269066c
|
|
/* 0269066C */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 02690670 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02690670 */ _t82 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02690670 */ _t83 = _t82 >> (0x00000002u & 31u);
|
|
/* 02690670 */ _t84 = _t83 & 0x00000001u;
|
|
/* 02690670 */ if (_t84) goto L_026905C0; else goto L_02690674;
|
|
L_02690674: ; // 0x2690674
|
|
/* 02690674 */ _t85 = cpu->r[1] + 0x00000010u;
|
|
/* 02690674 */ cpu->r[28] = rbrew_read32(cpu->mem, _t85);
|
|
/* 02690678 */ _t86 = cpu->r[1] + 0x00000014u;
|
|
/* 02690678 */ cpu->r[29] = rbrew_read32(cpu->mem, _t86);
|
|
/* 0269067C */ _t87 = cpu->r[1] + 0x00000038u;
|
|
/* 0269067C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t87);
|
|
/* 02690680 */ _t88 = cpu->r[1] + 0x00000028u;
|
|
/* 02690680 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t88);
|
|
/* 02690684 */ _t89 = cpu->r[1] + 0x00000030u;
|
|
/* 02690684 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t89);
|
|
/* 02690688 */ _t90 = cpu->r[1] + 0x00000020u;
|
|
/* 02690688 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t90);
|
|
/* 0269068C */ _t91 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269068C */ cpu->r[31] = rbrew_read32(cpu->mem, _t91);
|
|
/* 02690690 */ cpu->r[3] = cpu->r[30];
|
|
/* 02690694 */ _t92 = cpu->r[1] + 0x00000018u;
|
|
/* 02690694 */ cpu->r[30] = rbrew_read32(cpu->mem, _t92);
|
|
/* 02690698 */ _t93 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02690698 */ _t94 = _t93 & 0x00000001u;
|
|
/* 02690698 */ if (_t94) goto L_0269069C; // else: addr-0 trap, fall-through
|
|
L_0269069C: ; // 0x269069c
|
|
/* 0269069C */ _t95 = cpu->r[1] + 0x00000044u;
|
|
/* 0269069C */ cpu->r[0] = rbrew_read32(cpu->mem, _t95);
|
|
/* 026906A0 */ cpu->lr = cpu->r[0];
|
|
/* 026906A4 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 026906A8 */ return;
|
|
}
|
|
|
|
// fn_026906AC @ 0x26906ac
|
|
void Gambit_fn_026906AC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_026906AC: ; // 0x26906ac
|
|
/* 026906AC */ cpu->r[0] = cpu->lr;
|
|
/* 026906B0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 026906B0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 026906B0 */ cpu->r[1] = _t0;
|
|
/* 026906B4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026906B4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 026906B8 */ cpu->r[31] = cpu->r[3];
|
|
/* 026906BC */ cpu->r[3] = cpu->r[31] + 0x00000070u;
|
|
/* 026906C0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 026906C0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 026906C4 */ Gambit_fn_02698D18(cpu);
|
|
/* 026906C8 */ cpu->r[12] = 0x100E0000u;
|
|
/* 026906CC */ cpu->r[0] = 0x00000008u;
|
|
/* 026906D0 */ cpu->r[7] = 0x00000001u;
|
|
/* 026906D4 */ _t3 = cpu->r[12] + 0x00003734u;
|
|
/* 026906D4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 026906D8 */ cpu->r[12] = 0x00000000u;
|
|
/* 026906DC */ cpu->ctr = cpu->r[0];
|
|
/* 026906E0 */ cpu->r[6] = cpu->r[12];
|
|
L_026906E4: ; // 0x26906e4
|
|
/* 026906E4 */ _t4 = cpu->r[31] + 0x000000F4u;
|
|
/* 026906E4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 026906E8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[9]);
|
|
/* 026906EC */ cpu->r[8] = 0x00000000u;
|
|
/* 026906F0 */ _t5 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026906F0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 026906F0 */ if (_t6) goto L_026906F4; else goto L_026906FC;
|
|
L_026906F4: ; // 0x26906f4
|
|
/* 026906F4 */ _t7 = cpu->r[31] + 0x000000FCu;
|
|
/* 026906F4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t7);
|
|
/* 026906F8 */ _t8 = cpu->r[10] + cpu->r[6];
|
|
/* 026906F8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t8);
|
|
L_026906FC: ; // 0x26906fc
|
|
/* 026906FC */ _t9 = cpu->r[8] + 0x0000001Cu;
|
|
/* 026906FC */ rbrew_write_f32(cpu->mem, _t9, cpu->f[0]);
|
|
/* 02690700 */ cpu->r[6] = cpu->r[6] + 0x00000004u;
|
|
/* 02690704 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 02690708 */ _t10 = cpu->r[8] + 0x00000028u;
|
|
/* 02690708 */ rbrew_write32(cpu->mem, _t10, cpu->r[7]);
|
|
/* 0269070C */ _t11 = cpu->r[8] + 0x00000028u;
|
|
/* 0269070C */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02690710 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02690710 */ _t12 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02690710 */ _t13 = _t12 >> (0x00000002u & 31u);
|
|
/* 02690710 */ _t14 = _t13 & 0x00000001u;
|
|
/* 02690710 */ if (_t14) goto L_026906E4; else goto L_02690714;
|
|
L_02690714: ; // 0x2690714
|
|
/* 02690714 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 02690714 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02690718 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02690718 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0269071C */ cpu->lr = cpu->r[0];
|
|
/* 02690720 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02690724 */ return;
|
|
}
|
|
|
|
// fn_026906B0 @ 0x26906b0
|
|
void Gambit_fn_026906B0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_026906B0: ; // 0x26906b0
|
|
/* 026906B0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 026906B0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 026906B0 */ cpu->r[1] = _t0;
|
|
/* 026906B4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026906B4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 026906B8 */ cpu->r[31] = cpu->r[3];
|
|
/* 026906BC */ cpu->r[3] = cpu->r[31] + 0x00000070u;
|
|
/* 026906C0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 026906C0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 026906C4 */ Gambit_fn_02698D18(cpu);
|
|
/* 026906C8 */ cpu->r[12] = 0x100E0000u;
|
|
/* 026906CC */ cpu->r[0] = 0x00000008u;
|
|
/* 026906D0 */ cpu->r[7] = 0x00000001u;
|
|
/* 026906D4 */ _t3 = cpu->r[12] + 0x00003734u;
|
|
/* 026906D4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 026906D8 */ cpu->r[12] = 0x00000000u;
|
|
/* 026906DC */ cpu->ctr = cpu->r[0];
|
|
/* 026906E0 */ cpu->r[6] = cpu->r[12];
|
|
L_026906E4: ; // 0x26906e4
|
|
/* 026906E4 */ _t4 = cpu->r[31] + 0x000000F4u;
|
|
/* 026906E4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 026906E8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[9]);
|
|
/* 026906EC */ cpu->r[8] = 0x00000000u;
|
|
/* 026906F0 */ _t5 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026906F0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 026906F0 */ if (_t6) goto L_026906F4; else goto L_026906FC;
|
|
L_026906F4: ; // 0x26906f4
|
|
/* 026906F4 */ _t7 = cpu->r[31] + 0x000000FCu;
|
|
/* 026906F4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t7);
|
|
/* 026906F8 */ _t8 = cpu->r[10] + cpu->r[6];
|
|
/* 026906F8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t8);
|
|
L_026906FC: ; // 0x26906fc
|
|
/* 026906FC */ _t9 = cpu->r[8] + 0x0000001Cu;
|
|
/* 026906FC */ rbrew_write_f32(cpu->mem, _t9, cpu->f[0]);
|
|
/* 02690700 */ cpu->r[6] = cpu->r[6] + 0x00000004u;
|
|
/* 02690704 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 02690708 */ _t10 = cpu->r[8] + 0x00000028u;
|
|
/* 02690708 */ rbrew_write32(cpu->mem, _t10, cpu->r[7]);
|
|
/* 0269070C */ _t11 = cpu->r[8] + 0x00000028u;
|
|
/* 0269070C */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02690710 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02690710 */ _t12 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02690710 */ _t13 = _t12 >> (0x00000002u & 31u);
|
|
/* 02690710 */ _t14 = _t13 & 0x00000001u;
|
|
/* 02690710 */ if (_t14) goto L_026906E4; else goto L_02690714;
|
|
L_02690714: ; // 0x2690714
|
|
/* 02690714 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 02690714 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02690718 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02690718 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0269071C */ cpu->lr = cpu->r[0];
|
|
/* 02690720 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02690724 */ return;
|
|
}
|
|
|
|
// fn_02690728 @ 0x2690728
|
|
void Gambit_fn_02690728(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_02690728: ; // 0x2690728
|
|
/* 02690728 */ cpu->r[0] = cpu->lr;
|
|
/* 0269072C */ cpu->r[3] = cpu->r[3] + 0x00000070u;
|
|
/* 02690730 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 02690730 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 02690734 */ cpu->r[4] = cpu->r[4] + 0x00000244u;
|
|
/* 02690738 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 02690738 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 02690738 */ cpu->r[1] = _t1;
|
|
/* 0269073C */ Gambit_fn_02699258(cpu);
|
|
/* 02690740 */ cpu->r[12] = 0x100E0000u;
|
|
/* 02690744 */ _t2 = cpu->r[12] + 0x000037CCu;
|
|
/* 02690744 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 02690748 */ cpu->r[12] = 0x100E0000u;
|
|
/* 0269074C */ cpu->f[1] = cpu->f[1] / cpu->f[12];
|
|
/* 02690750 */ _t3 = cpu->r[12] + 0x00003734u;
|
|
/* 02690750 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 02690754 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[0]);
|
|
/* 02690758 */ _t4 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02690758 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02690758 */ if (_t5) goto L_0269075C; else goto L_02690764;
|
|
L_0269075C: ; // 0x269075c
|
|
/* 0269075C */ cpu->f[1] = cpu->f[0];
|
|
/* 02690760 */ goto L_02690778;
|
|
L_02690764: ; // 0x2690764
|
|
/* 02690764 */ cpu->r[12] = 0x100E0000u;
|
|
/* 02690768 */ _t6 = cpu->r[12] + 0x000037D0u;
|
|
/* 02690768 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 0269076C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[13]);
|
|
/* 02690770 */ _t7 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02690770 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02690770 */ if (_t8) goto L_02690774; else goto L_02690778;
|
|
L_02690774: ; // 0x2690774
|
|
/* 02690774 */ cpu->f[1] = cpu->f[13];
|
|
L_02690778: ; // 0x2690778
|
|
/* 02690778 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02690778 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269077C */ cpu->lr = cpu->r[0];
|
|
/* 02690780 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 02690784 */ return;
|
|
}
|
|
|
|
// fn_02690738 @ 0x2690738
|
|
void Gambit_fn_02690738(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_02690738: ; // 0x2690738
|
|
/* 02690738 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 02690738 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02690738 */ cpu->r[1] = _t0;
|
|
/* 0269073C */ Gambit_fn_02699258(cpu);
|
|
/* 02690740 */ cpu->r[12] = 0x100E0000u;
|
|
/* 02690744 */ _t1 = cpu->r[12] + 0x000037CCu;
|
|
/* 02690744 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 02690748 */ cpu->r[12] = 0x100E0000u;
|
|
/* 0269074C */ cpu->f[1] = cpu->f[1] / cpu->f[12];
|
|
/* 02690750 */ _t2 = cpu->r[12] + 0x00003734u;
|
|
/* 02690750 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 02690754 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[0]);
|
|
/* 02690758 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02690758 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02690758 */ if (_t4) goto L_0269075C; else goto L_02690764;
|
|
L_0269075C: ; // 0x269075c
|
|
/* 0269075C */ cpu->f[1] = cpu->f[0];
|
|
/* 02690760 */ goto L_02690778;
|
|
L_02690764: ; // 0x2690764
|
|
/* 02690764 */ cpu->r[12] = 0x100E0000u;
|
|
/* 02690768 */ _t5 = cpu->r[12] + 0x000037D0u;
|
|
/* 02690768 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 0269076C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[13]);
|
|
/* 02690770 */ _t6 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02690770 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02690770 */ if (_t7) goto L_02690774; else goto L_02690778;
|
|
L_02690774: ; // 0x2690774
|
|
/* 02690774 */ cpu->f[1] = cpu->f[13];
|
|
L_02690778: ; // 0x2690778
|
|
/* 02690778 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02690778 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0269077C */ cpu->lr = cpu->r[0];
|
|
/* 02690780 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 02690784 */ return;
|
|
}
|
|
|
|
// fn_02690788 @ 0x2690788
|
|
void Gambit_fn_02690788(CPUState* cpu) {
|
|
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_02690788: ; // 0x2690788
|
|
/* 02690788 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 02690788 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02690788 */ cpu->r[1] = _t0;
|
|
/* 0269078C */ cpu->r[0] = cpu->lr;
|
|
/* 02690790 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 02690790 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02690794 */ cpu->r[30] = cpu->r[3];
|
|
/* 02690798 */ _t2 = cpu->r[1] + 0x00000018u;
|
|
/* 02690798 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 0269079C */ cpu->r[3] = cpu->r[30] + 0x00000070u;
|
|
/* 026907A0 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 026907A0 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 026907A4 */ /* nop */
|
|
/* 026907A8 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026907A8 */ rbrew_write32(cpu->mem, _t4, cpu->r[29]);
|
|
/* 026907AC */ _t5 = cpu->r[1] + 0x00000020u;
|
|
/* 026907AC */ rbrew_write_f32(cpu->mem, _t5, cpu->f[31]);
|
|
/* 026907B0 */ cpu->r[31] = cpu->r[4];
|
|
/* 026907B4 */ _t6 = cpu->r[1] + 0x0000002Cu;
|
|
/* 026907B4 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 026907B8 */ Gambit_fn_02699240(cpu);
|
|
/* 026907BC */ cpu->r[29] = cpu->r[3];
|
|
/* 026907C0 */ cpu->r[3] = cpu->r[30] + 0x00000070u;
|
|
/* 026907C4 */ Gambit_fn_02699248(cpu);
|
|
/* 026907C8 */ cpu->f[31] = cpu->f[1];
|
|
/* 026907CC */ cpu->r[3] = cpu->r[31] + 0x00000244u;
|
|
/* 026907D0 */ cpu->r[4] = cpu->r[29];
|
|
/* 026907D4 */ Gambit_fn_02C693A4(cpu);
|
|
/* 026907D8 */ cpu->f[31] = cpu->f[31] - cpu->f[1];
|
|
/* 026907DC */ cpu->r[3] = cpu->r[30] + 0x00000070u;
|
|
/* 026907E0 */ Gambit_fn_02699248(cpu);
|
|
/* 026907E4 */ cpu->r[12] = 0x100E0000u;
|
|
/* 026907E8 */ cpu->f[13] = cpu->f[31] / cpu->f[1];
|
|
/* 026907EC */ _t7 = cpu->r[12] + 0x000037CCu;
|
|
/* 026907EC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 026907F0 */ cpu->r[12] = 0x100E0000u;
|
|
/* 026907F4 */ cpu->f[1] = cpu->f[13] / cpu->f[0];
|
|
/* 026907F8 */ _t8 = cpu->r[12] + 0x00003734u;
|
|
/* 026907F8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 026907FC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[13]);
|
|
/* 02690800 */ _t9 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02690800 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02690800 */ if (_t10) goto L_02690804; else goto L_0269080C;
|
|
L_02690804: ; // 0x2690804
|
|
/* 02690804 */ cpu->f[1] = cpu->f[13];
|
|
/* 02690808 */ goto L_02690820;
|
|
L_0269080C: ; // 0x269080c
|
|
/* 0269080C */ cpu->r[11] = 0x100E0000u;
|
|
/* 02690810 */ _t11 = cpu->r[11] + 0x000037D0u;
|
|
/* 02690810 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 02690814 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[0]);
|
|
/* 02690818 */ _t12 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02690818 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02690818 */ if (_t13) goto L_0269081C; else goto L_02690820;
|
|
L_0269081C: ; // 0x269081c
|
|
/* 0269081C */ cpu->f[1] = cpu->f[0];
|
|
L_02690820: ; // 0x2690820
|
|
/* 02690820 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02690820 */ cpu->r[29] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02690824 */ _t15 = cpu->r[1] + 0x00000020u;
|
|
/* 02690824 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 02690828 */ _t16 = cpu->r[1] + 0x00000010u;
|
|
/* 02690828 */ cpu->r[30] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0269082C */ _t17 = cpu->r[1] + 0x00000018u;
|
|
/* 0269082C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t17);
|
|
/* 02690830 */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02690830 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02690834 */ _t19 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02690834 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02690834 */ if (_t20) goto L_02690838; // else: addr-0 trap, fall-through
|
|
L_02690838: ; // 0x2690838
|
|
/* 02690838 */ _t21 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02690838 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0269083C */ cpu->lr = cpu->r[0];
|
|
/* 02690840 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 02690844 */ return;
|
|
}
|
|
|
|
// fn_02690848 @ 0x2690848
|
|
void Gambit_fn_02690848(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_02690848: ; // 0x2690848
|
|
/* 02690848 */ cpu->r[0] = cpu->lr;
|
|
/* 0269084C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0269084C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269084C */ cpu->r[1] = _t0;
|
|
/* 02690850 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02690850 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02690854 */ cpu->r[31] = cpu->r[4];
|
|
/* 02690858 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269085C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0269085C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02690860 */ Gambit_fn_025C5DA4(cpu);
|
|
/* 02690864 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02690868 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02690868 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02690868 */ if (_t4) goto L_0269086C; else goto L_02690888;
|
|
L_0269086C: ; // 0x269086c
|
|
/* 0269086C */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 0269086C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02690870 */ cpu->r[12] = 0x100E0000u;
|
|
/* 02690874 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02690874 */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02690878 */ cpu->lr = cpu->r[0];
|
|
/* 0269087C */ _t7 = cpu->r[12] + 0x000037D0u;
|
|
/* 0269087C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 02690880 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02690884 */ return;
|
|
L_02690888: ; // 0x2690888
|
|
/* 02690888 */ _t8 = cpu->r[31] + 0x0000069Cu;
|
|
/* 02690888 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0269088C */ Gambit_fn_0263041C(cpu);
|
|
/* 02690890 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02690894 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02690894 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02690894 */ if (_t10) goto L_026908B4; else goto L_02690898;
|
|
L_02690898: ; // 0x2690898
|
|
/* 02690898 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 02690898 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0269089C */ cpu->r[12] = 0x100E0000u;
|
|
/* 026908A0 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026908A0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 026908A4 */ cpu->lr = cpu->r[0];
|
|
/* 026908A8 */ _t13 = cpu->r[12] + 0x000037D4u;
|
|
/* 026908A8 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 026908AC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 026908B0 */ return;
|
|
L_026908B4: ; // 0x26908b4
|
|
/* 026908B4 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 026908B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 026908B8 */ cpu->r[12] = 0x100E0000u;
|
|
/* 026908BC */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026908BC */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 026908C0 */ cpu->lr = cpu->r[0];
|
|
/* 026908C4 */ _t16 = cpu->r[12] + 0x00003734u;
|
|
/* 026908C4 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 026908C8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 026908CC */ return;
|
|
}
|
|
|
|
// fn_0269084C @ 0x269084c
|
|
void Gambit_fn_0269084C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_0269084C: ; // 0x269084c
|
|
/* 0269084C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0269084C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269084C */ cpu->r[1] = _t0;
|
|
/* 02690850 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02690850 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02690854 */ cpu->r[31] = cpu->r[4];
|
|
/* 02690858 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269085C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0269085C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02690860 */ Gambit_fn_025C5DA4(cpu);
|
|
/* 02690864 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02690868 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02690868 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02690868 */ if (_t4) goto L_0269086C; else goto L_02690888;
|
|
L_0269086C: ; // 0x269086c
|
|
/* 0269086C */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 0269086C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02690870 */ cpu->r[12] = 0x100E0000u;
|
|
/* 02690874 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02690874 */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02690878 */ cpu->lr = cpu->r[0];
|
|
/* 0269087C */ _t7 = cpu->r[12] + 0x000037D0u;
|
|
/* 0269087C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 02690880 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02690884 */ return;
|
|
L_02690888: ; // 0x2690888
|
|
/* 02690888 */ _t8 = cpu->r[31] + 0x0000069Cu;
|
|
/* 02690888 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0269088C */ Gambit_fn_0263041C(cpu);
|
|
/* 02690890 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02690894 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02690894 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02690894 */ if (_t10) goto L_026908B4; else goto L_02690898;
|
|
L_02690898: ; // 0x2690898
|
|
/* 02690898 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 02690898 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0269089C */ cpu->r[12] = 0x100E0000u;
|
|
/* 026908A0 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026908A0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 026908A4 */ cpu->lr = cpu->r[0];
|
|
/* 026908A8 */ _t13 = cpu->r[12] + 0x000037D4u;
|
|
/* 026908A8 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 026908AC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 026908B0 */ return;
|
|
L_026908B4: ; // 0x26908b4
|
|
/* 026908B4 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 026908B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 026908B8 */ cpu->r[12] = 0x100E0000u;
|
|
/* 026908BC */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026908BC */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 026908C0 */ cpu->lr = cpu->r[0];
|
|
/* 026908C4 */ _t16 = cpu->r[12] + 0x00003734u;
|
|
/* 026908C4 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 026908C8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 026908CC */ return;
|
|
}
|
|
|
|
// fn_026908D0 @ 0x26908d0
|
|
void Gambit_fn_026908D0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94;
|
|
double _ft60, _ft61;
|
|
|
|
L_026908D0: ; // 0x26908d0
|
|
/* 026908D0 */ _t0 = cpu->r[1] + 0xFFFFFF50u;
|
|
/* 026908D0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 026908D0 */ cpu->r[1] = _t0;
|
|
/* 026908D4 */ cpu->r[0] = cpu->lr;
|
|
/* 026908D8 */ _t1 = cpu->r[1] + 0x00000088u;
|
|
/* 026908D8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 026908DC */ cpu->r[30] = cpu->r[3];
|
|
/* 026908E0 */ _t2 = cpu->r[1] + 0x000000A0u;
|
|
/* 026908E0 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 026908E4 */ /* nop */
|
|
/* 026908E8 */ _t3 = cpu->r[1] + 0x00000090u;
|
|
/* 026908E8 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[30]);
|
|
/* 026908EC */ /* nop */
|
|
/* 026908F0 */ _t4 = cpu->r[1] + 0x000000A8u;
|
|
/* 026908F0 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[31]);
|
|
/* 026908F4 */ cpu->r[3] = cpu->r[1] + 0x0000006Cu;
|
|
/* 026908F8 */ _t5 = cpu->r[1] + 0x0000008Cu;
|
|
/* 026908F8 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 026908FC */ _t6 = cpu->r[1] + 0x00000098u;
|
|
/* 026908FC */ rbrew_write_f32(cpu->mem, _t6, cpu->f[30]);
|
|
/* 02690900 */ cpu->r[31] = cpu->r[4];
|
|
/* 02690904 */ _t7 = cpu->r[1] + 0x000000B4u;
|
|
/* 02690904 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 02690908 */ Gambit_fn_02043AC4(cpu);
|
|
/* 0269090C */ cpu->r[8] = 0x101F0000u;
|
|
/* 02690910 */ cpu->r[9] = 0x100E0000u;
|
|
/* 02690914 */ _t8 = cpu->r[9] + 0x000037D8u;
|
|
/* 02690914 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 02690918 */ cpu->r[8] = cpu->r[8] + 0x00006350u;
|
|
/* 0269091C */ /* nop */
|
|
/* 02690920 */ _t9 = cpu->r[8] + 0x00000008u;
|
|
/* 02690920 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 02690924 */ /* nop */
|
|
/* 02690928 */ _t10 = cpu->r[30] + 0x00000008u;
|
|
/* 02690928 */ cpu->r[6] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269092C */ /* nop */
|
|
/* 02690930 */ _t11 = cpu->r[1] + 0x00000030u;
|
|
/* 02690930 */ cpu->r[8] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02690934 */ cpu->f[13] = cpu->f[10] * cpu->f[0];
|
|
/* 02690938 */ _t12 = cpu->r[1] + 0x00000034u;
|
|
/* 02690938 */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0269093C */ _t13 = cpu->r[1] + 0x00000018u;
|
|
/* 0269093C */ rbrew_write32(cpu->mem, _t13, cpu->r[8]);
|
|
/* 02690940 */ _t14 = cpu->r[1] + 0x00000038u;
|
|
/* 02690940 */ rbrew_write_f32(cpu->mem, _t14, cpu->f[13]);
|
|
/* 02690944 */ _t15 = cpu->r[1] + 0x00000038u;
|
|
/* 02690944 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02690948 */ _t16 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02690948 */ rbrew_write32(cpu->mem, _t16, cpu->r[9]);
|
|
/* 0269094C */ /* nop */
|
|
/* 02690950 */ _t17 = cpu->r[1] + 0x00000020u;
|
|
/* 02690950 */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
/* 02690954 */ /* nop */
|
|
/* 02690958 */ _t18 = cpu->r[1] + 0x00000020u;
|
|
/* 02690958 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 0269095C */ /* nop */
|
|
/* 02690960 */ /* nop */
|
|
/* 02690964 */ /* nop */
|
|
/* 02690968 */ _t19 = cpu->r[6] + 0x000000BCu;
|
|
/* 02690968 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 0269096C */ _t20 = cpu->r[1] + 0x00000040u;
|
|
/* 0269096C */ cpu->r[5] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02690970 */ _t21 = cpu->r[1] + 0x00000050u;
|
|
/* 02690970 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[13]);
|
|
/* 02690974 */ _t22 = cpu->r[1] + 0x00000050u;
|
|
/* 02690974 */ cpu->r[8] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02690978 */ cpu->f[11] = cpu->f[12] + cpu->f[0];
|
|
/* 0269097C */ _t23 = cpu->r[1] + 0x00000028u;
|
|
/* 0269097C */ rbrew_write32(cpu->mem, _t23, cpu->r[5]);
|
|
/* 02690980 */ _t24 = cpu->r[31] + 0x0000024Cu;
|
|
/* 02690980 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 02690984 */ _t25 = cpu->r[1] + 0x00000020u;
|
|
/* 02690984 */ rbrew_write32(cpu->mem, _t25, cpu->r[8]);
|
|
/* 02690988 */ _t26 = cpu->r[1] + 0x00000020u;
|
|
/* 02690988 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 0269098C */ _t27 = cpu->r[1] + 0x00000044u;
|
|
/* 0269098C */ rbrew_write_f32(cpu->mem, _t27, cpu->f[11]);
|
|
/* 02690990 */ _t28 = cpu->r[1] + 0x00000044u;
|
|
/* 02690990 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02690994 */ cpu->f[12] = cpu->f[13] + cpu->f[0];
|
|
/* 02690998 */ /* nop */
|
|
/* 0269099C */ _t29 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0269099C */ cpu->r[7] = rbrew_read32(cpu->mem, _t29);
|
|
/* 026909A0 */ _t30 = cpu->r[1] + 0x00000048u;
|
|
/* 026909A0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t30);
|
|
/* 026909A4 */ _t31 = cpu->r[1] + 0x0000001Cu;
|
|
/* 026909A4 */ rbrew_write32(cpu->mem, _t31, cpu->r[7]);
|
|
/* 026909A8 */ _t32 = cpu->r[1] + 0x00000018u;
|
|
/* 026909A8 */ rbrew_write32(cpu->mem, _t32, cpu->r[6]);
|
|
/* 026909AC */ /* nop */
|
|
/* 026909B0 */ _t33 = cpu->r[1] + 0x0000002Cu;
|
|
/* 026909B0 */ rbrew_write32(cpu->mem, _t33, cpu->r[0]);
|
|
/* 026909B4 */ /* nop */
|
|
/* 026909B8 */ _t34 = cpu->r[1] + 0x0000005Cu;
|
|
/* 026909B8 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[12]);
|
|
/* 026909BC */ _t35 = cpu->r[1] + 0x0000005Cu;
|
|
/* 026909BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t35);
|
|
/* 026909C0 */ /* nop */
|
|
/* 026909C4 */ _t36 = cpu->r[1] + 0x00000054u;
|
|
/* 026909C4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t36);
|
|
/* 026909C8 */ _t37 = cpu->r[1] + 0x0000002Cu;
|
|
/* 026909C8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 026909CC */ _t38 = cpu->r[1] + 0x0000007Cu;
|
|
/* 026909CC */ rbrew_write32(cpu->mem, _t38, cpu->r[11]);
|
|
/* 026909D0 */ _t39 = cpu->r[1] + 0x00000058u;
|
|
/* 026909D0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t39);
|
|
/* 026909D4 */ _t40 = cpu->r[1] + 0x0000003Cu;
|
|
/* 026909D4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t40);
|
|
/* 026909D8 */ _t41 = cpu->r[1] + 0x00000080u;
|
|
/* 026909D8 */ rbrew_write32(cpu->mem, _t41, cpu->r[12]);
|
|
/* 026909DC */ /* nop */
|
|
/* 026909E0 */ _t42 = cpu->r[1] + 0x00000024u;
|
|
/* 026909E0 */ rbrew_write32(cpu->mem, _t42, cpu->r[10]);
|
|
/* 026909E4 */ /* nop */
|
|
/* 026909E8 */ _t43 = cpu->r[1] + 0x00000084u;
|
|
/* 026909E8 */ rbrew_write32(cpu->mem, _t43, cpu->r[0]);
|
|
/* 026909EC */ _t44 = cpu->r[1] + 0x00000084u;
|
|
/* 026909EC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 026909F0 */ /* nop */
|
|
/* 026909F4 */ /* nop */
|
|
/* 026909F8 */ _t45 = cpu->r[1] + 0x00000060u;
|
|
/* 026909F8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t45);
|
|
/* 026909FC */ cpu->f[10] = cpu->f[11] - cpu->f[12];
|
|
/* 02690A00 */ _t46 = cpu->r[1] + 0x00000064u;
|
|
/* 02690A00 */ cpu->r[9] = rbrew_read32(cpu->mem, _t46);
|
|
/* 02690A04 */ _t47 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02690A04 */ rbrew_write32(cpu->mem, _t47, cpu->r[7]);
|
|
/* 02690A08 */ _t48 = cpu->r[1] + 0x00000068u;
|
|
/* 02690A08 */ rbrew_write_f32(cpu->mem, _t48, cpu->f[10]);
|
|
/* 02690A0C */ _t49 = cpu->r[1] + 0x00000068u;
|
|
/* 02690A0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t49);
|
|
/* 02690A10 */ _t50 = cpu->r[1] + 0x00000010u;
|
|
/* 02690A10 */ rbrew_write32(cpu->mem, _t50, cpu->r[9]);
|
|
/* 02690A14 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02690A18 */ _t51 = cpu->r[1] + 0x00000014u;
|
|
/* 02690A18 */ rbrew_write32(cpu->mem, _t51, cpu->r[0]);
|
|
/* 02690A1C */ Gambit_fn_02C69350(cpu);
|
|
/* 02690A20 */ _t52 = cpu->r[1] + 0x00000010u;
|
|
/* 02690A20 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 02690A24 */ cpu->f[10] = cpu->f[0] * cpu->f[0];
|
|
/* 02690A28 */ _t53 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02690A28 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t53);
|
|
/* 02690A2C */ cpu->f[11] = fma(cpu->f[9], cpu->f[9], cpu->f[10]);
|
|
/* 02690A30 */ _t54 = cpu->r[1] + 0x00000014u;
|
|
/* 02690A30 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 02690A34 */ cpu->r[7] = 0x100E0000u;
|
|
/* 02690A38 */ cpu->f[8] = fma(cpu->f[8], cpu->f[8], cpu->f[11]);
|
|
/* 02690A3C */ _t55 = cpu->r[7] + 0x00003734u;
|
|
/* 02690A3C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 02690A40 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[31]);
|
|
/* 02690A44 */ _t56 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02690A44 */ _t57 = _t56 & 0x00000001u;
|
|
/* 02690A44 */ if (_t57) goto L_02690A48; else goto L_02690A84;
|
|
L_02690A48: ; // 0x2690a48
|
|
/* 02690A48 */ cpu->r[6] = 0x100E0000u;
|
|
/* 02690A4C */ cpu->r[5] = 0x100E0000u;
|
|
/* 02690A50 */ _t58 = cpu->r[6] + 0x000037DCu;
|
|
/* 02690A50 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 02690A54 */ _t59 = cpu->r[5] + 0x000037E0u;
|
|
/* 02690A54 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t59);
|
|
/* 02690A58 */ _ft60 = sqrt(cpu->f[8]);
|
|
/* 02690A58 */ _ft61 = (double)(int32_t)0x00000001u;
|
|
/* 02690A58 */ cpu->f[9] = _ft61 / _ft60;
|
|
/* 02690A5C */ cpu->f[10] = cpu->f[9] * cpu->f[9];
|
|
/* 02690A60 */ cpu->f[11] = cpu->f[9] * cpu->f[12];
|
|
/* 02690A64 */ cpu->f[10] = -fma(cpu->f[10], cpu->f[8], -(cpu->f[13]));
|
|
/* 02690A68 */ cpu->f[9] = cpu->f[10] * cpu->f[11];
|
|
/* 02690A6C */ _t62 = cpu->r[1] + 0x00000014u;
|
|
/* 02690A6C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 02690A70 */ /* nop */
|
|
/* 02690A74 */ cpu->f[0] = cpu->f[0] * cpu->f[9];
|
|
/* 02690A78 */ /* nop */
|
|
/* 02690A7C */ _t63 = cpu->r[1] + 0x00000014u;
|
|
/* 02690A7C */ rbrew_write_f32(cpu->mem, _t63, cpu->f[0]);
|
|
/* 02690A80 */ /* nop */
|
|
L_02690A84: ; // 0x2690a84
|
|
/* 02690A84 */ cpu->r[12] = 0x101E0000u;
|
|
/* 02690A88 */ cpu->r[10] = 0x100E0000u;
|
|
/* 02690A8C */ _t64 = cpu->r[12] + 0xFFFF958Cu;
|
|
/* 02690A8C */ cpu->f[3] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 02690A90 */ cpu->r[7] = 0x100E0000u;
|
|
/* 02690A94 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[31]);
|
|
/* 02690A98 */ _t65 = cpu->r[10] + 0x000037D0u;
|
|
/* 02690A98 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t65);
|
|
/* 02690A9C */ cpu->r[11] = 0x101C0000u;
|
|
/* 02690AA0 */ _t66 = cpu->r[7] + 0x000037E4u;
|
|
/* 02690AA0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t66);
|
|
/* 02690AA4 */ _t67 = cpu->r[11] + 0x00001EF8u;
|
|
/* 02690AA4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t67);
|
|
/* 02690AA8 */ _t68 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02690AA8 */ _t69 = _t68 & 0x00000001u;
|
|
/* 02690AA8 */ if (_t69) goto L_02690B14; else goto L_02690AAC;
|
|
L_02690AAC: ; // 0x2690aac
|
|
/* 02690AAC */ _t70 = cpu->r[1] + 0x00000070u;
|
|
/* 02690AAC */ cpu->r[9] = rbrew_read32(cpu->mem, _t70);
|
|
/* 02690AB0 */ cpu->f[2] = cpu->f[3];
|
|
/* 02690AB4 */ cpu->r[5] = 0x00000000u;
|
|
/* 02690AB8 */ cpu->r[0] = cpu->r[1] + 0x0000006Cu;
|
|
/* 02690ABC */ cpu->f[1] = cpu->f[11];
|
|
/* 02690AC0 */ cpu->r[7] = cpu->r[5];
|
|
/* 02690AC4 */ cpu->r[6] = cpu->r[5];
|
|
/* 02690AC8 */ cpu->r[4] = cpu->r[1] + 0x00000024u;
|
|
/* 02690ACC */ cpu->r[10] = cpu->r[7];
|
|
/* 02690AD0 */ cpu->r[8] = 0x000001FFu;
|
|
/* 02690AD4 */ _t71 = cpu->r[1] + 0x00000008u;
|
|
/* 02690AD4 */ rbrew_write32(cpu->mem, _t71, cpu->r[0]);
|
|
/* 02690AD8 */ Gambit_fn_0204A4DC(cpu);
|
|
/* 02690ADC */ cpu->r[5] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02690ADC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 02690AE0 */ _t72 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02690AE0 */ _t73 = _t72 & 0x00000001u;
|
|
/* 02690AE0 */ if (_t73) goto L_02690AE4; else goto L_02690B40;
|
|
L_02690AE4: ; // 0x2690ae4
|
|
/* 02690AE4 */ _t74 = cpu->r[1] + 0x00000088u;
|
|
/* 02690AE4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t74);
|
|
/* 02690AE8 */ cpu->f[1] = cpu->f[30];
|
|
/* 02690AEC */ _t75 = cpu->r[1] + 0x00000098u;
|
|
/* 02690AEC */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t75);
|
|
/* 02690AF0 */ _t76 = cpu->r[1] + 0x000000A8u;
|
|
/* 02690AF0 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t76);
|
|
/* 02690AF4 */ _t77 = cpu->r[1] + 0x00000090u;
|
|
/* 02690AF4 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t77);
|
|
/* 02690AF8 */ _t78 = cpu->r[1] + 0x000000A0u;
|
|
/* 02690AF8 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t78);
|
|
/* 02690AFC */ _t79 = cpu->r[1] + 0x0000008Cu;
|
|
/* 02690AFC */ cpu->r[31] = rbrew_read32(cpu->mem, _t79);
|
|
/* 02690B00 */ _t80 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02690B00 */ _t81 = _t80 & 0x00000001u;
|
|
/* 02690B00 */ if (_t81) goto L_02690B04; // else: addr-0 trap, fall-through
|
|
L_02690B04: ; // 0x2690b04
|
|
/* 02690B04 */ _t82 = cpu->r[1] + 0x000000B4u;
|
|
/* 02690B04 */ cpu->r[0] = rbrew_read32(cpu->mem, _t82);
|
|
/* 02690B08 */ cpu->lr = cpu->r[0];
|
|
/* 02690B0C */ cpu->r[1] = cpu->r[1] + 0x000000B0u;
|
|
/* 02690B10 */ return;
|
|
L_02690B14: ; // 0x2690b14
|
|
/* 02690B14 */ cpu->f[4] = cpu->f[30];
|
|
/* 02690B18 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02690B1C */ _t83 = cpu->r[1] + 0x00000070u;
|
|
/* 02690B1C */ cpu->r[8] = rbrew_read32(cpu->mem, _t83);
|
|
/* 02690B20 */ cpu->f[2] = cpu->f[11];
|
|
/* 02690B24 */ cpu->r[4] = cpu->r[1] + 0x00000024u;
|
|
/* 02690B28 */ cpu->r[6] = 0x00000000u;
|
|
/* 02690B2C */ cpu->r[7] = 0x000001FFu;
|
|
/* 02690B30 */ cpu->r[9] = cpu->r[1] + 0x0000006Cu;
|
|
/* 02690B34 */ Gambit_fn_0204A864(cpu);
|
|
/* 02690B38 */ cpu->r[5] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02690B38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 02690B3C */ _t84 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02690B3C */ _t85 = _t84 & 0x00000001u;
|
|
/* 02690B3C */ if (_t85) goto L_02690AE4; else goto L_02690B40;
|
|
L_02690B40: ; // 0x2690b40
|
|
/* 02690B40 */ _t86 = cpu->r[1] + 0x0000008Cu;
|
|
/* 02690B40 */ cpu->r[31] = rbrew_read32(cpu->mem, _t86);
|
|
/* 02690B44 */ cpu->f[1] = cpu->f[31];
|
|
/* 02690B48 */ _t87 = cpu->r[1] + 0x00000098u;
|
|
/* 02690B48 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t87);
|
|
/* 02690B4C */ _t88 = cpu->r[1] + 0x00000088u;
|
|
/* 02690B4C */ cpu->r[30] = rbrew_read32(cpu->mem, _t88);
|
|
/* 02690B50 */ _t89 = cpu->r[1] + 0x000000A8u;
|
|
/* 02690B50 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t89);
|
|
/* 02690B54 */ _t90 = cpu->r[1] + 0x00000090u;
|
|
/* 02690B54 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t90);
|
|
/* 02690B58 */ _t91 = cpu->r[1] + 0x000000A0u;
|
|
/* 02690B58 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t91);
|
|
/* 02690B5C */ _t92 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02690B5C */ _t93 = _t92 & 0x00000001u;
|
|
/* 02690B5C */ if (_t93) goto L_02690B60; // else: addr-0 trap, fall-through
|
|
L_02690B60: ; // 0x2690b60
|
|
/* 02690B60 */ _t94 = cpu->r[1] + 0x000000B4u;
|
|
/* 02690B60 */ cpu->r[0] = rbrew_read32(cpu->mem, _t94);
|
|
/* 02690B64 */ cpu->lr = cpu->r[0];
|
|
/* 02690B68 */ cpu->r[1] = cpu->r[1] + 0x000000B0u;
|
|
/* 02690B6C */ return;
|
|
}
|
|
|
|
// fn_02690B70 @ 0x2690b70
|
|
void Gambit_fn_02690B70(CPUState* cpu) {
|
|
uint32_t _t0, _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_02690B70: ; // 0x2690b70
|
|
/* 02690B70 */ cpu->r[0] = cpu->lr;
|
|
/* 02690B74 */ _t0 = cpu->r[1] + 0xFFFFFF30u;
|
|
/* 02690B74 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02690B74 */ cpu->r[1] = _t0;
|
|
/* 02690B78 */ cpu->r[8] = 0x100E0000u;
|
|
/* 02690B7C */ _t1 = cpu->r[1] + 0x000000CCu;
|
|
/* 02690B7C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02690B80 */ cpu->r[10] = cpu->r[1] + 0x00000044u;
|
|
/* 02690B84 */ cpu->r[12] = 0x10110000u;
|
|
/* 02690B88 */ _t2 = cpu->r[1] + 0x000000C8u;
|
|
/* 02690B88 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02690B8C */ cpu->r[8] = cpu->r[8] + 0x00003790u;
|
|
/* 02690B90 */ _t3 = cpu->r[1] + 0x00000038u;
|
|
/* 02690B90 */ rbrew_write32(cpu->mem, _t3, cpu->r[10]);
|
|
/* 02690B94 */ cpu->r[30] = cpu->r[4];
|
|
/* 02690B98 */ _t4 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02690B98 */ rbrew_write32(cpu->mem, _t4, cpu->r[8]);
|
|
/* 02690B9C */ cpu->r[4] = 0x100E0000u;
|
|
/* 02690BA0 */ _t5 = cpu->r[1] + 0x000000D4u;
|
|
/* 02690BA0 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02690BA4 */ cpu->r[0] = 0x00000080u;
|
|
/* 02690BA8 */ _t6 = cpu->r[12] + 0x00007399u;
|
|
/* 02690BA8 */ cpu->r[12] = rbrew_read8(cpu->mem, _t6);
|
|
/* 02690BAC */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 02690BB0 */ _t7 = cpu->r[1] + 0x00000040u;
|
|
/* 02690BB0 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 02690BB4 */ cpu->r[4] = cpu->r[4] + 0x000037F0u;
|
|
/* 02690BB8 */ _t8 = cpu->r[1] + 0x000000C3u;
|
|
/* 02690BB8 */ rbrew_write8(cpu->mem, _t8, (uint8_t)cpu->r[12]);
|
|
/* 02690BBC */ cpu->r[31] = cpu->r[6];
|
|
/* 02690BC0 */ _t9 = cpu->r[1] + 0x00000044u;
|
|
/* 02690BC0 */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[12]);
|
|
/* 02690BC4 */ _t10 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 02690BC4 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02690BC4 */ if (_t11) goto L_02690BC8; // else: addr-0 trap, fall-through
|
|
L_02690BC8: ; // 0x2690bc8
|
|
/* 02690BC8 */ Gambit_fn_0282A5F4(cpu);
|
|
/* 02690BCC */ cpu->r[8] = 0x101F0000u;
|
|
/* 02690BD0 */ cpu->r[9] = 0x100E0000u;
|
|
/* 02690BD4 */ cpu->r[8] = cpu->r[8] + 0x00006350u;
|
|
/* 02690BD8 */ _t12 = cpu->r[9] + 0x000037E8u;
|
|
/* 02690BD8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 02690BDC */ _t13 = cpu->r[8] + 0x00000008u;
|
|
/* 02690BDC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 02690BE0 */ /* nop */
|
|
/* 02690BE4 */ cpu->f[11] = cpu->f[12] * cpu->f[0];
|
|
/* 02690BE8 */ /* nop */
|
|
/* 02690BEC */ /* nop */
|
|
/* 02690BF0 */ _t14 = cpu->r[1] + 0x00000010u;
|
|
/* 02690BF0 */ rbrew_write_f32(cpu->mem, _t14, cpu->f[11]);
|
|
/* 02690BF4 */ /* nop */
|
|
/* 02690BF8 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02690BF8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02690BFC */ _t16 = cpu->r[1] + 0x00000010u;
|
|
/* 02690BFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02690C00 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 02690C00 */ cpu->r[11] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02690C04 */ _t18 = cpu->r[1] + 0x00000024u;
|
|
/* 02690C04 */ rbrew_write32(cpu->mem, _t18, cpu->r[12]);
|
|
/* 02690C08 */ _t19 = cpu->r[1] + 0x00000020u;
|
|
/* 02690C08 */ rbrew_write32(cpu->mem, _t19, cpu->r[11]);
|
|
/* 02690C0C */ /* nop */
|
|
/* 02690C10 */ _t20 = cpu->r[1] + 0x00000028u;
|
|
/* 02690C10 */ rbrew_write32(cpu->mem, _t20, cpu->r[0]);
|
|
/* 02690C14 */ _t21 = cpu->r[1] + 0x00000028u;
|
|
/* 02690C14 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 02690C18 */ /* nop */
|
|
/* 02690C1C */ _t22 = cpu->r[30] + 0x00000008u;
|
|
/* 02690C1C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 02690C20 */ /* nop */
|
|
/* 02690C24 */ _t23 = cpu->r[1] + 0x00000018u;
|
|
/* 02690C24 */ cpu->r[10] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02690C28 */ cpu->f[9] = cpu->f[10] + cpu->f[11];
|
|
/* 02690C2C */ _t24 = cpu->r[1] + 0x00000014u;
|
|
/* 02690C2C */ cpu->r[9] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02690C30 */ _t25 = cpu->r[1] + 0x00000030u;
|
|
/* 02690C30 */ rbrew_write32(cpu->mem, _t25, cpu->r[10]);
|
|
/* 02690C34 */ cpu->r[6] = 0x101F0000u;
|
|
/* 02690C38 */ _t26 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02690C38 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[9]);
|
|
/* 02690C3C */ _t27 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02690C3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02690C40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02690C44 */ _t28 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02690C44 */ rbrew_write32(cpu->mem, _t28, cpu->r[9]);
|
|
/* 02690C48 */ cpu->r[6] = cpu->r[6] + 0x00005BECu;
|
|
/* 02690C4C */ _t29 = cpu->r[1] + 0x00000034u;
|
|
/* 02690C4C */ rbrew_write32(cpu->mem, _t29, cpu->r[0]);
|
|
/* 02690C50 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02690C50 */ _t31 = _t30 & 0x00000001u;
|
|
/* 02690C50 */ if (_t31) goto L_02690C5C; else goto L_02690C54;
|
|
L_02690C54: ; // 0x2690c54
|
|
/* 02690C54 */ cpu->r[6] = 0x101F0000u;
|
|
/* 02690C58 */ cpu->r[6] = cpu->r[6] + 0x00005BFCu;
|
|
L_02690C5C: ; // 0x2690c5c
|
|
/* 02690C5C */ cpu->r[8] = 0x100E0000u;
|
|
/* 02690C60 */ cpu->r[4] = cpu->r[1] + 0x00000038u;
|
|
/* 02690C64 */ _t32 = cpu->r[8] + 0x000037ECu;
|
|
/* 02690C64 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 02690C68 */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 02690C6C */ cpu->r[5] = 0x00000000u;
|
|
/* 02690C70 */ Gambit_fn_02697F58(cpu);
|
|
/* 02690C74 */ _t33 = cpu->r[1] + 0x000000D4u;
|
|
/* 02690C74 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02690C78 */ _t34 = cpu->r[1] + 0x000000CCu;
|
|
/* 02690C78 */ cpu->r[31] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02690C7C */ cpu->lr = cpu->r[0];
|
|
/* 02690C80 */ _t35 = cpu->r[1] + 0x000000C8u;
|
|
/* 02690C80 */ cpu->r[30] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02690C84 */ cpu->r[1] = cpu->r[1] + 0x000000D0u;
|
|
/* 02690C88 */ return;
|
|
}
|
|
|
|
// fn_02690B74 @ 0x2690b74
|
|
void Gambit_fn_02690B74(CPUState* cpu) {
|
|
uint32_t _t0, _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_02690B74: ; // 0x2690b74
|
|
/* 02690B74 */ _t0 = cpu->r[1] + 0xFFFFFF30u;
|
|
/* 02690B74 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02690B74 */ cpu->r[1] = _t0;
|
|
/* 02690B78 */ cpu->r[8] = 0x100E0000u;
|
|
/* 02690B7C */ _t1 = cpu->r[1] + 0x000000CCu;
|
|
/* 02690B7C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02690B80 */ cpu->r[10] = cpu->r[1] + 0x00000044u;
|
|
/* 02690B84 */ cpu->r[12] = 0x10110000u;
|
|
/* 02690B88 */ _t2 = cpu->r[1] + 0x000000C8u;
|
|
/* 02690B88 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02690B8C */ cpu->r[8] = cpu->r[8] + 0x00003790u;
|
|
/* 02690B90 */ _t3 = cpu->r[1] + 0x00000038u;
|
|
/* 02690B90 */ rbrew_write32(cpu->mem, _t3, cpu->r[10]);
|
|
/* 02690B94 */ cpu->r[30] = cpu->r[4];
|
|
/* 02690B98 */ _t4 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02690B98 */ rbrew_write32(cpu->mem, _t4, cpu->r[8]);
|
|
/* 02690B9C */ cpu->r[4] = 0x100E0000u;
|
|
/* 02690BA0 */ _t5 = cpu->r[1] + 0x000000D4u;
|
|
/* 02690BA0 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02690BA4 */ cpu->r[0] = 0x00000080u;
|
|
/* 02690BA8 */ _t6 = cpu->r[12] + 0x00007399u;
|
|
/* 02690BA8 */ cpu->r[12] = rbrew_read8(cpu->mem, _t6);
|
|
/* 02690BAC */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 02690BB0 */ _t7 = cpu->r[1] + 0x00000040u;
|
|
/* 02690BB0 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 02690BB4 */ cpu->r[4] = cpu->r[4] + 0x000037F0u;
|
|
/* 02690BB8 */ _t8 = cpu->r[1] + 0x000000C3u;
|
|
/* 02690BB8 */ rbrew_write8(cpu->mem, _t8, (uint8_t)cpu->r[12]);
|
|
/* 02690BBC */ cpu->r[31] = cpu->r[6];
|
|
/* 02690BC0 */ _t9 = cpu->r[1] + 0x00000044u;
|
|
/* 02690BC0 */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[12]);
|
|
/* 02690BC4 */ _t10 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 02690BC4 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02690BC4 */ if (_t11) goto L_02690BC8; // else: addr-0 trap, fall-through
|
|
L_02690BC8: ; // 0x2690bc8
|
|
/* 02690BC8 */ Gambit_fn_0282A5F4(cpu);
|
|
/* 02690BCC */ cpu->r[8] = 0x101F0000u;
|
|
/* 02690BD0 */ cpu->r[9] = 0x100E0000u;
|
|
/* 02690BD4 */ cpu->r[8] = cpu->r[8] + 0x00006350u;
|
|
/* 02690BD8 */ _t12 = cpu->r[9] + 0x000037E8u;
|
|
/* 02690BD8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 02690BDC */ _t13 = cpu->r[8] + 0x00000008u;
|
|
/* 02690BDC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 02690BE0 */ /* nop */
|
|
/* 02690BE4 */ cpu->f[11] = cpu->f[12] * cpu->f[0];
|
|
/* 02690BE8 */ /* nop */
|
|
/* 02690BEC */ /* nop */
|
|
/* 02690BF0 */ _t14 = cpu->r[1] + 0x00000010u;
|
|
/* 02690BF0 */ rbrew_write_f32(cpu->mem, _t14, cpu->f[11]);
|
|
/* 02690BF4 */ /* nop */
|
|
/* 02690BF8 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02690BF8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02690BFC */ _t16 = cpu->r[1] + 0x00000010u;
|
|
/* 02690BFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02690C00 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 02690C00 */ cpu->r[11] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02690C04 */ _t18 = cpu->r[1] + 0x00000024u;
|
|
/* 02690C04 */ rbrew_write32(cpu->mem, _t18, cpu->r[12]);
|
|
/* 02690C08 */ _t19 = cpu->r[1] + 0x00000020u;
|
|
/* 02690C08 */ rbrew_write32(cpu->mem, _t19, cpu->r[11]);
|
|
/* 02690C0C */ /* nop */
|
|
/* 02690C10 */ _t20 = cpu->r[1] + 0x00000028u;
|
|
/* 02690C10 */ rbrew_write32(cpu->mem, _t20, cpu->r[0]);
|
|
/* 02690C14 */ _t21 = cpu->r[1] + 0x00000028u;
|
|
/* 02690C14 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 02690C18 */ /* nop */
|
|
/* 02690C1C */ _t22 = cpu->r[30] + 0x00000008u;
|
|
/* 02690C1C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 02690C20 */ /* nop */
|
|
/* 02690C24 */ _t23 = cpu->r[1] + 0x00000018u;
|
|
/* 02690C24 */ cpu->r[10] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02690C28 */ cpu->f[9] = cpu->f[10] + cpu->f[11];
|
|
/* 02690C2C */ _t24 = cpu->r[1] + 0x00000014u;
|
|
/* 02690C2C */ cpu->r[9] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02690C30 */ _t25 = cpu->r[1] + 0x00000030u;
|
|
/* 02690C30 */ rbrew_write32(cpu->mem, _t25, cpu->r[10]);
|
|
/* 02690C34 */ cpu->r[6] = 0x101F0000u;
|
|
/* 02690C38 */ _t26 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02690C38 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[9]);
|
|
/* 02690C3C */ _t27 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02690C3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02690C40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02690C44 */ _t28 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02690C44 */ rbrew_write32(cpu->mem, _t28, cpu->r[9]);
|
|
/* 02690C48 */ cpu->r[6] = cpu->r[6] + 0x00005BECu;
|
|
/* 02690C4C */ _t29 = cpu->r[1] + 0x00000034u;
|
|
/* 02690C4C */ rbrew_write32(cpu->mem, _t29, cpu->r[0]);
|
|
/* 02690C50 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02690C50 */ _t31 = _t30 & 0x00000001u;
|
|
/* 02690C50 */ if (_t31) goto L_02690C5C; else goto L_02690C54;
|
|
L_02690C54: ; // 0x2690c54
|
|
/* 02690C54 */ cpu->r[6] = 0x101F0000u;
|
|
/* 02690C58 */ cpu->r[6] = cpu->r[6] + 0x00005BFCu;
|
|
L_02690C5C: ; // 0x2690c5c
|
|
/* 02690C5C */ cpu->r[8] = 0x100E0000u;
|
|
/* 02690C60 */ cpu->r[4] = cpu->r[1] + 0x00000038u;
|
|
/* 02690C64 */ _t32 = cpu->r[8] + 0x000037ECu;
|
|
/* 02690C64 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 02690C68 */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 02690C6C */ cpu->r[5] = 0x00000000u;
|
|
/* 02690C70 */ Gambit_fn_02697F58(cpu);
|
|
/* 02690C74 */ _t33 = cpu->r[1] + 0x000000D4u;
|
|
/* 02690C74 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02690C78 */ _t34 = cpu->r[1] + 0x000000CCu;
|
|
/* 02690C78 */ cpu->r[31] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02690C7C */ cpu->lr = cpu->r[0];
|
|
/* 02690C80 */ _t35 = cpu->r[1] + 0x000000C8u;
|
|
/* 02690C80 */ cpu->r[30] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02690C84 */ cpu->r[1] = cpu->r[1] + 0x000000D0u;
|
|
/* 02690C88 */ return;
|
|
}
|
|
|
|
// fn_02690C8C @ 0x2690c8c
|
|
void Gambit_fn_02690C8C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t117, _t118, _t119, _t120, _t121, _t122, _t123, _t124, _t125, _t126, _t127, _t128, _t129, _t130, _t131, _t132, _t133, _t134, _t135, _t136, _t137;
|
|
|
|
L_02690C8C: ; // 0x2690c8c
|
|
/* 02690C8C */ _t0 = cpu->r[1] + 0xFFFFFF20u;
|
|
/* 02690C8C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02690C8C */ cpu->r[1] = _t0;
|
|
/* 02690C90 */ _t1 = cpu->r[1] + 0x000000A0u;
|
|
/* 02690C90 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[28]);
|
|
/* 02690C94 */ /* nop */
|
|
/* 02690C98 */ _t2 = cpu->r[1] + 0x00000050u;
|
|
/* 02690C98 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[23]);
|
|
/* 02690C9C */ _t3 = cpu->r[1] + 0x000000D0u;
|
|
/* 02690C9C */ rbrew_write_f64(cpu->mem, _t3, cpu->f[31]);
|
|
/* 02690CA0 */ /* nop */
|
|
/* 02690CA4 */ _t4 = cpu->r[1] + 0x000000C0u;
|
|
/* 02690CA4 */ rbrew_write_f64(cpu->mem, _t4, cpu->f[30]);
|
|
/* 02690CA8 */ /* nop */
|
|
/* 02690CAC */ _t5 = cpu->r[1] + 0x00000058u;
|
|
/* 02690CAC */ rbrew_write_f32(cpu->mem, _t5, cpu->f[23]);
|
|
/* 02690CB0 */ /* nop */
|
|
/* 02690CB4 */ _t6 = cpu->r[1] + 0x00000060u;
|
|
/* 02690CB4 */ rbrew_write_f64(cpu->mem, _t6, cpu->f[24]);
|
|
/* 02690CB8 */ _t7 = cpu->r[1] + 0x000000B0u;
|
|
/* 02690CB8 */ rbrew_write_f64(cpu->mem, _t7, cpu->f[29]);
|
|
/* 02690CBC */ /* nop */
|
|
/* 02690CC0 */ _t8 = cpu->r[1] + 0x000000A8u;
|
|
/* 02690CC0 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[28]);
|
|
/* 02690CC4 */ /* nop */
|
|
/* 02690CC8 */ _t9 = cpu->r[1] + 0x000000D8u;
|
|
/* 02690CC8 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[31]);
|
|
/* 02690CCC */ _t10 = cpu->r[1] + 0x00000068u;
|
|
/* 02690CCC */ rbrew_write_f32(cpu->mem, _t10, cpu->f[24]);
|
|
/* 02690CD0 */ _t11 = cpu->r[1] + 0x00000070u;
|
|
/* 02690CD0 */ rbrew_write_f64(cpu->mem, _t11, cpu->f[25]);
|
|
/* 02690CD4 */ _t12 = cpu->r[1] + 0x00000090u;
|
|
/* 02690CD4 */ rbrew_write_f64(cpu->mem, _t12, cpu->f[27]);
|
|
/* 02690CD8 */ /* nop */
|
|
/* 02690CDC */ _t13 = cpu->r[1] + 0x000000B8u;
|
|
/* 02690CDC */ rbrew_write_f32(cpu->mem, _t13, cpu->f[29]);
|
|
/* 02690CE0 */ /* nop */
|
|
/* 02690CE4 */ _t14 = cpu->r[1] + 0x00000078u;
|
|
/* 02690CE4 */ rbrew_write_f32(cpu->mem, _t14, cpu->f[25]);
|
|
/* 02690CE8 */ _t15 = cpu->r[1] + 0x00000098u;
|
|
/* 02690CE8 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[27]);
|
|
/* 02690CEC */ _t16 = cpu->r[1] + 0x00000080u;
|
|
/* 02690CEC */ rbrew_write_f64(cpu->mem, _t16, cpu->f[26]);
|
|
/* 02690CF0 */ _t17 = cpu->r[1] + 0x00000040u;
|
|
/* 02690CF0 */ rbrew_write_f64(cpu->mem, _t17, cpu->f[22]);
|
|
/* 02690CF4 */ /* nop */
|
|
/* 02690CF8 */ _t18 = cpu->r[1] + 0x000000C8u;
|
|
/* 02690CF8 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[30]);
|
|
/* 02690CFC */ /* nop */
|
|
/* 02690D00 */ _t19 = cpu->r[1] + 0x00000088u;
|
|
/* 02690D00 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[26]);
|
|
/* 02690D04 */ cpu->r[0] = cpu->lr;
|
|
/* 02690D08 */ _t20 = cpu->r[1] + 0x00000048u;
|
|
/* 02690D08 */ rbrew_write_f32(cpu->mem, _t20, cpu->f[22]);
|
|
/* 02690D0C */ _t21 = cpu->r[1] + 0x000000E4u;
|
|
/* 02690D0C */ rbrew_write32(cpu->mem, _t21, cpu->r[0]);
|
|
/* 02690D10 */ /* nop */
|
|
/* 02690D14 */ cpu->r[30] = cpu->r[3];
|
|
/* 02690D18 */ _t22 = cpu->r[30] + 0x00000008u;
|
|
/* 02690D18 */ cpu->r[3] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02690D1C */ Gambit_fn_0267025C(cpu);
|
|
/* 02690D20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02690D24 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02690D24 */ _t24 = _t23 & 0x00000001u;
|
|
/* 02690D24 */ if (_t24) goto L_02691014; else goto L_02690D28;
|
|
L_02690D28: ; // 0x2690d28
|
|
/* 02690D28 */ _t25 = cpu->r[30] + 0x00000008u;
|
|
/* 02690D28 */ cpu->r[12] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02690D2C */ cpu->r[3] = cpu->r[30] + 0x00000070u;
|
|
/* 02690D30 */ cpu->r[4] = cpu->r[12] + 0x000000B4u;
|
|
/* 02690D34 */ Gambit_fn_026993B8(cpu);
|
|
/* 02690D38 */ _t26 = cpu->r[30] + 0x00000018u;
|
|
/* 02690D38 */ cpu->r[3] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02690D3C */ Gambit_fn_02686220(cpu);
|
|
/* 02690D40 */ cpu->r[4] = cpu->r[3];
|
|
/* 02690D44 */ cpu->r[3] = cpu->r[30] + 0x00000070u;
|
|
/* 02690D48 */ Gambit_fn_026993DC(cpu);
|
|
/* 02690D4C */ cpu->r[3] = cpu->r[30] + 0x00000070u;
|
|
/* 02690D50 */ Gambit_fn_02699230(cpu);
|
|
/* 02690D54 */ cpu->r[25] = 0x00000000u;
|
|
/* 02690D58 */ Gambit_fn_027E3E2C(cpu);
|
|
/* 02690D5C */ cpu->r[12] = 0x100E0000u;
|
|
/* 02690D60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], cpu->r[3]);
|
|
/* 02690D64 */ _t27 = cpu->r[12] + 0x000037D0u;
|
|
/* 02690D64 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 02690D68 */ _t28 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02690D68 */ _t29 = _t28 & 0x00000001u;
|
|
/* 02690D68 */ if (_t29) goto L_02690D6C; else goto L_02690FF0;
|
|
L_02690D6C: ; // 0x2690d6c
|
|
/* 02690D6C */ cpu->r[9] = 0x100E0000u;
|
|
/* 02690D70 */ cpu->r[7] = 0x100E0000u;
|
|
/* 02690D74 */ _t30 = cpu->r[9] + 0x00003734u;
|
|
/* 02690D74 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 02690D78 */ cpu->r[28] = 0x00000000u;
|
|
/* 02690D7C */ cpu->r[5] = 0x100E0000u;
|
|
/* 02690D80 */ _t31 = cpu->r[7] + 0x000037DCu;
|
|
/* 02690D80 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 02690D84 */ cpu->r[27] = 0x00000002u;
|
|
/* 02690D88 */ cpu->f[25] = cpu->f[30];
|
|
/* 02690D8C */ _t32 = cpu->r[5] + 0x0000383Cu;
|
|
/* 02690D8C */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 02690D90 */ cpu->r[29] = cpu->r[28];
|
|
L_02690D94: ; // 0x2690d94
|
|
/* 02690D94 */ cpu->r[3] = cpu->r[25];
|
|
/* 02690D98 */ Gambit_fn_027E3E40(cpu);
|
|
/* 02690D9C */ _t33 = cpu->r[30] + 0x000000F4u;
|
|
/* 02690D9C */ cpu->r[6] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02690DA0 */ cpu->r[26] = cpu->r[3];
|
|
/* 02690DA4 */ _t34 = cpu->r[30] + 0x00000008u;
|
|
/* 02690DA4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02690DA8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], cpu->r[6]);
|
|
/* 02690DAC */ _t35 = cpu->r[26] + 0x0000002Cu;
|
|
/* 02690DAC */ cpu->r[0] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02690DB0 */ cpu->r[31] = 0x00000000u;
|
|
/* 02690DB4 */ _t36 = cpu->r[3] + 0x0000002Cu;
|
|
/* 02690DB4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02690DB8 */ _t37 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02690DB8 */ _t38 = _t37 & 0x00000001u;
|
|
/* 02690DB8 */ if (_t38) goto L_02690DBC; else goto L_02690DC4;
|
|
L_02690DBC: ; // 0x2690dbc
|
|
/* 02690DBC */ _t39 = cpu->r[30] + 0x000000FCu;
|
|
/* 02690DBC */ cpu->r[8] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02690DC0 */ _t40 = cpu->r[8] + cpu->r[28];
|
|
/* 02690DC0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t40);
|
|
L_02690DC4: ; // 0x2690dc4
|
|
/* 02690DC4 */ cpu->r[10] = 0x00000001u - cpu->r[5];
|
|
/* 02690DC8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[10]);
|
|
/* 02690DCC */ _t41 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02690DCC */ _t42 = _t41 & 0x00000001u;
|
|
/* 02690DCC */ if (_t42) goto L_02690DD0; else goto L_02690DEC;
|
|
L_02690DD0: ; // 0x2690dd0
|
|
/* 02690DD0 */ _t43 = cpu->r[26] + 0x00000468u;
|
|
/* 02690DD0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t43);
|
|
/* 02690DD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02690DD8 */ _t44 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02690DD8 */ _t45 = _t44 & 0x00000001u;
|
|
/* 02690DD8 */ if (_t45) goto L_02690DEC; else goto L_02690DDC;
|
|
L_02690DDC: ; // 0x2690ddc
|
|
/* 02690DDC */ cpu->r[4] = cpu->r[26] + 0x00000244u;
|
|
/* 02690DE0 */ Gambit_fn_026700D8(cpu);
|
|
/* 02690DE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02690DE8 */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02690DE8 */ _t47 = _t46 & 0x00000001u;
|
|
/* 02690DE8 */ if (_t47) goto L_02690E0C; else goto L_02690DEC;
|
|
L_02690DEC: ; // 0x2690dec
|
|
/* 02690DEC */ _t48 = cpu->r[31] + 0x00000028u;
|
|
/* 02690DEC */ rbrew_write32(cpu->mem, _t48, cpu->r[27]);
|
|
/* 02690DF0 */ cpu->r[28] = cpu->r[28] + 0x00000004u;
|
|
/* 02690DF4 */ _t49 = cpu->r[31] + 0x00000028u;
|
|
/* 02690DF4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t49);
|
|
/* 02690DF8 */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 02690DFC */ Gambit_fn_027E3E2C(cpu);
|
|
/* 02690E00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], cpu->r[3]);
|
|
/* 02690E04 */ _t50 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02690E04 */ _t51 = _t50 & 0x00000001u;
|
|
/* 02690E04 */ if (_t51) goto L_02690D94; else goto L_02690E08;
|
|
L_02690E08: ; // 0x2690e08
|
|
/* 02690E08 */ goto L_02690FF0;
|
|
L_02690E0C: ; // 0x2690e0c
|
|
/* 02690E0C */ cpu->r[3] = cpu->r[30];
|
|
/* 02690E10 */ cpu->r[4] = cpu->r[26];
|
|
/* 02690E14 */ Gambit_fn_02690728(cpu);
|
|
/* 02690E18 */ cpu->r[4] = cpu->r[26];
|
|
/* 02690E1C */ cpu->r[3] = cpu->r[30];
|
|
/* 02690E20 */ cpu->f[26] = cpu->f[1];
|
|
/* 02690E24 */ Gambit_fn_02690788(cpu);
|
|
/* 02690E28 */ cpu->r[4] = cpu->r[26];
|
|
/* 02690E2C */ cpu->r[3] = cpu->r[30];
|
|
/* 02690E30 */ cpu->f[22] = cpu->f[1];
|
|
/* 02690E34 */ Gambit_fn_02690848(cpu);
|
|
/* 02690E38 */ cpu->r[3] = cpu->r[30];
|
|
/* 02690E3C */ cpu->f[23] = cpu->f[1];
|
|
/* 02690E40 */ cpu->r[4] = cpu->r[26];
|
|
/* 02690E44 */ Gambit_fn_026908D0(cpu);
|
|
/* 02690E48 */ cpu->f[6] = cpu->f[26] * cpu->f[22];
|
|
/* 02690E4C */ cpu->f[24] = cpu->f[1];
|
|
/* 02690E50 */ cpu->f[9] = cpu->f[6] * cpu->f[23];
|
|
/* 02690E54 */ cpu->f[27] = cpu->f[9] * cpu->f[24];
|
|
/* 02690E58 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[27], cpu->f[31]);
|
|
/* 02690E5C */ _t52 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02690E5C */ _t53 = _t52 & 0x00000001u;
|
|
/* 02690E5C */ if (_t53) goto L_02690E60; else goto L_02690E90;
|
|
L_02690E60: ; // 0x2690e60
|
|
/* 02690E60 */ cpu->f[27] = cpu->f[31];
|
|
/* 02690E64 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[27], cpu->f[29]);
|
|
/* 02690E68 */ /* nop */
|
|
/* 02690E6C */ _t54 = cpu->r[31] + 0x00000020u;
|
|
/* 02690E6C */ cpu->r[8] = rbrew_read32(cpu->mem, _t54);
|
|
/* 02690E70 */ cpu->r[23] = rbrew_rlwinm(cpu->r[0], 0x00000001u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02690E74 */ cpu->r[11] = 0x00000000u;
|
|
/* 02690E78 */ cpu->r[23] = cpu->r[23] ^ 0x00000001u;
|
|
/* 02690E7C */ cpu->r[9] = cpu->r[8] + 0xFFFFFFE2u;
|
|
/* 02690E80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u);
|
|
/* 02690E84 */ cpu->r[24] = cpu->r[11];
|
|
/* 02690E88 */ _t55 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02690E88 */ _t56 = _t55 & 0x00000001u;
|
|
/* 02690E88 */ if (_t56) goto L_02690ED0; else goto L_02690E8C;
|
|
L_02690E8C: ; // 0x2690e8c
|
|
/* 02690E8C */ goto L_02690EC4;
|
|
L_02690E90: ; // 0x2690e90
|
|
/* 02690E90 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[27], cpu->f[25]);
|
|
/* 02690E94 */ _t57 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02690E94 */ _t58 = _t57 & 0x00000001u;
|
|
/* 02690E94 */ if (_t58) goto L_02690E98; else goto L_02690E9C;
|
|
L_02690E98: ; // 0x2690e98
|
|
/* 02690E98 */ cpu->f[27] = cpu->f[25];
|
|
L_02690E9C: ; // 0x2690e9c
|
|
/* 02690E9C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[27], cpu->f[29]);
|
|
/* 02690EA0 */ /* nop */
|
|
/* 02690EA4 */ _t59 = cpu->r[31] + 0x00000020u;
|
|
/* 02690EA4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t59);
|
|
/* 02690EA8 */ cpu->r[23] = rbrew_rlwinm(cpu->r[0], 0x00000001u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02690EAC */ cpu->r[11] = 0x00000000u;
|
|
/* 02690EB0 */ cpu->r[23] = cpu->r[23] ^ 0x00000001u;
|
|
/* 02690EB4 */ cpu->r[9] = cpu->r[8] + 0xFFFFFFE2u;
|
|
/* 02690EB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u);
|
|
/* 02690EBC */ cpu->r[24] = cpu->r[11];
|
|
/* 02690EC0 */ _t60 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02690EC0 */ _t61 = _t60 & 0x00000001u;
|
|
/* 02690EC0 */ if (_t61) goto L_02690ED0; else goto L_02690EC4;
|
|
L_02690EC4: ; // 0x2690ec4
|
|
/* 02690EC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 02690EC8 */ _t62 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02690EC8 */ _t63 = _t62 & 0x00000001u;
|
|
/* 02690EC8 */ if (_t63) goto L_02690ED0; else goto L_02690ECC;
|
|
L_02690ECC: ; // 0x2690ecc
|
|
/* 02690ECC */ cpu->r[11] = 0x00000001u;
|
|
L_02690ED0: ; // 0x2690ed0
|
|
/* 02690ED0 */ cpu->r[11] = rbrew_clz32(cpu->r[11]);
|
|
/* 02690ED4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[11], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 02690ED4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02690ED8 */ _t64 = cpu->r[31] + 0x00000028u;
|
|
/* 02690ED8 */ rbrew_write32(cpu->mem, _t64, cpu->r[0]);
|
|
/* 02690EDC */ _t65 = cpu->r[31] + 0x00000028u;
|
|
/* 02690EDC */ cpu->r[0] = rbrew_read32(cpu->mem, _t65);
|
|
/* 02690EE0 */ _t66 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02690EE0 */ _t67 = _t66 & 0x00000001u;
|
|
/* 02690EE0 */ if (_t67) goto L_02690F20; else goto L_02690EE4;
|
|
L_02690EE4: ; // 0x2690ee4
|
|
/* 02690EE4 */ _t68 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02690EE4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t68);
|
|
/* 02690EE8 */ cpu->f[13] = cpu->f[0] - cpu->f[28];
|
|
/* 02690EEC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[31]);
|
|
/* 02690EF0 */ _t69 = cpu->r[31] + 0x00000028u;
|
|
/* 02690EF0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t69);
|
|
/* 02690EF4 */ _t70 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02690EF4 */ _t71 = _t70 & 0x00000001u;
|
|
/* 02690EF4 */ if (_t71) goto L_02690EF8; else goto L_02690F08;
|
|
L_02690EF8: ; // 0x2690ef8
|
|
/* 02690EF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02690EFC */ _t72 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02690EFC */ rbrew_write_f32(cpu->mem, _t72, cpu->f[31]);
|
|
/* 02690F00 */ _t73 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02690F00 */ _t74 = _t73 & 0x00000001u;
|
|
/* 02690F00 */ if (_t74) goto L_02690F04; else goto L_02690F24;
|
|
L_02690F04: ; // 0x2690f04
|
|
/* 02690F04 */ goto L_02690F20;
|
|
L_02690F08: ; // 0x2690f08
|
|
/* 02690F08 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[25]);
|
|
/* 02690F0C */ _t75 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02690F0C */ _t76 = _t75 & 0x00000001u;
|
|
/* 02690F0C */ if (_t76) goto L_02690F10; else goto L_02690F14;
|
|
L_02690F10: ; // 0x2690f10
|
|
/* 02690F10 */ cpu->f[13] = cpu->f[25];
|
|
L_02690F14: ; // 0x2690f14
|
|
/* 02690F14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02690F18 */ _t77 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02690F18 */ rbrew_write_f32(cpu->mem, _t77, cpu->f[13]);
|
|
/* 02690F1C */ _t78 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02690F1C */ _t79 = _t78 & 0x00000001u;
|
|
/* 02690F1C */ if (_t79) goto L_02690F20; else goto L_02690F24;
|
|
L_02690F20: ; // 0x2690f20
|
|
/* 02690F20 */ _t80 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02690F20 */ rbrew_write_f32(cpu->mem, _t80, cpu->f[25]);
|
|
L_02690F24: ; // 0x2690f24
|
|
/* 02690F24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u);
|
|
/* 02690F28 */ _t81 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02690F28 */ _t82 = _t81 & 0x00000001u;
|
|
/* 02690F28 */ if (_t82) goto L_02690F88; else goto L_02690F2C;
|
|
L_02690F2C: ; // 0x2690f2c
|
|
/* 02690F2C */ _t83 = cpu->r[31] + 0x00000020u;
|
|
/* 02690F2C */ cpu->r[11] = rbrew_read32(cpu->mem, _t83);
|
|
/* 02690F30 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 02690F34 */ _t84 = cpu->r[31] + 0x00000020u;
|
|
/* 02690F34 */ rbrew_write32(cpu->mem, _t84, cpu->r[11]);
|
|
/* 02690F38 */ _t85 = cpu->r[26] + 0x00000198u;
|
|
/* 02690F38 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t85);
|
|
/* 02690F3C */ _t86 = cpu->r[31] + 0x00000010u;
|
|
/* 02690F3C */ rbrew_write_f32(cpu->mem, _t86, cpu->f[7]);
|
|
/* 02690F40 */ _t87 = cpu->r[26] + 0x0000019Cu;
|
|
/* 02690F40 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t87);
|
|
/* 02690F44 */ _t88 = cpu->r[31] + 0x00000014u;
|
|
/* 02690F44 */ rbrew_write_f32(cpu->mem, _t88, cpu->f[8]);
|
|
/* 02690F48 */ _t89 = cpu->r[26] + 0x000001A0u;
|
|
/* 02690F48 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t89);
|
|
/* 02690F4C */ cpu->r[3] = cpu->r[26];
|
|
/* 02690F50 */ _t90 = cpu->r[31] + 0x00000018u;
|
|
/* 02690F50 */ rbrew_write_f32(cpu->mem, _t90, cpu->f[10]);
|
|
/* 02690F54 */ Gambit_fn_025A9CC4(cpu);
|
|
/* 02690F58 */ _t91 = cpu->r[31] + 0x00000024u;
|
|
/* 02690F58 */ rbrew_write8(cpu->mem, _t91, (uint8_t)cpu->r[3]);
|
|
/* 02690F5C */ _t92 = cpu->r[26] + 0x00000244u;
|
|
/* 02690F5C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t92);
|
|
/* 02690F60 */ _t93 = cpu->r[31] + 0x00000004u;
|
|
/* 02690F60 */ rbrew_write_f32(cpu->mem, _t93, cpu->f[11]);
|
|
/* 02690F64 */ _t94 = cpu->r[26] + 0x00000248u;
|
|
/* 02690F64 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t94);
|
|
/* 02690F68 */ _t95 = cpu->r[31] + 0x00000008u;
|
|
/* 02690F68 */ rbrew_write_f32(cpu->mem, _t95, cpu->f[12]);
|
|
/* 02690F6C */ _t96 = cpu->r[26] + 0x0000024Cu;
|
|
/* 02690F6C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t96);
|
|
/* 02690F70 */ cpu->r[3] = cpu->r[30] + 0x00000070u;
|
|
/* 02690F74 */ _t97 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02690F74 */ rbrew_write_f32(cpu->mem, _t97, cpu->f[13]);
|
|
/* 02690F78 */ Gambit_fn_02699250(cpu);
|
|
/* 02690F7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02690F80 */ _t98 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02690F80 */ _t99 = _t98 & 0x00000001u;
|
|
/* 02690F80 */ if (_t99) goto L_02690FDC; else goto L_02690F84;
|
|
L_02690F84: ; // 0x2690f84
|
|
/* 02690F84 */ goto L_02690F9C;
|
|
L_02690F88: ; // 0x2690f88
|
|
/* 02690F88 */ cpu->r[3] = cpu->r[30] + 0x00000070u;
|
|
/* 02690F8C */ _t100 = cpu->r[31] + 0x00000020u;
|
|
/* 02690F8C */ rbrew_write32(cpu->mem, _t100, cpu->r[29]);
|
|
/* 02690F90 */ Gambit_fn_02699250(cpu);
|
|
/* 02690F94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02690F98 */ _t101 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02690F98 */ _t102 = _t101 & 0x00000001u;
|
|
/* 02690F98 */ if (_t102) goto L_02690FDC; else goto L_02690F9C;
|
|
L_02690F9C: ; // 0x2690f9c
|
|
/* 02690F9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u);
|
|
/* 02690FA0 */ cpu->r[0] = 0x00000000u;
|
|
/* 02690FA4 */ _t103 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02690FA4 */ _t104 = _t103 & 0x00000001u;
|
|
/* 02690FA4 */ if (_t104) goto L_02690FB4; else goto L_02690FA8;
|
|
L_02690FA8: ; // 0x2690fa8
|
|
/* 02690FA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 02690FAC */ _t105 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02690FAC */ _t106 = _t105 & 0x00000001u;
|
|
/* 02690FAC */ if (_t106) goto L_02690FB4; else goto L_02690FB0;
|
|
L_02690FB0: ; // 0x2690fb0
|
|
/* 02690FB0 */ cpu->r[0] = 0x00000001u;
|
|
L_02690FB4: ; // 0x2690fb4
|
|
/* 02690FB4 */ cpu->f[5] = cpu->f[27];
|
|
/* 02690FB8 */ cpu->r[6] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 02690FBC */ cpu->f[2] = cpu->f[22];
|
|
/* 02690FC0 */ cpu->r[3] = cpu->r[30];
|
|
/* 02690FC4 */ cpu->f[3] = cpu->f[23];
|
|
/* 02690FC8 */ cpu->r[4] = cpu->r[26] + 0x00000244u;
|
|
/* 02690FCC */ cpu->f[4] = cpu->f[24];
|
|
/* 02690FD0 */ _t107 = cpu->r[31] + 0x00000020u;
|
|
/* 02690FD0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t107);
|
|
/* 02690FD4 */ cpu->f[1] = cpu->f[26];
|
|
/* 02690FD8 */ Gambit_fn_02690B70(cpu);
|
|
L_02690FDC: ; // 0x2690fdc
|
|
/* 02690FDC */ cpu->r[28] = cpu->r[28] + 0x00000004u;
|
|
/* 02690FE0 */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 02690FE4 */ Gambit_fn_027E3E2C(cpu);
|
|
/* 02690FE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], cpu->r[3]);
|
|
/* 02690FEC */ _t108 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02690FEC */ _t109 = _t108 & 0x00000001u;
|
|
/* 02690FEC */ if (_t109) goto L_02690D94; else goto L_02690FF0;
|
|
L_02690FF0: ; // 0x2690ff0
|
|
/* 02690FF0 */ _t110 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02690FF0 */ rbrew_write_f32(cpu->mem, _t110, cpu->f[30]);
|
|
/* 02690FF4 */ cpu->r[4] = 0x100E0000u;
|
|
/* 02690FF8 */ _t111 = cpu->r[1] + 0x00000008u;
|
|
/* 02690FF8 */ rbrew_write_f32(cpu->mem, _t111, cpu->f[30]);
|
|
/* 02690FFC */ _t112 = cpu->r[4] + 0x00003840u;
|
|
/* 02690FFC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t112);
|
|
/* 02691000 */ cpu->r[3] = cpu->r[30] + 0x00000070u;
|
|
/* 02691004 */ _t113 = cpu->r[1] + 0x00000010u;
|
|
/* 02691004 */ rbrew_write_f32(cpu->mem, _t113, cpu->f[30]);
|
|
/* 02691008 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269100C */ _t114 = cpu->r[1] + 0x00000014u;
|
|
/* 0269100C */ rbrew_write_f32(cpu->mem, _t114, cpu->f[0]);
|
|
/* 02691010 */ Gambit_fn_0269948C(cpu);
|
|
L_02691014: ; // 0x2691014
|
|
/* 02691014 */ /* nop */
|
|
/* 02691018 */ _t115 = cpu->r[1] + 0x00000088u;
|
|
/* 02691018 */ cpu->f[26] = rbrew_read_f32(cpu->mem, _t115);
|
|
/* 0269101C */ _t116 = cpu->r[1] + 0x00000068u;
|
|
/* 0269101C */ cpu->f[24] = rbrew_read_f32(cpu->mem, _t116);
|
|
/* 02691020 */ _t117 = cpu->r[1] + 0x00000080u;
|
|
/* 02691020 */ cpu->f[26] = rbrew_read_f64(cpu->mem, _t117);
|
|
/* 02691024 */ _t118 = cpu->r[1] + 0x00000060u;
|
|
/* 02691024 */ cpu->f[24] = rbrew_read_f64(cpu->mem, _t118);
|
|
/* 02691028 */ _t119 = cpu->r[1] + 0x000000A8u;
|
|
/* 02691028 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t119);
|
|
/* 0269102C */ _t120 = cpu->r[1] + 0x00000078u;
|
|
/* 0269102C */ cpu->f[25] = rbrew_read_f32(cpu->mem, _t120);
|
|
/* 02691030 */ _t121 = cpu->r[1] + 0x000000A0u;
|
|
/* 02691030 */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t121);
|
|
/* 02691034 */ _t122 = cpu->r[1] + 0x00000070u;
|
|
/* 02691034 */ cpu->f[25] = rbrew_read_f64(cpu->mem, _t122);
|
|
/* 02691038 */ _t123 = cpu->r[1] + 0x000000C8u;
|
|
/* 02691038 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t123);
|
|
/* 0269103C */ _t124 = cpu->r[1] + 0x00000098u;
|
|
/* 0269103C */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t124);
|
|
/* 02691040 */ _t125 = cpu->r[1] + 0x000000C0u;
|
|
/* 02691040 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t125);
|
|
/* 02691044 */ _t126 = cpu->r[1] + 0x00000090u;
|
|
/* 02691044 */ cpu->f[27] = rbrew_read_f64(cpu->mem, _t126);
|
|
/* 02691048 */ _t127 = cpu->r[1] + 0x00000058u;
|
|
/* 02691048 */ cpu->f[23] = rbrew_read_f32(cpu->mem, _t127);
|
|
/* 0269104C */ _t128 = cpu->r[1] + 0x000000B8u;
|
|
/* 0269104C */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t128);
|
|
/* 02691050 */ _t129 = cpu->r[1] + 0x00000050u;
|
|
/* 02691050 */ cpu->f[23] = rbrew_read_f64(cpu->mem, _t129);
|
|
/* 02691054 */ _t130 = cpu->r[1] + 0x000000B0u;
|
|
/* 02691054 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t130);
|
|
/* 02691058 */ _t131 = cpu->r[1] + 0x00000048u;
|
|
/* 02691058 */ cpu->f[22] = rbrew_read_f32(cpu->mem, _t131);
|
|
/* 0269105C */ _t132 = cpu->r[1] + 0x000000D8u;
|
|
/* 0269105C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t132);
|
|
/* 02691060 */ _t133 = cpu->r[1] + 0x00000040u;
|
|
/* 02691060 */ cpu->f[22] = rbrew_read_f64(cpu->mem, _t133);
|
|
/* 02691064 */ _t134 = cpu->r[1] + 0x000000D0u;
|
|
/* 02691064 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t134);
|
|
/* 02691068 */ _t135 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02691068 */ _t136 = _t135 & 0x00000001u;
|
|
/* 02691068 */ if (_t136) goto L_0269106C; // else: addr-0 trap, fall-through
|
|
L_0269106C: ; // 0x269106c
|
|
/* 0269106C */ _t137 = cpu->r[1] + 0x000000E4u;
|
|
/* 0269106C */ cpu->r[0] = rbrew_read32(cpu->mem, _t137);
|
|
/* 02691070 */ cpu->lr = cpu->r[0];
|
|
/* 02691074 */ cpu->r[1] = cpu->r[1] + 0x000000E0u;
|
|
/* 02691078 */ return;
|
|
}
|
|
|
|
// fn_0269107C @ 0x269107c
|
|
void Gambit_fn_0269107C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_0269107C: ; // 0x269107c
|
|
/* 0269107C */ _t0 = cpu->r[3] + 0x000000F4u;
|
|
/* 0269107C */ cpu->r[10] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02691080 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], cpu->r[10]);
|
|
/* 02691084 */ _t1 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02691084 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02691084 */ if (_t2) goto L_02691088; else goto L_026910E4;
|
|
L_02691088: ; // 0x2691088
|
|
/* 02691088 */ cpu->r[11] = cpu->r[10];
|
|
/* 02691088 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0269108C */ cpu->r[7] = 0x00000000u;
|
|
/* 02691090 */ _t3 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02691090 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02691090 */ if (_t4) goto L_02691094; else goto L_026910E4;
|
|
L_02691094: ; // 0x2691094
|
|
/* 02691094 */ cpu->ctr = cpu->r[11];
|
|
/* 02691098 */ cpu->r[12] = 0x00000000u;
|
|
L_0269109C: ; // 0x269109c
|
|
/* 0269109C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[10]);
|
|
/* 026910A0 */ cpu->r[8] = 0x00000000u;
|
|
/* 026910A4 */ _t5 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026910A4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 026910A4 */ if (_t6) goto L_026910A8; else goto L_026910B0;
|
|
L_026910A8: ; // 0x26910a8
|
|
/* 026910A8 */ _t7 = cpu->r[3] + 0x000000FCu;
|
|
/* 026910A8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t7);
|
|
/* 026910AC */ _t8 = cpu->r[9] + cpu->r[12];
|
|
/* 026910AC */ cpu->r[8] = rbrew_read32(cpu->mem, _t8);
|
|
L_026910B0: ; // 0x26910b0
|
|
/* 026910B0 */ _t9 = cpu->r[8] + 0x00000000u;
|
|
/* 026910B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 026910B4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[4]);
|
|
/* 026910B8 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026910B8 */ _t11 = _t10 & 0x00000001u;
|
|
/* 026910B8 */ if (_t11) goto L_026910BC; else goto L_026910D8;
|
|
L_026910BC: ; // 0x26910bc
|
|
/* 026910BC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[10]);
|
|
/* 026910C0 */ cpu->r[0] = 0x00000000u;
|
|
/* 026910C4 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026910C4 */ _t13 = _t12 & 0x00000001u;
|
|
/* 026910C4 */ if (_t13) goto L_026910C8; else goto L_026910D0;
|
|
L_026910C8: ; // 0x26910c8
|
|
/* 026910C8 */ _t14 = cpu->r[3] + 0x000000FCu;
|
|
/* 026910C8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t14);
|
|
/* 026910CC */ _t15 = cpu->r[6] + cpu->r[12];
|
|
/* 026910CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
L_026910D0: ; // 0x26910d0
|
|
/* 026910D0 */ cpu->r[3] = cpu->r[0];
|
|
/* 026910D4 */ return;
|
|
L_026910D8: ; // 0x26910d8
|
|
/* 026910D8 */ cpu->r[12] = cpu->r[12] + 0x00000004u;
|
|
/* 026910DC */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 026910E0 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 026910E0 */ _t16 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 026910E0 */ _t17 = _t16 >> (0x00000002u & 31u);
|
|
/* 026910E0 */ _t18 = _t17 & 0x00000001u;
|
|
/* 026910E0 */ if (_t18) goto L_0269109C; else goto L_026910E4;
|
|
L_026910E4: ; // 0x26910e4
|
|
/* 026910E4 */ cpu->r[3] = 0x00000000u;
|
|
/* 026910E8 */ return;
|
|
}
|
|
|
|
// fn_026910EC @ 0x26910ec
|
|
void Gambit_fn_026910EC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_026910EC: ; // 0x26910ec
|
|
/* 026910EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 026910F0 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026910F0 */ _t1 = _t0 & 0x00000001u;
|
|
/* 026910F0 */ if (_t1) goto L_0269111C; else goto L_026910F4;
|
|
L_026910F4: ; // 0x26910f4
|
|
/* 026910F4 */ cpu->r[12] = 0x100E0000u;
|
|
/* 026910F8 */ _t2 = cpu->r[12] + 0x000037DCu;
|
|
/* 026910F8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 026910FC */ cpu->r[12] = 0x100E0000u;
|
|
/* 02691100 */ _t3 = cpu->r[12] + 0x00003844u;
|
|
/* 02691100 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 02691104 */ cpu->r[12] = 0x100E0000u;
|
|
/* 02691108 */ _t4 = cpu->r[12] + 0x000037D0u;
|
|
/* 02691108 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 0269110C */ cpu->f[11] = cpu->f[0] * cpu->f[12];
|
|
/* 02691110 */ cpu->f[10] = cpu->f[13] - cpu->f[1];
|
|
/* 02691114 */ cpu->f[1] = cpu->f[11] * cpu->f[10];
|
|
/* 02691118 */ return;
|
|
L_0269111C: ; // 0x269111c
|
|
/* 0269111C */ cpu->r[12] = 0x100E0000u;
|
|
/* 02691120 */ _t5 = cpu->r[12] + 0x000037D4u;
|
|
/* 02691120 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 02691124 */ cpu->r[12] = 0x100E0000u;
|
|
/* 02691128 */ _t6 = cpu->r[12] + 0x00003844u;
|
|
/* 02691128 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 0269112C */ cpu->r[12] = 0x100E0000u;
|
|
/* 02691130 */ _t7 = cpu->r[12] + 0x000037D0u;
|
|
/* 02691130 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 02691134 */ cpu->f[11] = cpu->f[0] * cpu->f[12];
|
|
/* 02691138 */ cpu->f[10] = cpu->f[13] - cpu->f[1];
|
|
/* 0269113C */ cpu->f[1] = cpu->f[11] * cpu->f[10];
|
|
/* 02691140 */ return;
|
|
}
|
|
|
|
// fn_02691144 @ 0x2691144
|
|
void Gambit_fn_02691144(CPUState* cpu) {
|
|
L_02690424: ; // 0x2690424
|
|
/* 02690424 */ return;
|
|
L_02691144: ; // 0x2691144
|
|
/* 02691144 */ goto L_02690424;
|
|
}
|
|
|
|
// fn_02691148 @ 0x2691148
|
|
void Gambit_fn_02691148(CPUState* cpu) {
|
|
uint32_t _t0, _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_02691148: ; // 0x2691148
|
|
/* 02691148 */ _t0 = cpu->r[1] + 0xFFFFFE48u;
|
|
/* 02691148 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02691148 */ cpu->r[1] = _t0;
|
|
/* 0269114C */ _t1 = cpu->r[1] + 0x00000188u;
|
|
/* 0269114C */ rbrew_write_f64(cpu->mem, _t1, cpu->f[29]);
|
|
/* 02691150 */ /* nop */
|
|
/* 02691154 */ _t2 = cpu->r[1] + 0x00000168u;
|
|
/* 02691154 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[27]);
|
|
/* 02691158 */ cpu->r[0] = cpu->lr;
|
|
/* 0269115C */ _t3 = cpu->r[1] + 0x00000138u;
|
|
/* 0269115C */ rbrew_write_f64(cpu->mem, _t3, cpu->f[24]);
|
|
/* 02691160 */ /* nop */
|
|
/* 02691164 */ _t4 = cpu->r[1] + 0x00000190u;
|
|
/* 02691164 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[29]);
|
|
/* 02691168 */ _t5 = cpu->r[1] + 0x000001A8u;
|
|
/* 02691168 */ rbrew_write_f64(cpu->mem, _t5, cpu->f[31]);
|
|
/* 0269116C */ /* nop */
|
|
/* 02691170 */ _t6 = cpu->r[1] + 0x00000198u;
|
|
/* 02691170 */ rbrew_write_f64(cpu->mem, _t6, cpu->f[30]);
|
|
/* 02691174 */ _t7 = cpu->r[1] + 0x00000170u;
|
|
/* 02691174 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[27]);
|
|
/* 02691178 */ /* nop */
|
|
/* 0269117C */ _t8 = cpu->r[1] + 0x00000148u;
|
|
/* 0269117C */ rbrew_write_f64(cpu->mem, _t8, cpu->f[25]);
|
|
/* 02691180 */ _t9 = cpu->r[1] + 0x000001BCu;
|
|
/* 02691180 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 02691184 */ /* nop */
|
|
/* 02691188 */ _t10 = cpu->r[1] + 0x000001A0u;
|
|
/* 02691188 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[30]);
|
|
/* 0269118C */ _t11 = cpu->r[1] + 0x00000140u;
|
|
/* 0269118C */ rbrew_write_f32(cpu->mem, _t11, cpu->f[24]);
|
|
/* 02691190 */ /* nop */
|
|
/* 02691194 */ _t12 = cpu->r[1] + 0x00000158u;
|
|
/* 02691194 */ rbrew_write_f64(cpu->mem, _t12, cpu->f[26]);
|
|
/* 02691198 */ /* nop */
|
|
/* 0269119C */ _t13 = cpu->r[1] + 0x00000178u;
|
|
/* 0269119C */ rbrew_write_f64(cpu->mem, _t13, cpu->f[28]);
|
|
/* 026911A0 */ /* nop */
|
|
/* 026911A4 */ _t14 = cpu->r[1] + 0x000001B0u;
|
|
/* 026911A4 */ rbrew_write_f32(cpu->mem, _t14, cpu->f[31]);
|
|
/* 026911A8 */ _t15 = cpu->r[1] + 0x00000150u;
|
|
/* 026911A8 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[25]);
|
|
/* 026911AC */ /* nop */
|
|
/* 026911B0 */ _t16 = cpu->r[1] + 0x00000160u;
|
|
/* 026911B0 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[26]);
|
|
/* 026911B4 */ cpu->r[31] = cpu->r[4];
|
|
/* 026911B8 */ cpu->r[30] = cpu->r[3];
|
|
/* 026911BC */ _t17 = cpu->r[1] + 0x00000180u;
|
|
/* 026911BC */ rbrew_write_f32(cpu->mem, _t17, cpu->f[28]);
|
|
/* 026911C0 */ Gambit_fn_02690428(cpu);
|
|
/* 026911C4 */ cpu->r[4] = cpu->r[31];
|
|
/* 026911C8 */ cpu->r[3] = cpu->r[30] + 0x00000070u;
|
|
/* 026911CC */ Gambit_fn_026994B0(cpu);
|
|
/* 026911D0 */ _t18 = cpu->r[31] + 0x00000000u;
|
|
/* 026911D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 026911D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000006u);
|
|
/* 026911D8 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026911D8 */ _t20 = _t19 & 0x00000001u;
|
|
/* 026911D8 */ if (_t20) goto L_026911DC; else goto L_026913F0;
|
|
L_026911DC: ; // 0x26911dc
|
|
/* 026911DC */ cpu->r[3] = cpu->r[1] + 0x000000A4u;
|
|
/* 026911E0 */ Gambit_fn_0281E19C(cpu);
|
|
/* 026911E4 */ cpu->r[12] = 0x00000001u;
|
|
/* 026911E8 */ cpu->r[0] = 0x00000000u;
|
|
/* 026911EC */ _t21 = cpu->r[1] + 0x000000A4u;
|
|
/* 026911EC */ rbrew_write8(cpu->mem, _t21, (uint8_t)cpu->r[12]);
|
|
/* 026911F0 */ cpu->r[4] = 0x00000002u;
|
|
/* 026911F4 */ _t22 = cpu->r[1] + 0x000000A5u;
|
|
/* 026911F4 */ rbrew_write8(cpu->mem, _t22, (uint8_t)cpu->r[0]);
|
|
/* 026911F8 */ cpu->r[3] = cpu->r[1] + 0x000000A4u;
|
|
/* 026911FC */ _t23 = cpu->r[1] + 0x000000ACu;
|
|
/* 026911FC */ rbrew_write32(cpu->mem, _t23, cpu->r[4]);
|
|
/* 02691200 */ Gambit_fn_0281E2C8(cpu);
|
|
/* 02691204 */ cpu->r[3] = cpu->r[30] + 0x00000070u;
|
|
/* 02691208 */ Gambit_fn_02699250(cpu);
|
|
/* 0269120C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02691210 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02691210 */ _t25 = _t24 & 0x00000001u;
|
|
/* 02691210 */ if (_t25) goto L_026913F0; else goto L_02691214;
|
|
L_02691214: ; // 0x2691214
|
|
/* 02691214 */ _t26 = cpu->r[30] + 0x000000F4u;
|
|
/* 02691214 */ cpu->r[6] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02691218 */ cpu->r[25] = 0x00000000u;
|
|
/* 0269121C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], cpu->r[6]);
|
|
/* 02691220 */ _t27 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02691220 */ _t28 = _t27 & 0x00000001u;
|
|
/* 02691220 */ if (_t28) goto L_02691224; else goto L_026913F0;
|
|
L_02691224: ; // 0x2691224
|
|
/* 02691224 */ cpu->r[12] = 0x100E0000u;
|
|
/* 02691228 */ cpu->r[11] = 0x100E0000u;
|
|
/* 0269122C */ cpu->r[26] = 0x101F0000u;
|
|
/* 02691230 */ _t29 = cpu->r[12] + 0x000037D8u;
|
|
/* 02691230 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 02691234 */ cpu->r[10] = 0x100E0000u;
|
|
/* 02691238 */ cpu->r[27] = 0x101F0000u;
|
|
/* 0269123C */ _t30 = cpu->r[11] + 0x00003848u;
|
|
/* 0269123C */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 02691240 */ cpu->r[8] = 0x100E0000u;
|
|
/* 02691244 */ cpu->r[28] = 0x101F0000u;
|
|
/* 02691248 */ _t31 = cpu->r[10] + 0x00003734u;
|
|
/* 02691248 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 0269124C */ cpu->r[26] = cpu->r[26] + 0x00006350u;
|
|
/* 02691250 */ cpu->r[28] = cpu->r[28] + 0x00006344u;
|
|
/* 02691254 */ _t32 = cpu->r[8] + 0x000037E8u;
|
|
/* 02691254 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 02691258 */ cpu->r[29] = 0x00000000u;
|
|
/* 0269125C */ cpu->r[27] = cpu->r[27] + 0x00006368u;
|
|
L_02691260: ; // 0x2691260
|
|
/* 02691260 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], cpu->r[6]);
|
|
/* 02691264 */ cpu->r[31] = 0x00000000u;
|
|
/* 02691268 */ _t33 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02691268 */ _t34 = _t33 & 0x00000001u;
|
|
/* 02691268 */ if (_t34) goto L_0269126C; else goto L_02691274;
|
|
L_0269126C: ; // 0x269126c
|
|
/* 0269126C */ _t35 = cpu->r[30] + 0x000000FCu;
|
|
/* 0269126C */ cpu->r[7] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02691270 */ _t36 = cpu->r[7] + cpu->r[29];
|
|
/* 02691270 */ cpu->r[31] = rbrew_read32(cpu->mem, _t36);
|
|
L_02691274: ; // 0x2691274
|
|
/* 02691274 */ _t37 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02691274 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 02691278 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[29]);
|
|
/* 0269127C */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269127C */ _t39 = _t38 & 0x00000001u;
|
|
/* 0269127C */ if (_t39) goto L_026913E0; else goto L_02691280;
|
|
L_02691280: ; // 0x2691280
|
|
/* 02691280 */ _t40 = cpu->r[31] + 0x00000024u;
|
|
/* 02691280 */ cpu->r[4] = rbrew_read8(cpu->mem, _t40);
|
|
/* 02691284 */ cpu->r[3] = cpu->r[30];
|
|
/* 02691288 */ Gambit_fn_026910EC(cpu);
|
|
/* 0269128C */ _t41 = cpu->r[28] + 0x00000008u;
|
|
/* 0269128C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 02691290 */ cpu->f[12] = cpu->f[1] + cpu->f[1];
|
|
/* 02691294 */ /* nop */
|
|
/* 02691298 */ _t42 = cpu->r[27] + 0x00000008u;
|
|
/* 02691298 */ cpu->f[25] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 0269129C */ /* nop */
|
|
/* 026912A0 */ /* nop */
|
|
/* 026912A4 */ /* nop */
|
|
/* 026912A8 */ _t43 = cpu->r[1] + 0x00000008u;
|
|
/* 026912A8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t43);
|
|
/* 026912AC */ cpu->f[6] = cpu->f[25] * cpu->f[12];
|
|
/* 026912B0 */ _t44 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026912B0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t44);
|
|
/* 026912B4 */ _t45 = cpu->r[1] + 0x00000050u;
|
|
/* 026912B4 */ rbrew_write32(cpu->mem, _t45, cpu->r[4]);
|
|
/* 026912B8 */ /* nop */
|
|
/* 026912BC */ _t46 = cpu->r[1] + 0x00000054u;
|
|
/* 026912BC */ rbrew_write32(cpu->mem, _t46, cpu->r[5]);
|
|
/* 026912C0 */ cpu->f[12] = cpu->f[0] * cpu->f[28];
|
|
/* 026912C4 */ /* nop */
|
|
/* 026912C8 */ _t47 = cpu->r[1] + 0x00000018u;
|
|
/* 026912C8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t47);
|
|
/* 026912CC */ _t48 = cpu->r[1] + 0x0000001Cu;
|
|
/* 026912CC */ rbrew_write_f32(cpu->mem, _t48, cpu->f[12]);
|
|
/* 026912D0 */ _t49 = cpu->r[1] + 0x0000001Cu;
|
|
/* 026912D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t49);
|
|
/* 026912D4 */ _t50 = cpu->r[1] + 0x00000010u;
|
|
/* 026912D4 */ rbrew_write_f32(cpu->mem, _t50, cpu->f[6]);
|
|
/* 026912D8 */ _t51 = cpu->r[1] + 0x00000010u;
|
|
/* 026912D8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t51);
|
|
/* 026912DC */ _t52 = cpu->r[1] + 0x00000060u;
|
|
/* 026912DC */ rbrew_write32(cpu->mem, _t52, cpu->r[10]);
|
|
/* 026912E0 */ _t53 = cpu->r[1] + 0x00000058u;
|
|
/* 026912E0 */ rbrew_write32(cpu->mem, _t53, cpu->r[6]);
|
|
/* 026912E4 */ _t54 = cpu->r[1] + 0x00000064u;
|
|
/* 026912E4 */ rbrew_write32(cpu->mem, _t54, cpu->r[0]);
|
|
/* 026912E8 */ _t55 = cpu->r[1] + 0x00000014u;
|
|
/* 026912E8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t55);
|
|
/* 026912EC */ /* nop */
|
|
/* 026912F0 */ _t56 = cpu->r[1] + 0x0000005Cu;
|
|
/* 026912F0 */ rbrew_write32(cpu->mem, _t56, cpu->r[9]);
|
|
/* 026912F4 */ /* nop */
|
|
/* 026912F8 */ /* nop */
|
|
/* 026912FC */ /* nop */
|
|
/* 02691300 */ _t57 = cpu->r[1] + 0x00000024u;
|
|
/* 02691300 */ cpu->r[5] = rbrew_read32(cpu->mem, _t57);
|
|
/* 02691304 */ _t58 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02691304 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 02691308 */ _t59 = cpu->r[26] + 0x00000008u;
|
|
/* 02691308 */ cpu->f[24] = rbrew_read_f32(cpu->mem, _t59);
|
|
/* 0269130C */ cpu->r[8] = cpu->r[1] + 0x0000005Cu;
|
|
/* 02691310 */ _t60 = cpu->r[1] + 0x00000020u;
|
|
/* 02691310 */ cpu->r[4] = rbrew_read32(cpu->mem, _t60);
|
|
/* 02691314 */ cpu->f[7] = cpu->f[9] + cpu->f[24];
|
|
/* 02691318 */ _t61 = cpu->r[1] + 0x00000068u;
|
|
/* 02691318 */ rbrew_write32(cpu->mem, _t61, cpu->r[4]);
|
|
/* 0269131C */ cpu->r[6] = cpu->r[1] + 0x00000068u;
|
|
/* 02691320 */ cpu->r[12] = cpu->r[1] + 0x00000050u;
|
|
/* 02691324 */ cpu->r[3] = cpu->r[1] + 0x00000074u;
|
|
/* 02691328 */ _t62 = cpu->r[1] + 0x00000028u;
|
|
/* 02691328 */ rbrew_write_f32(cpu->mem, _t62, cpu->f[7]);
|
|
/* 0269132C */ _t63 = cpu->r[1] + 0x00000028u;
|
|
/* 0269132C */ cpu->r[0] = rbrew_read32(cpu->mem, _t63);
|
|
/* 02691330 */ cpu->r[4] = cpu->r[12];
|
|
/* 02691334 */ _t64 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02691334 */ rbrew_write32(cpu->mem, _t64, cpu->r[5]);
|
|
/* 02691338 */ cpu->r[5] = cpu->r[8];
|
|
/* 0269133C */ _t65 = cpu->r[1] + 0x00000070u;
|
|
/* 0269133C */ rbrew_write32(cpu->mem, _t65, cpu->r[0]);
|
|
/* 02691340 */ Gambit_fn_0200FC4C(cpu);
|
|
/* 02691344 */ /* nop */
|
|
/* 02691348 */ /* nop */
|
|
/* 0269134C */ _t66 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0269134C */ cpu->r[9] = rbrew_read32(cpu->mem, _t66);
|
|
/* 02691350 */ _t67 = cpu->r[1] + 0x00000030u;
|
|
/* 02691350 */ cpu->r[10] = rbrew_read32(cpu->mem, _t67);
|
|
/* 02691354 */ /* nop */
|
|
/* 02691358 */ _t68 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02691358 */ rbrew_write32(cpu->mem, _t68, cpu->r[9]);
|
|
/* 0269135C */ /* nop */
|
|
/* 02691360 */ _t69 = cpu->r[1] + 0x00000038u;
|
|
/* 02691360 */ cpu->r[5] = rbrew_read32(cpu->mem, _t69);
|
|
/* 02691364 */ cpu->f[13] = cpu->f[24] * cpu->f[30];
|
|
/* 02691368 */ _t70 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02691368 */ cpu->r[6] = rbrew_read32(cpu->mem, _t70);
|
|
/* 0269136C */ _t71 = cpu->r[1] + 0x00000050u;
|
|
/* 0269136C */ rbrew_write32(cpu->mem, _t71, cpu->r[5]);
|
|
/* 02691370 */ cpu->f[8] = cpu->f[25] * cpu->f[31];
|
|
/* 02691374 */ _t72 = cpu->r[1] + 0x00000054u;
|
|
/* 02691374 */ rbrew_write32(cpu->mem, _t72, cpu->r[6]);
|
|
/* 02691378 */ /* nop */
|
|
/* 0269137C */ _t73 = cpu->r[1] + 0x00000040u;
|
|
/* 0269137C */ rbrew_write_f32(cpu->mem, _t73, cpu->f[13]);
|
|
/* 02691380 */ _t74 = cpu->r[1] + 0x00000040u;
|
|
/* 02691380 */ cpu->r[7] = rbrew_read32(cpu->mem, _t74);
|
|
/* 02691384 */ _t75 = cpu->r[1] + 0x00000034u;
|
|
/* 02691384 */ rbrew_write_f32(cpu->mem, _t75, cpu->f[8]);
|
|
/* 02691388 */ _t76 = cpu->r[1] + 0x00000034u;
|
|
/* 02691388 */ cpu->r[0] = rbrew_read32(cpu->mem, _t76);
|
|
/* 0269138C */ _t77 = cpu->r[1] + 0x00000058u;
|
|
/* 0269138C */ rbrew_write32(cpu->mem, _t77, cpu->r[7]);
|
|
/* 02691390 */ _t78 = cpu->r[1] + 0x00000064u;
|
|
/* 02691390 */ rbrew_write32(cpu->mem, _t78, cpu->r[0]);
|
|
/* 02691394 */ _t79 = cpu->r[1] + 0x00000060u;
|
|
/* 02691394 */ rbrew_write32(cpu->mem, _t79, cpu->r[10]);
|
|
/* 02691398 */ /* nop */
|
|
/* 0269139C */ _t80 = cpu->r[1] + 0x00000058u;
|
|
/* 0269139C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t80);
|
|
/* 026913A0 */ /* nop */
|
|
/* 026913A4 */ /* nop */
|
|
/* 026913A8 */ _t81 = cpu->r[31] + 0x0000000Cu;
|
|
/* 026913A8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t81);
|
|
/* 026913AC */ _t82 = cpu->r[1] + 0x00000044u;
|
|
/* 026913AC */ cpu->r[8] = rbrew_read32(cpu->mem, _t82);
|
|
/* 026913B0 */ cpu->f[8] = cpu->f[10] + cpu->f[11];
|
|
/* 026913B4 */ _t83 = cpu->r[1] + 0x00000048u;
|
|
/* 026913B4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t83);
|
|
/* 026913B8 */ _t84 = cpu->r[1] + 0x00000068u;
|
|
/* 026913B8 */ rbrew_write32(cpu->mem, _t84, cpu->r[8]);
|
|
/* 026913BC */ _t85 = cpu->r[1] + 0x0000004Cu;
|
|
/* 026913BC */ rbrew_write_f32(cpu->mem, _t85, cpu->f[8]);
|
|
/* 026913C0 */ _t86 = cpu->r[1] + 0x0000004Cu;
|
|
/* 026913C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t86);
|
|
/* 026913C4 */ cpu->r[3] = cpu->r[1] + 0x00000074u;
|
|
/* 026913C8 */ _t87 = cpu->r[1] + 0x0000006Cu;
|
|
/* 026913C8 */ rbrew_write32(cpu->mem, _t87, cpu->r[9]);
|
|
/* 026913CC */ cpu->r[4] = cpu->r[1] + 0x0000005Cu;
|
|
/* 026913D0 */ cpu->r[5] = cpu->r[1] + 0x00000068u;
|
|
/* 026913D4 */ _t88 = cpu->r[1] + 0x00000070u;
|
|
/* 026913D4 */ rbrew_write32(cpu->mem, _t88, cpu->r[0]);
|
|
/* 026913D8 */ Gambit_fn_020FF2BC(cpu);
|
|
/* 026913DC */ _t89 = cpu->r[30] + 0x000000F4u;
|
|
/* 026913DC */ cpu->r[6] = rbrew_read32(cpu->mem, _t89);
|
|
L_026913E0: ; // 0x26913e0
|
|
/* 026913E0 */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 026913E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], cpu->r[6]);
|
|
/* 026913E8 */ cpu->r[29] = cpu->r[29] + 0x00000004u;
|
|
/* 026913EC */ _t90 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026913EC */ _t91 = _t90 & 0x00000001u;
|
|
/* 026913EC */ if (_t91) goto L_02691260; else goto L_026913F0;
|
|
L_026913F0: ; // 0x26913f0
|
|
/* 026913F0 */ /* nop */
|
|
/* 026913F4 */ _t92 = cpu->r[1] + 0x00000180u;
|
|
/* 026913F4 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t92);
|
|
/* 026913F8 */ _t93 = cpu->r[1] + 0x00000160u;
|
|
/* 026913F8 */ cpu->f[26] = rbrew_read_f32(cpu->mem, _t93);
|
|
/* 026913FC */ _t94 = cpu->r[1] + 0x00000178u;
|
|
/* 026913FC */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t94);
|
|
/* 02691400 */ _t95 = cpu->r[1] + 0x00000158u;
|
|
/* 02691400 */ cpu->f[26] = rbrew_read_f64(cpu->mem, _t95);
|
|
/* 02691404 */ _t96 = cpu->r[1] + 0x000001A0u;
|
|
/* 02691404 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t96);
|
|
/* 02691408 */ _t97 = cpu->r[1] + 0x00000170u;
|
|
/* 02691408 */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t97);
|
|
/* 0269140C */ _t98 = cpu->r[1] + 0x00000198u;
|
|
/* 0269140C */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t98);
|
|
/* 02691410 */ _t99 = cpu->r[1] + 0x00000168u;
|
|
/* 02691410 */ cpu->f[27] = rbrew_read_f64(cpu->mem, _t99);
|
|
/* 02691414 */ _t100 = cpu->r[1] + 0x00000150u;
|
|
/* 02691414 */ cpu->f[25] = rbrew_read_f32(cpu->mem, _t100);
|
|
/* 02691418 */ _t101 = cpu->r[1] + 0x00000190u;
|
|
/* 02691418 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t101);
|
|
/* 0269141C */ _t102 = cpu->r[1] + 0x00000148u;
|
|
/* 0269141C */ cpu->f[25] = rbrew_read_f64(cpu->mem, _t102);
|
|
/* 02691420 */ _t103 = cpu->r[1] + 0x00000188u;
|
|
/* 02691420 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t103);
|
|
/* 02691424 */ _t104 = cpu->r[1] + 0x00000140u;
|
|
/* 02691424 */ cpu->f[24] = rbrew_read_f32(cpu->mem, _t104);
|
|
/* 02691428 */ _t105 = cpu->r[1] + 0x000001B0u;
|
|
/* 02691428 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t105);
|
|
/* 0269142C */ _t106 = cpu->r[1] + 0x00000138u;
|
|
/* 0269142C */ cpu->f[24] = rbrew_read_f64(cpu->mem, _t106);
|
|
/* 02691430 */ _t107 = cpu->r[1] + 0x000001A8u;
|
|
/* 02691430 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t107);
|
|
/* 02691434 */ _t108 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02691434 */ _t109 = _t108 & 0x00000001u;
|
|
/* 02691434 */ if (_t109) goto L_02691438; // else: addr-0 trap, fall-through
|
|
L_02691438: ; // 0x2691438
|
|
/* 02691438 */ _t110 = cpu->r[1] + 0x000001BCu;
|
|
/* 02691438 */ cpu->r[0] = rbrew_read32(cpu->mem, _t110);
|
|
/* 0269143C */ cpu->lr = cpu->r[0];
|
|
/* 02691440 */ cpu->r[1] = cpu->r[1] + 0x000001B8u;
|
|
/* 02691444 */ return;
|
|
}
|
|
|
|
// fn_02691448 @ 0x2691448
|
|
void Gambit_fn_02691448(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02691448: ; // 0x2691448
|
|
/* 02691448 */ cpu->r[12] = 0x100E0000u;
|
|
/* 0269144C */ _t0 = cpu->r[12] + 0x00003734u;
|
|
/* 0269144C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 02691450 */ cpu->r[12] = 0x100E0000u;
|
|
/* 02691454 */ cpu->r[11] = 0x101F0000u;
|
|
/* 02691458 */ _t1 = cpu->r[12] + 0x0000384Cu;
|
|
/* 02691458 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 0269145C */ cpu->r[12] = 0x100E0000u;
|
|
/* 02691460 */ _t2 = cpu->r[11] + 0xFFFFD870u;
|
|
/* 02691460 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[13]);
|
|
/* 02691460 */ cpu->r[11] = _t2;
|
|
/* 02691464 */ _t3 = cpu->r[12] + 0x00003850u;
|
|
/* 02691464 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 02691468 */ _t4 = cpu->r[11] + 0x00000004u;
|
|
/* 02691468 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[12]);
|
|
/* 0269146C */ _t5 = cpu->r[11] + 0x00000008u;
|
|
/* 0269146C */ rbrew_write_f32(cpu->mem, _t5, cpu->f[0]);
|
|
/* 02691470 */ return;
|
|
}
|
|
|
|
// fn_02691474 @ 0x2691474
|
|
void Gambit_fn_02691474(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_02691474: ; // 0x2691474
|
|
/* 02691474 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02691478 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02691478 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02691478 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02691478 */ goto L_0269147C;
|
|
L_0269147C: ; // 0x269147c
|
|
/* 0269147C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0269147C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02691480 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02691480 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02691480 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02691480 */ goto L_02691484;
|
|
L_02691484: ; // 0x2691484
|
|
/* 02691484 */ 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_02691488 @ 0x2691488
|
|
void Gambit_fn_02691488(CPUState* cpu) {
|
|
L_02691488: ; // 0x2691488
|
|
/* 02691488 */ return;
|
|
}
|
|
|
|
// fn_0269148C @ 0x269148c
|
|
void Gambit_fn_0269148C(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_0269148C: ; // 0x269148c
|
|
/* 0269148C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02691490 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02691490 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02691490 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02691490 */ goto L_02691494;
|
|
L_02691494: ; // 0x2691494
|
|
/* 02691494 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02691494 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02691498 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02691498 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02691498 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02691498 */ goto L_0269149C;
|
|
L_0269149C: ; // 0x269149c
|
|
/* 0269149C */ 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_026914A0 @ 0x26914a0
|
|
void Gambit_fn_026914A0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_026914A0: ; // 0x26914a0
|
|
/* 026914A0 */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 026914A0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 026914A4 */ _t1 = cpu->r[3] + 0x00000008u;
|
|
/* 026914A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 026914A8 */ cpu->r[12] = cpu->r[11] + cpu->r[12];
|
|
/* 026914AC */ cpu->r[11] = 0x10110000u;
|
|
/* 026914B0 */ _t2 = cpu->r[11] + 0x00007399u;
|
|
/* 026914B0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t2);
|
|
/* 026914B4 */ _t3 = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 026914B4 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]);
|
|
/* 026914B8 */ return;
|
|
}
|
|
|
|
// fn_026914BC @ 0x26914bc
|
|
void Gambit_fn_026914BC(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_026914BC: ; // 0x26914bc
|
|
/* 026914BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 026914C0 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026914C0 */ _t1 = _t0 & 0x00000001u;
|
|
/* 026914C0 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 026914C0 */ goto L_026914C4;
|
|
L_026914C4: ; // 0x26914c4
|
|
/* 026914C4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 026914C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 026914C8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026914C8 */ _t3 = _t2 & 0x00000001u;
|
|
/* 026914C8 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 026914C8 */ goto L_026914CC;
|
|
L_026914CC: ; // 0x26914cc
|
|
/* 026914CC */ 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_026914D0 @ 0x26914d0
|
|
void Gambit_fn_026914D0(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_026914D0: ; // 0x26914d0
|
|
/* 026914D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 026914D4 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026914D4 */ _t1 = _t0 & 0x00000001u;
|
|
/* 026914D4 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 026914D4 */ goto L_026914D8;
|
|
L_026914D8: ; // 0x26914d8
|
|
/* 026914D8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 026914D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 026914DC */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026914DC */ _t3 = _t2 & 0x00000001u;
|
|
/* 026914DC */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 026914DC */ goto L_026914E0;
|
|
L_026914E0: ; // 0x26914e0
|
|
/* 026914E0 */ 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_026914E4 @ 0x26914e4
|
|
void Gambit_fn_026914E4(CPUState* cpu) {
|
|
L_026914E4: ; // 0x26914e4
|
|
/* 026914E4 */ return;
|
|
}
|
|
|
|
// fn_026914E8 @ 0x26914e8
|
|
void Gambit_fn_026914E8(CPUState* cpu) {
|
|
L_026914E8: ; // 0x26914e8
|
|
/* 026914E8 */ return;
|
|
}
|
|
|
|
// fn_026914EC @ 0x26914ec
|
|
void Gambit_fn_026914EC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_026914EC: ; // 0x26914ec
|
|
/* 026914EC */ cpu->r[9] = 0x101D0000u;
|
|
/* 026914F0 */ _t0 = cpu->r[9] + 0x00000DB8u;
|
|
/* 026914F0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 026914F0 */ cpu->r[9] = _t0;
|
|
/* 026914F4 */ cpu->r[12] = 0x101D0000u;
|
|
/* 026914F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 026914FC */ cpu->r[12] = cpu->r[12] + 0x00000DBCu;
|
|
/* 02691500 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02691500 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02691500 */ if (_t2) goto L_02691504; else goto L_02691518;
|
|
L_02691504: ; // 0x2691504
|
|
/* 02691504 */ cpu->r[7] = 0x100E0000u;
|
|
/* 02691508 */ cpu->r[0] = 0x00000001u;
|
|
/* 0269150C */ cpu->r[7] = cpu->r[7] + 0x000037A8u;
|
|
/* 02691510 */ _t3 = cpu->r[9] + 0x00000000u;
|
|
/* 02691510 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02691514 */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 02691514 */ rbrew_write32(cpu->mem, _t4, cpu->r[7]);
|
|
L_02691518: ; // 0x2691518
|
|
/* 02691518 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 0269151C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269151C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0269151C */ if (_t6) goto L_02691520; else goto L_02691528;
|
|
L_02691520: ; // 0x2691520
|
|
/* 02691520 */ cpu->r[3] = 0x00000001u;
|
|
/* 02691524 */ return;
|
|
L_02691528: ; // 0x2691528
|
|
/* 02691528 */ cpu->r[7] = 0x101D0000u;
|
|
/* 0269152C */ _t7 = cpu->r[7] + 0x00000DD8u;
|
|
/* 0269152C */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269152C */ cpu->r[7] = _t7;
|
|
/* 02691530 */ cpu->r[11] = 0x101D0000u;
|
|
/* 02691534 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02691538 */ cpu->r[11] = cpu->r[11] + 0x00000DDCu;
|
|
/* 0269153C */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269153C */ _t9 = _t8 & 0x00000001u;
|
|
/* 0269153C */ if (_t9) goto L_02691540; else goto L_02691554;
|
|
L_02691540: ; // 0x2691540
|
|
/* 02691540 */ cpu->r[0] = 0x100E0000u;
|
|
/* 02691544 */ cpu->r[9] = 0x00000001u;
|
|
/* 02691548 */ cpu->r[0] = cpu->r[0] + 0x00003738u;
|
|
/* 0269154C */ _t10 = cpu->r[7] + 0x00000000u;
|
|
/* 0269154C */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 02691550 */ _t11 = cpu->r[11] + 0x00000000u;
|
|
/* 02691550 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_02691554: ; // 0x2691554
|
|
/* 02691554 */ cpu->r[0] = cpu->r[4] ^ cpu->r[11];
|
|
/* 02691558 */ cpu->r[8] = rbrew_clz32(cpu->r[0]);
|
|
/* 0269155C */ cpu->r[3] = rbrew_rlwinm(cpu->r[8], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
/* 02691560 */ return;
|
|
}
|
|
|
|
// fn_02691564 @ 0x2691564
|
|
void Gambit_fn_02691564(CPUState* cpu) {
|
|
uint32_t _t0, _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;
|
|
|
|
L_02691564: ; // 0x2691564
|
|
/* 02691564 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 02691564 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02691564 */ cpu->r[1] = _t0;
|
|
/* 02691568 */ _t1 = cpu->r[1] + 0x00000030u;
|
|
/* 02691568 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0269156C */ /* nop */
|
|
/* 02691570 */ cpu->r[0] = cpu->lr;
|
|
/* 02691574 */ _t2 = cpu->r[1] + 0x00000020u;
|
|
/* 02691574 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[30]);
|
|
/* 02691578 */ /* nop */
|
|
/* 0269157C */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269157C */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 02691580 */ cpu->r[31] = cpu->r[3];
|
|
/* 02691580 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02691584 */ _t4 = cpu->r[1] + 0x00000038u;
|
|
/* 02691584 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[31]);
|
|
/* 02691588 */ _t5 = cpu->r[1] + 0x00000028u;
|
|
/* 02691588 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[30]);
|
|
/* 0269158C */ _t6 = cpu->r[1] + 0x00000018u;
|
|
/* 0269158C */ rbrew_write32(cpu->mem, _t6, cpu->r[30]);
|
|
/* 02691590 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 02691590 */ rbrew_write32(cpu->mem, _t7, cpu->r[29]);
|
|
/* 02691594 */ _t8 = cpu->r[1] + 0x00000044u;
|
|
/* 02691594 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 02691598 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02691598 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02691598 */ if (_t10) goto L_0269159C; else goto L_026915AC;
|
|
L_0269159C: ; // 0x269159c
|
|
/* 0269159C */ cpu->r[3] = 0x00000108u;
|
|
/* 026915A0 */ Gambit_fn_02801A78(cpu);
|
|
/* 026915A4 */ cpu->r[31] = cpu->r[3];
|
|
/* 026915A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 026915A8 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026915A8 */ _t12 = _t11 & 0x00000001u;
|
|
/* 026915A8 */ if (_t12) goto L_026916C8; else goto L_026915AC;
|
|
L_026915AC: ; // 0x26915ac
|
|
/* 026915AC */ cpu->r[11] = 0x100E0000u;
|
|
/* 026915B0 */ cpu->r[0] = 0x100E0000u;
|
|
/* 026915B4 */ cpu->r[11] = cpu->r[11] + 0x000038B8u;
|
|
/* 026915B8 */ cpu->r[0] = cpu->r[0] + 0x00003930u;
|
|
/* 026915BC */ cpu->r[3] = cpu->r[31];
|
|
/* 026915C0 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026915C0 */ rbrew_write32(cpu->mem, _t13, cpu->r[11]);
|
|
/* 026915C4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 026915C8 */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 026915C8 */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
/* 026915CC */ Gambit_fn_02690118(cpu);
|
|
/* 026915D0 */ cpu->r[10] = 0x100E0000u;
|
|
/* 026915D4 */ cpu->r[11] = 0x100E0000u;
|
|
/* 026915D8 */ _t15 = cpu->r[10] + 0x00003928u;
|
|
/* 026915D8 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 026915DC */ cpu->r[0] = 0x100E0000u;
|
|
/* 026915E0 */ _t16 = cpu->r[11] + 0x0000392Cu;
|
|
/* 026915E0 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 026915E4 */ cpu->f[1] = cpu->f[30];
|
|
/* 026915E8 */ cpu->r[0] = cpu->r[0] + 0x000039B8u;
|
|
/* 026915EC */ cpu->r[4] = 0x101F0000u;
|
|
/* 026915F0 */ cpu->f[2] = cpu->f[31];
|
|
/* 026915F4 */ cpu->r[3] = cpu->r[31] + 0x00000070u;
|
|
/* 026915F8 */ cpu->r[4] = cpu->r[4] + 0x00006338u;
|
|
/* 026915FC */ _t17 = cpu->r[31] + 0x00000004u;
|
|
/* 026915FC */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
/* 02691600 */ Gambit_fn_02698DA8(cpu);
|
|
/* 02691604 */ cpu->r[29] = cpu->r[31] + 0x000000F4u;
|
|
/* 02691604 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02691608 */ cpu->r[30] = 0x00000000u;
|
|
/* 0269160C */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269160C */ _t19 = _t18 & 0x00000001u;
|
|
/* 0269160C */ if (_t19) goto L_02691610; else goto L_02691620;
|
|
L_02691610: ; // 0x2691610
|
|
/* 02691610 */ cpu->r[3] = 0x00000014u;
|
|
/* 02691614 */ Gambit_fn_02801A78(cpu);
|
|
/* 02691618 */ cpu->r[29] = cpu->r[3];
|
|
/* 02691618 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0269161C */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269161C */ _t21 = _t20 & 0x00000001u;
|
|
/* 0269161C */ if (_t21) goto L_0269164C; else goto L_02691620;
|
|
L_02691620: ; // 0x2691620
|
|
/* 02691620 */ cpu->r[3] = cpu->r[29];
|
|
/* 02691620 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02691624 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02691624 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02691624 */ if (_t23) goto L_02691628; else goto L_02691638;
|
|
L_02691628: ; // 0x2691628
|
|
/* 02691628 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0269162C */ Gambit_fn_02801A78(cpu);
|
|
/* 02691630 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02691634 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02691634 */ _t25 = _t24 & 0x00000001u;
|
|
/* 02691634 */ if (_t25) goto L_02691644; else goto L_02691638;
|
|
L_02691638: ; // 0x2691638
|
|
/* 02691638 */ _t26 = cpu->r[3] + 0x00000004u;
|
|
/* 02691638 */ rbrew_write32(cpu->mem, _t26, cpu->r[30]);
|
|
/* 0269163C */ _t27 = cpu->r[3] + 0x00000000u;
|
|
/* 0269163C */ rbrew_write32(cpu->mem, _t27, cpu->r[30]);
|
|
/* 02691640 */ _t28 = cpu->r[3] + 0x00000008u;
|
|
/* 02691640 */ rbrew_write32(cpu->mem, _t28, cpu->r[30]);
|
|
L_02691644: ; // 0x2691644
|
|
/* 02691644 */ _t29 = cpu->r[29] + 0x00000010u;
|
|
/* 02691644 */ rbrew_write32(cpu->mem, _t29, cpu->r[30]);
|
|
/* 02691648 */ _t30 = cpu->r[29] + 0x0000000Cu;
|
|
/* 02691648 */ rbrew_write32(cpu->mem, _t30, cpu->r[30]);
|
|
L_0269164C: ; // 0x269164c
|
|
/* 0269164C */ cpu->f[1] = cpu->f[30];
|
|
/* 02691650 */ cpu->r[3] = cpu->r[31] + 0x00000070u;
|
|
/* 02691654 */ Gambit_fn_0269947C(cpu);
|
|
/* 02691658 */ cpu->f[1] = cpu->f[31];
|
|
/* 0269165C */ cpu->r[3] = cpu->r[31] + 0x00000070u;
|
|
/* 02691660 */ Gambit_fn_02699484(cpu);
|
|
/* 02691664 */ cpu->r[4] = 0x101F0000u;
|
|
/* 02691668 */ cpu->r[3] = cpu->r[31] + 0x00000070u;
|
|
/* 0269166C */ cpu->r[4] = cpu->r[4] + 0xFFFFD87Cu;
|
|
/* 02691670 */ Gambit_fn_02699458(cpu);
|
|
/* 02691674 */ cpu->r[5] = 0x00000004u;
|
|
/* 02691678 */ cpu->r[4] = 0x00000000u;
|
|
/* 0269167C */ cpu->r[3] = 0x000004B0u;
|
|
/* 02691680 */ Gambit_fn_02801ADC(cpu);
|
|
/* 02691684 */ cpu->r[12] = cpu->r[3];
|
|
/* 02691684 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02691688 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02691688 */ _t32 = _t31 & 0x00000001u;
|
|
/* 02691688 */ if (_t32) goto L_026916C8; else goto L_0269168C;
|
|
L_0269168C: ; // 0x269168c
|
|
/* 0269168C */ cpu->r[0] = 0x0000001Du;
|
|
/* 02691690 */ cpu->r[8] = 0x00000000u;
|
|
/* 02691694 */ cpu->r[9] = cpu->r[12] + 0x00000024u;
|
|
/* 02691698 */ cpu->ctr = cpu->r[0];
|
|
/* 0269169C */ _t33 = cpu->r[31] + 0x00000100u;
|
|
/* 0269169C */ rbrew_write32(cpu->mem, _t33, cpu->r[12]);
|
|
L_026916A0: ; // 0x26916a0
|
|
/* 026916A0 */ _t34 = cpu->r[12] + cpu->r[8];
|
|
/* 026916A0 */ rbrew_write32(cpu->mem, _t34, cpu->r[9]);
|
|
/* 026916A4 */ cpu->r[8] = cpu->r[8] + 0x00000024u;
|
|
/* 026916A8 */ cpu->r[9] = cpu->r[9] + 0x00000024u;
|
|
/* 026916AC */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 026916AC */ _t35 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 026916AC */ _t36 = _t35 >> (0x00000002u & 31u);
|
|
/* 026916AC */ _t37 = _t36 & 0x00000001u;
|
|
/* 026916AC */ if (_t37) goto L_026916A0; else goto L_026916B0;
|
|
L_026916B0: ; // 0x26916b0
|
|
/* 026916B0 */ _t38 = cpu->r[12] + 0x00000414u;
|
|
/* 026916B0 */ rbrew_write32(cpu->mem, _t38, cpu->r[30]);
|
|
/* 026916B4 */ cpu->r[5] = cpu->r[12] + 0x00000438u;
|
|
/* 026916B8 */ cpu->r[3] = cpu->r[31] + 0x000000F4u;
|
|
/* 026916BC */ cpu->r[4] = 0x0000001Eu;
|
|
/* 026916C0 */ _t39 = cpu->r[31] + 0x00000104u;
|
|
/* 026916C0 */ rbrew_write32(cpu->mem, _t39, cpu->r[12]);
|
|
/* 026916C4 */ Gambit_fn_028023A8(cpu);
|
|
L_026916C8: ; // 0x26916c8
|
|
/* 026916C8 */ _t40 = cpu->r[1] + 0x00000014u;
|
|
/* 026916C8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t40);
|
|
/* 026916CC */ _t41 = cpu->r[1] + 0x00000038u;
|
|
/* 026916CC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 026916D0 */ _t42 = cpu->r[1] + 0x00000028u;
|
|
/* 026916D0 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 026916D4 */ _t43 = cpu->r[1] + 0x00000030u;
|
|
/* 026916D4 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t43);
|
|
/* 026916D8 */ _t44 = cpu->r[1] + 0x00000020u;
|
|
/* 026916D8 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t44);
|
|
/* 026916DC */ cpu->r[3] = cpu->r[31];
|
|
/* 026916E0 */ _t45 = cpu->r[1] + 0x0000001Cu;
|
|
/* 026916E0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t45);
|
|
/* 026916E4 */ _t46 = cpu->r[1] + 0x00000018u;
|
|
/* 026916E4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t46);
|
|
/* 026916E8 */ _t47 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026916E8 */ _t48 = _t47 & 0x00000001u;
|
|
/* 026916E8 */ if (_t48) goto L_026916EC; // else: addr-0 trap, fall-through
|
|
L_026916EC: ; // 0x26916ec
|
|
/* 026916EC */ _t49 = cpu->r[1] + 0x00000044u;
|
|
/* 026916EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t49);
|
|
/* 026916F0 */ cpu->lr = cpu->r[0];
|
|
/* 026916F4 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 026916F8 */ return;
|
|
}
|
|
|
|
// fn_026916FC @ 0x26916fc
|
|
void Gambit_fn_026916FC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_026916FC: ; // 0x26916fc
|
|
/* 026916FC */ cpu->r[0] = cpu->lr;
|
|
/* 02691700 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02691700 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02691700 */ cpu->r[1] = _t0;
|
|
/* 02691704 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02691704 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02691708 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269170C */ cpu->r[3] = cpu->r[31] + 0x00000070u;
|
|
/* 02691710 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02691710 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02691714 */ Gambit_fn_02698D18(cpu);
|
|
/* 02691718 */ _t3 = cpu->r[31] + 0x000000F4u;
|
|
/* 02691718 */ cpu->r[7] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0269171C */ cpu->r[6] = 0x00000000u;
|
|
/* 02691720 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], cpu->r[7]);
|
|
/* 02691724 */ _t4 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02691724 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02691724 */ if (_t5) goto L_02691728; else goto L_02691758;
|
|
L_02691728: ; // 0x2691728
|
|
/* 02691728 */ _t6 = cpu->r[31] + 0x00000100u;
|
|
/* 02691728 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0269172C */ cpu->r[12] = 0x00000000u;
|
|
L_02691730: ; // 0x2691730
|
|
/* 02691730 */ _t7 = cpu->r[31] + 0x000000FCu;
|
|
/* 02691730 */ cpu->r[9] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02691734 */ _t8 = cpu->r[9] + cpu->r[12];
|
|
/* 02691734 */ cpu->r[8] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02691738 */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 0269173C */ _t9 = cpu->r[8] + 0x00000000u;
|
|
/* 0269173C */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 02691740 */ _t10 = cpu->r[31] + 0x000000F4u;
|
|
/* 02691740 */ cpu->r[10] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02691744 */ cpu->r[0] = cpu->r[8];
|
|
/* 02691748 */ cpu->r[12] = cpu->r[12] + 0x00000004u;
|
|
/* 0269174C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], cpu->r[10]);
|
|
/* 02691750 */ _t11 = cpu->r[31] + 0x00000100u;
|
|
/* 02691750 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02691754 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02691754 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02691754 */ if (_t13) goto L_02691730; else goto L_02691758;
|
|
L_02691758: ; // 0x2691758
|
|
/* 02691758 */ cpu->r[11] = 0x00000000u;
|
|
/* 0269175C */ _t14 = cpu->r[31] + 0x000000F4u;
|
|
/* 0269175C */ rbrew_write32(cpu->mem, _t14, cpu->r[11]);
|
|
/* 02691760 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 02691760 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02691764 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02691764 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02691768 */ cpu->lr = cpu->r[0];
|
|
/* 0269176C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02691770 */ return;
|
|
}
|
|
|
|
// fn_02691700 @ 0x2691700
|
|
void Gambit_fn_02691700(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_02691700: ; // 0x2691700
|
|
/* 02691700 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02691700 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02691700 */ cpu->r[1] = _t0;
|
|
/* 02691704 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02691704 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02691708 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269170C */ cpu->r[3] = cpu->r[31] + 0x00000070u;
|
|
/* 02691710 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02691710 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02691714 */ Gambit_fn_02698D18(cpu);
|
|
/* 02691718 */ _t3 = cpu->r[31] + 0x000000F4u;
|
|
/* 02691718 */ cpu->r[7] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0269171C */ cpu->r[6] = 0x00000000u;
|
|
/* 02691720 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], cpu->r[7]);
|
|
/* 02691724 */ _t4 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02691724 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02691724 */ if (_t5) goto L_02691728; else goto L_02691758;
|
|
L_02691728: ; // 0x2691728
|
|
/* 02691728 */ _t6 = cpu->r[31] + 0x00000100u;
|
|
/* 02691728 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0269172C */ cpu->r[12] = 0x00000000u;
|
|
L_02691730: ; // 0x2691730
|
|
/* 02691730 */ _t7 = cpu->r[31] + 0x000000FCu;
|
|
/* 02691730 */ cpu->r[9] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02691734 */ _t8 = cpu->r[9] + cpu->r[12];
|
|
/* 02691734 */ cpu->r[8] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02691738 */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 0269173C */ _t9 = cpu->r[8] + 0x00000000u;
|
|
/* 0269173C */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 02691740 */ _t10 = cpu->r[31] + 0x000000F4u;
|
|
/* 02691740 */ cpu->r[10] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02691744 */ cpu->r[0] = cpu->r[8];
|
|
/* 02691748 */ cpu->r[12] = cpu->r[12] + 0x00000004u;
|
|
/* 0269174C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], cpu->r[10]);
|
|
/* 02691750 */ _t11 = cpu->r[31] + 0x00000100u;
|
|
/* 02691750 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02691754 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02691754 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02691754 */ if (_t13) goto L_02691730; else goto L_02691758;
|
|
L_02691758: ; // 0x2691758
|
|
/* 02691758 */ cpu->r[11] = 0x00000000u;
|
|
/* 0269175C */ _t14 = cpu->r[31] + 0x000000F4u;
|
|
/* 0269175C */ rbrew_write32(cpu->mem, _t14, cpu->r[11]);
|
|
/* 02691760 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 02691760 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02691764 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02691764 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02691768 */ cpu->lr = cpu->r[0];
|
|
/* 0269176C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02691770 */ return;
|
|
}
|
|
|
|
// fn_02691774 @ 0x2691774
|
|
void Gambit_fn_02691774(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_02691774: ; // 0x2691774
|
|
/* 02691774 */ cpu->r[0] = cpu->lr;
|
|
/* 02691778 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 02691778 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 0269177C */ cpu->r[3] = cpu->r[3] + 0x00000070u;
|
|
/* 02691780 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 02691780 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 02691780 */ cpu->r[1] = _t1;
|
|
/* 02691784 */ Gambit_fn_02699258(cpu);
|
|
/* 02691788 */ cpu->r[12] = 0x100E0000u;
|
|
/* 0269178C */ _t2 = cpu->r[12] + 0x00003940u;
|
|
/* 0269178C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 02691790 */ cpu->r[12] = 0x100E0000u;
|
|
/* 02691794 */ cpu->f[1] = cpu->f[1] / cpu->f[0];
|
|
/* 02691798 */ _t3 = cpu->r[12] + 0x000038A4u;
|
|
/* 02691798 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 0269179C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[0]);
|
|
/* 026917A0 */ _t4 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026917A0 */ _t5 = _t4 & 0x00000001u;
|
|
/* 026917A0 */ if (_t5) goto L_026917A4; else goto L_026917AC;
|
|
L_026917A4: ; // 0x26917a4
|
|
/* 026917A4 */ cpu->f[1] = cpu->f[0];
|
|
/* 026917A8 */ goto L_026917C0;
|
|
L_026917AC: ; // 0x26917ac
|
|
/* 026917AC */ cpu->r[12] = 0x100E0000u;
|
|
/* 026917B0 */ _t6 = cpu->r[12] + 0x00003944u;
|
|
/* 026917B0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 026917B4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[13]);
|
|
/* 026917B8 */ _t7 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 026917B8 */ _t8 = _t7 & 0x00000001u;
|
|
/* 026917B8 */ if (_t8) goto L_026917BC; else goto L_026917C0;
|
|
L_026917BC: ; // 0x26917bc
|
|
/* 026917BC */ cpu->f[1] = cpu->f[13];
|
|
L_026917C0: ; // 0x26917c0
|
|
/* 026917C0 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026917C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 026917C4 */ cpu->lr = cpu->r[0];
|
|
/* 026917C8 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 026917CC */ return;
|
|
}
|
|
|
|
// fn_02691780 @ 0x2691780
|
|
void Gambit_fn_02691780(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_02691780: ; // 0x2691780
|
|
/* 02691780 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 02691780 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02691780 */ cpu->r[1] = _t0;
|
|
/* 02691784 */ Gambit_fn_02699258(cpu);
|
|
/* 02691788 */ cpu->r[12] = 0x100E0000u;
|
|
/* 0269178C */ _t1 = cpu->r[12] + 0x00003940u;
|
|
/* 0269178C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 02691790 */ cpu->r[12] = 0x100E0000u;
|
|
/* 02691794 */ cpu->f[1] = cpu->f[1] / cpu->f[0];
|
|
/* 02691798 */ _t2 = cpu->r[12] + 0x000038A4u;
|
|
/* 02691798 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 0269179C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[0]);
|
|
/* 026917A0 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026917A0 */ _t4 = _t3 & 0x00000001u;
|
|
/* 026917A0 */ if (_t4) goto L_026917A4; else goto L_026917AC;
|
|
L_026917A4: ; // 0x26917a4
|
|
/* 026917A4 */ cpu->f[1] = cpu->f[0];
|
|
/* 026917A8 */ goto L_026917C0;
|
|
L_026917AC: ; // 0x26917ac
|
|
/* 026917AC */ cpu->r[12] = 0x100E0000u;
|
|
/* 026917B0 */ _t5 = cpu->r[12] + 0x00003944u;
|
|
/* 026917B0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 026917B4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[13]);
|
|
/* 026917B8 */ _t6 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 026917B8 */ _t7 = _t6 & 0x00000001u;
|
|
/* 026917B8 */ if (_t7) goto L_026917BC; else goto L_026917C0;
|
|
L_026917BC: ; // 0x26917bc
|
|
/* 026917BC */ cpu->f[1] = cpu->f[13];
|
|
L_026917C0: ; // 0x26917c0
|
|
/* 026917C0 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026917C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 026917C4 */ cpu->lr = cpu->r[0];
|
|
/* 026917C8 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 026917CC */ return;
|
|
}
|
|
|
|
// fn_026917D0 @ 0x26917d0
|
|
void Gambit_fn_026917D0(CPUState* cpu) {
|
|
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_026917D0: ; // 0x26917d0
|
|
/* 026917D0 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 026917D0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 026917D0 */ cpu->r[1] = _t0;
|
|
/* 026917D4 */ cpu->r[0] = cpu->lr;
|
|
/* 026917D8 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 026917D8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 026917DC */ cpu->r[30] = cpu->r[3];
|
|
/* 026917E0 */ _t2 = cpu->r[1] + 0x00000018u;
|
|
/* 026917E0 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 026917E4 */ cpu->r[3] = cpu->r[30] + 0x00000070u;
|
|
/* 026917E8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 026917E8 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 026917EC */ /* nop */
|
|
/* 026917F0 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026917F0 */ rbrew_write32(cpu->mem, _t4, cpu->r[29]);
|
|
/* 026917F4 */ _t5 = cpu->r[1] + 0x00000020u;
|
|
/* 026917F4 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[31]);
|
|
/* 026917F8 */ cpu->r[31] = cpu->r[4];
|
|
/* 026917FC */ _t6 = cpu->r[1] + 0x0000002Cu;
|
|
/* 026917FC */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02691800 */ Gambit_fn_02699240(cpu);
|
|
/* 02691804 */ cpu->r[29] = cpu->r[3];
|
|
/* 02691808 */ cpu->r[3] = cpu->r[30] + 0x00000070u;
|
|
/* 0269180C */ Gambit_fn_02699248(cpu);
|
|
/* 02691810 */ cpu->f[31] = cpu->f[1];
|
|
/* 02691814 */ cpu->r[3] = cpu->r[31];
|
|
/* 02691818 */ cpu->r[4] = cpu->r[29];
|
|
/* 0269181C */ Gambit_fn_02C693A4(cpu);
|
|
/* 02691820 */ cpu->f[31] = cpu->f[31] - cpu->f[1];
|
|
/* 02691824 */ cpu->r[3] = cpu->r[30] + 0x00000070u;
|
|
/* 02691828 */ Gambit_fn_02699248(cpu);
|
|
/* 0269182C */ cpu->r[12] = 0x100E0000u;
|
|
/* 02691830 */ cpu->f[0] = cpu->f[31] / cpu->f[1];
|
|
/* 02691834 */ _t7 = cpu->r[12] + 0x00003940u;
|
|
/* 02691834 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 02691838 */ cpu->r[11] = 0x100E0000u;
|
|
/* 0269183C */ cpu->f[1] = cpu->f[0] / cpu->f[13];
|
|
/* 02691840 */ _t8 = cpu->r[11] + 0x000038A4u;
|
|
/* 02691840 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 02691844 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[0]);
|
|
/* 02691848 */ _t9 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02691848 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02691848 */ if (_t10) goto L_0269184C; else goto L_02691854;
|
|
L_0269184C: ; // 0x269184c
|
|
/* 0269184C */ cpu->f[1] = cpu->f[0];
|
|
/* 02691850 */ goto L_02691868;
|
|
L_02691854: ; // 0x2691854
|
|
/* 02691854 */ cpu->r[12] = 0x100E0000u;
|
|
/* 02691858 */ _t11 = cpu->r[12] + 0x00003944u;
|
|
/* 02691858 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 0269185C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[0]);
|
|
/* 02691860 */ _t12 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02691860 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02691860 */ if (_t13) goto L_02691864; else goto L_02691868;
|
|
L_02691864: ; // 0x2691864
|
|
/* 02691864 */ cpu->f[1] = cpu->f[0];
|
|
L_02691868: ; // 0x2691868
|
|
/* 02691868 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02691868 */ cpu->r[29] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0269186C */ _t15 = cpu->r[1] + 0x00000020u;
|
|
/* 0269186C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 02691870 */ _t16 = cpu->r[1] + 0x00000010u;
|
|
/* 02691870 */ cpu->r[30] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02691874 */ _t17 = cpu->r[1] + 0x00000018u;
|
|
/* 02691874 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t17);
|
|
/* 02691878 */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02691878 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0269187C */ _t19 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269187C */ _t20 = _t19 & 0x00000001u;
|
|
/* 0269187C */ if (_t20) goto L_02691880; // else: addr-0 trap, fall-through
|
|
L_02691880: ; // 0x2691880
|
|
/* 02691880 */ _t21 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02691880 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02691884 */ cpu->lr = cpu->r[0];
|
|
/* 02691888 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 0269188C */ return;
|
|
}
|
|
|
|
// fn_02691890 @ 0x2691890
|
|
void Gambit_fn_02691890(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02691890: ; // 0x2691890
|
|
/* 02691890 */ cpu->r[0] = cpu->lr;
|
|
/* 02691894 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 02691894 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02691894 */ cpu->r[1] = _t0;
|
|
/* 02691898 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 02691898 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0269189C */ /* nop */
|
|
/* 026918A0 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026918A0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 026918A4 */ _t3 = cpu->r[1] + 0x00000018u;
|
|
/* 026918A4 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 026918A8 */ cpu->r[31] = cpu->r[4];
|
|
/* 026918AC */ cpu->r[3] = cpu->r[3] + 0x00000070u;
|
|
/* 026918B0 */ _t4 = cpu->r[1] + 0x00000024u;
|
|
/* 026918B0 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 026918B4 */ Gambit_fn_02699240(cpu);
|
|
/* 026918B8 */ cpu->r[4] = cpu->r[3];
|
|
/* 026918BC */ cpu->r[12] = 0x100E0000u;
|
|
/* 026918C0 */ cpu->r[3] = cpu->r[31];
|
|
/* 026918C4 */ _t5 = cpu->r[12] + 0x00003948u;
|
|
/* 026918C4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 026918C8 */ Gambit_fn_02C693A4(cpu);
|
|
/* 026918CC */ cpu->r[12] = 0x100E0000u;
|
|
/* 026918D0 */ cpu->f[13] = cpu->f[31] - cpu->f[1];
|
|
/* 026918D4 */ _t6 = cpu->r[12] + 0x0000394Cu;
|
|
/* 026918D4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 026918D8 */ cpu->f[13] = cpu->f[13] / cpu->f[31];
|
|
/* 026918DC */ cpu->r[12] = 0x100E0000u;
|
|
/* 026918E0 */ cpu->f[1] = cpu->f[13] / cpu->f[0];
|
|
/* 026918E4 */ _t7 = cpu->r[12] + 0x000038A4u;
|
|
/* 026918E4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 026918E8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[0]);
|
|
/* 026918EC */ _t8 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026918EC */ _t9 = _t8 & 0x00000001u;
|
|
/* 026918EC */ if (_t9) goto L_026918F0; else goto L_026918F8;
|
|
L_026918F0: ; // 0x26918f0
|
|
/* 026918F0 */ cpu->f[1] = cpu->f[0];
|
|
/* 026918F4 */ goto L_0269190C;
|
|
L_026918F8: ; // 0x26918f8
|
|
/* 026918F8 */ cpu->r[12] = 0x100E0000u;
|
|
/* 026918FC */ _t10 = cpu->r[12] + 0x00003944u;
|
|
/* 026918FC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 02691900 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[13]);
|
|
/* 02691904 */ _t11 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02691904 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02691904 */ if (_t12) goto L_02691908; else goto L_0269190C;
|
|
L_02691908: ; // 0x2691908
|
|
/* 02691908 */ cpu->f[1] = cpu->f[13];
|
|
L_0269190C: ; // 0x269190c
|
|
/* 0269190C */ _t13 = cpu->r[1] + 0x00000018u;
|
|
/* 0269190C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 02691910 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02691910 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02691914 */ _t15 = cpu->r[1] + 0x00000010u;
|
|
/* 02691914 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t15);
|
|
/* 02691918 */ _t16 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02691918 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02691918 */ if (_t17) goto L_0269191C; // else: addr-0 trap, fall-through
|
|
L_0269191C: ; // 0x269191c
|
|
/* 0269191C */ _t18 = cpu->r[1] + 0x00000024u;
|
|
/* 0269191C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02691920 */ cpu->lr = cpu->r[0];
|
|
/* 02691924 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 02691928 */ return;
|
|
}
|
|
|
|
// fn_02691894 @ 0x2691894
|
|
void Gambit_fn_02691894(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02691894: ; // 0x2691894
|
|
/* 02691894 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 02691894 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02691894 */ cpu->r[1] = _t0;
|
|
/* 02691898 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 02691898 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0269189C */ /* nop */
|
|
/* 026918A0 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026918A0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 026918A4 */ _t3 = cpu->r[1] + 0x00000018u;
|
|
/* 026918A4 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 026918A8 */ cpu->r[31] = cpu->r[4];
|
|
/* 026918AC */ cpu->r[3] = cpu->r[3] + 0x00000070u;
|
|
/* 026918B0 */ _t4 = cpu->r[1] + 0x00000024u;
|
|
/* 026918B0 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 026918B4 */ Gambit_fn_02699240(cpu);
|
|
/* 026918B8 */ cpu->r[4] = cpu->r[3];
|
|
/* 026918BC */ cpu->r[12] = 0x100E0000u;
|
|
/* 026918C0 */ cpu->r[3] = cpu->r[31];
|
|
/* 026918C4 */ _t5 = cpu->r[12] + 0x00003948u;
|
|
/* 026918C4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 026918C8 */ Gambit_fn_02C693A4(cpu);
|
|
/* 026918CC */ cpu->r[12] = 0x100E0000u;
|
|
/* 026918D0 */ cpu->f[13] = cpu->f[31] - cpu->f[1];
|
|
/* 026918D4 */ _t6 = cpu->r[12] + 0x0000394Cu;
|
|
/* 026918D4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 026918D8 */ cpu->f[13] = cpu->f[13] / cpu->f[31];
|
|
/* 026918DC */ cpu->r[12] = 0x100E0000u;
|
|
/* 026918E0 */ cpu->f[1] = cpu->f[13] / cpu->f[0];
|
|
/* 026918E4 */ _t7 = cpu->r[12] + 0x000038A4u;
|
|
/* 026918E4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 026918E8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[0]);
|
|
/* 026918EC */ _t8 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026918EC */ _t9 = _t8 & 0x00000001u;
|
|
/* 026918EC */ if (_t9) goto L_026918F0; else goto L_026918F8;
|
|
L_026918F0: ; // 0x26918f0
|
|
/* 026918F0 */ cpu->f[1] = cpu->f[0];
|
|
/* 026918F4 */ goto L_0269190C;
|
|
L_026918F8: ; // 0x26918f8
|
|
/* 026918F8 */ cpu->r[12] = 0x100E0000u;
|
|
/* 026918FC */ _t10 = cpu->r[12] + 0x00003944u;
|
|
/* 026918FC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 02691900 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[13]);
|
|
/* 02691904 */ _t11 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02691904 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02691904 */ if (_t12) goto L_02691908; else goto L_0269190C;
|
|
L_02691908: ; // 0x2691908
|
|
/* 02691908 */ cpu->f[1] = cpu->f[13];
|
|
L_0269190C: ; // 0x269190c
|
|
/* 0269190C */ _t13 = cpu->r[1] + 0x00000018u;
|
|
/* 0269190C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 02691910 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02691910 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02691914 */ _t15 = cpu->r[1] + 0x00000010u;
|
|
/* 02691914 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t15);
|
|
/* 02691918 */ _t16 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02691918 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02691918 */ if (_t17) goto L_0269191C; // else: addr-0 trap, fall-through
|
|
L_0269191C: ; // 0x269191c
|
|
/* 0269191C */ _t18 = cpu->r[1] + 0x00000024u;
|
|
/* 0269191C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02691920 */ cpu->lr = cpu->r[0];
|
|
/* 02691924 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 02691928 */ return;
|
|
}
|
|
|
|
// fn_0269192C @ 0x269192c
|
|
void Gambit_fn_0269192C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94;
|
|
double _ft60, _ft61;
|
|
|
|
L_0269192C: ; // 0x269192c
|
|
/* 0269192C */ _t0 = cpu->r[1] + 0xFFFFFF50u;
|
|
/* 0269192C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269192C */ cpu->r[1] = _t0;
|
|
/* 02691930 */ cpu->r[0] = cpu->lr;
|
|
/* 02691934 */ _t1 = cpu->r[1] + 0x00000088u;
|
|
/* 02691934 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02691938 */ cpu->r[30] = cpu->r[3];
|
|
/* 0269193C */ _t2 = cpu->r[1] + 0x000000A0u;
|
|
/* 0269193C */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 02691940 */ /* nop */
|
|
/* 02691944 */ _t3 = cpu->r[1] + 0x00000090u;
|
|
/* 02691944 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[30]);
|
|
/* 02691948 */ /* nop */
|
|
/* 0269194C */ _t4 = cpu->r[1] + 0x000000A8u;
|
|
/* 0269194C */ rbrew_write_f32(cpu->mem, _t4, cpu->f[31]);
|
|
/* 02691950 */ cpu->r[3] = cpu->r[1] + 0x0000006Cu;
|
|
/* 02691954 */ _t5 = cpu->r[1] + 0x0000008Cu;
|
|
/* 02691954 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02691958 */ _t6 = cpu->r[1] + 0x00000098u;
|
|
/* 02691958 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[30]);
|
|
/* 0269195C */ cpu->r[31] = cpu->r[4];
|
|
/* 02691960 */ _t7 = cpu->r[1] + 0x000000B4u;
|
|
/* 02691960 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 02691964 */ Gambit_fn_02043AC4(cpu);
|
|
/* 02691968 */ cpu->r[8] = 0x101F0000u;
|
|
/* 0269196C */ cpu->r[9] = 0x100E0000u;
|
|
/* 02691970 */ _t8 = cpu->r[9] + 0x00003950u;
|
|
/* 02691970 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 02691974 */ cpu->r[8] = cpu->r[8] + 0x00006350u;
|
|
/* 02691978 */ /* nop */
|
|
/* 0269197C */ _t9 = cpu->r[8] + 0x00000008u;
|
|
/* 0269197C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 02691980 */ /* nop */
|
|
/* 02691984 */ _t10 = cpu->r[30] + 0x00000008u;
|
|
/* 02691984 */ cpu->r[6] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02691988 */ /* nop */
|
|
/* 0269198C */ _t11 = cpu->r[1] + 0x00000030u;
|
|
/* 0269198C */ cpu->r[8] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02691990 */ cpu->f[13] = cpu->f[10] * cpu->f[0];
|
|
/* 02691994 */ _t12 = cpu->r[1] + 0x00000034u;
|
|
/* 02691994 */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02691998 */ _t13 = cpu->r[1] + 0x00000018u;
|
|
/* 02691998 */ rbrew_write32(cpu->mem, _t13, cpu->r[8]);
|
|
/* 0269199C */ _t14 = cpu->r[1] + 0x00000038u;
|
|
/* 0269199C */ rbrew_write_f32(cpu->mem, _t14, cpu->f[13]);
|
|
/* 026919A0 */ _t15 = cpu->r[1] + 0x00000038u;
|
|
/* 026919A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 026919A4 */ _t16 = cpu->r[1] + 0x0000001Cu;
|
|
/* 026919A4 */ rbrew_write32(cpu->mem, _t16, cpu->r[9]);
|
|
/* 026919A8 */ /* nop */
|
|
/* 026919AC */ _t17 = cpu->r[1] + 0x00000020u;
|
|
/* 026919AC */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
/* 026919B0 */ /* nop */
|
|
/* 026919B4 */ _t18 = cpu->r[1] + 0x00000020u;
|
|
/* 026919B4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 026919B8 */ /* nop */
|
|
/* 026919BC */ /* nop */
|
|
/* 026919C0 */ /* nop */
|
|
/* 026919C4 */ _t19 = cpu->r[6] + 0x000000BCu;
|
|
/* 026919C4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 026919C8 */ _t20 = cpu->r[1] + 0x00000040u;
|
|
/* 026919C8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t20);
|
|
/* 026919CC */ _t21 = cpu->r[1] + 0x00000050u;
|
|
/* 026919CC */ rbrew_write_f32(cpu->mem, _t21, cpu->f[13]);
|
|
/* 026919D0 */ _t22 = cpu->r[1] + 0x00000050u;
|
|
/* 026919D0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t22);
|
|
/* 026919D4 */ cpu->f[11] = cpu->f[12] + cpu->f[0];
|
|
/* 026919D8 */ _t23 = cpu->r[1] + 0x00000028u;
|
|
/* 026919D8 */ rbrew_write32(cpu->mem, _t23, cpu->r[5]);
|
|
/* 026919DC */ _t24 = cpu->r[31] + 0x00000008u;
|
|
/* 026919DC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 026919E0 */ _t25 = cpu->r[1] + 0x00000020u;
|
|
/* 026919E0 */ rbrew_write32(cpu->mem, _t25, cpu->r[8]);
|
|
/* 026919E4 */ _t26 = cpu->r[1] + 0x00000020u;
|
|
/* 026919E4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 026919E8 */ _t27 = cpu->r[1] + 0x00000044u;
|
|
/* 026919E8 */ rbrew_write_f32(cpu->mem, _t27, cpu->f[11]);
|
|
/* 026919EC */ _t28 = cpu->r[1] + 0x00000044u;
|
|
/* 026919EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 026919F0 */ cpu->f[12] = cpu->f[13] + cpu->f[0];
|
|
/* 026919F4 */ /* nop */
|
|
/* 026919F8 */ _t29 = cpu->r[1] + 0x0000004Cu;
|
|
/* 026919F8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t29);
|
|
/* 026919FC */ _t30 = cpu->r[1] + 0x00000048u;
|
|
/* 026919FC */ cpu->r[6] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02691A00 */ _t31 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02691A00 */ rbrew_write32(cpu->mem, _t31, cpu->r[7]);
|
|
/* 02691A04 */ _t32 = cpu->r[1] + 0x00000018u;
|
|
/* 02691A04 */ rbrew_write32(cpu->mem, _t32, cpu->r[6]);
|
|
/* 02691A08 */ /* nop */
|
|
/* 02691A0C */ _t33 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02691A0C */ rbrew_write32(cpu->mem, _t33, cpu->r[0]);
|
|
/* 02691A10 */ /* nop */
|
|
/* 02691A14 */ _t34 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02691A14 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[12]);
|
|
/* 02691A18 */ _t35 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02691A18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02691A1C */ /* nop */
|
|
/* 02691A20 */ _t36 = cpu->r[1] + 0x00000054u;
|
|
/* 02691A20 */ cpu->r[11] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02691A24 */ _t37 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02691A24 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 02691A28 */ _t38 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02691A28 */ rbrew_write32(cpu->mem, _t38, cpu->r[11]);
|
|
/* 02691A2C */ _t39 = cpu->r[1] + 0x00000058u;
|
|
/* 02691A2C */ cpu->r[12] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02691A30 */ _t40 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02691A30 */ cpu->r[10] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02691A34 */ _t41 = cpu->r[1] + 0x00000080u;
|
|
/* 02691A34 */ rbrew_write32(cpu->mem, _t41, cpu->r[12]);
|
|
/* 02691A38 */ /* nop */
|
|
/* 02691A3C */ _t42 = cpu->r[1] + 0x00000024u;
|
|
/* 02691A3C */ rbrew_write32(cpu->mem, _t42, cpu->r[10]);
|
|
/* 02691A40 */ /* nop */
|
|
/* 02691A44 */ _t43 = cpu->r[1] + 0x00000084u;
|
|
/* 02691A44 */ rbrew_write32(cpu->mem, _t43, cpu->r[0]);
|
|
/* 02691A48 */ _t44 = cpu->r[1] + 0x00000084u;
|
|
/* 02691A48 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 02691A4C */ /* nop */
|
|
/* 02691A50 */ /* nop */
|
|
/* 02691A54 */ _t45 = cpu->r[1] + 0x00000060u;
|
|
/* 02691A54 */ cpu->r[7] = rbrew_read32(cpu->mem, _t45);
|
|
/* 02691A58 */ cpu->f[10] = cpu->f[11] - cpu->f[12];
|
|
/* 02691A5C */ _t46 = cpu->r[1] + 0x00000064u;
|
|
/* 02691A5C */ cpu->r[9] = rbrew_read32(cpu->mem, _t46);
|
|
/* 02691A60 */ _t47 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02691A60 */ rbrew_write32(cpu->mem, _t47, cpu->r[7]);
|
|
/* 02691A64 */ _t48 = cpu->r[1] + 0x00000068u;
|
|
/* 02691A64 */ rbrew_write_f32(cpu->mem, _t48, cpu->f[10]);
|
|
/* 02691A68 */ _t49 = cpu->r[1] + 0x00000068u;
|
|
/* 02691A68 */ cpu->r[0] = rbrew_read32(cpu->mem, _t49);
|
|
/* 02691A6C */ _t50 = cpu->r[1] + 0x00000010u;
|
|
/* 02691A6C */ rbrew_write32(cpu->mem, _t50, cpu->r[9]);
|
|
/* 02691A70 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02691A74 */ _t51 = cpu->r[1] + 0x00000014u;
|
|
/* 02691A74 */ rbrew_write32(cpu->mem, _t51, cpu->r[0]);
|
|
/* 02691A78 */ Gambit_fn_02C69350(cpu);
|
|
/* 02691A7C */ _t52 = cpu->r[1] + 0x00000010u;
|
|
/* 02691A7C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 02691A80 */ cpu->f[10] = cpu->f[0] * cpu->f[0];
|
|
/* 02691A84 */ _t53 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02691A84 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t53);
|
|
/* 02691A88 */ cpu->f[11] = fma(cpu->f[9], cpu->f[9], cpu->f[10]);
|
|
/* 02691A8C */ _t54 = cpu->r[1] + 0x00000014u;
|
|
/* 02691A8C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 02691A90 */ cpu->r[7] = 0x100E0000u;
|
|
/* 02691A94 */ cpu->f[8] = fma(cpu->f[8], cpu->f[8], cpu->f[11]);
|
|
/* 02691A98 */ _t55 = cpu->r[7] + 0x000038A4u;
|
|
/* 02691A98 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 02691A9C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[31]);
|
|
/* 02691AA0 */ _t56 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02691AA0 */ _t57 = _t56 & 0x00000001u;
|
|
/* 02691AA0 */ if (_t57) goto L_02691AA4; else goto L_02691AE0;
|
|
L_02691AA4: ; // 0x2691aa4
|
|
/* 02691AA4 */ cpu->r[6] = 0x100E0000u;
|
|
/* 02691AA8 */ cpu->r[5] = 0x100E0000u;
|
|
/* 02691AAC */ _t58 = cpu->r[6] + 0x00003954u;
|
|
/* 02691AAC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 02691AB0 */ _t59 = cpu->r[5] + 0x00003958u;
|
|
/* 02691AB0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t59);
|
|
/* 02691AB4 */ _ft60 = sqrt(cpu->f[8]);
|
|
/* 02691AB4 */ _ft61 = (double)(int32_t)0x00000001u;
|
|
/* 02691AB4 */ cpu->f[9] = _ft61 / _ft60;
|
|
/* 02691AB8 */ cpu->f[10] = cpu->f[9] * cpu->f[9];
|
|
/* 02691ABC */ cpu->f[11] = cpu->f[9] * cpu->f[12];
|
|
/* 02691AC0 */ cpu->f[10] = -fma(cpu->f[10], cpu->f[8], -(cpu->f[13]));
|
|
/* 02691AC4 */ cpu->f[9] = cpu->f[10] * cpu->f[11];
|
|
/* 02691AC8 */ _t62 = cpu->r[1] + 0x00000014u;
|
|
/* 02691AC8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 02691ACC */ /* nop */
|
|
/* 02691AD0 */ cpu->f[0] = cpu->f[0] * cpu->f[9];
|
|
/* 02691AD4 */ /* nop */
|
|
/* 02691AD8 */ _t63 = cpu->r[1] + 0x00000014u;
|
|
/* 02691AD8 */ rbrew_write_f32(cpu->mem, _t63, cpu->f[0]);
|
|
/* 02691ADC */ /* nop */
|
|
L_02691AE0: ; // 0x2691ae0
|
|
/* 02691AE0 */ cpu->r[12] = 0x101E0000u;
|
|
/* 02691AE4 */ cpu->r[10] = 0x100E0000u;
|
|
/* 02691AE8 */ _t64 = cpu->r[12] + 0xFFFF958Cu;
|
|
/* 02691AE8 */ cpu->f[3] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 02691AEC */ cpu->r[7] = 0x100E0000u;
|
|
/* 02691AF0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[31]);
|
|
/* 02691AF4 */ _t65 = cpu->r[10] + 0x00003944u;
|
|
/* 02691AF4 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t65);
|
|
/* 02691AF8 */ cpu->r[11] = 0x101C0000u;
|
|
/* 02691AFC */ _t66 = cpu->r[7] + 0x0000395Cu;
|
|
/* 02691AFC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t66);
|
|
/* 02691B00 */ _t67 = cpu->r[11] + 0x00001EF8u;
|
|
/* 02691B00 */ cpu->r[3] = rbrew_read32(cpu->mem, _t67);
|
|
/* 02691B04 */ _t68 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02691B04 */ _t69 = _t68 & 0x00000001u;
|
|
/* 02691B04 */ if (_t69) goto L_02691B70; else goto L_02691B08;
|
|
L_02691B08: ; // 0x2691b08
|
|
/* 02691B08 */ _t70 = cpu->r[1] + 0x00000070u;
|
|
/* 02691B08 */ cpu->r[9] = rbrew_read32(cpu->mem, _t70);
|
|
/* 02691B0C */ cpu->f[2] = cpu->f[3];
|
|
/* 02691B10 */ cpu->r[5] = 0x00000000u;
|
|
/* 02691B14 */ cpu->r[0] = cpu->r[1] + 0x0000006Cu;
|
|
/* 02691B18 */ cpu->f[1] = cpu->f[11];
|
|
/* 02691B1C */ cpu->r[7] = cpu->r[5];
|
|
/* 02691B20 */ cpu->r[6] = cpu->r[5];
|
|
/* 02691B24 */ cpu->r[4] = cpu->r[1] + 0x00000024u;
|
|
/* 02691B28 */ cpu->r[10] = cpu->r[7];
|
|
/* 02691B2C */ cpu->r[8] = 0x000001FFu;
|
|
/* 02691B30 */ _t71 = cpu->r[1] + 0x00000008u;
|
|
/* 02691B30 */ rbrew_write32(cpu->mem, _t71, cpu->r[0]);
|
|
/* 02691B34 */ Gambit_fn_0204A4DC(cpu);
|
|
/* 02691B38 */ cpu->r[5] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02691B38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 02691B3C */ _t72 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02691B3C */ _t73 = _t72 & 0x00000001u;
|
|
/* 02691B3C */ if (_t73) goto L_02691B40; else goto L_02691B9C;
|
|
L_02691B40: ; // 0x2691b40
|
|
/* 02691B40 */ _t74 = cpu->r[1] + 0x00000088u;
|
|
/* 02691B40 */ cpu->r[30] = rbrew_read32(cpu->mem, _t74);
|
|
/* 02691B44 */ cpu->f[1] = cpu->f[30];
|
|
/* 02691B48 */ _t75 = cpu->r[1] + 0x00000098u;
|
|
/* 02691B48 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t75);
|
|
/* 02691B4C */ _t76 = cpu->r[1] + 0x000000A8u;
|
|
/* 02691B4C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t76);
|
|
/* 02691B50 */ _t77 = cpu->r[1] + 0x00000090u;
|
|
/* 02691B50 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t77);
|
|
/* 02691B54 */ _t78 = cpu->r[1] + 0x000000A0u;
|
|
/* 02691B54 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t78);
|
|
/* 02691B58 */ _t79 = cpu->r[1] + 0x0000008Cu;
|
|
/* 02691B58 */ cpu->r[31] = rbrew_read32(cpu->mem, _t79);
|
|
/* 02691B5C */ _t80 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02691B5C */ _t81 = _t80 & 0x00000001u;
|
|
/* 02691B5C */ if (_t81) goto L_02691B60; // else: addr-0 trap, fall-through
|
|
L_02691B60: ; // 0x2691b60
|
|
/* 02691B60 */ _t82 = cpu->r[1] + 0x000000B4u;
|
|
/* 02691B60 */ cpu->r[0] = rbrew_read32(cpu->mem, _t82);
|
|
/* 02691B64 */ cpu->lr = cpu->r[0];
|
|
/* 02691B68 */ cpu->r[1] = cpu->r[1] + 0x000000B0u;
|
|
/* 02691B6C */ return;
|
|
L_02691B70: ; // 0x2691b70
|
|
/* 02691B70 */ cpu->f[4] = cpu->f[30];
|
|
/* 02691B74 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02691B78 */ _t83 = cpu->r[1] + 0x00000070u;
|
|
/* 02691B78 */ cpu->r[8] = rbrew_read32(cpu->mem, _t83);
|
|
/* 02691B7C */ cpu->f[2] = cpu->f[11];
|
|
/* 02691B80 */ cpu->r[4] = cpu->r[1] + 0x00000024u;
|
|
/* 02691B84 */ cpu->r[6] = 0x00000000u;
|
|
/* 02691B88 */ cpu->r[7] = 0x000001FFu;
|
|
/* 02691B8C */ cpu->r[9] = cpu->r[1] + 0x0000006Cu;
|
|
/* 02691B90 */ Gambit_fn_0204A864(cpu);
|
|
/* 02691B94 */ cpu->r[5] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02691B94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 02691B98 */ _t84 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02691B98 */ _t85 = _t84 & 0x00000001u;
|
|
/* 02691B98 */ if (_t85) goto L_02691B40; else goto L_02691B9C;
|
|
L_02691B9C: ; // 0x2691b9c
|
|
/* 02691B9C */ _t86 = cpu->r[1] + 0x0000008Cu;
|
|
/* 02691B9C */ cpu->r[31] = rbrew_read32(cpu->mem, _t86);
|
|
/* 02691BA0 */ cpu->f[1] = cpu->f[31];
|
|
/* 02691BA4 */ _t87 = cpu->r[1] + 0x00000098u;
|
|
/* 02691BA4 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t87);
|
|
/* 02691BA8 */ _t88 = cpu->r[1] + 0x00000088u;
|
|
/* 02691BA8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t88);
|
|
/* 02691BAC */ _t89 = cpu->r[1] + 0x000000A8u;
|
|
/* 02691BAC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t89);
|
|
/* 02691BB0 */ _t90 = cpu->r[1] + 0x00000090u;
|
|
/* 02691BB0 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t90);
|
|
/* 02691BB4 */ _t91 = cpu->r[1] + 0x000000A0u;
|
|
/* 02691BB4 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t91);
|
|
/* 02691BB8 */ _t92 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02691BB8 */ _t93 = _t92 & 0x00000001u;
|
|
/* 02691BB8 */ if (_t93) goto L_02691BBC; // else: addr-0 trap, fall-through
|
|
L_02691BBC: ; // 0x2691bbc
|
|
/* 02691BBC */ _t94 = cpu->r[1] + 0x000000B4u;
|
|
/* 02691BBC */ cpu->r[0] = rbrew_read32(cpu->mem, _t94);
|
|
/* 02691BC0 */ cpu->lr = cpu->r[0];
|
|
/* 02691BC4 */ cpu->r[1] = cpu->r[1] + 0x000000B0u;
|
|
/* 02691BC8 */ return;
|
|
}
|
|
|
|
// fn_02691BCC @ 0x2691bcc
|
|
void Gambit_fn_02691BCC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02691BCC: ; // 0x2691bcc
|
|
/* 02691BCC */ _t0 = cpu->r[6] + 0x00000000u;
|
|
/* 02691BCC */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02691BD0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000002u);
|
|
/* 02691BD4 */ _t1 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02691BD4 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02691BD4 */ if (_t2) goto L_02691BD8; else goto L_02691BE8;
|
|
L_02691BD8: ; // 0x2691bd8
|
|
/* 02691BD8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000009u);
|
|
/* 02691BDC */ _t3 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02691BDC */ _t4 = _t3 & 0x00000001u;
|
|
/* 02691BDC */ if (_t4) goto L_02691BE0; else goto L_02691C0C;
|
|
L_02691BE0: ; // 0x2691be0
|
|
/* 02691BE0 */ cpu->r[3] = 0x00000000u;
|
|
/* 02691BE4 */ return;
|
|
L_02691BE8: ; // 0x2691be8
|
|
/* 02691BE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 02691BEC */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02691BEC */ _t6 = _t5 & 0x00000001u;
|
|
/* 02691BEC */ if (_t6) goto L_02691C0C; else goto L_02691BF0;
|
|
L_02691BF0: ; // 0x2691bf0
|
|
/* 02691BF0 */ cpu->r[0] = cpu->r[4] + 0xFFFFFFFFu;
|
|
/* 02691BF4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[0]);
|
|
/* 02691BF8 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02691BF8 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02691BF8 */ if (_t8) goto L_02691C0C; else goto L_02691BFC;
|
|
L_02691BFC: ; // 0x2691bfc
|
|
/* 02691BFC */ /* nop */
|
|
/* 02691C00 */ cpu->r[11] = cpu->r[12];
|
|
/* 02691C04 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[5]);
|
|
/* 02691C08 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02691C08 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02691C08 */ if (_t10) goto L_02691C0C; else goto L_02691C14;
|
|
L_02691C0C: ; // 0x2691c0c
|
|
/* 02691C0C */ cpu->r[3] = 0x00000001u;
|
|
/* 02691C10 */ return;
|
|
L_02691C14: ; // 0x2691c14
|
|
/* 02691C14 */ cpu->r[3] = 0x00000000u;
|
|
/* 02691C18 */ return;
|
|
}
|
|
|
|
// fn_02691C1C @ 0x2691c1c
|
|
void Gambit_fn_02691C1C(CPUState* cpu) {
|
|
uint32_t _t0, _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_02691C1C: ; // 0x2691c1c
|
|
/* 02691C1C */ cpu->r[0] = cpu->lr;
|
|
/* 02691C20 */ _t0 = cpu->r[1] + 0xFFFFFF30u;
|
|
/* 02691C20 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02691C20 */ cpu->r[1] = _t0;
|
|
/* 02691C24 */ cpu->r[7] = 0x00000080u;
|
|
/* 02691C28 */ _t1 = cpu->r[1] + 0x000000CCu;
|
|
/* 02691C28 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02691C2C */ cpu->r[10] = cpu->r[1] + 0x00000044u;
|
|
/* 02691C30 */ _t2 = cpu->r[1] + 0x00000040u;
|
|
/* 02691C30 */ rbrew_write32(cpu->mem, _t2, cpu->r[7]);
|
|
/* 02691C34 */ _t3 = cpu->r[1] + 0x000000C8u;
|
|
/* 02691C34 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 02691C38 */ cpu->r[9] = 0x100E0000u;
|
|
/* 02691C3C */ _t4 = cpu->r[1] + 0x00000038u;
|
|
/* 02691C3C */ rbrew_write32(cpu->mem, _t4, cpu->r[10]);
|
|
/* 02691C40 */ cpu->r[12] = 0x10110000u;
|
|
/* 02691C44 */ cpu->r[9] = cpu->r[9] + 0x00003900u;
|
|
/* 02691C48 */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 02691C4C */ _t5 = cpu->r[1] + 0x000000D4u;
|
|
/* 02691C4C */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02691C50 */ _t6 = cpu->r[12] + 0x00007399u;
|
|
/* 02691C50 */ cpu->r[12] = rbrew_read8(cpu->mem, _t6);
|
|
/* 02691C54 */ cpu->r[30] = cpu->r[4];
|
|
/* 02691C58 */ _t7 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02691C58 */ rbrew_write32(cpu->mem, _t7, cpu->r[9]);
|
|
/* 02691C5C */ cpu->r[4] = 0x100E0000u;
|
|
/* 02691C60 */ _t8 = cpu->r[1] + 0x000000C3u;
|
|
/* 02691C60 */ rbrew_write8(cpu->mem, _t8, (uint8_t)cpu->r[12]);
|
|
/* 02691C64 */ cpu->r[4] = cpu->r[4] + 0x00003964u;
|
|
/* 02691C68 */ _t9 = cpu->r[1] + 0x00000044u;
|
|
/* 02691C68 */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[12]);
|
|
/* 02691C6C */ cpu->r[31] = cpu->r[6];
|
|
/* 02691C70 */ _t10 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 02691C70 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02691C70 */ if (_t11) goto L_02691C74; // else: addr-0 trap, fall-through
|
|
L_02691C74: ; // 0x2691c74
|
|
/* 02691C74 */ Gambit_fn_0282A5F4(cpu);
|
|
/* 02691C78 */ cpu->r[8] = 0x101F0000u;
|
|
/* 02691C7C */ cpu->r[9] = 0x100E0000u;
|
|
/* 02691C80 */ cpu->r[8] = cpu->r[8] + 0x00006350u;
|
|
/* 02691C84 */ _t12 = cpu->r[9] + 0x00003950u;
|
|
/* 02691C84 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 02691C88 */ _t13 = cpu->r[8] + 0x00000008u;
|
|
/* 02691C88 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 02691C8C */ /* nop */
|
|
/* 02691C90 */ cpu->f[12] = cpu->f[13] * cpu->f[0];
|
|
/* 02691C94 */ /* nop */
|
|
/* 02691C98 */ /* nop */
|
|
/* 02691C9C */ /* nop */
|
|
/* 02691CA0 */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 02691CA0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02691CA4 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02691CA4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02691CA8 */ _t16 = cpu->r[1] + 0x00000020u;
|
|
/* 02691CA8 */ rbrew_write32(cpu->mem, _t16, cpu->r[10]);
|
|
/* 02691CAC */ _t17 = cpu->r[1] + 0x00000024u;
|
|
/* 02691CAC */ rbrew_write32(cpu->mem, _t17, cpu->r[12]);
|
|
/* 02691CB0 */ /* nop */
|
|
/* 02691CB4 */ _t18 = cpu->r[1] + 0x00000010u;
|
|
/* 02691CB4 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[12]);
|
|
/* 02691CB8 */ _t19 = cpu->r[1] + 0x00000010u;
|
|
/* 02691CB8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02691CBC */ /* nop */
|
|
/* 02691CC0 */ _t20 = cpu->r[30] + 0x00000008u;
|
|
/* 02691CC0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 02691CC4 */ _t21 = cpu->r[1] + 0x00000028u;
|
|
/* 02691CC4 */ rbrew_write32(cpu->mem, _t21, cpu->r[0]);
|
|
/* 02691CC8 */ _t22 = cpu->r[1] + 0x00000028u;
|
|
/* 02691CC8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 02691CCC */ /* nop */
|
|
/* 02691CD0 */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 02691CD0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02691CD4 */ cpu->f[12] = cpu->f[13] + cpu->f[0];
|
|
/* 02691CD8 */ _t24 = cpu->r[1] + 0x00000018u;
|
|
/* 02691CD8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02691CDC */ _t25 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02691CDC */ rbrew_write32(cpu->mem, _t25, cpu->r[0]);
|
|
/* 02691CE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02691CE4 */ _t26 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02691CE4 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[12]);
|
|
/* 02691CE8 */ _t27 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02691CE8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02691CEC */ cpu->r[6] = 0x101F0000u;
|
|
/* 02691CF0 */ _t28 = cpu->r[1] + 0x00000030u;
|
|
/* 02691CF0 */ rbrew_write32(cpu->mem, _t28, cpu->r[8]);
|
|
/* 02691CF4 */ cpu->r[6] = cpu->r[6] + 0x00005BECu;
|
|
/* 02691CF8 */ _t29 = cpu->r[1] + 0x00000034u;
|
|
/* 02691CF8 */ rbrew_write32(cpu->mem, _t29, cpu->r[0]);
|
|
/* 02691CFC */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02691CFC */ _t31 = _t30 & 0x00000001u;
|
|
/* 02691CFC */ if (_t31) goto L_02691D08; else goto L_02691D00;
|
|
L_02691D00: ; // 0x2691d00
|
|
/* 02691D00 */ cpu->r[6] = 0x101F0000u;
|
|
/* 02691D04 */ cpu->r[6] = cpu->r[6] + 0x00005BFCu;
|
|
L_02691D08: ; // 0x2691d08
|
|
/* 02691D08 */ cpu->r[8] = 0x100E0000u;
|
|
/* 02691D0C */ cpu->r[4] = cpu->r[1] + 0x00000038u;
|
|
/* 02691D10 */ _t32 = cpu->r[8] + 0x00003960u;
|
|
/* 02691D10 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 02691D14 */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 02691D18 */ cpu->r[5] = 0x00000000u;
|
|
/* 02691D1C */ Gambit_fn_02697F58(cpu);
|
|
/* 02691D20 */ _t33 = cpu->r[1] + 0x000000D4u;
|
|
/* 02691D20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02691D24 */ _t34 = cpu->r[1] + 0x000000CCu;
|
|
/* 02691D24 */ cpu->r[31] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02691D28 */ cpu->lr = cpu->r[0];
|
|
/* 02691D2C */ _t35 = cpu->r[1] + 0x000000C8u;
|
|
/* 02691D2C */ cpu->r[30] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02691D30 */ cpu->r[1] = cpu->r[1] + 0x000000D0u;
|
|
/* 02691D34 */ return;
|
|
}
|
|
|
|
// fn_02691C20 @ 0x2691c20
|
|
void Gambit_fn_02691C20(CPUState* cpu) {
|
|
uint32_t _t0, _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_02691C20: ; // 0x2691c20
|
|
/* 02691C20 */ _t0 = cpu->r[1] + 0xFFFFFF30u;
|
|
/* 02691C20 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02691C20 */ cpu->r[1] = _t0;
|
|
/* 02691C24 */ cpu->r[7] = 0x00000080u;
|
|
/* 02691C28 */ _t1 = cpu->r[1] + 0x000000CCu;
|
|
/* 02691C28 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02691C2C */ cpu->r[10] = cpu->r[1] + 0x00000044u;
|
|
/* 02691C30 */ _t2 = cpu->r[1] + 0x00000040u;
|
|
/* 02691C30 */ rbrew_write32(cpu->mem, _t2, cpu->r[7]);
|
|
/* 02691C34 */ _t3 = cpu->r[1] + 0x000000C8u;
|
|
/* 02691C34 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 02691C38 */ cpu->r[9] = 0x100E0000u;
|
|
/* 02691C3C */ _t4 = cpu->r[1] + 0x00000038u;
|
|
/* 02691C3C */ rbrew_write32(cpu->mem, _t4, cpu->r[10]);
|
|
/* 02691C40 */ cpu->r[12] = 0x10110000u;
|
|
/* 02691C44 */ cpu->r[9] = cpu->r[9] + 0x00003900u;
|
|
/* 02691C48 */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 02691C4C */ _t5 = cpu->r[1] + 0x000000D4u;
|
|
/* 02691C4C */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02691C50 */ _t6 = cpu->r[12] + 0x00007399u;
|
|
/* 02691C50 */ cpu->r[12] = rbrew_read8(cpu->mem, _t6);
|
|
/* 02691C54 */ cpu->r[30] = cpu->r[4];
|
|
/* 02691C58 */ _t7 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02691C58 */ rbrew_write32(cpu->mem, _t7, cpu->r[9]);
|
|
/* 02691C5C */ cpu->r[4] = 0x100E0000u;
|
|
/* 02691C60 */ _t8 = cpu->r[1] + 0x000000C3u;
|
|
/* 02691C60 */ rbrew_write8(cpu->mem, _t8, (uint8_t)cpu->r[12]);
|
|
/* 02691C64 */ cpu->r[4] = cpu->r[4] + 0x00003964u;
|
|
/* 02691C68 */ _t9 = cpu->r[1] + 0x00000044u;
|
|
/* 02691C68 */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[12]);
|
|
/* 02691C6C */ cpu->r[31] = cpu->r[6];
|
|
/* 02691C70 */ _t10 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 02691C70 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02691C70 */ if (_t11) goto L_02691C74; // else: addr-0 trap, fall-through
|
|
L_02691C74: ; // 0x2691c74
|
|
/* 02691C74 */ Gambit_fn_0282A5F4(cpu);
|
|
/* 02691C78 */ cpu->r[8] = 0x101F0000u;
|
|
/* 02691C7C */ cpu->r[9] = 0x100E0000u;
|
|
/* 02691C80 */ cpu->r[8] = cpu->r[8] + 0x00006350u;
|
|
/* 02691C84 */ _t12 = cpu->r[9] + 0x00003950u;
|
|
/* 02691C84 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 02691C88 */ _t13 = cpu->r[8] + 0x00000008u;
|
|
/* 02691C88 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 02691C8C */ /* nop */
|
|
/* 02691C90 */ cpu->f[12] = cpu->f[13] * cpu->f[0];
|
|
/* 02691C94 */ /* nop */
|
|
/* 02691C98 */ /* nop */
|
|
/* 02691C9C */ /* nop */
|
|
/* 02691CA0 */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 02691CA0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02691CA4 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02691CA4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02691CA8 */ _t16 = cpu->r[1] + 0x00000020u;
|
|
/* 02691CA8 */ rbrew_write32(cpu->mem, _t16, cpu->r[10]);
|
|
/* 02691CAC */ _t17 = cpu->r[1] + 0x00000024u;
|
|
/* 02691CAC */ rbrew_write32(cpu->mem, _t17, cpu->r[12]);
|
|
/* 02691CB0 */ /* nop */
|
|
/* 02691CB4 */ _t18 = cpu->r[1] + 0x00000010u;
|
|
/* 02691CB4 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[12]);
|
|
/* 02691CB8 */ _t19 = cpu->r[1] + 0x00000010u;
|
|
/* 02691CB8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02691CBC */ /* nop */
|
|
/* 02691CC0 */ _t20 = cpu->r[30] + 0x00000008u;
|
|
/* 02691CC0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 02691CC4 */ _t21 = cpu->r[1] + 0x00000028u;
|
|
/* 02691CC4 */ rbrew_write32(cpu->mem, _t21, cpu->r[0]);
|
|
/* 02691CC8 */ _t22 = cpu->r[1] + 0x00000028u;
|
|
/* 02691CC8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 02691CCC */ /* nop */
|
|
/* 02691CD0 */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 02691CD0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02691CD4 */ cpu->f[12] = cpu->f[13] + cpu->f[0];
|
|
/* 02691CD8 */ _t24 = cpu->r[1] + 0x00000018u;
|
|
/* 02691CD8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02691CDC */ _t25 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02691CDC */ rbrew_write32(cpu->mem, _t25, cpu->r[0]);
|
|
/* 02691CE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02691CE4 */ _t26 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02691CE4 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[12]);
|
|
/* 02691CE8 */ _t27 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02691CE8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02691CEC */ cpu->r[6] = 0x101F0000u;
|
|
/* 02691CF0 */ _t28 = cpu->r[1] + 0x00000030u;
|
|
/* 02691CF0 */ rbrew_write32(cpu->mem, _t28, cpu->r[8]);
|
|
/* 02691CF4 */ cpu->r[6] = cpu->r[6] + 0x00005BECu;
|
|
/* 02691CF8 */ _t29 = cpu->r[1] + 0x00000034u;
|
|
/* 02691CF8 */ rbrew_write32(cpu->mem, _t29, cpu->r[0]);
|
|
/* 02691CFC */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02691CFC */ _t31 = _t30 & 0x00000001u;
|
|
/* 02691CFC */ if (_t31) goto L_02691D08; else goto L_02691D00;
|
|
L_02691D00: ; // 0x2691d00
|
|
/* 02691D00 */ cpu->r[6] = 0x101F0000u;
|
|
/* 02691D04 */ cpu->r[6] = cpu->r[6] + 0x00005BFCu;
|
|
L_02691D08: ; // 0x2691d08
|
|
/* 02691D08 */ cpu->r[8] = 0x100E0000u;
|
|
/* 02691D0C */ cpu->r[4] = cpu->r[1] + 0x00000038u;
|
|
/* 02691D10 */ _t32 = cpu->r[8] + 0x00003960u;
|
|
/* 02691D10 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 02691D14 */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 02691D18 */ cpu->r[5] = 0x00000000u;
|
|
/* 02691D1C */ Gambit_fn_02697F58(cpu);
|
|
/* 02691D20 */ _t33 = cpu->r[1] + 0x000000D4u;
|
|
/* 02691D20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02691D24 */ _t34 = cpu->r[1] + 0x000000CCu;
|
|
/* 02691D24 */ cpu->r[31] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02691D28 */ cpu->lr = cpu->r[0];
|
|
/* 02691D2C */ _t35 = cpu->r[1] + 0x000000C8u;
|
|
/* 02691D2C */ cpu->r[30] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02691D30 */ cpu->r[1] = cpu->r[1] + 0x000000D0u;
|
|
/* 02691D34 */ return;
|
|
}
|
|
|
|
// fn_02691D38 @ 0x2691d38
|
|
void Gambit_fn_02691D38(CPUState* cpu) {
|
|
uint32_t _t0, _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_02691D38: ; // 0x2691d38
|
|
/* 02691D38 */ _t0 = cpu->r[3] + 0x000000F4u;
|
|
/* 02691D38 */ cpu->r[10] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02691D3C */ _t1 = cpu->r[3] + 0x000000F8u;
|
|
/* 02691D3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02691D40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], cpu->r[0]);
|
|
/* 02691D44 */ _t2 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02691D44 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02691D44 */ _t4 = _t3 ^ 0x00000001u;
|
|
/* 02691D44 */ if (_t4) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02691D44 */ goto L_02691D48;
|
|
L_02691D48: ; // 0x2691d48
|
|
/* 02691D48 */ _t5 = cpu->r[3] + 0x00000100u;
|
|
/* 02691D48 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02691D4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02691D50 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02691D50 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02691D50 */ if (_t7) goto L_02691D5C; else goto L_02691D54;
|
|
L_02691D54: ; // 0x2691d54
|
|
/* 02691D54 */ _t8 = cpu->r[12] + 0x00000000u;
|
|
/* 02691D54 */ cpu->r[10] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02691D58 */ _t9 = cpu->r[3] + 0x00000100u;
|
|
/* 02691D58 */ rbrew_write32(cpu->mem, _t9, cpu->r[10]);
|
|
L_02691D5C: ; // 0x2691d5c
|
|
/* 02691D5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02691D60 */ cpu->r[8] = 0x00000000u;
|
|
/* 02691D64 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02691D64 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02691D64 */ if (_t11) goto L_02691DC8; else goto L_02691D68;
|
|
L_02691D68: ; // 0x2691d68
|
|
/* 02691D68 */ cpu->r[10] = 0x101F0000u;
|
|
/* 02691D6C */ _t12 = cpu->r[12] + 0x00000000u;
|
|
/* 02691D6C */ rbrew_write32(cpu->mem, _t12, cpu->r[8]);
|
|
/* 02691D70 */ _t13 = cpu->r[10] + 0x00006338u;
|
|
/* 02691D70 */ cpu->r[11] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02691D70 */ cpu->r[10] = _t13;
|
|
/* 02691D74 */ _t14 = cpu->r[12] + 0x00000004u;
|
|
/* 02691D74 */ rbrew_write32(cpu->mem, _t14, cpu->r[11]);
|
|
/* 02691D78 */ _t15 = cpu->r[10] + 0x00000004u;
|
|
/* 02691D78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02691D7C */ _t16 = cpu->r[12] + 0x00000008u;
|
|
/* 02691D7C */ rbrew_write32(cpu->mem, _t16, cpu->r[0]);
|
|
/* 02691D80 */ _t17 = cpu->r[10] + 0x00000008u;
|
|
/* 02691D80 */ cpu->r[9] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02691D84 */ _t18 = cpu->r[12] + 0x0000000Cu;
|
|
/* 02691D84 */ rbrew_write32(cpu->mem, _t18, cpu->r[9]);
|
|
/* 02691D88 */ _t19 = cpu->r[10] + 0x00000000u;
|
|
/* 02691D88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02691D8C */ cpu->r[11] = 0x100E0000u;
|
|
/* 02691D90 */ _t20 = cpu->r[12] + 0x00000010u;
|
|
/* 02691D90 */ rbrew_write32(cpu->mem, _t20, cpu->r[0]);
|
|
/* 02691D94 */ _t21 = cpu->r[10] + 0x00000004u;
|
|
/* 02691D94 */ cpu->r[9] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02691D98 */ _t22 = cpu->r[11] + 0x000038A4u;
|
|
/* 02691D98 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 02691D9C */ _t23 = cpu->r[12] + 0x00000014u;
|
|
/* 02691D9C */ rbrew_write32(cpu->mem, _t23, cpu->r[9]);
|
|
/* 02691DA0 */ _t24 = cpu->r[10] + 0x00000008u;
|
|
/* 02691DA0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02691DA4 */ _t25 = cpu->r[12] + 0x0000001Cu;
|
|
/* 02691DA4 */ rbrew_write_f32(cpu->mem, _t25, cpu->f[0]);
|
|
/* 02691DA8 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 02691DAC */ _t26 = cpu->r[12] + 0x00000018u;
|
|
/* 02691DAC */ rbrew_write32(cpu->mem, _t26, cpu->r[11]);
|
|
/* 02691DB0 */ _t27 = cpu->r[12] + 0x00000020u;
|
|
/* 02691DB0 */ rbrew_write32(cpu->mem, _t27, cpu->r[0]);
|
|
/* 02691DB4 */ _t28 = cpu->r[3] + 0x000000F8u;
|
|
/* 02691DB4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02691DB8 */ _t29 = cpu->r[3] + 0x000000F4u;
|
|
/* 02691DB8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02691DBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], cpu->r[0]);
|
|
/* 02691DC0 */ _t30 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02691DC0 */ _t31 = _t30 & 0x00000001u;
|
|
/* 02691DC0 */ if (_t31) goto L_02691DC4; else goto L_02691DF4;
|
|
L_02691DC4: ; // 0x2691dc4
|
|
/* 02691DC4 */ goto L_02691DDC;
|
|
L_02691DC8: ; // 0x2691dc8
|
|
/* 02691DC8 */ _t32 = cpu->r[3] + 0x000000F4u;
|
|
/* 02691DC8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02691DCC */ _t33 = cpu->r[3] + 0x000000F8u;
|
|
/* 02691DCC */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02691DD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], cpu->r[0]);
|
|
/* 02691DD4 */ cpu->r[12] = 0x00000000u;
|
|
/* 02691DD8 */ _t34 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02691DD8 */ _t35 = _t34 & 0x00000001u;
|
|
/* 02691DD8 */ if (_t35) goto L_02691DDC; else goto L_02691DF4;
|
|
L_02691DDC: ; // 0x2691ddc
|
|
/* 02691DDC */ _t36 = cpu->r[3] + 0x000000FCu;
|
|
/* 02691DDC */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02691DE0 */ cpu->r[10] = rbrew_rlwinm(cpu->r[11], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02691DE4 */ _t37 = cpu->r[10] + cpu->r[0];
|
|
/* 02691DE4 */ rbrew_write32(cpu->mem, _t37, cpu->r[12]);
|
|
/* 02691DE8 */ _t38 = cpu->r[3] + 0x000000F4u;
|
|
/* 02691DE8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02691DEC */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 02691DF0 */ _t39 = cpu->r[3] + 0x000000F4u;
|
|
/* 02691DF0 */ rbrew_write32(cpu->mem, _t39, cpu->r[11]);
|
|
L_02691DF4: ; // 0x2691df4
|
|
/* 02691DF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02691DF8 */ _t40 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02691DF8 */ _t41 = _t40 & 0x00000001u;
|
|
/* 02691DF8 */ if (_t41) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02691DF8 */ goto L_02691DFC;
|
|
L_02691DFC: ; // 0x2691dfc
|
|
/* 02691DFC */ _t42 = cpu->r[12] + 0x00000020u;
|
|
/* 02691DFC */ rbrew_write32(cpu->mem, _t42, cpu->r[8]);
|
|
/* 02691E00 */ _t43 = cpu->r[12] + 0x0000001Cu;
|
|
/* 02691E00 */ rbrew_write_f32(cpu->mem, _t43, cpu->f[1]);
|
|
/* 02691E04 */ _t44 = cpu->r[5] + 0x00000000u;
|
|
/* 02691E04 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 02691E08 */ _t45 = cpu->r[12] + 0x00000004u;
|
|
/* 02691E08 */ rbrew_write_f32(cpu->mem, _t45, cpu->f[0]);
|
|
/* 02691E0C */ _t46 = cpu->r[5] + 0x00000004u;
|
|
/* 02691E0C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 02691E10 */ _t47 = cpu->r[12] + 0x00000008u;
|
|
/* 02691E10 */ rbrew_write_f32(cpu->mem, _t47, cpu->f[13]);
|
|
/* 02691E14 */ _t48 = cpu->r[5] + 0x00000008u;
|
|
/* 02691E14 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 02691E18 */ _t49 = cpu->r[12] + 0x0000000Cu;
|
|
/* 02691E18 */ rbrew_write_f32(cpu->mem, _t49, cpu->f[0]);
|
|
/* 02691E1C */ _t50 = cpu->r[7] + 0x00000000u;
|
|
/* 02691E1C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t50);
|
|
/* 02691E20 */ _t51 = cpu->r[12] + 0x00000010u;
|
|
/* 02691E20 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[13]);
|
|
/* 02691E24 */ _t52 = cpu->r[7] + 0x00000004u;
|
|
/* 02691E24 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 02691E28 */ _t53 = cpu->r[12] + 0x00000014u;
|
|
/* 02691E28 */ rbrew_write_f32(cpu->mem, _t53, cpu->f[0]);
|
|
/* 02691E2C */ _t54 = cpu->r[7] + 0x00000008u;
|
|
/* 02691E2C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 02691E30 */ _t55 = cpu->r[12] + 0x00000018u;
|
|
/* 02691E30 */ rbrew_write_f32(cpu->mem, _t55, cpu->f[13]);
|
|
/* 02691E34 */ _t56 = cpu->r[6] + 0x00000000u;
|
|
/* 02691E34 */ cpu->r[9] = rbrew_read32(cpu->mem, _t56);
|
|
/* 02691E38 */ _t57 = cpu->r[12] + 0x00000000u;
|
|
/* 02691E38 */ rbrew_write32(cpu->mem, _t57, cpu->r[9]);
|
|
/* 02691E3C */ return;
|
|
}
|
|
|
|
// fn_02691E40 @ 0x2691e40
|
|
void Gambit_fn_02691E40(CPUState* cpu) {
|
|
uint32_t _t0, _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_02691E40: ; // 0x2691e40
|
|
/* 02691E40 */ _t0 = cpu->r[1] + 0xFFFFFE80u;
|
|
/* 02691E40 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02691E40 */ cpu->r[1] = _t0;
|
|
/* 02691E44 */ _t1 = cpu->r[1] + 0x000000C0u;
|
|
/* 02691E44 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[20]);
|
|
/* 02691E48 */ /* nop */
|
|
/* 02691E4C */ _t2 = cpu->r[1] + 0x00000070u;
|
|
/* 02691E4C */ rbrew_write_f64(cpu->mem, _t2, cpu->f[15]);
|
|
/* 02691E50 */ _t3 = cpu->r[1] + 0x000000F0u;
|
|
/* 02691E50 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[23]);
|
|
/* 02691E54 */ /* nop */
|
|
/* 02691E58 */ _t4 = cpu->r[1] + 0x000000E0u;
|
|
/* 02691E58 */ rbrew_write_f64(cpu->mem, _t4, cpu->f[22]);
|
|
/* 02691E5C */ /* nop */
|
|
/* 02691E60 */ _t5 = cpu->r[1] + 0x00000078u;
|
|
/* 02691E60 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[15]);
|
|
/* 02691E64 */ /* nop */
|
|
/* 02691E68 */ _t6 = cpu->r[1] + 0x00000080u;
|
|
/* 02691E68 */ rbrew_write_f64(cpu->mem, _t6, cpu->f[16]);
|
|
/* 02691E6C */ _t7 = cpu->r[1] + 0x000000D0u;
|
|
/* 02691E6C */ rbrew_write_f64(cpu->mem, _t7, cpu->f[21]);
|
|
/* 02691E70 */ /* nop */
|
|
/* 02691E74 */ _t8 = cpu->r[1] + 0x000000C8u;
|
|
/* 02691E74 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[20]);
|
|
/* 02691E78 */ /* nop */
|
|
/* 02691E7C */ _t9 = cpu->r[1] + 0x000000F8u;
|
|
/* 02691E7C */ rbrew_write_f32(cpu->mem, _t9, cpu->f[23]);
|
|
/* 02691E80 */ _t10 = cpu->r[1] + 0x00000088u;
|
|
/* 02691E80 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[16]);
|
|
/* 02691E84 */ _t11 = cpu->r[1] + 0x00000090u;
|
|
/* 02691E84 */ rbrew_write_f64(cpu->mem, _t11, cpu->f[17]);
|
|
/* 02691E88 */ _t12 = cpu->r[1] + 0x000000B0u;
|
|
/* 02691E88 */ rbrew_write_f64(cpu->mem, _t12, cpu->f[19]);
|
|
/* 02691E8C */ /* nop */
|
|
/* 02691E90 */ _t13 = cpu->r[1] + 0x000000D8u;
|
|
/* 02691E90 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[21]);
|
|
/* 02691E94 */ /* nop */
|
|
/* 02691E98 */ _t14 = cpu->r[1] + 0x00000098u;
|
|
/* 02691E98 */ rbrew_write_f32(cpu->mem, _t14, cpu->f[17]);
|
|
/* 02691E9C */ _t15 = cpu->r[1] + 0x000000B8u;
|
|
/* 02691E9C */ rbrew_write_f32(cpu->mem, _t15, cpu->f[19]);
|
|
/* 02691EA0 */ _t16 = cpu->r[1] + 0x000000A0u;
|
|
/* 02691EA0 */ rbrew_write_f64(cpu->mem, _t16, cpu->f[18]);
|
|
/* 02691EA4 */ _t17 = cpu->r[1] + 0x00000060u;
|
|
/* 02691EA4 */ rbrew_write_f64(cpu->mem, _t17, cpu->f[14]);
|
|
/* 02691EA8 */ /* nop */
|
|
/* 02691EAC */ _t18 = cpu->r[1] + 0x000000E8u;
|
|
/* 02691EAC */ rbrew_write_f32(cpu->mem, _t18, cpu->f[22]);
|
|
/* 02691EB0 */ /* nop */
|
|
/* 02691EB4 */ _t19 = cpu->r[1] + 0x000000A8u;
|
|
/* 02691EB4 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[18]);
|
|
/* 02691EB8 */ cpu->r[0] = cpu->lr;
|
|
/* 02691EBC */ _t20 = cpu->r[1] + 0x00000068u;
|
|
/* 02691EBC */ rbrew_write_f32(cpu->mem, _t20, cpu->f[14]);
|
|
/* 02691EC0 */ _t21 = cpu->r[1] + 0x00000100u;
|
|
/* 02691EC0 */ rbrew_write_f64(cpu->mem, _t21, cpu->f[24]);
|
|
/* 02691EC4 */ /* nop */
|
|
/* 02691EC8 */ _t22 = cpu->r[1] + 0x00000108u;
|
|
/* 02691EC8 */ rbrew_write_f32(cpu->mem, _t22, cpu->f[24]);
|
|
/* 02691ECC */ _t23 = cpu->r[1] + 0x00000110u;
|
|
/* 02691ECC */ rbrew_write_f64(cpu->mem, _t23, cpu->f[25]);
|
|
/* 02691ED0 */ /* nop */
|
|
/* 02691ED4 */ _t24 = cpu->r[1] + 0x00000118u;
|
|
/* 02691ED4 */ rbrew_write_f32(cpu->mem, _t24, cpu->f[25]);
|
|
/* 02691ED8 */ _t25 = cpu->r[1] + 0x00000120u;
|
|
/* 02691ED8 */ rbrew_write_f64(cpu->mem, _t25, cpu->f[26]);
|
|
/* 02691EDC */ /* nop */
|
|
/* 02691EE0 */ _t26 = cpu->r[1] + 0x00000128u;
|
|
/* 02691EE0 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[26]);
|
|
/* 02691EE4 */ _t27 = cpu->r[1] + 0x00000130u;
|
|
/* 02691EE4 */ rbrew_write_f64(cpu->mem, _t27, cpu->f[27]);
|
|
/* 02691EE8 */ /* nop */
|
|
/* 02691EEC */ _t28 = cpu->r[1] + 0x00000138u;
|
|
/* 02691EEC */ rbrew_write_f32(cpu->mem, _t28, cpu->f[27]);
|
|
/* 02691EF0 */ _t29 = cpu->r[1] + 0x00000140u;
|
|
/* 02691EF0 */ rbrew_write_f64(cpu->mem, _t29, cpu->f[28]);
|
|
/* 02691EF4 */ /* nop */
|
|
/* 02691EF8 */ /* nop */
|
|
/* 02691EFC */ _t30 = cpu->r[1] + 0x00000150u;
|
|
/* 02691EFC */ rbrew_write_f64(cpu->mem, _t30, cpu->f[29]);
|
|
/* 02691F00 */ _t31 = cpu->r[1] + 0x00000148u;
|
|
/* 02691F00 */ rbrew_write_f32(cpu->mem, _t31, cpu->f[28]);
|
|
/* 02691F04 */ /* nop */
|
|
/* 02691F08 */ _t32 = cpu->r[1] + 0x00000160u;
|
|
/* 02691F08 */ rbrew_write_f64(cpu->mem, _t32, cpu->f[30]);
|
|
/* 02691F0C */ _t33 = cpu->r[1] + 0x00000184u;
|
|
/* 02691F0C */ rbrew_write32(cpu->mem, _t33, cpu->r[0]);
|
|
/* 02691F10 */ /* nop */
|
|
/* 02691F14 */ _t34 = cpu->r[1] + 0x00000168u;
|
|
/* 02691F14 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[30]);
|
|
/* 02691F18 */ _t35 = cpu->r[1] + 0x00000170u;
|
|
/* 02691F18 */ rbrew_write_f64(cpu->mem, _t35, cpu->f[31]);
|
|
/* 02691F1C */ _t36 = cpu->r[1] + 0x00000158u;
|
|
/* 02691F1C */ rbrew_write_f32(cpu->mem, _t36, cpu->f[29]);
|
|
/* 02691F20 */ /* nop */
|
|
/* 02691F24 */ _t37 = cpu->r[1] + 0x00000178u;
|
|
/* 02691F24 */ rbrew_write_f32(cpu->mem, _t37, cpu->f[31]);
|
|
/* 02691F28 */ cpu->r[26] = cpu->r[3];
|
|
/* 02691F2C */ _t38 = cpu->r[26] + 0x00000008u;
|
|
/* 02691F2C */ cpu->r[3] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02691F30 */ Gambit_fn_0267025C(cpu);
|
|
/* 02691F34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02691F38 */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02691F38 */ _t40 = _t39 & 0x00000001u;
|
|
/* 02691F38 */ if (_t40) goto L_0269221C; else goto L_02691F3C;
|
|
L_02691F3C: ; // 0x2691f3c
|
|
/* 02691F3C */ _t41 = cpu->r[26] + 0x00000008u;
|
|
/* 02691F3C */ cpu->r[11] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02691F40 */ cpu->r[3] = cpu->r[26] + 0x00000070u;
|
|
/* 02691F44 */ cpu->r[4] = cpu->r[11] + 0x000000B4u;
|
|
/* 02691F48 */ Gambit_fn_026993B8(cpu);
|
|
/* 02691F4C */ _t42 = cpu->r[26] + 0x00000018u;
|
|
/* 02691F4C */ cpu->r[3] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02691F50 */ Gambit_fn_02686220(cpu);
|
|
/* 02691F54 */ cpu->r[4] = cpu->r[3];
|
|
/* 02691F58 */ cpu->r[3] = cpu->r[26] + 0x00000070u;
|
|
/* 02691F5C */ Gambit_fn_026993DC(cpu);
|
|
/* 02691F60 */ cpu->r[3] = cpu->r[26] + 0x00000070u;
|
|
/* 02691F64 */ Gambit_fn_02699230(cpu);
|
|
/* 02691F68 */ _t43 = cpu->r[26] + 0x000000F4u;
|
|
/* 02691F68 */ cpu->r[8] = rbrew_read32(cpu->mem, _t43);
|
|
/* 02691F6C */ cpu->r[12] = 0x00000000u;
|
|
/* 02691F70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], cpu->r[8]);
|
|
/* 02691F74 */ _t44 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02691F74 */ _t45 = _t44 & 0x00000001u;
|
|
/* 02691F74 */ if (_t45) goto L_02691F78; else goto L_02691FA8;
|
|
L_02691F78: ; // 0x2691f78
|
|
/* 02691F78 */ _t46 = cpu->r[26] + 0x00000100u;
|
|
/* 02691F78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t46);
|
|
/* 02691F7C */ cpu->r[8] = 0x00000000u;
|
|
L_02691F80: ; // 0x2691f80
|
|
/* 02691F80 */ _t47 = cpu->r[26] + 0x000000FCu;
|
|
/* 02691F80 */ cpu->r[9] = rbrew_read32(cpu->mem, _t47);
|
|
/* 02691F84 */ _t48 = cpu->r[9] + cpu->r[8];
|
|
/* 02691F84 */ cpu->r[5] = rbrew_read32(cpu->mem, _t48);
|
|
/* 02691F88 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 02691F8C */ _t49 = cpu->r[5] + 0x00000000u;
|
|
/* 02691F8C */ rbrew_write32(cpu->mem, _t49, cpu->r[0]);
|
|
/* 02691F90 */ _t50 = cpu->r[26] + 0x000000F4u;
|
|
/* 02691F90 */ cpu->r[10] = rbrew_read32(cpu->mem, _t50);
|
|
/* 02691F94 */ cpu->r[0] = cpu->r[5];
|
|
/* 02691F98 */ cpu->r[8] = cpu->r[8] + 0x00000004u;
|
|
/* 02691F9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], cpu->r[10]);
|
|
/* 02691FA0 */ _t51 = cpu->r[26] + 0x00000100u;
|
|
/* 02691FA0 */ rbrew_write32(cpu->mem, _t51, cpu->r[0]);
|
|
/* 02691FA4 */ _t52 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02691FA4 */ _t53 = _t52 & 0x00000001u;
|
|
/* 02691FA4 */ if (_t53) goto L_02691F80; else goto L_02691FA8;
|
|
L_02691FA8: ; // 0x2691fa8
|
|
/* 02691FA8 */ cpu->r[24] = 0x00000000u;
|
|
/* 02691FAC */ _t54 = cpu->r[26] + 0x000000F4u;
|
|
/* 02691FAC */ rbrew_write32(cpu->mem, _t54, cpu->r[24]);
|
|
/* 02691FB0 */ Gambit_fn_027E3E2C(cpu);
|
|
/* 02691FB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], cpu->r[3]);
|
|
/* 02691FB8 */ _t55 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02691FB8 */ _t56 = _t55 & 0x00000001u;
|
|
/* 02691FB8 */ if (_t56) goto L_02691FBC; else goto L_0269221C;
|
|
L_02691FBC: ; // 0x2691fbc
|
|
/* 02691FBC */ cpu->r[11] = 0x100E0000u;
|
|
/* 02691FC0 */ cpu->r[4] = 0x100E0000u;
|
|
/* 02691FC4 */ _t57 = cpu->r[11] + 0x00003944u;
|
|
/* 02691FC4 */ cpu->f[17] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 02691FC8 */ cpu->r[10] = 0x100E0000u;
|
|
/* 02691FCC */ cpu->r[6] = 0x100E0000u;
|
|
/* 02691FD0 */ _t58 = cpu->r[4] + 0x000039A4u;
|
|
/* 02691FD0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 02691FD4 */ _t59 = cpu->r[6] + 0x000039A8u;
|
|
/* 02691FD4 */ cpu->f[19] = rbrew_read_f32(cpu->mem, _t59);
|
|
/* 02691FD8 */ cpu->r[7] = 0x100E0000u;
|
|
/* 02691FDC */ _t60 = cpu->r[10] + 0x000038A4u;
|
|
/* 02691FDC */ cpu->f[18] = rbrew_read_f32(cpu->mem, _t60);
|
|
/* 02691FE0 */ _t61 = cpu->r[7] + 0x0000394Cu;
|
|
/* 02691FE0 */ cpu->f[20] = rbrew_read_f32(cpu->mem, _t61);
|
|
/* 02691FE4 */ _t62 = cpu->r[1] + 0x00000008u;
|
|
/* 02691FE4 */ rbrew_write_f32(cpu->mem, _t62, cpu->f[9]);
|
|
L_02691FE8: ; // 0x2691fe8
|
|
/* 02691FE8 */ cpu->r[3] = cpu->r[24];
|
|
/* 02691FEC */ Gambit_fn_027E3E40(cpu);
|
|
/* 02691FF0 */ _t63 = cpu->r[26] + 0x00000008u;
|
|
/* 02691FF0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t63);
|
|
/* 02691FF4 */ cpu->r[25] = cpu->r[3];
|
|
/* 02691FF8 */ _t64 = cpu->r[25] + 0x0000002Cu;
|
|
/* 02691FF8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t64);
|
|
/* 02691FFC */ _t65 = cpu->r[10] + 0x0000002Cu;
|
|
/* 02691FFC */ cpu->r[4] = rbrew_read32(cpu->mem, _t65);
|
|
/* 02692000 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[4]);
|
|
/* 02692004 */ _t66 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02692004 */ _t67 = _t66 & 0x00000001u;
|
|
/* 02692004 */ if (_t67) goto L_0269220C; else goto L_02692008;
|
|
L_02692008: ; // 0x2692008
|
|
/* 02692008 */ cpu->f[15] = cpu->f[17];
|
|
/* 0269200C */ cpu->r[27] = 0x00000000u;
|
|
/* 02692010 */ cpu->f[14] = cpu->f[18];
|
|
/* 02692014 */ _t68 = cpu->r[1] + 0x00000008u;
|
|
/* 02692014 */ cpu->f[16] = rbrew_read_f32(cpu->mem, _t68);
|
|
/* 02692018 */ cpu->f[30] = cpu->f[19];
|
|
/* 0269201C */ cpu->f[29] = cpu->f[20];
|
|
/* 02692020 */ cpu->r[31] = 0x0000000Au;
|
|
L_02692024: ; // 0x2692024
|
|
/* 02692024 */ _t69 = cpu->r[26] + 0x0000001Cu;
|
|
/* 02692024 */ cpu->r[3] = rbrew_read32(cpu->mem, _t69);
|
|
/* 02692028 */ cpu->r[5] = cpu->r[24];
|
|
/* 0269202C */ cpu->r[4] = cpu->r[1] + 0x00000038u;
|
|
/* 02692030 */ _t70 = cpu->r[1] + 0x00000038u;
|
|
/* 02692030 */ rbrew_write32(cpu->mem, _t70, cpu->r[27]);
|
|
/* 02692034 */ Gambit_fn_02666684(cpu);
|
|
/* 02692038 */ cpu->r[28] = cpu->r[3];
|
|
/* 02692038 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0269203C */ _t71 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269203C */ _t72 = _t71 & 0x00000001u;
|
|
/* 0269203C */ if (_t72) goto L_02692200; else goto L_02692040;
|
|
L_02692040: ; // 0x2692040
|
|
/* 02692040 */ cpu->r[30] = cpu->r[28];
|
|
/* 02692040 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02692044 */ cpu->r[29] = 0x00000000u;
|
|
/* 02692048 */ _t73 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02692048 */ _t74 = _t73 & 0x00000001u;
|
|
/* 02692048 */ if (_t74) goto L_0269204C; else goto L_02692200;
|
|
L_0269204C: ; // 0x269204c
|
|
/* 0269204C */ cpu->f[27] = cpu->f[29];
|
|
/* 02692050 */ cpu->f[21] = cpu->f[16];
|
|
/* 02692054 */ cpu->f[23] = cpu->f[14];
|
|
/* 02692058 */ cpu->f[25] = cpu->f[30];
|
|
/* 0269205C */ cpu->f[22] = cpu->f[15];
|
|
L_02692060: ; // 0x2692060
|
|
/* 02692060 */ cpu->r[5] = cpu->r[24];
|
|
/* 02692064 */ _t75 = cpu->r[26] + 0x0000001Cu;
|
|
/* 02692064 */ cpu->r[3] = rbrew_read32(cpu->mem, _t75);
|
|
/* 02692068 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269206C */ cpu->r[6] = cpu->r[29];
|
|
/* 02692070 */ _t76 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02692070 */ rbrew_write32(cpu->mem, _t76, cpu->r[27]);
|
|
/* 02692074 */ Gambit_fn_026666A0(cpu);
|
|
/* 02692078 */ cpu->r[7] = cpu->r[3];
|
|
/* 02692078 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0269207C */ _t77 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269207C */ _t78 = _t77 & 0x00000001u;
|
|
/* 0269207C */ if (_t78) goto L_026921F4; else goto L_02692080;
|
|
L_02692080: ; // 0x2692080
|
|
/* 02692080 */ cpu->r[6] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02692084 */ cpu->r[3] = cpu->r[26];
|
|
/* 02692088 */ cpu->r[4] = cpu->r[28];
|
|
/* 0269208C */ cpu->r[5] = cpu->r[29];
|
|
/* 02692090 */ _t79 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02692090 */ rbrew_write32(cpu->mem, _t79, cpu->r[27]);
|
|
/* 02692094 */ Gambit_fn_02691BCC(cpu);
|
|
/* 02692098 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0269209C */ _t80 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269209C */ _t81 = _t80 & 0x00000001u;
|
|
/* 0269209C */ if (_t81) goto L_026921F4; else goto L_026920A0;
|
|
L_026920A0: ; // 0x26920a0
|
|
/* 026920A0 */ _t82 = cpu->r[7] + 0x00000004u;
|
|
/* 026920A0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t82);
|
|
/* 026920A4 */ _t83 = cpu->r[12] + 0x00000094u;
|
|
/* 026920A4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t83);
|
|
/* 026920A8 */ cpu->ctr = cpu->r[6];
|
|
/* 026920AC */ cpu->r[3] = cpu->r[7];
|
|
/* 026920B0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 026920B4 */ cpu->r[4] = cpu->r[3];
|
|
/* 026920B8 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 026920BC */ Gambit_fn_0200D450(cpu);
|
|
/* 026920C0 */ _t84 = cpu->r[26] + 0x00000008u;
|
|
/* 026920C0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t84);
|
|
/* 026920C4 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 026920C8 */ Gambit_fn_026700D8(cpu);
|
|
/* 026920CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 026920D0 */ _t85 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026920D0 */ _t86 = _t85 & 0x00000001u;
|
|
/* 026920D0 */ if (_t86) goto L_026920D4; else goto L_026921F4;
|
|
L_026920D4: ; // 0x26920d4
|
|
/* 026920D4 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 026920D8 */ cpu->r[3] = cpu->r[26];
|
|
/* 026920DC */ Gambit_fn_02691774(cpu);
|
|
/* 026920E0 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 026920E4 */ cpu->r[3] = cpu->r[26];
|
|
/* 026920E8 */ cpu->f[24] = cpu->f[1];
|
|
/* 026920EC */ Gambit_fn_026917D0(cpu);
|
|
/* 026920F0 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 026920F4 */ cpu->r[3] = cpu->r[26];
|
|
/* 026920F8 */ cpu->f[26] = cpu->f[1];
|
|
/* 026920FC */ Gambit_fn_02691890(cpu);
|
|
/* 02692100 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 02692104 */ cpu->f[28] = cpu->f[1];
|
|
/* 02692108 */ cpu->r[3] = cpu->r[26];
|
|
/* 0269210C */ Gambit_fn_0269192C(cpu);
|
|
/* 02692110 */ cpu->f[31] = cpu->f[1];
|
|
/* 02692114 */ cpu->f[9] = cpu->f[24] * cpu->f[26];
|
|
/* 02692118 */ cpu->f[11] = cpu->f[28] * cpu->f[25];
|
|
/* 0269211C */ cpu->f[10] = cpu->f[9] * cpu->f[31];
|
|
/* 02692120 */ cpu->f[0] = fma(cpu->f[10], cpu->f[27], cpu->f[11]);
|
|
/* 02692124 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[23]);
|
|
/* 02692128 */ _t87 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02692128 */ _t88 = _t87 & 0x00000001u;
|
|
/* 02692128 */ if (_t88) goto L_0269212C; else goto L_02692144;
|
|
L_0269212C: ; // 0x269212c
|
|
/* 0269212C */ cpu->r[3] = cpu->r[26] + 0x00000070u;
|
|
/* 02692130 */ cpu->f[28] = cpu->f[23];
|
|
/* 02692134 */ Gambit_fn_02699250(cpu);
|
|
/* 02692138 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0269213C */ _t89 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269213C */ _t90 = _t89 & 0x00000001u;
|
|
/* 0269213C */ if (_t90) goto L_02692194; else goto L_02692140;
|
|
L_02692140: ; // 0x2692140
|
|
/* 02692140 */ goto L_02692164;
|
|
L_02692144: ; // 0x2692144
|
|
/* 02692144 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[22]);
|
|
/* 02692148 */ _t91 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02692148 */ _t92 = _t91 & 0x00000001u;
|
|
/* 02692148 */ if (_t92) goto L_0269214C; else goto L_02692150;
|
|
L_0269214C: ; // 0x269214c
|
|
/* 0269214C */ cpu->f[0] = cpu->f[22];
|
|
L_02692150: ; // 0x2692150
|
|
/* 02692150 */ cpu->r[3] = cpu->r[26] + 0x00000070u;
|
|
/* 02692154 */ cpu->f[28] = cpu->f[0];
|
|
/* 02692158 */ Gambit_fn_02699250(cpu);
|
|
/* 0269215C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02692160 */ _t93 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02692160 */ _t94 = _t93 & 0x00000001u;
|
|
/* 02692160 */ if (_t94) goto L_02692194; else goto L_02692164;
|
|
L_02692164: ; // 0x2692164
|
|
/* 02692164 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[21], cpu->f[28]);
|
|
/* 02692168 */ cpu->f[4] = cpu->f[28];
|
|
/* 0269216C */ cpu->f[3] = cpu->f[31];
|
|
/* 02692170 */ /* nop */
|
|
/* 02692174 */ cpu->f[1] = cpu->f[24];
|
|
/* 02692178 */ cpu->r[3] = cpu->r[26];
|
|
/* 0269217C */ cpu->f[2] = cpu->f[26];
|
|
/* 02692180 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02692184 */ cpu->r[5] = 0x00000000u;
|
|
/* 02692188 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 0269218C */ cpu->r[6] = cpu->r[12] ^ 0x00000001u;
|
|
/* 02692190 */ Gambit_fn_02691C1C(cpu);
|
|
L_02692194: ; // 0x2692194
|
|
/* 02692194 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[21], cpu->f[28]);
|
|
/* 02692198 */ _t95 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02692198 */ _t96 = _t95 & 0x00000001u;
|
|
/* 02692198 */ if (_t96) goto L_026921F4; else goto L_0269219C;
|
|
L_0269219C: ; // 0x269219c
|
|
/* 0269219C */ _t97 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269219C */ rbrew_write32(cpu->mem, _t97, cpu->r[27]);
|
|
/* 026921A0 */ /* nop */
|
|
/* 026921A4 */ /* nop */
|
|
/* 026921A8 */ _t98 = cpu->r[1] + 0x00000018u;
|
|
/* 026921A8 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t98);
|
|
/* 026921AC */ /* nop */
|
|
/* 026921B0 */ /* nop */
|
|
/* 026921B4 */ _t99 = cpu->r[25] + 0x0000024Cu;
|
|
/* 026921B4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t99);
|
|
/* 026921B8 */ cpu->r[7] = cpu->r[1] + 0x0000002Cu;
|
|
/* 026921BC */ _t100 = cpu->r[1] + 0x00000020u;
|
|
/* 026921BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t100);
|
|
/* 026921C0 */ cpu->f[6] = cpu->f[7] - cpu->f[8];
|
|
/* 026921C4 */ _t101 = cpu->r[1] + 0x00000024u;
|
|
/* 026921C4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t101);
|
|
/* 026921C8 */ cpu->f[1] = cpu->f[28];
|
|
/* 026921CC */ _t102 = cpu->r[1] + 0x0000002Cu;
|
|
/* 026921CC */ rbrew_write32(cpu->mem, _t102, cpu->r[0]);
|
|
/* 026921D0 */ cpu->r[3] = cpu->r[26];
|
|
/* 026921D4 */ _t103 = cpu->r[1] + 0x00000028u;
|
|
/* 026921D4 */ rbrew_write_f32(cpu->mem, _t103, cpu->f[6]);
|
|
/* 026921D8 */ _t104 = cpu->r[1] + 0x00000028u;
|
|
/* 026921D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t104);
|
|
/* 026921DC */ cpu->r[4] = cpu->r[24];
|
|
/* 026921E0 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 026921E4 */ _t105 = cpu->r[1] + 0x00000030u;
|
|
/* 026921E4 */ rbrew_write32(cpu->mem, _t105, cpu->r[12]);
|
|
/* 026921E8 */ cpu->r[6] = cpu->r[1] + 0x0000001Cu;
|
|
/* 026921EC */ _t106 = cpu->r[1] + 0x00000034u;
|
|
/* 026921EC */ rbrew_write32(cpu->mem, _t106, cpu->r[0]);
|
|
/* 026921F0 */ Gambit_fn_02691D38(cpu);
|
|
L_026921F4: ; // 0x26921f4
|
|
/* 026921F4 */ cpu->r[30] = cpu->r[30] + 0xFFFFFFFFu;
|
|
/* 026921F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 026921F8 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 026921FC */ _t107 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026921FC */ _t108 = _t107 & 0x00000001u;
|
|
/* 026921FC */ if (_t108) goto L_02692200; else goto L_02692060;
|
|
L_02692200: ; // 0x2692200
|
|
/* 02692200 */ cpu->r[31] = cpu->r[31] + 0xFFFFFFFFu;
|
|
/* 02692200 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02692204 */ cpu->r[27] = cpu->r[27] + 0x00000001u;
|
|
/* 02692208 */ _t109 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02692208 */ _t110 = _t109 & 0x00000001u;
|
|
/* 02692208 */ if (_t110) goto L_0269220C; else goto L_02692024;
|
|
L_0269220C: ; // 0x269220c
|
|
/* 0269220C */ cpu->r[24] = cpu->r[24] + 0x00000001u;
|
|
/* 02692210 */ Gambit_fn_027E3E2C(cpu);
|
|
/* 02692214 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], cpu->r[3]);
|
|
/* 02692218 */ _t111 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02692218 */ _t112 = _t111 & 0x00000001u;
|
|
/* 02692218 */ if (_t112) goto L_02691FE8; else goto L_0269221C;
|
|
L_0269221C: ; // 0x269221c
|
|
/* 0269221C */ /* nop */
|
|
/* 02692220 */ _t113 = cpu->r[1] + 0x000000A8u;
|
|
/* 02692220 */ cpu->f[18] = rbrew_read_f32(cpu->mem, _t113);
|
|
/* 02692224 */ _t114 = cpu->r[1] + 0x00000088u;
|
|
/* 02692224 */ cpu->f[16] = rbrew_read_f32(cpu->mem, _t114);
|
|
/* 02692228 */ _t115 = cpu->r[1] + 0x000000A0u;
|
|
/* 02692228 */ cpu->f[18] = rbrew_read_f64(cpu->mem, _t115);
|
|
/* 0269222C */ _t116 = cpu->r[1] + 0x000000C8u;
|
|
/* 0269222C */ cpu->f[20] = rbrew_read_f32(cpu->mem, _t116);
|
|
/* 02692230 */ _t117 = cpu->r[1] + 0x00000080u;
|
|
/* 02692230 */ cpu->f[16] = rbrew_read_f64(cpu->mem, _t117);
|
|
/* 02692234 */ _t118 = cpu->r[1] + 0x000000C0u;
|
|
/* 02692234 */ cpu->f[20] = rbrew_read_f64(cpu->mem, _t118);
|
|
/* 02692238 */ _t119 = cpu->r[1] + 0x00000098u;
|
|
/* 02692238 */ cpu->f[17] = rbrew_read_f32(cpu->mem, _t119);
|
|
/* 0269223C */ _t120 = cpu->r[1] + 0x000000E8u;
|
|
/* 0269223C */ cpu->f[22] = rbrew_read_f32(cpu->mem, _t120);
|
|
/* 02692240 */ _t121 = cpu->r[1] + 0x00000090u;
|
|
/* 02692240 */ cpu->f[17] = rbrew_read_f64(cpu->mem, _t121);
|
|
/* 02692244 */ _t122 = cpu->r[1] + 0x000000E0u;
|
|
/* 02692244 */ cpu->f[22] = rbrew_read_f64(cpu->mem, _t122);
|
|
/* 02692248 */ _t123 = cpu->r[1] + 0x000000B8u;
|
|
/* 02692248 */ cpu->f[19] = rbrew_read_f32(cpu->mem, _t123);
|
|
/* 0269224C */ _t124 = cpu->r[1] + 0x00000108u;
|
|
/* 0269224C */ cpu->f[24] = rbrew_read_f32(cpu->mem, _t124);
|
|
/* 02692250 */ _t125 = cpu->r[1] + 0x000000B0u;
|
|
/* 02692250 */ cpu->f[19] = rbrew_read_f64(cpu->mem, _t125);
|
|
/* 02692254 */ _t126 = cpu->r[1] + 0x00000100u;
|
|
/* 02692254 */ cpu->f[24] = rbrew_read_f64(cpu->mem, _t126);
|
|
/* 02692258 */ _t127 = cpu->r[1] + 0x000000D8u;
|
|
/* 02692258 */ cpu->f[21] = rbrew_read_f32(cpu->mem, _t127);
|
|
/* 0269225C */ _t128 = cpu->r[1] + 0x00000118u;
|
|
/* 0269225C */ cpu->f[25] = rbrew_read_f32(cpu->mem, _t128);
|
|
/* 02692260 */ _t129 = cpu->r[1] + 0x00000148u;
|
|
/* 02692260 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t129);
|
|
/* 02692264 */ _t130 = cpu->r[1] + 0x00000110u;
|
|
/* 02692264 */ cpu->f[25] = rbrew_read_f64(cpu->mem, _t130);
|
|
/* 02692268 */ _t131 = cpu->r[1] + 0x00000140u;
|
|
/* 02692268 */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t131);
|
|
/* 0269226C */ _t132 = cpu->r[1] + 0x00000078u;
|
|
/* 0269226C */ cpu->f[15] = rbrew_read_f32(cpu->mem, _t132);
|
|
/* 02692270 */ _t133 = cpu->r[1] + 0x00000138u;
|
|
/* 02692270 */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t133);
|
|
/* 02692274 */ _t134 = cpu->r[1] + 0x00000070u;
|
|
/* 02692274 */ cpu->f[15] = rbrew_read_f64(cpu->mem, _t134);
|
|
/* 02692278 */ _t135 = cpu->r[1] + 0x00000130u;
|
|
/* 02692278 */ cpu->f[27] = rbrew_read_f64(cpu->mem, _t135);
|
|
/* 0269227C */ _t136 = cpu->r[1] + 0x00000068u;
|
|
/* 0269227C */ cpu->f[14] = rbrew_read_f32(cpu->mem, _t136);
|
|
/* 02692280 */ _t137 = cpu->r[1] + 0x00000158u;
|
|
/* 02692280 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t137);
|
|
/* 02692284 */ _t138 = cpu->r[1] + 0x00000060u;
|
|
/* 02692284 */ cpu->f[14] = rbrew_read_f64(cpu->mem, _t138);
|
|
/* 02692288 */ _t139 = cpu->r[1] + 0x00000150u;
|
|
/* 02692288 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t139);
|
|
/* 0269228C */ _t140 = cpu->r[1] + 0x00000168u;
|
|
/* 0269228C */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t140);
|
|
/* 02692290 */ _t141 = cpu->r[1] + 0x00000178u;
|
|
/* 02692290 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t141);
|
|
/* 02692294 */ _t142 = cpu->r[1] + 0x00000160u;
|
|
/* 02692294 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t142);
|
|
/* 02692298 */ _t143 = cpu->r[1] + 0x00000170u;
|
|
/* 02692298 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t143);
|
|
/* 0269229C */ _t144 = cpu->r[1] + 0x000000D0u;
|
|
/* 0269229C */ cpu->f[21] = rbrew_read_f64(cpu->mem, _t144);
|
|
/* 026922A0 */ _t145 = cpu->r[1] + 0x000000F8u;
|
|
/* 026922A0 */ cpu->f[23] = rbrew_read_f32(cpu->mem, _t145);
|
|
/* 026922A4 */ _t146 = cpu->r[1] + 0x00000128u;
|
|
/* 026922A4 */ cpu->f[26] = rbrew_read_f32(cpu->mem, _t146);
|
|
/* 026922A8 */ _t147 = cpu->r[1] + 0x000000F0u;
|
|
/* 026922A8 */ cpu->f[23] = rbrew_read_f64(cpu->mem, _t147);
|
|
/* 026922AC */ _t148 = cpu->r[1] + 0x00000120u;
|
|
/* 026922AC */ cpu->f[26] = rbrew_read_f64(cpu->mem, _t148);
|
|
/* 026922B0 */ _t149 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026922B0 */ _t150 = _t149 & 0x00000001u;
|
|
/* 026922B0 */ if (_t150) goto L_026922B4; // else: addr-0 trap, fall-through
|
|
L_026922B4: ; // 0x26922b4
|
|
/* 026922B4 */ _t151 = cpu->r[1] + 0x00000184u;
|
|
/* 026922B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t151);
|
|
/* 026922B8 */ cpu->lr = cpu->r[0];
|
|
/* 026922BC */ cpu->r[1] = cpu->r[1] + 0x00000180u;
|
|
/* 026922C0 */ return;
|
|
}
|
|
|
|
// fn_026922C4 @ 0x26922c4
|
|
void Gambit_fn_026922C4(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_026922C4: ; // 0x26922c4
|
|
/* 026922C4 */ _t0 = cpu->r[3] + 0x000000F6u;
|
|
/* 026922C4 */ cpu->r[3] = rbrew_read16(cpu->mem, _t0);
|
|
/* 026922C8 */ return;
|
|
}
|
|
|
|
// fn_026922CC @ 0x26922cc
|
|
void Gambit_fn_026922CC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_026922CC: ; // 0x26922cc
|
|
/* 026922CC */ cpu->r[12] = cpu->r[3];
|
|
/* 026922D0 */ _t0 = cpu->r[12] + 0x000000F4u;
|
|
/* 026922D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 026922D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], cpu->r[0]);
|
|
/* 026922D8 */ _t1 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026922D8 */ _t2 = _t1 & 0x00000001u;
|
|
/* 026922D8 */ if (_t2) goto L_026922E4; else goto L_026922DC;
|
|
L_026922DC: ; // 0x26922dc
|
|
/* 026922DC */ cpu->r[3] = 0x00000000u;
|
|
/* 026922E0 */ return;
|
|
L_026922E4: ; // 0x26922e4
|
|
/* 026922E4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[0]);
|
|
/* 026922E8 */ cpu->r[3] = 0x00000000u;
|
|
/* 026922EC */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026922EC */ _t4 = _t3 & 0x00000001u;
|
|
/* 026922EC */ _t5 = _t4 ^ 0x00000001u;
|
|
/* 026922EC */ if (_t5) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 026922EC */ goto L_026922F0;
|
|
L_026922F0: ; // 0x26922f0
|
|
/* 026922F0 */ _t6 = cpu->r[12] + 0x000000FCu;
|
|
/* 026922F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 026922F4 */ cpu->r[10] = rbrew_rlwinm(cpu->r[4], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 026922F8 */ _t7 = cpu->r[10] + cpu->r[0];
|
|
/* 026922F8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 026922FC */ return;
|
|
}
|
|
|
|
// fn_02692300 @ 0x2692300
|
|
void Gambit_fn_02692300(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_02692300: ; // 0x2692300
|
|
/* 02692300 */ _t0 = cpu->r[4] + 0x00000000u;
|
|
/* 02692300 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02692304 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000009u);
|
|
/* 02692308 */ _t1 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02692308 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02692308 */ if (_t2) goto L_02692330; else goto L_0269230C;
|
|
L_0269230C: ; // 0x269230c
|
|
/* 0269230C */ cpu->r[12] = 0x100E0000u;
|
|
/* 02692310 */ _t3 = cpu->r[12] + 0x00003944u;
|
|
/* 02692310 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 02692314 */ cpu->r[12] = 0x100E0000u;
|
|
/* 02692318 */ _t4 = cpu->r[12] + 0x000039ACu;
|
|
/* 02692318 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 0269231C */ cpu->r[12] = 0x100E0000u;
|
|
/* 02692320 */ cpu->f[12] = cpu->f[12] - cpu->f[1];
|
|
/* 02692324 */ _t5 = cpu->r[12] + 0x00003958u;
|
|
/* 02692324 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 02692328 */ cpu->f[1] = fma(cpu->f[13], cpu->f[12], cpu->f[0]);
|
|
/* 0269232C */ return;
|
|
L_02692330: ; // 0x2692330
|
|
/* 02692330 */ cpu->r[12] = 0x100E0000u;
|
|
/* 02692334 */ _t6 = cpu->r[12] + 0x000038A4u;
|
|
/* 02692334 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 02692338 */ return;
|
|
}
|
|
|
|
// fn_0269233C @ 0x269233c
|
|
void Gambit_fn_0269233C(CPUState* cpu) {
|
|
L_02690424: ; // 0x2690424
|
|
/* 02690424 */ return;
|
|
L_0269233C: ; // 0x269233c
|
|
/* 0269233C */ goto L_02690424;
|
|
}
|
|
|
|
// fn_02692340 @ 0x2692340
|
|
void Gambit_fn_02692340(CPUState* cpu) {
|
|
uint32_t _t0, _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;
|
|
|
|
L_02692340: ; // 0x2692340
|
|
/* 02692340 */ _t0 = cpu->r[1] + 0xFFFFFF10u;
|
|
/* 02692340 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02692340 */ cpu->r[1] = _t0;
|
|
/* 02692344 */ cpu->r[0] = cpu->lr;
|
|
/* 02692348 */ _t1 = cpu->r[1] + 0x000000E0u;
|
|
/* 02692348 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0269234C */ /* nop */
|
|
/* 02692350 */ _t2 = cpu->r[1] + 0x000000D8u;
|
|
/* 02692350 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02692354 */ cpu->r[30] = cpu->r[4];
|
|
/* 02692358 */ _t3 = cpu->r[1] + 0x000000D0u;
|
|
/* 02692358 */ rbrew_write32(cpu->mem, _t3, cpu->r[28]);
|
|
/* 0269235C */ _t4 = cpu->r[1] + 0x000000E8u;
|
|
/* 0269235C */ rbrew_write_f32(cpu->mem, _t4, cpu->f[31]);
|
|
/* 02692360 */ _t5 = cpu->r[1] + 0x000000DCu;
|
|
/* 02692360 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02692364 */ _t6 = cpu->r[1] + 0x000000D4u;
|
|
/* 02692364 */ rbrew_write32(cpu->mem, _t6, cpu->r[29]);
|
|
/* 02692368 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269236C */ _t7 = cpu->r[1] + 0x000000F4u;
|
|
/* 0269236C */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 02692370 */ Gambit_fn_02690428(cpu);
|
|
/* 02692374 */ cpu->r[3] = cpu->r[31] + 0x00000070u;
|
|
/* 02692378 */ cpu->r[4] = cpu->r[30];
|
|
/* 0269237C */ Gambit_fn_026994B0(cpu);
|
|
/* 02692380 */ _t8 = cpu->r[30] + 0x00000000u;
|
|
/* 02692380 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02692384 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000006u);
|
|
/* 02692388 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02692388 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02692388 */ if (_t10) goto L_0269238C; else goto L_026924D4;
|
|
L_0269238C: ; // 0x269238c
|
|
/* 0269238C */ cpu->r[3] = cpu->r[1] + 0x00000054u;
|
|
/* 02692390 */ Gambit_fn_0281E19C(cpu);
|
|
/* 02692394 */ cpu->r[0] = 0x00000001u;
|
|
/* 02692398 */ cpu->r[12] = 0x00000000u;
|
|
/* 0269239C */ _t11 = cpu->r[1] + 0x00000054u;
|
|
/* 0269239C */ rbrew_write8(cpu->mem, _t11, (uint8_t)cpu->r[0]);
|
|
/* 026923A0 */ cpu->r[11] = 0x00000002u;
|
|
/* 026923A4 */ _t12 = cpu->r[1] + 0x00000055u;
|
|
/* 026923A4 */ rbrew_write8(cpu->mem, _t12, (uint8_t)cpu->r[12]);
|
|
/* 026923A8 */ cpu->r[3] = cpu->r[1] + 0x00000054u;
|
|
/* 026923AC */ _t13 = cpu->r[1] + 0x0000005Cu;
|
|
/* 026923AC */ rbrew_write32(cpu->mem, _t13, cpu->r[11]);
|
|
/* 026923B0 */ Gambit_fn_0281E2C8(cpu);
|
|
/* 026923B4 */ cpu->r[3] = cpu->r[31] + 0x00000070u;
|
|
/* 026923B8 */ Gambit_fn_02699250(cpu);
|
|
/* 026923BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 026923C0 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026923C0 */ _t15 = _t14 & 0x00000001u;
|
|
/* 026923C0 */ if (_t15) goto L_026924D4; else goto L_026923C4;
|
|
L_026923C4: ; // 0x26923c4
|
|
/* 026923C4 */ _t16 = cpu->r[31] + 0x000000F4u;
|
|
/* 026923C4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t16);
|
|
/* 026923C8 */ cpu->r[28] = 0x00000000u;
|
|
/* 026923CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], cpu->r[7]);
|
|
/* 026923D0 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026923D0 */ _t18 = _t17 & 0x00000001u;
|
|
/* 026923D0 */ if (_t18) goto L_026923D4; else goto L_026924D4;
|
|
L_026923D4: ; // 0x26923d4
|
|
/* 026923D4 */ cpu->r[6] = 0x100E0000u;
|
|
/* 026923D8 */ cpu->r[30] = 0x101F0000u;
|
|
/* 026923DC */ _t19 = cpu->r[6] + 0x000038A4u;
|
|
/* 026923DC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 026923E0 */ cpu->r[29] = 0x00000000u;
|
|
/* 026923E4 */ cpu->r[30] = cpu->r[30] + 0x00006368u;
|
|
L_026923E8: ; // 0x26923e8
|
|
/* 026923E8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[7]);
|
|
/* 026923EC */ cpu->r[11] = 0x00000000u;
|
|
/* 026923F0 */ _t20 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026923F0 */ _t21 = _t20 & 0x00000001u;
|
|
/* 026923F0 */ if (_t21) goto L_026923F4; else goto L_026923FC;
|
|
L_026923F4: ; // 0x26923f4
|
|
/* 026923F4 */ _t22 = cpu->r[31] + 0x000000FCu;
|
|
/* 026923F4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t22);
|
|
/* 026923F8 */ _t23 = cpu->r[5] + cpu->r[29];
|
|
/* 026923F8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t23);
|
|
L_026923FC: ; // 0x26923fc
|
|
/* 026923FC */ _t24 = cpu->r[11] + 0x00000020u;
|
|
/* 026923FC */ cpu->r[6] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02692400 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0xFFFFFFFFu);
|
|
/* 02692404 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02692404 */ _t26 = _t25 & 0x00000001u;
|
|
/* 02692404 */ if (_t26) goto L_026924C0; else goto L_02692408;
|
|
L_02692408: ; // 0x2692408
|
|
/* 02692408 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[7]);
|
|
/* 0269240C */ cpu->r[5] = 0x00000000u;
|
|
/* 02692410 */ _t27 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02692410 */ _t28 = _t27 & 0x00000001u;
|
|
/* 02692410 */ if (_t28) goto L_02692414; else goto L_0269241C;
|
|
L_02692414: ; // 0x2692414
|
|
/* 02692414 */ _t29 = cpu->r[31] + 0x000000FCu;
|
|
/* 02692414 */ cpu->r[8] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02692418 */ _t30 = cpu->r[8] + cpu->r[29];
|
|
/* 02692418 */ cpu->r[5] = rbrew_read32(cpu->mem, _t30);
|
|
L_0269241C: ; // 0x269241c
|
|
/* 0269241C */ _t31 = cpu->r[5] + 0x0000001Cu;
|
|
/* 0269241C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 02692420 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[31]);
|
|
/* 02692424 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02692424 */ _t33 = _t32 & 0x00000001u;
|
|
/* 02692424 */ if (_t33) goto L_026924C0; else goto L_02692428;
|
|
L_02692428: ; // 0x2692428
|
|
/* 02692428 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[7]);
|
|
/* 0269242C */ cpu->r[8] = 0x00000000u;
|
|
/* 02692430 */ _t34 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02692430 */ _t35 = _t34 & 0x00000001u;
|
|
/* 02692430 */ if (_t35) goto L_02692434; else goto L_0269243C;
|
|
L_02692434: ; // 0x2692434
|
|
/* 02692434 */ _t36 = cpu->r[31] + 0x000000FCu;
|
|
/* 02692434 */ cpu->r[9] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02692438 */ _t37 = cpu->r[9] + cpu->r[29];
|
|
/* 02692438 */ cpu->r[8] = rbrew_read32(cpu->mem, _t37);
|
|
L_0269243C: ; // 0x269243c
|
|
/* 0269243C */ _t38 = cpu->r[8] + 0x00000000u;
|
|
/* 0269243C */ cpu->r[10] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02692440 */ cpu->r[9] = 0x00000000u;
|
|
/* 02692444 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[7]);
|
|
/* 02692448 */ _t39 = cpu->r[1] + 0x00000008u;
|
|
/* 02692448 */ rbrew_write32(cpu->mem, _t39, cpu->r[10]);
|
|
/* 0269244C */ _t40 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269244C */ _t41 = _t40 & 0x00000001u;
|
|
/* 0269244C */ if (_t41) goto L_02692450; else goto L_02692458;
|
|
L_02692450: ; // 0x2692450
|
|
/* 02692450 */ _t42 = cpu->r[31] + 0x000000FCu;
|
|
/* 02692450 */ cpu->r[11] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02692454 */ _t43 = cpu->r[11] + cpu->r[29];
|
|
/* 02692454 */ cpu->r[9] = rbrew_read32(cpu->mem, _t43);
|
|
L_02692458: ; // 0x2692458
|
|
/* 02692458 */ _t44 = cpu->r[9] + 0x0000001Cu;
|
|
/* 02692458 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 0269245C */ cpu->r[3] = cpu->r[31];
|
|
/* 02692460 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02692464 */ Gambit_fn_02692300(cpu);
|
|
/* 02692468 */ cpu->f[11] = cpu->f[1] + cpu->f[1];
|
|
/* 0269246C */ /* nop */
|
|
/* 02692470 */ _t45 = cpu->r[30] + 0x00000008u;
|
|
/* 02692470 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t45);
|
|
/* 02692474 */ /* nop */
|
|
/* 02692478 */ /* nop */
|
|
/* 0269247C */ _t46 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269247C */ cpu->r[0] = rbrew_read32(cpu->mem, _t46);
|
|
/* 02692480 */ cpu->f[11] = cpu->f[12] * cpu->f[11];
|
|
/* 02692484 */ _t47 = cpu->r[1] + 0x00000010u;
|
|
/* 02692484 */ cpu->r[12] = rbrew_read32(cpu->mem, _t47);
|
|
/* 02692488 */ _t48 = cpu->r[1] + 0x00000018u;
|
|
/* 02692488 */ rbrew_write32(cpu->mem, _t48, cpu->r[0]);
|
|
/* 0269248C */ _t49 = cpu->r[1] + 0x00000014u;
|
|
/* 0269248C */ rbrew_write_f32(cpu->mem, _t49, cpu->f[11]);
|
|
/* 02692490 */ _t50 = cpu->r[1] + 0x00000014u;
|
|
/* 02692490 */ cpu->r[0] = rbrew_read32(cpu->mem, _t50);
|
|
/* 02692494 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[7]);
|
|
/* 02692498 */ _t51 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02692498 */ rbrew_write32(cpu->mem, _t51, cpu->r[12]);
|
|
/* 0269249C */ cpu->r[7] = 0x00000000u;
|
|
/* 026924A0 */ _t52 = cpu->r[1] + 0x00000020u;
|
|
/* 026924A0 */ rbrew_write32(cpu->mem, _t52, cpu->r[0]);
|
|
/* 026924A4 */ _t53 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026924A4 */ _t54 = _t53 & 0x00000001u;
|
|
/* 026924A4 */ if (_t54) goto L_026924A8; else goto L_026924B0;
|
|
L_026924A8: ; // 0x26924a8
|
|
/* 026924A8 */ _t55 = cpu->r[31] + 0x000000FCu;
|
|
/* 026924A8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t55);
|
|
/* 026924AC */ _t56 = cpu->r[6] + cpu->r[29];
|
|
/* 026924AC */ cpu->r[7] = rbrew_read32(cpu->mem, _t56);
|
|
L_026924B0: ; // 0x26924b0
|
|
/* 026924B0 */ cpu->r[5] = cpu->r[7] + 0x00000004u;
|
|
/* 026924B4 */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 026924B8 */ cpu->r[3] = cpu->r[1] + 0x00000024u;
|
|
/* 026924BC */ Gambit_fn_020FF2BC(cpu);
|
|
L_026924C0: ; // 0x26924c0
|
|
/* 026924C0 */ _t57 = cpu->r[31] + 0x000000F4u;
|
|
/* 026924C0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t57);
|
|
/* 026924C4 */ cpu->r[28] = cpu->r[28] + 0x00000001u;
|
|
/* 026924C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], cpu->r[7]);
|
|
/* 026924CC */ cpu->r[29] = cpu->r[29] + 0x00000004u;
|
|
/* 026924D0 */ _t58 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026924D0 */ _t59 = _t58 & 0x00000001u;
|
|
/* 026924D0 */ if (_t59) goto L_026923E8; else goto L_026924D4;
|
|
L_026924D4: ; // 0x26924d4
|
|
/* 026924D4 */ _t60 = cpu->r[1] + 0x000000D0u;
|
|
/* 026924D4 */ cpu->r[28] = rbrew_read32(cpu->mem, _t60);
|
|
/* 026924D8 */ _t61 = cpu->r[1] + 0x000000D4u;
|
|
/* 026924D8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t61);
|
|
/* 026924DC */ _t62 = cpu->r[1] + 0x000000E8u;
|
|
/* 026924DC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 026924E0 */ _t63 = cpu->r[1] + 0x000000D8u;
|
|
/* 026924E0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t63);
|
|
/* 026924E4 */ _t64 = cpu->r[1] + 0x000000E0u;
|
|
/* 026924E4 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t64);
|
|
/* 026924E8 */ _t65 = cpu->r[1] + 0x000000DCu;
|
|
/* 026924E8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t65);
|
|
/* 026924EC */ _t66 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026924EC */ _t67 = _t66 & 0x00000001u;
|
|
/* 026924EC */ if (_t67) goto L_026924F0; // else: addr-0 trap, fall-through
|
|
L_026924F0: ; // 0x26924f0
|
|
/* 026924F0 */ _t68 = cpu->r[1] + 0x000000F4u;
|
|
/* 026924F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t68);
|
|
/* 026924F4 */ cpu->lr = cpu->r[0];
|
|
/* 026924F8 */ cpu->r[1] = cpu->r[1] + 0x000000F0u;
|
|
/* 026924FC */ return;
|
|
}
|
|
|
|
// fn_02692500 @ 0x2692500
|
|
void Gambit_fn_02692500(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02692500: ; // 0x2692500
|
|
/* 02692500 */ cpu->r[12] = 0x100E0000u;
|
|
/* 02692504 */ _t0 = cpu->r[12] + 0x000038A4u;
|
|
/* 02692504 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 02692508 */ cpu->r[12] = 0x100E0000u;
|
|
/* 0269250C */ cpu->r[11] = 0x101F0000u;
|
|
/* 02692510 */ _t1 = cpu->r[12] + 0x000039B0u;
|
|
/* 02692510 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 02692514 */ cpu->r[12] = 0x100E0000u;
|
|
/* 02692518 */ _t2 = cpu->r[11] + 0xFFFFD87Cu;
|
|
/* 02692518 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[13]);
|
|
/* 02692518 */ cpu->r[11] = _t2;
|
|
/* 0269251C */ _t3 = cpu->r[12] + 0x000039B4u;
|
|
/* 0269251C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 02692520 */ _t4 = cpu->r[11] + 0x00000004u;
|
|
/* 02692520 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[12]);
|
|
/* 02692524 */ _t5 = cpu->r[11] + 0x00000008u;
|
|
/* 02692524 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[0]);
|
|
/* 02692528 */ return;
|
|
}
|
|
|
|
// fn_0269252C @ 0x269252c
|
|
void Gambit_fn_0269252C(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_0269252C: ; // 0x269252c
|
|
/* 0269252C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02692530 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02692530 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02692530 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02692530 */ goto L_02692534;
|
|
L_02692534: ; // 0x2692534
|
|
/* 02692534 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02692534 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02692538 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02692538 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02692538 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02692538 */ goto L_0269253C;
|
|
L_0269253C: ; // 0x269253c
|
|
/* 0269253C */ 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_02692540 @ 0x2692540
|
|
void Gambit_fn_02692540(CPUState* cpu) {
|
|
L_02692540: ; // 0x2692540
|
|
/* 02692540 */ return;
|
|
}
|
|
|
|
// fn_02692544 @ 0x2692544
|
|
void Gambit_fn_02692544(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_02692544: ; // 0x2692544
|
|
/* 02692544 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02692548 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02692548 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02692548 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02692548 */ goto L_0269254C;
|
|
L_0269254C: ; // 0x269254c
|
|
/* 0269254C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0269254C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02692550 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02692550 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02692550 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02692550 */ goto L_02692554;
|
|
L_02692554: ; // 0x2692554
|
|
/* 02692554 */ 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_02692558 @ 0x2692558
|
|
void Gambit_fn_02692558(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_02692558: ; // 0x2692558
|
|
/* 02692558 */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 02692558 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0269255C */ _t1 = cpu->r[3] + 0x00000008u;
|
|
/* 0269255C */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02692560 */ cpu->r[12] = cpu->r[11] + cpu->r[12];
|
|
/* 02692564 */ cpu->r[11] = 0x10110000u;
|
|
/* 02692568 */ _t2 = cpu->r[11] + 0x00007399u;
|
|
/* 02692568 */ cpu->r[0] = rbrew_read8(cpu->mem, _t2);
|
|
/* 0269256C */ _t3 = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 0269256C */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]);
|
|
/* 02692570 */ return;
|
|
}
|
|
|
|
// fn_02692574 @ 0x2692574
|
|
void Gambit_fn_02692574(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_02692574: ; // 0x2692574
|
|
/* 02692574 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02692578 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02692578 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02692578 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02692578 */ goto L_0269257C;
|
|
L_0269257C: ; // 0x269257c
|
|
/* 0269257C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0269257C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02692580 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02692580 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02692580 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02692580 */ goto L_02692584;
|
|
L_02692584: ; // 0x2692584
|
|
/* 02692584 */ 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_02692588 @ 0x2692588
|
|
void Gambit_fn_02692588(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_02692588: ; // 0x2692588
|
|
/* 02692588 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0269258C */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269258C */ _t1 = _t0 & 0x00000001u;
|
|
/* 0269258C */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0269258C */ goto L_02692590;
|
|
L_02692590: ; // 0x2692590
|
|
/* 02692590 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02692590 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02692594 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02692594 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02692594 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02692594 */ goto L_02692598;
|
|
L_02692598: ; // 0x2692598
|
|
/* 02692598 */ 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_0269259C @ 0x269259c
|
|
void Gambit_fn_0269259C(CPUState* cpu) {
|
|
L_0269259C: ; // 0x269259c
|
|
/* 0269259C */ return;
|
|
}
|
|
|
|
// fn_026925A0 @ 0x26925a0
|
|
void Gambit_fn_026925A0(CPUState* cpu) {
|
|
L_026925A0: ; // 0x26925a0
|
|
/* 026925A0 */ return;
|
|
}
|
|
|
|
// fn_026925A4 @ 0x26925a4
|
|
void Gambit_fn_026925A4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_026925A4: ; // 0x26925a4
|
|
/* 026925A4 */ cpu->r[9] = 0x101D0000u;
|
|
/* 026925A8 */ _t0 = cpu->r[9] + 0x00000E10u;
|
|
/* 026925A8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 026925A8 */ cpu->r[9] = _t0;
|
|
/* 026925AC */ cpu->r[12] = 0x101D0000u;
|
|
/* 026925B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 026925B4 */ cpu->r[12] = cpu->r[12] + 0x00000E38u;
|
|
/* 026925B8 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026925B8 */ _t2 = _t1 & 0x00000001u;
|
|
/* 026925B8 */ if (_t2) goto L_026925BC; else goto L_026925D0;
|
|
L_026925BC: ; // 0x26925bc
|
|
/* 026925BC */ cpu->r[7] = 0x100E0000u;
|
|
/* 026925C0 */ cpu->r[0] = 0x00000001u;
|
|
/* 026925C4 */ cpu->r[7] = cpu->r[7] + 0x00003918u;
|
|
/* 026925C8 */ _t3 = cpu->r[9] + 0x00000000u;
|
|
/* 026925C8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 026925CC */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 026925CC */ rbrew_write32(cpu->mem, _t4, cpu->r[7]);
|
|
L_026925D0: ; // 0x26925d0
|
|
/* 026925D0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 026925D4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026925D4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 026925D4 */ if (_t6) goto L_026925D8; else goto L_026925E0;
|
|
L_026925D8: ; // 0x26925d8
|
|
/* 026925D8 */ cpu->r[3] = 0x00000001u;
|
|
/* 026925DC */ return;
|
|
L_026925E0: ; // 0x26925e0
|
|
/* 026925E0 */ cpu->r[7] = 0x101D0000u;
|
|
/* 026925E4 */ _t7 = cpu->r[7] + 0x00000DD8u;
|
|
/* 026925E4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 026925E4 */ cpu->r[7] = _t7;
|
|
/* 026925E8 */ cpu->r[11] = 0x101D0000u;
|
|
/* 026925EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 026925F0 */ cpu->r[11] = cpu->r[11] + 0x00000DDCu;
|
|
/* 026925F4 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026925F4 */ _t9 = _t8 & 0x00000001u;
|
|
/* 026925F4 */ if (_t9) goto L_026925F8; else goto L_0269260C;
|
|
L_026925F8: ; // 0x26925f8
|
|
/* 026925F8 */ cpu->r[0] = 0x100E0000u;
|
|
/* 026925FC */ cpu->r[9] = 0x00000001u;
|
|
/* 02692600 */ cpu->r[0] = cpu->r[0] + 0x000038A8u;
|
|
/* 02692604 */ _t10 = cpu->r[7] + 0x00000000u;
|
|
/* 02692604 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 02692608 */ _t11 = cpu->r[11] + 0x00000000u;
|
|
/* 02692608 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_0269260C: ; // 0x269260c
|
|
/* 0269260C */ cpu->r[0] = cpu->r[4] ^ cpu->r[11];
|
|
/* 02692610 */ cpu->r[8] = rbrew_clz32(cpu->r[0]);
|
|
/* 02692614 */ cpu->r[3] = rbrew_rlwinm(cpu->r[8], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
/* 02692618 */ return;
|
|
}
|
|
|
|
// fn_0269261C @ 0x269261c
|
|
void Gambit_fn_0269261C(CPUState* cpu) {
|
|
uint32_t _t0, _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_0269261C: ; // 0x269261c
|
|
/* 0269261C */ _t0 = cpu->r[1] + 0xFFFFFF70u;
|
|
/* 0269261C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269261C */ cpu->r[1] = _t0;
|
|
/* 02692620 */ _t1 = cpu->r[1] + 0x00000060u;
|
|
/* 02692620 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[29]);
|
|
/* 02692624 */ /* nop */
|
|
/* 02692628 */ _t2 = cpu->r[1] + 0x00000070u;
|
|
/* 02692628 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[30]);
|
|
/* 0269262C */ /* nop */
|
|
/* 02692630 */ _t3 = cpu->r[1] + 0x00000068u;
|
|
/* 02692630 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[29]);
|
|
/* 02692634 */ _t4 = cpu->r[1] + 0x00000078u;
|
|
/* 02692634 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[30]);
|
|
/* 02692638 */ _t5 = cpu->r[1] + 0x00000080u;
|
|
/* 02692638 */ rbrew_write_f64(cpu->mem, _t5, cpu->f[31]);
|
|
/* 0269263C */ cpu->r[0] = cpu->lr;
|
|
/* 02692640 */ /* nop */
|
|
/* 02692644 */ /* nop */
|
|
/* 02692648 */ _t6 = cpu->r[1] + 0x00000088u;
|
|
/* 02692648 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[31]);
|
|
/* 0269264C */ cpu->r[31] = cpu->r[3];
|
|
/* 0269264C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02692650 */ _t7 = cpu->r[1] + 0x00000094u;
|
|
/* 02692650 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 02692654 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02692654 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02692654 */ if (_t9) goto L_02692658; else goto L_02692668;
|
|
L_02692658: ; // 0x2692658
|
|
/* 02692658 */ cpu->r[3] = 0x000000A4u;
|
|
/* 0269265C */ Gambit_fn_02801A78(cpu);
|
|
/* 02692660 */ cpu->r[31] = cpu->r[3];
|
|
/* 02692660 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02692664 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02692664 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02692664 */ if (_t11) goto L_02692AFC; else goto L_02692668;
|
|
L_02692668: ; // 0x2692668
|
|
/* 02692668 */ cpu->r[12] = 0x100E0000u;
|
|
/* 0269266C */ cpu->r[3] = cpu->r[31];
|
|
/* 02692670 */ cpu->r[12] = cpu->r[12] + 0x00003A20u;
|
|
/* 02692674 */ cpu->r[0] = 0x100E0000u;
|
|
/* 02692678 */ _t12 = cpu->r[1] + 0x00000048u;
|
|
/* 02692678 */ rbrew_write32(cpu->mem, _t12, cpu->r[12]);
|
|
/* 0269267C */ cpu->r[0] = cpu->r[0] + 0x00003A68u;
|
|
/* 02692680 */ cpu->r[4] = cpu->r[1] + 0x00000044u;
|
|
/* 02692684 */ _t13 = cpu->r[1] + 0x00000044u;
|
|
/* 02692684 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02692688 */ Gambit_fn_02690118(cpu);
|
|
/* 0269268C */ cpu->r[7] = 0x100E0000u;
|
|
/* 02692690 */ cpu->r[29] = 0x00000000u;
|
|
/* 02692694 */ cpu->r[7] = cpu->r[7] + 0x00003AA0u;
|
|
/* 02692698 */ _t14 = cpu->r[31] + 0x00000070u;
|
|
/* 02692698 */ rbrew_write8(cpu->mem, _t14, (uint8_t)cpu->r[29]);
|
|
/* 0269269C */ cpu->r[30] = cpu->r[31] + 0x00000074u;
|
|
/* 0269269C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 026926A0 */ _t15 = cpu->r[31] + 0x00000004u;
|
|
/* 026926A0 */ rbrew_write32(cpu->mem, _t15, cpu->r[7]);
|
|
/* 026926A4 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026926A4 */ _t17 = _t16 & 0x00000001u;
|
|
/* 026926A4 */ if (_t17) goto L_026926A8; else goto L_026926B8;
|
|
L_026926A8: ; // 0x26926a8
|
|
/* 026926A8 */ cpu->r[3] = 0x00000014u;
|
|
/* 026926AC */ Gambit_fn_02801A78(cpu);
|
|
/* 026926B0 */ cpu->r[30] = cpu->r[3];
|
|
/* 026926B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 026926B4 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026926B4 */ _t19 = _t18 & 0x00000001u;
|
|
/* 026926B4 */ if (_t19) goto L_026926E4; else goto L_026926B8;
|
|
L_026926B8: ; // 0x26926b8
|
|
/* 026926B8 */ cpu->r[3] = cpu->r[30];
|
|
/* 026926B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 026926BC */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026926BC */ _t21 = _t20 & 0x00000001u;
|
|
/* 026926BC */ if (_t21) goto L_026926C0; else goto L_026926D0;
|
|
L_026926C0: ; // 0x26926c0
|
|
/* 026926C0 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 026926C4 */ Gambit_fn_02801A78(cpu);
|
|
/* 026926C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 026926CC */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026926CC */ _t23 = _t22 & 0x00000001u;
|
|
/* 026926CC */ if (_t23) goto L_026926DC; else goto L_026926D0;
|
|
L_026926D0: ; // 0x26926d0
|
|
/* 026926D0 */ _t24 = cpu->r[3] + 0x00000004u;
|
|
/* 026926D0 */ rbrew_write32(cpu->mem, _t24, cpu->r[29]);
|
|
/* 026926D4 */ _t25 = cpu->r[3] + 0x00000008u;
|
|
/* 026926D4 */ rbrew_write32(cpu->mem, _t25, cpu->r[29]);
|
|
/* 026926D8 */ _t26 = cpu->r[3] + 0x00000000u;
|
|
/* 026926D8 */ rbrew_write32(cpu->mem, _t26, cpu->r[29]);
|
|
L_026926DC: ; // 0x26926dc
|
|
/* 026926DC */ _t27 = cpu->r[30] + 0x0000000Cu;
|
|
/* 026926DC */ rbrew_write32(cpu->mem, _t27, cpu->r[29]);
|
|
/* 026926E0 */ _t28 = cpu->r[30] + 0x00000010u;
|
|
/* 026926E0 */ rbrew_write32(cpu->mem, _t28, cpu->r[29]);
|
|
L_026926E4: ; // 0x26926e4
|
|
/* 026926E4 */ cpu->r[30] = cpu->r[31] + 0x00000088u;
|
|
/* 026926E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 026926E8 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026926E8 */ _t30 = _t29 & 0x00000001u;
|
|
/* 026926E8 */ if (_t30) goto L_026926EC; else goto L_026926FC;
|
|
L_026926EC: ; // 0x26926ec
|
|
/* 026926EC */ cpu->r[3] = 0x00000014u;
|
|
/* 026926F0 */ Gambit_fn_02801A78(cpu);
|
|
/* 026926F4 */ cpu->r[30] = cpu->r[3];
|
|
/* 026926F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 026926F8 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026926F8 */ _t32 = _t31 & 0x00000001u;
|
|
/* 026926F8 */ if (_t32) goto L_02692728; else goto L_026926FC;
|
|
L_026926FC: ; // 0x26926fc
|
|
/* 026926FC */ cpu->r[3] = cpu->r[30];
|
|
/* 026926FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02692700 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02692700 */ _t34 = _t33 & 0x00000001u;
|
|
/* 02692700 */ if (_t34) goto L_02692704; else goto L_02692714;
|
|
L_02692704: ; // 0x2692704
|
|
/* 02692704 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02692708 */ Gambit_fn_02801A78(cpu);
|
|
/* 0269270C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02692710 */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02692710 */ _t36 = _t35 & 0x00000001u;
|
|
/* 02692710 */ if (_t36) goto L_02692720; else goto L_02692714;
|
|
L_02692714: ; // 0x2692714
|
|
/* 02692714 */ _t37 = cpu->r[3] + 0x00000004u;
|
|
/* 02692714 */ rbrew_write32(cpu->mem, _t37, cpu->r[29]);
|
|
/* 02692718 */ _t38 = cpu->r[3] + 0x00000008u;
|
|
/* 02692718 */ rbrew_write32(cpu->mem, _t38, cpu->r[29]);
|
|
/* 0269271C */ _t39 = cpu->r[3] + 0x00000000u;
|
|
/* 0269271C */ rbrew_write32(cpu->mem, _t39, cpu->r[29]);
|
|
L_02692720: ; // 0x2692720
|
|
/* 02692720 */ _t40 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02692720 */ rbrew_write32(cpu->mem, _t40, cpu->r[29]);
|
|
/* 02692724 */ _t41 = cpu->r[30] + 0x00000010u;
|
|
/* 02692724 */ rbrew_write32(cpu->mem, _t41, cpu->r[29]);
|
|
L_02692728: ; // 0x2692728
|
|
/* 02692728 */ _t42 = cpu->r[31] + 0x0000009Cu;
|
|
/* 02692728 */ rbrew_write32(cpu->mem, _t42, cpu->r[29]);
|
|
/* 0269272C */ cpu->r[3] = 0x000001C0u;
|
|
/* 02692730 */ cpu->r[4] = 0x00000000u;
|
|
/* 02692734 */ _t43 = cpu->r[31] + 0x000000A0u;
|
|
/* 02692734 */ rbrew_write16(cpu->mem, _t43, (uint16_t)cpu->r[29]);
|
|
/* 02692738 */ cpu->r[5] = 0x00000004u;
|
|
/* 0269273C */ _t44 = cpu->r[31] + 0x000000A2u;
|
|
/* 0269273C */ rbrew_write16(cpu->mem, _t44, (uint16_t)cpu->r[29]);
|
|
/* 02692740 */ Gambit_fn_02801ADC(cpu);
|
|
/* 02692744 */ cpu->r[12] = cpu->r[3];
|
|
/* 02692744 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02692748 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02692748 */ _t46 = _t45 & 0x00000001u;
|
|
/* 02692748 */ if (_t46) goto L_02692788; else goto L_0269274C;
|
|
L_0269274C: ; // 0x269274c
|
|
/* 0269274C */ cpu->r[0] = 0x00000007u;
|
|
/* 02692750 */ cpu->r[6] = 0x00000000u;
|
|
/* 02692754 */ cpu->r[7] = cpu->r[12] + 0x00000034u;
|
|
/* 02692758 */ cpu->ctr = cpu->r[0];
|
|
/* 0269275C */ _t47 = cpu->r[31] + 0x00000080u;
|
|
/* 0269275C */ rbrew_write32(cpu->mem, _t47, cpu->r[12]);
|
|
L_02692760: ; // 0x2692760
|
|
/* 02692760 */ _t48 = cpu->r[12] + cpu->r[6];
|
|
/* 02692760 */ rbrew_write32(cpu->mem, _t48, cpu->r[7]);
|
|
/* 02692764 */ cpu->r[6] = cpu->r[6] + 0x00000034u;
|
|
/* 02692768 */ cpu->r[7] = cpu->r[7] + 0x00000034u;
|
|
/* 0269276C */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0269276C */ _t49 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0269276C */ _t50 = _t49 >> (0x00000002u & 31u);
|
|
/* 0269276C */ _t51 = _t50 & 0x00000001u;
|
|
/* 0269276C */ if (_t51) goto L_02692760; else goto L_02692770;
|
|
L_02692770: ; // 0x2692770
|
|
/* 02692770 */ _t52 = cpu->r[12] + 0x0000016Cu;
|
|
/* 02692770 */ rbrew_write32(cpu->mem, _t52, cpu->r[29]);
|
|
/* 02692774 */ cpu->r[5] = cpu->r[12] + 0x000001A0u;
|
|
/* 02692778 */ cpu->r[3] = cpu->r[31] + 0x00000074u;
|
|
/* 0269277C */ cpu->r[4] = 0x00000008u;
|
|
/* 02692780 */ _t53 = cpu->r[31] + 0x00000084u;
|
|
/* 02692780 */ rbrew_write32(cpu->mem, _t53, cpu->r[12]);
|
|
/* 02692784 */ Gambit_fn_028023A8(cpu);
|
|
L_02692788: ; // 0x2692788
|
|
/* 02692788 */ cpu->r[5] = 0x100E0000u;
|
|
/* 0269278C */ _t54 = cpu->r[31] + 0x00000074u;
|
|
/* 0269278C */ cpu->r[8] = rbrew_read32(cpu->mem, _t54);
|
|
/* 02692790 */ cpu->r[4] = 0x100E0000u;
|
|
/* 02692794 */ _t55 = cpu->r[5] + 0x00003A48u;
|
|
/* 02692794 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 02692798 */ cpu->r[28] = 0x00000000u;
|
|
/* 0269279C */ _t56 = cpu->r[4] + 0x00003A4Cu;
|
|
/* 0269279C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 026927A0 */ cpu->r[27] = 0x00000008u;
|
|
L_026927A4: ; // 0x26927a4
|
|
/* 026927A4 */ _t57 = cpu->r[31] + 0x00000078u;
|
|
/* 026927A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t57);
|
|
/* 026927A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], cpu->r[0]);
|
|
/* 026927AC */ _t58 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026927AC */ _t59 = _t58 & 0x00000001u;
|
|
/* 026927AC */ if (_t59) goto L_026927B0; else goto L_02692850;
|
|
L_026927B0: ; // 0x26927b0
|
|
/* 026927B0 */ _t60 = cpu->r[31] + 0x00000080u;
|
|
/* 026927B0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t60);
|
|
/* 026927B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 026927B8 */ _t61 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026927B8 */ _t62 = _t61 & 0x00000001u;
|
|
/* 026927B8 */ if (_t62) goto L_026927C4; else goto L_026927BC;
|
|
L_026927BC: ; // 0x26927bc
|
|
/* 026927BC */ _t63 = cpu->r[30] + 0x00000000u;
|
|
/* 026927BC */ cpu->r[7] = rbrew_read32(cpu->mem, _t63);
|
|
/* 026927C0 */ _t64 = cpu->r[31] + 0x00000080u;
|
|
/* 026927C0 */ rbrew_write32(cpu->mem, _t64, cpu->r[7]);
|
|
L_026927C4: ; // 0x26927c4
|
|
/* 026927C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 026927C8 */ _t65 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026927C8 */ _t66 = _t65 & 0x00000001u;
|
|
/* 026927C8 */ if (_t66) goto L_02692824; else goto L_026927CC;
|
|
L_026927CC: ; // 0x26927cc
|
|
/* 026927CC */ cpu->r[11] = cpu->r[30];
|
|
/* 026927CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 026927D0 */ _t67 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026927D0 */ _t68 = _t67 & 0x00000001u;
|
|
/* 026927D0 */ if (_t68) goto L_026927D4; else goto L_026927E4;
|
|
L_026927D4: ; // 0x26927d4
|
|
/* 026927D4 */ cpu->r[3] = 0x00000018u;
|
|
/* 026927D8 */ Gambit_fn_02801A78(cpu);
|
|
/* 026927DC */ cpu->r[11] = cpu->r[3];
|
|
/* 026927DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 026927E0 */ _t69 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026927E0 */ _t70 = _t69 & 0x00000001u;
|
|
/* 026927E0 */ if (_t70) goto L_026927FC; else goto L_026927E4;
|
|
L_026927E4: ; // 0x26927e4
|
|
/* 026927E4 */ _t71 = cpu->r[11] + 0x00000004u;
|
|
/* 026927E4 */ rbrew_write_f32(cpu->mem, _t71, cpu->f[31]);
|
|
/* 026927E8 */ _t72 = cpu->r[11] + 0x00000008u;
|
|
/* 026927E8 */ rbrew_write_f32(cpu->mem, _t72, cpu->f[31]);
|
|
/* 026927EC */ _t73 = cpu->r[11] + 0x00000000u;
|
|
/* 026927EC */ rbrew_write_f32(cpu->mem, _t73, cpu->f[31]);
|
|
/* 026927F0 */ _t74 = cpu->r[11] + 0x00000010u;
|
|
/* 026927F0 */ rbrew_write_f32(cpu->mem, _t74, cpu->f[30]);
|
|
/* 026927F4 */ _t75 = cpu->r[11] + 0x00000014u;
|
|
/* 026927F4 */ rbrew_write_f32(cpu->mem, _t75, cpu->f[30]);
|
|
/* 026927F8 */ _t76 = cpu->r[11] + 0x0000000Cu;
|
|
/* 026927F8 */ rbrew_write_f32(cpu->mem, _t76, cpu->f[30]);
|
|
L_026927FC: ; // 0x26927fc
|
|
/* 026927FC */ cpu->r[8] = cpu->r[30] + 0x00000018u;
|
|
/* 026927FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02692800 */ _t77 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02692800 */ _t78 = _t77 & 0x00000001u;
|
|
/* 02692800 */ if (_t78) goto L_02692804; else goto L_0269280C;
|
|
L_02692804: ; // 0x2692804
|
|
/* 02692804 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02692808 */ Gambit_fn_02801A78(cpu);
|
|
L_0269280C: ; // 0x269280c
|
|
/* 0269280C */ _t79 = cpu->r[30] + 0x00000030u;
|
|
/* 0269280C */ rbrew_write16(cpu->mem, _t79, (uint16_t)cpu->r[28]);
|
|
/* 02692810 */ _t80 = cpu->r[31] + 0x00000078u;
|
|
/* 02692810 */ cpu->r[9] = rbrew_read32(cpu->mem, _t80);
|
|
/* 02692814 */ _t81 = cpu->r[31] + 0x00000074u;
|
|
/* 02692814 */ cpu->r[8] = rbrew_read32(cpu->mem, _t81);
|
|
/* 02692818 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], cpu->r[9]);
|
|
/* 0269281C */ _t82 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269281C */ _t83 = _t82 & 0x00000001u;
|
|
/* 0269281C */ if (_t83) goto L_02692820; else goto L_02692850;
|
|
L_02692820: ; // 0x2692820
|
|
/* 02692820 */ goto L_02692838;
|
|
L_02692824: ; // 0x2692824
|
|
/* 02692824 */ _t84 = cpu->r[31] + 0x00000074u;
|
|
/* 02692824 */ cpu->r[8] = rbrew_read32(cpu->mem, _t84);
|
|
/* 02692828 */ _t85 = cpu->r[31] + 0x00000078u;
|
|
/* 02692828 */ cpu->r[9] = rbrew_read32(cpu->mem, _t85);
|
|
/* 0269282C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], cpu->r[9]);
|
|
/* 02692830 */ cpu->r[30] = 0x00000000u;
|
|
/* 02692834 */ _t86 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02692834 */ _t87 = _t86 & 0x00000001u;
|
|
/* 02692834 */ if (_t87) goto L_02692838; else goto L_02692850;
|
|
L_02692838: ; // 0x2692838
|
|
/* 02692838 */ _t88 = cpu->r[31] + 0x0000007Cu;
|
|
/* 02692838 */ cpu->r[0] = rbrew_read32(cpu->mem, _t88);
|
|
/* 0269283C */ cpu->r[10] = rbrew_rlwinm(cpu->r[8], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02692840 */ _t89 = cpu->r[10] + cpu->r[0];
|
|
/* 02692840 */ rbrew_write32(cpu->mem, _t89, cpu->r[30]);
|
|
/* 02692844 */ _t90 = cpu->r[31] + 0x00000074u;
|
|
/* 02692844 */ cpu->r[12] = rbrew_read32(cpu->mem, _t90);
|
|
/* 02692848 */ cpu->r[8] = cpu->r[12] + 0x00000001u;
|
|
/* 0269284C */ _t91 = cpu->r[31] + 0x00000074u;
|
|
/* 0269284C */ rbrew_write32(cpu->mem, _t91, cpu->r[8]);
|
|
L_02692850: ; // 0x2692850
|
|
/* 02692850 */ cpu->r[27] = cpu->r[27] + 0xFFFFFFFFu;
|
|
/* 02692850 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02692854 */ _t92 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02692854 */ _t93 = _t92 & 0x00000001u;
|
|
/* 02692854 */ if (_t93) goto L_02692858; else goto L_026927A4;
|
|
L_02692858: ; // 0x2692858
|
|
/* 02692858 */ cpu->r[5] = 0x00000004u;
|
|
/* 0269285C */ cpu->r[4] = 0x00000000u;
|
|
/* 02692860 */ cpu->r[3] = 0x00003E80u;
|
|
/* 02692864 */ Gambit_fn_02801ADC(cpu);
|
|
/* 02692868 */ cpu->r[11] = cpu->r[3];
|
|
/* 02692868 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0269286C */ _t94 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269286C */ _t95 = _t94 & 0x00000001u;
|
|
/* 0269286C */ if (_t95) goto L_026928AC; else goto L_02692870;
|
|
L_02692870: ; // 0x2692870
|
|
/* 02692870 */ cpu->r[0] = 0x0000018Fu;
|
|
/* 02692874 */ cpu->r[12] = 0x00000000u;
|
|
/* 02692878 */ cpu->r[4] = cpu->r[11] + 0x00000024u;
|
|
/* 0269287C */ cpu->ctr = cpu->r[0];
|
|
/* 02692880 */ _t96 = cpu->r[31] + 0x00000094u;
|
|
/* 02692880 */ rbrew_write32(cpu->mem, _t96, cpu->r[11]);
|
|
L_02692884: ; // 0x2692884
|
|
/* 02692884 */ _t97 = cpu->r[11] + cpu->r[12];
|
|
/* 02692884 */ rbrew_write32(cpu->mem, _t97, cpu->r[4]);
|
|
/* 02692888 */ cpu->r[12] = cpu->r[12] + 0x00000024u;
|
|
/* 0269288C */ cpu->r[4] = cpu->r[4] + 0x00000024u;
|
|
/* 02692890 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02692890 */ _t98 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02692890 */ _t99 = _t98 >> (0x00000002u & 31u);
|
|
/* 02692890 */ _t100 = _t99 & 0x00000001u;
|
|
/* 02692890 */ if (_t100) goto L_02692884; else goto L_02692894;
|
|
L_02692894: ; // 0x2692894
|
|
/* 02692894 */ _t101 = cpu->r[11] + 0x0000381Cu;
|
|
/* 02692894 */ rbrew_write32(cpu->mem, _t101, cpu->r[29]);
|
|
/* 02692898 */ cpu->r[5] = cpu->r[11] + 0x00003840u;
|
|
/* 0269289C */ cpu->r[3] = cpu->r[31] + 0x00000088u;
|
|
/* 026928A0 */ cpu->r[4] = 0x00000190u;
|
|
/* 026928A4 */ _t102 = cpu->r[31] + 0x00000098u;
|
|
/* 026928A4 */ rbrew_write32(cpu->mem, _t102, cpu->r[11]);
|
|
/* 026928A8 */ Gambit_fn_028023A8(cpu);
|
|
L_026928AC: ; // 0x26928ac
|
|
/* 026928AC */ cpu->r[12] = 0x100E0000u;
|
|
/* 026928B0 */ cpu->r[11] = 0x100E0000u;
|
|
/* 026928B4 */ _t103 = cpu->r[12] + 0x00003A08u;
|
|
/* 026928B4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t103);
|
|
/* 026928B8 */ cpu->r[9] = 0x100E0000u;
|
|
/* 026928BC */ _t104 = cpu->r[11] + 0x00003A50u;
|
|
/* 026928BC */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t104);
|
|
/* 026928C0 */ cpu->r[29] = 0x00000001u;
|
|
/* 026928C4 */ cpu->r[30] = 0x00000000u;
|
|
/* 026928C8 */ _t105 = cpu->r[9] + 0x00003A58u;
|
|
/* 026928C8 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t105);
|
|
/* 026928CC */ cpu->r[28] = 0x00000190u;
|
|
L_026928D0: ; // 0x26928d0
|
|
/* 026928D0 */ _t106 = cpu->r[31] + 0x00000088u;
|
|
/* 026928D0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t106);
|
|
/* 026928D4 */ _t107 = cpu->r[31] + 0x0000008Cu;
|
|
/* 026928D4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t107);
|
|
/* 026928D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], cpu->r[5]);
|
|
/* 026928DC */ _t108 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026928DC */ _t109 = _t108 & 0x00000001u;
|
|
/* 026928DC */ if (_t109) goto L_026929BC; else goto L_026928E0;
|
|
L_026928E0: ; // 0x26928e0
|
|
/* 026928E0 */ cpu->r[5] = (uint32_t)((int32_t)cpu->r[30] * (int32_t)0x00006667u);
|
|
/* 026928E4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[5], 0x0000000Du, 0x00000013u, 0x0000001Fu);
|
|
/* 026928E8 */ cpu->r[7] = 0x43300000u;
|
|
/* 026928EC */ cpu->r[4] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x00000014u);
|
|
/* 026928F0 */ _t110 = cpu->r[1] + 0x00000008u;
|
|
/* 026928F0 */ rbrew_write32(cpu->mem, _t110, cpu->r[7]);
|
|
/* 026928F4 */ cpu->r[11] = 0x100E0000u;
|
|
/* 026928F8 */ cpu->r[12] = cpu->r[30] - cpu->r[4];
|
|
/* 026928FC */ _t111 = cpu->r[11] + 0x00003A60u;
|
|
/* 026928FC */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t111);
|
|
/* 02692900 */ cpu->r[8] = cpu->r[12] ^ 0x80000000u;
|
|
/* 02692904 */ cpu->r[0] = cpu->r[0] ^ 0x80000000u;
|
|
/* 02692908 */ _t112 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02692908 */ rbrew_write32(cpu->mem, _t112, cpu->r[8]);
|
|
/* 0269290C */ _t113 = cpu->r[1] + 0x00000008u;
|
|
/* 0269290C */ cpu->f[7] = rbrew_read_f64(cpu->mem, _t113);
|
|
/* 02692910 */ _t114 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02692910 */ rbrew_write32(cpu->mem, _t114, cpu->r[0]);
|
|
/* 02692914 */ _t115 = cpu->r[1] + 0x00000008u;
|
|
/* 02692914 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t115);
|
|
/* 02692918 */ cpu->f[8] = cpu->f[7] - cpu->f[0];
|
|
/* 0269291C */ cpu->f[7] = cpu->f[13] - cpu->f[0];
|
|
/* 02692920 */ cpu->f[12] = (double)(float)cpu->f[8];
|
|
/* 02692924 */ cpu->f[11] = (double)(float)cpu->f[7];
|
|
/* 02692928 */ cpu->f[9] = cpu->f[12] * cpu->f[30];
|
|
/* 0269292C */ cpu->f[8] = cpu->f[11] * cpu->f[30];
|
|
/* 02692930 */ _t116 = cpu->r[1] + 0x00000010u;
|
|
/* 02692930 */ rbrew_write_f32(cpu->mem, _t116, cpu->f[29]);
|
|
/* 02692934 */ cpu->f[10] = cpu->f[9] + cpu->f[9];
|
|
/* 02692938 */ _t117 = cpu->r[1] + 0x00000014u;
|
|
/* 02692938 */ rbrew_write_f32(cpu->mem, _t117, cpu->f[31]);
|
|
/* 0269293C */ cpu->f[9] = cpu->f[8] + cpu->f[8];
|
|
/* 02692940 */ _t118 = cpu->r[1] + 0x00000020u;
|
|
/* 02692940 */ rbrew_write_f32(cpu->mem, _t118, cpu->f[31]);
|
|
/* 02692944 */ cpu->f[12] = cpu->f[30] + cpu->f[10];
|
|
/* 02692948 */ /* nop */
|
|
/* 0269294C */ cpu->r[10] = 0x00000000u;
|
|
/* 02692950 */ _t119 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02692950 */ rbrew_write_f32(cpu->mem, _t119, cpu->f[12]);
|
|
/* 02692954 */ /* nop */
|
|
/* 02692958 */ cpu->f[6] = cpu->f[30] + cpu->f[9];
|
|
/* 0269295C */ _t120 = cpu->r[1] + 0x00000018u;
|
|
/* 0269295C */ rbrew_write_f32(cpu->mem, _t120, cpu->f[29]);
|
|
/* 02692960 */ /* nop */
|
|
/* 02692964 */ _t121 = cpu->r[1] + 0x00000024u;
|
|
/* 02692964 */ rbrew_write_f32(cpu->mem, _t121, cpu->f[6]);
|
|
/* 02692968 */ /* nop */
|
|
/* 0269296C */ cpu->f[13] = cpu->f[29] + cpu->f[6];
|
|
/* 02692970 */ _t122 = cpu->r[1] + 0x00000034u;
|
|
/* 02692970 */ rbrew_write_f32(cpu->mem, _t122, cpu->f[13]);
|
|
/* 02692974 */ _t123 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02692974 */ cpu->r[6] = rbrew_read32(cpu->mem, _t123);
|
|
/* 02692978 */ _t124 = cpu->r[1] + 0x00000030u;
|
|
/* 02692978 */ cpu->r[8] = rbrew_read32(cpu->mem, _t124);
|
|
/* 0269297C */ _t125 = cpu->r[1] + 0x00000038u;
|
|
/* 0269297C */ rbrew_write32(cpu->mem, _t125, cpu->r[6]);
|
|
/* 02692980 */ _t126 = cpu->r[1] + 0x00000038u;
|
|
/* 02692980 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t126);
|
|
/* 02692984 */ _t127 = cpu->r[1] + 0x00000034u;
|
|
/* 02692984 */ cpu->r[0] = rbrew_read32(cpu->mem, _t127);
|
|
/* 02692988 */ _t128 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02692988 */ rbrew_write32(cpu->mem, _t128, cpu->r[8]);
|
|
/* 0269298C */ _t129 = cpu->r[1] + 0x00000040u;
|
|
/* 0269298C */ rbrew_write32(cpu->mem, _t129, cpu->r[0]);
|
|
/* 02692990 */ _t130 = cpu->r[10] + 0x00000004u;
|
|
/* 02692990 */ rbrew_write_f32(cpu->mem, _t130, cpu->f[13]);
|
|
/* 02692994 */ _t131 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02692994 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t131);
|
|
/* 02692998 */ _t132 = cpu->r[10] + 0x00000008u;
|
|
/* 02692998 */ rbrew_write_f32(cpu->mem, _t132, cpu->f[0]);
|
|
/* 0269299C */ _t133 = cpu->r[1] + 0x00000040u;
|
|
/* 0269299C */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t133);
|
|
/* 026929A0 */ _t134 = cpu->r[10] + 0x00000020u;
|
|
/* 026929A0 */ rbrew_write8(cpu->mem, _t134, (uint8_t)cpu->r[29]);
|
|
/* 026929A4 */ cpu->r[28] = cpu->r[28] + 0xFFFFFFFFu;
|
|
/* 026929A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 026929A8 */ _t135 = cpu->r[10] + 0x0000000Cu;
|
|
/* 026929A8 */ rbrew_write_f32(cpu->mem, _t135, cpu->f[6]);
|
|
/* 026929AC */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 026929B0 */ _t136 = cpu->r[10] + 0x00000010u;
|
|
/* 026929B0 */ rbrew_write_f32(cpu->mem, _t136, cpu->f[30]);
|
|
/* 026929B4 */ _t137 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026929B4 */ _t138 = _t137 & 0x00000001u;
|
|
/* 026929B4 */ if (_t138) goto L_026929B8; else goto L_026928D0;
|
|
L_026929B8: ; // 0x26929b8
|
|
/* 026929B8 */ goto L_02692AFC;
|
|
L_026929BC: ; // 0x26929bc
|
|
/* 026929BC */ _t139 = cpu->r[31] + 0x00000094u;
|
|
/* 026929BC */ cpu->r[3] = rbrew_read32(cpu->mem, _t139);
|
|
/* 026929C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 026929C4 */ _t140 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026929C4 */ _t141 = _t140 & 0x00000001u;
|
|
/* 026929C4 */ if (_t141) goto L_026929D0; else goto L_026929C8;
|
|
L_026929C8: ; // 0x26929c8
|
|
/* 026929C8 */ _t142 = cpu->r[3] + 0x00000000u;
|
|
/* 026929C8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t142);
|
|
/* 026929CC */ _t143 = cpu->r[31] + 0x00000094u;
|
|
/* 026929CC */ rbrew_write32(cpu->mem, _t143, cpu->r[6]);
|
|
L_026929D0: ; // 0x26929d0
|
|
/* 026929D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 026929D4 */ _t144 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026929D4 */ _t145 = _t144 & 0x00000001u;
|
|
/* 026929D4 */ if (_t145) goto L_026929FC; else goto L_026929D8;
|
|
L_026929D8: ; // 0x26929d8
|
|
/* 026929D8 */ cpu->r[4] = cpu->r[1] + 0x00000028u;
|
|
/* 026929DC */ _t146 = cpu->r[1] + 0x00000028u;
|
|
/* 026929DC */ rbrew_write32(cpu->mem, _t146, cpu->r[29]);
|
|
/* 026929E0 */ Gambit_fn_026669DC(cpu);
|
|
/* 026929E4 */ _t147 = cpu->r[31] + 0x00000088u;
|
|
/* 026929E4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t147);
|
|
/* 026929E8 */ _t148 = cpu->r[31] + 0x0000008Cu;
|
|
/* 026929E8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t148);
|
|
/* 026929EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], cpu->r[7]);
|
|
/* 026929F0 */ cpu->r[10] = cpu->r[3];
|
|
/* 026929F4 */ _t149 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026929F4 */ _t150 = _t149 & 0x00000001u;
|
|
/* 026929F4 */ if (_t150) goto L_026929F8; else goto L_02692A28;
|
|
L_026929F8: ; // 0x26929f8
|
|
/* 026929F8 */ goto L_02692A10;
|
|
L_026929FC: ; // 0x26929fc
|
|
/* 026929FC */ _t151 = cpu->r[31] + 0x00000088u;
|
|
/* 026929FC */ cpu->r[9] = rbrew_read32(cpu->mem, _t151);
|
|
/* 02692A00 */ _t152 = cpu->r[31] + 0x0000008Cu;
|
|
/* 02692A00 */ cpu->r[7] = rbrew_read32(cpu->mem, _t152);
|
|
/* 02692A04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], cpu->r[7]);
|
|
/* 02692A08 */ cpu->r[10] = 0x00000000u;
|
|
/* 02692A0C */ _t153 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02692A0C */ _t154 = _t153 & 0x00000001u;
|
|
/* 02692A0C */ if (_t154) goto L_02692A10; else goto L_02692A28;
|
|
L_02692A10: ; // 0x2692a10
|
|
/* 02692A10 */ _t155 = cpu->r[31] + 0x00000090u;
|
|
/* 02692A10 */ cpu->r[0] = rbrew_read32(cpu->mem, _t155);
|
|
/* 02692A14 */ cpu->r[8] = rbrew_rlwinm(cpu->r[9], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02692A18 */ _t156 = cpu->r[8] + cpu->r[0];
|
|
/* 02692A18 */ rbrew_write32(cpu->mem, _t156, cpu->r[10]);
|
|
/* 02692A1C */ _t157 = cpu->r[31] + 0x00000088u;
|
|
/* 02692A1C */ cpu->r[11] = rbrew_read32(cpu->mem, _t157);
|
|
/* 02692A20 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 02692A24 */ _t158 = cpu->r[31] + 0x00000088u;
|
|
/* 02692A24 */ rbrew_write32(cpu->mem, _t158, cpu->r[11]);
|
|
L_02692A28: ; // 0x2692a28
|
|
/* 02692A28 */ cpu->r[5] = (uint32_t)((int32_t)cpu->r[30] * (int32_t)0x00006667u);
|
|
/* 02692A2C */ cpu->r[0] = rbrew_rlwinm(cpu->r[5], 0x0000000Du, 0x00000013u, 0x0000001Fu);
|
|
/* 02692A30 */ cpu->r[11] = 0x100E0000u;
|
|
/* 02692A34 */ cpu->r[4] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x00000014u);
|
|
/* 02692A38 */ _t159 = cpu->r[11] + 0x00003A60u;
|
|
/* 02692A38 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t159);
|
|
/* 02692A3C */ cpu->r[7] = 0x43300000u;
|
|
/* 02692A40 */ cpu->r[12] = cpu->r[30] - cpu->r[4];
|
|
/* 02692A44 */ _t160 = cpu->r[1] + 0x00000008u;
|
|
/* 02692A44 */ rbrew_write32(cpu->mem, _t160, cpu->r[7]);
|
|
/* 02692A48 */ cpu->r[8] = cpu->r[12] ^ 0x80000000u;
|
|
/* 02692A4C */ cpu->r[0] = cpu->r[0] ^ 0x80000000u;
|
|
/* 02692A50 */ _t161 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02692A50 */ rbrew_write32(cpu->mem, _t161, cpu->r[8]);
|
|
/* 02692A54 */ _t162 = cpu->r[1] + 0x00000008u;
|
|
/* 02692A54 */ cpu->f[7] = rbrew_read_f64(cpu->mem, _t162);
|
|
/* 02692A58 */ _t163 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02692A58 */ rbrew_write32(cpu->mem, _t163, cpu->r[0]);
|
|
/* 02692A5C */ _t164 = cpu->r[1] + 0x00000008u;
|
|
/* 02692A5C */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t164);
|
|
/* 02692A60 */ cpu->f[8] = cpu->f[7] - cpu->f[0];
|
|
/* 02692A64 */ cpu->f[7] = cpu->f[13] - cpu->f[0];
|
|
/* 02692A68 */ cpu->f[12] = (double)(float)cpu->f[8];
|
|
/* 02692A6C */ cpu->f[11] = (double)(float)cpu->f[7];
|
|
/* 02692A70 */ cpu->f[9] = cpu->f[12] * cpu->f[30];
|
|
/* 02692A74 */ _t165 = cpu->r[1] + 0x00000014u;
|
|
/* 02692A74 */ rbrew_write_f32(cpu->mem, _t165, cpu->f[31]);
|
|
/* 02692A78 */ cpu->f[10] = cpu->f[9] + cpu->f[9];
|
|
/* 02692A7C */ _t166 = cpu->r[1] + 0x00000020u;
|
|
/* 02692A7C */ rbrew_write_f32(cpu->mem, _t166, cpu->f[31]);
|
|
/* 02692A80 */ cpu->f[12] = cpu->f[30] + cpu->f[10];
|
|
/* 02692A84 */ _t167 = cpu->r[1] + 0x00000010u;
|
|
/* 02692A84 */ rbrew_write_f32(cpu->mem, _t167, cpu->f[29]);
|
|
/* 02692A88 */ cpu->f[8] = cpu->f[11] * cpu->f[30];
|
|
/* 02692A8C */ /* nop */
|
|
/* 02692A90 */ _t168 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02692A90 */ rbrew_write_f32(cpu->mem, _t168, cpu->f[12]);
|
|
/* 02692A94 */ /* nop */
|
|
/* 02692A98 */ cpu->f[9] = cpu->f[8] + cpu->f[8];
|
|
/* 02692A9C */ /* nop */
|
|
/* 02692AA0 */ _t169 = cpu->r[1] + 0x00000018u;
|
|
/* 02692AA0 */ rbrew_write_f32(cpu->mem, _t169, cpu->f[29]);
|
|
/* 02692AA4 */ cpu->f[6] = cpu->f[30] + cpu->f[9];
|
|
/* 02692AA8 */ /* nop */
|
|
/* 02692AAC */ _t170 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02692AAC */ cpu->r[6] = rbrew_read32(cpu->mem, _t170);
|
|
/* 02692AB0 */ cpu->f[13] = cpu->f[29] + cpu->f[6];
|
|
/* 02692AB4 */ _t171 = cpu->r[1] + 0x00000038u;
|
|
/* 02692AB4 */ rbrew_write32(cpu->mem, _t171, cpu->r[6]);
|
|
/* 02692AB8 */ _t172 = cpu->r[1] + 0x00000030u;
|
|
/* 02692AB8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t172);
|
|
/* 02692ABC */ _t173 = cpu->r[1] + 0x00000034u;
|
|
/* 02692ABC */ rbrew_write_f32(cpu->mem, _t173, cpu->f[13]);
|
|
/* 02692AC0 */ _t174 = cpu->r[1] + 0x00000034u;
|
|
/* 02692AC0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t174);
|
|
/* 02692AC4 */ _t175 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02692AC4 */ rbrew_write32(cpu->mem, _t175, cpu->r[8]);
|
|
/* 02692AC8 */ _t176 = cpu->r[1] + 0x00000040u;
|
|
/* 02692AC8 */ rbrew_write32(cpu->mem, _t176, cpu->r[0]);
|
|
/* 02692ACC */ _t177 = cpu->r[1] + 0x00000038u;
|
|
/* 02692ACC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t177);
|
|
/* 02692AD0 */ _t178 = cpu->r[1] + 0x00000024u;
|
|
/* 02692AD0 */ rbrew_write_f32(cpu->mem, _t178, cpu->f[6]);
|
|
/* 02692AD4 */ _t179 = cpu->r[10] + 0x00000004u;
|
|
/* 02692AD4 */ rbrew_write_f32(cpu->mem, _t179, cpu->f[13]);
|
|
/* 02692AD8 */ _t180 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02692AD8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t180);
|
|
/* 02692ADC */ _t181 = cpu->r[10] + 0x00000008u;
|
|
/* 02692ADC */ rbrew_write_f32(cpu->mem, _t181, cpu->f[0]);
|
|
/* 02692AE0 */ _t182 = cpu->r[1] + 0x00000040u;
|
|
/* 02692AE0 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t182);
|
|
/* 02692AE4 */ _t183 = cpu->r[10] + 0x00000020u;
|
|
/* 02692AE4 */ rbrew_write8(cpu->mem, _t183, (uint8_t)cpu->r[29]);
|
|
/* 02692AE8 */ cpu->r[28] = cpu->r[28] + 0xFFFFFFFFu;
|
|
/* 02692AE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 02692AEC */ _t184 = cpu->r[10] + 0x0000000Cu;
|
|
/* 02692AEC */ rbrew_write_f32(cpu->mem, _t184, cpu->f[6]);
|
|
/* 02692AF0 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02692AF4 */ _t185 = cpu->r[10] + 0x00000010u;
|
|
/* 02692AF4 */ rbrew_write_f32(cpu->mem, _t185, cpu->f[30]);
|
|
/* 02692AF8 */ _t186 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02692AF8 */ _t187 = _t186 & 0x00000001u;
|
|
/* 02692AF8 */ if (_t187) goto L_02692AFC; else goto L_026928D0;
|
|
L_02692AFC: ; // 0x2692afc
|
|
/* 02692AFC */ cpu->r[3] = cpu->r[31];
|
|
/* 02692B00 */ /* nop */
|
|
/* 02692B04 */ _t188 = cpu->r[1] + 0x00000068u;
|
|
/* 02692B04 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t188);
|
|
/* 02692B08 */ _t189 = cpu->r[1] + 0x00000078u;
|
|
/* 02692B08 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t189);
|
|
/* 02692B0C */ _t190 = cpu->r[1] + 0x00000060u;
|
|
/* 02692B0C */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t190);
|
|
/* 02692B10 */ _t191 = cpu->r[1] + 0x00000088u;
|
|
/* 02692B10 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t191);
|
|
/* 02692B14 */ _t192 = cpu->r[1] + 0x00000070u;
|
|
/* 02692B14 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t192);
|
|
/* 02692B18 */ _t193 = cpu->r[1] + 0x00000080u;
|
|
/* 02692B18 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t193);
|
|
/* 02692B1C */ _t194 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02692B1C */ _t195 = _t194 & 0x00000001u;
|
|
/* 02692B1C */ if (_t195) goto L_02692B20; // else: addr-0 trap, fall-through
|
|
L_02692B20: ; // 0x2692b20
|
|
/* 02692B20 */ _t196 = cpu->r[1] + 0x00000094u;
|
|
/* 02692B20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t196);
|
|
/* 02692B24 */ cpu->lr = cpu->r[0];
|
|
/* 02692B28 */ cpu->r[1] = cpu->r[1] + 0x00000090u;
|
|
/* 02692B2C */ return;
|
|
}
|
|
|
|
// fn_02692B30 @ 0x2692b30
|
|
void Gambit_fn_02692B30(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02692B30: ; // 0x2692b30
|
|
/* 02692B30 */ cpu->r[12] = cpu->r[3];
|
|
/* 02692B34 */ _t0 = cpu->r[12] + 0x00000088u;
|
|
/* 02692B34 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02692B38 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], 0x00000001u);
|
|
/* 02692B3C */ cpu->r[10] = cpu->r[11] + 0xFFFFFFFFu;
|
|
/* 02692B40 */ _t1 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02692B40 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02692B40 */ if (_t2) goto L_02692B44; else goto L_02692B88;
|
|
L_02692B44: ; // 0x2692b44
|
|
/* 02692B44 */ cpu->ctr = cpu->r[10];
|
|
/* 02692B48 */ cpu->r[6] = cpu->r[4] + 0x00000001u;
|
|
L_02692B4C: ; // 0x2692b4c
|
|
/* 02692B4C */ cpu->r[0] = cpu->r[6] / cpu->r[11];
|
|
/* 02692B50 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)cpu->r[11]);
|
|
/* 02692B54 */ cpu->r[3] = cpu->r[6] - cpu->r[0];
|
|
/* 02692B58 */ cpu->r[8] = cpu->r[3];
|
|
/* 02692B5C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[11]);
|
|
/* 02692B60 */ cpu->r[10] = 0x00000000u;
|
|
/* 02692B64 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02692B64 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02692B64 */ if (_t4) goto L_02692B68; else goto L_02692B74;
|
|
L_02692B68: ; // 0x2692b68
|
|
/* 02692B68 */ _t5 = cpu->r[12] + 0x00000090u;
|
|
/* 02692B68 */ cpu->r[7] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02692B6C */ cpu->r[5] = rbrew_rlwinm(cpu->r[8], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02692B70 */ _t6 = cpu->r[5] + cpu->r[7];
|
|
/* 02692B70 */ cpu->r[10] = rbrew_read32(cpu->mem, _t6);
|
|
L_02692B74: ; // 0x2692b74
|
|
/* 02692B74 */ _t7 = cpu->r[10] + 0x00000020u;
|
|
/* 02692B74 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 02692B78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02692B7C */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02692B7C */ _t9 = _t8 & 0x00000001u;
|
|
/* 02692B7C */ _t10 = _t9 ^ 0x00000001u;
|
|
/* 02692B7C */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02692B7C */ goto L_02692B80;
|
|
L_02692B80: ; // 0x2692b80
|
|
/* 02692B80 */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 02692B84 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02692B84 */ _t11 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02692B84 */ _t12 = _t11 >> (0x00000002u & 31u);
|
|
/* 02692B84 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02692B84 */ if (_t13) goto L_02692B4C; else goto L_02692B88;
|
|
L_02692B88: ; // 0x2692b88
|
|
/* 02692B88 */ cpu->r[3] = cpu->r[4];
|
|
/* 02692B8C */ return;
|
|
}
|
|
|
|
// fn_02692B90 @ 0x2692b90
|
|
void Gambit_fn_02692B90(CPUState* cpu) {
|
|
uint32_t _t0, _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;
|
|
|
|
L_02692B90: ; // 0x2692b90
|
|
/* 02692B90 */ _t0 = cpu->r[1] + 0xFFFFFEF0u;
|
|
/* 02692B90 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02692B90 */ cpu->r[1] = _t0;
|
|
/* 02692B94 */ /* nop */
|
|
/* 02692B98 */ cpu->r[0] = cpu->lr;
|
|
/* 02692B9C */ _t1 = cpu->r[1] + 0x000000B0u;
|
|
/* 02692B9C */ rbrew_write_f64(cpu->mem, _t1, cpu->f[26]);
|
|
/* 02692BA0 */ _t2 = cpu->r[1] + 0x000000C0u;
|
|
/* 02692BA0 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[27]);
|
|
/* 02692BA4 */ _t3 = cpu->r[1] + 0x000000D0u;
|
|
/* 02692BA4 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[28]);
|
|
/* 02692BA8 */ /* nop */
|
|
/* 02692BAC */ _t4 = cpu->r[1] + 0x000000E0u;
|
|
/* 02692BAC */ rbrew_write_f64(cpu->mem, _t4, cpu->f[29]);
|
|
/* 02692BB0 */ /* nop */
|
|
/* 02692BB4 */ _t5 = cpu->r[1] + 0x000000F0u;
|
|
/* 02692BB4 */ rbrew_write_f64(cpu->mem, _t5, cpu->f[30]);
|
|
/* 02692BB8 */ /* nop */
|
|
/* 02692BBC */ _t6 = cpu->r[1] + 0x000000B8u;
|
|
/* 02692BBC */ rbrew_write_f32(cpu->mem, _t6, cpu->f[26]);
|
|
/* 02692BC0 */ /* nop */
|
|
/* 02692BC4 */ _t7 = cpu->r[1] + 0x000000C8u;
|
|
/* 02692BC4 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[27]);
|
|
/* 02692BC8 */ _t8 = cpu->r[1] + 0x000000D8u;
|
|
/* 02692BC8 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[28]);
|
|
/* 02692BCC */ _t9 = cpu->r[1] + 0x000000E8u;
|
|
/* 02692BCC */ rbrew_write_f32(cpu->mem, _t9, cpu->f[29]);
|
|
/* 02692BD0 */ /* nop */
|
|
/* 02692BD4 */ _t10 = cpu->r[1] + 0x00000100u;
|
|
/* 02692BD4 */ rbrew_write_f64(cpu->mem, _t10, cpu->f[31]);
|
|
/* 02692BD8 */ _t11 = cpu->r[1] + 0x000000F8u;
|
|
/* 02692BD8 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[30]);
|
|
/* 02692BDC */ /* nop */
|
|
/* 02692BE0 */ _t12 = cpu->r[1] + 0x00000114u;
|
|
/* 02692BE0 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 02692BE4 */ _t13 = cpu->r[1] + 0x00000108u;
|
|
/* 02692BE4 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[31]);
|
|
/* 02692BE8 */ cpu->r[29] = cpu->r[3];
|
|
/* 02692BEC */ _t14 = cpu->r[29] + 0x000000A0u;
|
|
/* 02692BEC */ cpu->r[5] = rbrew_read16(cpu->mem, _t14);
|
|
/* 02692BF0 */ cpu->r[5] = cpu->r[5] + 0x00000001u;
|
|
/* 02692BF4 */ cpu->r[5] = rbrew_rlwinm(cpu->r[5], 0x00000000u, 0x00000010u, 0x0000001Fu);
|
|
/* 02692BF8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], 0x00000002u);
|
|
/* 02692BFC */ _t15 = cpu->r[29] + 0x000000A0u;
|
|
/* 02692BFC */ rbrew_write16(cpu->mem, _t15, (uint16_t)cpu->r[5]);
|
|
/* 02692C00 */ _t16 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02692C00 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02692C00 */ if (_t17) goto L_02692C04; else goto L_0269301C;
|
|
L_02692C04: ; // 0x2692c04
|
|
/* 02692C04 */ _t18 = cpu->r[29] + 0x00000074u;
|
|
/* 02692C04 */ cpu->r[10] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02692C08 */ cpu->r[26] = 0x00000000u;
|
|
/* 02692C0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], cpu->r[10]);
|
|
/* 02692C10 */ _t19 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02692C10 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02692C10 */ if (_t20) goto L_02692C14; else goto L_02693014;
|
|
L_02692C14: ; // 0x2692c14
|
|
/* 02692C14 */ cpu->r[5] = 0x100E0000u;
|
|
/* 02692C18 */ cpu->r[12] = 0x100E0000u;
|
|
/* 02692C1C */ _t21 = cpu->r[5] + 0x00003A7Cu;
|
|
/* 02692C1C */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 02692C20 */ cpu->r[11] = 0x100E0000u;
|
|
/* 02692C24 */ _t22 = cpu->r[12] + 0x00003A08u;
|
|
/* 02692C24 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 02692C28 */ cpu->r[8] = 0x100E0000u;
|
|
/* 02692C2C */ _t23 = cpu->r[11] + 0x00003A80u;
|
|
/* 02692C2C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 02692C30 */ cpu->r[28] = 0x00000000u;
|
|
/* 02692C34 */ _t24 = cpu->r[8] + 0x00003A78u;
|
|
/* 02692C34 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 02692C38 */ cpu->r[27] = 0x101C0000u;
|
|
L_02692C3C: ; // 0x2692c3c
|
|
/* 02692C3C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], cpu->r[10]);
|
|
/* 02692C40 */ _t25 = cpu->r[29] + 0x00000088u;
|
|
/* 02692C40 */ cpu->r[10] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02692C44 */ cpu->r[30] = 0x00000000u;
|
|
/* 02692C48 */ _t26 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02692C48 */ _t27 = _t26 & 0x00000001u;
|
|
/* 02692C48 */ if (_t27) goto L_02692C4C; else goto L_02692C54;
|
|
L_02692C4C: ; // 0x2692c4c
|
|
/* 02692C4C */ _t28 = cpu->r[29] + 0x0000007Cu;
|
|
/* 02692C4C */ cpu->r[8] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02692C50 */ _t29 = cpu->r[8] + cpu->r[28];
|
|
/* 02692C50 */ cpu->r[30] = rbrew_read32(cpu->mem, _t29);
|
|
L_02692C54: ; // 0x2692c54
|
|
/* 02692C54 */ _t30 = cpu->r[30] + 0x00000030u;
|
|
/* 02692C54 */ cpu->r[6] = rbrew_read16(cpu->mem, _t30);
|
|
/* 02692C58 */ cpu->r[31] = 0x00000000u;
|
|
/* 02692C5C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[10]);
|
|
/* 02692C60 */ _t31 = cpu->r[30] + 0x00000024u;
|
|
/* 02692C60 */ cpu->r[4] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02692C64 */ _t32 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02692C64 */ _t33 = _t32 & 0x00000001u;
|
|
/* 02692C64 */ if (_t33) goto L_02692C68; else goto L_02692C74;
|
|
L_02692C68: ; // 0x2692c68
|
|
/* 02692C68 */ _t34 = cpu->r[29] + 0x00000090u;
|
|
/* 02692C68 */ cpu->r[0] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02692C6C */ cpu->r[12] = rbrew_rlwinm(cpu->r[6], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02692C70 */ _t35 = cpu->r[12] + cpu->r[0];
|
|
/* 02692C70 */ cpu->r[31] = rbrew_read32(cpu->mem, _t35);
|
|
L_02692C74: ; // 0x2692c74
|
|
/* 02692C74 */ _t36 = cpu->r[31] + 0x00000018u;
|
|
/* 02692C74 */ rbrew_write32(cpu->mem, _t36, cpu->r[4]);
|
|
/* 02692C78 */ _t37 = cpu->r[30] + 0x00000028u;
|
|
/* 02692C78 */ cpu->r[5] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02692C7C */ _t38 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02692C7C */ rbrew_write32(cpu->mem, _t38, cpu->r[5]);
|
|
/* 02692C80 */ _t39 = cpu->r[30] + 0x0000002Cu;
|
|
/* 02692C80 */ cpu->r[7] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02692C84 */ cpu->r[25] = 0x00000000u;
|
|
/* 02692C88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 02692C8C */ _t40 = cpu->r[31] + 0x00000014u;
|
|
/* 02692C8C */ rbrew_write32(cpu->mem, _t40, cpu->r[7]);
|
|
/* 02692C90 */ _t41 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02692C90 */ _t42 = _t41 & 0x00000001u;
|
|
/* 02692C90 */ if (_t42) goto L_02692CAC; else goto L_02692C94;
|
|
L_02692C94: ; // 0x2692c94
|
|
/* 02692C94 */ _t43 = cpu->r[29] + 0x00000008u;
|
|
/* 02692C94 */ cpu->r[3] = rbrew_read32(cpu->mem, _t43);
|
|
/* 02692C98 */ cpu->r[4] = cpu->r[31] + 0x00000004u;
|
|
/* 02692C9C */ Gambit_fn_026700D8(cpu);
|
|
/* 02692CA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02692CA4 */ _t44 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02692CA4 */ _t45 = _t44 & 0x00000001u;
|
|
/* 02692CA4 */ if (_t45) goto L_02692CA8; else goto L_02692CAC;
|
|
L_02692CA8: ; // 0x2692ca8
|
|
/* 02692CA8 */ cpu->r[25] = 0x00000001u;
|
|
L_02692CAC: ; // 0x2692cac
|
|
/* 02692CAC */ _t46 = cpu->r[31] + 0x00000020u;
|
|
/* 02692CAC */ rbrew_write8(cpu->mem, _t46, (uint8_t)cpu->r[25]);
|
|
/* 02692CB0 */ _t47 = cpu->r[29] + 0x0000009Cu;
|
|
/* 02692CB0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t47);
|
|
/* 02692CB4 */ cpu->r[3] = cpu->r[29];
|
|
/* 02692CB8 */ Gambit_fn_02692B30(cpu);
|
|
/* 02692CBC */ _t48 = cpu->r[29] + 0x0000009Cu;
|
|
/* 02692CBC */ rbrew_write32(cpu->mem, _t48, cpu->r[3]);
|
|
/* 02692CC0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x00000010u, 0x0000001Fu);
|
|
/* 02692CC4 */ _t49 = cpu->r[30] + 0x00000030u;
|
|
/* 02692CC4 */ rbrew_write16(cpu->mem, _t49, (uint16_t)cpu->r[0]);
|
|
/* 02692CC8 */ _t50 = cpu->r[29] + 0x00000088u;
|
|
/* 02692CC8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t50);
|
|
/* 02692CCC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[8]);
|
|
/* 02692CD0 */ cpu->r[10] = 0x00000000u;
|
|
/* 02692CD4 */ _t51 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02692CD4 */ _t52 = _t51 & 0x00000001u;
|
|
/* 02692CD4 */ if (_t52) goto L_02692CD8; else goto L_02692CE4;
|
|
L_02692CD8: ; // 0x2692cd8
|
|
/* 02692CD8 */ _t53 = cpu->r[29] + 0x00000090u;
|
|
/* 02692CD8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t53);
|
|
/* 02692CDC */ cpu->r[9] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02692CE0 */ _t54 = cpu->r[9] + cpu->r[10];
|
|
/* 02692CE0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t54);
|
|
L_02692CE4: ; // 0x2692ce4
|
|
/* 02692CE4 */ _t55 = cpu->r[10] + 0x00000010u;
|
|
/* 02692CE4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 02692CE8 */ _t56 = cpu->r[1] + 0x00000034u;
|
|
/* 02692CE8 */ rbrew_write_f32(cpu->mem, _t56, cpu->f[31]);
|
|
/* 02692CEC */ _t57 = cpu->r[1] + 0x00000030u;
|
|
/* 02692CEC */ rbrew_write_f32(cpu->mem, _t57, cpu->f[13]);
|
|
/* 02692CF0 */ /* nop */
|
|
/* 02692CF4 */ _t58 = cpu->r[1] + 0x00000038u;
|
|
/* 02692CF4 */ rbrew_write_f32(cpu->mem, _t58, cpu->f[13]);
|
|
/* 02692CF8 */ /* nop */
|
|
/* 02692CFC */ /* nop */
|
|
/* 02692D00 */ /* nop */
|
|
/* 02692D04 */ _t59 = cpu->r[10] + 0x0000000Cu;
|
|
/* 02692D04 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t59);
|
|
/* 02692D08 */ _t60 = cpu->r[1] + 0x00000054u;
|
|
/* 02692D08 */ cpu->r[7] = rbrew_read32(cpu->mem, _t60);
|
|
/* 02692D0C */ cpu->f[7] = cpu->f[8] - cpu->f[13];
|
|
/* 02692D10 */ _t61 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02692D10 */ rbrew_write_f32(cpu->mem, _t61, cpu->f[13]);
|
|
/* 02692D14 */ _t62 = cpu->r[1] + 0x00000040u;
|
|
/* 02692D14 */ rbrew_write_f32(cpu->mem, _t62, cpu->f[31]);
|
|
/* 02692D18 */ /* nop */
|
|
/* 02692D1C */ _t63 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02692D1C */ rbrew_write_f32(cpu->mem, _t63, cpu->f[7]);
|
|
/* 02692D20 */ _t64 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02692D20 */ cpu->r[9] = rbrew_read32(cpu->mem, _t64);
|
|
/* 02692D24 */ _t65 = cpu->r[1] + 0x00000058u;
|
|
/* 02692D24 */ cpu->r[8] = rbrew_read32(cpu->mem, _t65);
|
|
/* 02692D28 */ /* nop */
|
|
/* 02692D2C */ _t66 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02692D2C */ rbrew_write32(cpu->mem, _t66, cpu->r[7]);
|
|
/* 02692D30 */ /* nop */
|
|
/* 02692D34 */ _t67 = cpu->r[1] + 0x00000060u;
|
|
/* 02692D34 */ cpu->r[4] = rbrew_read32(cpu->mem, _t67);
|
|
/* 02692D38 */ _t68 = cpu->r[1] + 0x00000070u;
|
|
/* 02692D38 */ rbrew_write32(cpu->mem, _t68, cpu->r[8]);
|
|
/* 02692D3C */ _t69 = cpu->r[1] + 0x00000070u;
|
|
/* 02692D3C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t69);
|
|
/* 02692D40 */ _t70 = cpu->r[1] + 0x00000074u;
|
|
/* 02692D40 */ rbrew_write32(cpu->mem, _t70, cpu->r[9]);
|
|
/* 02692D44 */ _t71 = cpu->r[1] + 0x00000044u;
|
|
/* 02692D44 */ rbrew_write_f32(cpu->mem, _t71, cpu->f[13]);
|
|
/* 02692D48 */ _t72 = cpu->r[10] + 0x0000000Cu;
|
|
/* 02692D48 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t72);
|
|
/* 02692D4C */ _t73 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02692D4C */ rbrew_write_f32(cpu->mem, _t73, cpu->f[28]);
|
|
/* 02692D50 */ _t74 = cpu->r[1] + 0x00000064u;
|
|
/* 02692D50 */ cpu->r[0] = rbrew_read32(cpu->mem, _t74);
|
|
/* 02692D54 */ cpu->f[11] = cpu->f[12] + cpu->f[13];
|
|
/* 02692D58 */ _t75 = cpu->r[1] + 0x00000078u;
|
|
/* 02692D58 */ rbrew_write32(cpu->mem, _t75, cpu->r[4]);
|
|
/* 02692D5C */ _t76 = cpu->r[1] + 0x00000078u;
|
|
/* 02692D5C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t76);
|
|
/* 02692D60 */ _t77 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02692D60 */ rbrew_write32(cpu->mem, _t77, cpu->r[0]);
|
|
/* 02692D64 */ _t78 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02692D64 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t78);
|
|
/* 02692D68 */ _t79 = cpu->r[1] + 0x00000068u;
|
|
/* 02692D68 */ rbrew_write_f32(cpu->mem, _t79, cpu->f[11]);
|
|
/* 02692D6C */ _t80 = cpu->r[1] + 0x00000068u;
|
|
/* 02692D6C */ cpu->r[9] = rbrew_read32(cpu->mem, _t80);
|
|
/* 02692D70 */ _t81 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02692D70 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t81);
|
|
/* 02692D74 */ _t82 = cpu->r[1] + 0x00000080u;
|
|
/* 02692D74 */ rbrew_write32(cpu->mem, _t82, cpu->r[9]);
|
|
/* 02692D78 */ _t83 = cpu->r[1] + 0x00000080u;
|
|
/* 02692D78 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t83);
|
|
/* 02692D7C */ _t84 = cpu->r[1] + 0x00000010u;
|
|
/* 02692D7C */ rbrew_write_f32(cpu->mem, _t84, cpu->f[7]);
|
|
/* 02692D80 */ _t85 = cpu->r[1] + 0x00000024u;
|
|
/* 02692D80 */ rbrew_write_f32(cpu->mem, _t85, cpu->f[11]);
|
|
/* 02692D84 */ _t86 = cpu->r[1] + 0x00000014u;
|
|
/* 02692D84 */ rbrew_write_f32(cpu->mem, _t86, cpu->f[10]);
|
|
/* 02692D88 */ _t87 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02692D88 */ rbrew_write_f32(cpu->mem, _t87, cpu->f[8]);
|
|
/* 02692D8C */ _t88 = cpu->r[1] + 0x00000074u;
|
|
/* 02692D8C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t88);
|
|
/* 02692D90 */ _t89 = cpu->r[1] + 0x00000020u;
|
|
/* 02692D90 */ rbrew_write_f32(cpu->mem, _t89, cpu->f[9]);
|
|
/* 02692D94 */ _t90 = cpu->r[1] + 0x00000018u;
|
|
/* 02692D94 */ rbrew_write_f32(cpu->mem, _t90, cpu->f[12]);
|
|
/* 02692D98 */ _t91 = cpu->r[1] + 0x00000028u;
|
|
/* 02692D98 */ rbrew_write_f32(cpu->mem, _t91, cpu->f[28]);
|
|
/* 02692D9C */ _t92 = cpu->r[30] + 0x00000000u;
|
|
/* 02692D9C */ rbrew_write_f32(cpu->mem, _t92, cpu->f[7]);
|
|
/* 02692DA0 */ _t93 = cpu->r[1] + 0x00000014u;
|
|
/* 02692DA0 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t93);
|
|
/* 02692DA4 */ _t94 = cpu->r[30] + 0x00000004u;
|
|
/* 02692DA4 */ rbrew_write_f32(cpu->mem, _t94, cpu->f[7]);
|
|
/* 02692DA8 */ _t95 = cpu->r[1] + 0x00000018u;
|
|
/* 02692DA8 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t95);
|
|
/* 02692DAC */ _t96 = cpu->r[30] + 0x00000008u;
|
|
/* 02692DAC */ rbrew_write_f32(cpu->mem, _t96, cpu->f[9]);
|
|
/* 02692DB0 */ _t97 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02692DB0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t97);
|
|
/* 02692DB4 */ _t98 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02692DB4 */ rbrew_write_f32(cpu->mem, _t98, cpu->f[11]);
|
|
/* 02692DB8 */ _t99 = cpu->r[1] + 0x00000020u;
|
|
/* 02692DB8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t99);
|
|
/* 02692DBC */ _t100 = cpu->r[30] + 0x00000010u;
|
|
/* 02692DBC */ rbrew_write_f32(cpu->mem, _t100, cpu->f[12]);
|
|
/* 02692DC0 */ _t101 = cpu->r[1] + 0x00000024u;
|
|
/* 02692DC0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t101);
|
|
/* 02692DC4 */ _t102 = cpu->r[30] + 0x00000014u;
|
|
/* 02692DC4 */ rbrew_write_f32(cpu->mem, _t102, cpu->f[13]);
|
|
/* 02692DC8 */ _t103 = cpu->r[1] + 0x00000010u;
|
|
/* 02692DC8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t103);
|
|
/* 02692DCC */ _t104 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02692DCC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t104);
|
|
/* 02692DD0 */ _t105 = cpu->r[1] + 0x00000024u;
|
|
/* 02692DD0 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t105);
|
|
/* 02692DD4 */ cpu->f[7] = cpu->f[10] + cpu->f[12];
|
|
/* 02692DD8 */ _t106 = cpu->r[1] + 0x00000014u;
|
|
/* 02692DD8 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t106);
|
|
/* 02692DDC */ _t107 = cpu->r[1] + 0x00000020u;
|
|
/* 02692DDC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t107);
|
|
/* 02692DE0 */ cpu->f[12] = cpu->f[7] * cpu->f[30];
|
|
/* 02692DE4 */ _t108 = cpu->r[1] + 0x00000018u;
|
|
/* 02692DE4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t108);
|
|
/* 02692DE8 */ cpu->f[7] = cpu->f[8] + cpu->f[10];
|
|
/* 02692DEC */ _t109 = cpu->r[1] + 0x00000048u;
|
|
/* 02692DEC */ rbrew_write_f32(cpu->mem, _t109, cpu->f[12]);
|
|
/* 02692DF0 */ cpu->f[12] = cpu->f[13] + cpu->f[6];
|
|
/* 02692DF4 */ _t110 = cpu->r[1] + 0x00000048u;
|
|
/* 02692DF4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t110);
|
|
/* 02692DF8 */ cpu->f[0] = cpu->f[7] * cpu->f[30];
|
|
/* 02692DFC */ _t111 = cpu->r[1] + 0x00000084u;
|
|
/* 02692DFC */ rbrew_write32(cpu->mem, _t111, cpu->r[7]);
|
|
/* 02692E00 */ _t112 = cpu->r[1] + 0x00000084u;
|
|
/* 02692E00 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t112);
|
|
/* 02692E04 */ cpu->f[6] = cpu->f[12] * cpu->f[30];
|
|
/* 02692E08 */ _t113 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02692E08 */ rbrew_write_f32(cpu->mem, _t113, cpu->f[0]);
|
|
/* 02692E0C */ _t114 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02692E0C */ cpu->r[9] = rbrew_read32(cpu->mem, _t114);
|
|
/* 02692E10 */ _t115 = cpu->r[1] + 0x00000050u;
|
|
/* 02692E10 */ rbrew_write_f32(cpu->mem, _t115, cpu->f[6]);
|
|
/* 02692E14 */ _t116 = cpu->r[1] + 0x00000050u;
|
|
/* 02692E14 */ cpu->r[11] = rbrew_read32(cpu->mem, _t116);
|
|
/* 02692E18 */ _t117 = cpu->r[1] + 0x00000088u;
|
|
/* 02692E18 */ rbrew_write32(cpu->mem, _t117, cpu->r[9]);
|
|
/* 02692E1C */ _t118 = cpu->r[1] + 0x0000008Cu;
|
|
/* 02692E1C */ rbrew_write32(cpu->mem, _t118, cpu->r[11]);
|
|
/* 02692E20 */ _t119 = cpu->r[30] + 0x00000000u;
|
|
/* 02692E20 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t119);
|
|
/* 02692E24 */ _t120 = cpu->r[30] + 0x00000018u;
|
|
/* 02692E24 */ rbrew_write_f32(cpu->mem, _t120, cpu->f[7]);
|
|
/* 02692E28 */ _t121 = cpu->r[1] + 0x00000088u;
|
|
/* 02692E28 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t121);
|
|
/* 02692E2C */ _t122 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02692E2C */ rbrew_write_f32(cpu->mem, _t122, cpu->f[8]);
|
|
/* 02692E30 */ _t123 = cpu->r[1] + 0x0000008Cu;
|
|
/* 02692E30 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t123);
|
|
/* 02692E34 */ _t124 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02692E34 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t124);
|
|
/* 02692E38 */ _t125 = cpu->r[30] + 0x00000020u;
|
|
/* 02692E38 */ rbrew_write_f32(cpu->mem, _t125, cpu->f[9]);
|
|
/* 02692E3C */ _t126 = cpu->r[27] + 0x00006000u;
|
|
/* 02692E3C */ cpu->r[6] = rbrew_read32(cpu->mem, _t126);
|
|
/* 02692E40 */ _t127 = cpu->r[30] + 0x00000014u;
|
|
/* 02692E40 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t127);
|
|
/* 02692E44 */ cpu->f[1] = cpu->f[28];
|
|
/* 02692E48 */ _t128 = cpu->r[6] + 0x000002B0u;
|
|
/* 02692E48 */ cpu->r[11] = rbrew_read32(cpu->mem, _t128);
|
|
/* 02692E4C */ cpu->f[26] = cpu->f[10] - cpu->f[11];
|
|
/* 02692E50 */ cpu->r[4] = 0x000000FFu;
|
|
/* 02692E54 */ _t129 = cpu->r[30] + 0x00000008u;
|
|
/* 02692E54 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t129);
|
|
/* 02692E58 */ cpu->r[3] = cpu->r[11] + 0x00000458u;
|
|
/* 02692E5C */ cpu->r[6] = 0x00000004u;
|
|
/* 02692E60 */ cpu->r[5] = cpu->r[30] + 0x00000018u;
|
|
/* 02692E64 */ cpu->f[27] = cpu->f[12] - cpu->f[13];
|
|
/* 02692E68 */ Gambit_fn_0266B918(cpu);
|
|
/* 02692E6C */ cpu->f[9] = cpu->f[1] * cpu->f[26];
|
|
/* 02692E70 */ cpu->f[10] = cpu->f[9] * cpu->f[27];
|
|
/* 02692E74 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[29]);
|
|
/* 02692E78 */ _t130 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02692E78 */ _t131 = _t130 & 0x00000001u;
|
|
/* 02692E78 */ if (_t131) goto L_02692E7C; else goto L_02692E9C;
|
|
L_02692E7C: ; // 0x2692e7c
|
|
/* 02692E7C */ cpu->f[11] = (uint32_t)(int32_t)cpu->f[10];
|
|
/* 02692E80 */ cpu->r[9] = cpu->r[1] + 0x00000008u;
|
|
/* 02692E84 */ /* nop */
|
|
/* 02692E88 */ _t132 = cpu->r[1] + 0x00000008u;
|
|
/* 02692E88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t132);
|
|
/* 02692E8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02692E90 */ _t133 = cpu->r[30] + 0x0000002Cu;
|
|
/* 02692E90 */ rbrew_write32(cpu->mem, _t133, cpu->r[0]);
|
|
/* 02692E94 */ _t134 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02692E94 */ _t135 = _t134 & 0x00000001u;
|
|
/* 02692E94 */ if (_t135) goto L_02692E98; else goto L_02692EC0;
|
|
L_02692E98: ; // 0x2692e98
|
|
/* 02692E98 */ goto L_02692EEC;
|
|
L_02692E9C: ; // 0x2692e9c
|
|
/* 02692E9C */ cpu->f[13] = cpu->f[10] - cpu->f[29];
|
|
/* 02692EA0 */ cpu->f[8] = (uint32_t)(int32_t)cpu->f[13];
|
|
/* 02692EA4 */ cpu->r[0] = cpu->r[1] + 0x00000008u;
|
|
/* 02692EA8 */ /* nop */
|
|
/* 02692EAC */ _t136 = cpu->r[1] + 0x00000008u;
|
|
/* 02692EAC */ cpu->r[10] = rbrew_read32(cpu->mem, _t136);
|
|
/* 02692EB0 */ cpu->r[0] = cpu->r[10] + 0x80000000u;
|
|
/* 02692EB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02692EB8 */ _t137 = cpu->r[30] + 0x0000002Cu;
|
|
/* 02692EB8 */ rbrew_write32(cpu->mem, _t137, cpu->r[0]);
|
|
/* 02692EBC */ _t138 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02692EBC */ _t139 = _t138 & 0x00000001u;
|
|
/* 02692EBC */ if (_t139) goto L_02692EEC; else goto L_02692EC0;
|
|
L_02692EC0: ; // 0x2692ec0
|
|
/* 02692EC0 */ _t140 = cpu->r[27] + 0x00006000u;
|
|
/* 02692EC0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t140);
|
|
/* 02692EC4 */ cpu->r[4] = 0x000000FFu;
|
|
/* 02692EC8 */ cpu->r[5] = cpu->r[30] + 0x00000018u;
|
|
/* 02692ECC */ cpu->f[1] = cpu->f[28];
|
|
/* 02692ED0 */ _t141 = cpu->r[12] + 0x000002B0u;
|
|
/* 02692ED0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t141);
|
|
/* 02692ED4 */ cpu->r[7] = cpu->r[1] + 0x0000002Cu;
|
|
/* 02692ED8 */ cpu->r[6] = cpu->r[1] + 0x00000028u;
|
|
/* 02692EDC */ cpu->r[8] = 0x00000004u;
|
|
/* 02692EE0 */ cpu->r[3] = cpu->r[12] + 0x00000458u;
|
|
/* 02692EE4 */ Gambit_fn_0266B2C4(cpu);
|
|
/* 02692EE8 */ _t142 = cpu->r[30] + 0x0000002Cu;
|
|
/* 02692EE8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t142);
|
|
L_02692EEC: ; // 0x2692eec
|
|
/* 02692EEC */ cpu->r[6] = 0x100E0000u;
|
|
/* 02692EF0 */ _t143 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02692EF0 */ rbrew_write32(cpu->mem, _t143, cpu->r[0]);
|
|
/* 02692EF4 */ cpu->r[7] = 0x43300000u;
|
|
/* 02692EF8 */ _t144 = cpu->r[6] + 0x00003A88u;
|
|
/* 02692EF8 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t144);
|
|
/* 02692EFC */ _t145 = cpu->r[1] + 0x00000008u;
|
|
/* 02692EFC */ rbrew_write32(cpu->mem, _t145, cpu->r[7]);
|
|
/* 02692F00 */ _t146 = cpu->r[1] + 0x00000008u;
|
|
/* 02692F00 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t146);
|
|
/* 02692F04 */ cpu->f[6] = cpu->f[13] - cpu->f[0];
|
|
/* 02692F08 */ cpu->f[0] = (double)(float)cpu->f[6];
|
|
/* 02692F0C */ _t147 = cpu->r[1] + 0x00000028u;
|
|
/* 02692F0C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t147);
|
|
/* 02692F10 */ cpu->f[13] = cpu->f[7] * cpu->f[0];
|
|
/* 02692F14 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[29]);
|
|
/* 02692F18 */ _t148 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02692F18 */ _t149 = _t148 & 0x00000001u;
|
|
/* 02692F18 */ if (_t149) goto L_02692F1C; else goto L_02692F68;
|
|
L_02692F1C: ; // 0x2692f1c
|
|
/* 02692F1C */ cpu->r[7] = 0x100E0000u;
|
|
/* 02692F20 */ cpu->f[10] = (uint32_t)(int32_t)cpu->f[13];
|
|
/* 02692F24 */ _t150 = cpu->r[7] + 0x00003A88u;
|
|
/* 02692F24 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t150);
|
|
/* 02692F28 */ cpu->r[10] = cpu->r[1] + 0x00000008u;
|
|
/* 02692F2C */ /* nop */
|
|
/* 02692F30 */ _t151 = cpu->r[1] + 0x00000008u;
|
|
/* 02692F30 */ cpu->r[0] = rbrew_read32(cpu->mem, _t151);
|
|
/* 02692F34 */ cpu->r[6] = 0x43300000u;
|
|
/* 02692F38 */ _t152 = cpu->r[30] + 0x0000002Cu;
|
|
/* 02692F38 */ cpu->r[4] = rbrew_read32(cpu->mem, _t152);
|
|
/* 02692F3C */ _t153 = cpu->r[1] + 0x00000008u;
|
|
/* 02692F3C */ rbrew_write32(cpu->mem, _t153, cpu->r[6]);
|
|
/* 02692F40 */ _t154 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02692F40 */ rbrew_write32(cpu->mem, _t154, cpu->r[4]);
|
|
/* 02692F44 */ _t155 = cpu->r[1] + 0x00000008u;
|
|
/* 02692F44 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t155);
|
|
/* 02692F48 */ cpu->f[6] = cpu->f[0] - cpu->f[13];
|
|
/* 02692F4C */ _t156 = cpu->r[30] + 0x00000024u;
|
|
/* 02692F4C */ rbrew_write32(cpu->mem, _t156, cpu->r[0]);
|
|
/* 02692F50 */ cpu->f[10] = (double)(float)cpu->f[6];
|
|
/* 02692F54 */ _t157 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02692F54 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t157);
|
|
/* 02692F58 */ cpu->f[6] = cpu->f[9] * cpu->f[10];
|
|
/* 02692F5C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[6], cpu->f[29]);
|
|
/* 02692F60 */ _t158 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02692F60 */ _t159 = _t158 & 0x00000001u;
|
|
/* 02692F60 */ if (_t159) goto L_02692FB8; else goto L_02692F64;
|
|
L_02692F64: ; // 0x2692f64
|
|
/* 02692F64 */ goto L_02692FE4;
|
|
L_02692F68: ; // 0x2692f68
|
|
/* 02692F68 */ cpu->f[12] = cpu->f[13] - cpu->f[29];
|
|
/* 02692F6C */ cpu->r[7] = 0x100E0000u;
|
|
/* 02692F70 */ cpu->f[8] = (uint32_t)(int32_t)cpu->f[12];
|
|
/* 02692F74 */ _t160 = cpu->r[7] + 0x00003A88u;
|
|
/* 02692F74 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t160);
|
|
/* 02692F78 */ cpu->r[0] = cpu->r[1] + 0x00000008u;
|
|
/* 02692F7C */ /* nop */
|
|
/* 02692F80 */ _t161 = cpu->r[1] + 0x00000008u;
|
|
/* 02692F80 */ cpu->r[11] = rbrew_read32(cpu->mem, _t161);
|
|
/* 02692F84 */ cpu->r[6] = 0x43300000u;
|
|
/* 02692F88 */ _t162 = cpu->r[30] + 0x0000002Cu;
|
|
/* 02692F88 */ cpu->r[4] = rbrew_read32(cpu->mem, _t162);
|
|
/* 02692F8C */ _t163 = cpu->r[1] + 0x00000008u;
|
|
/* 02692F8C */ rbrew_write32(cpu->mem, _t163, cpu->r[6]);
|
|
/* 02692F90 */ _t164 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02692F90 */ rbrew_write32(cpu->mem, _t164, cpu->r[4]);
|
|
/* 02692F94 */ _t165 = cpu->r[1] + 0x00000008u;
|
|
/* 02692F94 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t165);
|
|
/* 02692F98 */ cpu->r[12] = cpu->r[11] + 0x80000000u;
|
|
/* 02692F9C */ cpu->f[6] = cpu->f[0] - cpu->f[13];
|
|
/* 02692FA0 */ _t166 = cpu->r[30] + 0x00000024u;
|
|
/* 02692FA0 */ rbrew_write32(cpu->mem, _t166, cpu->r[12]);
|
|
/* 02692FA4 */ cpu->f[10] = (double)(float)cpu->f[6];
|
|
/* 02692FA8 */ _t167 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02692FA8 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t167);
|
|
/* 02692FAC */ cpu->f[6] = cpu->f[9] * cpu->f[10];
|
|
/* 02692FB0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[6], cpu->f[29]);
|
|
/* 02692FB4 */ _t168 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02692FB4 */ _t169 = _t168 & 0x00000001u;
|
|
/* 02692FB4 */ if (_t169) goto L_02692FB8; else goto L_02692FE4;
|
|
L_02692FB8: ; // 0x2692fb8
|
|
/* 02692FB8 */ cpu->f[11] = (uint32_t)(int32_t)cpu->f[6];
|
|
/* 02692FBC */ cpu->r[0] = cpu->r[1] + 0x00000008u;
|
|
/* 02692FC0 */ /* nop */
|
|
/* 02692FC4 */ _t170 = cpu->r[1] + 0x00000008u;
|
|
/* 02692FC4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t170);
|
|
/* 02692FC8 */ _t171 = cpu->r[30] + 0x00000028u;
|
|
/* 02692FC8 */ rbrew_write32(cpu->mem, _t171, cpu->r[0]);
|
|
/* 02692FCC */ _t172 = cpu->r[29] + 0x00000074u;
|
|
/* 02692FCC */ cpu->r[10] = rbrew_read32(cpu->mem, _t172);
|
|
/* 02692FD0 */ cpu->r[26] = cpu->r[26] + 0x00000001u;
|
|
/* 02692FD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], cpu->r[10]);
|
|
/* 02692FD8 */ cpu->r[28] = cpu->r[28] + 0x00000004u;
|
|
/* 02692FDC */ _t173 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02692FDC */ _t174 = _t173 & 0x00000001u;
|
|
/* 02692FDC */ if (_t174) goto L_02692C3C; else goto L_02692FE0;
|
|
L_02692FE0: ; // 0x2692fe0
|
|
/* 02692FE0 */ goto L_02693014;
|
|
L_02692FE4: ; // 0x2692fe4
|
|
/* 02692FE4 */ cpu->f[6] = cpu->f[6] - cpu->f[29];
|
|
/* 02692FE8 */ cpu->f[9] = (uint32_t)(int32_t)cpu->f[6];
|
|
/* 02692FEC */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02692FF0 */ /* nop */
|
|
/* 02692FF4 */ _t175 = cpu->r[1] + 0x00000008u;
|
|
/* 02692FF4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t175);
|
|
/* 02692FF8 */ cpu->r[8] = cpu->r[7] + 0x80000000u;
|
|
/* 02692FFC */ _t176 = cpu->r[30] + 0x00000028u;
|
|
/* 02692FFC */ rbrew_write32(cpu->mem, _t176, cpu->r[8]);
|
|
/* 02693000 */ _t177 = cpu->r[29] + 0x00000074u;
|
|
/* 02693000 */ cpu->r[10] = rbrew_read32(cpu->mem, _t177);
|
|
/* 02693004 */ cpu->r[26] = cpu->r[26] + 0x00000001u;
|
|
/* 02693008 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], cpu->r[10]);
|
|
/* 0269300C */ cpu->r[28] = cpu->r[28] + 0x00000004u;
|
|
/* 02693010 */ _t178 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02693010 */ _t179 = _t178 & 0x00000001u;
|
|
/* 02693010 */ if (_t179) goto L_02692C3C; else goto L_02693014;
|
|
L_02693014: ; // 0x2693014
|
|
/* 02693014 */ cpu->r[0] = 0x00000000u;
|
|
/* 02693018 */ _t180 = cpu->r[29] + 0x000000A0u;
|
|
/* 02693018 */ rbrew_write16(cpu->mem, _t180, (uint16_t)cpu->r[0]);
|
|
L_0269301C: ; // 0x269301c
|
|
/* 0269301C */ /* nop */
|
|
/* 02693020 */ _t181 = cpu->r[1] + 0x000000F8u;
|
|
/* 02693020 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t181);
|
|
/* 02693024 */ _t182 = cpu->r[1] + 0x000000D8u;
|
|
/* 02693024 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t182);
|
|
/* 02693028 */ _t183 = cpu->r[1] + 0x000000F0u;
|
|
/* 02693028 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t183);
|
|
/* 0269302C */ _t184 = cpu->r[1] + 0x000000D0u;
|
|
/* 0269302C */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t184);
|
|
/* 02693030 */ _t185 = cpu->r[1] + 0x000000C8u;
|
|
/* 02693030 */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t185);
|
|
/* 02693034 */ _t186 = cpu->r[1] + 0x000000E8u;
|
|
/* 02693034 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t186);
|
|
/* 02693038 */ _t187 = cpu->r[1] + 0x000000C0u;
|
|
/* 02693038 */ cpu->f[27] = rbrew_read_f64(cpu->mem, _t187);
|
|
/* 0269303C */ _t188 = cpu->r[1] + 0x000000E0u;
|
|
/* 0269303C */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t188);
|
|
/* 02693040 */ _t189 = cpu->r[1] + 0x000000B8u;
|
|
/* 02693040 */ cpu->f[26] = rbrew_read_f32(cpu->mem, _t189);
|
|
/* 02693044 */ _t190 = cpu->r[1] + 0x00000108u;
|
|
/* 02693044 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t190);
|
|
/* 02693048 */ _t191 = cpu->r[1] + 0x000000B0u;
|
|
/* 02693048 */ cpu->f[26] = rbrew_read_f64(cpu->mem, _t191);
|
|
/* 0269304C */ _t192 = cpu->r[1] + 0x00000100u;
|
|
/* 0269304C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t192);
|
|
/* 02693050 */ _t193 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02693050 */ _t194 = _t193 & 0x00000001u;
|
|
/* 02693050 */ if (_t194) goto L_02693054; // else: addr-0 trap, fall-through
|
|
L_02693054: ; // 0x2693054
|
|
/* 02693054 */ _t195 = cpu->r[1] + 0x00000114u;
|
|
/* 02693054 */ cpu->r[0] = rbrew_read32(cpu->mem, _t195);
|
|
/* 02693058 */ cpu->lr = cpu->r[0];
|
|
/* 0269305C */ cpu->r[1] = cpu->r[1] + 0x00000110u;
|
|
/* 02693060 */ return;
|
|
}
|
|
|
|
// fn_02693064 @ 0x2693064
|
|
void Gambit_fn_02693064(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_02693064: ; // 0x2693064
|
|
/* 02693064 */ cpu->r[0] = cpu->lr;
|
|
/* 02693068 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02693068 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02693068 */ cpu->r[1] = _t0;
|
|
/* 0269306C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269306C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02693070 */ cpu->r[31] = cpu->r[3];
|
|
/* 02693074 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02693074 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02693078 */ _t3 = cpu->r[31] + 0x00000008u;
|
|
/* 02693078 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0269307C */ _t4 = cpu->r[12] + 0x0000001Cu;
|
|
/* 0269307C */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02693080 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000002u);
|
|
/* 02693084 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02693084 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02693084 */ if (_t6) goto L_02693090; else goto L_02693088;
|
|
L_02693088: ; // 0x2693088
|
|
/* 02693088 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000003u);
|
|
/* 0269308C */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269308C */ _t8 = _t7 & 0x00000001u;
|
|
/* 0269308C */ if (_t8) goto L_02693090; else goto L_026930A0;
|
|
L_02693090: ; // 0x2693090
|
|
/* 02693090 */ cpu->r[3] = cpu->r[31];
|
|
/* 02693094 */ Gambit_fn_02692B90(cpu);
|
|
/* 02693098 */ cpu->r[0] = 0x00000000u;
|
|
/* 0269309C */ _t9 = cpu->r[31] + 0x000000A2u;
|
|
/* 0269309C */ rbrew_write16(cpu->mem, _t9, (uint16_t)cpu->r[0]);
|
|
L_026930A0: ; // 0x26930a0
|
|
/* 026930A0 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 026930A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 026930A4 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026930A4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 026930A8 */ cpu->lr = cpu->r[0];
|
|
/* 026930AC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 026930B0 */ return;
|
|
}
|
|
|
|
// fn_02693068 @ 0x2693068
|
|
void Gambit_fn_02693068(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_02693068: ; // 0x2693068
|
|
/* 02693068 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02693068 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02693068 */ cpu->r[1] = _t0;
|
|
/* 0269306C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269306C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02693070 */ cpu->r[31] = cpu->r[3];
|
|
/* 02693074 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02693074 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02693078 */ _t3 = cpu->r[31] + 0x00000008u;
|
|
/* 02693078 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0269307C */ _t4 = cpu->r[12] + 0x0000001Cu;
|
|
/* 0269307C */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02693080 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000002u);
|
|
/* 02693084 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02693084 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02693084 */ if (_t6) goto L_02693090; else goto L_02693088;
|
|
L_02693088: ; // 0x2693088
|
|
/* 02693088 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000003u);
|
|
/* 0269308C */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269308C */ _t8 = _t7 & 0x00000001u;
|
|
/* 0269308C */ if (_t8) goto L_02693090; else goto L_026930A0;
|
|
L_02693090: ; // 0x2693090
|
|
/* 02693090 */ cpu->r[3] = cpu->r[31];
|
|
/* 02693094 */ Gambit_fn_02692B90(cpu);
|
|
/* 02693098 */ cpu->r[0] = 0x00000000u;
|
|
/* 0269309C */ _t9 = cpu->r[31] + 0x000000A2u;
|
|
/* 0269309C */ rbrew_write16(cpu->mem, _t9, (uint16_t)cpu->r[0]);
|
|
L_026930A0: ; // 0x26930a0
|
|
/* 026930A0 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 026930A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 026930A4 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026930A4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 026930A8 */ cpu->lr = cpu->r[0];
|
|
/* 026930AC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 026930B0 */ return;
|
|
}
|
|
|
|
// fn_026930B4 @ 0x26930b4
|
|
void Gambit_fn_026930B4(CPUState* cpu) {
|
|
uint32_t _t0, _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_026930B4: ; // 0x26930b4
|
|
/* 026930B4 */ cpu->r[0] = cpu->lr;
|
|
/* 026930B8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 026930B8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 026930B8 */ cpu->r[1] = _t0;
|
|
/* 026930BC */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 026930BC */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 026930C0 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026930C0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 026930C4 */ cpu->r[30] = cpu->r[3];
|
|
/* 026930C8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 026930C8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 026930CC */ _t4 = cpu->r[30] + 0x000000A2u;
|
|
/* 026930CC */ cpu->r[9] = rbrew_read16(cpu->mem, _t4);
|
|
/* 026930D0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], 0x0000000Au);
|
|
/* 026930D4 */ _t5 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026930D4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 026930D4 */ if (_t6) goto L_026930D8; else goto L_026930F8;
|
|
L_026930D8: ; // 0x26930d8
|
|
/* 026930D8 */ cpu->r[11] = cpu->r[9] + 0x00000001u;
|
|
/* 026930DC */ _t7 = cpu->r[30] + 0x000000A2u;
|
|
/* 026930DC */ rbrew_write16(cpu->mem, _t7, (uint16_t)cpu->r[11]);
|
|
/* 026930E0 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 026930E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 026930E4 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 026930E4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 026930E8 */ cpu->lr = cpu->r[0];
|
|
/* 026930EC */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026930EC */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 026930F0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 026930F4 */ return;
|
|
L_026930F8: ; // 0x26930f8
|
|
/* 026930F8 */ _t11 = cpu->r[30] + 0x00000074u;
|
|
/* 026930F8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 026930FC */ cpu->r[31] = 0x00000000u;
|
|
/* 02693100 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[12]);
|
|
/* 02693104 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02693104 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02693104 */ if (_t13) goto L_02693108; else goto L_02693120;
|
|
L_02693108: ; // 0x2693108
|
|
/* 02693108 */ _t14 = cpu->r[30] + 0x00000008u;
|
|
/* 02693108 */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0269310C */ Gambit_fn_0267025C(cpu);
|
|
/* 02693110 */ _t15 = cpu->r[30] + 0x00000074u;
|
|
/* 02693110 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02693114 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 02693118 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[0]);
|
|
/* 0269311C */ _t16 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269311C */ _t17 = _t16 & 0x00000001u;
|
|
/* 0269311C */ if (_t17) goto L_02693108; else goto L_02693120;
|
|
L_02693120: ; // 0x2693120
|
|
/* 02693120 */ _t18 = cpu->r[30] + 0x00000008u;
|
|
/* 02693120 */ cpu->r[10] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02693124 */ _t19 = cpu->r[10] + 0x0000001Cu;
|
|
/* 02693124 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02693128 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 0269312C */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269312C */ _t21 = _t20 & 0x00000001u;
|
|
/* 0269312C */ if (_t21) goto L_02693138; else goto L_02693130;
|
|
L_02693130: ; // 0x2693130
|
|
/* 02693130 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000003u);
|
|
/* 02693134 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02693134 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02693134 */ if (_t23) goto L_02693138; else goto L_02693140;
|
|
L_02693138: ; // 0x2693138
|
|
/* 02693138 */ cpu->r[3] = cpu->r[30];
|
|
/* 0269313C */ Gambit_fn_02692B90(cpu);
|
|
L_02693140: ; // 0x2693140
|
|
/* 02693140 */ _t24 = cpu->r[1] + 0x00000014u;
|
|
/* 02693140 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02693144 */ _t25 = cpu->r[1] + 0x00000008u;
|
|
/* 02693144 */ cpu->r[30] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02693148 */ cpu->lr = cpu->r[0];
|
|
/* 0269314C */ _t26 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269314C */ cpu->r[31] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02693150 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02693154 */ return;
|
|
}
|
|
|
|
// fn_026930B8 @ 0x26930b8
|
|
void Gambit_fn_026930B8(CPUState* cpu) {
|
|
uint32_t _t0, _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_026930B8: ; // 0x26930b8
|
|
/* 026930B8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 026930B8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 026930B8 */ cpu->r[1] = _t0;
|
|
/* 026930BC */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 026930BC */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 026930C0 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026930C0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 026930C4 */ cpu->r[30] = cpu->r[3];
|
|
/* 026930C8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 026930C8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 026930CC */ _t4 = cpu->r[30] + 0x000000A2u;
|
|
/* 026930CC */ cpu->r[9] = rbrew_read16(cpu->mem, _t4);
|
|
/* 026930D0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], 0x0000000Au);
|
|
/* 026930D4 */ _t5 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026930D4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 026930D4 */ if (_t6) goto L_026930D8; else goto L_026930F8;
|
|
L_026930D8: ; // 0x26930d8
|
|
/* 026930D8 */ cpu->r[11] = cpu->r[9] + 0x00000001u;
|
|
/* 026930DC */ _t7 = cpu->r[30] + 0x000000A2u;
|
|
/* 026930DC */ rbrew_write16(cpu->mem, _t7, (uint16_t)cpu->r[11]);
|
|
/* 026930E0 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 026930E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 026930E4 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 026930E4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 026930E8 */ cpu->lr = cpu->r[0];
|
|
/* 026930EC */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026930EC */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 026930F0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 026930F4 */ return;
|
|
L_026930F8: ; // 0x26930f8
|
|
/* 026930F8 */ _t11 = cpu->r[30] + 0x00000074u;
|
|
/* 026930F8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 026930FC */ cpu->r[31] = 0x00000000u;
|
|
/* 02693100 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[12]);
|
|
/* 02693104 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02693104 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02693104 */ if (_t13) goto L_02693108; else goto L_02693120;
|
|
L_02693108: ; // 0x2693108
|
|
/* 02693108 */ _t14 = cpu->r[30] + 0x00000008u;
|
|
/* 02693108 */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0269310C */ Gambit_fn_0267025C(cpu);
|
|
/* 02693110 */ _t15 = cpu->r[30] + 0x00000074u;
|
|
/* 02693110 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02693114 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 02693118 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[0]);
|
|
/* 0269311C */ _t16 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269311C */ _t17 = _t16 & 0x00000001u;
|
|
/* 0269311C */ if (_t17) goto L_02693108; else goto L_02693120;
|
|
L_02693120: ; // 0x2693120
|
|
/* 02693120 */ _t18 = cpu->r[30] + 0x00000008u;
|
|
/* 02693120 */ cpu->r[10] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02693124 */ _t19 = cpu->r[10] + 0x0000001Cu;
|
|
/* 02693124 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02693128 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 0269312C */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269312C */ _t21 = _t20 & 0x00000001u;
|
|
/* 0269312C */ if (_t21) goto L_02693138; else goto L_02693130;
|
|
L_02693130: ; // 0x2693130
|
|
/* 02693130 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000003u);
|
|
/* 02693134 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02693134 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02693134 */ if (_t23) goto L_02693138; else goto L_02693140;
|
|
L_02693138: ; // 0x2693138
|
|
/* 02693138 */ cpu->r[3] = cpu->r[30];
|
|
/* 0269313C */ Gambit_fn_02692B90(cpu);
|
|
L_02693140: ; // 0x2693140
|
|
/* 02693140 */ _t24 = cpu->r[1] + 0x00000014u;
|
|
/* 02693140 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02693144 */ _t25 = cpu->r[1] + 0x00000008u;
|
|
/* 02693144 */ cpu->r[30] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02693148 */ cpu->lr = cpu->r[0];
|
|
/* 0269314C */ _t26 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269314C */ cpu->r[31] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02693150 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02693154 */ return;
|
|
}
|
|
|
|
// fn_02693158 @ 0x2693158
|
|
void Gambit_fn_02693158(CPUState* cpu) {
|
|
L_02693158: ; // 0x2693158
|
|
/* 02693158 */ return;
|
|
}
|
|
|
|
// fn_0269315C @ 0x269315c
|
|
void Gambit_fn_0269315C(CPUState* cpu) {
|
|
L_0269315C: ; // 0x269315c
|
|
/* 0269315C */ return;
|
|
}
|
|
|
|
// fn_02693160 @ 0x2693160
|
|
void Gambit_fn_02693160(CPUState* cpu) {
|
|
L_02690424: ; // 0x2690424
|
|
/* 02690424 */ return;
|
|
L_02693160: ; // 0x2693160
|
|
/* 02693160 */ goto L_02690424;
|
|
}
|
|
|
|
// fn_02693164 @ 0x2693164
|
|
void Gambit_fn_02693164(CPUState* cpu) {
|
|
uint32_t _t0, _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;
|
|
|
|
L_02693164: ; // 0x2693164
|
|
/* 02693164 */ _t0 = cpu->r[1] + 0xFFFFFD40u;
|
|
/* 02693164 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02693164 */ cpu->r[1] = _t0;
|
|
/* 02693168 */ _t1 = cpu->r[1] + 0x00000200u;
|
|
/* 02693168 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[20]);
|
|
/* 0269316C */ _t2 = cpu->r[1] + 0x00000210u;
|
|
/* 0269316C */ rbrew_write_f64(cpu->mem, _t2, cpu->f[21]);
|
|
/* 02693170 */ _t3 = cpu->r[1] + 0x00000220u;
|
|
/* 02693170 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[22]);
|
|
/* 02693174 */ /* nop */
|
|
/* 02693178 */ _t4 = cpu->r[1] + 0x00000230u;
|
|
/* 02693178 */ rbrew_write_f64(cpu->mem, _t4, cpu->f[23]);
|
|
/* 0269317C */ /* nop */
|
|
/* 02693180 */ _t5 = cpu->r[1] + 0x00000240u;
|
|
/* 02693180 */ rbrew_write_f64(cpu->mem, _t5, cpu->f[24]);
|
|
/* 02693184 */ /* nop */
|
|
/* 02693188 */ _t6 = cpu->r[1] + 0x00000250u;
|
|
/* 02693188 */ rbrew_write_f64(cpu->mem, _t6, cpu->f[25]);
|
|
/* 0269318C */ /* nop */
|
|
/* 02693190 */ _t7 = cpu->r[1] + 0x00000260u;
|
|
/* 02693190 */ rbrew_write_f64(cpu->mem, _t7, cpu->f[26]);
|
|
/* 02693194 */ /* nop */
|
|
/* 02693198 */ _t8 = cpu->r[1] + 0x00000270u;
|
|
/* 02693198 */ rbrew_write_f64(cpu->mem, _t8, cpu->f[27]);
|
|
/* 0269319C */ /* nop */
|
|
/* 026931A0 */ _t9 = cpu->r[1] + 0x00000280u;
|
|
/* 026931A0 */ rbrew_write_f64(cpu->mem, _t9, cpu->f[28]);
|
|
/* 026931A4 */ /* nop */
|
|
/* 026931A8 */ _t10 = cpu->r[1] + 0x00000290u;
|
|
/* 026931A8 */ rbrew_write_f64(cpu->mem, _t10, cpu->f[29]);
|
|
/* 026931AC */ /* nop */
|
|
/* 026931B0 */ _t11 = cpu->r[1] + 0x00000208u;
|
|
/* 026931B0 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[20]);
|
|
/* 026931B4 */ _t12 = cpu->r[1] + 0x00000218u;
|
|
/* 026931B4 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[21]);
|
|
/* 026931B8 */ _t13 = cpu->r[1] + 0x00000228u;
|
|
/* 026931B8 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[22]);
|
|
/* 026931BC */ /* nop */
|
|
/* 026931C0 */ _t14 = cpu->r[1] + 0x00000238u;
|
|
/* 026931C0 */ rbrew_write_f32(cpu->mem, _t14, cpu->f[23]);
|
|
/* 026931C4 */ _t15 = cpu->r[1] + 0x00000248u;
|
|
/* 026931C4 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[24]);
|
|
/* 026931C8 */ _t16 = cpu->r[1] + 0x00000258u;
|
|
/* 026931C8 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[25]);
|
|
/* 026931CC */ /* nop */
|
|
/* 026931D0 */ _t17 = cpu->r[1] + 0x00000268u;
|
|
/* 026931D0 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[26]);
|
|
/* 026931D4 */ _t18 = cpu->r[1] + 0x00000278u;
|
|
/* 026931D4 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[27]);
|
|
/* 026931D8 */ _t19 = cpu->r[1] + 0x00000288u;
|
|
/* 026931D8 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[28]);
|
|
/* 026931DC */ cpu->r[0] = cpu->lr;
|
|
/* 026931E0 */ _t20 = cpu->r[1] + 0x00000298u;
|
|
/* 026931E0 */ rbrew_write_f32(cpu->mem, _t20, cpu->f[29]);
|
|
/* 026931E4 */ _t21 = cpu->r[1] + 0x000002A0u;
|
|
/* 026931E4 */ rbrew_write_f64(cpu->mem, _t21, cpu->f[30]);
|
|
/* 026931E8 */ /* nop */
|
|
/* 026931EC */ _t22 = cpu->r[1] + 0x000002A8u;
|
|
/* 026931EC */ rbrew_write_f32(cpu->mem, _t22, cpu->f[30]);
|
|
/* 026931F0 */ _t23 = cpu->r[1] + 0x000002B0u;
|
|
/* 026931F0 */ rbrew_write_f64(cpu->mem, _t23, cpu->f[31]);
|
|
/* 026931F4 */ /* nop */
|
|
/* 026931F8 */ _t24 = cpu->r[1] + 0x000002B8u;
|
|
/* 026931F8 */ rbrew_write_f32(cpu->mem, _t24, cpu->f[31]);
|
|
/* 026931FC */ _t25 = cpu->r[1] + 0x000002C4u;
|
|
/* 026931FC */ rbrew_write32(cpu->mem, _t25, cpu->r[0]);
|
|
/* 02693200 */ _t26 = cpu->r[1] + 0x000001F0u;
|
|
/* 02693200 */ rbrew_write32(cpu->mem, _t26, cpu->r[28]);
|
|
/* 02693204 */ _t27 = cpu->r[1] + 0x000001F4u;
|
|
/* 02693204 */ rbrew_write32(cpu->mem, _t27, cpu->r[29]);
|
|
/* 02693208 */ _t28 = cpu->r[1] + 0x000001F8u;
|
|
/* 02693208 */ rbrew_write32(cpu->mem, _t28, cpu->r[30]);
|
|
/* 0269320C */ _t29 = cpu->r[1] + 0x000001FCu;
|
|
/* 0269320C */ rbrew_write32(cpu->mem, _t29, cpu->r[31]);
|
|
/* 02693210 */ cpu->r[31] = cpu->r[4];
|
|
/* 02693214 */ cpu->r[30] = cpu->r[3];
|
|
/* 02693218 */ Gambit_fn_02690428(cpu);
|
|
/* 0269321C */ _t30 = cpu->r[31] + 0x00000000u;
|
|
/* 0269321C */ cpu->r[4] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02693220 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000006u);
|
|
/* 02693224 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02693224 */ _t32 = _t31 & 0x00000001u;
|
|
/* 02693224 */ if (_t32) goto L_02693228; else goto L_026936B0;
|
|
L_02693228: ; // 0x2693228
|
|
/* 02693228 */ _t33 = cpu->r[30] + 0x00000070u;
|
|
/* 02693228 */ cpu->r[5] = rbrew_read8(cpu->mem, _t33);
|
|
/* 0269322C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 02693230 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02693230 */ _t35 = _t34 & 0x00000001u;
|
|
/* 02693230 */ if (_t35) goto L_026936B0; else goto L_02693234;
|
|
L_02693234: ; // 0x2693234
|
|
/* 02693234 */ cpu->r[3] = cpu->r[1] + 0x00000178u;
|
|
/* 02693238 */ Gambit_fn_0281E19C(cpu);
|
|
/* 0269323C */ cpu->r[29] = 0x00000000u;
|
|
/* 02693240 */ cpu->r[0] = 0x00000001u;
|
|
/* 02693244 */ _t36 = cpu->r[1] + 0x00000179u;
|
|
/* 02693244 */ rbrew_write8(cpu->mem, _t36, (uint8_t)cpu->r[29]);
|
|
/* 02693248 */ cpu->r[3] = cpu->r[1] + 0x00000178u;
|
|
/* 0269324C */ _t37 = cpu->r[1] + 0x00000178u;
|
|
/* 0269324C */ rbrew_write8(cpu->mem, _t37, (uint8_t)cpu->r[0]);
|
|
/* 02693250 */ Gambit_fn_0281E2C8(cpu);
|
|
/* 02693254 */ _t38 = cpu->r[30] + 0x00000088u;
|
|
/* 02693254 */ cpu->r[0] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02693258 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[0]);
|
|
/* 0269325C */ _t39 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269325C */ _t40 = _t39 & 0x00000001u;
|
|
/* 0269325C */ if (_t40) goto L_02693260; else goto L_026936B0;
|
|
L_02693260: ; // 0x2693260
|
|
/* 02693260 */ cpu->r[10] = 0x100E0000u;
|
|
/* 02693264 */ cpu->r[4] = 0x100E0000u;
|
|
/* 02693268 */ _t41 = cpu->r[10] + 0x00003A7Cu;
|
|
/* 02693268 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 0269326C */ cpu->r[6] = 0x100E0000u;
|
|
/* 02693270 */ cpu->r[9] = 0x101F0000u;
|
|
/* 02693274 */ _t42 = cpu->r[4] + 0x00003A80u;
|
|
/* 02693274 */ cpu->f[26] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 02693278 */ cpu->r[9] = cpu->r[9] + 0x00006344u;
|
|
/* 0269327C */ _t43 = cpu->r[6] + 0x00003A98u;
|
|
/* 0269327C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 02693280 */ cpu->r[12] = 0x100E0000u;
|
|
/* 02693284 */ /* nop */
|
|
/* 02693288 */ cpu->r[4] = 0x100E0000u;
|
|
/* 0269328C */ _t44 = cpu->r[12] + 0x00003A94u;
|
|
/* 0269328C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 02693290 */ cpu->r[12] = 0x101F0000u;
|
|
/* 02693294 */ cpu->r[11] = 0x100E0000u;
|
|
/* 02693298 */ _t45 = cpu->r[4] + 0x00003A08u;
|
|
/* 02693298 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t45);
|
|
/* 0269329C */ cpu->r[12] = cpu->r[12] + 0x00006368u;
|
|
/* 026932A0 */ cpu->r[7] = 0x101F0000u;
|
|
/* 026932A4 */ _t46 = cpu->r[9] + 0x00000008u;
|
|
/* 026932A4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 026932A8 */ cpu->r[7] = cpu->r[7] + 0x00006350u;
|
|
/* 026932AC */ _t47 = cpu->r[11] + 0x00003A54u;
|
|
/* 026932AC */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 026932B0 */ _t48 = cpu->r[12] + 0x00000008u;
|
|
/* 026932B0 */ cpu->f[23] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 026932B4 */ _t49 = cpu->r[7] + 0x00000008u;
|
|
/* 026932B4 */ cpu->f[21] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 026932B8 */ cpu->f[22] = cpu->f[12] * cpu->f[0];
|
|
/* 026932BC */ /* nop */
|
|
/* 026932C0 */ cpu->r[28] = 0x00000000u;
|
|
/* 026932C4 */ /* nop */
|
|
/* 026932C8 */ /* nop */
|
|
L_026932CC: ; // 0x26932cc
|
|
/* 026932CC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[0]);
|
|
/* 026932D0 */ cpu->r[31] = 0x00000000u;
|
|
/* 026932D4 */ _t50 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026932D4 */ _t51 = _t50 & 0x00000001u;
|
|
/* 026932D4 */ if (_t51) goto L_026932D8; else goto L_026932E0;
|
|
L_026932D8: ; // 0x26932d8
|
|
/* 026932D8 */ _t52 = cpu->r[30] + 0x00000090u;
|
|
/* 026932D8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t52);
|
|
/* 026932DC */ _t53 = cpu->r[7] + cpu->r[28];
|
|
/* 026932DC */ cpu->r[31] = rbrew_read32(cpu->mem, _t53);
|
|
L_026932E0: ; // 0x26932e0
|
|
/* 026932E0 */ _t54 = cpu->r[30] + 0x00000008u;
|
|
/* 026932E0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t54);
|
|
/* 026932E4 */ _t55 = cpu->r[31] + 0x00000004u;
|
|
/* 026932E4 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 026932E8 */ _t56 = cpu->r[7] + 0x000000B8u;
|
|
/* 026932E8 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 026932EC */ _t57 = cpu->r[31] + 0x0000000Cu;
|
|
/* 026932EC */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 026932F0 */ _t58 = cpu->r[1] + 0x00000010u;
|
|
/* 026932F0 */ rbrew_write_f32(cpu->mem, _t58, cpu->f[6]);
|
|
/* 026932F4 */ _t59 = cpu->r[1] + 0x00000014u;
|
|
/* 026932F4 */ rbrew_write_f32(cpu->mem, _t59, cpu->f[7]);
|
|
/* 026932F8 */ _t60 = cpu->r[1] + 0x00000018u;
|
|
/* 026932F8 */ rbrew_write_f32(cpu->mem, _t60, cpu->f[8]);
|
|
/* 026932FC */ _t61 = cpu->r[7] + 0x0000002Cu;
|
|
/* 026932FC */ cpu->r[6] = rbrew_read32(cpu->mem, _t61);
|
|
/* 02693300 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 02693304 */ _t62 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02693304 */ _t63 = _t62 & 0x00000001u;
|
|
/* 02693304 */ if (_t63) goto L_02693308; else goto L_02693358;
|
|
L_02693308: ; // 0x2693308
|
|
/* 02693308 */ cpu->r[10] = 0x100E0000u;
|
|
/* 0269330C */ _t64 = cpu->r[10] + 0x00003A88u;
|
|
/* 0269330C */ cpu->f[11] = rbrew_read_f64(cpu->mem, _t64);
|
|
/* 02693310 */ cpu->r[12] = 0x43300000u;
|
|
/* 02693314 */ _t65 = cpu->r[31] + 0x00000018u;
|
|
/* 02693314 */ cpu->r[10] = rbrew_read32(cpu->mem, _t65);
|
|
/* 02693318 */ _t66 = cpu->r[1] + 0x00000008u;
|
|
/* 02693318 */ rbrew_write32(cpu->mem, _t66, cpu->r[12]);
|
|
/* 0269331C */ _t67 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269331C */ rbrew_write32(cpu->mem, _t67, cpu->r[10]);
|
|
/* 02693320 */ _t68 = cpu->r[1] + 0x00000008u;
|
|
/* 02693320 */ cpu->f[12] = rbrew_read_f64(cpu->mem, _t68);
|
|
/* 02693324 */ _t69 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02693324 */ cpu->r[9] = rbrew_read32(cpu->mem, _t69);
|
|
/* 02693328 */ cpu->f[6] = cpu->f[12] - cpu->f[11];
|
|
/* 0269332C */ _t70 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269332C */ rbrew_write32(cpu->mem, _t70, cpu->r[9]);
|
|
/* 02693330 */ _t71 = cpu->r[1] + 0x00000008u;
|
|
/* 02693330 */ cpu->f[12] = rbrew_read_f64(cpu->mem, _t71);
|
|
/* 02693334 */ cpu->f[12] = cpu->f[12] - cpu->f[11];
|
|
/* 02693338 */ cpu->f[8] = (double)(float)cpu->f[6];
|
|
/* 0269333C */ _t72 = cpu->r[31] + 0x00000014u;
|
|
/* 0269333C */ cpu->r[8] = rbrew_read32(cpu->mem, _t72);
|
|
/* 02693340 */ cpu->f[10] = (double)(float)cpu->f[12];
|
|
/* 02693344 */ cpu->f[12] = cpu->f[30];
|
|
/* 02693348 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0269334C */ cpu->f[9] = cpu->f[8] - cpu->f[10];
|
|
/* 02693350 */ _t73 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02693350 */ _t74 = _t73 & 0x00000001u;
|
|
/* 02693350 */ if (_t74) goto L_026933CC; else goto L_02693354;
|
|
L_02693354: ; // 0x2693354
|
|
/* 02693354 */ goto L_026933A4;
|
|
L_02693358: ; // 0x2693358
|
|
/* 02693358 */ _t75 = cpu->r[31] + 0x00000018u;
|
|
/* 02693358 */ cpu->r[5] = rbrew_read32(cpu->mem, _t75);
|
|
/* 0269335C */ cpu->r[0] = 0x43300000u;
|
|
/* 02693360 */ _t76 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02693360 */ cpu->r[10] = rbrew_read32(cpu->mem, _t76);
|
|
/* 02693364 */ _t77 = cpu->r[1] + 0x00000008u;
|
|
/* 02693364 */ rbrew_write32(cpu->mem, _t77, cpu->r[0]);
|
|
/* 02693368 */ cpu->r[7] = 0x100E0000u;
|
|
/* 0269336C */ _t78 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269336C */ rbrew_write32(cpu->mem, _t78, cpu->r[10]);
|
|
/* 02693370 */ _t79 = cpu->r[1] + 0x00000008u;
|
|
/* 02693370 */ cpu->f[10] = rbrew_read_f64(cpu->mem, _t79);
|
|
/* 02693374 */ _t80 = cpu->r[7] + 0x00003A88u;
|
|
/* 02693374 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t80);
|
|
/* 02693378 */ _t81 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02693378 */ rbrew_write32(cpu->mem, _t81, cpu->r[5]);
|
|
/* 0269337C */ _t82 = cpu->r[1] + 0x00000008u;
|
|
/* 0269337C */ cpu->f[12] = rbrew_read_f64(cpu->mem, _t82);
|
|
/* 02693380 */ cpu->f[6] = cpu->f[10] - cpu->f[13];
|
|
/* 02693384 */ cpu->f[12] = cpu->f[12] - cpu->f[13];
|
|
/* 02693388 */ cpu->f[8] = (double)(float)cpu->f[6];
|
|
/* 0269338C */ _t83 = cpu->r[31] + 0x00000014u;
|
|
/* 0269338C */ cpu->r[8] = rbrew_read32(cpu->mem, _t83);
|
|
/* 02693390 */ cpu->f[10] = (double)(float)cpu->f[12];
|
|
/* 02693394 */ cpu->f[12] = cpu->f[30];
|
|
/* 02693398 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0269339C */ cpu->f[9] = cpu->f[8] - cpu->f[10];
|
|
/* 026933A0 */ _t84 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026933A0 */ _t85 = _t84 & 0x00000001u;
|
|
/* 026933A0 */ if (_t85) goto L_026933CC; else goto L_026933A4;
|
|
L_026933A4: ; // 0x26933a4
|
|
/* 026933A4 */ cpu->r[5] = 0x100E0000u;
|
|
/* 026933A8 */ _t86 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026933A8 */ rbrew_write32(cpu->mem, _t86, cpu->r[8]);
|
|
/* 026933AC */ _t87 = cpu->r[5] + 0x00003A88u;
|
|
/* 026933AC */ cpu->f[10] = rbrew_read_f64(cpu->mem, _t87);
|
|
/* 026933B0 */ cpu->r[5] = 0x43300000u;
|
|
/* 026933B4 */ _t88 = cpu->r[1] + 0x00000008u;
|
|
/* 026933B4 */ rbrew_write32(cpu->mem, _t88, cpu->r[5]);
|
|
/* 026933B8 */ _t89 = cpu->r[1] + 0x00000008u;
|
|
/* 026933B8 */ cpu->f[11] = rbrew_read_f64(cpu->mem, _t89);
|
|
/* 026933BC */ cpu->f[13] = cpu->f[11] - cpu->f[10];
|
|
/* 026933C0 */ cpu->f[7] = (double)(float)cpu->f[13];
|
|
/* 026933C4 */ cpu->f[8] = cpu->f[9] / cpu->f[7];
|
|
/* 026933C8 */ cpu->f[12] = cpu->f[31] * cpu->f[8];
|
|
L_026933CC: ; // 0x26933cc
|
|
/* 026933CC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[30]);
|
|
/* 026933D0 */ cpu->f[6] = cpu->f[21] * cpu->f[12];
|
|
/* 026933D4 */ _t90 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 026933D4 */ _t91 = _t90 & 0x00000001u;
|
|
/* 026933D4 */ if (_t91) goto L_026933D8; else goto L_026934AC;
|
|
L_026933D8: ; // 0x26933d8
|
|
/* 026933D8 */ _t92 = cpu->r[1] + 0x00000030u;
|
|
/* 026933D8 */ rbrew_write_f32(cpu->mem, _t92, cpu->f[6]);
|
|
/* 026933DC */ /* nop */
|
|
/* 026933E0 */ _t93 = cpu->r[1] + 0x00000030u;
|
|
/* 026933E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t93);
|
|
/* 026933E4 */ /* nop */
|
|
/* 026933E8 */ _t94 = cpu->r[1] + 0x00000028u;
|
|
/* 026933E8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t94);
|
|
/* 026933EC */ _t95 = cpu->r[1] + 0x0000002Cu;
|
|
/* 026933EC */ cpu->r[4] = rbrew_read32(cpu->mem, _t95);
|
|
/* 026933F0 */ _t96 = cpu->r[1] + 0x000000DCu;
|
|
/* 026933F0 */ rbrew_write32(cpu->mem, _t96, cpu->r[12]);
|
|
/* 026933F4 */ _t97 = cpu->r[1] + 0x000000E0u;
|
|
/* 026933F4 */ rbrew_write32(cpu->mem, _t97, cpu->r[4]);
|
|
/* 026933F8 */ /* nop */
|
|
/* 026933FC */ _t98 = cpu->r[1] + 0x000000E4u;
|
|
/* 026933FC */ rbrew_write32(cpu->mem, _t98, cpu->r[0]);
|
|
/* 02693400 */ _t99 = cpu->r[1] + 0x000000E4u;
|
|
/* 02693400 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t99);
|
|
/* 02693404 */ /* nop */
|
|
/* 02693408 */ _t100 = cpu->r[1] + 0x00000018u;
|
|
/* 02693408 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t100);
|
|
/* 0269340C */ cpu->f[13] = cpu->f[0] * cpu->f[28];
|
|
/* 02693410 */ /* nop */
|
|
/* 02693414 */ _t101 = cpu->r[1] + 0x00000034u;
|
|
/* 02693414 */ cpu->r[8] = rbrew_read32(cpu->mem, _t101);
|
|
/* 02693418 */ _t102 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02693418 */ rbrew_write_f32(cpu->mem, _t102, cpu->f[13]);
|
|
/* 0269341C */ _t103 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0269341C */ cpu->r[10] = rbrew_read32(cpu->mem, _t103);
|
|
/* 02693420 */ _t104 = cpu->r[1] + 0x00000038u;
|
|
/* 02693420 */ cpu->r[9] = rbrew_read32(cpu->mem, _t104);
|
|
/* 02693424 */ _t105 = cpu->r[1] + 0x000000D0u;
|
|
/* 02693424 */ rbrew_write32(cpu->mem, _t105, cpu->r[8]);
|
|
/* 02693428 */ _t106 = cpu->r[1] + 0x000000D4u;
|
|
/* 02693428 */ rbrew_write32(cpu->mem, _t106, cpu->r[9]);
|
|
/* 0269342C */ _t107 = cpu->r[1] + 0x000000D8u;
|
|
/* 0269342C */ rbrew_write32(cpu->mem, _t107, cpu->r[10]);
|
|
/* 02693430 */ _t108 = cpu->r[1] + 0x000000D8u;
|
|
/* 02693430 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t108);
|
|
/* 02693434 */ _t109 = cpu->r[1] + 0x00000020u;
|
|
/* 02693434 */ rbrew_write_f32(cpu->mem, _t109, cpu->f[12]);
|
|
/* 02693438 */ cpu->f[12] = cpu->f[6] + cpu->f[7];
|
|
/* 0269343C */ /* nop */
|
|
/* 02693440 */ /* nop */
|
|
/* 02693444 */ _t110 = cpu->r[1] + 0x00000048u;
|
|
/* 02693444 */ rbrew_write_f32(cpu->mem, _t110, cpu->f[12]);
|
|
/* 02693448 */ _t111 = cpu->r[1] + 0x00000048u;
|
|
/* 02693448 */ cpu->r[5] = rbrew_read32(cpu->mem, _t111);
|
|
/* 0269344C */ /* nop */
|
|
/* 02693450 */ /* nop */
|
|
/* 02693454 */ _t112 = cpu->r[1] + 0x00000040u;
|
|
/* 02693454 */ cpu->r[0] = rbrew_read32(cpu->mem, _t112);
|
|
/* 02693458 */ _t113 = cpu->r[1] + 0x00000044u;
|
|
/* 02693458 */ cpu->r[4] = rbrew_read32(cpu->mem, _t113);
|
|
/* 0269345C */ _t114 = cpu->r[1] + 0x000000C4u;
|
|
/* 0269345C */ rbrew_write32(cpu->mem, _t114, cpu->r[0]);
|
|
/* 02693460 */ _t115 = cpu->r[1] + 0x000000C8u;
|
|
/* 02693460 */ rbrew_write32(cpu->mem, _t115, cpu->r[4]);
|
|
/* 02693464 */ /* nop */
|
|
/* 02693468 */ _t116 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02693468 */ rbrew_write_f32(cpu->mem, _t116, cpu->f[26]);
|
|
/* 0269346C */ /* nop */
|
|
/* 02693470 */ _t117 = cpu->r[1] + 0x000000CCu;
|
|
/* 02693470 */ rbrew_write32(cpu->mem, _t117, cpu->r[5]);
|
|
/* 02693474 */ /* nop */
|
|
/* 02693478 */ _t118 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02693478 */ cpu->r[8] = rbrew_read32(cpu->mem, _t118);
|
|
/* 0269347C */ _t119 = cpu->r[1] + 0x000000CCu;
|
|
/* 0269347C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t119);
|
|
/* 02693480 */ _t120 = cpu->r[1] + 0x00000050u;
|
|
/* 02693480 */ cpu->r[0] = rbrew_read32(cpu->mem, _t120);
|
|
/* 02693484 */ cpu->r[7] = cpu->r[1] + 0x0000010Cu;
|
|
/* 02693488 */ _t121 = cpu->r[1] + 0x0000010Cu;
|
|
/* 02693488 */ rbrew_write32(cpu->mem, _t121, cpu->r[8]);
|
|
/* 0269348C */ cpu->f[9] = cpu->f[11] + cpu->f[21];
|
|
/* 02693490 */ _t122 = cpu->r[1] + 0x00000110u;
|
|
/* 02693490 */ rbrew_write32(cpu->mem, _t122, cpu->r[0]);
|
|
/* 02693494 */ cpu->r[5] = cpu->r[7];
|
|
/* 02693498 */ _t123 = cpu->r[1] + 0x00000024u;
|
|
/* 02693498 */ rbrew_write_f32(cpu->mem, _t123, cpu->f[26]);
|
|
/* 0269349C */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 026934A0 */ _t124 = cpu->r[1] + 0x00000054u;
|
|
/* 026934A0 */ rbrew_write_f32(cpu->mem, _t124, cpu->f[9]);
|
|
/* 026934A4 */ _t125 = cpu->r[1] + 0x00000054u;
|
|
/* 026934A4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t125);
|
|
/* 026934A8 */ goto L_02693584;
|
|
L_026934AC: ; // 0x26934ac
|
|
/* 026934AC */ cpu->f[7] = -cpu->f[6];
|
|
/* 026934B0 */ _t126 = cpu->r[1] + 0x0000001Cu;
|
|
/* 026934B0 */ rbrew_write_f32(cpu->mem, _t126, cpu->f[26]);
|
|
/* 026934B4 */ cpu->f[0] = -cpu->f[12];
|
|
/* 026934B8 */ _t127 = cpu->r[1] + 0x00000020u;
|
|
/* 026934B8 */ rbrew_write_f32(cpu->mem, _t127, cpu->f[12]);
|
|
/* 026934BC */ _t128 = cpu->r[1] + 0x00000060u;
|
|
/* 026934BC */ rbrew_write_f32(cpu->mem, _t128, cpu->f[7]);
|
|
/* 026934C0 */ _t129 = cpu->r[1] + 0x00000060u;
|
|
/* 026934C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t129);
|
|
/* 026934C4 */ /* nop */
|
|
/* 026934C8 */ /* nop */
|
|
/* 026934CC */ /* nop */
|
|
/* 026934D0 */ _t130 = cpu->r[1] + 0x00000058u;
|
|
/* 026934D0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t130);
|
|
/* 026934D4 */ _t131 = cpu->r[1] + 0x0000005Cu;
|
|
/* 026934D4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t131);
|
|
/* 026934D8 */ _t132 = cpu->r[1] + 0x000000DCu;
|
|
/* 026934D8 */ rbrew_write32(cpu->mem, _t132, cpu->r[6]);
|
|
/* 026934DC */ _t133 = cpu->r[1] + 0x000000E0u;
|
|
/* 026934DC */ rbrew_write32(cpu->mem, _t133, cpu->r[8]);
|
|
/* 026934E0 */ /* nop */
|
|
/* 026934E4 */ _t134 = cpu->r[1] + 0x000000E4u;
|
|
/* 026934E4 */ rbrew_write32(cpu->mem, _t134, cpu->r[0]);
|
|
/* 026934E8 */ _t135 = cpu->r[1] + 0x000000E4u;
|
|
/* 026934E8 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t135);
|
|
/* 026934EC */ /* nop */
|
|
/* 026934F0 */ /* nop */
|
|
/* 026934F4 */ cpu->f[8] = cpu->f[9] * cpu->f[28];
|
|
/* 026934F8 */ _t136 = cpu->r[1] + 0x00000064u;
|
|
/* 026934F8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t136);
|
|
/* 026934FC */ _t137 = cpu->r[1] + 0x00000068u;
|
|
/* 026934FC */ cpu->r[9] = rbrew_read32(cpu->mem, _t137);
|
|
/* 02693500 */ _t138 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02693500 */ rbrew_write_f32(cpu->mem, _t138, cpu->f[8]);
|
|
/* 02693504 */ _t139 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02693504 */ cpu->r[0] = rbrew_read32(cpu->mem, _t139);
|
|
/* 02693508 */ _t140 = cpu->r[1] + 0x000000D0u;
|
|
/* 02693508 */ rbrew_write32(cpu->mem, _t140, cpu->r[8]);
|
|
/* 0269350C */ _t141 = cpu->r[1] + 0x000000D4u;
|
|
/* 0269350C */ rbrew_write32(cpu->mem, _t141, cpu->r[9]);
|
|
/* 02693510 */ _t142 = cpu->r[1] + 0x000000D8u;
|
|
/* 02693510 */ rbrew_write32(cpu->mem, _t142, cpu->r[0]);
|
|
/* 02693514 */ _t143 = cpu->r[1] + 0x000000D8u;
|
|
/* 02693514 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t143);
|
|
/* 02693518 */ _t144 = cpu->r[1] + 0x00000018u;
|
|
/* 02693518 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t144);
|
|
/* 0269351C */ /* nop */
|
|
/* 02693520 */ cpu->f[12] = cpu->f[0] + cpu->f[10];
|
|
/* 02693524 */ /* nop */
|
|
/* 02693528 */ _t145 = cpu->r[1] + 0x00000078u;
|
|
/* 02693528 */ rbrew_write_f32(cpu->mem, _t145, cpu->f[12]);
|
|
/* 0269352C */ _t146 = cpu->r[1] + 0x00000078u;
|
|
/* 0269352C */ cpu->r[10] = rbrew_read32(cpu->mem, _t146);
|
|
/* 02693530 */ /* nop */
|
|
/* 02693534 */ _t147 = cpu->r[1] + 0x00000070u;
|
|
/* 02693534 */ cpu->r[8] = rbrew_read32(cpu->mem, _t147);
|
|
/* 02693538 */ _t148 = cpu->r[1] + 0x00000074u;
|
|
/* 02693538 */ cpu->r[9] = rbrew_read32(cpu->mem, _t148);
|
|
/* 0269353C */ _t149 = cpu->r[1] + 0x000000C4u;
|
|
/* 0269353C */ rbrew_write32(cpu->mem, _t149, cpu->r[8]);
|
|
/* 02693540 */ _t150 = cpu->r[1] + 0x000000C8u;
|
|
/* 02693540 */ rbrew_write32(cpu->mem, _t150, cpu->r[9]);
|
|
/* 02693544 */ _t151 = cpu->r[1] + 0x000000CCu;
|
|
/* 02693544 */ rbrew_write32(cpu->mem, _t151, cpu->r[10]);
|
|
/* 02693548 */ _t152 = cpu->r[1] + 0x000000CCu;
|
|
/* 02693548 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t152);
|
|
/* 0269354C */ /* nop */
|
|
/* 02693550 */ cpu->f[8] = cpu->f[11] + cpu->f[21];
|
|
/* 02693554 */ _t153 = cpu->r[1] + 0x00000024u;
|
|
/* 02693554 */ rbrew_write_f32(cpu->mem, _t153, cpu->f[26]);
|
|
/* 02693558 */ /* nop */
|
|
/* 0269355C */ _t154 = cpu->r[1] + 0x00000084u;
|
|
/* 0269355C */ rbrew_write_f32(cpu->mem, _t154, cpu->f[8]);
|
|
/* 02693560 */ _t155 = cpu->r[1] + 0x00000084u;
|
|
/* 02693560 */ cpu->r[10] = rbrew_read32(cpu->mem, _t155);
|
|
/* 02693564 */ /* nop */
|
|
/* 02693568 */ _t156 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02693568 */ cpu->r[12] = rbrew_read32(cpu->mem, _t156);
|
|
/* 0269356C */ cpu->r[7] = cpu->r[1] + 0x0000010Cu;
|
|
/* 02693570 */ _t157 = cpu->r[1] + 0x00000080u;
|
|
/* 02693570 */ cpu->r[0] = rbrew_read32(cpu->mem, _t157);
|
|
/* 02693574 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 02693578 */ _t158 = cpu->r[1] + 0x0000010Cu;
|
|
/* 02693578 */ rbrew_write32(cpu->mem, _t158, cpu->r[12]);
|
|
/* 0269357C */ cpu->r[5] = cpu->r[7];
|
|
/* 02693580 */ _t159 = cpu->r[1] + 0x00000110u;
|
|
/* 02693580 */ rbrew_write32(cpu->mem, _t159, cpu->r[0]);
|
|
L_02693584: ; // 0x2693584
|
|
/* 02693584 */ cpu->r[3] = cpu->r[1] + 0x00000118u;
|
|
/* 02693588 */ _t160 = cpu->r[7] + 0x00000008u;
|
|
/* 02693588 */ rbrew_write32(cpu->mem, _t160, cpu->r[10]);
|
|
/* 0269358C */ Gambit_fn_020FF2BC(cpu);
|
|
/* 02693590 */ _t161 = cpu->r[31] + 0x00000010u;
|
|
/* 02693590 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t161);
|
|
/* 02693594 */ /* nop */
|
|
/* 02693598 */ _t162 = cpu->r[1] + 0x000000A8u;
|
|
/* 02693598 */ rbrew_write_f32(cpu->mem, _t162, cpu->f[22]);
|
|
/* 0269359C */ _t163 = cpu->r[1] + 0x000000A8u;
|
|
/* 0269359C */ cpu->r[5] = rbrew_read32(cpu->mem, _t163);
|
|
/* 026935A0 */ cpu->f[0] = cpu->f[23] * cpu->f[9];
|
|
/* 026935A4 */ /* nop */
|
|
/* 026935A8 */ /* nop */
|
|
/* 026935AC */ /* nop */
|
|
/* 026935B0 */ _t164 = cpu->r[1] + 0x00000090u;
|
|
/* 026935B0 */ rbrew_write_f32(cpu->mem, _t164, cpu->f[0]);
|
|
/* 026935B4 */ _t165 = cpu->r[1] + 0x00000090u;
|
|
/* 026935B4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t165);
|
|
/* 026935B8 */ /* nop */
|
|
/* 026935BC */ _t166 = cpu->r[1] + 0x00000088u;
|
|
/* 026935BC */ cpu->r[11] = rbrew_read32(cpu->mem, _t166);
|
|
/* 026935C0 */ _t167 = cpu->r[1] + 0x0000008Cu;
|
|
/* 026935C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t167);
|
|
/* 026935C4 */ _t168 = cpu->r[1] + 0x000000B8u;
|
|
/* 026935C4 */ rbrew_write32(cpu->mem, _t168, cpu->r[11]);
|
|
/* 026935C8 */ _t169 = cpu->r[1] + 0x000000BCu;
|
|
/* 026935C8 */ rbrew_write32(cpu->mem, _t169, cpu->r[0]);
|
|
/* 026935CC */ /* nop */
|
|
/* 026935D0 */ _t170 = cpu->r[1] + 0x00000018u;
|
|
/* 026935D0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t170);
|
|
/* 026935D4 */ /* nop */
|
|
/* 026935D8 */ _t171 = cpu->r[1] + 0x000000C0u;
|
|
/* 026935D8 */ rbrew_write32(cpu->mem, _t171, cpu->r[4]);
|
|
/* 026935DC */ _t172 = cpu->r[1] + 0x000000C0u;
|
|
/* 026935DC */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t172);
|
|
/* 026935E0 */ /* nop */
|
|
/* 026935E4 */ _t173 = cpu->r[1] + 0x00000094u;
|
|
/* 026935E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t173);
|
|
/* 026935E8 */ cpu->f[9] = cpu->f[0] + cpu->f[21];
|
|
/* 026935EC */ _t174 = cpu->r[1] + 0x000000B0u;
|
|
/* 026935EC */ cpu->r[8] = rbrew_read32(cpu->mem, _t174);
|
|
/* 026935F0 */ _t175 = cpu->r[1] + 0x000000E8u;
|
|
/* 026935F0 */ rbrew_write32(cpu->mem, _t175, cpu->r[0]);
|
|
/* 026935F4 */ cpu->f[13] = cpu->f[7] + cpu->f[7];
|
|
/* 026935F8 */ _t176 = cpu->r[1] + 0x000000B4u;
|
|
/* 026935F8 */ rbrew_write_f32(cpu->mem, _t176, cpu->f[9]);
|
|
/* 026935FC */ _t177 = cpu->r[1] + 0x000000B4u;
|
|
/* 026935FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t177);
|
|
/* 02693600 */ _t178 = cpu->r[1] + 0x00000098u;
|
|
/* 02693600 */ cpu->r[12] = rbrew_read32(cpu->mem, _t178);
|
|
/* 02693604 */ _t179 = cpu->r[1] + 0x0000009Cu;
|
|
/* 02693604 */ rbrew_write_f32(cpu->mem, _t179, cpu->f[13]);
|
|
/* 02693608 */ _t180 = cpu->r[1] + 0x0000009Cu;
|
|
/* 02693608 */ cpu->r[4] = rbrew_read32(cpu->mem, _t180);
|
|
/* 0269360C */ _t181 = cpu->r[1] + 0x000000ECu;
|
|
/* 0269360C */ rbrew_write32(cpu->mem, _t181, cpu->r[12]);
|
|
/* 02693610 */ cpu->r[10] = cpu->r[1] + 0x000000E8u;
|
|
/* 02693614 */ _t182 = cpu->r[1] + 0x000000ACu;
|
|
/* 02693614 */ cpu->r[6] = rbrew_read32(cpu->mem, _t182);
|
|
/* 02693618 */ _t183 = cpu->r[1] + 0x000000F0u;
|
|
/* 02693618 */ rbrew_write32(cpu->mem, _t183, cpu->r[4]);
|
|
/* 0269361C */ _t184 = cpu->r[1] + 0x00000100u;
|
|
/* 0269361C */ rbrew_write32(cpu->mem, _t184, cpu->r[6]);
|
|
/* 02693620 */ _t185 = cpu->r[1] + 0x000000A0u;
|
|
/* 02693620 */ cpu->r[11] = rbrew_read32(cpu->mem, _t185);
|
|
/* 02693624 */ cpu->r[3] = cpu->r[1] + 0x00000148u;
|
|
/* 02693628 */ _t186 = cpu->r[1] + 0x00000104u;
|
|
/* 02693628 */ rbrew_write32(cpu->mem, _t186, cpu->r[8]);
|
|
/* 0269362C */ cpu->r[9] = cpu->r[1] + 0x000000F4u;
|
|
/* 02693630 */ _t187 = cpu->r[1] + 0x000000A4u;
|
|
/* 02693630 */ cpu->r[4] = rbrew_read32(cpu->mem, _t187);
|
|
/* 02693634 */ cpu->r[12] = cpu->r[1] + 0x00000100u;
|
|
/* 02693638 */ _t188 = cpu->r[1] + 0x000000F4u;
|
|
/* 02693638 */ rbrew_write32(cpu->mem, _t188, cpu->r[11]);
|
|
/* 0269363C */ cpu->r[6] = cpu->r[12];
|
|
/* 02693640 */ _t189 = cpu->r[1] + 0x000000F8u;
|
|
/* 02693640 */ rbrew_write32(cpu->mem, _t189, cpu->r[4]);
|
|
/* 02693644 */ cpu->r[4] = cpu->r[10];
|
|
/* 02693648 */ _t190 = cpu->r[1] + 0x000000FCu;
|
|
/* 02693648 */ rbrew_write32(cpu->mem, _t190, cpu->r[5]);
|
|
/* 0269364C */ cpu->r[5] = cpu->r[9];
|
|
/* 02693650 */ _t191 = cpu->r[1] + 0x00000108u;
|
|
/* 02693650 */ rbrew_write32(cpu->mem, _t191, cpu->r[0]);
|
|
/* 02693654 */ Gambit_fn_0200FC4C(cpu);
|
|
/* 02693658 */ _t192 = cpu->r[30] + 0x00000074u;
|
|
/* 02693658 */ cpu->r[11] = rbrew_read32(cpu->mem, _t192);
|
|
/* 0269365C */ cpu->r[0] = cpu->r[11];
|
|
/* 0269365C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02693660 */ cpu->r[5] = 0x00000000u;
|
|
/* 02693664 */ _t193 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02693664 */ _t194 = _t193 & 0x00000001u;
|
|
/* 02693664 */ if (_t194) goto L_02693668; else goto L_0269369C;
|
|
L_02693668: ; // 0x2693668
|
|
/* 02693668 */ cpu->ctr = cpu->r[0];
|
|
/* 0269366C */ cpu->r[9] = 0x00000000u;
|
|
L_02693670: ; // 0x2693670
|
|
/* 02693670 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[11]);
|
|
/* 02693674 */ cpu->r[8] = 0x00000000u;
|
|
/* 02693678 */ _t195 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02693678 */ _t196 = _t195 & 0x00000001u;
|
|
/* 02693678 */ if (_t196) goto L_0269367C; else goto L_02693684;
|
|
L_0269367C: ; // 0x269367c
|
|
/* 0269367C */ _t197 = cpu->r[30] + 0x0000007Cu;
|
|
/* 0269367C */ cpu->r[10] = rbrew_read32(cpu->mem, _t197);
|
|
/* 02693680 */ _t198 = cpu->r[10] + cpu->r[9];
|
|
/* 02693680 */ cpu->r[8] = rbrew_read32(cpu->mem, _t198);
|
|
L_02693684: ; // 0x2693684
|
|
/* 02693684 */ _t199 = cpu->r[8] + 0x00000030u;
|
|
/* 02693684 */ cpu->r[0] = rbrew_read16(cpu->mem, _t199);
|
|
/* 02693688 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[29]);
|
|
/* 0269368C */ _t200 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269368C */ _t201 = _t200 & 0x00000001u;
|
|
/* 0269368C */ if (_t201) goto L_0269369C; else goto L_02693690;
|
|
L_02693690: ; // 0x2693690
|
|
/* 02693690 */ cpu->r[9] = cpu->r[9] + 0x00000004u;
|
|
/* 02693694 */ cpu->r[5] = cpu->r[5] + 0x00000001u;
|
|
/* 02693698 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02693698 */ _t202 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02693698 */ _t203 = _t202 >> (0x00000002u & 31u);
|
|
/* 02693698 */ _t204 = _t203 & 0x00000001u;
|
|
/* 02693698 */ if (_t204) goto L_02693670; else goto L_0269369C;
|
|
L_0269369C: ; // 0x269369c
|
|
/* 0269369C */ _t205 = cpu->r[30] + 0x00000088u;
|
|
/* 0269369C */ cpu->r[0] = rbrew_read32(cpu->mem, _t205);
|
|
/* 026936A0 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 026936A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[0]);
|
|
/* 026936A8 */ cpu->r[28] = cpu->r[28] + 0x00000004u;
|
|
/* 026936AC */ _t206 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026936AC */ _t207 = _t206 & 0x00000001u;
|
|
/* 026936AC */ if (_t207) goto L_026932CC; else goto L_026936B0;
|
|
L_026936B0: ; // 0x26936b0
|
|
/* 026936B0 */ _t208 = cpu->r[1] + 0x000001F0u;
|
|
/* 026936B0 */ cpu->r[28] = rbrew_read32(cpu->mem, _t208);
|
|
/* 026936B4 */ _t209 = cpu->r[1] + 0x000001F4u;
|
|
/* 026936B4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t209);
|
|
/* 026936B8 */ _t210 = cpu->r[1] + 0x00000228u;
|
|
/* 026936B8 */ cpu->f[22] = rbrew_read_f32(cpu->mem, _t210);
|
|
/* 026936BC */ _t211 = cpu->r[1] + 0x00000218u;
|
|
/* 026936BC */ cpu->f[21] = rbrew_read_f32(cpu->mem, _t211);
|
|
/* 026936C0 */ _t212 = cpu->r[1] + 0x00000220u;
|
|
/* 026936C0 */ cpu->f[22] = rbrew_read_f64(cpu->mem, _t212);
|
|
/* 026936C4 */ _t213 = cpu->r[1] + 0x00000238u;
|
|
/* 026936C4 */ cpu->f[23] = rbrew_read_f32(cpu->mem, _t213);
|
|
/* 026936C8 */ _t214 = cpu->r[1] + 0x00000210u;
|
|
/* 026936C8 */ cpu->f[21] = rbrew_read_f64(cpu->mem, _t214);
|
|
/* 026936CC */ _t215 = cpu->r[1] + 0x00000230u;
|
|
/* 026936CC */ cpu->f[23] = rbrew_read_f64(cpu->mem, _t215);
|
|
/* 026936D0 */ _t216 = cpu->r[1] + 0x00000248u;
|
|
/* 026936D0 */ cpu->f[24] = rbrew_read_f32(cpu->mem, _t216);
|
|
/* 026936D4 */ _t217 = cpu->r[1] + 0x000001FCu;
|
|
/* 026936D4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t217);
|
|
/* 026936D8 */ _t218 = cpu->r[1] + 0x00000240u;
|
|
/* 026936D8 */ cpu->f[24] = rbrew_read_f64(cpu->mem, _t218);
|
|
/* 026936DC */ _t219 = cpu->r[1] + 0x00000258u;
|
|
/* 026936DC */ cpu->f[25] = rbrew_read_f32(cpu->mem, _t219);
|
|
/* 026936E0 */ _t220 = cpu->r[1] + 0x00000268u;
|
|
/* 026936E0 */ cpu->f[26] = rbrew_read_f32(cpu->mem, _t220);
|
|
/* 026936E4 */ _t221 = cpu->r[1] + 0x00000250u;
|
|
/* 026936E4 */ cpu->f[25] = rbrew_read_f64(cpu->mem, _t221);
|
|
/* 026936E8 */ _t222 = cpu->r[1] + 0x00000260u;
|
|
/* 026936E8 */ cpu->f[26] = rbrew_read_f64(cpu->mem, _t222);
|
|
/* 026936EC */ _t223 = cpu->r[1] + 0x00000278u;
|
|
/* 026936EC */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t223);
|
|
/* 026936F0 */ _t224 = cpu->r[1] + 0x000002A8u;
|
|
/* 026936F0 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t224);
|
|
/* 026936F4 */ _t225 = cpu->r[1] + 0x000002B8u;
|
|
/* 026936F4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t225);
|
|
/* 026936F8 */ _t226 = cpu->r[1] + 0x000002A0u;
|
|
/* 026936F8 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t226);
|
|
/* 026936FC */ _t227 = cpu->r[1] + 0x000002B0u;
|
|
/* 026936FC */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t227);
|
|
/* 02693700 */ _t228 = cpu->r[1] + 0x00000288u;
|
|
/* 02693700 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t228);
|
|
/* 02693704 */ _t229 = cpu->r[1] + 0x00000208u;
|
|
/* 02693704 */ cpu->f[20] = rbrew_read_f32(cpu->mem, _t229);
|
|
/* 02693708 */ _t230 = cpu->r[1] + 0x00000280u;
|
|
/* 02693708 */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t230);
|
|
/* 0269370C */ _t231 = cpu->r[1] + 0x00000200u;
|
|
/* 0269370C */ cpu->f[20] = rbrew_read_f64(cpu->mem, _t231);
|
|
/* 02693710 */ _t232 = cpu->r[1] + 0x00000298u;
|
|
/* 02693710 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t232);
|
|
/* 02693714 */ _t233 = cpu->r[1] + 0x00000270u;
|
|
/* 02693714 */ cpu->f[27] = rbrew_read_f64(cpu->mem, _t233);
|
|
/* 02693718 */ _t234 = cpu->r[1] + 0x00000290u;
|
|
/* 02693718 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t234);
|
|
/* 0269371C */ _t235 = cpu->r[1] + 0x000001F8u;
|
|
/* 0269371C */ cpu->r[30] = rbrew_read32(cpu->mem, _t235);
|
|
/* 02693720 */ _t236 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02693720 */ _t237 = _t236 & 0x00000001u;
|
|
/* 02693720 */ if (_t237) goto L_02693724; // else: addr-0 trap, fall-through
|
|
L_02693724: ; // 0x2693724
|
|
/* 02693724 */ _t238 = cpu->r[1] + 0x000002C4u;
|
|
/* 02693724 */ cpu->r[0] = rbrew_read32(cpu->mem, _t238);
|
|
/* 02693728 */ cpu->lr = cpu->r[0];
|
|
/* 0269372C */ cpu->r[1] = cpu->r[1] + 0x000002C0u;
|
|
/* 02693730 */ return;
|
|
}
|
|
|
|
// fn_02693734 @ 0x2693734
|
|
void Gambit_fn_02693734(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_02693734: ; // 0x2693734
|
|
/* 02693734 */ cpu->r[12] = 0x100E0000u;
|
|
/* 02693738 */ cpu->r[9] = 0x101F0000u;
|
|
/* 0269373C */ _t0 = cpu->r[12] + 0x00003A80u;
|
|
/* 0269373C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 02693740 */ cpu->r[12] = 0x100E0000u;
|
|
/* 02693744 */ _t1 = cpu->r[9] + 0xFFFFD898u;
|
|
/* 02693744 */ rbrew_write_f32(cpu->mem, _t1, cpu->f[12]);
|
|
/* 02693744 */ cpu->r[9] = _t1;
|
|
/* 02693748 */ cpu->r[11] = 0x100E0000u;
|
|
/* 0269374C */ _t2 = cpu->r[12] + 0x00003A7Cu;
|
|
/* 0269374C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 02693750 */ cpu->r[12] = 0x101F0000u;
|
|
/* 02693754 */ _t3 = cpu->r[11] + 0x00003A08u;
|
|
/* 02693754 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 02693758 */ cpu->r[11] = 0x101F0000u;
|
|
/* 0269375C */ _t4 = cpu->r[12] + 0xFFFFD888u;
|
|
/* 0269375C */ rbrew_write_f32(cpu->mem, _t4, cpu->f[12]);
|
|
/* 0269375C */ cpu->r[12] = _t4;
|
|
/* 02693760 */ _t5 = cpu->r[11] + 0xFFFFD8B8u;
|
|
/* 02693760 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[11]);
|
|
/* 02693760 */ cpu->r[11] = _t5;
|
|
/* 02693764 */ _t6 = cpu->r[11] + 0x00000008u;
|
|
/* 02693764 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[11]);
|
|
/* 02693768 */ _t7 = cpu->r[12] + 0x00000004u;
|
|
/* 02693768 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[12]);
|
|
/* 0269376C */ _t8 = cpu->r[12] + 0x00000008u;
|
|
/* 0269376C */ rbrew_write_f32(cpu->mem, _t8, cpu->f[12]);
|
|
/* 02693770 */ cpu->r[10] = 0x100E0000u;
|
|
/* 02693774 */ _t9 = cpu->r[12] + 0x0000000Cu;
|
|
/* 02693774 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[13]);
|
|
/* 02693778 */ _t10 = cpu->r[10] + 0x00003A9Cu;
|
|
/* 02693778 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 0269377C */ _t11 = cpu->r[11] + 0x00000004u;
|
|
/* 0269377C */ rbrew_write_f32(cpu->mem, _t11, cpu->f[11]);
|
|
/* 02693780 */ _t12 = cpu->r[9] + 0x0000000Cu;
|
|
/* 02693780 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[0]);
|
|
/* 02693784 */ cpu->r[10] = 0x101F0000u;
|
|
/* 02693788 */ _t13 = cpu->r[9] + 0x00000008u;
|
|
/* 02693788 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[11]);
|
|
/* 0269378C */ cpu->r[10] = cpu->r[10] + 0xFFFFD8A8u;
|
|
/* 02693790 */ _t14 = cpu->r[9] + 0x00000004u;
|
|
/* 02693790 */ rbrew_write_f32(cpu->mem, _t14, cpu->f[11]);
|
|
/* 02693794 */ _t15 = cpu->r[10] + 0x0000000Cu;
|
|
/* 02693794 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[12]);
|
|
/* 02693798 */ _t16 = cpu->r[10] + 0x00000008u;
|
|
/* 02693798 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[12]);
|
|
/* 0269379C */ _t17 = cpu->r[10] + 0x00000000u;
|
|
/* 0269379C */ rbrew_write_f32(cpu->mem, _t17, cpu->f[12]);
|
|
/* 026937A0 */ _t18 = cpu->r[10] + 0x00000004u;
|
|
/* 026937A0 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[12]);
|
|
/* 026937A4 */ _t19 = cpu->r[11] + 0x0000000Cu;
|
|
/* 026937A4 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[12]);
|
|
/* 026937A8 */ return;
|
|
}
|
|
|
|
// fn_026937AC @ 0x26937ac
|
|
void Gambit_fn_026937AC(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_026937AC: ; // 0x26937ac
|
|
/* 026937AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 026937B0 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026937B0 */ _t1 = _t0 & 0x00000001u;
|
|
/* 026937B0 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 026937B0 */ goto L_026937B4;
|
|
L_026937B4: ; // 0x26937b4
|
|
/* 026937B4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 026937B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 026937B8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026937B8 */ _t3 = _t2 & 0x00000001u;
|
|
/* 026937B8 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 026937B8 */ goto L_026937BC;
|
|
L_026937BC: ; // 0x26937bc
|
|
/* 026937BC */ 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_026937C0 @ 0x26937c0
|
|
void Gambit_fn_026937C0(CPUState* cpu) {
|
|
L_026937C0: ; // 0x26937c0
|
|
/* 026937C0 */ return;
|
|
}
|
|
|
|
// fn_026937C4 @ 0x26937c4
|
|
void Gambit_fn_026937C4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_026937C4: ; // 0x26937c4
|
|
/* 026937C4 */ cpu->r[9] = 0x101D0000u;
|
|
/* 026937C8 */ _t0 = cpu->r[9] + 0x00000E0Cu;
|
|
/* 026937C8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 026937C8 */ cpu->r[9] = _t0;
|
|
/* 026937CC */ cpu->r[12] = 0x101D0000u;
|
|
/* 026937D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 026937D4 */ cpu->r[12] = cpu->r[12] + 0x00000E3Cu;
|
|
/* 026937D8 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026937D8 */ _t2 = _t1 & 0x00000001u;
|
|
/* 026937D8 */ if (_t2) goto L_026937DC; else goto L_026937F0;
|
|
L_026937DC: ; // 0x26937dc
|
|
/* 026937DC */ cpu->r[7] = 0x100E0000u;
|
|
/* 026937E0 */ cpu->r[0] = 0x00000001u;
|
|
/* 026937E4 */ cpu->r[7] = cpu->r[7] + 0x00003A38u;
|
|
/* 026937E8 */ _t3 = cpu->r[9] + 0x00000000u;
|
|
/* 026937E8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 026937EC */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 026937EC */ rbrew_write32(cpu->mem, _t4, cpu->r[7]);
|
|
L_026937F0: ; // 0x26937f0
|
|
/* 026937F0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 026937F4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026937F4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 026937F4 */ if (_t6) goto L_026937F8; else goto L_02693800;
|
|
L_026937F8: ; // 0x26937f8
|
|
/* 026937F8 */ cpu->r[3] = 0x00000001u;
|
|
/* 026937FC */ return;
|
|
L_02693800: ; // 0x2693800
|
|
/* 02693800 */ cpu->r[7] = 0x101D0000u;
|
|
/* 02693804 */ _t7 = cpu->r[7] + 0x00000DD8u;
|
|
/* 02693804 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02693804 */ cpu->r[7] = _t7;
|
|
/* 02693808 */ cpu->r[11] = 0x101D0000u;
|
|
/* 0269380C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02693810 */ cpu->r[11] = cpu->r[11] + 0x00000DDCu;
|
|
/* 02693814 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02693814 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02693814 */ if (_t9) goto L_02693818; else goto L_0269382C;
|
|
L_02693818: ; // 0x2693818
|
|
/* 02693818 */ cpu->r[0] = 0x100E0000u;
|
|
/* 0269381C */ cpu->r[9] = 0x00000001u;
|
|
/* 02693820 */ cpu->r[0] = cpu->r[0] + 0x00003A10u;
|
|
/* 02693824 */ _t10 = cpu->r[7] + 0x00000000u;
|
|
/* 02693824 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 02693828 */ _t11 = cpu->r[11] + 0x00000000u;
|
|
/* 02693828 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_0269382C: ; // 0x269382c
|
|
/* 0269382C */ cpu->r[0] = cpu->r[4] ^ cpu->r[11];
|
|
/* 02693830 */ cpu->r[8] = rbrew_clz32(cpu->r[0]);
|
|
/* 02693834 */ cpu->r[3] = rbrew_rlwinm(cpu->r[8], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
/* 02693838 */ return;
|
|
}
|
|
|
|
// fn_0269383C @ 0x269383c
|
|
void Gambit_fn_0269383C(CPUState* cpu) {
|
|
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_0269383C: ; // 0x269383c
|
|
/* 0269383C */ cpu->r[0] = cpu->lr;
|
|
/* 02693840 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02693840 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02693840 */ cpu->r[1] = _t0;
|
|
/* 02693844 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02693844 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02693848 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 02693848 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0269384C */ cpu->r[30] = cpu->r[5];
|
|
/* 02693850 */ cpu->r[31] = cpu->r[3];
|
|
/* 02693850 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02693854 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02693854 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 02693858 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02693858 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0269385C */ cpu->r[29] = cpu->r[4];
|
|
/* 02693860 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02693860 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02693860 */ if (_t6) goto L_02693864; else goto L_02693874;
|
|
L_02693864: ; // 0x2693864
|
|
/* 02693864 */ cpu->r[3] = 0x00000010u;
|
|
/* 02693868 */ Gambit_fn_02801A78(cpu);
|
|
/* 0269386C */ cpu->r[31] = cpu->r[3];
|
|
/* 0269386C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02693870 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02693870 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02693870 */ if (_t8) goto L_026938B4; else goto L_02693874;
|
|
L_02693874: ; // 0x2693874
|
|
/* 02693874 */ cpu->r[3] = cpu->r[31];
|
|
/* 02693874 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02693878 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02693878 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02693878 */ if (_t10) goto L_0269387C; else goto L_0269388C;
|
|
L_0269387C: ; // 0x269387c
|
|
/* 0269387C */ cpu->r[3] = 0x00000008u;
|
|
/* 02693880 */ Gambit_fn_02801A78(cpu);
|
|
/* 02693884 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02693888 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02693888 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02693888 */ if (_t12) goto L_026938A0; else goto L_0269388C;
|
|
L_0269388C: ; // 0x269388c
|
|
/* 0269388C */ cpu->r[12] = 0x100E0000u;
|
|
/* 02693890 */ cpu->r[11] = 0x00000000u;
|
|
/* 02693894 */ cpu->r[12] = cpu->r[12] + 0x00003AF0u;
|
|
/* 02693898 */ _t13 = cpu->r[3] + 0x00000000u;
|
|
/* 02693898 */ rbrew_write32(cpu->mem, _t13, cpu->r[11]);
|
|
/* 0269389C */ _t14 = cpu->r[3] + 0x00000004u;
|
|
/* 0269389C */ rbrew_write32(cpu->mem, _t14, cpu->r[12]);
|
|
L_026938A0: ; // 0x26938a0
|
|
/* 026938A0 */ cpu->r[0] = 0x100E0000u;
|
|
/* 026938A4 */ _t15 = cpu->r[31] + 0x0000000Cu;
|
|
/* 026938A4 */ rbrew_write32(cpu->mem, _t15, cpu->r[30]);
|
|
/* 026938A8 */ cpu->r[0] = cpu->r[0] + 0x00003B00u;
|
|
/* 026938AC */ _t16 = cpu->r[31] + 0x00000008u;
|
|
/* 026938AC */ rbrew_write32(cpu->mem, _t16, cpu->r[29]);
|
|
/* 026938B0 */ _t17 = cpu->r[31] + 0x00000004u;
|
|
/* 026938B0 */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
L_026938B4: ; // 0x26938b4
|
|
/* 026938B4 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026938B4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t18);
|
|
/* 026938B8 */ _t19 = cpu->r[1] + 0x0000001Cu;
|
|
/* 026938B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 026938BC */ cpu->r[3] = cpu->r[31];
|
|
/* 026938C0 */ _t20 = cpu->r[1] + 0x00000010u;
|
|
/* 026938C0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t20);
|
|
/* 026938C4 */ cpu->lr = cpu->r[0];
|
|
/* 026938C8 */ _t21 = cpu->r[1] + 0x00000014u;
|
|
/* 026938C8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t21);
|
|
/* 026938CC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 026938D0 */ return;
|
|
}
|
|
|
|
// fn_02693840 @ 0x2693840
|
|
void Gambit_fn_02693840(CPUState* cpu) {
|
|
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_02693840: ; // 0x2693840
|
|
/* 02693840 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02693840 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02693840 */ cpu->r[1] = _t0;
|
|
/* 02693844 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02693844 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02693848 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 02693848 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0269384C */ cpu->r[30] = cpu->r[5];
|
|
/* 02693850 */ cpu->r[31] = cpu->r[3];
|
|
/* 02693850 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02693854 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02693854 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 02693858 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02693858 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0269385C */ cpu->r[29] = cpu->r[4];
|
|
/* 02693860 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02693860 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02693860 */ if (_t6) goto L_02693864; else goto L_02693874;
|
|
L_02693864: ; // 0x2693864
|
|
/* 02693864 */ cpu->r[3] = 0x00000010u;
|
|
/* 02693868 */ Gambit_fn_02801A78(cpu);
|
|
/* 0269386C */ cpu->r[31] = cpu->r[3];
|
|
/* 0269386C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02693870 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02693870 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02693870 */ if (_t8) goto L_026938B4; else goto L_02693874;
|
|
L_02693874: ; // 0x2693874
|
|
/* 02693874 */ cpu->r[3] = cpu->r[31];
|
|
/* 02693874 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02693878 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02693878 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02693878 */ if (_t10) goto L_0269387C; else goto L_0269388C;
|
|
L_0269387C: ; // 0x269387c
|
|
/* 0269387C */ cpu->r[3] = 0x00000008u;
|
|
/* 02693880 */ Gambit_fn_02801A78(cpu);
|
|
/* 02693884 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02693888 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02693888 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02693888 */ if (_t12) goto L_026938A0; else goto L_0269388C;
|
|
L_0269388C: ; // 0x269388c
|
|
/* 0269388C */ cpu->r[12] = 0x100E0000u;
|
|
/* 02693890 */ cpu->r[11] = 0x00000000u;
|
|
/* 02693894 */ cpu->r[12] = cpu->r[12] + 0x00003AF0u;
|
|
/* 02693898 */ _t13 = cpu->r[3] + 0x00000000u;
|
|
/* 02693898 */ rbrew_write32(cpu->mem, _t13, cpu->r[11]);
|
|
/* 0269389C */ _t14 = cpu->r[3] + 0x00000004u;
|
|
/* 0269389C */ rbrew_write32(cpu->mem, _t14, cpu->r[12]);
|
|
L_026938A0: ; // 0x26938a0
|
|
/* 026938A0 */ cpu->r[0] = 0x100E0000u;
|
|
/* 026938A4 */ _t15 = cpu->r[31] + 0x0000000Cu;
|
|
/* 026938A4 */ rbrew_write32(cpu->mem, _t15, cpu->r[30]);
|
|
/* 026938A8 */ cpu->r[0] = cpu->r[0] + 0x00003B00u;
|
|
/* 026938AC */ _t16 = cpu->r[31] + 0x00000008u;
|
|
/* 026938AC */ rbrew_write32(cpu->mem, _t16, cpu->r[29]);
|
|
/* 026938B0 */ _t17 = cpu->r[31] + 0x00000004u;
|
|
/* 026938B0 */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
L_026938B4: ; // 0x26938b4
|
|
/* 026938B4 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026938B4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t18);
|
|
/* 026938B8 */ _t19 = cpu->r[1] + 0x0000001Cu;
|
|
/* 026938B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 026938BC */ cpu->r[3] = cpu->r[31];
|
|
/* 026938C0 */ _t20 = cpu->r[1] + 0x00000010u;
|
|
/* 026938C0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t20);
|
|
/* 026938C4 */ cpu->lr = cpu->r[0];
|
|
/* 026938C8 */ _t21 = cpu->r[1] + 0x00000014u;
|
|
/* 026938C8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t21);
|
|
/* 026938CC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 026938D0 */ return;
|
|
}
|
|
|
|
// fn_026938D4 @ 0x26938d4
|
|
void Gambit_fn_026938D4(CPUState* cpu) {
|
|
uint32_t _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_026938D4: ; // 0x26938d4
|
|
/* 026938D4 */ cpu->r[0] = cpu->lr;
|
|
/* 026938D8 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 026938D8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 026938D8 */ cpu->r[1] = _t0;
|
|
/* 026938DC */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 026938DC */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 026938E0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 026938E0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 026938E4 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 026938E4 */ rbrew_write32(cpu->mem, _t3, cpu->r[28]);
|
|
/* 026938E8 */ cpu->r[28] = cpu->r[5];
|
|
/* 026938EC */ cpu->r[30] = cpu->r[4];
|
|
/* 026938F0 */ cpu->r[31] = cpu->r[3];
|
|
/* 026938F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 026938F4 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026938F4 */ rbrew_write32(cpu->mem, _t4, cpu->r[29]);
|
|
/* 026938F8 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 026938F8 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 026938FC */ cpu->r[29] = cpu->r[6];
|
|
/* 02693900 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02693900 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02693900 */ if (_t7) goto L_02693904; else goto L_02693914;
|
|
L_02693904: ; // 0x2693904
|
|
/* 02693904 */ cpu->r[3] = 0x00000020u;
|
|
/* 02693908 */ Gambit_fn_02801A78(cpu);
|
|
/* 0269390C */ cpu->r[31] = cpu->r[3];
|
|
/* 0269390C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02693910 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02693910 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02693910 */ if (_t9) goto L_0269395C; else goto L_02693914;
|
|
L_02693914: ; // 0x2693914
|
|
/* 02693914 */ cpu->r[3] = cpu->r[31];
|
|
/* 02693918 */ cpu->r[4] = cpu->r[30];
|
|
/* 0269391C */ cpu->r[5] = cpu->r[28];
|
|
/* 02693920 */ Gambit_fn_0269383C(cpu);
|
|
/* 02693924 */ cpu->r[0] = 0x100E0000u;
|
|
/* 02693928 */ cpu->r[3] = cpu->r[31] + 0x00000014u;
|
|
/* 02693928 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0269392C */ _t10 = cpu->r[31] + 0x00000010u;
|
|
/* 0269392C */ rbrew_write32(cpu->mem, _t10, cpu->r[29]);
|
|
/* 02693930 */ cpu->r[0] = cpu->r[0] + 0x00003B50u;
|
|
/* 02693934 */ cpu->r[30] = 0x00000000u;
|
|
/* 02693938 */ _t11 = cpu->r[31] + 0x00000004u;
|
|
/* 02693938 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 0269393C */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269393C */ _t13 = _t12 & 0x00000001u;
|
|
/* 0269393C */ if (_t13) goto L_02693940; else goto L_02693950;
|
|
L_02693940: ; // 0x2693940
|
|
/* 02693940 */ cpu->r[3] = 0x00000008u;
|
|
/* 02693944 */ Gambit_fn_02801A78(cpu);
|
|
/* 02693948 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0269394C */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269394C */ _t15 = _t14 & 0x00000001u;
|
|
/* 0269394C */ if (_t15) goto L_02693958; else goto L_02693950;
|
|
L_02693950: ; // 0x2693950
|
|
/* 02693950 */ _t16 = cpu->r[3] + 0x00000004u;
|
|
/* 02693950 */ rbrew_write32(cpu->mem, _t16, cpu->r[30]);
|
|
/* 02693954 */ _t17 = cpu->r[3] + 0x00000000u;
|
|
/* 02693954 */ rbrew_write32(cpu->mem, _t17, cpu->r[30]);
|
|
L_02693958: ; // 0x2693958
|
|
/* 02693958 */ _t18 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02693958 */ rbrew_write32(cpu->mem, _t18, cpu->r[30]);
|
|
L_0269395C: ; // 0x269395c
|
|
/* 0269395C */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 0269395C */ cpu->r[28] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02693960 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02693960 */ cpu->r[29] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02693964 */ _t21 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02693964 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02693968 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269396C */ _t22 = cpu->r[1] + 0x00000010u;
|
|
/* 0269396C */ cpu->r[30] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02693970 */ cpu->lr = cpu->r[0];
|
|
/* 02693974 */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 02693974 */ cpu->r[31] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02693978 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269397C */ return;
|
|
}
|
|
|
|
// fn_026938D8 @ 0x26938d8
|
|
void Gambit_fn_026938D8(CPUState* cpu) {
|
|
uint32_t _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_026938D8: ; // 0x26938d8
|
|
/* 026938D8 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 026938D8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 026938D8 */ cpu->r[1] = _t0;
|
|
/* 026938DC */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 026938DC */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 026938E0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 026938E0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 026938E4 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 026938E4 */ rbrew_write32(cpu->mem, _t3, cpu->r[28]);
|
|
/* 026938E8 */ cpu->r[28] = cpu->r[5];
|
|
/* 026938EC */ cpu->r[30] = cpu->r[4];
|
|
/* 026938F0 */ cpu->r[31] = cpu->r[3];
|
|
/* 026938F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 026938F4 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026938F4 */ rbrew_write32(cpu->mem, _t4, cpu->r[29]);
|
|
/* 026938F8 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 026938F8 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 026938FC */ cpu->r[29] = cpu->r[6];
|
|
/* 02693900 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02693900 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02693900 */ if (_t7) goto L_02693904; else goto L_02693914;
|
|
L_02693904: ; // 0x2693904
|
|
/* 02693904 */ cpu->r[3] = 0x00000020u;
|
|
/* 02693908 */ Gambit_fn_02801A78(cpu);
|
|
/* 0269390C */ cpu->r[31] = cpu->r[3];
|
|
/* 0269390C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02693910 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02693910 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02693910 */ if (_t9) goto L_0269395C; else goto L_02693914;
|
|
L_02693914: ; // 0x2693914
|
|
/* 02693914 */ cpu->r[3] = cpu->r[31];
|
|
/* 02693918 */ cpu->r[4] = cpu->r[30];
|
|
/* 0269391C */ cpu->r[5] = cpu->r[28];
|
|
/* 02693920 */ Gambit_fn_0269383C(cpu);
|
|
/* 02693924 */ cpu->r[0] = 0x100E0000u;
|
|
/* 02693928 */ cpu->r[3] = cpu->r[31] + 0x00000014u;
|
|
/* 02693928 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0269392C */ _t10 = cpu->r[31] + 0x00000010u;
|
|
/* 0269392C */ rbrew_write32(cpu->mem, _t10, cpu->r[29]);
|
|
/* 02693930 */ cpu->r[0] = cpu->r[0] + 0x00003B50u;
|
|
/* 02693934 */ cpu->r[30] = 0x00000000u;
|
|
/* 02693938 */ _t11 = cpu->r[31] + 0x00000004u;
|
|
/* 02693938 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 0269393C */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269393C */ _t13 = _t12 & 0x00000001u;
|
|
/* 0269393C */ if (_t13) goto L_02693940; else goto L_02693950;
|
|
L_02693940: ; // 0x2693940
|
|
/* 02693940 */ cpu->r[3] = 0x00000008u;
|
|
/* 02693944 */ Gambit_fn_02801A78(cpu);
|
|
/* 02693948 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0269394C */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269394C */ _t15 = _t14 & 0x00000001u;
|
|
/* 0269394C */ if (_t15) goto L_02693958; else goto L_02693950;
|
|
L_02693950: ; // 0x2693950
|
|
/* 02693950 */ _t16 = cpu->r[3] + 0x00000004u;
|
|
/* 02693950 */ rbrew_write32(cpu->mem, _t16, cpu->r[30]);
|
|
/* 02693954 */ _t17 = cpu->r[3] + 0x00000000u;
|
|
/* 02693954 */ rbrew_write32(cpu->mem, _t17, cpu->r[30]);
|
|
L_02693958: ; // 0x2693958
|
|
/* 02693958 */ _t18 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02693958 */ rbrew_write32(cpu->mem, _t18, cpu->r[30]);
|
|
L_0269395C: ; // 0x269395c
|
|
/* 0269395C */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 0269395C */ cpu->r[28] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02693960 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02693960 */ cpu->r[29] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02693964 */ _t21 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02693964 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02693968 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269396C */ _t22 = cpu->r[1] + 0x00000010u;
|
|
/* 0269396C */ cpu->r[30] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02693970 */ cpu->lr = cpu->r[0];
|
|
/* 02693974 */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 02693974 */ cpu->r[31] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02693978 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269397C */ return;
|
|
}
|
|
|
|
// fn_02693980 @ 0x2693980
|
|
void Gambit_fn_02693980(CPUState* cpu) {
|
|
uint32_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_02693980: ; // 0x2693980
|
|
/* 02693980 */ cpu->r[0] = cpu->lr;
|
|
/* 02693984 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02693984 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02693984 */ cpu->r[1] = _t0;
|
|
/* 02693988 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02693988 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0269398C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0269398C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02693990 */ cpu->r[31] = cpu->r[3];
|
|
/* 02693994 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02693994 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02693998 */ _t4 = cpu->r[31] + 0x00000008u;
|
|
/* 02693998 */ cpu->r[7] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269399C */ _t5 = cpu->r[7] + 0x00000748u;
|
|
/* 0269399C */ cpu->r[10] = rbrew_read32(cpu->mem, _t5);
|
|
/* 026939A0 */ _t6 = cpu->r[10] + 0x000005BCu;
|
|
/* 026939A0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t6);
|
|
/* 026939A4 */ cpu->r[30] = cpu->r[11] + 0x00000001u;
|
|
/* 026939A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 026939A8 */ _t7 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 026939A8 */ _t8 = _t7 & 0x00000001u;
|
|
/* 026939A8 */ if (_t8) goto L_026939AC; else goto L_026939F0;
|
|
L_026939AC: ; // 0x26939ac
|
|
/* 026939AC */ cpu->r[3] = 0x101D0000u;
|
|
/* 026939B0 */ _t9 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 026939B0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 026939B4 */ Gambit_fn_02826F20(cpu);
|
|
/* 026939B8 */ _t10 = cpu->r[3] + 0x0000000Cu;
|
|
/* 026939B8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 026939BC */ _t11 = cpu->r[12] + 0x00000034u;
|
|
/* 026939BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 026939C0 */ cpu->ctr = cpu->r[0];
|
|
/* 026939C4 */ cpu->r[5] = 0x00000004u;
|
|
/* 026939C8 */ cpu->r[4] = (uint32_t)((int32_t)cpu->r[30] * (int32_t)0x0000000Cu);
|
|
/* 026939CC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 026939D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 026939D4 */ cpu->r[0] = cpu->r[30];
|
|
/* 026939D8 */ _t12 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 026939D8 */ _t13 = _t12 & 0x00000001u;
|
|
/* 026939D8 */ if (_t13) goto L_026939E0; else goto L_026939DC;
|
|
L_026939DC: ; // 0x26939dc
|
|
/* 026939DC */ cpu->r[0] = 0x00000001u;
|
|
L_026939E0: ; // 0x26939e0
|
|
/* 026939E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 026939E4 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026939E4 */ _t15 = _t14 & 0x00000001u;
|
|
/* 026939E4 */ if (_t15) goto L_026939F0; else goto L_026939E8;
|
|
L_026939E8: ; // 0x26939e8
|
|
/* 026939E8 */ _t16 = cpu->r[31] + 0x00000018u;
|
|
/* 026939E8 */ rbrew_write32(cpu->mem, _t16, cpu->r[3]);
|
|
/* 026939EC */ _t17 = cpu->r[31] + 0x00000014u;
|
|
/* 026939EC */ rbrew_write32(cpu->mem, _t17, cpu->r[30]);
|
|
L_026939F0: ; // 0x26939f0
|
|
/* 026939F0 */ _t18 = cpu->r[31] + 0x00000004u;
|
|
/* 026939F0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t18);
|
|
/* 026939F4 */ _t19 = cpu->r[8] + 0x0000001Cu;
|
|
/* 026939F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 026939F8 */ cpu->ctr = cpu->r[0];
|
|
/* 026939FC */ cpu->r[3] = cpu->r[31];
|
|
/* 02693A00 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02693A04 */ _t20 = cpu->r[1] + 0x00000014u;
|
|
/* 02693A04 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02693A08 */ _t21 = cpu->r[1] + 0x00000008u;
|
|
/* 02693A08 */ cpu->r[30] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02693A0C */ cpu->lr = cpu->r[0];
|
|
/* 02693A10 */ _t22 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02693A10 */ cpu->r[31] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02693A14 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02693A18 */ return;
|
|
}
|
|
|
|
// fn_02693984 @ 0x2693984
|
|
void Gambit_fn_02693984(CPUState* cpu) {
|
|
uint32_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_02693984: ; // 0x2693984
|
|
/* 02693984 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02693984 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02693984 */ cpu->r[1] = _t0;
|
|
/* 02693988 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02693988 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0269398C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0269398C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02693990 */ cpu->r[31] = cpu->r[3];
|
|
/* 02693994 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02693994 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02693998 */ _t4 = cpu->r[31] + 0x00000008u;
|
|
/* 02693998 */ cpu->r[7] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269399C */ _t5 = cpu->r[7] + 0x00000748u;
|
|
/* 0269399C */ cpu->r[10] = rbrew_read32(cpu->mem, _t5);
|
|
/* 026939A0 */ _t6 = cpu->r[10] + 0x000005BCu;
|
|
/* 026939A0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t6);
|
|
/* 026939A4 */ cpu->r[30] = cpu->r[11] + 0x00000001u;
|
|
/* 026939A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 026939A8 */ _t7 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 026939A8 */ _t8 = _t7 & 0x00000001u;
|
|
/* 026939A8 */ if (_t8) goto L_026939AC; else goto L_026939F0;
|
|
L_026939AC: ; // 0x26939ac
|
|
/* 026939AC */ cpu->r[3] = 0x101D0000u;
|
|
/* 026939B0 */ _t9 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 026939B0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 026939B4 */ Gambit_fn_02826F20(cpu);
|
|
/* 026939B8 */ _t10 = cpu->r[3] + 0x0000000Cu;
|
|
/* 026939B8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 026939BC */ _t11 = cpu->r[12] + 0x00000034u;
|
|
/* 026939BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 026939C0 */ cpu->ctr = cpu->r[0];
|
|
/* 026939C4 */ cpu->r[5] = 0x00000004u;
|
|
/* 026939C8 */ cpu->r[4] = (uint32_t)((int32_t)cpu->r[30] * (int32_t)0x0000000Cu);
|
|
/* 026939CC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 026939D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 026939D4 */ cpu->r[0] = cpu->r[30];
|
|
/* 026939D8 */ _t12 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 026939D8 */ _t13 = _t12 & 0x00000001u;
|
|
/* 026939D8 */ if (_t13) goto L_026939E0; else goto L_026939DC;
|
|
L_026939DC: ; // 0x26939dc
|
|
/* 026939DC */ cpu->r[0] = 0x00000001u;
|
|
L_026939E0: ; // 0x26939e0
|
|
/* 026939E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 026939E4 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026939E4 */ _t15 = _t14 & 0x00000001u;
|
|
/* 026939E4 */ if (_t15) goto L_026939F0; else goto L_026939E8;
|
|
L_026939E8: ; // 0x26939e8
|
|
/* 026939E8 */ _t16 = cpu->r[31] + 0x00000018u;
|
|
/* 026939E8 */ rbrew_write32(cpu->mem, _t16, cpu->r[3]);
|
|
/* 026939EC */ _t17 = cpu->r[31] + 0x00000014u;
|
|
/* 026939EC */ rbrew_write32(cpu->mem, _t17, cpu->r[30]);
|
|
L_026939F0: ; // 0x26939f0
|
|
/* 026939F0 */ _t18 = cpu->r[31] + 0x00000004u;
|
|
/* 026939F0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t18);
|
|
/* 026939F4 */ _t19 = cpu->r[8] + 0x0000001Cu;
|
|
/* 026939F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 026939F8 */ cpu->ctr = cpu->r[0];
|
|
/* 026939FC */ cpu->r[3] = cpu->r[31];
|
|
/* 02693A00 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02693A04 */ _t20 = cpu->r[1] + 0x00000014u;
|
|
/* 02693A04 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02693A08 */ _t21 = cpu->r[1] + 0x00000008u;
|
|
/* 02693A08 */ cpu->r[30] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02693A0C */ cpu->lr = cpu->r[0];
|
|
/* 02693A10 */ _t22 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02693A10 */ cpu->r[31] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02693A14 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02693A18 */ return;
|
|
}
|
|
|
|
// fn_02693A1C @ 0x2693a1c
|
|
void Gambit_fn_02693A1C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02693A1C: ; // 0x2693a1c
|
|
/* 02693A1C */ _t0 = cpu->r[3] + 0x00000014u;
|
|
/* 02693A1C */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02693A20 */ _t1 = cpu->r[3] + 0x00000018u;
|
|
/* 02693A20 */ cpu->r[3] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02693A24 */ cpu->r[5] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x0000000Cu);
|
|
/* 02693A28 */ cpu->r[4] = 0x00000000u;
|
|
/* 02693A2C */ rbrew_dispatch(cpu, 0x02d0a6f0u); return;
|
|
}
|
|
|
|
// fn_02693A30 @ 0x2693a30
|
|
void Gambit_fn_02693A30(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02693A30: ; // 0x2693a30
|
|
/* 02693A30 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02693A30 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02693A34 */ _t1 = cpu->r[12] + 0x0000001Cu;
|
|
/* 02693A34 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02693A38 */ cpu->ctr = cpu->r[0];
|
|
/* 02693A3C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02693A40 @ 0x2693a40
|
|
void Gambit_fn_02693A40(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_02693A40: ; // 0x2693a40
|
|
/* 02693A40 */ cpu->r[11] = cpu->r[3];
|
|
/* 02693A44 */ _t0 = cpu->r[11] + 0x0000001Cu;
|
|
/* 02693A44 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02693A48 */ _t1 = cpu->r[11] + 0x00000014u;
|
|
/* 02693A48 */ cpu->r[8] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02693A4C */ cpu->r[10] = cpu->r[12] + 0x00000001u;
|
|
/* 02693A50 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[10] / (int32_t)cpu->r[8]);
|
|
/* 02693A54 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)cpu->r[8]);
|
|
/* 02693A58 */ cpu->r[12] = cpu->r[10] - cpu->r[0];
|
|
/* 02693A5C */ cpu->r[3] = 0x00000000u;
|
|
/* 02693A60 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[8]);
|
|
/* 02693A64 */ _t2 = cpu->r[11] + 0x0000001Cu;
|
|
/* 02693A64 */ rbrew_write32(cpu->mem, _t2, cpu->r[12]);
|
|
/* 02693A68 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02693A68 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02693A68 */ if (_t4) goto L_02693A6C; else goto L_02693A78;
|
|
L_02693A6C: ; // 0x2693a6c
|
|
/* 02693A6C */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[12] * (int32_t)0x0000000Cu);
|
|
/* 02693A70 */ _t5 = cpu->r[11] + 0x00000018u;
|
|
/* 02693A70 */ cpu->r[9] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02693A74 */ cpu->r[3] = cpu->r[9] + cpu->r[0];
|
|
L_02693A78: ; // 0x2693a78
|
|
/* 02693A78 */ cpu->r[10] = cpu->r[12] + cpu->r[8];
|
|
/* 02693A7C */ cpu->r[0] = cpu->r[10] + 0xFFFFFFFFu;
|
|
/* 02693A80 */ cpu->r[9] = (uint32_t)((int32_t)cpu->r[0] / (int32_t)cpu->r[8]);
|
|
/* 02693A84 */ cpu->r[9] = (uint32_t)((int32_t)cpu->r[9] * (int32_t)cpu->r[8]);
|
|
/* 02693A88 */ cpu->r[10] = cpu->r[0] - cpu->r[9];
|
|
/* 02693A8C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[8]);
|
|
/* 02693A90 */ cpu->r[4] = 0x00000000u;
|
|
/* 02693A94 */ _t6 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02693A94 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02693A94 */ if (_t7) goto L_02693A98; else goto L_02693AA4;
|
|
L_02693A98: ; // 0x2693a98
|
|
/* 02693A98 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[10] * (int32_t)0x0000000Cu);
|
|
/* 02693A9C */ _t8 = cpu->r[11] + 0x00000018u;
|
|
/* 02693A9C */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02693AA0 */ cpu->r[4] = cpu->r[12] + cpu->r[0];
|
|
L_02693AA4: ; // 0x2693aa4
|
|
/* 02693AA4 */ cpu->r[6] = 0x00000000u;
|
|
/* 02693AA8 */ cpu->r[5] = 0x0000000Cu;
|
|
/* 02693AAC */ rbrew_dispatch(cpu, 0x02d0a6e8u); return;
|
|
}
|
|
|
|
// fn_02693AB0 @ 0x2693ab0
|
|
void Gambit_fn_02693AB0(CPUState* cpu) {
|
|
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_02693AB0: ; // 0x2693ab0
|
|
/* 02693AB0 */ cpu->r[0] = cpu->lr;
|
|
/* 02693AB4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02693AB4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02693AB4 */ cpu->r[1] = _t0;
|
|
/* 02693AB8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02693AB8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02693ABC */ cpu->r[31] = cpu->r[3];
|
|
/* 02693AC0 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02693AC0 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02693AC4 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02693AC4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02693AC8 */ _t4 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02693AC8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02693ACC */ _t5 = cpu->r[31] + 0x00000014u;
|
|
/* 02693ACC */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02693AD0 */ cpu->r[30] = 0x00000000u;
|
|
/* 02693AD4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[0]);
|
|
/* 02693AD8 */ _t6 = cpu->r[31] + 0x00000010u;
|
|
/* 02693AD8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02693ADC */ _t7 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02693ADC */ _t8 = _t7 & 0x00000001u;
|
|
/* 02693ADC */ if (_t8) goto L_02693AE0; else goto L_02693AEC;
|
|
L_02693AE0: ; // 0x2693ae0
|
|
/* 02693AE0 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[12] * (int32_t)0x0000000Cu);
|
|
/* 02693AE4 */ _t9 = cpu->r[31] + 0x00000018u;
|
|
/* 02693AE4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02693AE8 */ cpu->r[30] = cpu->r[11] + cpu->r[0];
|
|
L_02693AEC: ; // 0x2693aec
|
|
/* 02693AEC */ Gambit_fn_02686240(cpu);
|
|
/* 02693AF0 */ _t10 = cpu->r[30] + 0x00000001u;
|
|
/* 02693AF0 */ rbrew_write8(cpu->mem, _t10, (uint8_t)cpu->r[3]);
|
|
/* 02693AF4 */ _t11 = cpu->r[31] + 0x00000010u;
|
|
/* 02693AF4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02693AF8 */ Gambit_fn_02686258(cpu);
|
|
/* 02693AFC */ _t12 = cpu->r[30] + 0x00000000u;
|
|
/* 02693AFC */ rbrew_write8(cpu->mem, _t12, (uint8_t)cpu->r[3]);
|
|
/* 02693B00 */ _t13 = cpu->r[31] + 0x00000010u;
|
|
/* 02693B00 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02693B04 */ Gambit_fn_02684F34(cpu);
|
|
/* 02693B08 */ _t14 = cpu->r[30] + 0x00000002u;
|
|
/* 02693B08 */ rbrew_write8(cpu->mem, _t14, (uint8_t)cpu->r[3]);
|
|
/* 02693B0C */ _t15 = cpu->r[31] + 0x00000010u;
|
|
/* 02693B0C */ cpu->r[3] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02693B10 */ Gambit_fn_02686230(cpu);
|
|
/* 02693B14 */ _t16 = cpu->r[30] + 0x00000004u;
|
|
/* 02693B14 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[1]);
|
|
/* 02693B18 */ _t17 = cpu->r[31] + 0x00000010u;
|
|
/* 02693B18 */ cpu->r[3] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02693B1C */ Gambit_fn_02686238(cpu);
|
|
/* 02693B20 */ _t18 = cpu->r[30] + 0x00000008u;
|
|
/* 02693B20 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[1]);
|
|
/* 02693B24 */ _t19 = cpu->r[1] + 0x00000014u;
|
|
/* 02693B24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02693B28 */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 02693B28 */ cpu->r[30] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02693B2C */ cpu->lr = cpu->r[0];
|
|
/* 02693B30 */ _t21 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02693B30 */ cpu->r[31] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02693B34 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02693B38 */ return;
|
|
}
|
|
|
|
// fn_02693AB4 @ 0x2693ab4
|
|
void Gambit_fn_02693AB4(CPUState* cpu) {
|
|
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_02693AB4: ; // 0x2693ab4
|
|
/* 02693AB4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02693AB4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02693AB4 */ cpu->r[1] = _t0;
|
|
/* 02693AB8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02693AB8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02693ABC */ cpu->r[31] = cpu->r[3];
|
|
/* 02693AC0 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02693AC0 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02693AC4 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02693AC4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02693AC8 */ _t4 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02693AC8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02693ACC */ _t5 = cpu->r[31] + 0x00000014u;
|
|
/* 02693ACC */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02693AD0 */ cpu->r[30] = 0x00000000u;
|
|
/* 02693AD4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[0]);
|
|
/* 02693AD8 */ _t6 = cpu->r[31] + 0x00000010u;
|
|
/* 02693AD8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02693ADC */ _t7 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02693ADC */ _t8 = _t7 & 0x00000001u;
|
|
/* 02693ADC */ if (_t8) goto L_02693AE0; else goto L_02693AEC;
|
|
L_02693AE0: ; // 0x2693ae0
|
|
/* 02693AE0 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[12] * (int32_t)0x0000000Cu);
|
|
/* 02693AE4 */ _t9 = cpu->r[31] + 0x00000018u;
|
|
/* 02693AE4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02693AE8 */ cpu->r[30] = cpu->r[11] + cpu->r[0];
|
|
L_02693AEC: ; // 0x2693aec
|
|
/* 02693AEC */ Gambit_fn_02686240(cpu);
|
|
/* 02693AF0 */ _t10 = cpu->r[30] + 0x00000001u;
|
|
/* 02693AF0 */ rbrew_write8(cpu->mem, _t10, (uint8_t)cpu->r[3]);
|
|
/* 02693AF4 */ _t11 = cpu->r[31] + 0x00000010u;
|
|
/* 02693AF4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02693AF8 */ Gambit_fn_02686258(cpu);
|
|
/* 02693AFC */ _t12 = cpu->r[30] + 0x00000000u;
|
|
/* 02693AFC */ rbrew_write8(cpu->mem, _t12, (uint8_t)cpu->r[3]);
|
|
/* 02693B00 */ _t13 = cpu->r[31] + 0x00000010u;
|
|
/* 02693B00 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02693B04 */ Gambit_fn_02684F34(cpu);
|
|
/* 02693B08 */ _t14 = cpu->r[30] + 0x00000002u;
|
|
/* 02693B08 */ rbrew_write8(cpu->mem, _t14, (uint8_t)cpu->r[3]);
|
|
/* 02693B0C */ _t15 = cpu->r[31] + 0x00000010u;
|
|
/* 02693B0C */ cpu->r[3] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02693B10 */ Gambit_fn_02686230(cpu);
|
|
/* 02693B14 */ _t16 = cpu->r[30] + 0x00000004u;
|
|
/* 02693B14 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[1]);
|
|
/* 02693B18 */ _t17 = cpu->r[31] + 0x00000010u;
|
|
/* 02693B18 */ cpu->r[3] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02693B1C */ Gambit_fn_02686238(cpu);
|
|
/* 02693B20 */ _t18 = cpu->r[30] + 0x00000008u;
|
|
/* 02693B20 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[1]);
|
|
/* 02693B24 */ _t19 = cpu->r[1] + 0x00000014u;
|
|
/* 02693B24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02693B28 */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 02693B28 */ cpu->r[30] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02693B2C */ cpu->lr = cpu->r[0];
|
|
/* 02693B30 */ _t21 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02693B30 */ cpu->r[31] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02693B34 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02693B38 */ return;
|
|
}
|
|
|
|
// fn_02693B3C @ 0x2693b3c
|
|
void Gambit_fn_02693B3C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_02693B3C: ; // 0x2693b3c
|
|
/* 02693B3C */ _t0 = cpu->r[4] + 0x00000000u;
|
|
/* 02693B3C */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02693B40 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], 0x00000003u);
|
|
/* 02693B44 */ _t1 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02693B44 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02693B44 */ if (_t2) goto L_02693B80; else goto L_02693B48;
|
|
L_02693B48: ; // 0x2693b48
|
|
/* 02693B48 */ _t3 = cpu->r[3] + 0x00000008u;
|
|
/* 02693B48 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02693B4C */ _t4 = cpu->r[12] + 0x00000748u;
|
|
/* 02693B4C */ cpu->r[6] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02693B50 */ _t5 = cpu->r[3] + 0x00000014u;
|
|
/* 02693B50 */ cpu->r[7] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02693B54 */ _t6 = cpu->r[6] + 0x000005BCu;
|
|
/* 02693B54 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02693B58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], cpu->r[0]);
|
|
/* 02693B5C */ _t7 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02693B5C */ _t8 = _t7 & 0x00000001u;
|
|
/* 02693B5C */ if (_t8) goto L_02693B60; else goto L_02693B64;
|
|
L_02693B60: ; // 0x2693b60
|
|
/* 02693B60 */ cpu->r[0] = cpu->r[7];
|
|
L_02693B64: ; // 0x2693b64
|
|
/* 02693B64 */ _t9 = cpu->r[3] + 0x0000001Cu;
|
|
/* 02693B64 */ cpu->r[9] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02693B68 */ cpu->r[8] = cpu->r[9] + cpu->r[7];
|
|
/* 02693B6C */ cpu->r[10] = cpu->r[8] - cpu->r[0];
|
|
/* 02693B70 */ cpu->r[12] = (uint32_t)((int32_t)cpu->r[10] / (int32_t)cpu->r[7]);
|
|
/* 02693B74 */ cpu->r[12] = (uint32_t)((int32_t)cpu->r[12] * (int32_t)cpu->r[7]);
|
|
/* 02693B78 */ cpu->r[3] = cpu->r[10] - cpu->r[12];
|
|
/* 02693B7C */ return;
|
|
L_02693B80: ; // 0x2693b80
|
|
/* 02693B80 */ _t10 = cpu->r[3] + 0x0000001Cu;
|
|
/* 02693B80 */ cpu->r[9] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02693B84 */ cpu->r[0] = 0x00000001u;
|
|
/* 02693B88 */ _t11 = cpu->r[3] + 0x00000014u;
|
|
/* 02693B88 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02693B8C */ cpu->r[8] = cpu->r[9] + cpu->r[7];
|
|
/* 02693B90 */ cpu->r[10] = cpu->r[8] - cpu->r[0];
|
|
/* 02693B94 */ cpu->r[12] = (uint32_t)((int32_t)cpu->r[10] / (int32_t)cpu->r[7]);
|
|
/* 02693B98 */ cpu->r[12] = (uint32_t)((int32_t)cpu->r[12] * (int32_t)cpu->r[7]);
|
|
/* 02693B9C */ cpu->r[3] = cpu->r[10] - cpu->r[12];
|
|
/* 02693BA0 */ return;
|
|
}
|
|
|
|
// fn_02693BA4 @ 0x2693ba4
|
|
void Gambit_fn_02693BA4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02693BA4: ; // 0x2693ba4
|
|
/* 02693BA4 */ cpu->r[0] = cpu->lr;
|
|
/* 02693BA8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02693BA8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02693BA8 */ cpu->r[1] = _t0;
|
|
/* 02693BAC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02693BAC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02693BB0 */ cpu->r[31] = 0x00000000u;
|
|
/* 02693BB4 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02693BB4 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02693BB8 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02693BBC */ cpu->r[5] = cpu->r[3];
|
|
/* 02693BC0 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02693BC0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02693BC4 */ Gambit_fn_02693B3C(cpu);
|
|
/* 02693BC8 */ _t4 = cpu->r[5] + 0x00000014u;
|
|
/* 02693BC8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02693BCC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], cpu->r[10]);
|
|
/* 02693BD0 */ _t5 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02693BD0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02693BD0 */ if (_t6) goto L_02693BD4; else goto L_02693BE0;
|
|
L_02693BD4: ; // 0x2693bd4
|
|
/* 02693BD4 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[3] * (int32_t)0x0000000Cu);
|
|
/* 02693BD8 */ _t7 = cpu->r[5] + 0x00000018u;
|
|
/* 02693BD8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02693BDC */ cpu->r[31] = cpu->r[12] + cpu->r[0];
|
|
L_02693BE0: ; // 0x2693be0
|
|
/* 02693BE0 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 02693BE0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02693BE4 */ _t9 = cpu->r[31] + 0x00000000u;
|
|
/* 02693BE4 */ cpu->r[3] = rbrew_read8(cpu->mem, _t9);
|
|
/* 02693BE8 */ cpu->lr = cpu->r[0];
|
|
/* 02693BEC */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02693BEC */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02693BF0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02693BF4 */ return;
|
|
}
|
|
|
|
// fn_02693BA8 @ 0x2693ba8
|
|
void Gambit_fn_02693BA8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02693BA8: ; // 0x2693ba8
|
|
/* 02693BA8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02693BA8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02693BA8 */ cpu->r[1] = _t0;
|
|
/* 02693BAC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02693BAC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02693BB0 */ cpu->r[31] = 0x00000000u;
|
|
/* 02693BB4 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02693BB4 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02693BB8 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02693BBC */ cpu->r[5] = cpu->r[3];
|
|
/* 02693BC0 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02693BC0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02693BC4 */ Gambit_fn_02693B3C(cpu);
|
|
/* 02693BC8 */ _t4 = cpu->r[5] + 0x00000014u;
|
|
/* 02693BC8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02693BCC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], cpu->r[10]);
|
|
/* 02693BD0 */ _t5 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02693BD0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02693BD0 */ if (_t6) goto L_02693BD4; else goto L_02693BE0;
|
|
L_02693BD4: ; // 0x2693bd4
|
|
/* 02693BD4 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[3] * (int32_t)0x0000000Cu);
|
|
/* 02693BD8 */ _t7 = cpu->r[5] + 0x00000018u;
|
|
/* 02693BD8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02693BDC */ cpu->r[31] = cpu->r[12] + cpu->r[0];
|
|
L_02693BE0: ; // 0x2693be0
|
|
/* 02693BE0 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 02693BE0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02693BE4 */ _t9 = cpu->r[31] + 0x00000000u;
|
|
/* 02693BE4 */ cpu->r[3] = rbrew_read8(cpu->mem, _t9);
|
|
/* 02693BE8 */ cpu->lr = cpu->r[0];
|
|
/* 02693BEC */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02693BEC */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02693BF0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02693BF4 */ return;
|
|
}
|
|
|
|
// fn_02693BF8 @ 0x2693bf8
|
|
void Gambit_fn_02693BF8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_02693BF8: ; // 0x2693bf8
|
|
/* 02693BF8 */ cpu->r[0] = cpu->lr;
|
|
/* 02693BFC */ cpu->r[5] = cpu->r[3];
|
|
/* 02693C00 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 02693C00 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 02693C04 */ cpu->r[11] = 0x00000001u;
|
|
/* 02693C08 */ _t1 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02693C08 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 02693C08 */ cpu->r[1] = _t1;
|
|
/* 02693C0C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02693C10 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02693C10 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 02693C14 */ Gambit_fn_02693B3C(cpu);
|
|
/* 02693C18 */ _t3 = cpu->r[5] + 0x00000014u;
|
|
/* 02693C18 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02693C1C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], cpu->r[12]);
|
|
/* 02693C20 */ cpu->r[12] = 0x00000000u;
|
|
/* 02693C24 */ _t4 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02693C24 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02693C24 */ if (_t5) goto L_02693C28; else goto L_02693C34;
|
|
L_02693C28: ; // 0x2693c28
|
|
/* 02693C28 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[3] * (int32_t)0x0000000Cu);
|
|
/* 02693C2C */ _t6 = cpu->r[5] + 0x00000018u;
|
|
/* 02693C2C */ cpu->r[11] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02693C30 */ cpu->r[12] = cpu->r[11] + cpu->r[0];
|
|
L_02693C34: ; // 0x2693c34
|
|
/* 02693C34 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 02693C34 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02693C38 */ _t8 = cpu->r[12] + 0x00000001u;
|
|
/* 02693C38 */ cpu->r[3] = rbrew_read8(cpu->mem, _t8);
|
|
/* 02693C3C */ cpu->lr = cpu->r[0];
|
|
/* 02693C40 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02693C44 */ return;
|
|
}
|
|
|
|
// fn_02693C08 @ 0x2693c08
|
|
void Gambit_fn_02693C08(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_02693C08: ; // 0x2693c08
|
|
/* 02693C08 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02693C08 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02693C08 */ cpu->r[1] = _t0;
|
|
/* 02693C0C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02693C10 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02693C10 */ rbrew_write32(cpu->mem, _t1, cpu->r[11]);
|
|
/* 02693C14 */ Gambit_fn_02693B3C(cpu);
|
|
/* 02693C18 */ _t2 = cpu->r[5] + 0x00000014u;
|
|
/* 02693C18 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02693C1C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], cpu->r[12]);
|
|
/* 02693C20 */ cpu->r[12] = 0x00000000u;
|
|
/* 02693C24 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02693C24 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02693C24 */ if (_t4) goto L_02693C28; else goto L_02693C34;
|
|
L_02693C28: ; // 0x2693c28
|
|
/* 02693C28 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[3] * (int32_t)0x0000000Cu);
|
|
/* 02693C2C */ _t5 = cpu->r[5] + 0x00000018u;
|
|
/* 02693C2C */ cpu->r[11] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02693C30 */ cpu->r[12] = cpu->r[11] + cpu->r[0];
|
|
L_02693C34: ; // 0x2693c34
|
|
/* 02693C34 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02693C34 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02693C38 */ _t7 = cpu->r[12] + 0x00000001u;
|
|
/* 02693C38 */ cpu->r[3] = rbrew_read8(cpu->mem, _t7);
|
|
/* 02693C3C */ cpu->lr = cpu->r[0];
|
|
/* 02693C40 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02693C44 */ return;
|
|
}
|
|
|
|
// fn_02693C48 @ 0x2693c48
|
|
void Gambit_fn_02693C48(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02693C48: ; // 0x2693c48
|
|
/* 02693C48 */ cpu->r[0] = cpu->lr;
|
|
/* 02693C4C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02693C4C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02693C4C */ cpu->r[1] = _t0;
|
|
/* 02693C50 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02693C50 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02693C54 */ cpu->r[31] = 0x00000000u;
|
|
/* 02693C58 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02693C58 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02693C5C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02693C60 */ cpu->r[5] = cpu->r[3];
|
|
/* 02693C64 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02693C64 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02693C68 */ Gambit_fn_02693B3C(cpu);
|
|
/* 02693C6C */ _t4 = cpu->r[5] + 0x00000014u;
|
|
/* 02693C6C */ cpu->r[10] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02693C70 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], cpu->r[10]);
|
|
/* 02693C74 */ _t5 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02693C74 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02693C74 */ if (_t6) goto L_02693C78; else goto L_02693C84;
|
|
L_02693C78: ; // 0x2693c78
|
|
/* 02693C78 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[3] * (int32_t)0x0000000Cu);
|
|
/* 02693C7C */ _t7 = cpu->r[5] + 0x00000018u;
|
|
/* 02693C7C */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02693C80 */ cpu->r[31] = cpu->r[12] + cpu->r[0];
|
|
L_02693C84: ; // 0x2693c84
|
|
/* 02693C84 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 02693C84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02693C88 */ _t9 = cpu->r[31] + 0x00000002u;
|
|
/* 02693C88 */ cpu->r[3] = rbrew_read8(cpu->mem, _t9);
|
|
/* 02693C8C */ cpu->lr = cpu->r[0];
|
|
/* 02693C90 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02693C90 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02693C94 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02693C98 */ return;
|
|
}
|
|
|
|
// fn_02693C4C @ 0x2693c4c
|
|
void Gambit_fn_02693C4C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02693C4C: ; // 0x2693c4c
|
|
/* 02693C4C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02693C4C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02693C4C */ cpu->r[1] = _t0;
|
|
/* 02693C50 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02693C50 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02693C54 */ cpu->r[31] = 0x00000000u;
|
|
/* 02693C58 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02693C58 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02693C5C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02693C60 */ cpu->r[5] = cpu->r[3];
|
|
/* 02693C64 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02693C64 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02693C68 */ Gambit_fn_02693B3C(cpu);
|
|
/* 02693C6C */ _t4 = cpu->r[5] + 0x00000014u;
|
|
/* 02693C6C */ cpu->r[10] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02693C70 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], cpu->r[10]);
|
|
/* 02693C74 */ _t5 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02693C74 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02693C74 */ if (_t6) goto L_02693C78; else goto L_02693C84;
|
|
L_02693C78: ; // 0x2693c78
|
|
/* 02693C78 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[3] * (int32_t)0x0000000Cu);
|
|
/* 02693C7C */ _t7 = cpu->r[5] + 0x00000018u;
|
|
/* 02693C7C */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02693C80 */ cpu->r[31] = cpu->r[12] + cpu->r[0];
|
|
L_02693C84: ; // 0x2693c84
|
|
/* 02693C84 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 02693C84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02693C88 */ _t9 = cpu->r[31] + 0x00000002u;
|
|
/* 02693C88 */ cpu->r[3] = rbrew_read8(cpu->mem, _t9);
|
|
/* 02693C8C */ cpu->lr = cpu->r[0];
|
|
/* 02693C90 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02693C90 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02693C94 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02693C98 */ return;
|
|
}
|
|
|
|
// fn_02693C9C @ 0x2693c9c
|
|
void Gambit_fn_02693C9C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_02693C9C: ; // 0x2693c9c
|
|
/* 02693C9C */ cpu->r[0] = cpu->lr;
|
|
/* 02693CA0 */ cpu->r[5] = cpu->r[3];
|
|
/* 02693CA4 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 02693CA4 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 02693CA8 */ cpu->r[11] = 0x00000002u;
|
|
/* 02693CAC */ _t1 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02693CAC */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 02693CAC */ cpu->r[1] = _t1;
|
|
/* 02693CB0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02693CB4 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02693CB4 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 02693CB8 */ Gambit_fn_02693B3C(cpu);
|
|
/* 02693CBC */ _t3 = cpu->r[5] + 0x00000014u;
|
|
/* 02693CBC */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02693CC0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], cpu->r[12]);
|
|
/* 02693CC4 */ cpu->r[12] = 0x00000000u;
|
|
/* 02693CC8 */ _t4 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02693CC8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02693CC8 */ if (_t5) goto L_02693CCC; else goto L_02693CD8;
|
|
L_02693CCC: ; // 0x2693ccc
|
|
/* 02693CCC */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[3] * (int32_t)0x0000000Cu);
|
|
/* 02693CD0 */ _t6 = cpu->r[5] + 0x00000018u;
|
|
/* 02693CD0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02693CD4 */ cpu->r[12] = cpu->r[11] + cpu->r[0];
|
|
L_02693CD8: ; // 0x2693cd8
|
|
/* 02693CD8 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 02693CD8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02693CDC */ _t8 = cpu->r[12] + 0x00000004u;
|
|
/* 02693CDC */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 02693CE0 */ cpu->lr = cpu->r[0];
|
|
/* 02693CE4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02693CE8 */ return;
|
|
}
|
|
|
|
// fn_02693CAC @ 0x2693cac
|
|
void Gambit_fn_02693CAC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_02693CAC: ; // 0x2693cac
|
|
/* 02693CAC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02693CAC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02693CAC */ cpu->r[1] = _t0;
|
|
/* 02693CB0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02693CB4 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02693CB4 */ rbrew_write32(cpu->mem, _t1, cpu->r[11]);
|
|
/* 02693CB8 */ Gambit_fn_02693B3C(cpu);
|
|
/* 02693CBC */ _t2 = cpu->r[5] + 0x00000014u;
|
|
/* 02693CBC */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02693CC0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], cpu->r[12]);
|
|
/* 02693CC4 */ cpu->r[12] = 0x00000000u;
|
|
/* 02693CC8 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02693CC8 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02693CC8 */ if (_t4) goto L_02693CCC; else goto L_02693CD8;
|
|
L_02693CCC: ; // 0x2693ccc
|
|
/* 02693CCC */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[3] * (int32_t)0x0000000Cu);
|
|
/* 02693CD0 */ _t5 = cpu->r[5] + 0x00000018u;
|
|
/* 02693CD0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02693CD4 */ cpu->r[12] = cpu->r[11] + cpu->r[0];
|
|
L_02693CD8: ; // 0x2693cd8
|
|
/* 02693CD8 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02693CD8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02693CDC */ _t7 = cpu->r[12] + 0x00000004u;
|
|
/* 02693CDC */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 02693CE0 */ cpu->lr = cpu->r[0];
|
|
/* 02693CE4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02693CE8 */ return;
|
|
}
|
|
|
|
// fn_02693CEC @ 0x2693cec
|
|
void Gambit_fn_02693CEC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_02693CEC: ; // 0x2693cec
|
|
/* 02693CEC */ cpu->r[0] = cpu->lr;
|
|
/* 02693CF0 */ cpu->r[5] = cpu->r[3];
|
|
/* 02693CF4 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 02693CF4 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 02693CF8 */ cpu->r[11] = 0x00000003u;
|
|
/* 02693CFC */ _t1 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02693CFC */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 02693CFC */ cpu->r[1] = _t1;
|
|
/* 02693D00 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02693D04 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02693D04 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 02693D08 */ Gambit_fn_02693B3C(cpu);
|
|
/* 02693D0C */ _t3 = cpu->r[5] + 0x00000014u;
|
|
/* 02693D0C */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02693D10 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], cpu->r[12]);
|
|
/* 02693D14 */ cpu->r[12] = 0x00000000u;
|
|
/* 02693D18 */ _t4 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02693D18 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02693D18 */ if (_t5) goto L_02693D1C; else goto L_02693D28;
|
|
L_02693D1C: ; // 0x2693d1c
|
|
/* 02693D1C */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[3] * (int32_t)0x0000000Cu);
|
|
/* 02693D20 */ _t6 = cpu->r[5] + 0x00000018u;
|
|
/* 02693D20 */ cpu->r[11] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02693D24 */ cpu->r[12] = cpu->r[11] + cpu->r[0];
|
|
L_02693D28: ; // 0x2693d28
|
|
/* 02693D28 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 02693D28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02693D2C */ _t8 = cpu->r[12] + 0x00000008u;
|
|
/* 02693D2C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 02693D30 */ cpu->lr = cpu->r[0];
|
|
/* 02693D34 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02693D38 */ return;
|
|
}
|
|
|
|
// fn_02693CFC @ 0x2693cfc
|
|
void Gambit_fn_02693CFC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_02693CFC: ; // 0x2693cfc
|
|
/* 02693CFC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02693CFC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02693CFC */ cpu->r[1] = _t0;
|
|
/* 02693D00 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02693D04 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02693D04 */ rbrew_write32(cpu->mem, _t1, cpu->r[11]);
|
|
/* 02693D08 */ Gambit_fn_02693B3C(cpu);
|
|
/* 02693D0C */ _t2 = cpu->r[5] + 0x00000014u;
|
|
/* 02693D0C */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02693D10 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], cpu->r[12]);
|
|
/* 02693D14 */ cpu->r[12] = 0x00000000u;
|
|
/* 02693D18 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02693D18 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02693D18 */ if (_t4) goto L_02693D1C; else goto L_02693D28;
|
|
L_02693D1C: ; // 0x2693d1c
|
|
/* 02693D1C */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[3] * (int32_t)0x0000000Cu);
|
|
/* 02693D20 */ _t5 = cpu->r[5] + 0x00000018u;
|
|
/* 02693D20 */ cpu->r[11] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02693D24 */ cpu->r[12] = cpu->r[11] + cpu->r[0];
|
|
L_02693D28: ; // 0x2693d28
|
|
/* 02693D28 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02693D28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02693D2C */ _t7 = cpu->r[12] + 0x00000008u;
|
|
/* 02693D2C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 02693D30 */ cpu->lr = cpu->r[0];
|
|
/* 02693D34 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02693D38 */ return;
|
|
}
|
|
|
|
// fn_02693D3C @ 0x2693d3c
|
|
void Gambit_fn_02693D3C(CPUState* cpu) {
|
|
L_02693D3C: ; // 0x2693d3c
|
|
/* 02693D3C */ return;
|
|
}
|
|
|
|
// fn_02693D40 @ 0x2693d40
|
|
void Gambit_fn_02693D40(CPUState* cpu) {
|
|
L_02693D40: ; // 0x2693d40
|
|
/* 02693D40 */ return;
|
|
}
|
|
|
|
// fn_02693D44 @ 0x2693d44
|
|
void Gambit_fn_02693D44(CPUState* cpu) {
|
|
L_02693D44: ; // 0x2693d44
|
|
/* 02693D44 */ return;
|
|
}
|
|
|
|
// fn_02693D48 @ 0x2693d48
|
|
void Gambit_fn_02693D48(CPUState* cpu) {
|
|
uint32_t _t0, _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_02693D48: ; // 0x2693d48
|
|
/* 02693D48 */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 02693D48 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02693D48 */ cpu->r[1] = _t0;
|
|
/* 02693D4C */ _t1 = cpu->r[1] + 0x00000028u;
|
|
/* 02693D4C */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 02693D50 */ /* nop */
|
|
/* 02693D54 */ cpu->r[0] = cpu->lr;
|
|
/* 02693D58 */ _t2 = cpu->r[1] + 0x00000018u;
|
|
/* 02693D58 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[30]);
|
|
/* 02693D5C */ /* nop */
|
|
/* 02693D60 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02693D60 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 02693D64 */ cpu->r[31] = cpu->r[3];
|
|
/* 02693D64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02693D68 */ _t4 = cpu->r[1] + 0x00000030u;
|
|
/* 02693D68 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[31]);
|
|
/* 02693D6C */ _t5 = cpu->r[1] + 0x00000020u;
|
|
/* 02693D6C */ rbrew_write_f32(cpu->mem, _t5, cpu->f[30]);
|
|
/* 02693D70 */ _t6 = cpu->r[1] + 0x00000010u;
|
|
/* 02693D70 */ rbrew_write32(cpu->mem, _t6, cpu->r[30]);
|
|
/* 02693D74 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02693D74 */ rbrew_write32(cpu->mem, _t7, cpu->r[29]);
|
|
/* 02693D78 */ cpu->r[30] = cpu->r[5];
|
|
/* 02693D7C */ _t8 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02693D7C */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 02693D80 */ cpu->r[29] = cpu->r[4];
|
|
/* 02693D84 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02693D84 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02693D84 */ if (_t10) goto L_02693D88; else goto L_02693D98;
|
|
L_02693D88: ; // 0x2693d88
|
|
/* 02693D88 */ cpu->r[3] = 0x000000A8u;
|
|
/* 02693D8C */ Gambit_fn_02801A78(cpu);
|
|
/* 02693D90 */ cpu->r[31] = cpu->r[3];
|
|
/* 02693D90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02693D94 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02693D94 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02693D94 */ if (_t12) goto L_02693E38; else goto L_02693D98;
|
|
L_02693D98: ; // 0x2693d98
|
|
/* 02693D98 */ cpu->r[3] = cpu->r[31];
|
|
/* 02693D9C */ cpu->r[4] = cpu->r[29];
|
|
/* 02693DA0 */ cpu->r[5] = cpu->r[30];
|
|
/* 02693DA4 */ Gambit_fn_0269383C(cpu);
|
|
/* 02693DA8 */ cpu->r[11] = 0x100E0000u;
|
|
/* 02693DAC */ cpu->r[12] = 0x100E0000u;
|
|
/* 02693DB0 */ _t13 = cpu->r[11] + 0x00003BA4u;
|
|
/* 02693DB0 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 02693DB4 */ cpu->r[0] = 0x100E0000u;
|
|
/* 02693DB8 */ _t14 = cpu->r[12] + 0x00003BA0u;
|
|
/* 02693DB8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 02693DBC */ cpu->f[2] = cpu->f[30];
|
|
/* 02693DC0 */ cpu->r[0] = cpu->r[0] + 0x00003BD0u;
|
|
/* 02693DC4 */ cpu->r[4] = 0x101F0000u;
|
|
/* 02693DC8 */ cpu->f[1] = cpu->f[31];
|
|
/* 02693DCC */ cpu->r[3] = cpu->r[31] + 0x00000010u;
|
|
/* 02693DD0 */ cpu->r[4] = cpu->r[4] + 0x00006338u;
|
|
/* 02693DD4 */ _t15 = cpu->r[31] + 0x00000004u;
|
|
/* 02693DD4 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 02693DD8 */ Gambit_fn_02698DA8(cpu);
|
|
/* 02693DDC */ cpu->r[3] = cpu->r[31] + 0x00000094u;
|
|
/* 02693DDC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02693DE0 */ cpu->r[30] = 0x00000000u;
|
|
/* 02693DE4 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02693DE4 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02693DE4 */ if (_t17) goto L_02693DE8; else goto L_02693DF8;
|
|
L_02693DE8: ; // 0x2693de8
|
|
/* 02693DE8 */ cpu->r[3] = 0x00000008u;
|
|
/* 02693DEC */ Gambit_fn_02801A78(cpu);
|
|
/* 02693DF0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02693DF4 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02693DF4 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02693DF4 */ if (_t19) goto L_02693E00; else goto L_02693DF8;
|
|
L_02693DF8: ; // 0x2693df8
|
|
/* 02693DF8 */ _t20 = cpu->r[3] + 0x00000004u;
|
|
/* 02693DF8 */ rbrew_write32(cpu->mem, _t20, cpu->r[30]);
|
|
/* 02693DFC */ _t21 = cpu->r[3] + 0x00000000u;
|
|
/* 02693DFC */ rbrew_write32(cpu->mem, _t21, cpu->r[30]);
|
|
L_02693E00: ; // 0x2693e00
|
|
/* 02693E00 */ _t22 = cpu->r[31] + 0x0000009Cu;
|
|
/* 02693E00 */ rbrew_write32(cpu->mem, _t22, cpu->r[30]);
|
|
/* 02693E04 */ cpu->f[1] = cpu->f[31];
|
|
/* 02693E08 */ _t23 = cpu->r[31] + 0x000000A5u;
|
|
/* 02693E08 */ rbrew_write8(cpu->mem, _t23, (uint8_t)cpu->r[30]);
|
|
/* 02693E0C */ cpu->r[3] = cpu->r[31] + 0x00000010u;
|
|
/* 02693E10 */ _t24 = cpu->r[31] + 0x000000A0u;
|
|
/* 02693E10 */ rbrew_write32(cpu->mem, _t24, cpu->r[30]);
|
|
/* 02693E14 */ _t25 = cpu->r[31] + 0x000000A4u;
|
|
/* 02693E14 */ rbrew_write8(cpu->mem, _t25, (uint8_t)cpu->r[30]);
|
|
/* 02693E18 */ Gambit_fn_0269947C(cpu);
|
|
/* 02693E1C */ cpu->f[1] = cpu->f[30];
|
|
/* 02693E20 */ cpu->r[3] = cpu->r[31] + 0x00000010u;
|
|
/* 02693E24 */ Gambit_fn_02699484(cpu);
|
|
/* 02693E28 */ cpu->r[4] = 0x101F0000u;
|
|
/* 02693E2C */ cpu->r[3] = cpu->r[31] + 0x00000010u;
|
|
/* 02693E30 */ cpu->r[4] = cpu->r[4] + 0xFFFFD8C8u;
|
|
/* 02693E34 */ Gambit_fn_02699458(cpu);
|
|
L_02693E38: ; // 0x2693e38
|
|
/* 02693E38 */ _t26 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02693E38 */ cpu->r[29] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02693E3C */ _t27 = cpu->r[1] + 0x00000030u;
|
|
/* 02693E3C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 02693E40 */ _t28 = cpu->r[1] + 0x00000020u;
|
|
/* 02693E40 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 02693E44 */ _t29 = cpu->r[1] + 0x00000028u;
|
|
/* 02693E44 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t29);
|
|
/* 02693E48 */ _t30 = cpu->r[1] + 0x00000018u;
|
|
/* 02693E48 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t30);
|
|
/* 02693E4C */ cpu->r[3] = cpu->r[31];
|
|
/* 02693E50 */ _t31 = cpu->r[1] + 0x00000014u;
|
|
/* 02693E50 */ cpu->r[31] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02693E54 */ _t32 = cpu->r[1] + 0x00000010u;
|
|
/* 02693E54 */ cpu->r[30] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02693E58 */ _t33 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02693E58 */ _t34 = _t33 & 0x00000001u;
|
|
/* 02693E58 */ if (_t34) goto L_02693E5C; // else: addr-0 trap, fall-through
|
|
L_02693E5C: ; // 0x2693e5c
|
|
/* 02693E5C */ _t35 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02693E5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02693E60 */ cpu->lr = cpu->r[0];
|
|
/* 02693E64 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 02693E68 */ return;
|
|
}
|
|
|
|
// fn_02693E6C @ 0x2693e6c
|
|
void Gambit_fn_02693E6C(CPUState* cpu) {
|
|
uint32_t _t0, _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_02693E6C: ; // 0x2693e6c
|
|
/* 02693E6C */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 02693E6C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02693E6C */ cpu->r[1] = _t0;
|
|
/* 02693E70 */ /* nop */
|
|
/* 02693E74 */ cpu->r[0] = cpu->lr;
|
|
/* 02693E78 */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02693E78 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02693E7C */ cpu->r[29] = cpu->r[3];
|
|
/* 02693E80 */ _t2 = cpu->r[29] + 0x00000008u;
|
|
/* 02693E80 */ cpu->r[5] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02693E84 */ _t3 = cpu->r[5] + 0x00000748u;
|
|
/* 02693E84 */ cpu->r[8] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02693E88 */ _t4 = cpu->r[8] + 0x000003DCu;
|
|
/* 02693E88 */ cpu->r[7] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02693E8C */ cpu->r[25] = cpu->r[7] + 0x00000001u;
|
|
/* 02693E8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 02693E90 */ _t5 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02693E90 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02693E90 */ if (_t6) goto L_02693E94; else goto L_02693F28;
|
|
L_02693E94: ; // 0x2693e94
|
|
/* 02693E94 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02693E98 */ _t7 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02693E98 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02693E9C */ Gambit_fn_02826F20(cpu);
|
|
/* 02693EA0 */ _t8 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02693EA0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02693EA4 */ _t9 = cpu->r[9] + 0x00000034u;
|
|
/* 02693EA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02693EA8 */ cpu->ctr = cpu->r[0];
|
|
/* 02693EAC */ cpu->r[5] = 0x00000004u;
|
|
/* 02693EB0 */ cpu->r[4] = (uint32_t)((int32_t)cpu->r[25] * (int32_t)0x00000014u);
|
|
/* 02693EB4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02693EB8 */ cpu->r[27] = cpu->r[3];
|
|
/* 02693EBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 02693EC0 */ cpu->r[31] = cpu->r[25];
|
|
/* 02693EC4 */ cpu->r[0] = 0x00000000u;
|
|
/* 02693EC8 */ _t10 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02693EC8 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02693EC8 */ if (_t11) goto L_02693ED0; else goto L_02693ECC;
|
|
L_02693ECC: ; // 0x2693ecc
|
|
/* 02693ECC */ cpu->r[31] = 0x00000001u;
|
|
L_02693ED0: ; // 0x2693ed0
|
|
/* 02693ED0 */ cpu->r[26] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x00000014u);
|
|
/* 02693ED4 */ cpu->r[28] = 0x00000000u;
|
|
L_02693ED8: ; // 0x2693ed8
|
|
/* 02693ED8 */ cpu->r[30] = cpu->r[27] + cpu->r[26];
|
|
/* 02693ED8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02693EDC */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02693EDC */ _t13 = _t12 & 0x00000001u;
|
|
/* 02693EDC */ if (_t13) goto L_02693F0C; else goto L_02693EE0;
|
|
L_02693EE0: ; // 0x2693ee0
|
|
/* 02693EE0 */ cpu->r[8] = cpu->r[30];
|
|
/* 02693EE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02693EE4 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02693EE4 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02693EE4 */ if (_t15) goto L_02693EE8; else goto L_02693EF8;
|
|
L_02693EE8: ; // 0x2693ee8
|
|
/* 02693EE8 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02693EEC */ Gambit_fn_02801A78(cpu);
|
|
/* 02693EF0 */ cpu->r[8] = cpu->r[3];
|
|
/* 02693EF0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02693EF4 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02693EF4 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02693EF4 */ if (_t17) goto L_02693F04; else goto L_02693EF8;
|
|
L_02693EF8: ; // 0x2693ef8
|
|
/* 02693EF8 */ _t18 = cpu->r[8] + 0x00000004u;
|
|
/* 02693EF8 */ rbrew_write32(cpu->mem, _t18, cpu->r[28]);
|
|
/* 02693EFC */ _t19 = cpu->r[8] + 0x00000000u;
|
|
/* 02693EFC */ rbrew_write32(cpu->mem, _t19, cpu->r[28]);
|
|
/* 02693F00 */ _t20 = cpu->r[8] + 0x00000008u;
|
|
/* 02693F00 */ rbrew_write32(cpu->mem, _t20, cpu->r[28]);
|
|
L_02693F04: ; // 0x2693f04
|
|
/* 02693F04 */ _t21 = cpu->r[30] + 0x00000010u;
|
|
/* 02693F04 */ rbrew_write32(cpu->mem, _t21, cpu->r[28]);
|
|
/* 02693F08 */ _t22 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02693F08 */ rbrew_write32(cpu->mem, _t22, cpu->r[28]);
|
|
L_02693F0C: ; // 0x2693f0c
|
|
/* 02693F0C */ cpu->r[31] = cpu->r[31] + 0xFFFFFFFFu;
|
|
/* 02693F0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02693F10 */ cpu->r[26] = cpu->r[26] + 0x00000014u;
|
|
/* 02693F14 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02693F14 */ _t24 = _t23 & 0x00000001u;
|
|
/* 02693F14 */ if (_t24) goto L_02693F18; else goto L_02693ED8;
|
|
L_02693F18: ; // 0x2693f18
|
|
/* 02693F18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02693F1C */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02693F1C */ _t26 = _t25 & 0x00000001u;
|
|
/* 02693F1C */ if (_t26) goto L_02693F28; else goto L_02693F20;
|
|
L_02693F20: ; // 0x2693f20
|
|
/* 02693F20 */ _t27 = cpu->r[29] + 0x00000098u;
|
|
/* 02693F20 */ rbrew_write32(cpu->mem, _t27, cpu->r[27]);
|
|
/* 02693F24 */ _t28 = cpu->r[29] + 0x00000094u;
|
|
/* 02693F24 */ rbrew_write32(cpu->mem, _t28, cpu->r[25]);
|
|
L_02693F28: ; // 0x2693f28
|
|
/* 02693F28 */ _t29 = cpu->r[29] + 0x00000094u;
|
|
/* 02693F28 */ cpu->r[5] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02693F2C */ cpu->r[30] = 0x00000000u;
|
|
/* 02693F30 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[5]);
|
|
/* 02693F34 */ _t30 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02693F34 */ _t31 = _t30 & 0x00000001u;
|
|
/* 02693F34 */ if (_t31) goto L_02693F38; else goto L_02693FBC;
|
|
L_02693F38: ; // 0x2693f38
|
|
/* 02693F38 */ cpu->r[27] = 0x00000000u;
|
|
/* 02693F3C */ cpu->r[28] = cpu->r[27];
|
|
L_02693F40: ; // 0x2693f40
|
|
/* 02693F40 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[5]);
|
|
/* 02693F44 */ cpu->r[31] = 0x00000000u;
|
|
/* 02693F48 */ _t32 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02693F48 */ _t33 = _t32 & 0x00000001u;
|
|
/* 02693F48 */ if (_t33) goto L_02693F4C; else goto L_02693F54;
|
|
L_02693F4C: ; // 0x2693f4c
|
|
/* 02693F4C */ _t34 = cpu->r[29] + 0x00000098u;
|
|
/* 02693F4C */ cpu->r[11] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02693F50 */ cpu->r[31] = cpu->r[11] + cpu->r[27];
|
|
L_02693F54: ; // 0x2693f54
|
|
/* 02693F54 */ cpu->r[5] = 0x00000004u;
|
|
/* 02693F58 */ cpu->r[4] = 0x00000000u;
|
|
/* 02693F5C */ cpu->r[3] = 0x00000340u;
|
|
/* 02693F60 */ Gambit_fn_02801ADC(cpu);
|
|
/* 02693F64 */ cpu->r[12] = cpu->r[3];
|
|
/* 02693F64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02693F68 */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02693F68 */ _t36 = _t35 & 0x00000001u;
|
|
/* 02693F68 */ if (_t36) goto L_02693FA8; else goto L_02693F6C;
|
|
L_02693F6C: ; // 0x2693f6c
|
|
/* 02693F6C */ cpu->r[0] = 0x00000007u;
|
|
/* 02693F70 */ cpu->r[9] = 0x00000000u;
|
|
/* 02693F74 */ cpu->r[11] = cpu->r[12] + 0x00000064u;
|
|
/* 02693F78 */ cpu->ctr = cpu->r[0];
|
|
/* 02693F7C */ _t37 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02693F7C */ rbrew_write32(cpu->mem, _t37, cpu->r[12]);
|
|
L_02693F80: ; // 0x2693f80
|
|
/* 02693F80 */ _t38 = cpu->r[12] + cpu->r[9];
|
|
/* 02693F80 */ rbrew_write32(cpu->mem, _t38, cpu->r[11]);
|
|
/* 02693F84 */ cpu->r[9] = cpu->r[9] + 0x00000064u;
|
|
/* 02693F88 */ cpu->r[11] = cpu->r[11] + 0x00000064u;
|
|
/* 02693F8C */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02693F8C */ _t39 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02693F8C */ _t40 = _t39 >> (0x00000002u & 31u);
|
|
/* 02693F8C */ _t41 = _t40 & 0x00000001u;
|
|
/* 02693F8C */ if (_t41) goto L_02693F80; else goto L_02693F90;
|
|
L_02693F90: ; // 0x2693f90
|
|
/* 02693F90 */ _t42 = cpu->r[12] + 0x000002BCu;
|
|
/* 02693F90 */ rbrew_write32(cpu->mem, _t42, cpu->r[28]);
|
|
/* 02693F94 */ cpu->r[5] = cpu->r[12] + 0x00000320u;
|
|
/* 02693F98 */ cpu->r[3] = cpu->r[31];
|
|
/* 02693F9C */ cpu->r[4] = 0x00000008u;
|
|
/* 02693FA0 */ _t43 = cpu->r[31] + 0x00000010u;
|
|
/* 02693FA0 */ rbrew_write32(cpu->mem, _t43, cpu->r[12]);
|
|
/* 02693FA4 */ Gambit_fn_028023A8(cpu);
|
|
L_02693FA8: ; // 0x2693fa8
|
|
/* 02693FA8 */ _t44 = cpu->r[29] + 0x00000094u;
|
|
/* 02693FA8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t44);
|
|
/* 02693FAC */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02693FB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[5]);
|
|
/* 02693FB4 */ cpu->r[27] = cpu->r[27] + 0x00000014u;
|
|
/* 02693FB8 */ _t45 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02693FB8 */ _t46 = _t45 & 0x00000001u;
|
|
/* 02693FB8 */ if (_t46) goto L_02693F40; else goto L_02693FBC;
|
|
L_02693FBC: ; // 0x2693fbc
|
|
/* 02693FBC */ _t47 = cpu->r[29] + 0x00000008u;
|
|
/* 02693FBC */ cpu->r[6] = rbrew_read32(cpu->mem, _t47);
|
|
/* 02693FC0 */ _t48 = cpu->r[29] + 0x00000004u;
|
|
/* 02693FC0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t48);
|
|
/* 02693FC4 */ _t49 = cpu->r[6] + 0x00000024u;
|
|
/* 02693FC4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t49);
|
|
/* 02693FC8 */ _t50 = cpu->r[29] + 0x000000A0u;
|
|
/* 02693FC8 */ rbrew_write32(cpu->mem, _t50, cpu->r[0]);
|
|
/* 02693FCC */ _t51 = cpu->r[12] + 0x0000001Cu;
|
|
/* 02693FCC */ cpu->r[0] = rbrew_read32(cpu->mem, _t51);
|
|
/* 02693FD0 */ cpu->ctr = cpu->r[0];
|
|
/* 02693FD4 */ cpu->r[3] = cpu->r[29];
|
|
/* 02693FD8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02693FDC */ /* nop */
|
|
/* 02693FE0 */ _t52 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02693FE0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t52);
|
|
/* 02693FE4 */ cpu->lr = cpu->r[0];
|
|
/* 02693FE8 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 02693FEC */ return;
|
|
}
|
|
|
|
// fn_02693FF0 @ 0x2693ff0
|
|
void Gambit_fn_02693FF0(CPUState* cpu) {
|
|
uint32_t _t0, _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_02693FF0: ; // 0x2693ff0
|
|
/* 02693FF0 */ cpu->r[0] = cpu->lr;
|
|
/* 02693FF4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02693FF4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02693FF4 */ cpu->r[1] = _t0;
|
|
/* 02693FF8 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02693FF8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02693FFC */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02693FFC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02694000 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02694000 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02694004 */ _t4 = cpu->r[3] + 0x00000094u;
|
|
/* 02694004 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02694008 */ cpu->r[30] = 0x00000000u;
|
|
/* 0269400C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[9]);
|
|
/* 02694010 */ _t5 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02694010 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02694010 */ if (_t6) goto L_02694014; else goto L_02694088;
|
|
L_02694014: ; // 0x2694014
|
|
/* 02694014 */ cpu->r[31] = 0x00000000u;
|
|
/* 02694018 */ cpu->r[5] = cpu->r[31];
|
|
L_0269401C: ; // 0x269401c
|
|
/* 0269401C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[9]);
|
|
/* 02694020 */ cpu->r[4] = 0x00000000u;
|
|
/* 02694024 */ _t7 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02694024 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02694024 */ if (_t8) goto L_02694028; else goto L_02694030;
|
|
L_02694028: ; // 0x2694028
|
|
/* 02694028 */ _t9 = cpu->r[3] + 0x00000098u;
|
|
/* 02694028 */ cpu->r[10] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269402C */ cpu->r[4] = cpu->r[10] + cpu->r[31];
|
|
L_02694030: ; // 0x2694030
|
|
/* 02694030 */ _t10 = cpu->r[4] + 0x00000000u;
|
|
/* 02694030 */ cpu->r[11] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02694034 */ cpu->r[6] = 0x00000000u;
|
|
/* 02694038 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], cpu->r[11]);
|
|
/* 0269403C */ _t11 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269403C */ _t12 = _t11 & 0x00000001u;
|
|
/* 0269403C */ if (_t12) goto L_02694040; else goto L_02694070;
|
|
L_02694040: ; // 0x2694040
|
|
/* 02694040 */ _t13 = cpu->r[4] + 0x0000000Cu;
|
|
/* 02694040 */ cpu->r[7] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02694044 */ cpu->r[11] = 0x00000000u;
|
|
L_02694048: ; // 0x2694048
|
|
/* 02694048 */ _t14 = cpu->r[4] + 0x00000008u;
|
|
/* 02694048 */ cpu->r[12] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0269404C */ _t15 = cpu->r[12] + cpu->r[11];
|
|
/* 0269404C */ cpu->r[8] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02694050 */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 02694054 */ _t16 = cpu->r[8] + 0x00000000u;
|
|
/* 02694054 */ rbrew_write32(cpu->mem, _t16, cpu->r[7]);
|
|
/* 02694058 */ _t17 = cpu->r[4] + 0x00000000u;
|
|
/* 02694058 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0269405C */ cpu->r[7] = cpu->r[8];
|
|
/* 02694060 */ cpu->r[11] = cpu->r[11] + 0x00000004u;
|
|
/* 02694064 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], cpu->r[0]);
|
|
/* 02694068 */ _t18 = cpu->r[4] + 0x0000000Cu;
|
|
/* 02694068 */ rbrew_write32(cpu->mem, _t18, cpu->r[7]);
|
|
/* 0269406C */ _t19 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269406C */ _t20 = _t19 & 0x00000001u;
|
|
/* 0269406C */ if (_t20) goto L_02694048; else goto L_02694070;
|
|
L_02694070: ; // 0x2694070
|
|
/* 02694070 */ _t21 = cpu->r[4] + 0x00000000u;
|
|
/* 02694070 */ rbrew_write32(cpu->mem, _t21, cpu->r[5]);
|
|
/* 02694074 */ _t22 = cpu->r[3] + 0x00000094u;
|
|
/* 02694074 */ cpu->r[9] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02694078 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 0269407C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[9]);
|
|
/* 02694080 */ cpu->r[31] = cpu->r[31] + 0x00000014u;
|
|
/* 02694084 */ _t23 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02694084 */ _t24 = _t23 & 0x00000001u;
|
|
/* 02694084 */ if (_t24) goto L_0269401C; else goto L_02694088;
|
|
L_02694088: ; // 0x2694088
|
|
/* 02694088 */ cpu->r[3] = cpu->r[3] + 0x00000010u;
|
|
/* 0269408C */ Gambit_fn_02698D18(cpu);
|
|
/* 02694090 */ _t25 = cpu->r[1] + 0x00000014u;
|
|
/* 02694090 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02694094 */ _t26 = cpu->r[1] + 0x00000008u;
|
|
/* 02694094 */ cpu->r[30] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02694098 */ cpu->lr = cpu->r[0];
|
|
/* 0269409C */ _t27 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269409C */ cpu->r[31] = rbrew_read32(cpu->mem, _t27);
|
|
/* 026940A0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 026940A4 */ return;
|
|
}
|
|
|
|
// fn_02693FF4 @ 0x2693ff4
|
|
void Gambit_fn_02693FF4(CPUState* cpu) {
|
|
uint32_t _t0, _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_02693FF4: ; // 0x2693ff4
|
|
/* 02693FF4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02693FF4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02693FF4 */ cpu->r[1] = _t0;
|
|
/* 02693FF8 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02693FF8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02693FFC */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02693FFC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02694000 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02694000 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02694004 */ _t4 = cpu->r[3] + 0x00000094u;
|
|
/* 02694004 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02694008 */ cpu->r[30] = 0x00000000u;
|
|
/* 0269400C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[9]);
|
|
/* 02694010 */ _t5 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02694010 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02694010 */ if (_t6) goto L_02694014; else goto L_02694088;
|
|
L_02694014: ; // 0x2694014
|
|
/* 02694014 */ cpu->r[31] = 0x00000000u;
|
|
/* 02694018 */ cpu->r[5] = cpu->r[31];
|
|
L_0269401C: ; // 0x269401c
|
|
/* 0269401C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[9]);
|
|
/* 02694020 */ cpu->r[4] = 0x00000000u;
|
|
/* 02694024 */ _t7 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02694024 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02694024 */ if (_t8) goto L_02694028; else goto L_02694030;
|
|
L_02694028: ; // 0x2694028
|
|
/* 02694028 */ _t9 = cpu->r[3] + 0x00000098u;
|
|
/* 02694028 */ cpu->r[10] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269402C */ cpu->r[4] = cpu->r[10] + cpu->r[31];
|
|
L_02694030: ; // 0x2694030
|
|
/* 02694030 */ _t10 = cpu->r[4] + 0x00000000u;
|
|
/* 02694030 */ cpu->r[11] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02694034 */ cpu->r[6] = 0x00000000u;
|
|
/* 02694038 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], cpu->r[11]);
|
|
/* 0269403C */ _t11 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269403C */ _t12 = _t11 & 0x00000001u;
|
|
/* 0269403C */ if (_t12) goto L_02694040; else goto L_02694070;
|
|
L_02694040: ; // 0x2694040
|
|
/* 02694040 */ _t13 = cpu->r[4] + 0x0000000Cu;
|
|
/* 02694040 */ cpu->r[7] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02694044 */ cpu->r[11] = 0x00000000u;
|
|
L_02694048: ; // 0x2694048
|
|
/* 02694048 */ _t14 = cpu->r[4] + 0x00000008u;
|
|
/* 02694048 */ cpu->r[12] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0269404C */ _t15 = cpu->r[12] + cpu->r[11];
|
|
/* 0269404C */ cpu->r[8] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02694050 */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 02694054 */ _t16 = cpu->r[8] + 0x00000000u;
|
|
/* 02694054 */ rbrew_write32(cpu->mem, _t16, cpu->r[7]);
|
|
/* 02694058 */ _t17 = cpu->r[4] + 0x00000000u;
|
|
/* 02694058 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0269405C */ cpu->r[7] = cpu->r[8];
|
|
/* 02694060 */ cpu->r[11] = cpu->r[11] + 0x00000004u;
|
|
/* 02694064 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], cpu->r[0]);
|
|
/* 02694068 */ _t18 = cpu->r[4] + 0x0000000Cu;
|
|
/* 02694068 */ rbrew_write32(cpu->mem, _t18, cpu->r[7]);
|
|
/* 0269406C */ _t19 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269406C */ _t20 = _t19 & 0x00000001u;
|
|
/* 0269406C */ if (_t20) goto L_02694048; else goto L_02694070;
|
|
L_02694070: ; // 0x2694070
|
|
/* 02694070 */ _t21 = cpu->r[4] + 0x00000000u;
|
|
/* 02694070 */ rbrew_write32(cpu->mem, _t21, cpu->r[5]);
|
|
/* 02694074 */ _t22 = cpu->r[3] + 0x00000094u;
|
|
/* 02694074 */ cpu->r[9] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02694078 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 0269407C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[9]);
|
|
/* 02694080 */ cpu->r[31] = cpu->r[31] + 0x00000014u;
|
|
/* 02694084 */ _t23 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02694084 */ _t24 = _t23 & 0x00000001u;
|
|
/* 02694084 */ if (_t24) goto L_0269401C; else goto L_02694088;
|
|
L_02694088: ; // 0x2694088
|
|
/* 02694088 */ cpu->r[3] = cpu->r[3] + 0x00000010u;
|
|
/* 0269408C */ Gambit_fn_02698D18(cpu);
|
|
/* 02694090 */ _t25 = cpu->r[1] + 0x00000014u;
|
|
/* 02694090 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02694094 */ _t26 = cpu->r[1] + 0x00000008u;
|
|
/* 02694094 */ cpu->r[30] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02694098 */ cpu->lr = cpu->r[0];
|
|
/* 0269409C */ _t27 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269409C */ cpu->r[31] = rbrew_read32(cpu->mem, _t27);
|
|
/* 026940A0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 026940A4 */ return;
|
|
}
|
|
|
|
// fn_026940A8 @ 0x26940a8
|
|
void Gambit_fn_026940A8(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_026940A8: ; // 0x26940a8
|
|
/* 026940A8 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 026940A8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 026940AC */ _t1 = cpu->r[12] + 0x0000001Cu;
|
|
/* 026940AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 026940B0 */ cpu->ctr = cpu->r[0];
|
|
/* 026940B4 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_026940B8 @ 0x26940b8
|
|
void Gambit_fn_026940B8(CPUState* cpu) {
|
|
uint32_t _t0, _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;
|
|
|
|
L_026940B8: ; // 0x26940b8
|
|
/* 026940B8 */ cpu->r[0] = cpu->lr;
|
|
/* 026940BC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 026940BC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 026940BC */ cpu->r[1] = _t0;
|
|
/* 026940C0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026940C0 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 026940C4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 026940C4 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 026940C8 */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 026940C8 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 026940CC */ cpu->r[31] = cpu->r[3];
|
|
/* 026940D0 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 026940D0 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 026940D4 */ _t5 = cpu->r[31] + 0x000000A5u;
|
|
/* 026940D4 */ cpu->r[6] = rbrew_read8(cpu->mem, _t5);
|
|
/* 026940D8 */ _t6 = cpu->r[31] + 0x00000008u;
|
|
/* 026940D8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t6);
|
|
/* 026940DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 026940E0 */ _t7 = cpu->r[8] + 0x00000748u;
|
|
/* 026940E0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 026940E4 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026940E4 */ _t9 = _t8 & 0x00000001u;
|
|
/* 026940E4 */ if (_t9) goto L_0269435C; else goto L_026940E8;
|
|
L_026940E8: ; // 0x26940e8
|
|
/* 026940E8 */ _t10 = cpu->r[31] + 0x0000009Cu;
|
|
/* 026940E8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t10);
|
|
/* 026940EC */ _t11 = cpu->r[31] + 0x00000094u;
|
|
/* 026940EC */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 026940F0 */ cpu->r[7] = cpu->r[8] + 0x00000001u;
|
|
/* 026940F4 */ cpu->r[6] = (uint32_t)((int32_t)cpu->r[7] / (int32_t)cpu->r[10]);
|
|
/* 026940F8 */ cpu->r[6] = (uint32_t)((int32_t)cpu->r[6] * (int32_t)cpu->r[10]);
|
|
/* 026940FC */ cpu->r[12] = 0x00000000u;
|
|
/* 02694100 */ cpu->r[0] = cpu->r[7] - cpu->r[6];
|
|
/* 02694104 */ cpu->r[6] = cpu->r[12];
|
|
/* 02694108 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[10]);
|
|
/* 0269410C */ _t12 = cpu->r[31] + 0x0000009Cu;
|
|
/* 0269410C */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 02694110 */ _t13 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02694110 */ _t14 = _t13 & 0x00000001u;
|
|
/* 02694110 */ if (_t14) goto L_02694114; else goto L_02694120;
|
|
L_02694114: ; // 0x2694114
|
|
/* 02694114 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x00000014u);
|
|
/* 02694118 */ _t15 = cpu->r[31] + 0x00000098u;
|
|
/* 02694118 */ cpu->r[11] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0269411C */ cpu->r[6] = cpu->r[11] + cpu->r[0];
|
|
L_02694120: ; // 0x2694120
|
|
/* 02694120 */ _t16 = cpu->r[6] + 0x00000000u;
|
|
/* 02694120 */ cpu->r[5] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02694124 */ cpu->r[8] = 0x00000000u;
|
|
/* 02694128 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], cpu->r[5]);
|
|
/* 0269412C */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269412C */ _t18 = _t17 & 0x00000001u;
|
|
/* 0269412C */ if (_t18) goto L_02694130; else goto L_02694160;
|
|
L_02694130: ; // 0x2694130
|
|
/* 02694130 */ _t19 = cpu->r[6] + 0x0000000Cu;
|
|
/* 02694130 */ cpu->r[5] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02694134 */ cpu->r[11] = 0x00000000u;
|
|
L_02694138: ; // 0x2694138
|
|
/* 02694138 */ _t20 = cpu->r[6] + 0x00000008u;
|
|
/* 02694138 */ cpu->r[7] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0269413C */ _t21 = cpu->r[7] + cpu->r[11];
|
|
/* 0269413C */ cpu->r[10] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02694140 */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 02694144 */ _t22 = cpu->r[10] + 0x00000000u;
|
|
/* 02694144 */ rbrew_write32(cpu->mem, _t22, cpu->r[5]);
|
|
/* 02694148 */ _t23 = cpu->r[6] + 0x00000000u;
|
|
/* 02694148 */ cpu->r[9] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0269414C */ cpu->r[5] = cpu->r[10];
|
|
/* 02694150 */ cpu->r[11] = cpu->r[11] + 0x00000004u;
|
|
/* 02694154 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], cpu->r[9]);
|
|
/* 02694158 */ _t24 = cpu->r[6] + 0x0000000Cu;
|
|
/* 02694158 */ rbrew_write32(cpu->mem, _t24, cpu->r[5]);
|
|
/* 0269415C */ _t25 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269415C */ _t26 = _t25 & 0x00000001u;
|
|
/* 0269415C */ if (_t26) goto L_02694138; else goto L_02694160;
|
|
L_02694160: ; // 0x2694160
|
|
/* 02694160 */ cpu->r[29] = 0x00000000u;
|
|
/* 02694164 */ cpu->r[8] = cpu->r[29];
|
|
/* 02694168 */ _t27 = cpu->r[6] + 0x00000000u;
|
|
/* 02694168 */ rbrew_write32(cpu->mem, _t27, cpu->r[12]);
|
|
/* 0269416C */ cpu->r[30] = cpu->r[29];
|
|
/* 02694170 */ goto L_02694314;
|
|
L_02694174: ; // 0x2694174
|
|
/* 02694174 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[6]);
|
|
/* 02694178 */ cpu->r[5] = 0x00000000u;
|
|
/* 0269417C */ _t28 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269417C */ _t29 = _t28 & 0x00000001u;
|
|
/* 0269417C */ if (_t29) goto L_02694180; else goto L_0269418C;
|
|
L_02694180: ; // 0x2694180
|
|
/* 02694180 */ cpu->r[11] = (uint32_t)((int32_t)cpu->r[10] * (int32_t)0x00000014u);
|
|
/* 02694184 */ _t30 = cpu->r[31] + 0x00000098u;
|
|
/* 02694184 */ cpu->r[4] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02694188 */ cpu->r[5] = cpu->r[4] + cpu->r[11];
|
|
L_0269418C: ; // 0x269418c
|
|
/* 0269418C */ _t31 = cpu->r[5] + 0x00000000u;
|
|
/* 0269418C */ cpu->r[7] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02694190 */ _t32 = cpu->r[5] + 0x00000004u;
|
|
/* 02694190 */ cpu->r[9] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02694194 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], cpu->r[9]);
|
|
/* 02694198 */ _t33 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02694198 */ _t34 = _t33 & 0x00000001u;
|
|
/* 02694198 */ if (_t34) goto L_026941B0; else goto L_0269419C;
|
|
L_0269419C: ; // 0x269419c
|
|
/* 0269419C */ cpu->r[11] = 0x00000000u;
|
|
/* 026941A0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[6]);
|
|
/* 026941A4 */ cpu->r[9] = cpu->r[11];
|
|
/* 026941A8 */ _t35 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026941A8 */ _t36 = _t35 & 0x00000001u;
|
|
/* 026941A8 */ if (_t36) goto L_026941AC; else goto L_0269422C;
|
|
L_026941AC: ; // 0x26941ac
|
|
/* 026941AC */ goto L_02694220;
|
|
L_026941B0: ; // 0x26941b0
|
|
/* 026941B0 */ _t37 = cpu->r[5] + 0x0000000Cu;
|
|
/* 026941B0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t37);
|
|
/* 026941B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 026941B8 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026941B8 */ _t39 = _t38 & 0x00000001u;
|
|
/* 026941B8 */ if (_t39) goto L_026941C4; else goto L_026941BC;
|
|
L_026941BC: ; // 0x26941bc
|
|
/* 026941BC */ _t40 = cpu->r[11] + 0x00000000u;
|
|
/* 026941BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t40);
|
|
/* 026941C0 */ _t41 = cpu->r[5] + 0x0000000Cu;
|
|
/* 026941C0 */ rbrew_write32(cpu->mem, _t41, cpu->r[0]);
|
|
L_026941C4: ; // 0x26941c4
|
|
/* 026941C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 026941C8 */ _t42 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026941C8 */ _t43 = _t42 & 0x00000001u;
|
|
/* 026941C8 */ if (_t43) goto L_026941D0; else goto L_026941CC;
|
|
L_026941CC: ; // 0x26941cc
|
|
/* 026941CC */ _t44 = cpu->r[11] + 0x00000060u;
|
|
/* 026941CC */ rbrew_write32(cpu->mem, _t44, cpu->r[8]);
|
|
L_026941D0: ; // 0x26941d0
|
|
/* 026941D0 */ _t45 = cpu->r[5] + 0x00000000u;
|
|
/* 026941D0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t45);
|
|
/* 026941D4 */ _t46 = cpu->r[5] + 0x00000004u;
|
|
/* 026941D4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t46);
|
|
/* 026941D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], cpu->r[4]);
|
|
/* 026941DC */ _t47 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026941DC */ _t48 = _t47 & 0x00000001u;
|
|
/* 026941DC */ if (_t48) goto L_026941E0; else goto L_026941F8;
|
|
L_026941E0: ; // 0x26941e0
|
|
/* 026941E0 */ _t49 = cpu->r[5] + 0x00000008u;
|
|
/* 026941E0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t49);
|
|
/* 026941E4 */ cpu->r[6] = rbrew_rlwinm(cpu->r[9], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 026941E8 */ _t50 = cpu->r[6] + cpu->r[7];
|
|
/* 026941E8 */ rbrew_write32(cpu->mem, _t50, cpu->r[11]);
|
|
/* 026941EC */ _t51 = cpu->r[5] + 0x00000000u;
|
|
/* 026941EC */ cpu->r[9] = rbrew_read32(cpu->mem, _t51);
|
|
/* 026941F0 */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 026941F4 */ _t52 = cpu->r[5] + 0x00000000u;
|
|
/* 026941F4 */ rbrew_write32(cpu->mem, _t52, cpu->r[9]);
|
|
L_026941F8: ; // 0x26941f8
|
|
/* 026941F8 */ _t53 = cpu->r[31] + 0x0000009Cu;
|
|
/* 026941F8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t53);
|
|
/* 026941FC */ _t54 = cpu->r[31] + 0x00000094u;
|
|
/* 026941FC */ cpu->r[6] = rbrew_read32(cpu->mem, _t54);
|
|
/* 02694200 */ cpu->r[9] = cpu->r[10] + cpu->r[6];
|
|
/* 02694204 */ cpu->r[0] = cpu->r[9] + 0xFFFFFFFFu;
|
|
/* 02694208 */ cpu->r[10] = (uint32_t)((int32_t)cpu->r[0] / (int32_t)cpu->r[6]);
|
|
/* 0269420C */ cpu->r[10] = (uint32_t)((int32_t)cpu->r[10] * (int32_t)cpu->r[6]);
|
|
/* 02694210 */ cpu->r[0] = cpu->r[0] - cpu->r[10];
|
|
/* 02694214 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[6]);
|
|
/* 02694218 */ cpu->r[9] = 0x00000000u;
|
|
/* 0269421C */ _t55 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269421C */ _t56 = _t55 & 0x00000001u;
|
|
/* 0269421C */ if (_t56) goto L_02694220; else goto L_0269422C;
|
|
L_02694220: ; // 0x2694220
|
|
/* 02694220 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x00000014u);
|
|
/* 02694224 */ _t57 = cpu->r[31] + 0x00000098u;
|
|
/* 02694224 */ cpu->r[4] = rbrew_read32(cpu->mem, _t57);
|
|
/* 02694228 */ cpu->r[9] = cpu->r[4] + cpu->r[0];
|
|
L_0269422C: ; // 0x269422c
|
|
/* 0269422C */ _t58 = cpu->r[9] + 0x00000000u;
|
|
/* 0269422C */ cpu->r[0] = rbrew_read32(cpu->mem, _t58);
|
|
/* 02694230 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[0]);
|
|
/* 02694234 */ cpu->r[10] = 0x00000000u;
|
|
/* 02694238 */ _t59 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02694238 */ _t60 = _t59 & 0x00000001u;
|
|
/* 02694238 */ if (_t60) goto L_0269423C; else goto L_02694244;
|
|
L_0269423C: ; // 0x269423c
|
|
/* 0269423C */ _t61 = cpu->r[9] + 0x00000008u;
|
|
/* 0269423C */ cpu->r[7] = rbrew_read32(cpu->mem, _t61);
|
|
/* 02694240 */ _t62 = cpu->r[7] + cpu->r[30];
|
|
/* 02694240 */ cpu->r[10] = rbrew_read32(cpu->mem, _t62);
|
|
L_02694244: ; // 0x2694244
|
|
/* 02694244 */ _t63 = cpu->r[10] + 0x00000000u;
|
|
/* 02694244 */ cpu->r[0] = rbrew_read32(cpu->mem, _t63);
|
|
/* 02694248 */ _t64 = cpu->r[11] + 0x00000000u;
|
|
/* 02694248 */ rbrew_write32(cpu->mem, _t64, cpu->r[0]);
|
|
/* 0269424C */ _t65 = cpu->r[10] + 0x00000004u;
|
|
/* 0269424C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t65);
|
|
/* 02694250 */ _t66 = cpu->r[11] + 0x00000004u;
|
|
/* 02694250 */ rbrew_write_f32(cpu->mem, _t66, cpu->f[0]);
|
|
/* 02694254 */ _t67 = cpu->r[10] + 0x00000008u;
|
|
/* 02694254 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t67);
|
|
/* 02694258 */ _t68 = cpu->r[11] + 0x00000008u;
|
|
/* 02694258 */ rbrew_write_f32(cpu->mem, _t68, cpu->f[6]);
|
|
/* 0269425C */ _t69 = cpu->r[10] + 0x0000000Cu;
|
|
/* 0269425C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t69);
|
|
/* 02694260 */ _t70 = cpu->r[11] + 0x0000000Cu;
|
|
/* 02694260 */ rbrew_write_f32(cpu->mem, _t70, cpu->f[7]);
|
|
/* 02694264 */ _t71 = cpu->r[10] + 0x00000010u;
|
|
/* 02694264 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t71);
|
|
/* 02694268 */ _t72 = cpu->r[11] + 0x00000010u;
|
|
/* 02694268 */ rbrew_write_f32(cpu->mem, _t72, cpu->f[8]);
|
|
/* 0269426C */ _t73 = cpu->r[10] + 0x00000014u;
|
|
/* 0269426C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t73);
|
|
/* 02694270 */ _t74 = cpu->r[11] + 0x00000014u;
|
|
/* 02694270 */ rbrew_write_f32(cpu->mem, _t74, cpu->f[9]);
|
|
/* 02694274 */ _t75 = cpu->r[10] + 0x00000018u;
|
|
/* 02694274 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t75);
|
|
/* 02694278 */ _t76 = cpu->r[11] + 0x00000018u;
|
|
/* 02694278 */ rbrew_write_f32(cpu->mem, _t76, cpu->f[10]);
|
|
/* 0269427C */ _t77 = cpu->r[10] + 0x0000001Cu;
|
|
/* 0269427C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t77);
|
|
/* 02694280 */ _t78 = cpu->r[11] + 0x0000001Cu;
|
|
/* 02694280 */ rbrew_write_f32(cpu->mem, _t78, cpu->f[11]);
|
|
/* 02694284 */ _t79 = cpu->r[10] + 0x00000020u;
|
|
/* 02694284 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t79);
|
|
/* 02694288 */ _t80 = cpu->r[11] + 0x00000020u;
|
|
/* 02694288 */ rbrew_write_f32(cpu->mem, _t80, cpu->f[12]);
|
|
/* 0269428C */ _t81 = cpu->r[10] + 0x00000024u;
|
|
/* 0269428C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t81);
|
|
/* 02694290 */ _t82 = cpu->r[11] + 0x00000024u;
|
|
/* 02694290 */ rbrew_write_f32(cpu->mem, _t82, cpu->f[13]);
|
|
/* 02694294 */ _t83 = cpu->r[10] + 0x00000028u;
|
|
/* 02694294 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t83);
|
|
/* 02694298 */ _t84 = cpu->r[11] + 0x00000028u;
|
|
/* 02694298 */ rbrew_write_f32(cpu->mem, _t84, cpu->f[0]);
|
|
/* 0269429C */ _t85 = cpu->r[10] + 0x0000002Cu;
|
|
/* 0269429C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t85);
|
|
/* 026942A0 */ _t86 = cpu->r[11] + 0x0000002Cu;
|
|
/* 026942A0 */ rbrew_write_f32(cpu->mem, _t86, cpu->f[11]);
|
|
/* 026942A4 */ _t87 = cpu->r[10] + 0x00000030u;
|
|
/* 026942A4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t87);
|
|
/* 026942A8 */ _t88 = cpu->r[11] + 0x00000030u;
|
|
/* 026942A8 */ rbrew_write_f32(cpu->mem, _t88, cpu->f[12]);
|
|
/* 026942AC */ _t89 = cpu->r[10] + 0x00000034u;
|
|
/* 026942AC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t89);
|
|
/* 026942B0 */ _t90 = cpu->r[11] + 0x00000034u;
|
|
/* 026942B0 */ rbrew_write_f32(cpu->mem, _t90, cpu->f[13]);
|
|
/* 026942B4 */ _t91 = cpu->r[10] + 0x00000038u;
|
|
/* 026942B4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t91);
|
|
/* 026942B8 */ _t92 = cpu->r[11] + 0x00000038u;
|
|
/* 026942B8 */ rbrew_write_f32(cpu->mem, _t92, cpu->f[0]);
|
|
/* 026942BC */ _t93 = cpu->r[10] + 0x0000003Cu;
|
|
/* 026942BC */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t93);
|
|
/* 026942C0 */ _t94 = cpu->r[11] + 0x0000003Cu;
|
|
/* 026942C0 */ rbrew_write_f32(cpu->mem, _t94, cpu->f[6]);
|
|
/* 026942C4 */ _t95 = cpu->r[10] + 0x00000040u;
|
|
/* 026942C4 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t95);
|
|
/* 026942C8 */ _t96 = cpu->r[11] + 0x00000040u;
|
|
/* 026942C8 */ rbrew_write_f32(cpu->mem, _t96, cpu->f[7]);
|
|
/* 026942CC */ _t97 = cpu->r[10] + 0x00000044u;
|
|
/* 026942CC */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t97);
|
|
/* 026942D0 */ _t98 = cpu->r[11] + 0x00000044u;
|
|
/* 026942D0 */ rbrew_write_f32(cpu->mem, _t98, cpu->f[8]);
|
|
/* 026942D4 */ _t99 = cpu->r[10] + 0x00000048u;
|
|
/* 026942D4 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t99);
|
|
/* 026942D8 */ _t100 = cpu->r[11] + 0x00000048u;
|
|
/* 026942D8 */ rbrew_write_f32(cpu->mem, _t100, cpu->f[9]);
|
|
/* 026942DC */ _t101 = cpu->r[10] + 0x0000004Cu;
|
|
/* 026942DC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t101);
|
|
/* 026942E0 */ _t102 = cpu->r[11] + 0x0000004Cu;
|
|
/* 026942E0 */ rbrew_write_f32(cpu->mem, _t102, cpu->f[10]);
|
|
/* 026942E4 */ _t103 = cpu->r[10] + 0x00000050u;
|
|
/* 026942E4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t103);
|
|
/* 026942E8 */ _t104 = cpu->r[11] + 0x00000050u;
|
|
/* 026942E8 */ rbrew_write_f32(cpu->mem, _t104, cpu->f[11]);
|
|
/* 026942EC */ _t105 = cpu->r[10] + 0x00000054u;
|
|
/* 026942EC */ cpu->r[0] = rbrew_read8(cpu->mem, _t105);
|
|
/* 026942F0 */ _t106 = cpu->r[11] + 0x00000054u;
|
|
/* 026942F0 */ rbrew_write8(cpu->mem, _t106, (uint8_t)cpu->r[0]);
|
|
/* 026942F4 */ _t107 = cpu->r[10] + 0x00000058u;
|
|
/* 026942F4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t107);
|
|
/* 026942F8 */ _t108 = cpu->r[11] + 0x00000058u;
|
|
/* 026942F8 */ rbrew_write_f32(cpu->mem, _t108, cpu->f[12]);
|
|
/* 026942FC */ _t109 = cpu->r[10] + 0x0000005Cu;
|
|
/* 026942FC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t109);
|
|
/* 02694300 */ _t110 = cpu->r[11] + 0x0000005Cu;
|
|
/* 02694300 */ rbrew_write_f32(cpu->mem, _t110, cpu->f[13]);
|
|
/* 02694304 */ _t111 = cpu->r[10] + 0x00000060u;
|
|
/* 02694304 */ cpu->r[0] = rbrew_read32(cpu->mem, _t111);
|
|
/* 02694308 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 0269430C */ cpu->r[30] = cpu->r[30] + 0x00000004u;
|
|
/* 02694310 */ _t112 = cpu->r[11] + 0x00000060u;
|
|
/* 02694310 */ rbrew_write32(cpu->mem, _t112, cpu->r[0]);
|
|
L_02694314: ; // 0x2694314
|
|
/* 02694314 */ _t113 = cpu->r[31] + 0x0000009Cu;
|
|
/* 02694314 */ cpu->r[10] = rbrew_read32(cpu->mem, _t113);
|
|
/* 02694318 */ _t114 = cpu->r[31] + 0x00000094u;
|
|
/* 02694318 */ cpu->r[6] = rbrew_read32(cpu->mem, _t114);
|
|
/* 0269431C */ cpu->r[9] = cpu->r[10] + cpu->r[6];
|
|
/* 02694320 */ cpu->r[0] = cpu->r[9] + 0xFFFFFFFFu;
|
|
/* 02694324 */ cpu->r[9] = (uint32_t)((int32_t)cpu->r[0] / (int32_t)cpu->r[6]);
|
|
/* 02694328 */ cpu->r[9] = (uint32_t)((int32_t)cpu->r[9] * (int32_t)cpu->r[6]);
|
|
/* 0269432C */ cpu->r[0] = cpu->r[0] - cpu->r[9];
|
|
/* 02694330 */ cpu->r[5] = cpu->r[0];
|
|
/* 02694334 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[6]);
|
|
/* 02694338 */ cpu->r[4] = 0x00000000u;
|
|
/* 0269433C */ _t115 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269433C */ _t116 = _t115 & 0x00000001u;
|
|
/* 0269433C */ if (_t116) goto L_02694340; else goto L_0269434C;
|
|
L_02694340: ; // 0x2694340
|
|
/* 02694340 */ cpu->r[4] = (uint32_t)((int32_t)cpu->r[5] * (int32_t)0x00000014u);
|
|
/* 02694344 */ _t117 = cpu->r[31] + 0x00000098u;
|
|
/* 02694344 */ cpu->r[5] = rbrew_read32(cpu->mem, _t117);
|
|
/* 02694348 */ cpu->r[4] = cpu->r[5] + cpu->r[4];
|
|
L_0269434C: ; // 0x269434c
|
|
/* 0269434C */ _t118 = cpu->r[4] + 0x00000000u;
|
|
/* 0269434C */ cpu->r[7] = rbrew_read32(cpu->mem, _t118);
|
|
/* 02694350 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[7]);
|
|
/* 02694354 */ _t119 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02694354 */ _t120 = _t119 & 0x00000001u;
|
|
/* 02694354 */ if (_t120) goto L_02694174; else goto L_02694358;
|
|
L_02694358: ; // 0x2694358
|
|
/* 02694358 */ _t121 = cpu->r[31] + 0x000000A5u;
|
|
/* 02694358 */ rbrew_write8(cpu->mem, _t121, (uint8_t)cpu->r[12]);
|
|
L_0269435C: ; // 0x269435c
|
|
/* 0269435C */ cpu->r[12] = 0x101C0000u;
|
|
/* 02694360 */ _t122 = cpu->r[12] + 0x00006000u;
|
|
/* 02694360 */ cpu->r[12] = rbrew_read32(cpu->mem, _t122);
|
|
/* 02694364 */ _t123 = cpu->r[12] + 0x000002B0u;
|
|
/* 02694364 */ cpu->r[10] = rbrew_read32(cpu->mem, _t123);
|
|
/* 02694368 */ _t124 = cpu->r[31] + 0x000000A0u;
|
|
/* 02694368 */ cpu->r[8] = rbrew_read32(cpu->mem, _t124);
|
|
/* 0269436C */ _t125 = cpu->r[10] + 0x00000454u;
|
|
/* 0269436C */ cpu->r[6] = rbrew_read32(cpu->mem, _t125);
|
|
/* 02694370 */ _t126 = cpu->r[3] + 0x0000043Cu;
|
|
/* 02694370 */ cpu->r[11] = rbrew_read32(cpu->mem, _t126);
|
|
/* 02694374 */ cpu->r[4] = cpu->r[6] + cpu->r[8];
|
|
/* 02694378 */ cpu->r[0] = cpu->r[4] / cpu->r[11];
|
|
/* 0269437C */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)cpu->r[11]);
|
|
/* 02694380 */ cpu->r[0] = cpu->r[4] - cpu->r[0];
|
|
/* 02694384 */ cpu->r[5] = rbrew_clz32(cpu->r[0]);
|
|
/* 02694388 */ cpu->r[7] = rbrew_rlwinm(cpu->r[5], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 02694388 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0269438C */ _t127 = cpu->r[31] + 0x000000A4u;
|
|
/* 0269438C */ rbrew_write8(cpu->mem, _t127, (uint8_t)cpu->r[7]);
|
|
/* 02694390 */ _t128 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02694390 */ _t129 = _t128 & 0x00000001u;
|
|
/* 02694390 */ if (_t129) goto L_026943B8; else goto L_02694394;
|
|
L_02694394: ; // 0x2694394
|
|
/* 02694394 */ _t130 = cpu->r[31] + 0x00000008u;
|
|
/* 02694394 */ cpu->r[4] = rbrew_read32(cpu->mem, _t130);
|
|
/* 02694398 */ cpu->r[3] = cpu->r[31] + 0x00000010u;
|
|
/* 0269439C */ cpu->r[4] = cpu->r[4] + 0x000000B4u;
|
|
/* 026943A0 */ Gambit_fn_026993B8(cpu);
|
|
/* 026943A4 */ _t131 = cpu->r[31] + 0x00000008u;
|
|
/* 026943A4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t131);
|
|
/* 026943A8 */ Gambit_fn_02670D44(cpu);
|
|
/* 026943AC */ cpu->r[4] = cpu->r[3];
|
|
/* 026943B0 */ cpu->r[3] = cpu->r[31] + 0x00000010u;
|
|
/* 026943B4 */ Gambit_fn_026993DC(cpu);
|
|
L_026943B8: ; // 0x26943b8
|
|
/* 026943B8 */ _t132 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026943B8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t132);
|
|
/* 026943BC */ _t133 = cpu->r[1] + 0x0000001Cu;
|
|
/* 026943BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t133);
|
|
/* 026943C0 */ _t134 = cpu->r[1] + 0x00000010u;
|
|
/* 026943C0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t134);
|
|
/* 026943C4 */ cpu->lr = cpu->r[0];
|
|
/* 026943C8 */ _t135 = cpu->r[1] + 0x00000014u;
|
|
/* 026943C8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t135);
|
|
/* 026943CC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 026943D0 */ return;
|
|
}
|
|
|
|
// fn_026940BC @ 0x26940bc
|
|
void Gambit_fn_026940BC(CPUState* cpu) {
|
|
uint32_t _t0, _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;
|
|
|
|
L_026940BC: ; // 0x26940bc
|
|
/* 026940BC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 026940BC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 026940BC */ cpu->r[1] = _t0;
|
|
/* 026940C0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026940C0 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 026940C4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 026940C4 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 026940C8 */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 026940C8 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 026940CC */ cpu->r[31] = cpu->r[3];
|
|
/* 026940D0 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 026940D0 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 026940D4 */ _t5 = cpu->r[31] + 0x000000A5u;
|
|
/* 026940D4 */ cpu->r[6] = rbrew_read8(cpu->mem, _t5);
|
|
/* 026940D8 */ _t6 = cpu->r[31] + 0x00000008u;
|
|
/* 026940D8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t6);
|
|
/* 026940DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 026940E0 */ _t7 = cpu->r[8] + 0x00000748u;
|
|
/* 026940E0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 026940E4 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026940E4 */ _t9 = _t8 & 0x00000001u;
|
|
/* 026940E4 */ if (_t9) goto L_0269435C; else goto L_026940E8;
|
|
L_026940E8: ; // 0x26940e8
|
|
/* 026940E8 */ _t10 = cpu->r[31] + 0x0000009Cu;
|
|
/* 026940E8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t10);
|
|
/* 026940EC */ _t11 = cpu->r[31] + 0x00000094u;
|
|
/* 026940EC */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 026940F0 */ cpu->r[7] = cpu->r[8] + 0x00000001u;
|
|
/* 026940F4 */ cpu->r[6] = (uint32_t)((int32_t)cpu->r[7] / (int32_t)cpu->r[10]);
|
|
/* 026940F8 */ cpu->r[6] = (uint32_t)((int32_t)cpu->r[6] * (int32_t)cpu->r[10]);
|
|
/* 026940FC */ cpu->r[12] = 0x00000000u;
|
|
/* 02694100 */ cpu->r[0] = cpu->r[7] - cpu->r[6];
|
|
/* 02694104 */ cpu->r[6] = cpu->r[12];
|
|
/* 02694108 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[10]);
|
|
/* 0269410C */ _t12 = cpu->r[31] + 0x0000009Cu;
|
|
/* 0269410C */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 02694110 */ _t13 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02694110 */ _t14 = _t13 & 0x00000001u;
|
|
/* 02694110 */ if (_t14) goto L_02694114; else goto L_02694120;
|
|
L_02694114: ; // 0x2694114
|
|
/* 02694114 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x00000014u);
|
|
/* 02694118 */ _t15 = cpu->r[31] + 0x00000098u;
|
|
/* 02694118 */ cpu->r[11] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0269411C */ cpu->r[6] = cpu->r[11] + cpu->r[0];
|
|
L_02694120: ; // 0x2694120
|
|
/* 02694120 */ _t16 = cpu->r[6] + 0x00000000u;
|
|
/* 02694120 */ cpu->r[5] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02694124 */ cpu->r[8] = 0x00000000u;
|
|
/* 02694128 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], cpu->r[5]);
|
|
/* 0269412C */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269412C */ _t18 = _t17 & 0x00000001u;
|
|
/* 0269412C */ if (_t18) goto L_02694130; else goto L_02694160;
|
|
L_02694130: ; // 0x2694130
|
|
/* 02694130 */ _t19 = cpu->r[6] + 0x0000000Cu;
|
|
/* 02694130 */ cpu->r[5] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02694134 */ cpu->r[11] = 0x00000000u;
|
|
L_02694138: ; // 0x2694138
|
|
/* 02694138 */ _t20 = cpu->r[6] + 0x00000008u;
|
|
/* 02694138 */ cpu->r[7] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0269413C */ _t21 = cpu->r[7] + cpu->r[11];
|
|
/* 0269413C */ cpu->r[10] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02694140 */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 02694144 */ _t22 = cpu->r[10] + 0x00000000u;
|
|
/* 02694144 */ rbrew_write32(cpu->mem, _t22, cpu->r[5]);
|
|
/* 02694148 */ _t23 = cpu->r[6] + 0x00000000u;
|
|
/* 02694148 */ cpu->r[9] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0269414C */ cpu->r[5] = cpu->r[10];
|
|
/* 02694150 */ cpu->r[11] = cpu->r[11] + 0x00000004u;
|
|
/* 02694154 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], cpu->r[9]);
|
|
/* 02694158 */ _t24 = cpu->r[6] + 0x0000000Cu;
|
|
/* 02694158 */ rbrew_write32(cpu->mem, _t24, cpu->r[5]);
|
|
/* 0269415C */ _t25 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269415C */ _t26 = _t25 & 0x00000001u;
|
|
/* 0269415C */ if (_t26) goto L_02694138; else goto L_02694160;
|
|
L_02694160: ; // 0x2694160
|
|
/* 02694160 */ cpu->r[29] = 0x00000000u;
|
|
/* 02694164 */ cpu->r[8] = cpu->r[29];
|
|
/* 02694168 */ _t27 = cpu->r[6] + 0x00000000u;
|
|
/* 02694168 */ rbrew_write32(cpu->mem, _t27, cpu->r[12]);
|
|
/* 0269416C */ cpu->r[30] = cpu->r[29];
|
|
/* 02694170 */ goto L_02694314;
|
|
L_02694174: ; // 0x2694174
|
|
/* 02694174 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[6]);
|
|
/* 02694178 */ cpu->r[5] = 0x00000000u;
|
|
/* 0269417C */ _t28 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269417C */ _t29 = _t28 & 0x00000001u;
|
|
/* 0269417C */ if (_t29) goto L_02694180; else goto L_0269418C;
|
|
L_02694180: ; // 0x2694180
|
|
/* 02694180 */ cpu->r[11] = (uint32_t)((int32_t)cpu->r[10] * (int32_t)0x00000014u);
|
|
/* 02694184 */ _t30 = cpu->r[31] + 0x00000098u;
|
|
/* 02694184 */ cpu->r[4] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02694188 */ cpu->r[5] = cpu->r[4] + cpu->r[11];
|
|
L_0269418C: ; // 0x269418c
|
|
/* 0269418C */ _t31 = cpu->r[5] + 0x00000000u;
|
|
/* 0269418C */ cpu->r[7] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02694190 */ _t32 = cpu->r[5] + 0x00000004u;
|
|
/* 02694190 */ cpu->r[9] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02694194 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], cpu->r[9]);
|
|
/* 02694198 */ _t33 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02694198 */ _t34 = _t33 & 0x00000001u;
|
|
/* 02694198 */ if (_t34) goto L_026941B0; else goto L_0269419C;
|
|
L_0269419C: ; // 0x269419c
|
|
/* 0269419C */ cpu->r[11] = 0x00000000u;
|
|
/* 026941A0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[6]);
|
|
/* 026941A4 */ cpu->r[9] = cpu->r[11];
|
|
/* 026941A8 */ _t35 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026941A8 */ _t36 = _t35 & 0x00000001u;
|
|
/* 026941A8 */ if (_t36) goto L_026941AC; else goto L_0269422C;
|
|
L_026941AC: ; // 0x26941ac
|
|
/* 026941AC */ goto L_02694220;
|
|
L_026941B0: ; // 0x26941b0
|
|
/* 026941B0 */ _t37 = cpu->r[5] + 0x0000000Cu;
|
|
/* 026941B0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t37);
|
|
/* 026941B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 026941B8 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026941B8 */ _t39 = _t38 & 0x00000001u;
|
|
/* 026941B8 */ if (_t39) goto L_026941C4; else goto L_026941BC;
|
|
L_026941BC: ; // 0x26941bc
|
|
/* 026941BC */ _t40 = cpu->r[11] + 0x00000000u;
|
|
/* 026941BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t40);
|
|
/* 026941C0 */ _t41 = cpu->r[5] + 0x0000000Cu;
|
|
/* 026941C0 */ rbrew_write32(cpu->mem, _t41, cpu->r[0]);
|
|
L_026941C4: ; // 0x26941c4
|
|
/* 026941C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 026941C8 */ _t42 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026941C8 */ _t43 = _t42 & 0x00000001u;
|
|
/* 026941C8 */ if (_t43) goto L_026941D0; else goto L_026941CC;
|
|
L_026941CC: ; // 0x26941cc
|
|
/* 026941CC */ _t44 = cpu->r[11] + 0x00000060u;
|
|
/* 026941CC */ rbrew_write32(cpu->mem, _t44, cpu->r[8]);
|
|
L_026941D0: ; // 0x26941d0
|
|
/* 026941D0 */ _t45 = cpu->r[5] + 0x00000000u;
|
|
/* 026941D0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t45);
|
|
/* 026941D4 */ _t46 = cpu->r[5] + 0x00000004u;
|
|
/* 026941D4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t46);
|
|
/* 026941D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], cpu->r[4]);
|
|
/* 026941DC */ _t47 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026941DC */ _t48 = _t47 & 0x00000001u;
|
|
/* 026941DC */ if (_t48) goto L_026941E0; else goto L_026941F8;
|
|
L_026941E0: ; // 0x26941e0
|
|
/* 026941E0 */ _t49 = cpu->r[5] + 0x00000008u;
|
|
/* 026941E0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t49);
|
|
/* 026941E4 */ cpu->r[6] = rbrew_rlwinm(cpu->r[9], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 026941E8 */ _t50 = cpu->r[6] + cpu->r[7];
|
|
/* 026941E8 */ rbrew_write32(cpu->mem, _t50, cpu->r[11]);
|
|
/* 026941EC */ _t51 = cpu->r[5] + 0x00000000u;
|
|
/* 026941EC */ cpu->r[9] = rbrew_read32(cpu->mem, _t51);
|
|
/* 026941F0 */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 026941F4 */ _t52 = cpu->r[5] + 0x00000000u;
|
|
/* 026941F4 */ rbrew_write32(cpu->mem, _t52, cpu->r[9]);
|
|
L_026941F8: ; // 0x26941f8
|
|
/* 026941F8 */ _t53 = cpu->r[31] + 0x0000009Cu;
|
|
/* 026941F8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t53);
|
|
/* 026941FC */ _t54 = cpu->r[31] + 0x00000094u;
|
|
/* 026941FC */ cpu->r[6] = rbrew_read32(cpu->mem, _t54);
|
|
/* 02694200 */ cpu->r[9] = cpu->r[10] + cpu->r[6];
|
|
/* 02694204 */ cpu->r[0] = cpu->r[9] + 0xFFFFFFFFu;
|
|
/* 02694208 */ cpu->r[10] = (uint32_t)((int32_t)cpu->r[0] / (int32_t)cpu->r[6]);
|
|
/* 0269420C */ cpu->r[10] = (uint32_t)((int32_t)cpu->r[10] * (int32_t)cpu->r[6]);
|
|
/* 02694210 */ cpu->r[0] = cpu->r[0] - cpu->r[10];
|
|
/* 02694214 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[6]);
|
|
/* 02694218 */ cpu->r[9] = 0x00000000u;
|
|
/* 0269421C */ _t55 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269421C */ _t56 = _t55 & 0x00000001u;
|
|
/* 0269421C */ if (_t56) goto L_02694220; else goto L_0269422C;
|
|
L_02694220: ; // 0x2694220
|
|
/* 02694220 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x00000014u);
|
|
/* 02694224 */ _t57 = cpu->r[31] + 0x00000098u;
|
|
/* 02694224 */ cpu->r[4] = rbrew_read32(cpu->mem, _t57);
|
|
/* 02694228 */ cpu->r[9] = cpu->r[4] + cpu->r[0];
|
|
L_0269422C: ; // 0x269422c
|
|
/* 0269422C */ _t58 = cpu->r[9] + 0x00000000u;
|
|
/* 0269422C */ cpu->r[0] = rbrew_read32(cpu->mem, _t58);
|
|
/* 02694230 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[0]);
|
|
/* 02694234 */ cpu->r[10] = 0x00000000u;
|
|
/* 02694238 */ _t59 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02694238 */ _t60 = _t59 & 0x00000001u;
|
|
/* 02694238 */ if (_t60) goto L_0269423C; else goto L_02694244;
|
|
L_0269423C: ; // 0x269423c
|
|
/* 0269423C */ _t61 = cpu->r[9] + 0x00000008u;
|
|
/* 0269423C */ cpu->r[7] = rbrew_read32(cpu->mem, _t61);
|
|
/* 02694240 */ _t62 = cpu->r[7] + cpu->r[30];
|
|
/* 02694240 */ cpu->r[10] = rbrew_read32(cpu->mem, _t62);
|
|
L_02694244: ; // 0x2694244
|
|
/* 02694244 */ _t63 = cpu->r[10] + 0x00000000u;
|
|
/* 02694244 */ cpu->r[0] = rbrew_read32(cpu->mem, _t63);
|
|
/* 02694248 */ _t64 = cpu->r[11] + 0x00000000u;
|
|
/* 02694248 */ rbrew_write32(cpu->mem, _t64, cpu->r[0]);
|
|
/* 0269424C */ _t65 = cpu->r[10] + 0x00000004u;
|
|
/* 0269424C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t65);
|
|
/* 02694250 */ _t66 = cpu->r[11] + 0x00000004u;
|
|
/* 02694250 */ rbrew_write_f32(cpu->mem, _t66, cpu->f[0]);
|
|
/* 02694254 */ _t67 = cpu->r[10] + 0x00000008u;
|
|
/* 02694254 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t67);
|
|
/* 02694258 */ _t68 = cpu->r[11] + 0x00000008u;
|
|
/* 02694258 */ rbrew_write_f32(cpu->mem, _t68, cpu->f[6]);
|
|
/* 0269425C */ _t69 = cpu->r[10] + 0x0000000Cu;
|
|
/* 0269425C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t69);
|
|
/* 02694260 */ _t70 = cpu->r[11] + 0x0000000Cu;
|
|
/* 02694260 */ rbrew_write_f32(cpu->mem, _t70, cpu->f[7]);
|
|
/* 02694264 */ _t71 = cpu->r[10] + 0x00000010u;
|
|
/* 02694264 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t71);
|
|
/* 02694268 */ _t72 = cpu->r[11] + 0x00000010u;
|
|
/* 02694268 */ rbrew_write_f32(cpu->mem, _t72, cpu->f[8]);
|
|
/* 0269426C */ _t73 = cpu->r[10] + 0x00000014u;
|
|
/* 0269426C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t73);
|
|
/* 02694270 */ _t74 = cpu->r[11] + 0x00000014u;
|
|
/* 02694270 */ rbrew_write_f32(cpu->mem, _t74, cpu->f[9]);
|
|
/* 02694274 */ _t75 = cpu->r[10] + 0x00000018u;
|
|
/* 02694274 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t75);
|
|
/* 02694278 */ _t76 = cpu->r[11] + 0x00000018u;
|
|
/* 02694278 */ rbrew_write_f32(cpu->mem, _t76, cpu->f[10]);
|
|
/* 0269427C */ _t77 = cpu->r[10] + 0x0000001Cu;
|
|
/* 0269427C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t77);
|
|
/* 02694280 */ _t78 = cpu->r[11] + 0x0000001Cu;
|
|
/* 02694280 */ rbrew_write_f32(cpu->mem, _t78, cpu->f[11]);
|
|
/* 02694284 */ _t79 = cpu->r[10] + 0x00000020u;
|
|
/* 02694284 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t79);
|
|
/* 02694288 */ _t80 = cpu->r[11] + 0x00000020u;
|
|
/* 02694288 */ rbrew_write_f32(cpu->mem, _t80, cpu->f[12]);
|
|
/* 0269428C */ _t81 = cpu->r[10] + 0x00000024u;
|
|
/* 0269428C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t81);
|
|
/* 02694290 */ _t82 = cpu->r[11] + 0x00000024u;
|
|
/* 02694290 */ rbrew_write_f32(cpu->mem, _t82, cpu->f[13]);
|
|
/* 02694294 */ _t83 = cpu->r[10] + 0x00000028u;
|
|
/* 02694294 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t83);
|
|
/* 02694298 */ _t84 = cpu->r[11] + 0x00000028u;
|
|
/* 02694298 */ rbrew_write_f32(cpu->mem, _t84, cpu->f[0]);
|
|
/* 0269429C */ _t85 = cpu->r[10] + 0x0000002Cu;
|
|
/* 0269429C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t85);
|
|
/* 026942A0 */ _t86 = cpu->r[11] + 0x0000002Cu;
|
|
/* 026942A0 */ rbrew_write_f32(cpu->mem, _t86, cpu->f[11]);
|
|
/* 026942A4 */ _t87 = cpu->r[10] + 0x00000030u;
|
|
/* 026942A4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t87);
|
|
/* 026942A8 */ _t88 = cpu->r[11] + 0x00000030u;
|
|
/* 026942A8 */ rbrew_write_f32(cpu->mem, _t88, cpu->f[12]);
|
|
/* 026942AC */ _t89 = cpu->r[10] + 0x00000034u;
|
|
/* 026942AC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t89);
|
|
/* 026942B0 */ _t90 = cpu->r[11] + 0x00000034u;
|
|
/* 026942B0 */ rbrew_write_f32(cpu->mem, _t90, cpu->f[13]);
|
|
/* 026942B4 */ _t91 = cpu->r[10] + 0x00000038u;
|
|
/* 026942B4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t91);
|
|
/* 026942B8 */ _t92 = cpu->r[11] + 0x00000038u;
|
|
/* 026942B8 */ rbrew_write_f32(cpu->mem, _t92, cpu->f[0]);
|
|
/* 026942BC */ _t93 = cpu->r[10] + 0x0000003Cu;
|
|
/* 026942BC */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t93);
|
|
/* 026942C0 */ _t94 = cpu->r[11] + 0x0000003Cu;
|
|
/* 026942C0 */ rbrew_write_f32(cpu->mem, _t94, cpu->f[6]);
|
|
/* 026942C4 */ _t95 = cpu->r[10] + 0x00000040u;
|
|
/* 026942C4 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t95);
|
|
/* 026942C8 */ _t96 = cpu->r[11] + 0x00000040u;
|
|
/* 026942C8 */ rbrew_write_f32(cpu->mem, _t96, cpu->f[7]);
|
|
/* 026942CC */ _t97 = cpu->r[10] + 0x00000044u;
|
|
/* 026942CC */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t97);
|
|
/* 026942D0 */ _t98 = cpu->r[11] + 0x00000044u;
|
|
/* 026942D0 */ rbrew_write_f32(cpu->mem, _t98, cpu->f[8]);
|
|
/* 026942D4 */ _t99 = cpu->r[10] + 0x00000048u;
|
|
/* 026942D4 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t99);
|
|
/* 026942D8 */ _t100 = cpu->r[11] + 0x00000048u;
|
|
/* 026942D8 */ rbrew_write_f32(cpu->mem, _t100, cpu->f[9]);
|
|
/* 026942DC */ _t101 = cpu->r[10] + 0x0000004Cu;
|
|
/* 026942DC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t101);
|
|
/* 026942E0 */ _t102 = cpu->r[11] + 0x0000004Cu;
|
|
/* 026942E0 */ rbrew_write_f32(cpu->mem, _t102, cpu->f[10]);
|
|
/* 026942E4 */ _t103 = cpu->r[10] + 0x00000050u;
|
|
/* 026942E4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t103);
|
|
/* 026942E8 */ _t104 = cpu->r[11] + 0x00000050u;
|
|
/* 026942E8 */ rbrew_write_f32(cpu->mem, _t104, cpu->f[11]);
|
|
/* 026942EC */ _t105 = cpu->r[10] + 0x00000054u;
|
|
/* 026942EC */ cpu->r[0] = rbrew_read8(cpu->mem, _t105);
|
|
/* 026942F0 */ _t106 = cpu->r[11] + 0x00000054u;
|
|
/* 026942F0 */ rbrew_write8(cpu->mem, _t106, (uint8_t)cpu->r[0]);
|
|
/* 026942F4 */ _t107 = cpu->r[10] + 0x00000058u;
|
|
/* 026942F4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t107);
|
|
/* 026942F8 */ _t108 = cpu->r[11] + 0x00000058u;
|
|
/* 026942F8 */ rbrew_write_f32(cpu->mem, _t108, cpu->f[12]);
|
|
/* 026942FC */ _t109 = cpu->r[10] + 0x0000005Cu;
|
|
/* 026942FC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t109);
|
|
/* 02694300 */ _t110 = cpu->r[11] + 0x0000005Cu;
|
|
/* 02694300 */ rbrew_write_f32(cpu->mem, _t110, cpu->f[13]);
|
|
/* 02694304 */ _t111 = cpu->r[10] + 0x00000060u;
|
|
/* 02694304 */ cpu->r[0] = rbrew_read32(cpu->mem, _t111);
|
|
/* 02694308 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 0269430C */ cpu->r[30] = cpu->r[30] + 0x00000004u;
|
|
/* 02694310 */ _t112 = cpu->r[11] + 0x00000060u;
|
|
/* 02694310 */ rbrew_write32(cpu->mem, _t112, cpu->r[0]);
|
|
L_02694314: ; // 0x2694314
|
|
/* 02694314 */ _t113 = cpu->r[31] + 0x0000009Cu;
|
|
/* 02694314 */ cpu->r[10] = rbrew_read32(cpu->mem, _t113);
|
|
/* 02694318 */ _t114 = cpu->r[31] + 0x00000094u;
|
|
/* 02694318 */ cpu->r[6] = rbrew_read32(cpu->mem, _t114);
|
|
/* 0269431C */ cpu->r[9] = cpu->r[10] + cpu->r[6];
|
|
/* 02694320 */ cpu->r[0] = cpu->r[9] + 0xFFFFFFFFu;
|
|
/* 02694324 */ cpu->r[9] = (uint32_t)((int32_t)cpu->r[0] / (int32_t)cpu->r[6]);
|
|
/* 02694328 */ cpu->r[9] = (uint32_t)((int32_t)cpu->r[9] * (int32_t)cpu->r[6]);
|
|
/* 0269432C */ cpu->r[0] = cpu->r[0] - cpu->r[9];
|
|
/* 02694330 */ cpu->r[5] = cpu->r[0];
|
|
/* 02694334 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[6]);
|
|
/* 02694338 */ cpu->r[4] = 0x00000000u;
|
|
/* 0269433C */ _t115 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269433C */ _t116 = _t115 & 0x00000001u;
|
|
/* 0269433C */ if (_t116) goto L_02694340; else goto L_0269434C;
|
|
L_02694340: ; // 0x2694340
|
|
/* 02694340 */ cpu->r[4] = (uint32_t)((int32_t)cpu->r[5] * (int32_t)0x00000014u);
|
|
/* 02694344 */ _t117 = cpu->r[31] + 0x00000098u;
|
|
/* 02694344 */ cpu->r[5] = rbrew_read32(cpu->mem, _t117);
|
|
/* 02694348 */ cpu->r[4] = cpu->r[5] + cpu->r[4];
|
|
L_0269434C: ; // 0x269434c
|
|
/* 0269434C */ _t118 = cpu->r[4] + 0x00000000u;
|
|
/* 0269434C */ cpu->r[7] = rbrew_read32(cpu->mem, _t118);
|
|
/* 02694350 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[7]);
|
|
/* 02694354 */ _t119 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02694354 */ _t120 = _t119 & 0x00000001u;
|
|
/* 02694354 */ if (_t120) goto L_02694174; else goto L_02694358;
|
|
L_02694358: ; // 0x2694358
|
|
/* 02694358 */ _t121 = cpu->r[31] + 0x000000A5u;
|
|
/* 02694358 */ rbrew_write8(cpu->mem, _t121, (uint8_t)cpu->r[12]);
|
|
L_0269435C: ; // 0x269435c
|
|
/* 0269435C */ cpu->r[12] = 0x101C0000u;
|
|
/* 02694360 */ _t122 = cpu->r[12] + 0x00006000u;
|
|
/* 02694360 */ cpu->r[12] = rbrew_read32(cpu->mem, _t122);
|
|
/* 02694364 */ _t123 = cpu->r[12] + 0x000002B0u;
|
|
/* 02694364 */ cpu->r[10] = rbrew_read32(cpu->mem, _t123);
|
|
/* 02694368 */ _t124 = cpu->r[31] + 0x000000A0u;
|
|
/* 02694368 */ cpu->r[8] = rbrew_read32(cpu->mem, _t124);
|
|
/* 0269436C */ _t125 = cpu->r[10] + 0x00000454u;
|
|
/* 0269436C */ cpu->r[6] = rbrew_read32(cpu->mem, _t125);
|
|
/* 02694370 */ _t126 = cpu->r[3] + 0x0000043Cu;
|
|
/* 02694370 */ cpu->r[11] = rbrew_read32(cpu->mem, _t126);
|
|
/* 02694374 */ cpu->r[4] = cpu->r[6] + cpu->r[8];
|
|
/* 02694378 */ cpu->r[0] = cpu->r[4] / cpu->r[11];
|
|
/* 0269437C */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)cpu->r[11]);
|
|
/* 02694380 */ cpu->r[0] = cpu->r[4] - cpu->r[0];
|
|
/* 02694384 */ cpu->r[5] = rbrew_clz32(cpu->r[0]);
|
|
/* 02694388 */ cpu->r[7] = rbrew_rlwinm(cpu->r[5], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 02694388 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0269438C */ _t127 = cpu->r[31] + 0x000000A4u;
|
|
/* 0269438C */ rbrew_write8(cpu->mem, _t127, (uint8_t)cpu->r[7]);
|
|
/* 02694390 */ _t128 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02694390 */ _t129 = _t128 & 0x00000001u;
|
|
/* 02694390 */ if (_t129) goto L_026943B8; else goto L_02694394;
|
|
L_02694394: ; // 0x2694394
|
|
/* 02694394 */ _t130 = cpu->r[31] + 0x00000008u;
|
|
/* 02694394 */ cpu->r[4] = rbrew_read32(cpu->mem, _t130);
|
|
/* 02694398 */ cpu->r[3] = cpu->r[31] + 0x00000010u;
|
|
/* 0269439C */ cpu->r[4] = cpu->r[4] + 0x000000B4u;
|
|
/* 026943A0 */ Gambit_fn_026993B8(cpu);
|
|
/* 026943A4 */ _t131 = cpu->r[31] + 0x00000008u;
|
|
/* 026943A4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t131);
|
|
/* 026943A8 */ Gambit_fn_02670D44(cpu);
|
|
/* 026943AC */ cpu->r[4] = cpu->r[3];
|
|
/* 026943B0 */ cpu->r[3] = cpu->r[31] + 0x00000010u;
|
|
/* 026943B4 */ Gambit_fn_026993DC(cpu);
|
|
L_026943B8: ; // 0x26943b8
|
|
/* 026943B8 */ _t132 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026943B8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t132);
|
|
/* 026943BC */ _t133 = cpu->r[1] + 0x0000001Cu;
|
|
/* 026943BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t133);
|
|
/* 026943C0 */ _t134 = cpu->r[1] + 0x00000010u;
|
|
/* 026943C0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t134);
|
|
/* 026943C4 */ cpu->lr = cpu->r[0];
|
|
/* 026943C8 */ _t135 = cpu->r[1] + 0x00000014u;
|
|
/* 026943C8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t135);
|
|
/* 026943CC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 026943D0 */ return;
|
|
}
|
|
|
|
// fn_026943D4 @ 0x26943d4
|
|
void Gambit_fn_026943D4(CPUState* cpu) {
|
|
uint32_t _t0, _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, _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, _t302, _t303, _t304, _t305, _t306, _t307, _t308, _t309, _t310, _t311, _t312, _t313, _t314, _t315, _t316, _t317, _t318, _t319, _t320, _t321, _t322, _t323, _t324, _t325, _t326, _t327, _t328, _t329, _t330, _t331, _t332, _t333, _t334, _t335, _t336, _t337, _t338, _t339, _t340, _t341, _t342, _t343, _t344, _t345, _t346, _t347, _t348, _t349, _t350, _t351, _t352, _t353, _t354, _t355, _t356, _t357, _t358, _t359, _t360, _t361, _t362, _t363, _t364, _t365, _t366, _t367, _t368, _t369, _t370, _t371, _t372, _t373, _t374, _t375;
|
|
double _ft111, _ft112, _ft300, _ft301;
|
|
|
|
L_026943D4: ; // 0x26943d4
|
|
/* 026943D4 */ _t0 = cpu->r[1] + 0xFFFFFE20u;
|
|
/* 026943D4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 026943D4 */ cpu->r[1] = _t0;
|
|
/* 026943D8 */ _t1 = cpu->r[1] + 0x00000190u;
|
|
/* 026943D8 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[27]);
|
|
/* 026943DC */ /* nop */
|
|
/* 026943E0 */ _t2 = cpu->r[1] + 0x00000140u;
|
|
/* 026943E0 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[22]);
|
|
/* 026943E4 */ _t3 = cpu->r[1] + 0x000001C0u;
|
|
/* 026943E4 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[30]);
|
|
/* 026943E8 */ /* nop */
|
|
/* 026943EC */ _t4 = cpu->r[1] + 0x000001B0u;
|
|
/* 026943EC */ rbrew_write_f64(cpu->mem, _t4, cpu->f[29]);
|
|
/* 026943F0 */ /* nop */
|
|
/* 026943F4 */ _t5 = cpu->r[1] + 0x00000148u;
|
|
/* 026943F4 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[22]);
|
|
/* 026943F8 */ /* nop */
|
|
/* 026943FC */ _t6 = cpu->r[1] + 0x00000150u;
|
|
/* 026943FC */ rbrew_write_f64(cpu->mem, _t6, cpu->f[23]);
|
|
/* 02694400 */ _t7 = cpu->r[1] + 0x000001A0u;
|
|
/* 02694400 */ rbrew_write_f64(cpu->mem, _t7, cpu->f[28]);
|
|
/* 02694404 */ /* nop */
|
|
/* 02694408 */ _t8 = cpu->r[1] + 0x00000198u;
|
|
/* 02694408 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[27]);
|
|
/* 0269440C */ /* nop */
|
|
/* 02694410 */ _t9 = cpu->r[1] + 0x000001C8u;
|
|
/* 02694410 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[30]);
|
|
/* 02694414 */ _t10 = cpu->r[1] + 0x00000158u;
|
|
/* 02694414 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[23]);
|
|
/* 02694418 */ _t11 = cpu->r[1] + 0x00000160u;
|
|
/* 02694418 */ rbrew_write_f64(cpu->mem, _t11, cpu->f[24]);
|
|
/* 0269441C */ _t12 = cpu->r[1] + 0x00000180u;
|
|
/* 0269441C */ rbrew_write_f64(cpu->mem, _t12, cpu->f[26]);
|
|
/* 02694420 */ /* nop */
|
|
/* 02694424 */ _t13 = cpu->r[1] + 0x000001A8u;
|
|
/* 02694424 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[28]);
|
|
/* 02694428 */ /* nop */
|
|
/* 0269442C */ _t14 = cpu->r[1] + 0x00000168u;
|
|
/* 0269442C */ rbrew_write_f32(cpu->mem, _t14, cpu->f[24]);
|
|
/* 02694430 */ _t15 = cpu->r[1] + 0x00000188u;
|
|
/* 02694430 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[26]);
|
|
/* 02694434 */ _t16 = cpu->r[1] + 0x00000170u;
|
|
/* 02694434 */ rbrew_write_f64(cpu->mem, _t16, cpu->f[25]);
|
|
/* 02694438 */ _t17 = cpu->r[1] + 0x00000130u;
|
|
/* 02694438 */ rbrew_write_f64(cpu->mem, _t17, cpu->f[21]);
|
|
/* 0269443C */ /* nop */
|
|
/* 02694440 */ _t18 = cpu->r[1] + 0x000001B8u;
|
|
/* 02694440 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[29]);
|
|
/* 02694444 */ /* nop */
|
|
/* 02694448 */ _t19 = cpu->r[1] + 0x00000178u;
|
|
/* 02694448 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[25]);
|
|
/* 0269444C */ cpu->r[0] = cpu->lr;
|
|
/* 02694450 */ _t20 = cpu->r[1] + 0x00000138u;
|
|
/* 02694450 */ rbrew_write_f32(cpu->mem, _t20, cpu->f[21]);
|
|
/* 02694454 */ _t21 = cpu->r[1] + 0x000001D0u;
|
|
/* 02694454 */ rbrew_write_f64(cpu->mem, _t21, cpu->f[31]);
|
|
/* 02694458 */ /* nop */
|
|
/* 0269445C */ _t22 = cpu->r[1] + 0x000001D8u;
|
|
/* 0269445C */ rbrew_write_f32(cpu->mem, _t22, cpu->f[31]);
|
|
/* 02694460 */ _t23 = cpu->r[1] + 0x000001E4u;
|
|
/* 02694460 */ rbrew_write32(cpu->mem, _t23, cpu->r[0]);
|
|
/* 02694464 */ /* nop */
|
|
/* 02694468 */ cpu->r[28] = cpu->r[3];
|
|
/* 0269446C */ _t24 = cpu->r[28] + 0x00000094u;
|
|
/* 0269446C */ cpu->r[10] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02694470 */ _t25 = cpu->r[28] + 0x0000009Cu;
|
|
/* 02694470 */ cpu->r[8] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02694474 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[10]);
|
|
/* 02694478 */ cpu->r[23] = 0x00000000u;
|
|
/* 0269447C */ _t26 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269447C */ _t27 = _t26 & 0x00000001u;
|
|
/* 0269447C */ if (_t27) goto L_02694480; else goto L_0269448C;
|
|
L_02694480: ; // 0x2694480
|
|
/* 02694480 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[8] * (int32_t)0x00000014u);
|
|
/* 02694484 */ _t28 = cpu->r[28] + 0x00000098u;
|
|
/* 02694484 */ cpu->r[4] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02694488 */ cpu->r[23] = cpu->r[4] + cpu->r[0];
|
|
L_0269448C: ; // 0x269448c
|
|
/* 0269448C */ cpu->r[21] = 0x00000000u;
|
|
/* 02694490 */ cpu->r[3] = cpu->r[1] + 0x000000B4u;
|
|
/* 02694494 */ _t29 = cpu->r[1] + 0x000000B4u;
|
|
/* 02694494 */ rbrew_write32(cpu->mem, _t29, cpu->r[21]);
|
|
/* 02694498 */ cpu->r[5] = cpu->r[1] + 0x000000C0u;
|
|
/* 0269449C */ _t30 = cpu->r[1] + 0x000000B8u;
|
|
/* 0269449C */ rbrew_write32(cpu->mem, _t30, cpu->r[21]);
|
|
/* 026944A0 */ cpu->r[4] = 0x00000008u;
|
|
/* 026944A4 */ _t31 = cpu->r[1] + 0x000000BCu;
|
|
/* 026944A4 */ rbrew_write32(cpu->mem, _t31, cpu->r[21]);
|
|
/* 026944A8 */ Gambit_fn_028023A8(cpu);
|
|
/* 026944AC */ Gambit_fn_027E3E2C(cpu);
|
|
/* 026944B0 */ cpu->r[4] = 0x100E0000u;
|
|
/* 026944B4 */ _t32 = cpu->r[23] + 0x00000000u;
|
|
/* 026944B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t32);
|
|
/* 026944B8 */ cpu->r[10] = 0x100E0000u;
|
|
/* 026944BC */ cpu->r[12] = 0x100E0000u;
|
|
/* 026944C0 */ _t33 = cpu->r[4] + 0x00003BA8u;
|
|
/* 026944C0 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 026944C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], cpu->r[0]);
|
|
/* 026944C8 */ _t34 = cpu->r[10] + 0x00003BB0u;
|
|
/* 026944C8 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 026944CC */ cpu->r[31] = 0x101F0000u;
|
|
/* 026944D0 */ cpu->r[9] = 0x100E0000u;
|
|
/* 026944D4 */ _t35 = cpu->r[12] + 0x00003BACu;
|
|
/* 026944D4 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 026944D8 */ cpu->r[31] = cpu->r[31] + 0x00006350u;
|
|
/* 026944DC */ cpu->r[30] = cpu->r[3];
|
|
/* 026944E0 */ _t36 = cpu->r[9] + 0x00003BB4u;
|
|
/* 026944E0 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 026944E4 */ _t37 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026944E4 */ _t38 = _t37 & 0x00000001u;
|
|
/* 026944E4 */ if (_t38) goto L_026944E8; else goto L_026947B8;
|
|
L_026944E8: ; // 0x26944e8
|
|
/* 026944E8 */ cpu->f[25] = cpu->f[31];
|
|
/* 026944EC */ cpu->r[22] = 0x00000000u;
|
|
/* 026944F0 */ cpu->r[25] = 0x00000001u;
|
|
/* 026944F4 */ cpu->f[26] = cpu->f[29];
|
|
/* 026944F8 */ cpu->r[24] = cpu->r[22];
|
|
/* 026944FC */ cpu->r[26] = 0x00000002u;
|
|
/* 02694500 */ cpu->f[27] = cpu->f[30];
|
|
/* 02694504 */ cpu->r[27] = 0x00000003u;
|
|
L_02694508: ; // 0x2694508
|
|
/* 02694508 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[21], cpu->r[0]);
|
|
/* 0269450C */ cpu->r[29] = 0x00000000u;
|
|
/* 02694510 */ _t39 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02694510 */ _t40 = _t39 & 0x00000001u;
|
|
/* 02694510 */ if (_t40) goto L_02694514; else goto L_0269451C;
|
|
L_02694514: ; // 0x2694514
|
|
/* 02694514 */ _t41 = cpu->r[23] + 0x00000008u;
|
|
/* 02694514 */ cpu->r[5] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02694518 */ _t42 = cpu->r[5] + cpu->r[22];
|
|
/* 02694518 */ cpu->r[29] = rbrew_read32(cpu->mem, _t42);
|
|
L_0269451C: ; // 0x269451c
|
|
/* 0269451C */ cpu->r[19] = 0x00000000u;
|
|
/* 02694520 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[19], cpu->r[30]);
|
|
/* 02694524 */ _t43 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02694524 */ _t44 = _t43 & 0x00000001u;
|
|
/* 02694524 */ if (_t44) goto L_02694528; else goto L_0269477C;
|
|
L_02694528: ; // 0x2694528
|
|
/* 02694528 */ cpu->f[21] = cpu->f[27];
|
|
L_0269452C: ; // 0x269452c
|
|
/* 0269452C */ cpu->r[3] = cpu->r[19];
|
|
/* 02694530 */ Gambit_fn_027E3E40(cpu);
|
|
/* 02694534 */ _t45 = cpu->r[28] + 0x00000008u;
|
|
/* 02694534 */ cpu->r[7] = rbrew_read32(cpu->mem, _t45);
|
|
/* 02694538 */ cpu->r[20] = cpu->r[3];
|
|
/* 0269453C */ _t46 = cpu->r[7] + 0x0000002Cu;
|
|
/* 0269453C */ cpu->r[0] = rbrew_read32(cpu->mem, _t46);
|
|
/* 02694540 */ _t47 = cpu->r[20] + 0x0000002Cu;
|
|
/* 02694540 */ cpu->r[5] = rbrew_read32(cpu->mem, _t47);
|
|
/* 02694544 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[5]);
|
|
/* 02694548 */ _t48 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02694548 */ _t49 = _t48 & 0x00000001u;
|
|
/* 02694548 */ if (_t49) goto L_02694754; else goto L_0269454C;
|
|
L_0269454C: ; // 0x269454c
|
|
/* 0269454C */ /* nop */
|
|
/* 02694550 */ _t50 = cpu->r[31] + 0x00000008u;
|
|
/* 02694550 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t50);
|
|
/* 02694554 */ /* nop */
|
|
/* 02694558 */ /* nop */
|
|
/* 0269455C */ _t51 = cpu->r[1] + 0x00000008u;
|
|
/* 0269455C */ cpu->r[0] = rbrew_read32(cpu->mem, _t51);
|
|
/* 02694560 */ cpu->f[12] = cpu->f[0] * cpu->f[21];
|
|
/* 02694564 */ _t52 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02694564 */ cpu->r[5] = rbrew_read32(cpu->mem, _t52);
|
|
/* 02694568 */ _t53 = cpu->r[1] + 0x00000038u;
|
|
/* 02694568 */ rbrew_write32(cpu->mem, _t53, cpu->r[0]);
|
|
/* 0269456C */ _t54 = cpu->r[1] + 0x00000010u;
|
|
/* 0269456C */ rbrew_write_f32(cpu->mem, _t54, cpu->f[12]);
|
|
/* 02694570 */ _t55 = cpu->r[1] + 0x00000010u;
|
|
/* 02694570 */ cpu->r[8] = rbrew_read32(cpu->mem, _t55);
|
|
/* 02694574 */ _t56 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02694574 */ rbrew_write32(cpu->mem, _t56, cpu->r[5]);
|
|
/* 02694578 */ /* nop */
|
|
/* 0269457C */ _t57 = cpu->r[1] + 0x00000040u;
|
|
/* 0269457C */ rbrew_write32(cpu->mem, _t57, cpu->r[8]);
|
|
/* 02694580 */ /* nop */
|
|
/* 02694584 */ /* nop */
|
|
/* 02694588 */ /* nop */
|
|
/* 0269458C */ _t58 = cpu->r[20] + 0x0000024Cu;
|
|
/* 0269458C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 02694590 */ _t59 = cpu->r[1] + 0x00000040u;
|
|
/* 02694590 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t59);
|
|
/* 02694594 */ _t60 = cpu->r[1] + 0x00000014u;
|
|
/* 02694594 */ cpu->r[8] = rbrew_read32(cpu->mem, _t60);
|
|
/* 02694598 */ cpu->f[12] = cpu->f[13] + cpu->f[0];
|
|
/* 0269459C */ _t61 = cpu->r[1] + 0x00000018u;
|
|
/* 0269459C */ cpu->r[9] = rbrew_read32(cpu->mem, _t61);
|
|
/* 026945A0 */ _t62 = cpu->r[1] + 0x00000050u;
|
|
/* 026945A0 */ rbrew_write32(cpu->mem, _t62, cpu->r[8]);
|
|
/* 026945A4 */ _t63 = cpu->r[1] + 0x0000001Cu;
|
|
/* 026945A4 */ rbrew_write_f32(cpu->mem, _t63, cpu->f[12]);
|
|
/* 026945A8 */ _t64 = cpu->r[1] + 0x0000001Cu;
|
|
/* 026945A8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t64);
|
|
/* 026945AC */ cpu->r[4] = cpu->r[1] + 0x00000050u;
|
|
/* 026945B0 */ _t65 = cpu->r[1] + 0x00000054u;
|
|
/* 026945B0 */ rbrew_write32(cpu->mem, _t65, cpu->r[9]);
|
|
/* 026945B4 */ cpu->r[3] = cpu->r[7];
|
|
/* 026945B8 */ _t66 = cpu->r[1] + 0x00000058u;
|
|
/* 026945B8 */ rbrew_write32(cpu->mem, _t66, cpu->r[10]);
|
|
/* 026945BC */ Gambit_fn_026700D8(cpu);
|
|
/* 026945C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 026945C4 */ _t67 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026945C4 */ _t68 = _t67 & 0x00000001u;
|
|
/* 026945C4 */ if (_t68) goto L_026945C8; else goto L_02694754;
|
|
L_026945C8: ; // 0x26945c8
|
|
/* 026945C8 */ _t69 = cpu->r[29] + 0x00000000u;
|
|
/* 026945C8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t69);
|
|
/* 026945CC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[20]);
|
|
/* 026945D0 */ _t70 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026945D0 */ _t71 = _t70 & 0x00000001u;
|
|
/* 026945D0 */ if (_t71) goto L_026945D4; else goto L_02694754;
|
|
L_026945D4: ; // 0x26945d4
|
|
/* 026945D4 */ _t72 = cpu->r[20] + 0x00000244u;
|
|
/* 026945D4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t72);
|
|
/* 026945D8 */ _t73 = cpu->r[29] + 0x00000014u;
|
|
/* 026945D8 */ rbrew_write_f32(cpu->mem, _t73, cpu->f[0]);
|
|
/* 026945DC */ _t74 = cpu->r[20] + 0x00000248u;
|
|
/* 026945DC */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t74);
|
|
/* 026945E0 */ _t75 = cpu->r[29] + 0x00000018u;
|
|
/* 026945E0 */ rbrew_write_f32(cpu->mem, _t75, cpu->f[6]);
|
|
/* 026945E4 */ _t76 = cpu->r[20] + 0x0000024Cu;
|
|
/* 026945E4 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t76);
|
|
/* 026945E8 */ _t77 = cpu->r[29] + 0x0000001Cu;
|
|
/* 026945E8 */ rbrew_write_f32(cpu->mem, _t77, cpu->f[7]);
|
|
/* 026945EC */ _t78 = cpu->r[20] + 0x00000300u;
|
|
/* 026945EC */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t78);
|
|
/* 026945F0 */ _t79 = cpu->r[29] + 0x00000038u;
|
|
/* 026945F0 */ rbrew_write_f32(cpu->mem, _t79, cpu->f[8]);
|
|
/* 026945F4 */ _t80 = cpu->r[20] + 0x00000304u;
|
|
/* 026945F4 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t80);
|
|
/* 026945F8 */ _t81 = cpu->r[29] + 0x0000003Cu;
|
|
/* 026945F8 */ rbrew_write_f32(cpu->mem, _t81, cpu->f[9]);
|
|
/* 026945FC */ _t82 = cpu->r[20] + 0x00000308u;
|
|
/* 026945FC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t82);
|
|
/* 02694600 */ _t83 = cpu->r[29] + 0x00000040u;
|
|
/* 02694600 */ rbrew_write_f32(cpu->mem, _t83, cpu->f[10]);
|
|
/* 02694604 */ _t84 = cpu->r[20] + 0x00000198u;
|
|
/* 02694604 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t84);
|
|
/* 02694608 */ _t85 = cpu->r[29] + 0x00000004u;
|
|
/* 02694608 */ rbrew_write_f32(cpu->mem, _t85, cpu->f[12]);
|
|
/* 0269460C */ _t86 = cpu->r[20] + 0x0000019Cu;
|
|
/* 0269460C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t86);
|
|
/* 02694610 */ _t87 = cpu->r[29] + 0x00000008u;
|
|
/* 02694610 */ rbrew_write_f32(cpu->mem, _t87, cpu->f[0]);
|
|
/* 02694614 */ _t88 = cpu->r[20] + 0x000001A0u;
|
|
/* 02694614 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t88);
|
|
/* 02694618 */ cpu->f[11] = cpu->f[8] * cpu->f[8];
|
|
/* 0269461C */ _t89 = cpu->r[29] + 0x0000000Cu;
|
|
/* 0269461C */ rbrew_write_f32(cpu->mem, _t89, cpu->f[8]);
|
|
/* 02694620 */ cpu->f[12] = fma(cpu->f[12], cpu->f[12], cpu->f[11]);
|
|
/* 02694624 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[26]);
|
|
/* 02694628 */ _t90 = cpu->r[29] + 0x00000010u;
|
|
/* 02694628 */ rbrew_write_f32(cpu->mem, _t90, cpu->f[25]);
|
|
/* 0269462C */ cpu->r[19] = 0x00000001u;
|
|
/* 02694630 */ _t91 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02694630 */ _t92 = _t91 & 0x00000001u;
|
|
/* 02694630 */ if (_t92) goto L_02694634; else goto L_026946F8;
|
|
L_02694634: ; // 0x2694634
|
|
/* 02694634 */ _t93 = cpu->r[28] + 0x00000008u;
|
|
/* 02694634 */ cpu->r[9] = rbrew_read32(cpu->mem, _t93);
|
|
/* 02694638 */ /* nop */
|
|
/* 0269463C */ /* nop */
|
|
/* 02694640 */ /* nop */
|
|
/* 02694644 */ /* nop */
|
|
/* 02694648 */ _t94 = cpu->r[9] + 0x000000BCu;
|
|
/* 02694648 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t94);
|
|
/* 0269464C */ _t95 = cpu->r[29] + 0x0000001Cu;
|
|
/* 0269464C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t95);
|
|
/* 02694650 */ _t96 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02694650 */ cpu->r[9] = rbrew_read32(cpu->mem, _t96);
|
|
/* 02694654 */ cpu->f[10] = cpu->f[11] - cpu->f[12];
|
|
/* 02694658 */ _t97 = cpu->r[1] + 0x00000020u;
|
|
/* 02694658 */ rbrew_write32(cpu->mem, _t97, cpu->r[9]);
|
|
/* 0269465C */ _t98 = cpu->r[1] + 0x00000064u;
|
|
/* 0269465C */ rbrew_write_f32(cpu->mem, _t98, cpu->f[10]);
|
|
/* 02694660 */ _t99 = cpu->r[1] + 0x00000064u;
|
|
/* 02694660 */ cpu->r[12] = rbrew_read32(cpu->mem, _t99);
|
|
/* 02694664 */ _t100 = cpu->r[1] + 0x00000028u;
|
|
/* 02694664 */ rbrew_write32(cpu->mem, _t100, cpu->r[12]);
|
|
/* 02694668 */ _t101 = cpu->r[1] + 0x00000028u;
|
|
/* 02694668 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t101);
|
|
/* 0269466C */ _t102 = cpu->r[1] + 0x00000020u;
|
|
/* 0269466C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t102);
|
|
/* 02694670 */ cpu->f[8] = cpu->f[11] * cpu->f[11];
|
|
/* 02694674 */ cpu->f[13] = fma(cpu->f[7], cpu->f[7], cpu->f[8]);
|
|
/* 02694678 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[26]);
|
|
/* 0269467C */ _t103 = cpu->r[1] + 0x00000024u;
|
|
/* 0269467C */ rbrew_write_f32(cpu->mem, _t103, cpu->f[25]);
|
|
/* 02694680 */ _t104 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02694680 */ _t105 = _t104 & 0x00000001u;
|
|
/* 02694680 */ if (_t105) goto L_02694684; else goto L_026946F8;
|
|
L_02694684: ; // 0x2694684
|
|
/* 02694684 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[25]);
|
|
/* 02694688 */ _t106 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02694688 */ _t107 = _t106 & 0x00000001u;
|
|
/* 02694688 */ if (_t107) goto L_026946AC; else goto L_0269468C;
|
|
L_0269468C: ; // 0x269468c
|
|
/* 0269468C */ /* nop */
|
|
/* 02694690 */ /* nop */
|
|
/* 02694694 */ /* nop */
|
|
/* 02694698 */ /* nop */
|
|
/* 0269469C */ _t108 = cpu->r[29] + 0x0000000Cu;
|
|
/* 0269469C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t108);
|
|
/* 026946A0 */ cpu->f[6] = fma(cpu->f[8], cpu->f[11], cpu->f[6]);
|
|
/* 026946A4 */ _t109 = cpu->r[29] + 0x00000010u;
|
|
/* 026946A4 */ rbrew_write_f32(cpu->mem, _t109, cpu->f[6]);
|
|
/* 026946A8 */ goto L_026946F8;
|
|
L_026946AC: ; // 0x26946ac
|
|
/* 026946AC */ cpu->r[7] = 0x100E0000u;
|
|
/* 026946B0 */ _t110 = cpu->r[7] + 0x00003BB8u;
|
|
/* 026946B0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t110);
|
|
/* 026946B4 */ _ft111 = sqrt(cpu->f[13]);
|
|
/* 026946B4 */ _ft112 = (double)(int32_t)0x00000001u;
|
|
/* 026946B4 */ cpu->f[22] = _ft112 / _ft111;
|
|
/* 026946B8 */ cpu->f[23] = cpu->f[22] * cpu->f[22];
|
|
/* 026946BC */ cpu->f[24] = cpu->f[22] * cpu->f[28];
|
|
/* 026946C0 */ cpu->f[23] = -fma(cpu->f[23], cpu->f[13], -(cpu->f[12]));
|
|
/* 026946C4 */ cpu->f[22] = cpu->f[23] * cpu->f[24];
|
|
/* 026946C8 */ /* nop */
|
|
/* 026946CC */ _t113 = cpu->r[1] + 0x00000028u;
|
|
/* 026946CC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t113);
|
|
/* 026946D0 */ /* nop */
|
|
/* 026946D4 */ cpu->f[11] = cpu->f[12] * cpu->f[22];
|
|
/* 026946D8 */ /* nop */
|
|
/* 026946DC */ _t114 = cpu->r[1] + 0x00000028u;
|
|
/* 026946DC */ rbrew_write_f32(cpu->mem, _t114, cpu->f[11]);
|
|
/* 026946E0 */ /* nop */
|
|
/* 026946E4 */ /* nop */
|
|
/* 026946E8 */ /* nop */
|
|
/* 026946EC */ _t115 = cpu->r[29] + 0x0000000Cu;
|
|
/* 026946EC */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t115);
|
|
/* 026946F0 */ cpu->f[6] = fma(cpu->f[8], cpu->f[11], cpu->f[6]);
|
|
/* 026946F4 */ _t116 = cpu->r[29] + 0x00000010u;
|
|
/* 026946F4 */ rbrew_write_f32(cpu->mem, _t116, cpu->f[6]);
|
|
L_026946F8: ; // 0x26946f8
|
|
/* 026946F8 */ _t117 = cpu->r[29] + 0x00000060u;
|
|
/* 026946F8 */ rbrew_write32(cpu->mem, _t117, cpu->r[24]);
|
|
/* 026946FC */ cpu->r[3] = cpu->r[20];
|
|
/* 02694700 */ _t118 = cpu->r[29] + 0x00000060u;
|
|
/* 02694700 */ cpu->r[9] = rbrew_read32(cpu->mem, _t118);
|
|
/* 02694704 */ Gambit_fn_025C3110(cpu);
|
|
/* 02694708 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0269470C */ _t119 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269470C */ _t120 = _t119 & 0x00000001u;
|
|
/* 0269470C */ if (_t120) goto L_02694718; else goto L_02694710;
|
|
L_02694710: ; // 0x2694710
|
|
/* 02694710 */ _t121 = cpu->r[29] + 0x00000060u;
|
|
/* 02694710 */ rbrew_write32(cpu->mem, _t121, cpu->r[25]);
|
|
/* 02694714 */ _t122 = cpu->r[29] + 0x00000060u;
|
|
/* 02694714 */ cpu->r[0] = rbrew_read32(cpu->mem, _t122);
|
|
L_02694718: ; // 0x2694718
|
|
/* 02694718 */ cpu->r[3] = cpu->r[20];
|
|
/* 0269471C */ Gambit_fn_025C5DA4(cpu);
|
|
/* 02694720 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02694724 */ _t123 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02694724 */ _t124 = _t123 & 0x00000001u;
|
|
/* 02694724 */ if (_t124) goto L_02694774; else goto L_02694728;
|
|
L_02694728: ; // 0x2694728
|
|
/* 02694728 */ _t125 = cpu->r[29] + 0x00000060u;
|
|
/* 02694728 */ rbrew_write32(cpu->mem, _t125, cpu->r[26]);
|
|
/* 0269472C */ _t126 = cpu->r[20] + 0x0000069Cu;
|
|
/* 0269472C */ cpu->r[3] = rbrew_read32(cpu->mem, _t126);
|
|
/* 02694730 */ _t127 = cpu->r[29] + 0x00000060u;
|
|
/* 02694730 */ cpu->r[0] = rbrew_read32(cpu->mem, _t127);
|
|
/* 02694734 */ Gambit_fn_0263041C(cpu);
|
|
/* 02694738 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0269473C */ _t128 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269473C */ _t129 = _t128 & 0x00000001u;
|
|
/* 0269473C */ if (_t129) goto L_02694774; else goto L_02694740;
|
|
L_02694740: ; // 0x2694740
|
|
/* 02694740 */ _t130 = cpu->r[29] + 0x00000060u;
|
|
/* 02694740 */ rbrew_write32(cpu->mem, _t130, cpu->r[27]);
|
|
/* 02694744 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[19], 0x00000000u);
|
|
/* 02694748 */ _t131 = cpu->r[29] + 0x00000060u;
|
|
/* 02694748 */ cpu->r[5] = rbrew_read32(cpu->mem, _t131);
|
|
/* 0269474C */ _t132 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269474C */ _t133 = _t132 & 0x00000001u;
|
|
/* 0269474C */ if (_t133) goto L_0269477C; else goto L_02694750;
|
|
L_02694750: ; // 0x2694750
|
|
/* 02694750 */ goto L_026947A4;
|
|
L_02694754: ; // 0x2694754
|
|
/* 02694754 */ cpu->r[19] = cpu->r[19] + 0x00000001u;
|
|
/* 02694758 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[19], cpu->r[30]);
|
|
/* 0269475C */ _t134 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269475C */ _t135 = _t134 & 0x00000001u;
|
|
/* 0269475C */ if (_t135) goto L_0269452C; else goto L_02694760;
|
|
L_02694760: ; // 0x2694760
|
|
/* 02694760 */ _t136 = cpu->r[1] + 0x000000B4u;
|
|
/* 02694760 */ cpu->r[12] = rbrew_read32(cpu->mem, _t136);
|
|
/* 02694764 */ _t137 = cpu->r[1] + 0x000000B8u;
|
|
/* 02694764 */ cpu->r[6] = rbrew_read32(cpu->mem, _t137);
|
|
/* 02694768 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], cpu->r[6]);
|
|
/* 0269476C */ _t138 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269476C */ _t139 = _t138 & 0x00000001u;
|
|
/* 0269476C */ if (_t139) goto L_02694770; else goto L_026947A4;
|
|
L_02694770: ; // 0x2694770
|
|
/* 02694770 */ goto L_0269478C;
|
|
L_02694774: ; // 0x2694774
|
|
/* 02694774 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[19], 0x00000000u);
|
|
/* 02694778 */ _t140 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02694778 */ _t141 = _t140 & 0x00000001u;
|
|
/* 02694778 */ if (_t141) goto L_0269477C; else goto L_026947A4;
|
|
L_0269477C: ; // 0x269477c
|
|
/* 0269477C */ _t142 = cpu->r[1] + 0x000000B4u;
|
|
/* 0269477C */ cpu->r[12] = rbrew_read32(cpu->mem, _t142);
|
|
/* 02694780 */ _t143 = cpu->r[1] + 0x000000B8u;
|
|
/* 02694780 */ cpu->r[6] = rbrew_read32(cpu->mem, _t143);
|
|
/* 02694784 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], cpu->r[6]);
|
|
/* 02694788 */ _t144 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02694788 */ _t145 = _t144 & 0x00000001u;
|
|
/* 02694788 */ if (_t145) goto L_0269478C; else goto L_026947A4;
|
|
L_0269478C: ; // 0x269478c
|
|
/* 0269478C */ _t146 = cpu->r[1] + 0x000000BCu;
|
|
/* 0269478C */ cpu->r[0] = rbrew_read32(cpu->mem, _t146);
|
|
/* 02694790 */ cpu->r[7] = rbrew_rlwinm(cpu->r[12], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02694794 */ _t147 = cpu->r[7] + cpu->r[0];
|
|
/* 02694794 */ rbrew_write32(cpu->mem, _t147, cpu->r[29]);
|
|
/* 02694798 */ _t148 = cpu->r[1] + 0x000000B4u;
|
|
/* 02694798 */ cpu->r[10] = rbrew_read32(cpu->mem, _t148);
|
|
/* 0269479C */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 026947A0 */ _t149 = cpu->r[1] + 0x000000B4u;
|
|
/* 026947A0 */ rbrew_write32(cpu->mem, _t149, cpu->r[10]);
|
|
L_026947A4: ; // 0x26947a4
|
|
/* 026947A4 */ _t150 = cpu->r[23] + 0x00000000u;
|
|
/* 026947A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t150);
|
|
/* 026947A8 */ cpu->r[21] = cpu->r[21] + 0x00000001u;
|
|
/* 026947AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], cpu->r[0]);
|
|
/* 026947B0 */ cpu->r[22] = cpu->r[22] + 0x00000004u;
|
|
/* 026947B4 */ _t151 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026947B4 */ _t152 = _t151 & 0x00000001u;
|
|
/* 026947B4 */ if (_t152) goto L_02694508; else goto L_026947B8;
|
|
L_026947B8: ; // 0x26947b8
|
|
/* 026947B8 */ _t153 = cpu->r[1] + 0x000000B4u;
|
|
/* 026947B8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t153);
|
|
/* 026947BC */ cpu->r[27] = 0x00000000u;
|
|
/* 026947C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], cpu->r[12]);
|
|
/* 026947C4 */ _t154 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026947C4 */ _t155 = _t154 & 0x00000001u;
|
|
/* 026947C4 */ if (_t155) goto L_026947C8; else goto L_026948A4;
|
|
L_026947C8: ; // 0x26947c8
|
|
/* 026947C8 */ cpu->r[29] = 0x00000000u;
|
|
L_026947CC: ; // 0x26947cc
|
|
/* 026947CC */ cpu->r[4] = 0x00000000u;
|
|
/* 026947D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], cpu->r[0]);
|
|
/* 026947D4 */ _t156 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026947D4 */ _t157 = _t156 & 0x00000001u;
|
|
/* 026947D4 */ if (_t157) goto L_026947D8; else goto L_0269488C;
|
|
L_026947D8: ; // 0x26947d8
|
|
/* 026947D8 */ _t158 = cpu->r[1] + 0x000000BCu;
|
|
/* 026947D8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t158);
|
|
/* 026947DC */ cpu->r[9] = 0x00000000u;
|
|
/* 026947E0 */ cpu->r[11] = cpu->r[27] - cpu->r[12];
|
|
/* 026947E4 */ cpu->r[6] = cpu->r[9];
|
|
/* 026947E8 */ cpu->r[11] = cpu->r[5] + cpu->r[29];
|
|
L_026947EC: ; // 0x26947ec
|
|
/* 026947EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 026947F0 */ cpu->r[8] = 0x00000000u;
|
|
/* 026947F4 */ _t159 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026947F4 */ _t160 = _t159 & 0x00000001u;
|
|
/* 026947F4 */ if (_t160) goto L_026947F8; else goto L_026947FC;
|
|
L_026947F8: ; // 0x26947f8
|
|
/* 026947F8 */ _t161 = cpu->r[11] + 0x00000000u;
|
|
/* 026947F8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t161);
|
|
L_026947FC: ; // 0x26947fc
|
|
/* 026947FC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[0]);
|
|
/* 02694800 */ cpu->r[7] = 0x00000000u;
|
|
/* 02694804 */ _t162 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02694804 */ _t163 = _t162 & 0x00000001u;
|
|
/* 02694804 */ if (_t163) goto L_02694808; else goto L_02694810;
|
|
L_02694808: ; // 0x2694808
|
|
/* 02694808 */ _t164 = cpu->r[23] + 0x00000008u;
|
|
/* 02694808 */ cpu->r[7] = rbrew_read32(cpu->mem, _t164);
|
|
/* 0269480C */ _t165 = cpu->r[7] + cpu->r[9];
|
|
/* 0269480C */ cpu->r[7] = rbrew_read32(cpu->mem, _t165);
|
|
L_02694810: ; // 0x2694810
|
|
/* 02694810 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[7]);
|
|
/* 02694814 */ cpu->r[10] = cpu->r[4] + 0x00000001u;
|
|
/* 02694818 */ _t166 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02694818 */ _t167 = _t166 & 0x00000001u;
|
|
/* 02694818 */ if (_t167) goto L_0269481C; else goto L_0269487C;
|
|
L_0269481C: ; // 0x269481c
|
|
/* 0269481C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], cpu->r[0]);
|
|
/* 02694820 */ _t168 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02694820 */ _t169 = _t168 & 0x00000001u;
|
|
/* 02694820 */ if (_t169) goto L_02694858; else goto L_02694824;
|
|
L_02694824: ; // 0x2694824
|
|
/* 02694824 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], cpu->r[10]);
|
|
/* 02694828 */ cpu->r[8] = cpu->r[10] - cpu->r[4];
|
|
/* 0269482C */ _t170 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269482C */ _t171 = _t170 & 0x00000001u;
|
|
/* 0269482C */ if (_t171) goto L_02694830; else goto L_02694858;
|
|
L_02694830: ; // 0x2694830
|
|
/* 02694830 */ cpu->ctr = cpu->r[8];
|
|
/* 02694834 */ _t172 = cpu->r[23] + 0x0000000Cu;
|
|
/* 02694834 */ cpu->r[0] = rbrew_read32(cpu->mem, _t172);
|
|
/* 02694838 */ cpu->r[11] = rbrew_rlwinm(cpu->r[4], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
L_0269483C: ; // 0x269483c
|
|
/* 0269483C */ _t173 = cpu->r[23] + 0x00000008u;
|
|
/* 0269483C */ cpu->r[10] = rbrew_read32(cpu->mem, _t173);
|
|
/* 02694840 */ _t174 = cpu->r[10] + cpu->r[11];
|
|
/* 02694840 */ cpu->r[12] = rbrew_read32(cpu->mem, _t174);
|
|
/* 02694844 */ _t175 = cpu->r[12] + 0x00000000u;
|
|
/* 02694844 */ rbrew_write32(cpu->mem, _t175, cpu->r[0]);
|
|
/* 02694848 */ cpu->r[0] = cpu->r[12];
|
|
/* 0269484C */ cpu->r[11] = cpu->r[11] + 0x00000004u;
|
|
/* 02694850 */ _t176 = cpu->r[23] + 0x0000000Cu;
|
|
/* 02694850 */ rbrew_write32(cpu->mem, _t176, cpu->r[0]);
|
|
/* 02694854 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02694854 */ _t177 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02694854 */ _t178 = _t177 >> (0x00000002u & 31u);
|
|
/* 02694854 */ _t179 = _t178 & 0x00000001u;
|
|
/* 02694854 */ if (_t179) goto L_0269483C; else goto L_02694858;
|
|
L_02694858: ; // 0x2694858
|
|
/* 02694858 */ cpu->r[3] = cpu->r[23];
|
|
/* 0269485C */ cpu->r[5] = 0x00000001u;
|
|
/* 02694860 */ Gambit_fn_0280246C(cpu);
|
|
/* 02694864 */ _t180 = cpu->r[1] + 0x000000B4u;
|
|
/* 02694864 */ cpu->r[12] = rbrew_read32(cpu->mem, _t180);
|
|
/* 02694868 */ cpu->r[27] = cpu->r[27] + 0x00000001u;
|
|
/* 0269486C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], cpu->r[12]);
|
|
/* 02694870 */ cpu->r[29] = cpu->r[29] + 0x00000004u;
|
|
/* 02694874 */ _t181 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02694874 */ _t182 = _t181 & 0x00000001u;
|
|
/* 02694874 */ if (_t182) goto L_02694878; else goto L_026948A4;
|
|
L_02694878: ; // 0x2694878
|
|
/* 02694878 */ goto L_0269489C;
|
|
L_0269487C: ; // 0x269487c
|
|
/* 0269487C */ cpu->r[4] = cpu->r[10];
|
|
/* 02694880 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], cpu->r[0]);
|
|
/* 02694884 */ cpu->r[9] = cpu->r[9] + 0x00000004u;
|
|
/* 02694888 */ _t183 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02694888 */ _t184 = _t183 & 0x00000001u;
|
|
/* 02694888 */ if (_t184) goto L_026947EC; else goto L_0269488C;
|
|
L_0269488C: ; // 0x269488c
|
|
/* 0269488C */ cpu->r[27] = cpu->r[27] + 0x00000001u;
|
|
/* 02694890 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], cpu->r[12]);
|
|
/* 02694894 */ cpu->r[29] = cpu->r[29] + 0x00000004u;
|
|
/* 02694898 */ _t185 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02694898 */ _t186 = _t185 & 0x00000001u;
|
|
/* 02694898 */ if (_t186) goto L_0269489C; else goto L_026948A4;
|
|
L_0269489C: ; // 0x269489c
|
|
/* 0269489C */ _t187 = cpu->r[23] + 0x00000000u;
|
|
/* 0269489C */ cpu->r[0] = rbrew_read32(cpu->mem, _t187);
|
|
/* 026948A0 */ goto L_026947CC;
|
|
L_026948A4: ; // 0x26948a4
|
|
/* 026948A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 026948A8 */ cpu->r[26] = 0x00000000u;
|
|
/* 026948AC */ _t188 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 026948AC */ _t189 = _t188 & 0x00000001u;
|
|
/* 026948AC */ if (_t189) goto L_026948B0; else goto L_02694C78;
|
|
L_026948B0: ; // 0x26948b0
|
|
/* 026948B0 */ cpu->r[19] = 0x101F0000u;
|
|
/* 026948B4 */ cpu->r[12] = 0x100E0000u;
|
|
/* 026948B8 */ cpu->r[20] = 0x00000000u;
|
|
/* 026948BC */ cpu->r[19] = cpu->r[19] + 0x00006338u;
|
|
/* 026948C0 */ _t190 = cpu->r[12] + 0x00003BBCu;
|
|
/* 026948C0 */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t190);
|
|
/* 026948C4 */ cpu->r[8] = 0x100E0000u;
|
|
/* 026948C8 */ cpu->r[21] = cpu->r[1] + 0x000000A4u;
|
|
/* 026948CC */ cpu->r[22] = 0x00000001u;
|
|
/* 026948D0 */ _t191 = cpu->r[8] + 0x00003BC0u;
|
|
/* 026948D0 */ cpu->f[26] = rbrew_read_f32(cpu->mem, _t191);
|
|
/* 026948D4 */ cpu->r[24] = 0x00000002u;
|
|
/* 026948D8 */ cpu->r[25] = 0x00000003u;
|
|
L_026948DC: ; // 0x26948dc
|
|
/* 026948DC */ cpu->r[3] = cpu->r[26];
|
|
/* 026948E0 */ Gambit_fn_027E3E40(cpu);
|
|
/* 026948E4 */ _t192 = cpu->r[28] + 0x00000008u;
|
|
/* 026948E4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t192);
|
|
/* 026948E8 */ cpu->r[27] = cpu->r[3];
|
|
/* 026948EC */ _t193 = cpu->r[7] + 0x0000002Cu;
|
|
/* 026948EC */ cpu->r[11] = rbrew_read32(cpu->mem, _t193);
|
|
/* 026948F0 */ _t194 = cpu->r[27] + 0x0000002Cu;
|
|
/* 026948F0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t194);
|
|
/* 026948F4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[10]);
|
|
/* 026948F8 */ _t195 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026948F8 */ _t196 = _t195 & 0x00000001u;
|
|
/* 026948F8 */ if (_t196) goto L_02694C6C; else goto L_026948FC;
|
|
L_026948FC: ; // 0x26948fc
|
|
/* 026948FC */ /* nop */
|
|
/* 02694900 */ _t197 = cpu->r[31] + 0x00000008u;
|
|
/* 02694900 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t197);
|
|
/* 02694904 */ /* nop */
|
|
/* 02694908 */ /* nop */
|
|
/* 0269490C */ _t198 = cpu->r[1] + 0x00000068u;
|
|
/* 0269490C */ cpu->r[5] = rbrew_read32(cpu->mem, _t198);
|
|
/* 02694910 */ cpu->f[10] = cpu->f[11] * cpu->f[30];
|
|
/* 02694914 */ _t199 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02694914 */ cpu->r[6] = rbrew_read32(cpu->mem, _t199);
|
|
/* 02694918 */ _t200 = cpu->r[1] + 0x000000A8u;
|
|
/* 02694918 */ rbrew_write32(cpu->mem, _t200, cpu->r[5]);
|
|
/* 0269491C */ _t201 = cpu->r[1] + 0x00000070u;
|
|
/* 0269491C */ rbrew_write_f32(cpu->mem, _t201, cpu->f[10]);
|
|
/* 02694920 */ _t202 = cpu->r[1] + 0x00000070u;
|
|
/* 02694920 */ cpu->r[8] = rbrew_read32(cpu->mem, _t202);
|
|
/* 02694924 */ _t203 = cpu->r[1] + 0x000000ACu;
|
|
/* 02694924 */ rbrew_write32(cpu->mem, _t203, cpu->r[6]);
|
|
/* 02694928 */ /* nop */
|
|
/* 0269492C */ _t204 = cpu->r[1] + 0x000000B0u;
|
|
/* 0269492C */ rbrew_write32(cpu->mem, _t204, cpu->r[8]);
|
|
/* 02694930 */ /* nop */
|
|
/* 02694934 */ /* nop */
|
|
/* 02694938 */ /* nop */
|
|
/* 0269493C */ _t205 = cpu->r[27] + 0x0000024Cu;
|
|
/* 0269493C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t205);
|
|
/* 02694940 */ _t206 = cpu->r[1] + 0x000000B0u;
|
|
/* 02694940 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t206);
|
|
/* 02694944 */ _t207 = cpu->r[1] + 0x00000074u;
|
|
/* 02694944 */ cpu->r[11] = rbrew_read32(cpu->mem, _t207);
|
|
/* 02694948 */ cpu->f[6] = cpu->f[7] + cpu->f[8];
|
|
/* 0269494C */ _t208 = cpu->r[1] + 0x00000078u;
|
|
/* 0269494C */ cpu->r[12] = rbrew_read32(cpu->mem, _t208);
|
|
/* 02694950 */ _t209 = cpu->r[1] + 0x000000E0u;
|
|
/* 02694950 */ rbrew_write32(cpu->mem, _t209, cpu->r[11]);
|
|
/* 02694954 */ _t210 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02694954 */ rbrew_write_f32(cpu->mem, _t210, cpu->f[6]);
|
|
/* 02694958 */ _t211 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02694958 */ cpu->r[0] = rbrew_read32(cpu->mem, _t211);
|
|
/* 0269495C */ cpu->r[4] = cpu->r[1] + 0x000000E0u;
|
|
/* 02694960 */ _t212 = cpu->r[1] + 0x000000E4u;
|
|
/* 02694960 */ rbrew_write32(cpu->mem, _t212, cpu->r[12]);
|
|
/* 02694964 */ cpu->r[3] = cpu->r[7];
|
|
/* 02694968 */ _t213 = cpu->r[1] + 0x000000E8u;
|
|
/* 02694968 */ rbrew_write32(cpu->mem, _t213, cpu->r[0]);
|
|
/* 0269496C */ Gambit_fn_026700D8(cpu);
|
|
/* 02694970 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02694974 */ _t214 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02694974 */ _t215 = _t214 & 0x00000001u;
|
|
/* 02694974 */ if (_t215) goto L_02694978; else goto L_02694C6C;
|
|
L_02694978: ; // 0x2694978
|
|
/* 02694978 */ _t216 = cpu->r[23] + 0x00000000u;
|
|
/* 02694978 */ cpu->r[0] = rbrew_read32(cpu->mem, _t216);
|
|
/* 0269497C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02694980 */ cpu->r[7] = 0x00000000u;
|
|
/* 02694984 */ _t217 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02694984 */ _t218 = _t217 & 0x00000001u;
|
|
/* 02694984 */ if (_t218) goto L_02694988; else goto L_026949C0;
|
|
L_02694988: ; // 0x2694988
|
|
/* 02694988 */ cpu->ctr = cpu->r[0];
|
|
/* 0269498C */ cpu->r[12] = cpu->r[0];
|
|
/* 02694990 */ cpu->r[11] = 0x00000000u;
|
|
L_02694994: ; // 0x2694994
|
|
/* 02694994 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[12]);
|
|
/* 02694998 */ cpu->r[8] = 0x00000000u;
|
|
/* 0269499C */ _t219 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269499C */ _t220 = _t219 & 0x00000001u;
|
|
/* 0269499C */ if (_t220) goto L_026949A0; else goto L_026949A8;
|
|
L_026949A0: ; // 0x26949a0
|
|
/* 026949A0 */ _t221 = cpu->r[23] + 0x00000008u;
|
|
/* 026949A0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t221);
|
|
/* 026949A4 */ _t222 = cpu->r[5] + cpu->r[11];
|
|
/* 026949A4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t222);
|
|
L_026949A8: ; // 0x26949a8
|
|
/* 026949A8 */ _t223 = cpu->r[8] + 0x00000000u;
|
|
/* 026949A8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t223);
|
|
/* 026949AC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[27]);
|
|
/* 026949B0 */ _t224 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026949B0 */ _t225 = _t224 & 0x00000001u;
|
|
/* 026949B0 */ if (_t225) goto L_02694C6C; else goto L_026949B4;
|
|
L_026949B4: ; // 0x26949b4
|
|
/* 026949B4 */ cpu->r[11] = cpu->r[11] + 0x00000004u;
|
|
/* 026949B8 */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 026949BC */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 026949BC */ _t226 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 026949BC */ _t227 = _t226 >> (0x00000002u & 31u);
|
|
/* 026949BC */ _t228 = _t227 & 0x00000001u;
|
|
/* 026949BC */ if (_t228) goto L_02694994; else goto L_026949C0;
|
|
L_026949C0: ; // 0x26949c0
|
|
/* 026949C0 */ _t229 = cpu->r[23] + 0x00000004u;
|
|
/* 026949C0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t229);
|
|
/* 026949C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], cpu->r[7]);
|
|
/* 026949C8 */ _t230 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026949C8 */ _t231 = _t230 & 0x00000001u;
|
|
/* 026949C8 */ if (_t231) goto L_026949CC; else goto L_02694C6C;
|
|
L_026949CC: ; // 0x26949cc
|
|
/* 026949CC */ _t232 = cpu->r[23] + 0x0000000Cu;
|
|
/* 026949CC */ cpu->r[29] = rbrew_read32(cpu->mem, _t232);
|
|
/* 026949D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 026949D4 */ _t233 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026949D4 */ _t234 = _t233 & 0x00000001u;
|
|
/* 026949D4 */ if (_t234) goto L_026949E0; else goto L_026949D8;
|
|
L_026949D8: ; // 0x26949d8
|
|
/* 026949D8 */ _t235 = cpu->r[29] + 0x00000000u;
|
|
/* 026949D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t235);
|
|
/* 026949DC */ _t236 = cpu->r[23] + 0x0000000Cu;
|
|
/* 026949DC */ rbrew_write32(cpu->mem, _t236, cpu->r[0]);
|
|
L_026949E0: ; // 0x26949e0
|
|
/* 026949E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 026949E4 */ _t237 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026949E4 */ _t238 = _t237 & 0x00000001u;
|
|
/* 026949E4 */ if (_t238) goto L_026949EC; else goto L_026949E8;
|
|
L_026949E8: ; // 0x26949e8
|
|
/* 026949E8 */ _t239 = cpu->r[29] + 0x00000060u;
|
|
/* 026949E8 */ rbrew_write32(cpu->mem, _t239, cpu->r[20]);
|
|
L_026949EC: ; // 0x26949ec
|
|
/* 026949EC */ _t240 = cpu->r[23] + 0x00000000u;
|
|
/* 026949EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t240);
|
|
/* 026949F0 */ _t241 = cpu->r[23] + 0x00000004u;
|
|
/* 026949F0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t241);
|
|
/* 026949F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], cpu->r[11]);
|
|
/* 026949F8 */ _t242 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026949F8 */ _t243 = _t242 & 0x00000001u;
|
|
/* 026949F8 */ if (_t243) goto L_026949FC; else goto L_02694A14;
|
|
L_026949FC: ; // 0x26949fc
|
|
/* 026949FC */ _t244 = cpu->r[23] + 0x00000008u;
|
|
/* 026949FC */ cpu->r[5] = rbrew_read32(cpu->mem, _t244);
|
|
/* 02694A00 */ cpu->r[4] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02694A04 */ _t245 = cpu->r[4] + cpu->r[5];
|
|
/* 02694A04 */ rbrew_write32(cpu->mem, _t245, cpu->r[29]);
|
|
/* 02694A08 */ _t246 = cpu->r[23] + 0x00000000u;
|
|
/* 02694A08 */ cpu->r[6] = rbrew_read32(cpu->mem, _t246);
|
|
/* 02694A0C */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 02694A10 */ _t247 = cpu->r[23] + 0x00000000u;
|
|
/* 02694A10 */ rbrew_write32(cpu->mem, _t247, cpu->r[6]);
|
|
L_02694A14: ; // 0x2694a14
|
|
/* 02694A14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02694A18 */ _t248 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02694A18 */ _t249 = _t248 & 0x00000001u;
|
|
/* 02694A18 */ if (_t249) goto L_02694C6C; else goto L_02694A1C;
|
|
L_02694A1C: ; // 0x2694a1c
|
|
/* 02694A1C */ _t250 = cpu->r[29] + 0x00000000u;
|
|
/* 02694A1C */ rbrew_write32(cpu->mem, _t250, cpu->r[27]);
|
|
/* 02694A20 */ _t251 = cpu->r[27] + 0x00000244u;
|
|
/* 02694A20 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t251);
|
|
/* 02694A24 */ _t252 = cpu->r[29] + 0x00000014u;
|
|
/* 02694A24 */ rbrew_write_f32(cpu->mem, _t252, cpu->f[10]);
|
|
/* 02694A28 */ _t253 = cpu->r[27] + 0x00000248u;
|
|
/* 02694A28 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t253);
|
|
/* 02694A2C */ _t254 = cpu->r[29] + 0x00000018u;
|
|
/* 02694A2C */ rbrew_write_f32(cpu->mem, _t254, cpu->f[11]);
|
|
/* 02694A30 */ _t255 = cpu->r[27] + 0x0000024Cu;
|
|
/* 02694A30 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t255);
|
|
/* 02694A34 */ _t256 = cpu->r[29] + 0x0000001Cu;
|
|
/* 02694A34 */ rbrew_write_f32(cpu->mem, _t256, cpu->f[12]);
|
|
/* 02694A38 */ _t257 = cpu->r[27] + 0x00000300u;
|
|
/* 02694A38 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t257);
|
|
/* 02694A3C */ _t258 = cpu->r[29] + 0x00000038u;
|
|
/* 02694A3C */ rbrew_write_f32(cpu->mem, _t258, cpu->f[13]);
|
|
/* 02694A40 */ _t259 = cpu->r[27] + 0x00000304u;
|
|
/* 02694A40 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t259);
|
|
/* 02694A44 */ _t260 = cpu->r[29] + 0x0000003Cu;
|
|
/* 02694A44 */ rbrew_write_f32(cpu->mem, _t260, cpu->f[0]);
|
|
/* 02694A48 */ _t261 = cpu->r[27] + 0x00000308u;
|
|
/* 02694A48 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t261);
|
|
/* 02694A4C */ _t262 = cpu->r[29] + 0x00000040u;
|
|
/* 02694A4C */ rbrew_write_f32(cpu->mem, _t262, cpu->f[6]);
|
|
/* 02694A50 */ _t263 = cpu->r[27] + 0x00000198u;
|
|
/* 02694A50 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t263);
|
|
/* 02694A54 */ _t264 = cpu->r[29] + 0x00000004u;
|
|
/* 02694A54 */ rbrew_write_f32(cpu->mem, _t264, cpu->f[8]);
|
|
/* 02694A58 */ _t265 = cpu->r[27] + 0x0000019Cu;
|
|
/* 02694A58 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t265);
|
|
/* 02694A5C */ _t266 = cpu->r[29] + 0x00000008u;
|
|
/* 02694A5C */ rbrew_write_f32(cpu->mem, _t266, cpu->f[9]);
|
|
/* 02694A60 */ _t267 = cpu->r[27] + 0x000001A0u;
|
|
/* 02694A60 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t267);
|
|
/* 02694A64 */ _t268 = cpu->r[29] + 0x0000005Cu;
|
|
/* 02694A64 */ rbrew_write_f32(cpu->mem, _t268, cpu->f[31]);
|
|
/* 02694A68 */ _t269 = cpu->r[29] + 0x00000058u;
|
|
/* 02694A68 */ rbrew_write_f32(cpu->mem, _t269, cpu->f[31]);
|
|
/* 02694A6C */ _t270 = cpu->r[29] + 0x0000000Cu;
|
|
/* 02694A6C */ rbrew_write_f32(cpu->mem, _t270, cpu->f[10]);
|
|
/* 02694A70 */ cpu->f[0] = cpu->f[10] * cpu->f[10];
|
|
/* 02694A74 */ _t271 = cpu->r[29] + 0x00000054u;
|
|
/* 02694A74 */ rbrew_write8(cpu->mem, _t271, (uint8_t)cpu->r[20]);
|
|
/* 02694A78 */ _t272 = cpu->r[19] + 0x00000000u;
|
|
/* 02694A78 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t272);
|
|
/* 02694A7C */ _t273 = cpu->r[29] + 0x00000044u;
|
|
/* 02694A7C */ rbrew_write_f32(cpu->mem, _t273, cpu->f[11]);
|
|
/* 02694A80 */ _t274 = cpu->r[19] + 0x00000004u;
|
|
/* 02694A80 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t274);
|
|
/* 02694A84 */ cpu->f[6] = fma(cpu->f[8], cpu->f[8], cpu->f[0]);
|
|
/* 02694A88 */ _t275 = cpu->r[29] + 0x00000048u;
|
|
/* 02694A88 */ rbrew_write_f32(cpu->mem, _t275, cpu->f[12]);
|
|
/* 02694A8C */ _t276 = cpu->r[19] + 0x00000008u;
|
|
/* 02694A8C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t276);
|
|
/* 02694A90 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[6], cpu->f[29]);
|
|
/* 02694A94 */ _t277 = cpu->r[29] + 0x00000050u;
|
|
/* 02694A94 */ rbrew_write_f32(cpu->mem, _t277, cpu->f[31]);
|
|
/* 02694A98 */ _t278 = cpu->r[29] + 0x0000004Cu;
|
|
/* 02694A98 */ rbrew_write_f32(cpu->mem, _t278, cpu->f[13]);
|
|
/* 02694A9C */ _t279 = cpu->r[29] + 0x00000010u;
|
|
/* 02694A9C */ rbrew_write_f32(cpu->mem, _t279, cpu->f[31]);
|
|
/* 02694AA0 */ _t280 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02694AA0 */ _t281 = _t280 & 0x00000001u;
|
|
/* 02694AA0 */ if (_t281) goto L_02694AA4; else goto L_02694B68;
|
|
L_02694AA4: ; // 0x2694aa4
|
|
/* 02694AA4 */ _t282 = cpu->r[28] + 0x00000008u;
|
|
/* 02694AA4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t282);
|
|
/* 02694AA8 */ /* nop */
|
|
/* 02694AAC */ /* nop */
|
|
/* 02694AB0 */ /* nop */
|
|
/* 02694AB4 */ /* nop */
|
|
/* 02694AB8 */ _t283 = cpu->r[29] + 0x0000001Cu;
|
|
/* 02694AB8 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t283);
|
|
/* 02694ABC */ _t284 = cpu->r[8] + 0x000000BCu;
|
|
/* 02694ABC */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t284);
|
|
/* 02694AC0 */ _t285 = cpu->r[1] + 0x00000080u;
|
|
/* 02694AC0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t285);
|
|
/* 02694AC4 */ cpu->f[13] = cpu->f[6] - cpu->f[7];
|
|
/* 02694AC8 */ _t286 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02694AC8 */ rbrew_write32(cpu->mem, _t286, cpu->r[0]);
|
|
/* 02694ACC */ _t287 = cpu->r[1] + 0x00000088u;
|
|
/* 02694ACC */ rbrew_write_f32(cpu->mem, _t287, cpu->f[13]);
|
|
/* 02694AD0 */ _t288 = cpu->r[1] + 0x00000088u;
|
|
/* 02694AD0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t288);
|
|
/* 02694AD4 */ _t289 = cpu->r[1] + 0x00000034u;
|
|
/* 02694AD4 */ rbrew_write32(cpu->mem, _t289, cpu->r[0]);
|
|
/* 02694AD8 */ _t290 = cpu->r[1] + 0x00000034u;
|
|
/* 02694AD8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t290);
|
|
/* 02694ADC */ _t291 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02694ADC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t291);
|
|
/* 02694AE0 */ cpu->f[11] = cpu->f[13] * cpu->f[13];
|
|
/* 02694AE4 */ cpu->f[0] = fma(cpu->f[10], cpu->f[10], cpu->f[11]);
|
|
/* 02694AE8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[29]);
|
|
/* 02694AEC */ _t292 = cpu->r[1] + 0x00000030u;
|
|
/* 02694AEC */ rbrew_write_f32(cpu->mem, _t292, cpu->f[31]);
|
|
/* 02694AF0 */ _t293 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02694AF0 */ _t294 = _t293 & 0x00000001u;
|
|
/* 02694AF0 */ if (_t294) goto L_02694AF4; else goto L_02694B68;
|
|
L_02694AF4: ; // 0x2694af4
|
|
/* 02694AF4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[31]);
|
|
/* 02694AF8 */ _t295 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02694AF8 */ _t296 = _t295 & 0x00000001u;
|
|
/* 02694AF8 */ if (_t296) goto L_02694B1C; else goto L_02694AFC;
|
|
L_02694AFC: ; // 0x2694afc
|
|
/* 02694AFC */ /* nop */
|
|
/* 02694B00 */ /* nop */
|
|
/* 02694B04 */ /* nop */
|
|
/* 02694B08 */ /* nop */
|
|
/* 02694B0C */ _t297 = cpu->r[29] + 0x0000000Cu;
|
|
/* 02694B0C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t297);
|
|
/* 02694B10 */ cpu->f[7] = fma(cpu->f[12], cpu->f[13], cpu->f[10]);
|
|
/* 02694B14 */ _t298 = cpu->r[29] + 0x00000010u;
|
|
/* 02694B14 */ rbrew_write_f32(cpu->mem, _t298, cpu->f[7]);
|
|
/* 02694B18 */ goto L_02694B68;
|
|
L_02694B1C: ; // 0x2694b1c
|
|
/* 02694B1C */ cpu->r[4] = 0x100E0000u;
|
|
/* 02694B20 */ _t299 = cpu->r[4] + 0x00003BB8u;
|
|
/* 02694B20 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t299);
|
|
/* 02694B24 */ _ft300 = sqrt(cpu->f[0]);
|
|
/* 02694B24 */ _ft301 = (double)(int32_t)0x00000001u;
|
|
/* 02694B24 */ cpu->f[24] = _ft301 / _ft300;
|
|
/* 02694B28 */ cpu->f[25] = cpu->f[24] * cpu->f[24];
|
|
/* 02694B2C */ cpu->f[23] = cpu->f[24] * cpu->f[28];
|
|
/* 02694B30 */ cpu->f[25] = -fma(cpu->f[25], cpu->f[0], -(cpu->f[9]));
|
|
/* 02694B34 */ cpu->f[24] = cpu->f[25] * cpu->f[23];
|
|
/* 02694B38 */ _t302 = cpu->r[1] + 0x00000034u;
|
|
/* 02694B38 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t302);
|
|
/* 02694B3C */ /* nop */
|
|
/* 02694B40 */ cpu->f[13] = cpu->f[7] * cpu->f[24];
|
|
/* 02694B44 */ /* nop */
|
|
/* 02694B48 */ /* nop */
|
|
/* 02694B4C */ _t303 = cpu->r[1] + 0x00000034u;
|
|
/* 02694B4C */ rbrew_write_f32(cpu->mem, _t303, cpu->f[13]);
|
|
/* 02694B50 */ /* nop */
|
|
/* 02694B54 */ /* nop */
|
|
/* 02694B58 */ /* nop */
|
|
/* 02694B5C */ _t304 = cpu->r[29] + 0x0000000Cu;
|
|
/* 02694B5C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t304);
|
|
/* 02694B60 */ cpu->f[7] = fma(cpu->f[12], cpu->f[13], cpu->f[10]);
|
|
/* 02694B64 */ _t305 = cpu->r[29] + 0x00000010u;
|
|
/* 02694B64 */ rbrew_write_f32(cpu->mem, _t305, cpu->f[7]);
|
|
L_02694B68: ; // 0x2694b68
|
|
/* 02694B68 */ _t306 = cpu->r[29] + 0x00000060u;
|
|
/* 02694B68 */ rbrew_write32(cpu->mem, _t306, cpu->r[20]);
|
|
/* 02694B6C */ cpu->r[3] = cpu->r[27];
|
|
/* 02694B70 */ _t307 = cpu->r[29] + 0x00000060u;
|
|
/* 02694B70 */ cpu->r[0] = rbrew_read32(cpu->mem, _t307);
|
|
/* 02694B74 */ Gambit_fn_025C3110(cpu);
|
|
/* 02694B78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02694B7C */ _t308 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02694B7C */ _t309 = _t308 & 0x00000001u;
|
|
/* 02694B7C */ if (_t309) goto L_02694B88; else goto L_02694B80;
|
|
L_02694B80: ; // 0x2694b80
|
|
/* 02694B80 */ _t310 = cpu->r[29] + 0x00000060u;
|
|
/* 02694B80 */ rbrew_write32(cpu->mem, _t310, cpu->r[22]);
|
|
/* 02694B84 */ _t311 = cpu->r[29] + 0x00000060u;
|
|
/* 02694B84 */ cpu->r[4] = rbrew_read32(cpu->mem, _t311);
|
|
L_02694B88: ; // 0x2694b88
|
|
/* 02694B88 */ cpu->r[3] = cpu->r[27];
|
|
/* 02694B8C */ Gambit_fn_025C5DA4(cpu);
|
|
/* 02694B90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02694B94 */ _t312 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02694B94 */ _t313 = _t312 & 0x00000001u;
|
|
/* 02694B94 */ if (_t313) goto L_02694BB8; else goto L_02694B98;
|
|
L_02694B98: ; // 0x2694b98
|
|
/* 02694B98 */ _t314 = cpu->r[29] + 0x00000060u;
|
|
/* 02694B98 */ rbrew_write32(cpu->mem, _t314, cpu->r[24]);
|
|
/* 02694B9C */ _t315 = cpu->r[27] + 0x0000069Cu;
|
|
/* 02694B9C */ cpu->r[3] = rbrew_read32(cpu->mem, _t315);
|
|
/* 02694BA0 */ _t316 = cpu->r[29] + 0x00000060u;
|
|
/* 02694BA0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t316);
|
|
/* 02694BA4 */ Gambit_fn_0263041C(cpu);
|
|
/* 02694BA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02694BAC */ _t317 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02694BAC */ _t318 = _t317 & 0x00000001u;
|
|
/* 02694BAC */ if (_t318) goto L_02694BB8; else goto L_02694BB0;
|
|
L_02694BB0: ; // 0x2694bb0
|
|
/* 02694BB0 */ _t319 = cpu->r[29] + 0x00000060u;
|
|
/* 02694BB0 */ rbrew_write32(cpu->mem, _t319, cpu->r[25]);
|
|
/* 02694BB4 */ _t320 = cpu->r[29] + 0x00000060u;
|
|
/* 02694BB4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t320);
|
|
L_02694BB8: ; // 0x2694bb8
|
|
/* 02694BB8 */ _t321 = cpu->r[29] + 0x00000000u;
|
|
/* 02694BB8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t321);
|
|
/* 02694BBC */ cpu->r[3] = cpu->r[1] + 0x000000ECu;
|
|
/* 02694BC0 */ Gambit_fn_028300A4(cpu);
|
|
/* 02694BC4 */ cpu->r[3] = cpu->r[1] + 0x000000ECu;
|
|
/* 02694BC8 */ Gambit_fn_02830138(cpu);
|
|
/* 02694BCC */ cpu->r[5] = rbrew_rlwinm(cpu->r[3], 0x00000017u, 0x00000009u, 0x0000001Fu);
|
|
/* 02694BD0 */ cpu->r[0] = cpu->r[5] | 0x3F800000u;
|
|
/* 02694BD4 */ _t322 = cpu->r[1] + 0x000000A4u;
|
|
/* 02694BD4 */ rbrew_write32(cpu->mem, _t322, cpu->r[0]);
|
|
/* 02694BD8 */ _t323 = cpu->r[21] + 0x00000000u;
|
|
/* 02694BD8 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t323);
|
|
/* 02694BDC */ cpu->f[6] = cpu->f[9] - cpu->f[26];
|
|
/* 02694BE0 */ cpu->f[22] = cpu->f[6] * cpu->f[27];
|
|
/* 02694BE4 */ cpu->f[1] = cpu->f[22];
|
|
/* 02694BE8 */ Gambit_fn_02C886F8(cpu);
|
|
/* 02694BEC */ cpu->f[21] = cpu->f[1];
|
|
/* 02694BF0 */ cpu->f[1] = cpu->f[22];
|
|
/* 02694BF4 */ Gambit_fn_02C88F2C(cpu);
|
|
/* 02694BF8 */ _t324 = cpu->r[1] + 0x00000044u;
|
|
/* 02694BF8 */ rbrew_write_f32(cpu->mem, _t324, cpu->f[21]);
|
|
/* 02694BFC */ _t325 = cpu->r[28] + 0x00000008u;
|
|
/* 02694BFC */ cpu->r[10] = rbrew_read32(cpu->mem, _t325);
|
|
/* 02694C00 */ _t326 = cpu->r[1] + 0x00000048u;
|
|
/* 02694C00 */ rbrew_write_f32(cpu->mem, _t326, cpu->f[31]);
|
|
/* 02694C04 */ _t327 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02694C04 */ rbrew_write_f32(cpu->mem, _t327, cpu->f[1]);
|
|
/* 02694C08 */ _t328 = cpu->r[10] + 0x00000748u;
|
|
/* 02694C08 */ cpu->r[9] = rbrew_read32(cpu->mem, _t328);
|
|
/* 02694C0C */ /* nop */
|
|
/* 02694C10 */ _t329 = cpu->r[9] + 0x0000049Cu;
|
|
/* 02694C10 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t329);
|
|
/* 02694C14 */ /* nop */
|
|
/* 02694C18 */ /* nop */
|
|
/* 02694C1C */ _t330 = cpu->r[1] + 0x00000090u;
|
|
/* 02694C1C */ cpu->r[7] = rbrew_read32(cpu->mem, _t330);
|
|
/* 02694C20 */ cpu->f[9] = cpu->f[1] * cpu->f[9];
|
|
/* 02694C24 */ _t331 = cpu->r[1] + 0x0000008Cu;
|
|
/* 02694C24 */ cpu->r[5] = rbrew_read32(cpu->mem, _t331);
|
|
/* 02694C28 */ _t332 = cpu->r[1] + 0x0000009Cu;
|
|
/* 02694C28 */ rbrew_write32(cpu->mem, _t332, cpu->r[7]);
|
|
/* 02694C2C */ _t333 = cpu->r[1] + 0x00000094u;
|
|
/* 02694C2C */ rbrew_write_f32(cpu->mem, _t333, cpu->f[9]);
|
|
/* 02694C30 */ _t334 = cpu->r[1] + 0x00000094u;
|
|
/* 02694C30 */ cpu->r[8] = rbrew_read32(cpu->mem, _t334);
|
|
/* 02694C34 */ _t335 = cpu->r[1] + 0x00000098u;
|
|
/* 02694C34 */ rbrew_write32(cpu->mem, _t335, cpu->r[5]);
|
|
/* 02694C38 */ _t336 = cpu->r[1] + 0x00000098u;
|
|
/* 02694C38 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t336);
|
|
/* 02694C3C */ _t337 = cpu->r[1] + 0x000000A0u;
|
|
/* 02694C3C */ rbrew_write32(cpu->mem, _t337, cpu->r[8]);
|
|
/* 02694C40 */ _t338 = cpu->r[29] + 0x00000014u;
|
|
/* 02694C40 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t338);
|
|
/* 02694C44 */ _t339 = cpu->r[29] + 0x00000020u;
|
|
/* 02694C44 */ rbrew_write_f32(cpu->mem, _t339, cpu->f[13]);
|
|
/* 02694C48 */ _t340 = cpu->r[1] + 0x0000009Cu;
|
|
/* 02694C48 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t340);
|
|
/* 02694C4C */ _t341 = cpu->r[29] + 0x0000001Cu;
|
|
/* 02694C4C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t341);
|
|
/* 02694C50 */ _t342 = cpu->r[29] + 0x00000024u;
|
|
/* 02694C50 */ rbrew_write_f32(cpu->mem, _t342, cpu->f[0]);
|
|
/* 02694C54 */ _t343 = cpu->r[1] + 0x000000A0u;
|
|
/* 02694C54 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t343);
|
|
/* 02694C58 */ _t344 = cpu->r[29] + 0x00000034u;
|
|
/* 02694C58 */ rbrew_write_f32(cpu->mem, _t344, cpu->f[10]);
|
|
/* 02694C5C */ _t345 = cpu->r[29] + 0x00000028u;
|
|
/* 02694C5C */ rbrew_write_f32(cpu->mem, _t345, cpu->f[6]);
|
|
/* 02694C60 */ _t346 = cpu->r[29] + 0x00000018u;
|
|
/* 02694C60 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t346);
|
|
/* 02694C64 */ _t347 = cpu->r[29] + 0x0000002Cu;
|
|
/* 02694C64 */ rbrew_write_f32(cpu->mem, _t347, cpu->f[7]);
|
|
/* 02694C68 */ _t348 = cpu->r[29] + 0x00000030u;
|
|
/* 02694C68 */ rbrew_write_f32(cpu->mem, _t348, cpu->f[9]);
|
|
L_02694C6C: ; // 0x2694c6c
|
|
/* 02694C6C */ cpu->r[30] = cpu->r[30] + 0xFFFFFFFFu;
|
|
/* 02694C6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02694C70 */ cpu->r[26] = cpu->r[26] + 0x00000001u;
|
|
/* 02694C74 */ _t349 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02694C74 */ _t350 = _t349 & 0x00000001u;
|
|
/* 02694C74 */ if (_t350) goto L_02694C78; else goto L_026948DC;
|
|
L_02694C78: ; // 0x2694c78
|
|
/* 02694C78 */ /* nop */
|
|
/* 02694C7C */ _t351 = cpu->r[1] + 0x00000188u;
|
|
/* 02694C7C */ cpu->f[26] = rbrew_read_f32(cpu->mem, _t351);
|
|
/* 02694C80 */ _t352 = cpu->r[1] + 0x00000168u;
|
|
/* 02694C80 */ cpu->f[24] = rbrew_read_f32(cpu->mem, _t352);
|
|
/* 02694C84 */ _t353 = cpu->r[1] + 0x00000180u;
|
|
/* 02694C84 */ cpu->f[26] = rbrew_read_f64(cpu->mem, _t353);
|
|
/* 02694C88 */ _t354 = cpu->r[1] + 0x00000158u;
|
|
/* 02694C88 */ cpu->f[23] = rbrew_read_f32(cpu->mem, _t354);
|
|
/* 02694C8C */ _t355 = cpu->r[1] + 0x00000160u;
|
|
/* 02694C8C */ cpu->f[24] = rbrew_read_f64(cpu->mem, _t355);
|
|
/* 02694C90 */ _t356 = cpu->r[1] + 0x00000150u;
|
|
/* 02694C90 */ cpu->f[23] = rbrew_read_f64(cpu->mem, _t356);
|
|
/* 02694C94 */ _t357 = cpu->r[1] + 0x000001A8u;
|
|
/* 02694C94 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t357);
|
|
/* 02694C98 */ _t358 = cpu->r[1] + 0x00000178u;
|
|
/* 02694C98 */ cpu->f[25] = rbrew_read_f32(cpu->mem, _t358);
|
|
/* 02694C9C */ _t359 = cpu->r[1] + 0x000001A0u;
|
|
/* 02694C9C */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t359);
|
|
/* 02694CA0 */ _t360 = cpu->r[1] + 0x00000170u;
|
|
/* 02694CA0 */ cpu->f[25] = rbrew_read_f64(cpu->mem, _t360);
|
|
/* 02694CA4 */ _t361 = cpu->r[1] + 0x000001C8u;
|
|
/* 02694CA4 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t361);
|
|
/* 02694CA8 */ _t362 = cpu->r[1] + 0x00000198u;
|
|
/* 02694CA8 */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t362);
|
|
/* 02694CAC */ _t363 = cpu->r[1] + 0x000001C0u;
|
|
/* 02694CAC */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t363);
|
|
/* 02694CB0 */ _t364 = cpu->r[1] + 0x00000190u;
|
|
/* 02694CB0 */ cpu->f[27] = rbrew_read_f64(cpu->mem, _t364);
|
|
/* 02694CB4 */ _t365 = cpu->r[1] + 0x00000148u;
|
|
/* 02694CB4 */ cpu->f[22] = rbrew_read_f32(cpu->mem, _t365);
|
|
/* 02694CB8 */ _t366 = cpu->r[1] + 0x000001B8u;
|
|
/* 02694CB8 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t366);
|
|
/* 02694CBC */ _t367 = cpu->r[1] + 0x00000140u;
|
|
/* 02694CBC */ cpu->f[22] = rbrew_read_f64(cpu->mem, _t367);
|
|
/* 02694CC0 */ _t368 = cpu->r[1] + 0x000001B0u;
|
|
/* 02694CC0 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t368);
|
|
/* 02694CC4 */ _t369 = cpu->r[1] + 0x00000138u;
|
|
/* 02694CC4 */ cpu->f[21] = rbrew_read_f32(cpu->mem, _t369);
|
|
/* 02694CC8 */ _t370 = cpu->r[1] + 0x000001D8u;
|
|
/* 02694CC8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t370);
|
|
/* 02694CCC */ _t371 = cpu->r[1] + 0x00000130u;
|
|
/* 02694CCC */ cpu->f[21] = rbrew_read_f64(cpu->mem, _t371);
|
|
/* 02694CD0 */ _t372 = cpu->r[1] + 0x000001D0u;
|
|
/* 02694CD0 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t372);
|
|
/* 02694CD4 */ _t373 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02694CD4 */ _t374 = _t373 & 0x00000001u;
|
|
/* 02694CD4 */ if (_t374) goto L_02694CD8; // else: addr-0 trap, fall-through
|
|
L_02694CD8: ; // 0x2694cd8
|
|
/* 02694CD8 */ _t375 = cpu->r[1] + 0x000001E4u;
|
|
/* 02694CD8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t375);
|
|
/* 02694CDC */ cpu->lr = cpu->r[0];
|
|
/* 02694CE0 */ cpu->r[1] = cpu->r[1] + 0x000001E0u;
|
|
/* 02694CE4 */ return;
|
|
}
|
|
|
|
// fn_02694CE8 @ 0x2694ce8
|
|
void Gambit_fn_02694CE8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76;
|
|
double _ft60, _ft61;
|
|
|
|
L_02694CE8: ; // 0x2694ce8
|
|
/* 02694CE8 */ cpu->r[0] = cpu->lr;
|
|
/* 02694CEC */ _t0 = cpu->r[1] + 0xFFFFFF60u;
|
|
/* 02694CEC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02694CEC */ cpu->r[1] = _t0;
|
|
/* 02694CF0 */ _t1 = cpu->r[1] + 0x0000009Cu;
|
|
/* 02694CF0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02694CF4 */ _t2 = cpu->r[1] + 0x00000098u;
|
|
/* 02694CF4 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02694CF8 */ cpu->r[30] = cpu->r[3];
|
|
/* 02694CFC */ cpu->r[3] = cpu->r[1] + 0x00000060u;
|
|
/* 02694D00 */ cpu->r[31] = cpu->r[4];
|
|
/* 02694D04 */ _t3 = cpu->r[1] + 0x000000A4u;
|
|
/* 02694D04 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02694D08 */ Gambit_fn_02043AC4(cpu);
|
|
/* 02694D0C */ cpu->r[10] = 0x100E0000u;
|
|
/* 02694D10 */ _t4 = cpu->r[10] + 0x00003BACu;
|
|
/* 02694D10 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 02694D14 */ cpu->r[10] = 0x101F0000u;
|
|
/* 02694D18 */ cpu->r[10] = cpu->r[10] + 0x00006350u;
|
|
/* 02694D1C */ /* nop */
|
|
/* 02694D20 */ _t5 = cpu->r[30] + 0x00000008u;
|
|
/* 02694D20 */ cpu->r[9] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02694D24 */ /* nop */
|
|
/* 02694D28 */ /* nop */
|
|
/* 02694D2C */ _t6 = cpu->r[1] + 0x00000024u;
|
|
/* 02694D2C */ cpu->r[7] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02694D30 */ _t7 = cpu->r[10] + 0x00000008u;
|
|
/* 02694D30 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 02694D34 */ _t8 = cpu->r[1] + 0x00000028u;
|
|
/* 02694D34 */ cpu->r[8] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02694D38 */ cpu->f[11] = cpu->f[8] * cpu->f[9];
|
|
/* 02694D3C */ _t9 = cpu->r[1] + 0x00000070u;
|
|
/* 02694D3C */ rbrew_write32(cpu->mem, _t9, cpu->r[7]);
|
|
/* 02694D40 */ _t10 = cpu->r[1] + 0x00000074u;
|
|
/* 02694D40 */ rbrew_write32(cpu->mem, _t10, cpu->r[8]);
|
|
/* 02694D44 */ _t11 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02694D44 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[11]);
|
|
/* 02694D48 */ _t12 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02694D48 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02694D4C */ /* nop */
|
|
/* 02694D50 */ _t13 = cpu->r[1] + 0x00000078u;
|
|
/* 02694D50 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02694D54 */ /* nop */
|
|
/* 02694D58 */ /* nop */
|
|
/* 02694D5C */ /* nop */
|
|
/* 02694D60 */ _t14 = cpu->r[9] + 0x000000BCu;
|
|
/* 02694D60 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 02694D64 */ _t15 = cpu->r[1] + 0x00000078u;
|
|
/* 02694D64 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 02694D68 */ _t16 = cpu->r[1] + 0x00000030u;
|
|
/* 02694D68 */ cpu->r[9] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02694D6C */ cpu->f[8] = cpu->f[9] + cpu->f[10];
|
|
/* 02694D70 */ _t17 = cpu->r[1] + 0x00000044u;
|
|
/* 02694D70 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[11]);
|
|
/* 02694D74 */ _t18 = cpu->r[1] + 0x00000044u;
|
|
/* 02694D74 */ cpu->r[8] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02694D78 */ _t19 = cpu->r[1] + 0x00000038u;
|
|
/* 02694D78 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[8]);
|
|
/* 02694D7C */ _t20 = cpu->r[1] + 0x00000038u;
|
|
/* 02694D7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02694D80 */ /* nop */
|
|
/* 02694D84 */ _t21 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02694D84 */ cpu->r[6] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02694D88 */ _t22 = cpu->r[1] + 0x00000084u;
|
|
/* 02694D88 */ rbrew_write32(cpu->mem, _t22, cpu->r[8]);
|
|
/* 02694D8C */ _t23 = cpu->r[1] + 0x00000084u;
|
|
/* 02694D8C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 02694D90 */ _t24 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02694D90 */ rbrew_write32(cpu->mem, _t24, cpu->r[6]);
|
|
/* 02694D94 */ _t25 = cpu->r[1] + 0x00000040u;
|
|
/* 02694D94 */ cpu->r[7] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02694D98 */ _t26 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02694D98 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 02694D9C */ _t27 = cpu->r[1] + 0x00000080u;
|
|
/* 02694D9C */ rbrew_write32(cpu->mem, _t27, cpu->r[7]);
|
|
/* 02694DA0 */ /* nop */
|
|
/* 02694DA4 */ cpu->f[0] = cpu->f[0] + cpu->f[8];
|
|
/* 02694DA8 */ /* nop */
|
|
/* 02694DAC */ _t28 = cpu->r[1] + 0x00000020u;
|
|
/* 02694DAC */ rbrew_write32(cpu->mem, _t28, cpu->r[0]);
|
|
/* 02694DB0 */ /* nop */
|
|
/* 02694DB4 */ _t29 = cpu->r[1] + 0x00000050u;
|
|
/* 02694DB4 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[0]);
|
|
/* 02694DB8 */ _t30 = cpu->r[1] + 0x00000050u;
|
|
/* 02694DB8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02694DBC */ /* nop */
|
|
/* 02694DC0 */ _t31 = cpu->r[1] + 0x00000048u;
|
|
/* 02694DC0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02694DC4 */ _t32 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02694DC4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02694DC8 */ _t33 = cpu->r[1] + 0x00000088u;
|
|
/* 02694DC8 */ rbrew_write32(cpu->mem, _t33, cpu->r[11]);
|
|
/* 02694DCC */ _t34 = cpu->r[1] + 0x00000034u;
|
|
/* 02694DCC */ cpu->r[10] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02694DD0 */ _t35 = cpu->r[1] + 0x0000008Cu;
|
|
/* 02694DD0 */ rbrew_write32(cpu->mem, _t35, cpu->r[12]);
|
|
/* 02694DD4 */ /* nop */
|
|
/* 02694DD8 */ _t36 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02694DD8 */ rbrew_write32(cpu->mem, _t36, cpu->r[10]);
|
|
/* 02694DDC */ _t37 = cpu->r[1] + 0x00000018u;
|
|
/* 02694DDC */ rbrew_write32(cpu->mem, _t37, cpu->r[9]);
|
|
/* 02694DE0 */ /* nop */
|
|
/* 02694DE4 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02694DE8 */ _t38 = cpu->r[1] + 0x00000090u;
|
|
/* 02694DE8 */ rbrew_write32(cpu->mem, _t38, cpu->r[0]);
|
|
/* 02694DEC */ _t39 = cpu->r[1] + 0x00000090u;
|
|
/* 02694DEC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 02694DF0 */ /* nop */
|
|
/* 02694DF4 */ _t40 = cpu->r[1] + 0x00000020u;
|
|
/* 02694DF4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 02694DF8 */ /* nop */
|
|
/* 02694DFC */ _t41 = cpu->r[1] + 0x00000054u;
|
|
/* 02694DFC */ cpu->r[7] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02694E00 */ cpu->f[8] = cpu->f[9] - cpu->f[10];
|
|
/* 02694E04 */ _t42 = cpu->r[1] + 0x00000058u;
|
|
/* 02694E04 */ cpu->r[9] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02694E08 */ _t43 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02694E08 */ rbrew_write32(cpu->mem, _t43, cpu->r[7]);
|
|
/* 02694E0C */ _t44 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02694E0C */ rbrew_write_f32(cpu->mem, _t44, cpu->f[8]);
|
|
/* 02694E10 */ _t45 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02694E10 */ cpu->r[0] = rbrew_read32(cpu->mem, _t45);
|
|
/* 02694E14 */ _t46 = cpu->r[1] + 0x00000010u;
|
|
/* 02694E14 */ rbrew_write32(cpu->mem, _t46, cpu->r[9]);
|
|
/* 02694E18 */ _t47 = cpu->r[1] + 0x00000014u;
|
|
/* 02694E18 */ rbrew_write32(cpu->mem, _t47, cpu->r[0]);
|
|
/* 02694E1C */ Gambit_fn_02C69350(cpu);
|
|
/* 02694E20 */ cpu->r[8] = 0x100E0000u;
|
|
/* 02694E24 */ _t48 = cpu->r[8] + 0x00003BB0u;
|
|
/* 02694E24 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 02694E28 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[10]);
|
|
/* 02694E2C */ _t49 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02694E2C */ _t50 = _t49 & 0x00000001u;
|
|
/* 02694E2C */ if (_t50) goto L_02694E30; else goto L_02694E3C;
|
|
L_02694E30: ; // 0x2694e30
|
|
/* 02694E30 */ cpu->r[8] = 0x00000000u;
|
|
/* 02694E34 */ _t51 = cpu->r[31] + 0x00000054u;
|
|
/* 02694E34 */ rbrew_write8(cpu->mem, _t51, (uint8_t)cpu->r[8]);
|
|
/* 02694E38 */ goto L_02694F28;
|
|
L_02694E3C: ; // 0x2694e3c
|
|
/* 02694E3C */ _t52 = cpu->r[1] + 0x00000010u;
|
|
/* 02694E3C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 02694E40 */ _t53 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02694E40 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t53);
|
|
/* 02694E44 */ cpu->f[8] = cpu->f[12] * cpu->f[12];
|
|
/* 02694E48 */ cpu->f[9] = fma(cpu->f[0], cpu->f[0], cpu->f[8]);
|
|
/* 02694E4C */ _t54 = cpu->r[1] + 0x00000014u;
|
|
/* 02694E4C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 02694E50 */ cpu->r[7] = 0x100E0000u;
|
|
/* 02694E54 */ cpu->f[8] = fma(cpu->f[13], cpu->f[13], cpu->f[9]);
|
|
/* 02694E58 */ _t55 = cpu->r[7] + 0x00003BA8u;
|
|
/* 02694E58 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 02694E5C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[12]);
|
|
/* 02694E60 */ _t56 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02694E60 */ _t57 = _t56 & 0x00000001u;
|
|
/* 02694E60 */ if (_t57) goto L_02694E64; else goto L_02694EA0;
|
|
L_02694E64: ; // 0x2694e64
|
|
/* 02694E64 */ cpu->r[5] = 0x100E0000u;
|
|
/* 02694E68 */ cpu->r[12] = 0x100E0000u;
|
|
/* 02694E6C */ _t58 = cpu->r[5] + 0x00003BB4u;
|
|
/* 02694E6C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 02694E70 */ _t59 = cpu->r[12] + 0x00003BB8u;
|
|
/* 02694E70 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t59);
|
|
/* 02694E74 */ _ft60 = sqrt(cpu->f[8]);
|
|
/* 02694E74 */ _ft61 = (double)(int32_t)0x00000001u;
|
|
/* 02694E74 */ cpu->f[9] = _ft61 / _ft60;
|
|
/* 02694E78 */ cpu->f[10] = cpu->f[9] * cpu->f[9];
|
|
/* 02694E7C */ cpu->f[11] = cpu->f[9] * cpu->f[13];
|
|
/* 02694E80 */ cpu->f[10] = -fma(cpu->f[10], cpu->f[8], -(cpu->f[0]));
|
|
/* 02694E84 */ cpu->f[9] = cpu->f[10] * cpu->f[11];
|
|
/* 02694E88 */ _t62 = cpu->r[1] + 0x00000014u;
|
|
/* 02694E88 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 02694E8C */ /* nop */
|
|
/* 02694E90 */ cpu->f[13] = cpu->f[13] * cpu->f[9];
|
|
/* 02694E94 */ /* nop */
|
|
/* 02694E98 */ _t63 = cpu->r[1] + 0x00000014u;
|
|
/* 02694E98 */ rbrew_write_f32(cpu->mem, _t63, cpu->f[13]);
|
|
/* 02694E9C */ /* nop */
|
|
L_02694EA0: ; // 0x2694ea0
|
|
/* 02694EA0 */ cpu->r[11] = 0x101E0000u;
|
|
/* 02694EA4 */ cpu->r[9] = 0x100E0000u;
|
|
/* 02694EA8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[12]);
|
|
/* 02694EAC */ _t64 = cpu->r[11] + 0xFFFF958Cu;
|
|
/* 02694EAC */ cpu->f[2] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 02694EB0 */ cpu->r[12] = 0x101C0000u;
|
|
/* 02694EB4 */ _t65 = cpu->r[9] + 0x00003BC4u;
|
|
/* 02694EB4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t65);
|
|
/* 02694EB8 */ _t66 = cpu->r[12] + 0x00001EF8u;
|
|
/* 02694EB8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t66);
|
|
/* 02694EBC */ _t67 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02694EBC */ _t68 = _t67 & 0x00000001u;
|
|
/* 02694EBC */ if (_t68) goto L_02694EF4; else goto L_02694EC0;
|
|
L_02694EC0: ; // 0x2694ec0
|
|
/* 02694EC0 */ _t69 = cpu->r[1] + 0x00000064u;
|
|
/* 02694EC0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t69);
|
|
/* 02694EC4 */ cpu->r[5] = 0x00000000u;
|
|
/* 02694EC8 */ cpu->r[0] = cpu->r[1] + 0x00000060u;
|
|
/* 02694ECC */ cpu->f[1] = cpu->f[11];
|
|
/* 02694ED0 */ cpu->r[7] = cpu->r[5];
|
|
/* 02694ED4 */ cpu->r[6] = cpu->r[5];
|
|
/* 02694ED8 */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 02694EDC */ cpu->r[10] = cpu->r[7];
|
|
/* 02694EE0 */ cpu->r[8] = 0x000001FFu;
|
|
/* 02694EE4 */ _t70 = cpu->r[1] + 0x00000008u;
|
|
/* 02694EE4 */ rbrew_write32(cpu->mem, _t70, cpu->r[0]);
|
|
/* 02694EE8 */ Gambit_fn_0204A4DC(cpu);
|
|
/* 02694EEC */ cpu->r[8] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02694EF0 */ goto L_02694F24;
|
|
L_02694EF4: ; // 0x2694ef4
|
|
/* 02694EF4 */ _t71 = cpu->r[1] + 0x00000064u;
|
|
/* 02694EF4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t71);
|
|
/* 02694EF8 */ cpu->f[3] = cpu->f[2];
|
|
/* 02694EFC */ cpu->r[12] = 0x100E0000u;
|
|
/* 02694F00 */ cpu->r[6] = 0x00000000u;
|
|
/* 02694F04 */ cpu->f[2] = cpu->f[11];
|
|
/* 02694F08 */ _t72 = cpu->r[12] + 0x00003BC0u;
|
|
/* 02694F08 */ cpu->f[4] = rbrew_read_f32(cpu->mem, _t72);
|
|
/* 02694F0C */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 02694F10 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02694F14 */ cpu->r[7] = 0x000001FFu;
|
|
/* 02694F18 */ cpu->r[9] = cpu->r[1] + 0x00000060u;
|
|
/* 02694F1C */ Gambit_fn_0204A864(cpu);
|
|
/* 02694F20 */ cpu->r[8] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
L_02694F24: ; // 0x2694f24
|
|
/* 02694F24 */ _t73 = cpu->r[31] + 0x00000054u;
|
|
/* 02694F24 */ rbrew_write8(cpu->mem, _t73, (uint8_t)cpu->r[8]);
|
|
L_02694F28: ; // 0x2694f28
|
|
/* 02694F28 */ _t74 = cpu->r[1] + 0x000000A4u;
|
|
/* 02694F28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t74);
|
|
/* 02694F2C */ _t75 = cpu->r[1] + 0x00000098u;
|
|
/* 02694F2C */ cpu->r[30] = rbrew_read32(cpu->mem, _t75);
|
|
/* 02694F30 */ cpu->lr = cpu->r[0];
|
|
/* 02694F34 */ _t76 = cpu->r[1] + 0x0000009Cu;
|
|
/* 02694F34 */ cpu->r[31] = rbrew_read32(cpu->mem, _t76);
|
|
/* 02694F38 */ cpu->r[1] = cpu->r[1] + 0x000000A0u;
|
|
/* 02694F3C */ return;
|
|
}
|
|
|
|
// fn_02694CEC @ 0x2694cec
|
|
void Gambit_fn_02694CEC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76;
|
|
double _ft60, _ft61;
|
|
|
|
L_02694CEC: ; // 0x2694cec
|
|
/* 02694CEC */ _t0 = cpu->r[1] + 0xFFFFFF60u;
|
|
/* 02694CEC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02694CEC */ cpu->r[1] = _t0;
|
|
/* 02694CF0 */ _t1 = cpu->r[1] + 0x0000009Cu;
|
|
/* 02694CF0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02694CF4 */ _t2 = cpu->r[1] + 0x00000098u;
|
|
/* 02694CF4 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02694CF8 */ cpu->r[30] = cpu->r[3];
|
|
/* 02694CFC */ cpu->r[3] = cpu->r[1] + 0x00000060u;
|
|
/* 02694D00 */ cpu->r[31] = cpu->r[4];
|
|
/* 02694D04 */ _t3 = cpu->r[1] + 0x000000A4u;
|
|
/* 02694D04 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02694D08 */ Gambit_fn_02043AC4(cpu);
|
|
/* 02694D0C */ cpu->r[10] = 0x100E0000u;
|
|
/* 02694D10 */ _t4 = cpu->r[10] + 0x00003BACu;
|
|
/* 02694D10 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 02694D14 */ cpu->r[10] = 0x101F0000u;
|
|
/* 02694D18 */ cpu->r[10] = cpu->r[10] + 0x00006350u;
|
|
/* 02694D1C */ /* nop */
|
|
/* 02694D20 */ _t5 = cpu->r[30] + 0x00000008u;
|
|
/* 02694D20 */ cpu->r[9] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02694D24 */ /* nop */
|
|
/* 02694D28 */ /* nop */
|
|
/* 02694D2C */ _t6 = cpu->r[1] + 0x00000024u;
|
|
/* 02694D2C */ cpu->r[7] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02694D30 */ _t7 = cpu->r[10] + 0x00000008u;
|
|
/* 02694D30 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 02694D34 */ _t8 = cpu->r[1] + 0x00000028u;
|
|
/* 02694D34 */ cpu->r[8] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02694D38 */ cpu->f[11] = cpu->f[8] * cpu->f[9];
|
|
/* 02694D3C */ _t9 = cpu->r[1] + 0x00000070u;
|
|
/* 02694D3C */ rbrew_write32(cpu->mem, _t9, cpu->r[7]);
|
|
/* 02694D40 */ _t10 = cpu->r[1] + 0x00000074u;
|
|
/* 02694D40 */ rbrew_write32(cpu->mem, _t10, cpu->r[8]);
|
|
/* 02694D44 */ _t11 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02694D44 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[11]);
|
|
/* 02694D48 */ _t12 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02694D48 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02694D4C */ /* nop */
|
|
/* 02694D50 */ _t13 = cpu->r[1] + 0x00000078u;
|
|
/* 02694D50 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02694D54 */ /* nop */
|
|
/* 02694D58 */ /* nop */
|
|
/* 02694D5C */ /* nop */
|
|
/* 02694D60 */ _t14 = cpu->r[9] + 0x000000BCu;
|
|
/* 02694D60 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 02694D64 */ _t15 = cpu->r[1] + 0x00000078u;
|
|
/* 02694D64 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 02694D68 */ _t16 = cpu->r[1] + 0x00000030u;
|
|
/* 02694D68 */ cpu->r[9] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02694D6C */ cpu->f[8] = cpu->f[9] + cpu->f[10];
|
|
/* 02694D70 */ _t17 = cpu->r[1] + 0x00000044u;
|
|
/* 02694D70 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[11]);
|
|
/* 02694D74 */ _t18 = cpu->r[1] + 0x00000044u;
|
|
/* 02694D74 */ cpu->r[8] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02694D78 */ _t19 = cpu->r[1] + 0x00000038u;
|
|
/* 02694D78 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[8]);
|
|
/* 02694D7C */ _t20 = cpu->r[1] + 0x00000038u;
|
|
/* 02694D7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02694D80 */ /* nop */
|
|
/* 02694D84 */ _t21 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02694D84 */ cpu->r[6] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02694D88 */ _t22 = cpu->r[1] + 0x00000084u;
|
|
/* 02694D88 */ rbrew_write32(cpu->mem, _t22, cpu->r[8]);
|
|
/* 02694D8C */ _t23 = cpu->r[1] + 0x00000084u;
|
|
/* 02694D8C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 02694D90 */ _t24 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02694D90 */ rbrew_write32(cpu->mem, _t24, cpu->r[6]);
|
|
/* 02694D94 */ _t25 = cpu->r[1] + 0x00000040u;
|
|
/* 02694D94 */ cpu->r[7] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02694D98 */ _t26 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02694D98 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 02694D9C */ _t27 = cpu->r[1] + 0x00000080u;
|
|
/* 02694D9C */ rbrew_write32(cpu->mem, _t27, cpu->r[7]);
|
|
/* 02694DA0 */ /* nop */
|
|
/* 02694DA4 */ cpu->f[0] = cpu->f[0] + cpu->f[8];
|
|
/* 02694DA8 */ /* nop */
|
|
/* 02694DAC */ _t28 = cpu->r[1] + 0x00000020u;
|
|
/* 02694DAC */ rbrew_write32(cpu->mem, _t28, cpu->r[0]);
|
|
/* 02694DB0 */ /* nop */
|
|
/* 02694DB4 */ _t29 = cpu->r[1] + 0x00000050u;
|
|
/* 02694DB4 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[0]);
|
|
/* 02694DB8 */ _t30 = cpu->r[1] + 0x00000050u;
|
|
/* 02694DB8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02694DBC */ /* nop */
|
|
/* 02694DC0 */ _t31 = cpu->r[1] + 0x00000048u;
|
|
/* 02694DC0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02694DC4 */ _t32 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02694DC4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02694DC8 */ _t33 = cpu->r[1] + 0x00000088u;
|
|
/* 02694DC8 */ rbrew_write32(cpu->mem, _t33, cpu->r[11]);
|
|
/* 02694DCC */ _t34 = cpu->r[1] + 0x00000034u;
|
|
/* 02694DCC */ cpu->r[10] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02694DD0 */ _t35 = cpu->r[1] + 0x0000008Cu;
|
|
/* 02694DD0 */ rbrew_write32(cpu->mem, _t35, cpu->r[12]);
|
|
/* 02694DD4 */ /* nop */
|
|
/* 02694DD8 */ _t36 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02694DD8 */ rbrew_write32(cpu->mem, _t36, cpu->r[10]);
|
|
/* 02694DDC */ _t37 = cpu->r[1] + 0x00000018u;
|
|
/* 02694DDC */ rbrew_write32(cpu->mem, _t37, cpu->r[9]);
|
|
/* 02694DE0 */ /* nop */
|
|
/* 02694DE4 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02694DE8 */ _t38 = cpu->r[1] + 0x00000090u;
|
|
/* 02694DE8 */ rbrew_write32(cpu->mem, _t38, cpu->r[0]);
|
|
/* 02694DEC */ _t39 = cpu->r[1] + 0x00000090u;
|
|
/* 02694DEC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 02694DF0 */ /* nop */
|
|
/* 02694DF4 */ _t40 = cpu->r[1] + 0x00000020u;
|
|
/* 02694DF4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 02694DF8 */ /* nop */
|
|
/* 02694DFC */ _t41 = cpu->r[1] + 0x00000054u;
|
|
/* 02694DFC */ cpu->r[7] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02694E00 */ cpu->f[8] = cpu->f[9] - cpu->f[10];
|
|
/* 02694E04 */ _t42 = cpu->r[1] + 0x00000058u;
|
|
/* 02694E04 */ cpu->r[9] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02694E08 */ _t43 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02694E08 */ rbrew_write32(cpu->mem, _t43, cpu->r[7]);
|
|
/* 02694E0C */ _t44 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02694E0C */ rbrew_write_f32(cpu->mem, _t44, cpu->f[8]);
|
|
/* 02694E10 */ _t45 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02694E10 */ cpu->r[0] = rbrew_read32(cpu->mem, _t45);
|
|
/* 02694E14 */ _t46 = cpu->r[1] + 0x00000010u;
|
|
/* 02694E14 */ rbrew_write32(cpu->mem, _t46, cpu->r[9]);
|
|
/* 02694E18 */ _t47 = cpu->r[1] + 0x00000014u;
|
|
/* 02694E18 */ rbrew_write32(cpu->mem, _t47, cpu->r[0]);
|
|
/* 02694E1C */ Gambit_fn_02C69350(cpu);
|
|
/* 02694E20 */ cpu->r[8] = 0x100E0000u;
|
|
/* 02694E24 */ _t48 = cpu->r[8] + 0x00003BB0u;
|
|
/* 02694E24 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 02694E28 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[10]);
|
|
/* 02694E2C */ _t49 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02694E2C */ _t50 = _t49 & 0x00000001u;
|
|
/* 02694E2C */ if (_t50) goto L_02694E30; else goto L_02694E3C;
|
|
L_02694E30: ; // 0x2694e30
|
|
/* 02694E30 */ cpu->r[8] = 0x00000000u;
|
|
/* 02694E34 */ _t51 = cpu->r[31] + 0x00000054u;
|
|
/* 02694E34 */ rbrew_write8(cpu->mem, _t51, (uint8_t)cpu->r[8]);
|
|
/* 02694E38 */ goto L_02694F28;
|
|
L_02694E3C: ; // 0x2694e3c
|
|
/* 02694E3C */ _t52 = cpu->r[1] + 0x00000010u;
|
|
/* 02694E3C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 02694E40 */ _t53 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02694E40 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t53);
|
|
/* 02694E44 */ cpu->f[8] = cpu->f[12] * cpu->f[12];
|
|
/* 02694E48 */ cpu->f[9] = fma(cpu->f[0], cpu->f[0], cpu->f[8]);
|
|
/* 02694E4C */ _t54 = cpu->r[1] + 0x00000014u;
|
|
/* 02694E4C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 02694E50 */ cpu->r[7] = 0x100E0000u;
|
|
/* 02694E54 */ cpu->f[8] = fma(cpu->f[13], cpu->f[13], cpu->f[9]);
|
|
/* 02694E58 */ _t55 = cpu->r[7] + 0x00003BA8u;
|
|
/* 02694E58 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 02694E5C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[12]);
|
|
/* 02694E60 */ _t56 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02694E60 */ _t57 = _t56 & 0x00000001u;
|
|
/* 02694E60 */ if (_t57) goto L_02694E64; else goto L_02694EA0;
|
|
L_02694E64: ; // 0x2694e64
|
|
/* 02694E64 */ cpu->r[5] = 0x100E0000u;
|
|
/* 02694E68 */ cpu->r[12] = 0x100E0000u;
|
|
/* 02694E6C */ _t58 = cpu->r[5] + 0x00003BB4u;
|
|
/* 02694E6C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 02694E70 */ _t59 = cpu->r[12] + 0x00003BB8u;
|
|
/* 02694E70 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t59);
|
|
/* 02694E74 */ _ft60 = sqrt(cpu->f[8]);
|
|
/* 02694E74 */ _ft61 = (double)(int32_t)0x00000001u;
|
|
/* 02694E74 */ cpu->f[9] = _ft61 / _ft60;
|
|
/* 02694E78 */ cpu->f[10] = cpu->f[9] * cpu->f[9];
|
|
/* 02694E7C */ cpu->f[11] = cpu->f[9] * cpu->f[13];
|
|
/* 02694E80 */ cpu->f[10] = -fma(cpu->f[10], cpu->f[8], -(cpu->f[0]));
|
|
/* 02694E84 */ cpu->f[9] = cpu->f[10] * cpu->f[11];
|
|
/* 02694E88 */ _t62 = cpu->r[1] + 0x00000014u;
|
|
/* 02694E88 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 02694E8C */ /* nop */
|
|
/* 02694E90 */ cpu->f[13] = cpu->f[13] * cpu->f[9];
|
|
/* 02694E94 */ /* nop */
|
|
/* 02694E98 */ _t63 = cpu->r[1] + 0x00000014u;
|
|
/* 02694E98 */ rbrew_write_f32(cpu->mem, _t63, cpu->f[13]);
|
|
/* 02694E9C */ /* nop */
|
|
L_02694EA0: ; // 0x2694ea0
|
|
/* 02694EA0 */ cpu->r[11] = 0x101E0000u;
|
|
/* 02694EA4 */ cpu->r[9] = 0x100E0000u;
|
|
/* 02694EA8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[12]);
|
|
/* 02694EAC */ _t64 = cpu->r[11] + 0xFFFF958Cu;
|
|
/* 02694EAC */ cpu->f[2] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 02694EB0 */ cpu->r[12] = 0x101C0000u;
|
|
/* 02694EB4 */ _t65 = cpu->r[9] + 0x00003BC4u;
|
|
/* 02694EB4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t65);
|
|
/* 02694EB8 */ _t66 = cpu->r[12] + 0x00001EF8u;
|
|
/* 02694EB8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t66);
|
|
/* 02694EBC */ _t67 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02694EBC */ _t68 = _t67 & 0x00000001u;
|
|
/* 02694EBC */ if (_t68) goto L_02694EF4; else goto L_02694EC0;
|
|
L_02694EC0: ; // 0x2694ec0
|
|
/* 02694EC0 */ _t69 = cpu->r[1] + 0x00000064u;
|
|
/* 02694EC0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t69);
|
|
/* 02694EC4 */ cpu->r[5] = 0x00000000u;
|
|
/* 02694EC8 */ cpu->r[0] = cpu->r[1] + 0x00000060u;
|
|
/* 02694ECC */ cpu->f[1] = cpu->f[11];
|
|
/* 02694ED0 */ cpu->r[7] = cpu->r[5];
|
|
/* 02694ED4 */ cpu->r[6] = cpu->r[5];
|
|
/* 02694ED8 */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 02694EDC */ cpu->r[10] = cpu->r[7];
|
|
/* 02694EE0 */ cpu->r[8] = 0x000001FFu;
|
|
/* 02694EE4 */ _t70 = cpu->r[1] + 0x00000008u;
|
|
/* 02694EE4 */ rbrew_write32(cpu->mem, _t70, cpu->r[0]);
|
|
/* 02694EE8 */ Gambit_fn_0204A4DC(cpu);
|
|
/* 02694EEC */ cpu->r[8] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02694EF0 */ goto L_02694F24;
|
|
L_02694EF4: ; // 0x2694ef4
|
|
/* 02694EF4 */ _t71 = cpu->r[1] + 0x00000064u;
|
|
/* 02694EF4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t71);
|
|
/* 02694EF8 */ cpu->f[3] = cpu->f[2];
|
|
/* 02694EFC */ cpu->r[12] = 0x100E0000u;
|
|
/* 02694F00 */ cpu->r[6] = 0x00000000u;
|
|
/* 02694F04 */ cpu->f[2] = cpu->f[11];
|
|
/* 02694F08 */ _t72 = cpu->r[12] + 0x00003BC0u;
|
|
/* 02694F08 */ cpu->f[4] = rbrew_read_f32(cpu->mem, _t72);
|
|
/* 02694F0C */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 02694F10 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02694F14 */ cpu->r[7] = 0x000001FFu;
|
|
/* 02694F18 */ cpu->r[9] = cpu->r[1] + 0x00000060u;
|
|
/* 02694F1C */ Gambit_fn_0204A864(cpu);
|
|
/* 02694F20 */ cpu->r[8] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
L_02694F24: ; // 0x2694f24
|
|
/* 02694F24 */ _t73 = cpu->r[31] + 0x00000054u;
|
|
/* 02694F24 */ rbrew_write8(cpu->mem, _t73, (uint8_t)cpu->r[8]);
|
|
L_02694F28: ; // 0x2694f28
|
|
/* 02694F28 */ _t74 = cpu->r[1] + 0x000000A4u;
|
|
/* 02694F28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t74);
|
|
/* 02694F2C */ _t75 = cpu->r[1] + 0x00000098u;
|
|
/* 02694F2C */ cpu->r[30] = rbrew_read32(cpu->mem, _t75);
|
|
/* 02694F30 */ cpu->lr = cpu->r[0];
|
|
/* 02694F34 */ _t76 = cpu->r[1] + 0x0000009Cu;
|
|
/* 02694F34 */ cpu->r[31] = rbrew_read32(cpu->mem, _t76);
|
|
/* 02694F38 */ cpu->r[1] = cpu->r[1] + 0x000000A0u;
|
|
/* 02694F3C */ return;
|
|
}
|
|
|
|
// fn_02694F40 @ 0x2694f40
|
|
void Gambit_fn_02694F40(CPUState* cpu) {
|
|
uint32_t _t0, _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_02694F40: ; // 0x2694f40
|
|
/* 02694F40 */ cpu->r[0] = cpu->lr;
|
|
/* 02694F44 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 02694F44 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02694F44 */ cpu->r[1] = _t0;
|
|
/* 02694F48 */ cpu->r[11] = 0x100E0000u;
|
|
/* 02694F4C */ _t1 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02694F4C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02694F50 */ cpu->r[8] = 0x101F0000u;
|
|
/* 02694F54 */ _t2 = cpu->r[11] + 0x00003BACu;
|
|
/* 02694F54 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 02694F58 */ cpu->r[31] = cpu->r[4];
|
|
/* 02694F5C */ cpu->r[8] = cpu->r[8] + 0x00006350u;
|
|
/* 02694F60 */ _t3 = cpu->r[1] + 0x00000044u;
|
|
/* 02694F60 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02694F64 */ /* nop */
|
|
/* 02694F68 */ _t4 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02694F68 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 02694F6C */ /* nop */
|
|
/* 02694F70 */ _t5 = cpu->r[8] + 0x00000008u;
|
|
/* 02694F70 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 02694F74 */ /* nop */
|
|
/* 02694F78 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02694F78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02694F7C */ cpu->f[12] = cpu->f[12] * cpu->f[13];
|
|
/* 02694F80 */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 02694F80 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02694F84 */ _t8 = cpu->r[1] + 0x00000024u;
|
|
/* 02694F84 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 02694F88 */ _t9 = cpu->r[1] + 0x00000020u;
|
|
/* 02694F88 */ rbrew_write32(cpu->mem, _t9, cpu->r[12]);
|
|
/* 02694F8C */ /* nop */
|
|
/* 02694F90 */ /* nop */
|
|
/* 02694F94 */ _t10 = cpu->r[1] + 0x00000010u;
|
|
/* 02694F94 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[12]);
|
|
/* 02694F98 */ _t11 = cpu->r[1] + 0x00000010u;
|
|
/* 02694F98 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02694F9C */ /* nop */
|
|
/* 02694FA0 */ _t12 = cpu->r[1] + 0x00000028u;
|
|
/* 02694FA0 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 02694FA4 */ _t13 = cpu->r[1] + 0x00000028u;
|
|
/* 02694FA4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 02694FA8 */ /* nop */
|
|
/* 02694FAC */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02694FAC */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02694FB0 */ cpu->f[13] = cpu->f[9] + cpu->f[0];
|
|
/* 02694FB4 */ _t15 = cpu->r[1] + 0x00000018u;
|
|
/* 02694FB4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02694FB8 */ _t16 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02694FB8 */ rbrew_write32(cpu->mem, _t16, cpu->r[0]);
|
|
/* 02694FBC */ _t17 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02694FBC */ rbrew_write_f32(cpu->mem, _t17, cpu->f[13]);
|
|
/* 02694FC0 */ _t18 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02694FC0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02694FC4 */ cpu->r[4] = cpu->r[1] + 0x0000002Cu;
|
|
/* 02694FC8 */ _t19 = cpu->r[1] + 0x00000030u;
|
|
/* 02694FC8 */ rbrew_write32(cpu->mem, _t19, cpu->r[8]);
|
|
/* 02694FCC */ cpu->r[3] = cpu->r[3] + 0x00000010u;
|
|
/* 02694FD0 */ _t20 = cpu->r[1] + 0x00000034u;
|
|
/* 02694FD0 */ rbrew_write32(cpu->mem, _t20, cpu->r[11]);
|
|
/* 02694FD4 */ Gambit_fn_02699258(cpu);
|
|
/* 02694FD8 */ cpu->r[9] = 0x100E0000u;
|
|
/* 02694FDC */ _t21 = cpu->r[9] + 0x00003BA8u;
|
|
/* 02694FDC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 02694FE0 */ /* nop */
|
|
/* 02694FE4 */ _t22 = cpu->r[31] + 0x00000050u;
|
|
/* 02694FE4 */ rbrew_write_f32(cpu->mem, _t22, cpu->f[0]);
|
|
/* 02694FE8 */ _t23 = cpu->r[1] + 0x00000044u;
|
|
/* 02694FE8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02694FEC */ cpu->lr = cpu->r[0];
|
|
/* 02694FF0 */ _t24 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02694FF0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02694FF4 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 02694FF8 */ return;
|
|
}
|
|
|
|
// fn_02694F44 @ 0x2694f44
|
|
void Gambit_fn_02694F44(CPUState* cpu) {
|
|
uint32_t _t0, _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_02694F44: ; // 0x2694f44
|
|
/* 02694F44 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 02694F44 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02694F44 */ cpu->r[1] = _t0;
|
|
/* 02694F48 */ cpu->r[11] = 0x100E0000u;
|
|
/* 02694F4C */ _t1 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02694F4C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02694F50 */ cpu->r[8] = 0x101F0000u;
|
|
/* 02694F54 */ _t2 = cpu->r[11] + 0x00003BACu;
|
|
/* 02694F54 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 02694F58 */ cpu->r[31] = cpu->r[4];
|
|
/* 02694F5C */ cpu->r[8] = cpu->r[8] + 0x00006350u;
|
|
/* 02694F60 */ _t3 = cpu->r[1] + 0x00000044u;
|
|
/* 02694F60 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02694F64 */ /* nop */
|
|
/* 02694F68 */ _t4 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02694F68 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 02694F6C */ /* nop */
|
|
/* 02694F70 */ _t5 = cpu->r[8] + 0x00000008u;
|
|
/* 02694F70 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 02694F74 */ /* nop */
|
|
/* 02694F78 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02694F78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02694F7C */ cpu->f[12] = cpu->f[12] * cpu->f[13];
|
|
/* 02694F80 */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 02694F80 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02694F84 */ _t8 = cpu->r[1] + 0x00000024u;
|
|
/* 02694F84 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 02694F88 */ _t9 = cpu->r[1] + 0x00000020u;
|
|
/* 02694F88 */ rbrew_write32(cpu->mem, _t9, cpu->r[12]);
|
|
/* 02694F8C */ /* nop */
|
|
/* 02694F90 */ /* nop */
|
|
/* 02694F94 */ _t10 = cpu->r[1] + 0x00000010u;
|
|
/* 02694F94 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[12]);
|
|
/* 02694F98 */ _t11 = cpu->r[1] + 0x00000010u;
|
|
/* 02694F98 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02694F9C */ /* nop */
|
|
/* 02694FA0 */ _t12 = cpu->r[1] + 0x00000028u;
|
|
/* 02694FA0 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 02694FA4 */ _t13 = cpu->r[1] + 0x00000028u;
|
|
/* 02694FA4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 02694FA8 */ /* nop */
|
|
/* 02694FAC */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02694FAC */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02694FB0 */ cpu->f[13] = cpu->f[9] + cpu->f[0];
|
|
/* 02694FB4 */ _t15 = cpu->r[1] + 0x00000018u;
|
|
/* 02694FB4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02694FB8 */ _t16 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02694FB8 */ rbrew_write32(cpu->mem, _t16, cpu->r[0]);
|
|
/* 02694FBC */ _t17 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02694FBC */ rbrew_write_f32(cpu->mem, _t17, cpu->f[13]);
|
|
/* 02694FC0 */ _t18 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02694FC0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02694FC4 */ cpu->r[4] = cpu->r[1] + 0x0000002Cu;
|
|
/* 02694FC8 */ _t19 = cpu->r[1] + 0x00000030u;
|
|
/* 02694FC8 */ rbrew_write32(cpu->mem, _t19, cpu->r[8]);
|
|
/* 02694FCC */ cpu->r[3] = cpu->r[3] + 0x00000010u;
|
|
/* 02694FD0 */ _t20 = cpu->r[1] + 0x00000034u;
|
|
/* 02694FD0 */ rbrew_write32(cpu->mem, _t20, cpu->r[11]);
|
|
/* 02694FD4 */ Gambit_fn_02699258(cpu);
|
|
/* 02694FD8 */ cpu->r[9] = 0x100E0000u;
|
|
/* 02694FDC */ _t21 = cpu->r[9] + 0x00003BA8u;
|
|
/* 02694FDC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 02694FE0 */ /* nop */
|
|
/* 02694FE4 */ _t22 = cpu->r[31] + 0x00000050u;
|
|
/* 02694FE4 */ rbrew_write_f32(cpu->mem, _t22, cpu->f[0]);
|
|
/* 02694FE8 */ _t23 = cpu->r[1] + 0x00000044u;
|
|
/* 02694FE8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02694FEC */ cpu->lr = cpu->r[0];
|
|
/* 02694FF0 */ _t24 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02694FF0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02694FF4 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 02694FF8 */ return;
|
|
}
|
|
|
|
// fn_02694FFC @ 0x2694ffc
|
|
void Gambit_fn_02694FFC(CPUState* cpu) {
|
|
uint32_t _t0, _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_02694FFC: ; // 0x2694ffc
|
|
/* 02694FFC */ cpu->r[0] = cpu->lr;
|
|
/* 02695000 */ _t0 = cpu->r[1] + 0xFFFFFF90u;
|
|
/* 02695000 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02695000 */ cpu->r[1] = _t0;
|
|
/* 02695004 */ cpu->r[8] = 0x101F0000u;
|
|
/* 02695008 */ cpu->r[10] = 0x100E0000u;
|
|
/* 0269500C */ cpu->r[8] = cpu->r[8] + 0x00006350u;
|
|
/* 02695010 */ _t1 = cpu->r[10] + 0x00003BACu;
|
|
/* 02695010 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 02695014 */ _t2 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02695014 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02695018 */ _t3 = cpu->r[1] + 0x00000074u;
|
|
/* 02695018 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269501C */ /* nop */
|
|
/* 02695020 */ _t4 = cpu->r[3] + 0x00000008u;
|
|
/* 02695020 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02695024 */ /* nop */
|
|
/* 02695028 */ _t5 = cpu->r[8] + 0x00000008u;
|
|
/* 02695028 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 0269502C */ /* nop */
|
|
/* 02695030 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 02695030 */ cpu->r[10] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02695034 */ cpu->f[10] = cpu->f[13] * cpu->f[0];
|
|
/* 02695038 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02695038 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269503C */ _t8 = cpu->r[1] + 0x00000010u;
|
|
/* 0269503C */ rbrew_write_f32(cpu->mem, _t8, cpu->f[10]);
|
|
/* 02695040 */ _t9 = cpu->r[1] + 0x00000010u;
|
|
/* 02695040 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02695044 */ _t10 = cpu->r[1] + 0x00000038u;
|
|
/* 02695044 */ rbrew_write32(cpu->mem, _t10, cpu->r[10]);
|
|
/* 02695048 */ _t11 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02695048 */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
/* 0269504C */ /* nop */
|
|
/* 02695050 */ _t12 = cpu->r[1] + 0x00000040u;
|
|
/* 02695050 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 02695054 */ /* nop */
|
|
/* 02695058 */ cpu->r[31] = cpu->r[4];
|
|
/* 0269505C */ /* nop */
|
|
/* 02695060 */ _t13 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02695060 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 02695064 */ /* nop */
|
|
/* 02695068 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02695068 */ cpu->r[8] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0269506C */ _t15 = cpu->r[1] + 0x00000040u;
|
|
/* 0269506C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 02695070 */ _t16 = cpu->r[9] + 0x000000BCu;
|
|
/* 02695070 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 02695074 */ _t17 = cpu->r[1] + 0x00000050u;
|
|
/* 02695074 */ rbrew_write32(cpu->mem, _t17, cpu->r[8]);
|
|
/* 02695078 */ cpu->f[0] = cpu->f[11] + cpu->f[0];
|
|
/* 0269507C */ /* nop */
|
|
/* 02695080 */ _t18 = cpu->r[1] + 0x00000020u;
|
|
/* 02695080 */ cpu->r[10] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02695084 */ _t19 = cpu->r[1] + 0x00000024u;
|
|
/* 02695084 */ cpu->r[6] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02695088 */ _t20 = cpu->r[1] + 0x00000044u;
|
|
/* 02695088 */ rbrew_write32(cpu->mem, _t20, cpu->r[10]);
|
|
/* 0269508C */ _t21 = cpu->r[1] + 0x00000048u;
|
|
/* 0269508C */ rbrew_write32(cpu->mem, _t21, cpu->r[6]);
|
|
/* 02695090 */ /* nop */
|
|
/* 02695094 */ _t22 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02695094 */ rbrew_write_f32(cpu->mem, _t22, cpu->f[0]);
|
|
/* 02695098 */ _t23 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02695098 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0269509C */ /* nop */
|
|
/* 026950A0 */ _t24 = cpu->r[1] + 0x00000058u;
|
|
/* 026950A0 */ rbrew_write32(cpu->mem, _t24, cpu->r[0]);
|
|
/* 026950A4 */ /* nop */
|
|
/* 026950A8 */ _t25 = cpu->r[1] + 0x00000028u;
|
|
/* 026950A8 */ rbrew_write_f32(cpu->mem, _t25, cpu->f[10]);
|
|
/* 026950AC */ _t26 = cpu->r[1] + 0x00000028u;
|
|
/* 026950AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t26);
|
|
/* 026950B0 */ /* nop */
|
|
/* 026950B4 */ _t27 = cpu->r[1] + 0x0000002Cu;
|
|
/* 026950B4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t27);
|
|
/* 026950B8 */ _t28 = cpu->r[1] + 0x00000018u;
|
|
/* 026950B8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t28);
|
|
/* 026950BC */ _t29 = cpu->r[1] + 0x0000004Cu;
|
|
/* 026950BC */ rbrew_write32(cpu->mem, _t29, cpu->r[0]);
|
|
/* 026950C0 */ _t30 = cpu->r[1] + 0x0000004Cu;
|
|
/* 026950C0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 026950C4 */ _t31 = cpu->r[1] + 0x00000054u;
|
|
/* 026950C4 */ rbrew_write32(cpu->mem, _t31, cpu->r[9]);
|
|
/* 026950C8 */ cpu->f[13] = cpu->f[13] + cpu->f[0];
|
|
/* 026950CC */ _t32 = cpu->r[1] + 0x00000030u;
|
|
/* 026950CC */ cpu->r[9] = rbrew_read32(cpu->mem, _t32);
|
|
/* 026950D0 */ _t33 = cpu->r[1] + 0x0000005Cu;
|
|
/* 026950D0 */ rbrew_write32(cpu->mem, _t33, cpu->r[8]);
|
|
/* 026950D4 */ _t34 = cpu->r[1] + 0x00000034u;
|
|
/* 026950D4 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[13]);
|
|
/* 026950D8 */ _t35 = cpu->r[1] + 0x00000034u;
|
|
/* 026950D8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t35);
|
|
/* 026950DC */ cpu->r[3] = cpu->r[1] + 0x00000050u;
|
|
/* 026950E0 */ _t36 = cpu->r[1] + 0x00000060u;
|
|
/* 026950E0 */ rbrew_write32(cpu->mem, _t36, cpu->r[9]);
|
|
/* 026950E4 */ cpu->r[4] = cpu->r[1] + 0x0000005Cu;
|
|
/* 026950E8 */ _t37 = cpu->r[1] + 0x00000064u;
|
|
/* 026950E8 */ rbrew_write32(cpu->mem, _t37, cpu->r[11]);
|
|
/* 026950EC */ Gambit_fn_02C693A4(cpu);
|
|
/* 026950F0 */ _t38 = cpu->r[31] + 0x00000058u;
|
|
/* 026950F0 */ rbrew_write_f32(cpu->mem, _t38, cpu->f[1]);
|
|
/* 026950F4 */ _t39 = cpu->r[1] + 0x00000074u;
|
|
/* 026950F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t39);
|
|
/* 026950F8 */ _t40 = cpu->r[1] + 0x0000006Cu;
|
|
/* 026950F8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t40);
|
|
/* 026950FC */ cpu->lr = cpu->r[0];
|
|
/* 02695100 */ cpu->r[1] = cpu->r[1] + 0x00000070u;
|
|
/* 02695104 */ return;
|
|
}
|
|
|
|
// fn_02695000 @ 0x2695000
|
|
void Gambit_fn_02695000(CPUState* cpu) {
|
|
uint32_t _t0, _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_02695000: ; // 0x2695000
|
|
/* 02695000 */ _t0 = cpu->r[1] + 0xFFFFFF90u;
|
|
/* 02695000 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02695000 */ cpu->r[1] = _t0;
|
|
/* 02695004 */ cpu->r[8] = 0x101F0000u;
|
|
/* 02695008 */ cpu->r[10] = 0x100E0000u;
|
|
/* 0269500C */ cpu->r[8] = cpu->r[8] + 0x00006350u;
|
|
/* 02695010 */ _t1 = cpu->r[10] + 0x00003BACu;
|
|
/* 02695010 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 02695014 */ _t2 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02695014 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02695018 */ _t3 = cpu->r[1] + 0x00000074u;
|
|
/* 02695018 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269501C */ /* nop */
|
|
/* 02695020 */ _t4 = cpu->r[3] + 0x00000008u;
|
|
/* 02695020 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02695024 */ /* nop */
|
|
/* 02695028 */ _t5 = cpu->r[8] + 0x00000008u;
|
|
/* 02695028 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 0269502C */ /* nop */
|
|
/* 02695030 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 02695030 */ cpu->r[10] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02695034 */ cpu->f[10] = cpu->f[13] * cpu->f[0];
|
|
/* 02695038 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02695038 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269503C */ _t8 = cpu->r[1] + 0x00000010u;
|
|
/* 0269503C */ rbrew_write_f32(cpu->mem, _t8, cpu->f[10]);
|
|
/* 02695040 */ _t9 = cpu->r[1] + 0x00000010u;
|
|
/* 02695040 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02695044 */ _t10 = cpu->r[1] + 0x00000038u;
|
|
/* 02695044 */ rbrew_write32(cpu->mem, _t10, cpu->r[10]);
|
|
/* 02695048 */ _t11 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02695048 */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
/* 0269504C */ /* nop */
|
|
/* 02695050 */ _t12 = cpu->r[1] + 0x00000040u;
|
|
/* 02695050 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 02695054 */ /* nop */
|
|
/* 02695058 */ cpu->r[31] = cpu->r[4];
|
|
/* 0269505C */ /* nop */
|
|
/* 02695060 */ _t13 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02695060 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 02695064 */ /* nop */
|
|
/* 02695068 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02695068 */ cpu->r[8] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0269506C */ _t15 = cpu->r[1] + 0x00000040u;
|
|
/* 0269506C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 02695070 */ _t16 = cpu->r[9] + 0x000000BCu;
|
|
/* 02695070 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 02695074 */ _t17 = cpu->r[1] + 0x00000050u;
|
|
/* 02695074 */ rbrew_write32(cpu->mem, _t17, cpu->r[8]);
|
|
/* 02695078 */ cpu->f[0] = cpu->f[11] + cpu->f[0];
|
|
/* 0269507C */ /* nop */
|
|
/* 02695080 */ _t18 = cpu->r[1] + 0x00000020u;
|
|
/* 02695080 */ cpu->r[10] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02695084 */ _t19 = cpu->r[1] + 0x00000024u;
|
|
/* 02695084 */ cpu->r[6] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02695088 */ _t20 = cpu->r[1] + 0x00000044u;
|
|
/* 02695088 */ rbrew_write32(cpu->mem, _t20, cpu->r[10]);
|
|
/* 0269508C */ _t21 = cpu->r[1] + 0x00000048u;
|
|
/* 0269508C */ rbrew_write32(cpu->mem, _t21, cpu->r[6]);
|
|
/* 02695090 */ /* nop */
|
|
/* 02695094 */ _t22 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02695094 */ rbrew_write_f32(cpu->mem, _t22, cpu->f[0]);
|
|
/* 02695098 */ _t23 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02695098 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0269509C */ /* nop */
|
|
/* 026950A0 */ _t24 = cpu->r[1] + 0x00000058u;
|
|
/* 026950A0 */ rbrew_write32(cpu->mem, _t24, cpu->r[0]);
|
|
/* 026950A4 */ /* nop */
|
|
/* 026950A8 */ _t25 = cpu->r[1] + 0x00000028u;
|
|
/* 026950A8 */ rbrew_write_f32(cpu->mem, _t25, cpu->f[10]);
|
|
/* 026950AC */ _t26 = cpu->r[1] + 0x00000028u;
|
|
/* 026950AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t26);
|
|
/* 026950B0 */ /* nop */
|
|
/* 026950B4 */ _t27 = cpu->r[1] + 0x0000002Cu;
|
|
/* 026950B4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t27);
|
|
/* 026950B8 */ _t28 = cpu->r[1] + 0x00000018u;
|
|
/* 026950B8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t28);
|
|
/* 026950BC */ _t29 = cpu->r[1] + 0x0000004Cu;
|
|
/* 026950BC */ rbrew_write32(cpu->mem, _t29, cpu->r[0]);
|
|
/* 026950C0 */ _t30 = cpu->r[1] + 0x0000004Cu;
|
|
/* 026950C0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 026950C4 */ _t31 = cpu->r[1] + 0x00000054u;
|
|
/* 026950C4 */ rbrew_write32(cpu->mem, _t31, cpu->r[9]);
|
|
/* 026950C8 */ cpu->f[13] = cpu->f[13] + cpu->f[0];
|
|
/* 026950CC */ _t32 = cpu->r[1] + 0x00000030u;
|
|
/* 026950CC */ cpu->r[9] = rbrew_read32(cpu->mem, _t32);
|
|
/* 026950D0 */ _t33 = cpu->r[1] + 0x0000005Cu;
|
|
/* 026950D0 */ rbrew_write32(cpu->mem, _t33, cpu->r[8]);
|
|
/* 026950D4 */ _t34 = cpu->r[1] + 0x00000034u;
|
|
/* 026950D4 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[13]);
|
|
/* 026950D8 */ _t35 = cpu->r[1] + 0x00000034u;
|
|
/* 026950D8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t35);
|
|
/* 026950DC */ cpu->r[3] = cpu->r[1] + 0x00000050u;
|
|
/* 026950E0 */ _t36 = cpu->r[1] + 0x00000060u;
|
|
/* 026950E0 */ rbrew_write32(cpu->mem, _t36, cpu->r[9]);
|
|
/* 026950E4 */ cpu->r[4] = cpu->r[1] + 0x0000005Cu;
|
|
/* 026950E8 */ _t37 = cpu->r[1] + 0x00000064u;
|
|
/* 026950E8 */ rbrew_write32(cpu->mem, _t37, cpu->r[11]);
|
|
/* 026950EC */ Gambit_fn_02C693A4(cpu);
|
|
/* 026950F0 */ _t38 = cpu->r[31] + 0x00000058u;
|
|
/* 026950F0 */ rbrew_write_f32(cpu->mem, _t38, cpu->f[1]);
|
|
/* 026950F4 */ _t39 = cpu->r[1] + 0x00000074u;
|
|
/* 026950F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t39);
|
|
/* 026950F8 */ _t40 = cpu->r[1] + 0x0000006Cu;
|
|
/* 026950F8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t40);
|
|
/* 026950FC */ cpu->lr = cpu->r[0];
|
|
/* 02695100 */ cpu->r[1] = cpu->r[1] + 0x00000070u;
|
|
/* 02695104 */ return;
|
|
}
|
|
|
|
// fn_02695108 @ 0x2695108
|
|
void Gambit_fn_02695108(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t25, _t26;
|
|
double _ft23, _ft24;
|
|
|
|
L_02695108: ; // 0x2695108
|
|
/* 02695108 */ _t0 = cpu->r[4] + 0x0000003Cu;
|
|
/* 02695108 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 0269510C */ _t1 = cpu->r[4] + 0x00000038u;
|
|
/* 0269510C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 02695110 */ cpu->f[9] = cpu->f[8] * cpu->f[8];
|
|
/* 02695114 */ cpu->f[10] = fma(cpu->f[13], cpu->f[13], cpu->f[9]);
|
|
/* 02695118 */ _t2 = cpu->r[4] + 0x00000040u;
|
|
/* 02695118 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 0269511C */ cpu->r[12] = 0x100E0000u;
|
|
/* 02695120 */ cpu->f[11] = fma(cpu->f[7], cpu->f[7], cpu->f[10]);
|
|
/* 02695124 */ _t3 = cpu->r[12] + 0x00003BB0u;
|
|
/* 02695124 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 02695128 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[12]);
|
|
/* 0269512C */ _t4 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269512C */ _t5 = _t4 & 0x00000001u;
|
|
/* 0269512C */ if (_t5) goto L_02695130; else goto L_02695150;
|
|
L_02695130: ; // 0x2695130
|
|
/* 02695130 */ cpu->r[12] = 0x101F0000u;
|
|
/* 02695134 */ _t6 = cpu->r[12] + 0x00006338u;
|
|
/* 02695134 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 02695134 */ cpu->r[12] = _t6;
|
|
/* 02695138 */ _t7 = cpu->r[4] + 0x00000044u;
|
|
/* 02695138 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[13]);
|
|
/* 0269513C */ _t8 = cpu->r[12] + 0x00000004u;
|
|
/* 0269513C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 02695140 */ _t9 = cpu->r[4] + 0x00000048u;
|
|
/* 02695140 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[7]);
|
|
/* 02695144 */ _t10 = cpu->r[12] + 0x00000008u;
|
|
/* 02695144 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 02695148 */ _t11 = cpu->r[4] + 0x0000004Cu;
|
|
/* 02695148 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[9]);
|
|
/* 0269514C */ return;
|
|
L_02695150: ; // 0x2695150
|
|
/* 02695150 */ _t12 = cpu->r[4] + 0x0000003Cu;
|
|
/* 02695150 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 02695154 */ _t13 = cpu->r[4] + 0x00000040u;
|
|
/* 02695154 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 02695158 */ cpu->f[7] = cpu->f[11] * cpu->f[11];
|
|
/* 0269515C */ _t14 = cpu->r[4] + 0x00000044u;
|
|
/* 0269515C */ rbrew_write_f32(cpu->mem, _t14, cpu->f[13]);
|
|
/* 02695160 */ cpu->r[12] = 0x100E0000u;
|
|
/* 02695164 */ _t15 = cpu->r[12] + 0x00003BA8u;
|
|
/* 02695164 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 02695168 */ cpu->f[8] = fma(cpu->f[13], cpu->f[13], cpu->f[7]);
|
|
/* 0269516C */ _t16 = cpu->r[4] + 0x0000004Cu;
|
|
/* 0269516C */ rbrew_write_f32(cpu->mem, _t16, cpu->f[12]);
|
|
/* 02695170 */ cpu->f[12] = fma(cpu->f[12], cpu->f[12], cpu->f[8]);
|
|
/* 02695174 */ _t17 = cpu->r[4] + 0x00000048u;
|
|
/* 02695174 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[11]);
|
|
/* 02695178 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[0]);
|
|
/* 0269517C */ _t18 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0269517C */ _t19 = _t18 & 0x00000001u;
|
|
/* 0269517C */ _t20 = _t19 ^ 0x00000001u;
|
|
/* 0269517C */ if (_t20) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0269517C */ goto L_02695180;
|
|
L_02695180: ; // 0x2695180
|
|
/* 02695180 */ cpu->r[12] = 0x100E0000u;
|
|
/* 02695184 */ _t21 = cpu->r[12] + 0x00003BB4u;
|
|
/* 02695184 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 02695188 */ cpu->r[12] = 0x100E0000u;
|
|
/* 0269518C */ _t22 = cpu->r[12] + 0x00003BB8u;
|
|
/* 0269518C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 02695190 */ _ft23 = sqrt(cpu->f[12]);
|
|
/* 02695190 */ _ft24 = (double)(int32_t)0x00000001u;
|
|
/* 02695190 */ cpu->f[0] = _ft24 / _ft23;
|
|
/* 02695194 */ cpu->f[8] = cpu->f[0] * cpu->f[0];
|
|
/* 02695198 */ cpu->f[10] = cpu->f[0] * cpu->f[13];
|
|
/* 0269519C */ cpu->f[8] = -fma(cpu->f[8], cpu->f[12], -(cpu->f[11]));
|
|
/* 026951A0 */ cpu->f[0] = cpu->f[8] * cpu->f[10];
|
|
/* 026951A4 */ _t25 = cpu->r[4] + 0x0000004Cu;
|
|
/* 026951A4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 026951A8 */ /* nop */
|
|
/* 026951AC */ cpu->f[11] = cpu->f[11] * cpu->f[0];
|
|
/* 026951B0 */ /* nop */
|
|
/* 026951B4 */ _t26 = cpu->r[4] + 0x0000004Cu;
|
|
/* 026951B4 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[11]);
|
|
/* 026951B8 */ /* nop */
|
|
/* 026951BC */ return;
|
|
}
|
|
|
|
// fn_026951C0 @ 0x26951c0
|
|
void Gambit_fn_026951C0(CPUState* cpu) {
|
|
uint32_t _t0, _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;
|
|
|
|
L_026951C0: ; // 0x26951c0
|
|
/* 026951C0 */ _t0 = cpu->r[1] + 0xFFFFFFB0u;
|
|
/* 026951C0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 026951C0 */ cpu->r[1] = _t0;
|
|
/* 026951C4 */ _t1 = cpu->r[4] + 0x00000054u;
|
|
/* 026951C4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t1);
|
|
/* 026951C8 */ cpu->r[8] = 0x100E0000u;
|
|
/* 026951CC */ _t2 = cpu->r[8] + 0x00003BA8u;
|
|
/* 026951CC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 026951D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 026951D4 */ _t3 = cpu->r[4] + 0x00000060u;
|
|
/* 026951D4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t3);
|
|
/* 026951D8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026951D8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 026951D8 */ if (_t5) goto L_02695230; else goto L_026951DC;
|
|
L_026951DC: ; // 0x26951dc
|
|
/* 026951DC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], 0x00000002u);
|
|
/* 026951E0 */ cpu->f[10] = cpu->f[12];
|
|
/* 026951E4 */ _t6 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026951E4 */ _t7 = _t6 & 0x00000001u;
|
|
/* 026951E4 */ if (_t7) goto L_02695288; else goto L_026951E8;
|
|
L_026951E8: ; // 0x26951e8
|
|
/* 026951E8 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026951E8 */ _t9 = _t8 & 0x00000001u;
|
|
/* 026951E8 */ if (_t9) goto L_026951EC; else goto L_02695240;
|
|
L_026951EC: ; // 0x26951ec
|
|
/* 026951EC */ cpu->r[10] = 0x100E0000u;
|
|
/* 026951F0 */ cpu->f[10] = cpu->f[10] * cpu->f[12];
|
|
/* 026951F4 */ _t10 = cpu->r[10] + 0x00003BC0u;
|
|
/* 026951F4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 026951F8 */ _t11 = cpu->r[3] + 0x00000008u;
|
|
/* 026951F8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t11);
|
|
/* 026951FC */ cpu->f[11] = cpu->f[10] - cpu->f[0];
|
|
/* 02695200 */ _t12 = cpu->r[11] + 0x00000748u;
|
|
/* 02695200 */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02695204 */ /* nop */
|
|
/* 02695208 */ _t13 = cpu->r[4] + 0x0000005Cu;
|
|
/* 02695208 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 0269520C */ cpu->f[10] = cpu->f[8] - cpu->f[11];
|
|
/* 02695210 */ _t14 = cpu->r[9] + 0x000004FCu;
|
|
/* 02695210 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 02695214 */ cpu->r[11] = 0x100E0000u;
|
|
/* 02695218 */ cpu->f[11] = fma(cpu->f[10], cpu->f[9], cpu->f[11]);
|
|
/* 0269521C */ _t15 = cpu->r[11] + 0x00003BB4u;
|
|
/* 0269521C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 02695220 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[13]);
|
|
/* 02695224 */ _t16 = cpu->r[4] + 0x0000005Cu;
|
|
/* 02695224 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[11]);
|
|
/* 02695228 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02695228 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02695228 */ if (_t18) goto L_0269530C; else goto L_0269522C;
|
|
L_0269522C: ; // 0x269522c
|
|
/* 0269522C */ goto L_02695324;
|
|
L_02695230: ; // 0x2695230
|
|
/* 02695230 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], 0x00000002u);
|
|
/* 02695234 */ _t19 = cpu->r[4] + 0x00000050u;
|
|
/* 02695234 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 02695238 */ _t20 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02695238 */ _t21 = _t20 & 0x00000001u;
|
|
/* 02695238 */ if (_t21) goto L_02695288; else goto L_0269523C;
|
|
L_0269523C: ; // 0x269523c
|
|
/* 0269523C */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269523C */ _t23 = _t22 & 0x00000001u;
|
|
/* 0269523C */ if (_t23) goto L_026951EC; else goto L_02695240;
|
|
L_02695240: ; // 0x2695240
|
|
/* 02695240 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], 0x00000003u);
|
|
/* 02695244 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02695244 */ _t25 = _t24 & 0x00000001u;
|
|
/* 02695244 */ if (_t25) goto L_026952C8; else goto L_02695248;
|
|
L_02695248: ; // 0x2695248
|
|
/* 02695248 */ cpu->r[10] = 0x100E0000u;
|
|
/* 0269524C */ _t26 = cpu->r[10] + 0x00003BC0u;
|
|
/* 0269524C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 02695250 */ _t27 = cpu->r[3] + 0x00000008u;
|
|
/* 02695250 */ cpu->r[11] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02695254 */ cpu->f[11] = cpu->f[10] - cpu->f[0];
|
|
/* 02695258 */ _t28 = cpu->r[11] + 0x00000748u;
|
|
/* 02695258 */ cpu->r[9] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0269525C */ /* nop */
|
|
/* 02695260 */ _t29 = cpu->r[4] + 0x0000005Cu;
|
|
/* 02695260 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 02695264 */ cpu->f[10] = cpu->f[8] - cpu->f[11];
|
|
/* 02695268 */ _t30 = cpu->r[9] + 0x000004FCu;
|
|
/* 02695268 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 0269526C */ cpu->r[11] = 0x100E0000u;
|
|
/* 02695270 */ cpu->f[11] = fma(cpu->f[10], cpu->f[9], cpu->f[11]);
|
|
/* 02695274 */ _t31 = cpu->r[11] + 0x00003BB4u;
|
|
/* 02695274 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 02695278 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[13]);
|
|
/* 0269527C */ _t32 = cpu->r[4] + 0x0000005Cu;
|
|
/* 0269527C */ rbrew_write_f32(cpu->mem, _t32, cpu->f[11]);
|
|
/* 02695280 */ _t33 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02695280 */ _t34 = _t33 & 0x00000001u;
|
|
/* 02695280 */ if (_t34) goto L_0269530C; else goto L_02695284;
|
|
L_02695284: ; // 0x2695284
|
|
/* 02695284 */ goto L_02695324;
|
|
L_02695288: ; // 0x2695288
|
|
/* 02695288 */ cpu->r[10] = 0x100E0000u;
|
|
/* 0269528C */ _t35 = cpu->r[10] + 0x00003BC0u;
|
|
/* 0269528C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 02695290 */ _t36 = cpu->r[3] + 0x00000008u;
|
|
/* 02695290 */ cpu->r[11] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02695294 */ cpu->f[11] = cpu->f[10] - cpu->f[0];
|
|
/* 02695298 */ _t37 = cpu->r[11] + 0x00000748u;
|
|
/* 02695298 */ cpu->r[9] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0269529C */ /* nop */
|
|
/* 026952A0 */ _t38 = cpu->r[4] + 0x0000005Cu;
|
|
/* 026952A0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 026952A4 */ cpu->f[10] = cpu->f[8] - cpu->f[11];
|
|
/* 026952A8 */ _t39 = cpu->r[9] + 0x000004FCu;
|
|
/* 026952A8 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 026952AC */ cpu->r[11] = 0x100E0000u;
|
|
/* 026952B0 */ cpu->f[11] = fma(cpu->f[10], cpu->f[9], cpu->f[11]);
|
|
/* 026952B4 */ _t40 = cpu->r[11] + 0x00003BB4u;
|
|
/* 026952B4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 026952B8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[13]);
|
|
/* 026952BC */ _t41 = cpu->r[4] + 0x0000005Cu;
|
|
/* 026952BC */ rbrew_write_f32(cpu->mem, _t41, cpu->f[11]);
|
|
/* 026952C0 */ _t42 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026952C0 */ _t43 = _t42 & 0x00000001u;
|
|
/* 026952C0 */ if (_t43) goto L_0269530C; else goto L_026952C4;
|
|
L_026952C4: ; // 0x26952c4
|
|
/* 026952C4 */ goto L_02695324;
|
|
L_026952C8: ; // 0x26952c8
|
|
/* 026952C8 */ _t44 = cpu->r[3] + 0x00000008u;
|
|
/* 026952C8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t44);
|
|
/* 026952CC */ _t45 = cpu->r[11] + 0x00000748u;
|
|
/* 026952CC */ cpu->r[12] = rbrew_read32(cpu->mem, _t45);
|
|
/* 026952D0 */ _t46 = cpu->r[12] + 0x0000055Cu;
|
|
/* 026952D0 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 026952D4 */ cpu->r[10] = 0x100E0000u;
|
|
/* 026952D8 */ cpu->f[10] = cpu->f[10] * cpu->f[8];
|
|
/* 026952DC */ _t47 = cpu->r[10] + 0x00003BC0u;
|
|
/* 026952DC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 026952E0 */ cpu->f[11] = cpu->f[10] - cpu->f[0];
|
|
/* 026952E4 */ /* nop */
|
|
/* 026952E8 */ _t48 = cpu->r[4] + 0x0000005Cu;
|
|
/* 026952E8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 026952EC */ cpu->f[10] = cpu->f[8] - cpu->f[11];
|
|
/* 026952F0 */ _t49 = cpu->r[12] + 0x000004FCu;
|
|
/* 026952F0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 026952F4 */ cpu->r[11] = 0x100E0000u;
|
|
/* 026952F8 */ cpu->f[11] = fma(cpu->f[10], cpu->f[9], cpu->f[11]);
|
|
/* 026952FC */ _t50 = cpu->r[11] + 0x00003BB4u;
|
|
/* 026952FC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t50);
|
|
/* 02695300 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[13]);
|
|
/* 02695304 */ _t51 = cpu->r[4] + 0x0000005Cu;
|
|
/* 02695304 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[11]);
|
|
/* 02695308 */ _t52 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02695308 */ _t53 = _t52 & 0x00000001u;
|
|
/* 02695308 */ if (_t53) goto L_0269530C; else goto L_02695324;
|
|
L_0269530C: ; // 0x269530c
|
|
/* 0269530C */ cpu->f[13] = cpu->f[0] - cpu->f[11];
|
|
/* 02695310 */ /* nop */
|
|
/* 02695314 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[12]);
|
|
/* 02695318 */ _t54 = cpu->r[4] + 0x00000028u;
|
|
/* 02695318 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 0269531C */ _t55 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269531C */ _t56 = _t55 & 0x00000001u;
|
|
/* 0269531C */ if (_t56) goto L_0269538C; else goto L_02695320;
|
|
L_02695320: ; // 0x2695320
|
|
/* 02695320 */ goto L_0269540C;
|
|
L_02695324: ; // 0x2695324
|
|
/* 02695324 */ _t57 = cpu->r[3] + 0x00000008u;
|
|
/* 02695324 */ cpu->r[12] = rbrew_read32(cpu->mem, _t57);
|
|
/* 02695328 */ _t58 = cpu->r[4] + 0x0000004Cu;
|
|
/* 02695328 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 0269532C */ _t59 = cpu->r[12] + 0x00000748u;
|
|
/* 0269532C */ cpu->r[12] = rbrew_read32(cpu->mem, _t59);
|
|
/* 02695330 */ _t60 = cpu->r[12] + 0x0000049Cu;
|
|
/* 02695330 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t60);
|
|
/* 02695334 */ /* nop */
|
|
/* 02695338 */ cpu->f[10] = cpu->f[10] * cpu->f[13];
|
|
/* 0269533C */ _t61 = cpu->r[4] + 0x0000005Cu;
|
|
/* 0269533C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t61);
|
|
/* 02695340 */ /* nop */
|
|
/* 02695344 */ /* nop */
|
|
/* 02695348 */ _t62 = cpu->r[1] + 0x00000008u;
|
|
/* 02695348 */ cpu->r[8] = rbrew_read32(cpu->mem, _t62);
|
|
/* 0269534C */ _t63 = cpu->r[1] + 0x00000010u;
|
|
/* 0269534C */ rbrew_write_f32(cpu->mem, _t63, cpu->f[10]);
|
|
/* 02695350 */ _t64 = cpu->r[1] + 0x00000010u;
|
|
/* 02695350 */ cpu->r[0] = rbrew_read32(cpu->mem, _t64);
|
|
/* 02695354 */ _t65 = cpu->r[1] + 0x00000038u;
|
|
/* 02695354 */ rbrew_write32(cpu->mem, _t65, cpu->r[8]);
|
|
/* 02695358 */ _t66 = cpu->r[1] + 0x00000038u;
|
|
/* 02695358 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t66);
|
|
/* 0269535C */ _t67 = cpu->r[1] + 0x00000040u;
|
|
/* 0269535C */ rbrew_write32(cpu->mem, _t67, cpu->r[0]);
|
|
/* 02695360 */ _t68 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02695360 */ cpu->r[9] = rbrew_read32(cpu->mem, _t68);
|
|
/* 02695364 */ _t69 = cpu->r[4] + 0x00000020u;
|
|
/* 02695364 */ rbrew_write_f32(cpu->mem, _t69, cpu->f[13]);
|
|
/* 02695368 */ cpu->f[13] = cpu->f[0] - cpu->f[11];
|
|
/* 0269536C */ _t70 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0269536C */ rbrew_write32(cpu->mem, _t70, cpu->r[9]);
|
|
/* 02695370 */ _t71 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02695370 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t71);
|
|
/* 02695374 */ _t72 = cpu->r[1] + 0x00000040u;
|
|
/* 02695374 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t72);
|
|
/* 02695378 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[12]);
|
|
/* 0269537C */ _t73 = cpu->r[4] + 0x00000024u;
|
|
/* 0269537C */ rbrew_write_f32(cpu->mem, _t73, cpu->f[8]);
|
|
/* 02695380 */ /* nop */
|
|
/* 02695384 */ _t74 = cpu->r[4] + 0x00000028u;
|
|
/* 02695384 */ rbrew_write_f32(cpu->mem, _t74, cpu->f[9]);
|
|
/* 02695388 */ _t75 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02695388 */ _t76 = _t75 & 0x00000001u;
|
|
/* 02695388 */ if (_t76) goto L_0269538C; else goto L_0269540C;
|
|
L_0269538C: ; // 0x269538c
|
|
/* 0269538C */ cpu->f[13] = cpu->f[12];
|
|
/* 02695390 */ /* nop */
|
|
/* 02695394 */ /* nop */
|
|
/* 02695398 */ _t77 = cpu->r[1] + 0x00000014u;
|
|
/* 02695398 */ cpu->r[12] = rbrew_read32(cpu->mem, _t77);
|
|
/* 0269539C */ cpu->f[12] = cpu->f[9] * cpu->f[13];
|
|
/* 026953A0 */ _t78 = cpu->r[4] + 0x0000001Cu;
|
|
/* 026953A0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t78);
|
|
/* 026953A4 */ _t79 = cpu->r[1] + 0x00000018u;
|
|
/* 026953A4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t79);
|
|
/* 026953A8 */ _t80 = cpu->r[1] + 0x0000001Cu;
|
|
/* 026953A8 */ rbrew_write_f32(cpu->mem, _t80, cpu->f[12]);
|
|
/* 026953AC */ _t81 = cpu->r[1] + 0x0000001Cu;
|
|
/* 026953AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t81);
|
|
/* 026953B0 */ _t82 = cpu->r[1] + 0x00000048u;
|
|
/* 026953B0 */ rbrew_write32(cpu->mem, _t82, cpu->r[8]);
|
|
/* 026953B4 */ _t83 = cpu->r[1] + 0x0000004Cu;
|
|
/* 026953B4 */ rbrew_write32(cpu->mem, _t83, cpu->r[0]);
|
|
/* 026953B8 */ _t84 = cpu->r[1] + 0x0000004Cu;
|
|
/* 026953B8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t84);
|
|
/* 026953BC */ _t85 = cpu->r[1] + 0x00000044u;
|
|
/* 026953BC */ rbrew_write32(cpu->mem, _t85, cpu->r[12]);
|
|
/* 026953C0 */ /* nop */
|
|
/* 026953C4 */ cpu->f[12] = cpu->f[9] + cpu->f[11];
|
|
/* 026953C8 */ /* nop */
|
|
/* 026953CC */ _t86 = cpu->r[1] + 0x00000028u;
|
|
/* 026953CC */ rbrew_write_f32(cpu->mem, _t86, cpu->f[12]);
|
|
/* 026953D0 */ /* nop */
|
|
/* 026953D4 */ _t87 = cpu->r[1] + 0x00000028u;
|
|
/* 026953D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t87);
|
|
/* 026953D8 */ /* nop */
|
|
/* 026953DC */ _t88 = cpu->r[1] + 0x00000020u;
|
|
/* 026953DC */ cpu->r[8] = rbrew_read32(cpu->mem, _t88);
|
|
/* 026953E0 */ _t89 = cpu->r[1] + 0x00000024u;
|
|
/* 026953E0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t89);
|
|
/* 026953E4 */ _t90 = cpu->r[1] + 0x0000002Cu;
|
|
/* 026953E4 */ rbrew_write32(cpu->mem, _t90, cpu->r[8]);
|
|
/* 026953E8 */ _t91 = cpu->r[1] + 0x0000002Cu;
|
|
/* 026953E8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t91);
|
|
/* 026953EC */ _t92 = cpu->r[1] + 0x00000030u;
|
|
/* 026953EC */ rbrew_write32(cpu->mem, _t92, cpu->r[9]);
|
|
/* 026953F0 */ _t93 = cpu->r[1] + 0x00000030u;
|
|
/* 026953F0 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t93);
|
|
/* 026953F4 */ _t94 = cpu->r[1] + 0x00000034u;
|
|
/* 026953F4 */ rbrew_write32(cpu->mem, _t94, cpu->r[0]);
|
|
/* 026953F8 */ _t95 = cpu->r[1] + 0x00000034u;
|
|
/* 026953F8 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t95);
|
|
/* 026953FC */ _t96 = cpu->r[4] + 0x00000030u;
|
|
/* 026953FC */ rbrew_write_f32(cpu->mem, _t96, cpu->f[8]);
|
|
/* 02695400 */ _t97 = cpu->r[4] + 0x0000002Cu;
|
|
/* 02695400 */ rbrew_write_f32(cpu->mem, _t97, cpu->f[0]);
|
|
/* 02695404 */ _t98 = cpu->r[4] + 0x00000034u;
|
|
/* 02695404 */ rbrew_write_f32(cpu->mem, _t98, cpu->f[9]);
|
|
/* 02695408 */ goto L_02695490;
|
|
L_0269540C: ; // 0x269540c
|
|
/* 0269540C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 02695410 */ _t99 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02695410 */ _t100 = _t99 & 0x00000001u;
|
|
/* 02695410 */ if (_t100) goto L_02695414; else goto L_02695418;
|
|
L_02695414: ; // 0x2695414
|
|
/* 02695414 */ cpu->f[13] = cpu->f[0];
|
|
L_02695418: ; // 0x2695418
|
|
/* 02695418 */ /* nop */
|
|
/* 0269541C */ /* nop */
|
|
/* 02695420 */ _t101 = cpu->r[1] + 0x00000014u;
|
|
/* 02695420 */ cpu->r[12] = rbrew_read32(cpu->mem, _t101);
|
|
/* 02695424 */ cpu->f[12] = cpu->f[9] * cpu->f[13];
|
|
/* 02695428 */ _t102 = cpu->r[4] + 0x0000001Cu;
|
|
/* 02695428 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t102);
|
|
/* 0269542C */ _t103 = cpu->r[1] + 0x00000018u;
|
|
/* 0269542C */ cpu->r[8] = rbrew_read32(cpu->mem, _t103);
|
|
/* 02695430 */ _t104 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02695430 */ rbrew_write_f32(cpu->mem, _t104, cpu->f[12]);
|
|
/* 02695434 */ _t105 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02695434 */ cpu->r[0] = rbrew_read32(cpu->mem, _t105);
|
|
/* 02695438 */ _t106 = cpu->r[1] + 0x00000048u;
|
|
/* 02695438 */ rbrew_write32(cpu->mem, _t106, cpu->r[8]);
|
|
/* 0269543C */ _t107 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0269543C */ rbrew_write32(cpu->mem, _t107, cpu->r[0]);
|
|
/* 02695440 */ _t108 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02695440 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t108);
|
|
/* 02695444 */ _t109 = cpu->r[1] + 0x00000044u;
|
|
/* 02695444 */ rbrew_write32(cpu->mem, _t109, cpu->r[12]);
|
|
/* 02695448 */ /* nop */
|
|
/* 0269544C */ cpu->f[12] = cpu->f[9] + cpu->f[11];
|
|
/* 02695450 */ /* nop */
|
|
/* 02695454 */ _t110 = cpu->r[1] + 0x00000028u;
|
|
/* 02695454 */ rbrew_write_f32(cpu->mem, _t110, cpu->f[12]);
|
|
/* 02695458 */ /* nop */
|
|
/* 0269545C */ _t111 = cpu->r[1] + 0x00000028u;
|
|
/* 0269545C */ cpu->r[0] = rbrew_read32(cpu->mem, _t111);
|
|
/* 02695460 */ /* nop */
|
|
/* 02695464 */ _t112 = cpu->r[1] + 0x00000020u;
|
|
/* 02695464 */ cpu->r[8] = rbrew_read32(cpu->mem, _t112);
|
|
/* 02695468 */ _t113 = cpu->r[1] + 0x00000024u;
|
|
/* 02695468 */ cpu->r[9] = rbrew_read32(cpu->mem, _t113);
|
|
/* 0269546C */ _t114 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0269546C */ rbrew_write32(cpu->mem, _t114, cpu->r[8]);
|
|
/* 02695470 */ _t115 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02695470 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t115);
|
|
/* 02695474 */ _t116 = cpu->r[1] + 0x00000030u;
|
|
/* 02695474 */ rbrew_write32(cpu->mem, _t116, cpu->r[9]);
|
|
/* 02695478 */ _t117 = cpu->r[1] + 0x00000030u;
|
|
/* 02695478 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t117);
|
|
/* 0269547C */ _t118 = cpu->r[1] + 0x00000034u;
|
|
/* 0269547C */ rbrew_write32(cpu->mem, _t118, cpu->r[0]);
|
|
/* 02695480 */ _t119 = cpu->r[1] + 0x00000034u;
|
|
/* 02695480 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t119);
|
|
/* 02695484 */ _t120 = cpu->r[4] + 0x0000002Cu;
|
|
/* 02695484 */ rbrew_write_f32(cpu->mem, _t120, cpu->f[0]);
|
|
/* 02695488 */ _t121 = cpu->r[4] + 0x00000034u;
|
|
/* 02695488 */ rbrew_write_f32(cpu->mem, _t121, cpu->f[9]);
|
|
/* 0269548C */ _t122 = cpu->r[4] + 0x00000030u;
|
|
/* 0269548C */ rbrew_write_f32(cpu->mem, _t122, cpu->f[8]);
|
|
L_02695490: ; // 0x2695490
|
|
/* 02695490 */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 02695494 */ return;
|
|
}
|
|
|
|
// fn_02695498 @ 0x2695498
|
|
void Gambit_fn_02695498(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02695498: ; // 0x2695498
|
|
/* 02695498 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 02695498 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02695498 */ cpu->r[1] = _t0;
|
|
/* 0269549C */ /* nop */
|
|
/* 026954A0 */ cpu->r[0] = cpu->lr;
|
|
/* 026954A4 */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 026954A4 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 026954A8 */ cpu->r[29] = cpu->r[3];
|
|
/* 026954AC */ cpu->r[3] = cpu->r[29] + 0x00000010u;
|
|
/* 026954B0 */ Gambit_fn_02699230(cpu);
|
|
/* 026954B4 */ _t2 = cpu->r[29] + 0x00000094u;
|
|
/* 026954B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 026954B8 */ _t3 = cpu->r[29] + 0x0000009Cu;
|
|
/* 026954B8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t3);
|
|
/* 026954BC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[0]);
|
|
/* 026954C0 */ cpu->r[28] = 0x00000000u;
|
|
/* 026954C4 */ _t4 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026954C4 */ _t5 = _t4 & 0x00000001u;
|
|
/* 026954C4 */ if (_t5) goto L_026954C8; else goto L_026954D4;
|
|
L_026954C8: ; // 0x26954c8
|
|
/* 026954C8 */ cpu->r[10] = (uint32_t)((int32_t)cpu->r[8] * (int32_t)0x00000014u);
|
|
/* 026954CC */ _t6 = cpu->r[29] + 0x00000098u;
|
|
/* 026954CC */ cpu->r[11] = rbrew_read32(cpu->mem, _t6);
|
|
/* 026954D0 */ cpu->r[28] = cpu->r[11] + cpu->r[10];
|
|
L_026954D4: ; // 0x26954d4
|
|
/* 026954D4 */ _t7 = cpu->r[28] + 0x00000000u;
|
|
/* 026954D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 026954D8 */ cpu->r[30] = 0x00000000u;
|
|
/* 026954DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]);
|
|
/* 026954E0 */ _t8 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026954E0 */ _t9 = _t8 & 0x00000001u;
|
|
/* 026954E0 */ if (_t9) goto L_026954E4; else goto L_02695540;
|
|
L_026954E4: ; // 0x26954e4
|
|
/* 026954E4 */ cpu->r[27] = 0x00000000u;
|
|
L_026954E8: ; // 0x26954e8
|
|
/* 026954E8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[0]);
|
|
/* 026954EC */ cpu->r[31] = 0x00000000u;
|
|
/* 026954F0 */ _t10 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026954F0 */ _t11 = _t10 & 0x00000001u;
|
|
/* 026954F0 */ if (_t11) goto L_026954F4; else goto L_026954FC;
|
|
L_026954F4: ; // 0x26954f4
|
|
/* 026954F4 */ _t12 = cpu->r[28] + 0x00000008u;
|
|
/* 026954F4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 026954F8 */ _t13 = cpu->r[12] + cpu->r[27];
|
|
/* 026954F8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
L_026954FC: ; // 0x26954fc
|
|
/* 026954FC */ cpu->r[3] = cpu->r[29];
|
|
/* 02695500 */ cpu->r[4] = cpu->r[31];
|
|
/* 02695504 */ Gambit_fn_02694F40(cpu);
|
|
/* 02695508 */ cpu->r[3] = cpu->r[29];
|
|
/* 0269550C */ cpu->r[4] = cpu->r[31];
|
|
/* 02695510 */ Gambit_fn_02694FFC(cpu);
|
|
/* 02695514 */ cpu->r[3] = cpu->r[29];
|
|
/* 02695518 */ cpu->r[4] = cpu->r[31];
|
|
/* 0269551C */ Gambit_fn_02695108(cpu);
|
|
/* 02695520 */ cpu->r[3] = cpu->r[29];
|
|
/* 02695524 */ cpu->r[4] = cpu->r[31];
|
|
/* 02695528 */ Gambit_fn_026951C0(cpu);
|
|
/* 0269552C */ _t14 = cpu->r[28] + 0x00000000u;
|
|
/* 0269552C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02695530 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02695534 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]);
|
|
/* 02695538 */ cpu->r[27] = cpu->r[27] + 0x00000004u;
|
|
/* 0269553C */ _t15 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269553C */ _t16 = _t15 & 0x00000001u;
|
|
/* 0269553C */ if (_t16) goto L_026954E8; else goto L_02695540;
|
|
L_02695540: ; // 0x2695540
|
|
/* 02695540 */ cpu->r[0] = 0x00000001u;
|
|
/* 02695544 */ _t17 = cpu->r[29] + 0x000000A5u;
|
|
/* 02695544 */ rbrew_write8(cpu->mem, _t17, (uint8_t)cpu->r[0]);
|
|
/* 02695548 */ /* nop */
|
|
/* 0269554C */ _t18 = cpu->r[1] + 0x00000024u;
|
|
/* 0269554C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02695550 */ cpu->lr = cpu->r[0];
|
|
/* 02695554 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 02695558 */ return;
|
|
}
|
|
|
|
// fn_0269555C @ 0x269555c
|
|
void Gambit_fn_0269555C(CPUState* cpu) {
|
|
uint32_t _t0, _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_0269555C: ; // 0x269555c
|
|
/* 0269555C */ cpu->r[0] = cpu->lr;
|
|
/* 02695560 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02695560 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02695560 */ cpu->r[1] = _t0;
|
|
/* 02695564 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02695564 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 02695568 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02695568 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 0269556C */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 0269556C */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 02695570 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 02695570 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 02695574 */ cpu->r[30] = cpu->r[3];
|
|
/* 02695578 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02695578 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0269557C */ _t6 = cpu->r[30] + 0x00000008u;
|
|
/* 0269557C */ cpu->r[11] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02695580 */ _t7 = cpu->r[11] + 0x000006BBu;
|
|
/* 02695580 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 02695584 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02695588 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02695588 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02695588 */ if (_t9) goto L_0269560C; else goto L_0269558C;
|
|
L_0269558C: ; // 0x269558c
|
|
/* 0269558C */ _t10 = cpu->r[30] + 0x000000A4u;
|
|
/* 0269558C */ cpu->r[8] = rbrew_read8(cpu->mem, _t10);
|
|
/* 02695590 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02695594 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02695594 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02695594 */ if (_t12) goto L_0269560C; else goto L_02695598;
|
|
L_02695598: ; // 0x2695598
|
|
/* 02695598 */ cpu->r[3] = cpu->r[30];
|
|
/* 0269559C */ Gambit_fn_026943D4(cpu);
|
|
/* 026955A0 */ _t13 = cpu->r[30] + 0x00000094u;
|
|
/* 026955A0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t13);
|
|
/* 026955A4 */ _t14 = cpu->r[30] + 0x0000009Cu;
|
|
/* 026955A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 026955A8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[9]);
|
|
/* 026955AC */ cpu->r[29] = 0x00000000u;
|
|
/* 026955B0 */ _t15 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026955B0 */ _t16 = _t15 & 0x00000001u;
|
|
/* 026955B0 */ if (_t16) goto L_026955B4; else goto L_026955C0;
|
|
L_026955B4: ; // 0x26955b4
|
|
/* 026955B4 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x00000014u);
|
|
/* 026955B8 */ _t17 = cpu->r[30] + 0x00000098u;
|
|
/* 026955B8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t17);
|
|
/* 026955BC */ cpu->r[29] = cpu->r[11] + cpu->r[0];
|
|
L_026955C0: ; // 0x26955c0
|
|
/* 026955C0 */ _t18 = cpu->r[29] + 0x00000000u;
|
|
/* 026955C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 026955C4 */ cpu->r[31] = 0x00000000u;
|
|
/* 026955C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[0]);
|
|
/* 026955CC */ _t19 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026955CC */ _t20 = _t19 & 0x00000001u;
|
|
/* 026955CC */ if (_t20) goto L_026955D0; else goto L_02695604;
|
|
L_026955D0: ; // 0x26955d0
|
|
/* 026955D0 */ cpu->r[28] = 0x00000000u;
|
|
L_026955D4: ; // 0x26955d4
|
|
/* 026955D4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 026955D8 */ cpu->r[4] = 0x00000000u;
|
|
/* 026955DC */ _t21 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026955DC */ _t22 = _t21 & 0x00000001u;
|
|
/* 026955DC */ if (_t22) goto L_026955E0; else goto L_026955E8;
|
|
L_026955E0: ; // 0x26955e0
|
|
/* 026955E0 */ _t23 = cpu->r[29] + 0x00000008u;
|
|
/* 026955E0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t23);
|
|
/* 026955E4 */ _t24 = cpu->r[12] + cpu->r[28];
|
|
/* 026955E4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t24);
|
|
L_026955E8: ; // 0x26955e8
|
|
/* 026955E8 */ cpu->r[3] = cpu->r[30];
|
|
/* 026955EC */ Gambit_fn_02694CE8(cpu);
|
|
/* 026955F0 */ _t25 = cpu->r[29] + 0x00000000u;
|
|
/* 026955F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 026955F4 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 026955F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[0]);
|
|
/* 026955FC */ cpu->r[28] = cpu->r[28] + 0x00000004u;
|
|
/* 02695600 */ _t26 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02695600 */ _t27 = _t26 & 0x00000001u;
|
|
/* 02695600 */ if (_t27) goto L_026955D4; else goto L_02695604;
|
|
L_02695604: ; // 0x2695604
|
|
/* 02695604 */ cpu->r[3] = cpu->r[30];
|
|
/* 02695608 */ Gambit_fn_02695498(cpu);
|
|
L_0269560C: ; // 0x269560c
|
|
/* 0269560C */ _t28 = cpu->r[1] + 0x00000008u;
|
|
/* 0269560C */ cpu->r[28] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02695610 */ _t29 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02695610 */ cpu->r[29] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02695614 */ _t30 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02695614 */ cpu->r[0] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02695618 */ _t31 = cpu->r[1] + 0x00000010u;
|
|
/* 02695618 */ cpu->r[30] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0269561C */ cpu->lr = cpu->r[0];
|
|
/* 02695620 */ _t32 = cpu->r[1] + 0x00000014u;
|
|
/* 02695620 */ cpu->r[31] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02695624 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02695628 */ return;
|
|
}
|
|
|
|
// fn_02695560 @ 0x2695560
|
|
void Gambit_fn_02695560(CPUState* cpu) {
|
|
uint32_t _t0, _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_02695560: ; // 0x2695560
|
|
/* 02695560 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02695560 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02695560 */ cpu->r[1] = _t0;
|
|
/* 02695564 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02695564 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 02695568 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02695568 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 0269556C */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 0269556C */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 02695570 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 02695570 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 02695574 */ cpu->r[30] = cpu->r[3];
|
|
/* 02695578 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02695578 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0269557C */ _t6 = cpu->r[30] + 0x00000008u;
|
|
/* 0269557C */ cpu->r[11] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02695580 */ _t7 = cpu->r[11] + 0x000006BBu;
|
|
/* 02695580 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 02695584 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02695588 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02695588 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02695588 */ if (_t9) goto L_0269560C; else goto L_0269558C;
|
|
L_0269558C: ; // 0x269558c
|
|
/* 0269558C */ _t10 = cpu->r[30] + 0x000000A4u;
|
|
/* 0269558C */ cpu->r[8] = rbrew_read8(cpu->mem, _t10);
|
|
/* 02695590 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02695594 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02695594 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02695594 */ if (_t12) goto L_0269560C; else goto L_02695598;
|
|
L_02695598: ; // 0x2695598
|
|
/* 02695598 */ cpu->r[3] = cpu->r[30];
|
|
/* 0269559C */ Gambit_fn_026943D4(cpu);
|
|
/* 026955A0 */ _t13 = cpu->r[30] + 0x00000094u;
|
|
/* 026955A0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t13);
|
|
/* 026955A4 */ _t14 = cpu->r[30] + 0x0000009Cu;
|
|
/* 026955A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 026955A8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[9]);
|
|
/* 026955AC */ cpu->r[29] = 0x00000000u;
|
|
/* 026955B0 */ _t15 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026955B0 */ _t16 = _t15 & 0x00000001u;
|
|
/* 026955B0 */ if (_t16) goto L_026955B4; else goto L_026955C0;
|
|
L_026955B4: ; // 0x26955b4
|
|
/* 026955B4 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x00000014u);
|
|
/* 026955B8 */ _t17 = cpu->r[30] + 0x00000098u;
|
|
/* 026955B8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t17);
|
|
/* 026955BC */ cpu->r[29] = cpu->r[11] + cpu->r[0];
|
|
L_026955C0: ; // 0x26955c0
|
|
/* 026955C0 */ _t18 = cpu->r[29] + 0x00000000u;
|
|
/* 026955C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 026955C4 */ cpu->r[31] = 0x00000000u;
|
|
/* 026955C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[0]);
|
|
/* 026955CC */ _t19 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026955CC */ _t20 = _t19 & 0x00000001u;
|
|
/* 026955CC */ if (_t20) goto L_026955D0; else goto L_02695604;
|
|
L_026955D0: ; // 0x26955d0
|
|
/* 026955D0 */ cpu->r[28] = 0x00000000u;
|
|
L_026955D4: ; // 0x26955d4
|
|
/* 026955D4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 026955D8 */ cpu->r[4] = 0x00000000u;
|
|
/* 026955DC */ _t21 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026955DC */ _t22 = _t21 & 0x00000001u;
|
|
/* 026955DC */ if (_t22) goto L_026955E0; else goto L_026955E8;
|
|
L_026955E0: ; // 0x26955e0
|
|
/* 026955E0 */ _t23 = cpu->r[29] + 0x00000008u;
|
|
/* 026955E0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t23);
|
|
/* 026955E4 */ _t24 = cpu->r[12] + cpu->r[28];
|
|
/* 026955E4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t24);
|
|
L_026955E8: ; // 0x26955e8
|
|
/* 026955E8 */ cpu->r[3] = cpu->r[30];
|
|
/* 026955EC */ Gambit_fn_02694CE8(cpu);
|
|
/* 026955F0 */ _t25 = cpu->r[29] + 0x00000000u;
|
|
/* 026955F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 026955F4 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 026955F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[0]);
|
|
/* 026955FC */ cpu->r[28] = cpu->r[28] + 0x00000004u;
|
|
/* 02695600 */ _t26 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02695600 */ _t27 = _t26 & 0x00000001u;
|
|
/* 02695600 */ if (_t27) goto L_026955D4; else goto L_02695604;
|
|
L_02695604: ; // 0x2695604
|
|
/* 02695604 */ cpu->r[3] = cpu->r[30];
|
|
/* 02695608 */ Gambit_fn_02695498(cpu);
|
|
L_0269560C: ; // 0x269560c
|
|
/* 0269560C */ _t28 = cpu->r[1] + 0x00000008u;
|
|
/* 0269560C */ cpu->r[28] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02695610 */ _t29 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02695610 */ cpu->r[29] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02695614 */ _t30 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02695614 */ cpu->r[0] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02695618 */ _t31 = cpu->r[1] + 0x00000010u;
|
|
/* 02695618 */ cpu->r[30] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0269561C */ cpu->lr = cpu->r[0];
|
|
/* 02695620 */ _t32 = cpu->r[1] + 0x00000014u;
|
|
/* 02695620 */ cpu->r[31] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02695624 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02695628 */ return;
|
|
}
|
|
|
|
// fn_0269562C @ 0x269562c
|
|
void Gambit_fn_0269562C(CPUState* cpu) {
|
|
L_0269562C: ; // 0x269562c
|
|
/* 0269562C */ return;
|
|
}
|
|
|
|
// fn_02695630 @ 0x2695630
|
|
void Gambit_fn_02695630(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_02695630: ; // 0x2695630
|
|
/* 02695630 */ _t0 = cpu->r[3] + 0x0000009Cu;
|
|
/* 02695630 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02695634 */ _t1 = cpu->r[3] + 0x00000008u;
|
|
/* 02695634 */ cpu->r[10] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02695638 */ _t2 = cpu->r[3] + 0x00000094u;
|
|
/* 02695638 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0269563C */ _t3 = cpu->r[10] + 0x00000748u;
|
|
/* 0269563C */ cpu->r[10] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02695640 */ cpu->r[0] = cpu->r[11] + cpu->r[12];
|
|
/* 02695644 */ _t4 = cpu->r[10] + 0x000003DCu;
|
|
/* 02695644 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02695648 */ cpu->r[10] = cpu->r[0] - cpu->r[11];
|
|
/* 0269564C */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[10] / (int32_t)cpu->r[12]);
|
|
/* 02695650 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)cpu->r[12]);
|
|
/* 02695654 */ cpu->r[10] = cpu->r[10] - cpu->r[0];
|
|
/* 02695658 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[12]);
|
|
/* 0269565C */ cpu->r[0] = 0x00000000u;
|
|
/* 02695660 */ _t5 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02695660 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02695660 */ if (_t6) goto L_02695664; else goto L_02695670;
|
|
L_02695664: ; // 0x2695664
|
|
/* 02695664 */ cpu->r[10] = (uint32_t)((int32_t)cpu->r[10] * (int32_t)0x00000014u);
|
|
/* 02695668 */ _t7 = cpu->r[3] + 0x00000098u;
|
|
/* 02695668 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269566C */ cpu->r[0] = cpu->r[11] + cpu->r[10];
|
|
L_02695670: ; // 0x2695670
|
|
/* 02695670 */ cpu->r[3] = cpu->r[0];
|
|
/* 02695674 */ return;
|
|
}
|
|
|
|
// fn_02695678 @ 0x2695678
|
|
void Gambit_fn_02695678(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02695678: ; // 0x2695678
|
|
/* 02695678 */ cpu->r[12] = 0x100E0000u;
|
|
/* 0269567C */ _t0 = cpu->r[12] + 0x00003BA8u;
|
|
/* 0269567C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 02695680 */ cpu->r[12] = 0x100E0000u;
|
|
/* 02695684 */ cpu->r[11] = 0x101F0000u;
|
|
/* 02695688 */ _t1 = cpu->r[12] + 0x00003BC8u;
|
|
/* 02695688 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 0269568C */ cpu->r[12] = 0x100E0000u;
|
|
/* 02695690 */ _t2 = cpu->r[11] + 0xFFFFD8C8u;
|
|
/* 02695690 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[13]);
|
|
/* 02695690 */ cpu->r[11] = _t2;
|
|
/* 02695694 */ _t3 = cpu->r[12] + 0x00003BCCu;
|
|
/* 02695694 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 02695698 */ _t4 = cpu->r[11] + 0x00000004u;
|
|
/* 02695698 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[12]);
|
|
/* 0269569C */ _t5 = cpu->r[11] + 0x00000008u;
|
|
/* 0269569C */ rbrew_write_f32(cpu->mem, _t5, cpu->f[0]);
|
|
/* 026956A0 */ return;
|
|
}
|
|
|
|
// fn_026956A4 @ 0x26956a4
|
|
void Gambit_fn_026956A4(CPUState* cpu) {
|
|
L_026956A4: ; // 0x26956a4
|
|
/* 026956A4 */ return;
|
|
}
|
|
|
|
// fn_026956A8 @ 0x26956a8
|
|
void Gambit_fn_026956A8(CPUState* cpu) {
|
|
L_026956A8: ; // 0x26956a8
|
|
/* 026956A8 */ return;
|
|
}
|
|
|
|
// fn_026956AC @ 0x26956ac
|
|
void Gambit_fn_026956AC(CPUState* cpu) {
|
|
uint32_t _t0, _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_026956AC: ; // 0x26956ac
|
|
/* 026956AC */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 026956AC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 026956AC */ cpu->r[1] = _t0;
|
|
/* 026956B0 */ _t1 = cpu->r[1] + 0x00000028u;
|
|
/* 026956B0 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 026956B4 */ /* nop */
|
|
/* 026956B8 */ cpu->r[0] = cpu->lr;
|
|
/* 026956BC */ _t2 = cpu->r[1] + 0x00000018u;
|
|
/* 026956BC */ rbrew_write_f64(cpu->mem, _t2, cpu->f[30]);
|
|
/* 026956C0 */ /* nop */
|
|
/* 026956C4 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 026956C4 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 026956C8 */ cpu->r[31] = cpu->r[3];
|
|
/* 026956C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 026956CC */ _t4 = cpu->r[1] + 0x00000030u;
|
|
/* 026956CC */ rbrew_write_f32(cpu->mem, _t4, cpu->f[31]);
|
|
/* 026956D0 */ _t5 = cpu->r[1] + 0x00000020u;
|
|
/* 026956D0 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[30]);
|
|
/* 026956D4 */ _t6 = cpu->r[1] + 0x00000010u;
|
|
/* 026956D4 */ rbrew_write32(cpu->mem, _t6, cpu->r[30]);
|
|
/* 026956D8 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026956D8 */ rbrew_write32(cpu->mem, _t7, cpu->r[29]);
|
|
/* 026956DC */ cpu->r[30] = cpu->r[5];
|
|
/* 026956E0 */ _t8 = cpu->r[1] + 0x0000003Cu;
|
|
/* 026956E0 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 026956E4 */ cpu->r[29] = cpu->r[4];
|
|
/* 026956E8 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026956E8 */ _t10 = _t9 & 0x00000001u;
|
|
/* 026956E8 */ if (_t10) goto L_026956EC; else goto L_026956FC;
|
|
L_026956EC: ; // 0x26956ec
|
|
/* 026956EC */ cpu->r[3] = 0x000000B0u;
|
|
/* 026956F0 */ Gambit_fn_02801A78(cpu);
|
|
/* 026956F4 */ cpu->r[31] = cpu->r[3];
|
|
/* 026956F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 026956F8 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026956F8 */ _t12 = _t11 & 0x00000001u;
|
|
/* 026956F8 */ if (_t12) goto L_026957AC; else goto L_026956FC;
|
|
L_026956FC: ; // 0x26956fc
|
|
/* 026956FC */ cpu->r[3] = cpu->r[31];
|
|
/* 02695700 */ cpu->r[4] = cpu->r[29];
|
|
/* 02695704 */ cpu->r[5] = cpu->r[30];
|
|
/* 02695708 */ Gambit_fn_0269383C(cpu);
|
|
/* 0269570C */ cpu->r[10] = 0x100E0000u;
|
|
/* 02695710 */ cpu->r[0] = 0x100E0000u;
|
|
/* 02695714 */ cpu->r[12] = 0x100E0000u;
|
|
/* 02695718 */ _t13 = cpu->r[10] + 0x00003C20u;
|
|
/* 02695718 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 0269571C */ cpu->r[0] = cpu->r[0] + 0x00003C58u;
|
|
/* 02695720 */ _t14 = cpu->r[12] + 0x00003C24u;
|
|
/* 02695720 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 02695724 */ cpu->f[1] = cpu->f[30];
|
|
/* 02695728 */ _t15 = cpu->r[31] + 0x00000004u;
|
|
/* 02695728 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 0269572C */ cpu->r[4] = 0x101F0000u;
|
|
/* 02695730 */ cpu->f[2] = cpu->f[31];
|
|
/* 02695734 */ cpu->r[3] = cpu->r[31] + 0x00000014u;
|
|
/* 02695738 */ cpu->r[30] = 0x00000000u;
|
|
/* 0269573C */ cpu->r[4] = cpu->r[4] + 0x00006338u;
|
|
/* 02695740 */ _t16 = cpu->r[31] + 0x00000010u;
|
|
/* 02695740 */ rbrew_write32(cpu->mem, _t16, cpu->r[30]);
|
|
/* 02695744 */ Gambit_fn_02698DA8(cpu);
|
|
/* 02695748 */ cpu->r[3] = cpu->r[31] + 0x00000098u;
|
|
/* 02695748 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0269574C */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269574C */ _t18 = _t17 & 0x00000001u;
|
|
/* 0269574C */ if (_t18) goto L_02695750; else goto L_02695760;
|
|
L_02695750: ; // 0x2695750
|
|
/* 02695750 */ cpu->r[3] = 0x00000008u;
|
|
/* 02695754 */ Gambit_fn_02801A78(cpu);
|
|
/* 02695758 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0269575C */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269575C */ _t20 = _t19 & 0x00000001u;
|
|
/* 0269575C */ if (_t20) goto L_02695768; else goto L_02695760;
|
|
L_02695760: ; // 0x2695760
|
|
/* 02695760 */ _t21 = cpu->r[3] + 0x00000004u;
|
|
/* 02695760 */ rbrew_write32(cpu->mem, _t21, cpu->r[30]);
|
|
/* 02695764 */ _t22 = cpu->r[3] + 0x00000000u;
|
|
/* 02695764 */ rbrew_write32(cpu->mem, _t22, cpu->r[30]);
|
|
L_02695768: ; // 0x2695768
|
|
/* 02695768 */ _t23 = cpu->r[31] + 0x000000ADu;
|
|
/* 02695768 */ rbrew_write8(cpu->mem, _t23, (uint8_t)cpu->r[30]);
|
|
/* 0269576C */ cpu->r[12] = 0x100E0000u;
|
|
/* 02695770 */ _t24 = cpu->r[31] + 0x000000ACu;
|
|
/* 02695770 */ rbrew_write8(cpu->mem, _t24, (uint8_t)cpu->r[30]);
|
|
/* 02695774 */ cpu->f[1] = cpu->f[30];
|
|
/* 02695778 */ _t25 = cpu->r[12] + 0x00003C28u;
|
|
/* 02695778 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 0269577C */ cpu->r[3] = cpu->r[31] + 0x00000014u;
|
|
/* 02695780 */ _t26 = cpu->r[31] + 0x000000A0u;
|
|
/* 02695780 */ rbrew_write32(cpu->mem, _t26, cpu->r[30]);
|
|
/* 02695784 */ _t27 = cpu->r[31] + 0x000000A4u;
|
|
/* 02695784 */ rbrew_write32(cpu->mem, _t27, cpu->r[30]);
|
|
/* 02695788 */ _t28 = cpu->r[31] + 0x000000A8u;
|
|
/* 02695788 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[0]);
|
|
/* 0269578C */ Gambit_fn_0269947C(cpu);
|
|
/* 02695790 */ cpu->f[1] = cpu->f[31];
|
|
/* 02695794 */ cpu->r[3] = cpu->r[31] + 0x00000014u;
|
|
/* 02695798 */ Gambit_fn_02699484(cpu);
|
|
/* 0269579C */ cpu->r[4] = 0x101F0000u;
|
|
/* 026957A0 */ cpu->r[3] = cpu->r[31] + 0x00000014u;
|
|
/* 026957A4 */ cpu->r[4] = cpu->r[4] + 0xFFFFD8D4u;
|
|
/* 026957A8 */ Gambit_fn_02699458(cpu);
|
|
L_026957AC: ; // 0x26957ac
|
|
/* 026957AC */ _t29 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026957AC */ cpu->r[29] = rbrew_read32(cpu->mem, _t29);
|
|
/* 026957B0 */ _t30 = cpu->r[1] + 0x00000030u;
|
|
/* 026957B0 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 026957B4 */ _t31 = cpu->r[1] + 0x00000020u;
|
|
/* 026957B4 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 026957B8 */ _t32 = cpu->r[1] + 0x00000028u;
|
|
/* 026957B8 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t32);
|
|
/* 026957BC */ _t33 = cpu->r[1] + 0x00000018u;
|
|
/* 026957BC */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t33);
|
|
/* 026957C0 */ cpu->r[3] = cpu->r[31];
|
|
/* 026957C4 */ _t34 = cpu->r[1] + 0x00000014u;
|
|
/* 026957C4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t34);
|
|
/* 026957C8 */ _t35 = cpu->r[1] + 0x00000010u;
|
|
/* 026957C8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t35);
|
|
/* 026957CC */ _t36 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026957CC */ _t37 = _t36 & 0x00000001u;
|
|
/* 026957CC */ if (_t37) goto L_026957D0; // else: addr-0 trap, fall-through
|
|
L_026957D0: ; // 0x26957d0
|
|
/* 026957D0 */ _t38 = cpu->r[1] + 0x0000003Cu;
|
|
/* 026957D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t38);
|
|
/* 026957D4 */ cpu->lr = cpu->r[0];
|
|
/* 026957D8 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 026957DC */ return;
|
|
}
|
|
|
|
// fn_026957E0 @ 0x26957e0
|
|
void Gambit_fn_026957E0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61;
|
|
|
|
L_026957E0: ; // 0x26957e0
|
|
/* 026957E0 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 026957E0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 026957E0 */ cpu->r[1] = _t0;
|
|
/* 026957E4 */ /* nop */
|
|
/* 026957E8 */ cpu->r[0] = cpu->lr;
|
|
/* 026957EC */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 026957EC */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 026957F0 */ cpu->r[12] = 0x101C0000u;
|
|
/* 026957F4 */ cpu->r[11] = 0x101C0000u;
|
|
/* 026957F8 */ _t2 = cpu->r[12] + 0x00006000u;
|
|
/* 026957F8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 026957FC */ cpu->r[29] = cpu->r[3];
|
|
/* 02695800 */ _t3 = cpu->r[11] + 0x00007F20u;
|
|
/* 02695800 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02695804 */ _t4 = cpu->r[12] + 0x000002B0u;
|
|
/* 02695804 */ cpu->r[8] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02695808 */ _t5 = cpu->r[29] + 0x00000008u;
|
|
/* 02695808 */ cpu->r[5] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0269580C */ cpu->r[12] = cpu->r[8] + cpu->r[11];
|
|
/* 02695810 */ _t6 = cpu->r[12] + 0x00000104u;
|
|
/* 02695810 */ cpu->r[11] = rbrew_read8(cpu->mem, _t6);
|
|
/* 02695814 */ _t7 = cpu->r[8] + 0x00000030u;
|
|
/* 02695814 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02695818 */ cpu->r[4] = rbrew_rlwinm(cpu->r[11], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0269581C */ _t8 = cpu->r[4] + cpu->r[0];
|
|
/* 0269581C */ cpu->r[6] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02695820 */ _t9 = cpu->r[6] + 0x00000004u;
|
|
/* 02695820 */ cpu->r[7] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02695824 */ _t10 = cpu->r[7] + 0x00000000u;
|
|
/* 02695824 */ cpu->r[9] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02695828 */ _t11 = cpu->r[29] + 0x00000010u;
|
|
/* 02695828 */ rbrew_write32(cpu->mem, _t11, cpu->r[9]);
|
|
/* 0269582C */ _t12 = cpu->r[5] + 0x00000748u;
|
|
/* 0269582C */ cpu->r[7] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02695830 */ _t13 = cpu->r[7] + 0x000001FCu;
|
|
/* 02695830 */ cpu->r[8] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02695834 */ cpu->r[25] = cpu->r[8] + 0x00000001u;
|
|
/* 02695834 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 02695838 */ _t14 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02695838 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02695838 */ if (_t15) goto L_0269583C; else goto L_026958D0;
|
|
L_0269583C: ; // 0x269583c
|
|
/* 0269583C */ cpu->r[3] = 0x101D0000u;
|
|
/* 02695840 */ _t16 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02695840 */ cpu->r[3] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02695844 */ Gambit_fn_02826F20(cpu);
|
|
/* 02695848 */ _t17 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02695848 */ cpu->r[9] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0269584C */ _t18 = cpu->r[9] + 0x00000034u;
|
|
/* 0269584C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02695850 */ cpu->ctr = cpu->r[0];
|
|
/* 02695854 */ cpu->r[5] = 0x00000004u;
|
|
/* 02695858 */ cpu->r[4] = (uint32_t)((int32_t)cpu->r[25] * (int32_t)0x00000014u);
|
|
/* 0269585C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02695860 */ cpu->r[27] = cpu->r[3];
|
|
/* 02695864 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 02695868 */ cpu->r[31] = cpu->r[25];
|
|
/* 0269586C */ cpu->r[7] = 0x00000000u;
|
|
/* 02695870 */ _t19 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02695870 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02695870 */ if (_t20) goto L_02695878; else goto L_02695874;
|
|
L_02695874: ; // 0x2695874
|
|
/* 02695874 */ cpu->r[31] = 0x00000001u;
|
|
L_02695878: ; // 0x2695878
|
|
/* 02695878 */ cpu->r[26] = (uint32_t)((int32_t)cpu->r[7] * (int32_t)0x00000014u);
|
|
/* 0269587C */ cpu->r[28] = 0x00000000u;
|
|
L_02695880: ; // 0x2695880
|
|
/* 02695880 */ cpu->r[30] = cpu->r[27] + cpu->r[26];
|
|
/* 02695880 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02695884 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02695884 */ _t22 = _t21 & 0x00000001u;
|
|
/* 02695884 */ if (_t22) goto L_026958B4; else goto L_02695888;
|
|
L_02695888: ; // 0x2695888
|
|
/* 02695888 */ cpu->r[10] = cpu->r[30];
|
|
/* 02695888 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0269588C */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269588C */ _t24 = _t23 & 0x00000001u;
|
|
/* 0269588C */ if (_t24) goto L_02695890; else goto L_026958A0;
|
|
L_02695890: ; // 0x2695890
|
|
/* 02695890 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02695894 */ Gambit_fn_02801A78(cpu);
|
|
/* 02695898 */ cpu->r[10] = cpu->r[3];
|
|
/* 02695898 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0269589C */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269589C */ _t26 = _t25 & 0x00000001u;
|
|
/* 0269589C */ if (_t26) goto L_026958AC; else goto L_026958A0;
|
|
L_026958A0: ; // 0x26958a0
|
|
/* 026958A0 */ _t27 = cpu->r[10] + 0x00000004u;
|
|
/* 026958A0 */ rbrew_write32(cpu->mem, _t27, cpu->r[28]);
|
|
/* 026958A4 */ _t28 = cpu->r[10] + 0x00000000u;
|
|
/* 026958A4 */ rbrew_write32(cpu->mem, _t28, cpu->r[28]);
|
|
/* 026958A8 */ _t29 = cpu->r[10] + 0x00000008u;
|
|
/* 026958A8 */ rbrew_write32(cpu->mem, _t29, cpu->r[28]);
|
|
L_026958AC: ; // 0x26958ac
|
|
/* 026958AC */ _t30 = cpu->r[30] + 0x00000010u;
|
|
/* 026958AC */ rbrew_write32(cpu->mem, _t30, cpu->r[28]);
|
|
/* 026958B0 */ _t31 = cpu->r[30] + 0x0000000Cu;
|
|
/* 026958B0 */ rbrew_write32(cpu->mem, _t31, cpu->r[28]);
|
|
L_026958B4: ; // 0x26958b4
|
|
/* 026958B4 */ cpu->r[31] = cpu->r[31] + 0xFFFFFFFFu;
|
|
/* 026958B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 026958B8 */ cpu->r[26] = cpu->r[26] + 0x00000014u;
|
|
/* 026958BC */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026958BC */ _t33 = _t32 & 0x00000001u;
|
|
/* 026958BC */ if (_t33) goto L_026958C0; else goto L_02695880;
|
|
L_026958C0: ; // 0x26958c0
|
|
/* 026958C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 026958C4 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026958C4 */ _t35 = _t34 & 0x00000001u;
|
|
/* 026958C4 */ if (_t35) goto L_026958D0; else goto L_026958C8;
|
|
L_026958C8: ; // 0x26958c8
|
|
/* 026958C8 */ _t36 = cpu->r[29] + 0x0000009Cu;
|
|
/* 026958C8 */ rbrew_write32(cpu->mem, _t36, cpu->r[27]);
|
|
/* 026958CC */ _t37 = cpu->r[29] + 0x00000098u;
|
|
/* 026958CC */ rbrew_write32(cpu->mem, _t37, cpu->r[25]);
|
|
L_026958D0: ; // 0x26958d0
|
|
/* 026958D0 */ _t38 = cpu->r[29] + 0x00000098u;
|
|
/* 026958D0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t38);
|
|
/* 026958D4 */ cpu->r[30] = 0x00000000u;
|
|
/* 026958D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[6]);
|
|
/* 026958DC */ _t39 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026958DC */ _t40 = _t39 & 0x00000001u;
|
|
/* 026958DC */ if (_t40) goto L_026958E0; else goto L_02695964;
|
|
L_026958E0: ; // 0x26958e0
|
|
/* 026958E0 */ cpu->r[27] = 0x00000000u;
|
|
/* 026958E4 */ cpu->r[28] = cpu->r[27];
|
|
L_026958E8: ; // 0x26958e8
|
|
/* 026958E8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[6]);
|
|
/* 026958EC */ cpu->r[31] = 0x00000000u;
|
|
/* 026958F0 */ _t41 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026958F0 */ _t42 = _t41 & 0x00000001u;
|
|
/* 026958F0 */ if (_t42) goto L_026958F4; else goto L_026958FC;
|
|
L_026958F4: ; // 0x26958f4
|
|
/* 026958F4 */ _t43 = cpu->r[29] + 0x0000009Cu;
|
|
/* 026958F4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t43);
|
|
/* 026958F8 */ cpu->r[31] = cpu->r[12] + cpu->r[27];
|
|
L_026958FC: ; // 0x26958fc
|
|
/* 026958FC */ cpu->r[5] = 0x00000004u;
|
|
/* 02695900 */ cpu->r[4] = 0x00000000u;
|
|
/* 02695904 */ cpu->r[3] = 0x00000B40u;
|
|
/* 02695908 */ Gambit_fn_02801ADC(cpu);
|
|
/* 0269590C */ cpu->r[10] = cpu->r[3];
|
|
/* 0269590C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02695910 */ _t44 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02695910 */ _t45 = _t44 & 0x00000001u;
|
|
/* 02695910 */ if (_t45) goto L_02695950; else goto L_02695914;
|
|
L_02695914: ; // 0x2695914
|
|
/* 02695914 */ cpu->r[0] = 0x0000001Du;
|
|
/* 02695918 */ cpu->r[4] = 0x00000000u;
|
|
/* 0269591C */ cpu->r[5] = cpu->r[10] + 0x0000005Cu;
|
|
/* 02695920 */ cpu->ctr = cpu->r[0];
|
|
/* 02695924 */ _t46 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02695924 */ rbrew_write32(cpu->mem, _t46, cpu->r[10]);
|
|
L_02695928: ; // 0x2695928
|
|
/* 02695928 */ _t47 = cpu->r[10] + cpu->r[4];
|
|
/* 02695928 */ rbrew_write32(cpu->mem, _t47, cpu->r[5]);
|
|
/* 0269592C */ cpu->r[4] = cpu->r[4] + 0x0000005Cu;
|
|
/* 02695930 */ cpu->r[5] = cpu->r[5] + 0x0000005Cu;
|
|
/* 02695934 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02695934 */ _t48 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02695934 */ _t49 = _t48 >> (0x00000002u & 31u);
|
|
/* 02695934 */ _t50 = _t49 & 0x00000001u;
|
|
/* 02695934 */ if (_t50) goto L_02695928; else goto L_02695938;
|
|
L_02695938: ; // 0x2695938
|
|
/* 02695938 */ _t51 = cpu->r[10] + 0x00000A6Cu;
|
|
/* 02695938 */ rbrew_write32(cpu->mem, _t51, cpu->r[28]);
|
|
/* 0269593C */ cpu->r[5] = cpu->r[10] + 0x00000AC8u;
|
|
/* 02695940 */ cpu->r[3] = cpu->r[31];
|
|
/* 02695944 */ cpu->r[4] = 0x0000001Eu;
|
|
/* 02695948 */ _t52 = cpu->r[31] + 0x00000010u;
|
|
/* 02695948 */ rbrew_write32(cpu->mem, _t52, cpu->r[10]);
|
|
/* 0269594C */ Gambit_fn_028023A8(cpu);
|
|
L_02695950: ; // 0x2695950
|
|
/* 02695950 */ _t53 = cpu->r[29] + 0x00000098u;
|
|
/* 02695950 */ cpu->r[6] = rbrew_read32(cpu->mem, _t53);
|
|
/* 02695954 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02695958 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[6]);
|
|
/* 0269595C */ cpu->r[27] = cpu->r[27] + 0x00000014u;
|
|
/* 02695960 */ _t54 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02695960 */ _t55 = _t54 & 0x00000001u;
|
|
/* 02695960 */ if (_t55) goto L_026958E8; else goto L_02695964;
|
|
L_02695964: ; // 0x2695964
|
|
/* 02695964 */ _t56 = cpu->r[29] + 0x00000008u;
|
|
/* 02695964 */ cpu->r[6] = rbrew_read32(cpu->mem, _t56);
|
|
/* 02695968 */ _t57 = cpu->r[29] + 0x00000004u;
|
|
/* 02695968 */ cpu->r[9] = rbrew_read32(cpu->mem, _t57);
|
|
/* 0269596C */ _t58 = cpu->r[6] + 0x00000024u;
|
|
/* 0269596C */ cpu->r[8] = rbrew_read32(cpu->mem, _t58);
|
|
/* 02695970 */ _t59 = cpu->r[29] + 0x000000A4u;
|
|
/* 02695970 */ rbrew_write32(cpu->mem, _t59, cpu->r[8]);
|
|
/* 02695974 */ _t60 = cpu->r[9] + 0x0000001Cu;
|
|
/* 02695974 */ cpu->r[0] = rbrew_read32(cpu->mem, _t60);
|
|
/* 02695978 */ cpu->ctr = cpu->r[0];
|
|
/* 0269597C */ cpu->r[3] = cpu->r[29];
|
|
/* 02695980 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02695984 */ /* nop */
|
|
/* 02695988 */ _t61 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02695988 */ cpu->r[0] = rbrew_read32(cpu->mem, _t61);
|
|
/* 0269598C */ cpu->lr = cpu->r[0];
|
|
/* 02695990 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 02695994 */ return;
|
|
}
|
|
|
|
// fn_02695998 @ 0x2695998
|
|
void Gambit_fn_02695998(CPUState* cpu) {
|
|
uint32_t _t0, _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_02695998: ; // 0x2695998
|
|
/* 02695998 */ cpu->r[0] = cpu->lr;
|
|
/* 0269599C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0269599C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269599C */ cpu->r[1] = _t0;
|
|
/* 026959A0 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 026959A0 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 026959A4 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026959A4 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 026959A8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 026959A8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 026959AC */ _t4 = cpu->r[3] + 0x00000098u;
|
|
/* 026959AC */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 026959B0 */ cpu->r[30] = 0x00000000u;
|
|
/* 026959B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[9]);
|
|
/* 026959B8 */ _t5 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026959B8 */ _t6 = _t5 & 0x00000001u;
|
|
/* 026959B8 */ if (_t6) goto L_026959BC; else goto L_02695A30;
|
|
L_026959BC: ; // 0x26959bc
|
|
/* 026959BC */ cpu->r[31] = 0x00000000u;
|
|
/* 026959C0 */ cpu->r[5] = cpu->r[31];
|
|
L_026959C4: ; // 0x26959c4
|
|
/* 026959C4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[9]);
|
|
/* 026959C8 */ cpu->r[4] = 0x00000000u;
|
|
/* 026959CC */ _t7 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026959CC */ _t8 = _t7 & 0x00000001u;
|
|
/* 026959CC */ if (_t8) goto L_026959D0; else goto L_026959D8;
|
|
L_026959D0: ; // 0x26959d0
|
|
/* 026959D0 */ _t9 = cpu->r[3] + 0x0000009Cu;
|
|
/* 026959D0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t9);
|
|
/* 026959D4 */ cpu->r[4] = cpu->r[10] + cpu->r[31];
|
|
L_026959D8: ; // 0x26959d8
|
|
/* 026959D8 */ _t10 = cpu->r[4] + 0x00000000u;
|
|
/* 026959D8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t10);
|
|
/* 026959DC */ cpu->r[6] = 0x00000000u;
|
|
/* 026959E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], cpu->r[11]);
|
|
/* 026959E4 */ _t11 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026959E4 */ _t12 = _t11 & 0x00000001u;
|
|
/* 026959E4 */ if (_t12) goto L_026959E8; else goto L_02695A18;
|
|
L_026959E8: ; // 0x26959e8
|
|
/* 026959E8 */ _t13 = cpu->r[4] + 0x0000000Cu;
|
|
/* 026959E8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t13);
|
|
/* 026959EC */ cpu->r[11] = 0x00000000u;
|
|
L_026959F0: ; // 0x26959f0
|
|
/* 026959F0 */ _t14 = cpu->r[4] + 0x00000008u;
|
|
/* 026959F0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t14);
|
|
/* 026959F4 */ _t15 = cpu->r[12] + cpu->r[11];
|
|
/* 026959F4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t15);
|
|
/* 026959F8 */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 026959FC */ _t16 = cpu->r[8] + 0x00000000u;
|
|
/* 026959FC */ rbrew_write32(cpu->mem, _t16, cpu->r[7]);
|
|
/* 02695A00 */ _t17 = cpu->r[4] + 0x00000000u;
|
|
/* 02695A00 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02695A04 */ cpu->r[7] = cpu->r[8];
|
|
/* 02695A08 */ cpu->r[11] = cpu->r[11] + 0x00000004u;
|
|
/* 02695A0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], cpu->r[0]);
|
|
/* 02695A10 */ _t18 = cpu->r[4] + 0x0000000Cu;
|
|
/* 02695A10 */ rbrew_write32(cpu->mem, _t18, cpu->r[7]);
|
|
/* 02695A14 */ _t19 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02695A14 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02695A14 */ if (_t20) goto L_026959F0; else goto L_02695A18;
|
|
L_02695A18: ; // 0x2695a18
|
|
/* 02695A18 */ _t21 = cpu->r[4] + 0x00000000u;
|
|
/* 02695A18 */ rbrew_write32(cpu->mem, _t21, cpu->r[5]);
|
|
/* 02695A1C */ _t22 = cpu->r[3] + 0x00000098u;
|
|
/* 02695A1C */ cpu->r[9] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02695A20 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02695A24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[9]);
|
|
/* 02695A28 */ cpu->r[31] = cpu->r[31] + 0x00000014u;
|
|
/* 02695A2C */ _t23 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02695A2C */ _t24 = _t23 & 0x00000001u;
|
|
/* 02695A2C */ if (_t24) goto L_026959C4; else goto L_02695A30;
|
|
L_02695A30: ; // 0x2695a30
|
|
/* 02695A30 */ cpu->r[3] = cpu->r[3] + 0x00000014u;
|
|
/* 02695A34 */ Gambit_fn_02698D18(cpu);
|
|
/* 02695A38 */ _t25 = cpu->r[1] + 0x00000014u;
|
|
/* 02695A38 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02695A3C */ _t26 = cpu->r[1] + 0x00000008u;
|
|
/* 02695A3C */ cpu->r[30] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02695A40 */ cpu->lr = cpu->r[0];
|
|
/* 02695A44 */ _t27 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02695A44 */ cpu->r[31] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02695A48 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02695A4C */ return;
|
|
}
|
|
|
|
// fn_0269599C @ 0x269599c
|
|
void Gambit_fn_0269599C(CPUState* cpu) {
|
|
uint32_t _t0, _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_0269599C: ; // 0x269599c
|
|
/* 0269599C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0269599C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269599C */ cpu->r[1] = _t0;
|
|
/* 026959A0 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 026959A0 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 026959A4 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026959A4 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 026959A8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 026959A8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 026959AC */ _t4 = cpu->r[3] + 0x00000098u;
|
|
/* 026959AC */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 026959B0 */ cpu->r[30] = 0x00000000u;
|
|
/* 026959B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[9]);
|
|
/* 026959B8 */ _t5 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026959B8 */ _t6 = _t5 & 0x00000001u;
|
|
/* 026959B8 */ if (_t6) goto L_026959BC; else goto L_02695A30;
|
|
L_026959BC: ; // 0x26959bc
|
|
/* 026959BC */ cpu->r[31] = 0x00000000u;
|
|
/* 026959C0 */ cpu->r[5] = cpu->r[31];
|
|
L_026959C4: ; // 0x26959c4
|
|
/* 026959C4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[9]);
|
|
/* 026959C8 */ cpu->r[4] = 0x00000000u;
|
|
/* 026959CC */ _t7 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026959CC */ _t8 = _t7 & 0x00000001u;
|
|
/* 026959CC */ if (_t8) goto L_026959D0; else goto L_026959D8;
|
|
L_026959D0: ; // 0x26959d0
|
|
/* 026959D0 */ _t9 = cpu->r[3] + 0x0000009Cu;
|
|
/* 026959D0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t9);
|
|
/* 026959D4 */ cpu->r[4] = cpu->r[10] + cpu->r[31];
|
|
L_026959D8: ; // 0x26959d8
|
|
/* 026959D8 */ _t10 = cpu->r[4] + 0x00000000u;
|
|
/* 026959D8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t10);
|
|
/* 026959DC */ cpu->r[6] = 0x00000000u;
|
|
/* 026959E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], cpu->r[11]);
|
|
/* 026959E4 */ _t11 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026959E4 */ _t12 = _t11 & 0x00000001u;
|
|
/* 026959E4 */ if (_t12) goto L_026959E8; else goto L_02695A18;
|
|
L_026959E8: ; // 0x26959e8
|
|
/* 026959E8 */ _t13 = cpu->r[4] + 0x0000000Cu;
|
|
/* 026959E8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t13);
|
|
/* 026959EC */ cpu->r[11] = 0x00000000u;
|
|
L_026959F0: ; // 0x26959f0
|
|
/* 026959F0 */ _t14 = cpu->r[4] + 0x00000008u;
|
|
/* 026959F0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t14);
|
|
/* 026959F4 */ _t15 = cpu->r[12] + cpu->r[11];
|
|
/* 026959F4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t15);
|
|
/* 026959F8 */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 026959FC */ _t16 = cpu->r[8] + 0x00000000u;
|
|
/* 026959FC */ rbrew_write32(cpu->mem, _t16, cpu->r[7]);
|
|
/* 02695A00 */ _t17 = cpu->r[4] + 0x00000000u;
|
|
/* 02695A00 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02695A04 */ cpu->r[7] = cpu->r[8];
|
|
/* 02695A08 */ cpu->r[11] = cpu->r[11] + 0x00000004u;
|
|
/* 02695A0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], cpu->r[0]);
|
|
/* 02695A10 */ _t18 = cpu->r[4] + 0x0000000Cu;
|
|
/* 02695A10 */ rbrew_write32(cpu->mem, _t18, cpu->r[7]);
|
|
/* 02695A14 */ _t19 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02695A14 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02695A14 */ if (_t20) goto L_026959F0; else goto L_02695A18;
|
|
L_02695A18: ; // 0x2695a18
|
|
/* 02695A18 */ _t21 = cpu->r[4] + 0x00000000u;
|
|
/* 02695A18 */ rbrew_write32(cpu->mem, _t21, cpu->r[5]);
|
|
/* 02695A1C */ _t22 = cpu->r[3] + 0x00000098u;
|
|
/* 02695A1C */ cpu->r[9] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02695A20 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02695A24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[9]);
|
|
/* 02695A28 */ cpu->r[31] = cpu->r[31] + 0x00000014u;
|
|
/* 02695A2C */ _t23 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02695A2C */ _t24 = _t23 & 0x00000001u;
|
|
/* 02695A2C */ if (_t24) goto L_026959C4; else goto L_02695A30;
|
|
L_02695A30: ; // 0x2695a30
|
|
/* 02695A30 */ cpu->r[3] = cpu->r[3] + 0x00000014u;
|
|
/* 02695A34 */ Gambit_fn_02698D18(cpu);
|
|
/* 02695A38 */ _t25 = cpu->r[1] + 0x00000014u;
|
|
/* 02695A38 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02695A3C */ _t26 = cpu->r[1] + 0x00000008u;
|
|
/* 02695A3C */ cpu->r[30] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02695A40 */ cpu->lr = cpu->r[0];
|
|
/* 02695A44 */ _t27 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02695A44 */ cpu->r[31] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02695A48 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02695A4C */ return;
|
|
}
|
|
|
|
// fn_02695A50 @ 0x2695a50
|
|
void Gambit_fn_02695A50(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02695A50: ; // 0x2695a50
|
|
/* 02695A50 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02695A50 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02695A54 */ _t1 = cpu->r[12] + 0x0000001Cu;
|
|
/* 02695A54 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02695A58 */ cpu->ctr = cpu->r[0];
|
|
/* 02695A5C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02695A60 @ 0x2695a60
|
|
void Gambit_fn_02695A60(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_02695A60: ; // 0x2695a60
|
|
/* 02695A60 */ _t0 = cpu->r[3] + 0x000000A0u;
|
|
/* 02695A60 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02695A64 */ _t1 = cpu->r[3] + 0x00000008u;
|
|
/* 02695A64 */ cpu->r[10] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02695A68 */ _t2 = cpu->r[3] + 0x00000098u;
|
|
/* 02695A68 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02695A6C */ _t3 = cpu->r[10] + 0x00000748u;
|
|
/* 02695A6C */ cpu->r[10] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02695A70 */ cpu->r[0] = cpu->r[11] + cpu->r[12];
|
|
/* 02695A74 */ _t4 = cpu->r[10] + 0x000001FCu;
|
|
/* 02695A74 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02695A78 */ cpu->r[10] = cpu->r[0] - cpu->r[11];
|
|
/* 02695A7C */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[10] / (int32_t)cpu->r[12]);
|
|
/* 02695A80 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)cpu->r[12]);
|
|
/* 02695A84 */ cpu->r[10] = cpu->r[10] - cpu->r[0];
|
|
/* 02695A88 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[12]);
|
|
/* 02695A8C */ cpu->r[0] = 0x00000000u;
|
|
/* 02695A90 */ _t5 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02695A90 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02695A90 */ if (_t6) goto L_02695A94; else goto L_02695AA0;
|
|
L_02695A94: ; // 0x2695a94
|
|
/* 02695A94 */ cpu->r[10] = (uint32_t)((int32_t)cpu->r[10] * (int32_t)0x00000014u);
|
|
/* 02695A98 */ _t7 = cpu->r[3] + 0x0000009Cu;
|
|
/* 02695A98 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02695A9C */ cpu->r[0] = cpu->r[11] + cpu->r[10];
|
|
L_02695AA0: ; // 0x2695aa0
|
|
/* 02695AA0 */ cpu->r[3] = cpu->r[0];
|
|
/* 02695AA4 */ return;
|
|
}
|
|
|
|
// fn_02695AA8 @ 0x2695aa8
|
|
void Gambit_fn_02695AA8(CPUState* cpu) {
|
|
uint32_t _t0, _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;
|
|
|
|
L_02695AA8: ; // 0x2695aa8
|
|
/* 02695AA8 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 02695AA8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02695AA8 */ cpu->r[1] = _t0;
|
|
/* 02695AAC */ /* nop */
|
|
/* 02695AB0 */ cpu->r[0] = cpu->lr;
|
|
/* 02695AB4 */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 02695AB4 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02695AB8 */ cpu->r[31] = cpu->r[3];
|
|
/* 02695ABC */ _t2 = cpu->r[31] + 0x000000ADu;
|
|
/* 02695ABC */ cpu->r[5] = rbrew_read8(cpu->mem, _t2);
|
|
/* 02695AC0 */ _t3 = cpu->r[31] + 0x00000008u;
|
|
/* 02695AC0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02695AC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 02695AC8 */ _t4 = cpu->r[10] + 0x00000748u;
|
|
/* 02695AC8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02695ACC */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02695ACC */ _t6 = _t5 & 0x00000001u;
|
|
/* 02695ACC */ if (_t6) goto L_02695DAC; else goto L_02695AD0;
|
|
L_02695AD0: ; // 0x2695ad0
|
|
/* 02695AD0 */ _t7 = cpu->r[31] + 0x000000A0u;
|
|
/* 02695AD0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02695AD4 */ _t8 = cpu->r[31] + 0x00000098u;
|
|
/* 02695AD4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02695AD8 */ cpu->r[6] = cpu->r[7] + 0x00000001u;
|
|
/* 02695ADC */ cpu->r[8] = (uint32_t)((int32_t)cpu->r[6] / (int32_t)cpu->r[5]);
|
|
/* 02695AE0 */ cpu->r[8] = (uint32_t)((int32_t)cpu->r[8] * (int32_t)cpu->r[5]);
|
|
/* 02695AE4 */ cpu->r[3] = 0x00000000u;
|
|
/* 02695AE8 */ cpu->r[0] = cpu->r[6] - cpu->r[8];
|
|
/* 02695AEC */ cpu->r[7] = cpu->r[3];
|
|
/* 02695AF0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[5]);
|
|
/* 02695AF4 */ _t9 = cpu->r[31] + 0x000000A0u;
|
|
/* 02695AF4 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 02695AF8 */ _t10 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02695AF8 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02695AF8 */ if (_t11) goto L_02695AFC; else goto L_02695B08;
|
|
L_02695AFC: ; // 0x2695afc
|
|
/* 02695AFC */ cpu->r[9] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x00000014u);
|
|
/* 02695B00 */ _t12 = cpu->r[31] + 0x0000009Cu;
|
|
/* 02695B00 */ cpu->r[10] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02695B04 */ cpu->r[7] = cpu->r[10] + cpu->r[9];
|
|
L_02695B08: ; // 0x2695b08
|
|
/* 02695B08 */ _t13 = cpu->r[7] + 0x00000000u;
|
|
/* 02695B08 */ cpu->r[11] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02695B0C */ cpu->r[8] = 0x00000000u;
|
|
/* 02695B10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], cpu->r[11]);
|
|
/* 02695B14 */ _t14 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02695B14 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02695B14 */ if (_t15) goto L_02695B18; else goto L_02695B48;
|
|
L_02695B18: ; // 0x2695b18
|
|
/* 02695B18 */ _t16 = cpu->r[7] + 0x0000000Cu;
|
|
/* 02695B18 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02695B1C */ cpu->r[10] = 0x00000000u;
|
|
L_02695B20: ; // 0x2695b20
|
|
/* 02695B20 */ _t17 = cpu->r[7] + 0x00000008u;
|
|
/* 02695B20 */ cpu->r[12] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02695B24 */ _t18 = cpu->r[12] + cpu->r[10];
|
|
/* 02695B24 */ cpu->r[9] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02695B28 */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 02695B2C */ _t19 = cpu->r[9] + 0x00000000u;
|
|
/* 02695B2C */ rbrew_write32(cpu->mem, _t19, cpu->r[11]);
|
|
/* 02695B30 */ _t20 = cpu->r[7] + 0x00000000u;
|
|
/* 02695B30 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02695B34 */ cpu->r[11] = cpu->r[9];
|
|
/* 02695B38 */ cpu->r[10] = cpu->r[10] + 0x00000004u;
|
|
/* 02695B3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], cpu->r[0]);
|
|
/* 02695B40 */ _t21 = cpu->r[7] + 0x0000000Cu;
|
|
/* 02695B40 */ rbrew_write32(cpu->mem, _t21, cpu->r[11]);
|
|
/* 02695B44 */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02695B44 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02695B44 */ if (_t23) goto L_02695B20; else goto L_02695B48;
|
|
L_02695B48: ; // 0x2695b48
|
|
/* 02695B48 */ cpu->r[28] = 0x00000000u;
|
|
/* 02695B4C */ cpu->r[29] = cpu->r[28];
|
|
/* 02695B50 */ cpu->r[27] = cpu->r[28];
|
|
/* 02695B54 */ _t24 = cpu->r[7] + 0x00000000u;
|
|
/* 02695B54 */ rbrew_write32(cpu->mem, _t24, cpu->r[3]);
|
|
/* 02695B58 */ goto L_02695CEC;
|
|
L_02695B5C: ; // 0x2695b5c
|
|
/* 02695B5C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[12]);
|
|
/* 02695B60 */ cpu->r[26] = 0x00000000u;
|
|
/* 02695B64 */ _t25 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02695B64 */ _t26 = _t25 & 0x00000001u;
|
|
/* 02695B64 */ if (_t26) goto L_02695B68; else goto L_02695B74;
|
|
L_02695B68: ; // 0x2695b68
|
|
/* 02695B68 */ cpu->r[4] = (uint32_t)((int32_t)cpu->r[10] * (int32_t)0x00000014u);
|
|
/* 02695B6C */ _t27 = cpu->r[31] + 0x0000009Cu;
|
|
/* 02695B6C */ cpu->r[5] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02695B70 */ cpu->r[26] = cpu->r[5] + cpu->r[4];
|
|
L_02695B74: ; // 0x2695b74
|
|
/* 02695B74 */ _t28 = cpu->r[26] + 0x00000000u;
|
|
/* 02695B74 */ cpu->r[6] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02695B78 */ _t29 = cpu->r[26] + 0x00000004u;
|
|
/* 02695B78 */ cpu->r[7] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02695B7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], cpu->r[7]);
|
|
/* 02695B80 */ _t30 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02695B80 */ _t31 = _t30 & 0x00000001u;
|
|
/* 02695B80 */ if (_t31) goto L_02695B98; else goto L_02695B84;
|
|
L_02695B84: ; // 0x2695b84
|
|
/* 02695B84 */ cpu->r[11] = 0x00000000u;
|
|
/* 02695B88 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[12]);
|
|
/* 02695B8C */ cpu->r[9] = cpu->r[11];
|
|
/* 02695B90 */ _t32 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02695B90 */ _t33 = _t32 & 0x00000001u;
|
|
/* 02695B90 */ if (_t33) goto L_02695B94; else goto L_02695C14;
|
|
L_02695B94: ; // 0x2695b94
|
|
/* 02695B94 */ goto L_02695C08;
|
|
L_02695B98: ; // 0x2695b98
|
|
/* 02695B98 */ _t34 = cpu->r[26] + 0x0000000Cu;
|
|
/* 02695B98 */ cpu->r[11] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02695B9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02695BA0 */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02695BA0 */ _t36 = _t35 & 0x00000001u;
|
|
/* 02695BA0 */ if (_t36) goto L_02695BAC; else goto L_02695BA4;
|
|
L_02695BA4: ; // 0x2695ba4
|
|
/* 02695BA4 */ _t37 = cpu->r[11] + 0x00000000u;
|
|
/* 02695BA4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02695BA8 */ _t38 = cpu->r[26] + 0x0000000Cu;
|
|
/* 02695BA8 */ rbrew_write32(cpu->mem, _t38, cpu->r[8]);
|
|
L_02695BAC: ; // 0x2695bac
|
|
/* 02695BAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02695BB0 */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02695BB0 */ _t40 = _t39 & 0x00000001u;
|
|
/* 02695BB0 */ if (_t40) goto L_02695BB8; else goto L_02695BB4;
|
|
L_02695BB4: ; // 0x2695bb4
|
|
/* 02695BB4 */ _t41 = cpu->r[11] + 0x00000008u;
|
|
/* 02695BB4 */ rbrew_write32(cpu->mem, _t41, cpu->r[27]);
|
|
L_02695BB8: ; // 0x2695bb8
|
|
/* 02695BB8 */ _t42 = cpu->r[26] + 0x00000000u;
|
|
/* 02695BB8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02695BBC */ _t43 = cpu->r[26] + 0x00000004u;
|
|
/* 02695BBC */ cpu->r[9] = rbrew_read32(cpu->mem, _t43);
|
|
/* 02695BC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], cpu->r[9]);
|
|
/* 02695BC4 */ _t44 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02695BC4 */ _t45 = _t44 & 0x00000001u;
|
|
/* 02695BC4 */ if (_t45) goto L_02695BC8; else goto L_02695BE0;
|
|
L_02695BC8: ; // 0x2695bc8
|
|
/* 02695BC8 */ _t46 = cpu->r[26] + 0x00000008u;
|
|
/* 02695BC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t46);
|
|
/* 02695BCC */ cpu->r[10] = rbrew_rlwinm(cpu->r[4], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02695BD0 */ _t47 = cpu->r[10] + cpu->r[0];
|
|
/* 02695BD0 */ rbrew_write32(cpu->mem, _t47, cpu->r[11]);
|
|
/* 02695BD4 */ _t48 = cpu->r[26] + 0x00000000u;
|
|
/* 02695BD4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t48);
|
|
/* 02695BD8 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 02695BDC */ _t49 = cpu->r[26] + 0x00000000u;
|
|
/* 02695BDC */ rbrew_write32(cpu->mem, _t49, cpu->r[12]);
|
|
L_02695BE0: ; // 0x2695be0
|
|
/* 02695BE0 */ _t50 = cpu->r[31] + 0x000000A0u;
|
|
/* 02695BE0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t50);
|
|
/* 02695BE4 */ _t51 = cpu->r[31] + 0x00000098u;
|
|
/* 02695BE4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t51);
|
|
/* 02695BE8 */ cpu->r[9] = cpu->r[10] + cpu->r[12];
|
|
/* 02695BEC */ cpu->r[8] = cpu->r[9] + 0xFFFFFFFFu;
|
|
/* 02695BF0 */ cpu->r[4] = (uint32_t)((int32_t)cpu->r[8] / (int32_t)cpu->r[12]);
|
|
/* 02695BF4 */ cpu->r[4] = (uint32_t)((int32_t)cpu->r[4] * (int32_t)cpu->r[12]);
|
|
/* 02695BF8 */ cpu->r[0] = cpu->r[8] - cpu->r[4];
|
|
/* 02695BFC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[12]);
|
|
/* 02695C00 */ cpu->r[9] = 0x00000000u;
|
|
/* 02695C04 */ _t52 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02695C04 */ _t53 = _t52 & 0x00000001u;
|
|
/* 02695C04 */ if (_t53) goto L_02695C08; else goto L_02695C14;
|
|
L_02695C08: ; // 0x2695c08
|
|
/* 02695C08 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x00000014u);
|
|
/* 02695C0C */ _t54 = cpu->r[31] + 0x0000009Cu;
|
|
/* 02695C0C */ cpu->r[6] = rbrew_read32(cpu->mem, _t54);
|
|
/* 02695C10 */ cpu->r[9] = cpu->r[6] + cpu->r[0];
|
|
L_02695C14: ; // 0x2695c14
|
|
/* 02695C14 */ _t55 = cpu->r[9] + 0x00000000u;
|
|
/* 02695C14 */ cpu->r[7] = rbrew_read32(cpu->mem, _t55);
|
|
/* 02695C18 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[7]);
|
|
/* 02695C1C */ cpu->r[12] = 0x00000000u;
|
|
/* 02695C20 */ _t56 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02695C20 */ _t57 = _t56 & 0x00000001u;
|
|
/* 02695C20 */ if (_t57) goto L_02695C24; else goto L_02695C2C;
|
|
L_02695C24: ; // 0x2695c24
|
|
/* 02695C24 */ _t58 = cpu->r[9] + 0x00000008u;
|
|
/* 02695C24 */ cpu->r[8] = rbrew_read32(cpu->mem, _t58);
|
|
/* 02695C28 */ _t59 = cpu->r[8] + cpu->r[29];
|
|
/* 02695C28 */ cpu->r[12] = rbrew_read32(cpu->mem, _t59);
|
|
L_02695C2C: ; // 0x2695c2c
|
|
/* 02695C2C */ _t60 = cpu->r[12] + 0x00000000u;
|
|
/* 02695C2C */ cpu->r[9] = rbrew_read32(cpu->mem, _t60);
|
|
/* 02695C30 */ _t61 = cpu->r[11] + 0x00000000u;
|
|
/* 02695C30 */ rbrew_write32(cpu->mem, _t61, cpu->r[9]);
|
|
/* 02695C34 */ _t62 = cpu->r[12] + 0x00000004u;
|
|
/* 02695C34 */ cpu->r[10] = rbrew_read32(cpu->mem, _t62);
|
|
/* 02695C38 */ _t63 = cpu->r[11] + 0x00000004u;
|
|
/* 02695C38 */ rbrew_write32(cpu->mem, _t63, cpu->r[10]);
|
|
/* 02695C3C */ _t64 = cpu->r[12] + 0x00000008u;
|
|
/* 02695C3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t64);
|
|
/* 02695C40 */ _t65 = cpu->r[11] + 0x00000008u;
|
|
/* 02695C40 */ rbrew_write32(cpu->mem, _t65, cpu->r[0]);
|
|
/* 02695C44 */ _t66 = cpu->r[12] + 0x0000000Cu;
|
|
/* 02695C44 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t66);
|
|
/* 02695C48 */ _t67 = cpu->r[11] + 0x0000000Cu;
|
|
/* 02695C48 */ rbrew_write_f32(cpu->mem, _t67, cpu->f[13]);
|
|
/* 02695C4C */ _t68 = cpu->r[12] + 0x00000010u;
|
|
/* 02695C4C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t68);
|
|
/* 02695C50 */ _t69 = cpu->r[11] + 0x00000010u;
|
|
/* 02695C50 */ rbrew_write_f32(cpu->mem, _t69, cpu->f[0]);
|
|
/* 02695C54 */ _t70 = cpu->r[12] + 0x00000014u;
|
|
/* 02695C54 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t70);
|
|
/* 02695C58 */ _t71 = cpu->r[11] + 0x00000014u;
|
|
/* 02695C58 */ rbrew_write_f32(cpu->mem, _t71, cpu->f[6]);
|
|
/* 02695C5C */ _t72 = cpu->r[12] + 0x00000018u;
|
|
/* 02695C5C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t72);
|
|
/* 02695C60 */ _t73 = cpu->r[11] + 0x00000018u;
|
|
/* 02695C60 */ rbrew_write_f32(cpu->mem, _t73, cpu->f[7]);
|
|
/* 02695C64 */ _t74 = cpu->r[12] + 0x0000001Cu;
|
|
/* 02695C64 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t74);
|
|
/* 02695C68 */ _t75 = cpu->r[11] + 0x0000001Cu;
|
|
/* 02695C68 */ rbrew_write_f32(cpu->mem, _t75, cpu->f[8]);
|
|
/* 02695C6C */ _t76 = cpu->r[12] + 0x00000020u;
|
|
/* 02695C6C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t76);
|
|
/* 02695C70 */ _t77 = cpu->r[11] + 0x00000020u;
|
|
/* 02695C70 */ rbrew_write_f32(cpu->mem, _t77, cpu->f[9]);
|
|
/* 02695C74 */ _t78 = cpu->r[12] + 0x00000024u;
|
|
/* 02695C74 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t78);
|
|
/* 02695C78 */ _t79 = cpu->r[11] + 0x00000024u;
|
|
/* 02695C78 */ rbrew_write_f32(cpu->mem, _t79, cpu->f[10]);
|
|
/* 02695C7C */ _t80 = cpu->r[12] + 0x00000028u;
|
|
/* 02695C7C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t80);
|
|
/* 02695C80 */ _t81 = cpu->r[11] + 0x00000028u;
|
|
/* 02695C80 */ rbrew_write_f32(cpu->mem, _t81, cpu->f[11]);
|
|
/* 02695C84 */ _t82 = cpu->r[12] + 0x0000002Cu;
|
|
/* 02695C84 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t82);
|
|
/* 02695C88 */ _t83 = cpu->r[11] + 0x0000002Cu;
|
|
/* 02695C88 */ rbrew_write_f32(cpu->mem, _t83, cpu->f[12]);
|
|
/* 02695C8C */ _t84 = cpu->r[12] + 0x00000030u;
|
|
/* 02695C8C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t84);
|
|
/* 02695C90 */ _t85 = cpu->r[11] + 0x00000030u;
|
|
/* 02695C90 */ rbrew_write_f32(cpu->mem, _t85, cpu->f[13]);
|
|
/* 02695C94 */ _t86 = cpu->r[12] + 0x00000034u;
|
|
/* 02695C94 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t86);
|
|
/* 02695C98 */ _t87 = cpu->r[11] + 0x00000034u;
|
|
/* 02695C98 */ rbrew_write_f32(cpu->mem, _t87, cpu->f[0]);
|
|
/* 02695C9C */ _t88 = cpu->r[12] + 0x00000038u;
|
|
/* 02695C9C */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t88);
|
|
/* 02695CA0 */ _t89 = cpu->r[11] + 0x00000038u;
|
|
/* 02695CA0 */ rbrew_write_f32(cpu->mem, _t89, cpu->f[6]);
|
|
/* 02695CA4 */ _t90 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02695CA4 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t90);
|
|
/* 02695CA8 */ _t91 = cpu->r[11] + 0x0000003Cu;
|
|
/* 02695CA8 */ rbrew_write_f32(cpu->mem, _t91, cpu->f[7]);
|
|
/* 02695CAC */ _t92 = cpu->r[12] + 0x00000040u;
|
|
/* 02695CAC */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t92);
|
|
/* 02695CB0 */ _t93 = cpu->r[11] + 0x00000040u;
|
|
/* 02695CB0 */ rbrew_write_f32(cpu->mem, _t93, cpu->f[8]);
|
|
/* 02695CB4 */ _t94 = cpu->r[12] + 0x00000044u;
|
|
/* 02695CB4 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t94);
|
|
/* 02695CB8 */ _t95 = cpu->r[11] + 0x00000044u;
|
|
/* 02695CB8 */ rbrew_write_f32(cpu->mem, _t95, cpu->f[9]);
|
|
/* 02695CBC */ _t96 = cpu->r[12] + 0x00000048u;
|
|
/* 02695CBC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t96);
|
|
/* 02695CC0 */ _t97 = cpu->r[11] + 0x00000048u;
|
|
/* 02695CC0 */ rbrew_write_f32(cpu->mem, _t97, cpu->f[10]);
|
|
/* 02695CC4 */ _t98 = cpu->r[12] + 0x0000004Cu;
|
|
/* 02695CC4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t98);
|
|
/* 02695CC8 */ _t99 = cpu->r[11] + 0x0000004Cu;
|
|
/* 02695CC8 */ rbrew_write8(cpu->mem, _t99, (uint8_t)cpu->r[0]);
|
|
/* 02695CCC */ _t100 = cpu->r[12] + 0x00000050u;
|
|
/* 02695CCC */ cpu->r[4] = rbrew_read32(cpu->mem, _t100);
|
|
/* 02695CD0 */ _t101 = cpu->r[11] + 0x00000050u;
|
|
/* 02695CD0 */ rbrew_write32(cpu->mem, _t101, cpu->r[4]);
|
|
/* 02695CD4 */ _t102 = cpu->r[12] + 0x00000054u;
|
|
/* 02695CD4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t102);
|
|
/* 02695CD8 */ _t103 = cpu->r[11] + 0x00000054u;
|
|
/* 02695CD8 */ rbrew_write_f32(cpu->mem, _t103, cpu->f[11]);
|
|
/* 02695CDC */ _t104 = cpu->r[12] + 0x00000058u;
|
|
/* 02695CDC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t104);
|
|
/* 02695CE0 */ cpu->r[29] = cpu->r[29] + 0x00000004u;
|
|
/* 02695CE4 */ cpu->r[28] = cpu->r[28] + 0x00000001u;
|
|
/* 02695CE8 */ _t105 = cpu->r[11] + 0x00000058u;
|
|
/* 02695CE8 */ rbrew_write_f32(cpu->mem, _t105, cpu->f[12]);
|
|
L_02695CEC: ; // 0x2695cec
|
|
/* 02695CEC */ _t106 = cpu->r[31] + 0x000000A0u;
|
|
/* 02695CEC */ cpu->r[10] = rbrew_read32(cpu->mem, _t106);
|
|
/* 02695CF0 */ _t107 = cpu->r[31] + 0x00000098u;
|
|
/* 02695CF0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t107);
|
|
/* 02695CF4 */ cpu->r[9] = cpu->r[10] + cpu->r[12];
|
|
/* 02695CF8 */ cpu->r[8] = cpu->r[9] + 0xFFFFFFFFu;
|
|
/* 02695CFC */ cpu->r[5] = (uint32_t)((int32_t)cpu->r[8] / (int32_t)cpu->r[12]);
|
|
/* 02695D00 */ cpu->r[5] = (uint32_t)((int32_t)cpu->r[5] * (int32_t)cpu->r[12]);
|
|
/* 02695D04 */ cpu->r[0] = cpu->r[8] - cpu->r[5];
|
|
/* 02695D08 */ cpu->r[11] = cpu->r[0];
|
|
/* 02695D0C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[12]);
|
|
/* 02695D10 */ cpu->r[4] = 0x00000000u;
|
|
/* 02695D14 */ _t108 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02695D14 */ _t109 = _t108 & 0x00000001u;
|
|
/* 02695D14 */ if (_t109) goto L_02695D18; else goto L_02695D24;
|
|
L_02695D18: ; // 0x2695d18
|
|
/* 02695D18 */ cpu->r[6] = (uint32_t)((int32_t)cpu->r[11] * (int32_t)0x00000014u);
|
|
/* 02695D1C */ _t110 = cpu->r[31] + 0x0000009Cu;
|
|
/* 02695D1C */ cpu->r[7] = rbrew_read32(cpu->mem, _t110);
|
|
/* 02695D20 */ cpu->r[4] = cpu->r[7] + cpu->r[6];
|
|
L_02695D24: ; // 0x2695d24
|
|
/* 02695D24 */ _t111 = cpu->r[4] + 0x00000000u;
|
|
/* 02695D24 */ cpu->r[8] = rbrew_read32(cpu->mem, _t111);
|
|
/* 02695D28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], cpu->r[8]);
|
|
/* 02695D2C */ _t112 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02695D2C */ _t113 = _t112 & 0x00000001u;
|
|
/* 02695D2C */ if (_t113) goto L_02695B5C; else goto L_02695D30;
|
|
L_02695D30: ; // 0x2695d30
|
|
/* 02695D30 */ _t114 = cpu->r[31] + 0x000000ADu;
|
|
/* 02695D30 */ rbrew_write8(cpu->mem, _t114, (uint8_t)cpu->r[3]);
|
|
/* 02695D34 */ cpu->r[11] = 0x100E0000u;
|
|
/* 02695D38 */ _t115 = cpu->r[11] + 0x00003C28u;
|
|
/* 02695D38 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t115);
|
|
/* 02695D3C */ cpu->r[3] = cpu->r[31];
|
|
/* 02695D40 */ _t116 = cpu->r[31] + 0x000000A8u;
|
|
/* 02695D40 */ rbrew_write_f32(cpu->mem, _t116, cpu->f[0]);
|
|
/* 02695D44 */ Gambit_fn_02695A60(cpu);
|
|
/* 02695D48 */ _t117 = cpu->r[3] + 0x00000000u;
|
|
/* 02695D48 */ cpu->r[7] = rbrew_read32(cpu->mem, _t117);
|
|
/* 02695D4C */ cpu->r[5] = 0x00000000u;
|
|
/* 02695D50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], cpu->r[7]);
|
|
/* 02695D54 */ _t118 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02695D54 */ _t119 = _t118 & 0x00000001u;
|
|
/* 02695D54 */ if (_t119) goto L_02695D58; else goto L_02695DAC;
|
|
L_02695D58: ; // 0x2695d58
|
|
/* 02695D58 */ cpu->r[9] = 0x00000000u;
|
|
L_02695D5C: ; // 0x2695d5c
|
|
/* 02695D5C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[7]);
|
|
/* 02695D60 */ cpu->r[6] = 0x00000000u;
|
|
/* 02695D64 */ _t120 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02695D64 */ _t121 = _t120 & 0x00000001u;
|
|
/* 02695D64 */ if (_t121) goto L_02695D68; else goto L_02695D70;
|
|
L_02695D68: ; // 0x2695d68
|
|
/* 02695D68 */ _t122 = cpu->r[3] + 0x00000008u;
|
|
/* 02695D68 */ cpu->r[12] = rbrew_read32(cpu->mem, _t122);
|
|
/* 02695D6C */ _t123 = cpu->r[12] + cpu->r[9];
|
|
/* 02695D6C */ cpu->r[6] = rbrew_read32(cpu->mem, _t123);
|
|
L_02695D70: ; // 0x2695d70
|
|
/* 02695D70 */ _t124 = cpu->r[6] + 0x00000058u;
|
|
/* 02695D70 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t124);
|
|
/* 02695D74 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[13]);
|
|
/* 02695D78 */ _t125 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02695D78 */ _t126 = _t125 & 0x00000001u;
|
|
/* 02695D78 */ if (_t126) goto L_02695D9C; else goto L_02695D7C;
|
|
L_02695D7C: ; // 0x2695d7c
|
|
/* 02695D7C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[7]);
|
|
/* 02695D80 */ cpu->r[8] = 0x00000000u;
|
|
/* 02695D84 */ _t127 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02695D84 */ _t128 = _t127 & 0x00000001u;
|
|
/* 02695D84 */ if (_t128) goto L_02695D88; else goto L_02695D90;
|
|
L_02695D88: ; // 0x2695d88
|
|
/* 02695D88 */ _t129 = cpu->r[3] + 0x00000008u;
|
|
/* 02695D88 */ cpu->r[4] = rbrew_read32(cpu->mem, _t129);
|
|
/* 02695D8C */ _t130 = cpu->r[4] + cpu->r[9];
|
|
/* 02695D8C */ cpu->r[8] = rbrew_read32(cpu->mem, _t130);
|
|
L_02695D90: ; // 0x2695d90
|
|
/* 02695D90 */ _t131 = cpu->r[8] + 0x00000058u;
|
|
/* 02695D90 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t131);
|
|
/* 02695D94 */ _t132 = cpu->r[31] + 0x000000A8u;
|
|
/* 02695D94 */ rbrew_write_f32(cpu->mem, _t132, cpu->f[0]);
|
|
/* 02695D98 */ _t133 = cpu->r[3] + 0x00000000u;
|
|
/* 02695D98 */ cpu->r[7] = rbrew_read32(cpu->mem, _t133);
|
|
L_02695D9C: ; // 0x2695d9c
|
|
/* 02695D9C */ cpu->r[5] = cpu->r[5] + 0x00000001u;
|
|
/* 02695DA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], cpu->r[7]);
|
|
/* 02695DA4 */ cpu->r[9] = cpu->r[9] + 0x00000004u;
|
|
/* 02695DA8 */ _t134 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02695DA8 */ _t135 = _t134 & 0x00000001u;
|
|
/* 02695DA8 */ if (_t135) goto L_02695D5C; else goto L_02695DAC;
|
|
L_02695DAC: ; // 0x2695dac
|
|
/* 02695DAC */ cpu->r[12] = 0x101C0000u;
|
|
/* 02695DB0 */ _t136 = cpu->r[12] + 0x00006000u;
|
|
/* 02695DB0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t136);
|
|
/* 02695DB4 */ _t137 = cpu->r[12] + 0x000002B0u;
|
|
/* 02695DB4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t137);
|
|
/* 02695DB8 */ _t138 = cpu->r[31] + 0x000000A4u;
|
|
/* 02695DB8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t138);
|
|
/* 02695DBC */ _t139 = cpu->r[12] + 0x00000454u;
|
|
/* 02695DBC */ cpu->r[6] = rbrew_read32(cpu->mem, _t139);
|
|
/* 02695DC0 */ _t140 = cpu->r[30] + 0x0000025Cu;
|
|
/* 02695DC0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t140);
|
|
/* 02695DC4 */ cpu->r[5] = cpu->r[6] + cpu->r[7];
|
|
/* 02695DC8 */ cpu->r[11] = cpu->r[5] / cpu->r[10];
|
|
/* 02695DCC */ cpu->r[11] = (uint32_t)((int32_t)cpu->r[11] * (int32_t)cpu->r[10]);
|
|
/* 02695DD0 */ cpu->r[8] = cpu->r[5] - cpu->r[11];
|
|
/* 02695DD4 */ cpu->r[0] = rbrew_clz32(cpu->r[8]);
|
|
/* 02695DD8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 02695DD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02695DDC */ _t141 = cpu->r[31] + 0x000000ACu;
|
|
/* 02695DDC */ rbrew_write8(cpu->mem, _t141, (uint8_t)cpu->r[0]);
|
|
/* 02695DE0 */ _t142 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02695DE0 */ _t143 = _t142 & 0x00000001u;
|
|
/* 02695DE0 */ if (_t143) goto L_02695E08; else goto L_02695DE4;
|
|
L_02695DE4: ; // 0x2695de4
|
|
/* 02695DE4 */ _t144 = cpu->r[31] + 0x00000008u;
|
|
/* 02695DE4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t144);
|
|
/* 02695DE8 */ cpu->r[3] = cpu->r[31] + 0x00000014u;
|
|
/* 02695DEC */ cpu->r[4] = cpu->r[4] + 0x000000B4u;
|
|
/* 02695DF0 */ Gambit_fn_026993B8(cpu);
|
|
/* 02695DF4 */ _t145 = cpu->r[31] + 0x00000008u;
|
|
/* 02695DF4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t145);
|
|
/* 02695DF8 */ Gambit_fn_02670D44(cpu);
|
|
/* 02695DFC */ cpu->r[4] = cpu->r[3];
|
|
/* 02695E00 */ cpu->r[3] = cpu->r[31] + 0x00000014u;
|
|
/* 02695E04 */ Gambit_fn_026993DC(cpu);
|
|
L_02695E08: ; // 0x2695e08
|
|
/* 02695E08 */ /* nop */
|
|
/* 02695E0C */ _t146 = cpu->r[1] + 0x00000024u;
|
|
/* 02695E0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t146);
|
|
/* 02695E10 */ cpu->lr = cpu->r[0];
|
|
/* 02695E14 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 02695E18 */ return;
|
|
}
|
|
|
|
// fn_02695E1C @ 0x2695e1c
|
|
void Gambit_fn_02695E1C(CPUState* cpu) {
|
|
uint32_t _t0, _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;
|
|
|
|
L_02695E1C: ; // 0x2695e1c
|
|
/* 02695E1C */ _t0 = cpu->r[1] + 0xFFFFFE48u;
|
|
/* 02695E1C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02695E1C */ cpu->r[1] = _t0;
|
|
/* 02695E20 */ _t1 = cpu->r[1] + 0x00000168u;
|
|
/* 02695E20 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[27]);
|
|
/* 02695E24 */ /* nop */
|
|
/* 02695E28 */ _t2 = cpu->r[1] + 0x00000118u;
|
|
/* 02695E28 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[22]);
|
|
/* 02695E2C */ _t3 = cpu->r[1] + 0x00000198u;
|
|
/* 02695E2C */ rbrew_write_f64(cpu->mem, _t3, cpu->f[30]);
|
|
/* 02695E30 */ /* nop */
|
|
/* 02695E34 */ _t4 = cpu->r[1] + 0x00000188u;
|
|
/* 02695E34 */ rbrew_write_f64(cpu->mem, _t4, cpu->f[29]);
|
|
/* 02695E38 */ /* nop */
|
|
/* 02695E3C */ _t5 = cpu->r[1] + 0x00000120u;
|
|
/* 02695E3C */ rbrew_write_f32(cpu->mem, _t5, cpu->f[22]);
|
|
/* 02695E40 */ /* nop */
|
|
/* 02695E44 */ _t6 = cpu->r[1] + 0x00000128u;
|
|
/* 02695E44 */ rbrew_write_f64(cpu->mem, _t6, cpu->f[23]);
|
|
/* 02695E48 */ _t7 = cpu->r[1] + 0x00000178u;
|
|
/* 02695E48 */ rbrew_write_f64(cpu->mem, _t7, cpu->f[28]);
|
|
/* 02695E4C */ /* nop */
|
|
/* 02695E50 */ _t8 = cpu->r[1] + 0x00000170u;
|
|
/* 02695E50 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[27]);
|
|
/* 02695E54 */ /* nop */
|
|
/* 02695E58 */ _t9 = cpu->r[1] + 0x000001A0u;
|
|
/* 02695E58 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[30]);
|
|
/* 02695E5C */ _t10 = cpu->r[1] + 0x00000130u;
|
|
/* 02695E5C */ rbrew_write_f32(cpu->mem, _t10, cpu->f[23]);
|
|
/* 02695E60 */ _t11 = cpu->r[1] + 0x00000138u;
|
|
/* 02695E60 */ rbrew_write_f64(cpu->mem, _t11, cpu->f[24]);
|
|
/* 02695E64 */ _t12 = cpu->r[1] + 0x00000158u;
|
|
/* 02695E64 */ rbrew_write_f64(cpu->mem, _t12, cpu->f[26]);
|
|
/* 02695E68 */ /* nop */
|
|
/* 02695E6C */ _t13 = cpu->r[1] + 0x00000180u;
|
|
/* 02695E6C */ rbrew_write_f32(cpu->mem, _t13, cpu->f[28]);
|
|
/* 02695E70 */ /* nop */
|
|
/* 02695E74 */ _t14 = cpu->r[1] + 0x00000140u;
|
|
/* 02695E74 */ rbrew_write_f32(cpu->mem, _t14, cpu->f[24]);
|
|
/* 02695E78 */ _t15 = cpu->r[1] + 0x00000160u;
|
|
/* 02695E78 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[26]);
|
|
/* 02695E7C */ _t16 = cpu->r[1] + 0x00000148u;
|
|
/* 02695E7C */ rbrew_write_f64(cpu->mem, _t16, cpu->f[25]);
|
|
/* 02695E80 */ _t17 = cpu->r[1] + 0x00000108u;
|
|
/* 02695E80 */ rbrew_write_f64(cpu->mem, _t17, cpu->f[21]);
|
|
/* 02695E84 */ /* nop */
|
|
/* 02695E88 */ _t18 = cpu->r[1] + 0x00000190u;
|
|
/* 02695E88 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[29]);
|
|
/* 02695E8C */ /* nop */
|
|
/* 02695E90 */ _t19 = cpu->r[1] + 0x00000150u;
|
|
/* 02695E90 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[25]);
|
|
/* 02695E94 */ cpu->r[0] = cpu->lr;
|
|
/* 02695E98 */ _t20 = cpu->r[1] + 0x00000110u;
|
|
/* 02695E98 */ rbrew_write_f32(cpu->mem, _t20, cpu->f[21]);
|
|
/* 02695E9C */ _t21 = cpu->r[1] + 0x000001A8u;
|
|
/* 02695E9C */ rbrew_write_f64(cpu->mem, _t21, cpu->f[31]);
|
|
/* 02695EA0 */ /* nop */
|
|
/* 02695EA4 */ _t22 = cpu->r[1] + 0x000001B0u;
|
|
/* 02695EA4 */ rbrew_write_f32(cpu->mem, _t22, cpu->f[31]);
|
|
/* 02695EA8 */ _t23 = cpu->r[1] + 0x000001BCu;
|
|
/* 02695EA8 */ rbrew_write32(cpu->mem, _t23, cpu->r[0]);
|
|
/* 02695EAC */ /* nop */
|
|
/* 02695EB0 */ cpu->r[25] = cpu->r[3];
|
|
/* 02695EB4 */ _t24 = cpu->r[25] + 0x00000098u;
|
|
/* 02695EB4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02695EB8 */ _t25 = cpu->r[25] + 0x000000A0u;
|
|
/* 02695EB8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02695EBC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[9]);
|
|
/* 02695EC0 */ cpu->r[24] = 0x00000000u;
|
|
/* 02695EC4 */ _t26 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02695EC4 */ _t27 = _t26 & 0x00000001u;
|
|
/* 02695EC4 */ if (_t27) goto L_02695EC8; else goto L_02695ED4;
|
|
L_02695EC8: ; // 0x2695ec8
|
|
/* 02695EC8 */ cpu->r[4] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x00000014u);
|
|
/* 02695ECC */ _t28 = cpu->r[25] + 0x0000009Cu;
|
|
/* 02695ECC */ cpu->r[5] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02695ED0 */ cpu->r[24] = cpu->r[5] + cpu->r[4];
|
|
L_02695ED4: ; // 0x2695ed4
|
|
/* 02695ED4 */ cpu->r[18] = 0x00000000u;
|
|
/* 02695ED8 */ cpu->r[3] = cpu->r[1] + 0x00000044u;
|
|
/* 02695EDC */ _t29 = cpu->r[1] + 0x00000044u;
|
|
/* 02695EDC */ rbrew_write32(cpu->mem, _t29, cpu->r[18]);
|
|
/* 02695EE0 */ cpu->r[5] = cpu->r[1] + 0x00000050u;
|
|
/* 02695EE4 */ _t30 = cpu->r[1] + 0x00000048u;
|
|
/* 02695EE4 */ rbrew_write32(cpu->mem, _t30, cpu->r[18]);
|
|
/* 02695EE8 */ cpu->r[4] = 0x0000001Eu;
|
|
/* 02695EEC */ _t31 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02695EEC */ rbrew_write32(cpu->mem, _t31, cpu->r[18]);
|
|
/* 02695EF0 */ Gambit_fn_028023A8(cpu);
|
|
/* 02695EF4 */ _t32 = cpu->r[24] + 0x00000000u;
|
|
/* 02695EF4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02695EF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[18], cpu->r[0]);
|
|
/* 02695EFC */ _t33 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02695EFC */ _t34 = _t33 & 0x00000001u;
|
|
/* 02695EFC */ if (_t34) goto L_02695F00; else goto L_026960B8;
|
|
L_02695F00: ; // 0x2695f00
|
|
/* 02695F00 */ cpu->r[30] = 0x00000000u;
|
|
L_02695F04: ; // 0x2695f04
|
|
/* 02695F04 */ cpu->r[29] = cpu->r[30];
|
|
/* 02695F08 */ cpu->r[20] = 0x00000002u;
|
|
/* 02695F0C */ cpu->r[19] = 0x00000000u;
|
|
L_02695F10: ; // 0x2695f10
|
|
/* 02695F10 */ _t35 = cpu->r[25] + 0x00000008u;
|
|
/* 02695F10 */ cpu->r[22] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02695F14 */ _t36 = cpu->r[22] + 0x0000002Cu;
|
|
/* 02695F14 */ cpu->r[6] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02695F18 */ cpu->r[8] = 0x00000001u - cpu->r[6];
|
|
/* 02695F1C */ cpu->r[6] = rbrew_rlwinm(cpu->r[8], 0x00000001u, 0x00000000u, 0x0000001Eu);
|
|
/* 02695F20 */ cpu->r[7] = cpu->r[6] + cpu->r[19];
|
|
/* 02695F24 */ _t37 = cpu->r[25] + 0x00000010u;
|
|
/* 02695F24 */ cpu->r[11] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02695F28 */ cpu->r[9] = rbrew_rlwinm(cpu->r[7], 0x00000004u, 0x00000000u, 0x0000001Bu);
|
|
/* 02695F2C */ cpu->r[4] = cpu->r[11] + cpu->r[9];
|
|
/* 02695F30 */ _t38 = cpu->r[4] + 0x00000560u;
|
|
/* 02695F30 */ cpu->r[26] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02695F30 */ cpu->r[4] = _t38;
|
|
/* 02695F34 */ _t39 = cpu->r[4] + 0x0000000Cu;
|
|
/* 02695F34 */ cpu->r[28] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02695F38 */ cpu->r[21] = 0x00000000u;
|
|
/* 02695F3C */ _t40 = cpu->r[4] + 0x00000004u;
|
|
/* 02695F3C */ cpu->r[23] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02695F40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 02695F44 */ _t41 = cpu->r[4] + 0x00000008u;
|
|
/* 02695F44 */ cpu->r[31] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02695F48 */ _t42 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02695F48 */ _t43 = _t42 & 0x00000001u;
|
|
/* 02695F48 */ if (_t43) goto L_02695F4C; else goto L_0269605C;
|
|
L_02695F4C: ; // 0x2695f4c
|
|
/* 02695F4C */ cpu->r[27] = cpu->r[28];
|
|
L_02695F50: ; // 0x2695f50
|
|
/* 02695F50 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[21], cpu->r[27]);
|
|
/* 02695F54 */ _t44 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02695F54 */ _t45 = _t44 & 0x00000001u;
|
|
/* 02695F54 */ if (_t45) goto L_02695F58; else goto L_02695F88;
|
|
L_02695F58: ; // 0x2695f58
|
|
/* 02695F58 */ cpu->r[8] = cpu->r[31];
|
|
/* 02695F5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], cpu->r[23]);
|
|
/* 02695F60 */ _t46 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02695F60 */ _t47 = _t46 & 0x00000001u;
|
|
/* 02695F60 */ if (_t47) goto L_02695F68; else goto L_02695F64;
|
|
L_02695F64: ; // 0x2695f64
|
|
/* 02695F64 */ cpu->r[8] = cpu->r[8] - cpu->r[23];
|
|
L_02695F68: ; // 0x2695f68
|
|
/* 02695F68 */ cpu->r[12] = rbrew_rlwinm(cpu->r[8], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02695F6C */ _t48 = cpu->r[26] + cpu->r[12];
|
|
/* 02695F6C */ cpu->r[16] = rbrew_read32(cpu->mem, _t48);
|
|
/* 02695F70 */ _t49 = cpu->r[16] + 0x00000004u;
|
|
/* 02695F70 */ cpu->r[5] = rbrew_read32(cpu->mem, _t49);
|
|
/* 02695F74 */ cpu->r[17] = 0x00000000u;
|
|
/* 02695F78 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[18], cpu->r[0]);
|
|
/* 02695F7C */ _t50 = cpu->r[5] + 0x00000254u;
|
|
/* 02695F7C */ cpu->r[7] = rbrew_read32(cpu->mem, _t50);
|
|
/* 02695F80 */ _t51 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02695F80 */ _t52 = _t51 & 0x00000001u;
|
|
/* 02695F80 */ if (_t52) goto L_02695F84; else goto L_02695FA8;
|
|
L_02695F84: ; // 0x2695f84
|
|
/* 02695F84 */ goto L_02695FA0;
|
|
L_02695F88: ; // 0x2695f88
|
|
/* 02695F88 */ cpu->r[17] = 0x00000000u;
|
|
/* 02695F8C */ _t53 = cpu->r[17] + 0x00000000u;
|
|
/* 02695F8C */ cpu->r[16] = rbrew_read32(cpu->mem, _t53);
|
|
/* 02695F90 */ _t54 = cpu->r[16] + 0x00000004u;
|
|
/* 02695F90 */ cpu->r[5] = rbrew_read32(cpu->mem, _t54);
|
|
/* 02695F94 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[18], cpu->r[0]);
|
|
/* 02695F98 */ _t55 = cpu->r[5] + 0x00000254u;
|
|
/* 02695F98 */ cpu->r[7] = rbrew_read32(cpu->mem, _t55);
|
|
/* 02695F9C */ _t56 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02695F9C */ _t57 = _t56 & 0x00000001u;
|
|
/* 02695F9C */ if (_t57) goto L_02695FA0; else goto L_02695FA8;
|
|
L_02695FA0: ; // 0x2695fa0
|
|
/* 02695FA0 */ _t58 = cpu->r[24] + 0x00000008u;
|
|
/* 02695FA0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t58);
|
|
/* 02695FA4 */ _t59 = cpu->r[4] + cpu->r[29];
|
|
/* 02695FA4 */ cpu->r[17] = rbrew_read32(cpu->mem, _t59);
|
|
L_02695FA8: ; // 0x2695fa8
|
|
/* 02695FA8 */ cpu->ctr = cpu->r[7];
|
|
/* 02695FAC */ cpu->r[3] = cpu->r[16];
|
|
/* 02695FB0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02695FB4 */ cpu->r[4] = cpu->r[3];
|
|
/* 02695FB8 */ cpu->r[3] = cpu->r[22];
|
|
/* 02695FBC */ Gambit_fn_026700D8(cpu);
|
|
/* 02695FC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02695FC4 */ _t60 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02695FC4 */ _t61 = _t60 & 0x00000001u;
|
|
/* 02695FC4 */ if (_t61) goto L_02695FC8; else goto L_02696040;
|
|
L_02695FC8: ; // 0x2695fc8
|
|
/* 02695FC8 */ _t62 = cpu->r[17] + 0x00000000u;
|
|
/* 02695FC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t62);
|
|
/* 02695FCC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[16]);
|
|
/* 02695FD0 */ _t63 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02695FD0 */ _t64 = _t63 & 0x00000001u;
|
|
/* 02695FD0 */ if (_t64) goto L_02695FD4; else goto L_02696040;
|
|
L_02695FD4: ; // 0x2695fd4
|
|
/* 02695FD4 */ _t65 = cpu->r[16] + 0x00000004u;
|
|
/* 02695FD4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t65);
|
|
/* 02695FD8 */ _t66 = cpu->r[10] + 0x00000254u;
|
|
/* 02695FD8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t66);
|
|
/* 02695FDC */ cpu->ctr = cpu->r[0];
|
|
/* 02695FE0 */ cpu->r[3] = cpu->r[16];
|
|
/* 02695FE4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02695FE8 */ _t67 = cpu->r[3] + 0x00000000u;
|
|
/* 02695FE8 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t67);
|
|
/* 02695FEC */ _t68 = cpu->r[17] + 0x0000000Cu;
|
|
/* 02695FEC */ rbrew_write_f32(cpu->mem, _t68, cpu->f[7]);
|
|
/* 02695FF0 */ _t69 = cpu->r[3] + 0x00000004u;
|
|
/* 02695FF0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t69);
|
|
/* 02695FF4 */ _t70 = cpu->r[17] + 0x00000010u;
|
|
/* 02695FF4 */ rbrew_write_f32(cpu->mem, _t70, cpu->f[9]);
|
|
/* 02695FF8 */ _t71 = cpu->r[3] + 0x00000008u;
|
|
/* 02695FF8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t71);
|
|
/* 02695FFC */ _t72 = cpu->r[17] + 0x00000014u;
|
|
/* 02695FFC */ rbrew_write_f32(cpu->mem, _t72, cpu->f[11]);
|
|
/* 02696000 */ _t73 = cpu->r[16] + 0x00000004u;
|
|
/* 02696000 */ cpu->r[8] = rbrew_read32(cpu->mem, _t73);
|
|
/* 02696004 */ _t74 = cpu->r[8] + 0x0000025Cu;
|
|
/* 02696004 */ cpu->r[0] = rbrew_read32(cpu->mem, _t74);
|
|
/* 02696008 */ cpu->ctr = cpu->r[0];
|
|
/* 0269600C */ cpu->r[3] = cpu->r[16];
|
|
/* 02696010 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02696014 */ _t75 = cpu->r[3] + 0x00000000u;
|
|
/* 02696014 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t75);
|
|
/* 02696018 */ _t76 = cpu->r[17] + 0x00000050u;
|
|
/* 02696018 */ cpu->r[6] = rbrew_read32(cpu->mem, _t76);
|
|
/* 0269601C */ _t77 = cpu->r[17] + 0x00000030u;
|
|
/* 0269601C */ rbrew_write_f32(cpu->mem, _t77, cpu->f[13]);
|
|
/* 02696020 */ _t78 = cpu->r[3] + 0x00000004u;
|
|
/* 02696020 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t78);
|
|
/* 02696024 */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 02696028 */ _t79 = cpu->r[17] + 0x00000034u;
|
|
/* 02696028 */ rbrew_write_f32(cpu->mem, _t79, cpu->f[0]);
|
|
/* 0269602C */ _t80 = cpu->r[3] + 0x00000008u;
|
|
/* 0269602C */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t80);
|
|
/* 02696030 */ _t81 = cpu->r[17] + 0x00000050u;
|
|
/* 02696030 */ rbrew_write32(cpu->mem, _t81, cpu->r[6]);
|
|
/* 02696034 */ _t82 = cpu->r[17] + 0x00000038u;
|
|
/* 02696034 */ rbrew_write_f32(cpu->mem, _t82, cpu->f[6]);
|
|
/* 02696038 */ _t83 = cpu->r[24] + 0x00000000u;
|
|
/* 02696038 */ cpu->r[0] = rbrew_read32(cpu->mem, _t83);
|
|
/* 0269603C */ goto L_026960A8;
|
|
L_02696040: ; // 0x2696040
|
|
/* 02696040 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 02696044 */ cpu->r[28] = cpu->r[28] + 0xFFFFFFFFu;
|
|
/* 02696044 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 02696048 */ _t84 = cpu->r[24] + 0x00000000u;
|
|
/* 02696048 */ cpu->r[0] = rbrew_read32(cpu->mem, _t84);
|
|
/* 0269604C */ cpu->r[21] = cpu->r[21] + 0x00000001u;
|
|
/* 02696050 */ _t85 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02696050 */ _t86 = _t85 & 0x00000001u;
|
|
/* 02696050 */ if (_t86) goto L_0269605C; else goto L_02696054;
|
|
L_02696054: ; // 0x2696054
|
|
/* 02696054 */ _t87 = cpu->r[25] + 0x00000008u;
|
|
/* 02696054 */ cpu->r[22] = rbrew_read32(cpu->mem, _t87);
|
|
/* 02696058 */ goto L_02695F50;
|
|
L_0269605C: ; // 0x269605c
|
|
/* 0269605C */ cpu->r[20] = cpu->r[20] + 0xFFFFFFFFu;
|
|
/* 0269605C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[20], 0x00000000u);
|
|
/* 02696060 */ cpu->r[19] = cpu->r[19] + 0x00000001u;
|
|
/* 02696064 */ _t88 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02696064 */ _t89 = _t88 & 0x00000001u;
|
|
/* 02696064 */ if (_t89) goto L_02696068; else goto L_02695F10;
|
|
L_02696068: ; // 0x2696068
|
|
/* 02696068 */ _t90 = cpu->r[1] + 0x00000048u;
|
|
/* 02696068 */ cpu->r[12] = rbrew_read32(cpu->mem, _t90);
|
|
/* 0269606C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[18], cpu->r[0]);
|
|
/* 02696070 */ _t91 = cpu->r[1] + 0x00000044u;
|
|
/* 02696070 */ cpu->r[8] = rbrew_read32(cpu->mem, _t91);
|
|
/* 02696074 */ cpu->r[11] = 0x00000000u;
|
|
/* 02696078 */ _t92 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02696078 */ _t93 = _t92 & 0x00000001u;
|
|
/* 02696078 */ if (_t93) goto L_0269607C; else goto L_02696084;
|
|
L_0269607C: ; // 0x269607c
|
|
/* 0269607C */ _t94 = cpu->r[24] + 0x00000008u;
|
|
/* 0269607C */ cpu->r[10] = rbrew_read32(cpu->mem, _t94);
|
|
/* 02696080 */ _t95 = cpu->r[10] + cpu->r[30];
|
|
/* 02696080 */ cpu->r[11] = rbrew_read32(cpu->mem, _t95);
|
|
L_02696084: ; // 0x2696084
|
|
/* 02696084 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], cpu->r[12]);
|
|
/* 02696088 */ _t96 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02696088 */ _t97 = _t96 & 0x00000001u;
|
|
/* 02696088 */ if (_t97) goto L_0269608C; else goto L_026960A8;
|
|
L_0269608C: ; // 0x269608c
|
|
/* 0269608C */ _t98 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0269608C */ cpu->r[0] = rbrew_read32(cpu->mem, _t98);
|
|
/* 02696090 */ cpu->r[4] = rbrew_rlwinm(cpu->r[8], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02696094 */ _t99 = cpu->r[4] + cpu->r[0];
|
|
/* 02696094 */ rbrew_write32(cpu->mem, _t99, cpu->r[11]);
|
|
/* 02696098 */ _t100 = cpu->r[1] + 0x00000044u;
|
|
/* 02696098 */ cpu->r[6] = rbrew_read32(cpu->mem, _t100);
|
|
/* 0269609C */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 026960A0 */ _t101 = cpu->r[1] + 0x00000044u;
|
|
/* 026960A0 */ rbrew_write32(cpu->mem, _t101, cpu->r[6]);
|
|
/* 026960A4 */ _t102 = cpu->r[24] + 0x00000000u;
|
|
/* 026960A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t102);
|
|
L_026960A8: ; // 0x26960a8
|
|
/* 026960A8 */ cpu->r[18] = cpu->r[18] + 0x00000001u;
|
|
/* 026960AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[18], cpu->r[0]);
|
|
/* 026960B0 */ cpu->r[30] = cpu->r[30] + 0x00000004u;
|
|
/* 026960B4 */ _t103 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026960B4 */ _t104 = _t103 & 0x00000001u;
|
|
/* 026960B4 */ if (_t104) goto L_02695F04; else goto L_026960B8;
|
|
L_026960B8: ; // 0x26960b8
|
|
/* 026960B8 */ _t105 = cpu->r[1] + 0x00000044u;
|
|
/* 026960B8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t105);
|
|
/* 026960BC */ cpu->r[30] = 0x00000000u;
|
|
/* 026960C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[8]);
|
|
/* 026960C4 */ _t106 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026960C4 */ _t107 = _t106 & 0x00000001u;
|
|
/* 026960C4 */ if (_t107) goto L_026960C8; else goto L_026961A4;
|
|
L_026960C8: ; // 0x26960c8
|
|
/* 026960C8 */ cpu->r[31] = 0x00000000u;
|
|
L_026960CC: ; // 0x26960cc
|
|
/* 026960CC */ cpu->r[4] = 0x00000000u;
|
|
/* 026960D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], cpu->r[0]);
|
|
/* 026960D4 */ _t108 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026960D4 */ _t109 = _t108 & 0x00000001u;
|
|
/* 026960D4 */ if (_t109) goto L_026960D8; else goto L_0269618C;
|
|
L_026960D8: ; // 0x26960d8
|
|
/* 026960D8 */ _t110 = cpu->r[1] + 0x0000004Cu;
|
|
/* 026960D8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t110);
|
|
/* 026960DC */ cpu->r[11] = 0x00000000u;
|
|
/* 026960E0 */ cpu->r[7] = cpu->r[30] - cpu->r[8];
|
|
/* 026960E4 */ cpu->r[5] = cpu->r[11];
|
|
/* 026960E8 */ cpu->r[6] = cpu->r[9] + cpu->r[31];
|
|
L_026960EC: ; // 0x26960ec
|
|
/* 026960EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 026960F0 */ cpu->r[9] = 0x00000000u;
|
|
/* 026960F4 */ _t111 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026960F4 */ _t112 = _t111 & 0x00000001u;
|
|
/* 026960F4 */ if (_t112) goto L_026960F8; else goto L_026960FC;
|
|
L_026960F8: ; // 0x26960f8
|
|
/* 026960F8 */ _t113 = cpu->r[6] + 0x00000000u;
|
|
/* 026960F8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t113);
|
|
L_026960FC: ; // 0x26960fc
|
|
/* 026960FC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[0]);
|
|
/* 02696100 */ cpu->r[7] = 0x00000000u;
|
|
/* 02696104 */ _t114 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02696104 */ _t115 = _t114 & 0x00000001u;
|
|
/* 02696104 */ if (_t115) goto L_02696108; else goto L_02696110;
|
|
L_02696108: ; // 0x2696108
|
|
/* 02696108 */ _t116 = cpu->r[24] + 0x00000008u;
|
|
/* 02696108 */ cpu->r[10] = rbrew_read32(cpu->mem, _t116);
|
|
/* 0269610C */ _t117 = cpu->r[10] + cpu->r[11];
|
|
/* 0269610C */ cpu->r[7] = rbrew_read32(cpu->mem, _t117);
|
|
L_02696110: ; // 0x2696110
|
|
/* 02696110 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[7]);
|
|
/* 02696114 */ cpu->r[9] = cpu->r[4] + 0x00000001u;
|
|
/* 02696118 */ _t118 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02696118 */ _t119 = _t118 & 0x00000001u;
|
|
/* 02696118 */ if (_t119) goto L_0269611C; else goto L_0269617C;
|
|
L_0269611C: ; // 0x269611c
|
|
/* 0269611C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], cpu->r[0]);
|
|
/* 02696120 */ _t120 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02696120 */ _t121 = _t120 & 0x00000001u;
|
|
/* 02696120 */ if (_t121) goto L_02696158; else goto L_02696124;
|
|
L_02696124: ; // 0x2696124
|
|
/* 02696124 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], cpu->r[9]);
|
|
/* 02696128 */ cpu->r[0] = cpu->r[9] - cpu->r[4];
|
|
/* 0269612C */ _t122 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269612C */ _t123 = _t122 & 0x00000001u;
|
|
/* 0269612C */ if (_t123) goto L_02696130; else goto L_02696158;
|
|
L_02696130: ; // 0x2696130
|
|
/* 02696130 */ cpu->ctr = cpu->r[0];
|
|
/* 02696134 */ _t124 = cpu->r[24] + 0x0000000Cu;
|
|
/* 02696134 */ cpu->r[7] = rbrew_read32(cpu->mem, _t124);
|
|
/* 02696138 */ cpu->r[5] = rbrew_rlwinm(cpu->r[4], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
L_0269613C: ; // 0x269613c
|
|
/* 0269613C */ _t125 = cpu->r[24] + 0x00000008u;
|
|
/* 0269613C */ cpu->r[12] = rbrew_read32(cpu->mem, _t125);
|
|
/* 02696140 */ _t126 = cpu->r[12] + cpu->r[5];
|
|
/* 02696140 */ cpu->r[11] = rbrew_read32(cpu->mem, _t126);
|
|
/* 02696144 */ _t127 = cpu->r[11] + 0x00000000u;
|
|
/* 02696144 */ rbrew_write32(cpu->mem, _t127, cpu->r[7]);
|
|
/* 02696148 */ cpu->r[7] = cpu->r[11];
|
|
/* 0269614C */ cpu->r[5] = cpu->r[5] + 0x00000004u;
|
|
/* 02696150 */ _t128 = cpu->r[24] + 0x0000000Cu;
|
|
/* 02696150 */ rbrew_write32(cpu->mem, _t128, cpu->r[7]);
|
|
/* 02696154 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02696154 */ _t129 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02696154 */ _t130 = _t129 >> (0x00000002u & 31u);
|
|
/* 02696154 */ _t131 = _t130 & 0x00000001u;
|
|
/* 02696154 */ if (_t131) goto L_0269613C; else goto L_02696158;
|
|
L_02696158: ; // 0x2696158
|
|
/* 02696158 */ cpu->r[5] = 0x00000001u;
|
|
/* 0269615C */ cpu->r[3] = cpu->r[24];
|
|
/* 02696160 */ Gambit_fn_0280246C(cpu);
|
|
/* 02696164 */ _t132 = cpu->r[1] + 0x00000044u;
|
|
/* 02696164 */ cpu->r[8] = rbrew_read32(cpu->mem, _t132);
|
|
/* 02696168 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 0269616C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[8]);
|
|
/* 02696170 */ cpu->r[31] = cpu->r[31] + 0x00000004u;
|
|
/* 02696174 */ _t133 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02696174 */ _t134 = _t133 & 0x00000001u;
|
|
/* 02696174 */ if (_t134) goto L_02696178; else goto L_026961A4;
|
|
L_02696178: ; // 0x2696178
|
|
/* 02696178 */ goto L_0269619C;
|
|
L_0269617C: ; // 0x269617c
|
|
/* 0269617C */ cpu->r[4] = cpu->r[9];
|
|
/* 02696180 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], cpu->r[0]);
|
|
/* 02696184 */ cpu->r[11] = cpu->r[11] + 0x00000004u;
|
|
/* 02696188 */ _t135 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02696188 */ _t136 = _t135 & 0x00000001u;
|
|
/* 02696188 */ if (_t136) goto L_026960EC; else goto L_0269618C;
|
|
L_0269618C: ; // 0x269618c
|
|
/* 0269618C */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02696190 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[8]);
|
|
/* 02696194 */ cpu->r[31] = cpu->r[31] + 0x00000004u;
|
|
/* 02696198 */ _t137 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02696198 */ _t138 = _t137 & 0x00000001u;
|
|
/* 02696198 */ if (_t138) goto L_0269619C; else goto L_026961A4;
|
|
L_0269619C: ; // 0x269619c
|
|
/* 0269619C */ _t139 = cpu->r[24] + 0x00000000u;
|
|
/* 0269619C */ cpu->r[0] = rbrew_read32(cpu->mem, _t139);
|
|
/* 026961A0 */ goto L_026960CC;
|
|
L_026961A4: ; // 0x26961a4
|
|
/* 026961A4 */ cpu->r[6] = 0x100E0000u;
|
|
/* 026961A8 */ cpu->r[12] = 0x100E0000u;
|
|
/* 026961AC */ _t140 = cpu->r[6] + 0x00003C30u;
|
|
/* 026961AC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t140);
|
|
/* 026961B0 */ cpu->r[7] = 0x100E0000u;
|
|
/* 026961B4 */ cpu->r[31] = 0x101F0000u;
|
|
/* 026961B8 */ _t141 = cpu->r[12] + 0x00003C2Cu;
|
|
/* 026961B8 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t141);
|
|
/* 026961BC */ cpu->r[21] = 0x00000000u;
|
|
/* 026961C0 */ cpu->r[31] = cpu->r[31] + 0x00006338u;
|
|
/* 026961C4 */ _t142 = cpu->r[7] + 0x00003C28u;
|
|
/* 026961C4 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t142);
|
|
/* 026961C8 */ cpu->r[20] = 0x00000002u;
|
|
L_026961CC: ; // 0x26961cc
|
|
/* 026961CC */ _t143 = cpu->r[25] + 0x00000008u;
|
|
/* 026961CC */ cpu->r[22] = rbrew_read32(cpu->mem, _t143);
|
|
/* 026961D0 */ _t144 = cpu->r[22] + 0x0000002Cu;
|
|
/* 026961D0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t144);
|
|
/* 026961D4 */ cpu->r[0] = 0x00000001u - cpu->r[12];
|
|
/* 026961D8 */ cpu->r[5] = rbrew_rlwinm(cpu->r[0], 0x00000001u, 0x00000000u, 0x0000001Eu);
|
|
/* 026961DC */ cpu->r[7] = cpu->r[5] + cpu->r[21];
|
|
/* 026961E0 */ _t145 = cpu->r[25] + 0x00000010u;
|
|
/* 026961E0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t145);
|
|
/* 026961E4 */ cpu->r[8] = rbrew_rlwinm(cpu->r[7], 0x00000004u, 0x00000000u, 0x0000001Bu);
|
|
/* 026961E8 */ cpu->r[10] = cpu->r[11] + cpu->r[8];
|
|
/* 026961EC */ _t146 = cpu->r[10] + 0x00000560u;
|
|
/* 026961EC */ cpu->r[28] = rbrew_read32(cpu->mem, _t146);
|
|
/* 026961EC */ cpu->r[10] = _t146;
|
|
/* 026961F0 */ _t147 = cpu->r[10] + 0x0000000Cu;
|
|
/* 026961F0 */ cpu->r[27] = rbrew_read32(cpu->mem, _t147);
|
|
/* 026961F4 */ cpu->r[23] = 0x00000000u;
|
|
/* 026961F8 */ _t148 = cpu->r[10] + 0x00000004u;
|
|
/* 026961F8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t148);
|
|
/* 026961FC */ cpu->r[26] = cpu->r[27];
|
|
/* 026961FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 02696200 */ _t149 = cpu->r[10] + 0x00000008u;
|
|
/* 02696200 */ cpu->r[29] = rbrew_read32(cpu->mem, _t149);
|
|
/* 02696204 */ _t150 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02696204 */ _t151 = _t150 & 0x00000001u;
|
|
/* 02696204 */ if (_t151) goto L_02696208; else goto L_026964EC;
|
|
L_02696208: ; // 0x2696208
|
|
/* 02696208 */ cpu->f[26] = cpu->f[29];
|
|
/* 0269620C */ cpu->r[19] = 0x00000000u;
|
|
/* 02696210 */ cpu->f[28] = cpu->f[30];
|
|
/* 02696214 */ cpu->r[16] = cpu->r[1] + 0x00000030u;
|
|
/* 02696218 */ cpu->f[27] = cpu->f[31];
|
|
/* 0269621C */ cpu->r[17] = cpu->r[1] + 0x0000002Cu;
|
|
L_02696220: ; // 0x2696220
|
|
/* 02696220 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[23], cpu->r[27]);
|
|
/* 02696224 */ _t152 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02696224 */ _t153 = _t152 & 0x00000001u;
|
|
/* 02696224 */ if (_t153) goto L_02696228; else goto L_0269626C;
|
|
L_02696228: ; // 0x2696228
|
|
/* 02696228 */ cpu->r[5] = cpu->r[29];
|
|
/* 0269622C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], cpu->r[30]);
|
|
/* 02696230 */ _t154 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02696230 */ _t155 = _t154 & 0x00000001u;
|
|
/* 02696230 */ if (_t155) goto L_02696238; else goto L_02696234;
|
|
L_02696234: ; // 0x2696234
|
|
/* 02696234 */ cpu->r[5] = cpu->r[5] - cpu->r[30];
|
|
L_02696238: ; // 0x2696238
|
|
/* 02696238 */ cpu->r[9] = rbrew_rlwinm(cpu->r[5], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0269623C */ _t156 = cpu->r[28] + cpu->r[9];
|
|
/* 0269623C */ cpu->r[18] = rbrew_read32(cpu->mem, _t156);
|
|
/* 02696240 */ _t157 = cpu->r[18] + 0x00000004u;
|
|
/* 02696240 */ cpu->r[10] = rbrew_read32(cpu->mem, _t157);
|
|
/* 02696244 */ _t158 = cpu->r[10] + 0x00000254u;
|
|
/* 02696244 */ cpu->r[11] = rbrew_read32(cpu->mem, _t158);
|
|
/* 02696248 */ cpu->ctr = cpu->r[11];
|
|
/* 0269624C */ cpu->r[3] = cpu->r[18];
|
|
/* 02696250 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02696254 */ cpu->r[4] = cpu->r[3];
|
|
/* 02696258 */ cpu->r[3] = cpu->r[22];
|
|
/* 0269625C */ Gambit_fn_026700D8(cpu);
|
|
/* 02696260 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02696264 */ _t159 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02696264 */ _t160 = _t159 & 0x00000001u;
|
|
/* 02696264 */ if (_t160) goto L_0269629C; else goto L_02696268;
|
|
L_02696268: ; // 0x2696268
|
|
/* 02696268 */ goto L_026964D4;
|
|
L_0269626C: ; // 0x269626c
|
|
/* 0269626C */ cpu->r[11] = 0x00000000u;
|
|
/* 02696270 */ _t161 = cpu->r[11] + 0x00000000u;
|
|
/* 02696270 */ cpu->r[18] = rbrew_read32(cpu->mem, _t161);
|
|
/* 02696274 */ _t162 = cpu->r[18] + 0x00000004u;
|
|
/* 02696274 */ cpu->r[10] = rbrew_read32(cpu->mem, _t162);
|
|
/* 02696278 */ _t163 = cpu->r[10] + 0x00000254u;
|
|
/* 02696278 */ cpu->r[11] = rbrew_read32(cpu->mem, _t163);
|
|
/* 0269627C */ cpu->ctr = cpu->r[11];
|
|
/* 02696280 */ cpu->r[3] = cpu->r[18];
|
|
/* 02696284 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02696288 */ cpu->r[4] = cpu->r[3];
|
|
/* 0269628C */ cpu->r[3] = cpu->r[22];
|
|
/* 02696290 */ Gambit_fn_026700D8(cpu);
|
|
/* 02696294 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02696298 */ _t164 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02696298 */ _t165 = _t164 & 0x00000001u;
|
|
/* 02696298 */ if (_t165) goto L_0269629C; else goto L_026964D4;
|
|
L_0269629C: ; // 0x269629c
|
|
/* 0269629C */ _t166 = cpu->r[24] + 0x00000000u;
|
|
/* 0269629C */ cpu->r[0] = rbrew_read32(cpu->mem, _t166);
|
|
/* 026962A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 026962A4 */ cpu->r[7] = 0x00000000u;
|
|
/* 026962A8 */ _t167 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 026962A8 */ _t168 = _t167 & 0x00000001u;
|
|
/* 026962A8 */ if (_t168) goto L_026962AC; else goto L_026962E4;
|
|
L_026962AC: ; // 0x26962ac
|
|
/* 026962AC */ cpu->ctr = cpu->r[0];
|
|
/* 026962B0 */ cpu->r[12] = cpu->r[0];
|
|
/* 026962B4 */ cpu->r[10] = 0x00000000u;
|
|
L_026962B8: ; // 0x26962b8
|
|
/* 026962B8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[12]);
|
|
/* 026962BC */ cpu->r[11] = 0x00000000u;
|
|
/* 026962C0 */ _t169 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026962C0 */ _t170 = _t169 & 0x00000001u;
|
|
/* 026962C0 */ if (_t170) goto L_026962C4; else goto L_026962CC;
|
|
L_026962C4: ; // 0x26962c4
|
|
/* 026962C4 */ _t171 = cpu->r[24] + 0x00000008u;
|
|
/* 026962C4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t171);
|
|
/* 026962C8 */ _t172 = cpu->r[4] + cpu->r[10];
|
|
/* 026962C8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t172);
|
|
L_026962CC: ; // 0x26962cc
|
|
/* 026962CC */ _t173 = cpu->r[11] + 0x00000000u;
|
|
/* 026962CC */ cpu->r[5] = rbrew_read32(cpu->mem, _t173);
|
|
/* 026962D0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[18]);
|
|
/* 026962D4 */ _t174 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026962D4 */ _t175 = _t174 & 0x00000001u;
|
|
/* 026962D4 */ if (_t175) goto L_026964D4; else goto L_026962D8;
|
|
L_026962D8: ; // 0x26962d8
|
|
/* 026962D8 */ cpu->r[10] = cpu->r[10] + 0x00000004u;
|
|
/* 026962DC */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 026962E0 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 026962E0 */ _t176 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 026962E0 */ _t177 = _t176 >> (0x00000002u & 31u);
|
|
/* 026962E0 */ _t178 = _t177 & 0x00000001u;
|
|
/* 026962E0 */ if (_t178) goto L_026962B8; else goto L_026962E4;
|
|
L_026962E4: ; // 0x26962e4
|
|
/* 026962E4 */ _t179 = cpu->r[24] + 0x00000004u;
|
|
/* 026962E4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t179);
|
|
/* 026962E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], cpu->r[6]);
|
|
/* 026962EC */ _t180 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026962EC */ _t181 = _t180 & 0x00000001u;
|
|
/* 026962EC */ if (_t181) goto L_026962F0; else goto L_026964D4;
|
|
L_026962F0: ; // 0x26962f0
|
|
/* 026962F0 */ _t182 = cpu->r[24] + 0x0000000Cu;
|
|
/* 026962F0 */ cpu->r[22] = rbrew_read32(cpu->mem, _t182);
|
|
/* 026962F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[22], 0x00000000u);
|
|
/* 026962F8 */ _t183 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026962F8 */ _t184 = _t183 & 0x00000001u;
|
|
/* 026962F8 */ if (_t184) goto L_02696304; else goto L_026962FC;
|
|
L_026962FC: ; // 0x26962fc
|
|
/* 026962FC */ _t185 = cpu->r[22] + 0x00000000u;
|
|
/* 026962FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t185);
|
|
/* 02696300 */ _t186 = cpu->r[24] + 0x0000000Cu;
|
|
/* 02696300 */ rbrew_write32(cpu->mem, _t186, cpu->r[0]);
|
|
L_02696304: ; // 0x2696304
|
|
/* 02696304 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[22], 0x00000000u);
|
|
/* 02696308 */ _t187 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02696308 */ _t188 = _t187 & 0x00000001u;
|
|
/* 02696308 */ if (_t188) goto L_02696310; else goto L_0269630C;
|
|
L_0269630C: ; // 0x269630c
|
|
/* 0269630C */ _t189 = cpu->r[22] + 0x00000008u;
|
|
/* 0269630C */ rbrew_write32(cpu->mem, _t189, cpu->r[19]);
|
|
L_02696310: ; // 0x2696310
|
|
/* 02696310 */ _t190 = cpu->r[24] + 0x00000000u;
|
|
/* 02696310 */ cpu->r[0] = rbrew_read32(cpu->mem, _t190);
|
|
/* 02696314 */ _t191 = cpu->r[24] + 0x00000004u;
|
|
/* 02696314 */ cpu->r[9] = rbrew_read32(cpu->mem, _t191);
|
|
/* 02696318 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], cpu->r[9]);
|
|
/* 0269631C */ _t192 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269631C */ _t193 = _t192 & 0x00000001u;
|
|
/* 0269631C */ if (_t193) goto L_02696320; else goto L_02696338;
|
|
L_02696320: ; // 0x2696320
|
|
/* 02696320 */ _t194 = cpu->r[24] + 0x00000008u;
|
|
/* 02696320 */ cpu->r[6] = rbrew_read32(cpu->mem, _t194);
|
|
/* 02696324 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02696328 */ _t195 = cpu->r[12] + cpu->r[6];
|
|
/* 02696328 */ rbrew_write32(cpu->mem, _t195, cpu->r[22]);
|
|
/* 0269632C */ _t196 = cpu->r[24] + 0x00000000u;
|
|
/* 0269632C */ cpu->r[8] = rbrew_read32(cpu->mem, _t196);
|
|
/* 02696330 */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 02696334 */ _t197 = cpu->r[24] + 0x00000000u;
|
|
/* 02696334 */ rbrew_write32(cpu->mem, _t197, cpu->r[8]);
|
|
L_02696338: ; // 0x2696338
|
|
/* 02696338 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[22], 0x00000000u);
|
|
/* 0269633C */ _t198 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269633C */ _t199 = _t198 & 0x00000001u;
|
|
/* 0269633C */ if (_t199) goto L_026964D4; else goto L_02696340;
|
|
L_02696340: ; // 0x2696340
|
|
/* 02696340 */ _t200 = cpu->r[22] + 0x00000000u;
|
|
/* 02696340 */ rbrew_write32(cpu->mem, _t200, cpu->r[18]);
|
|
/* 02696344 */ _t201 = cpu->r[18] + 0x00000020u;
|
|
/* 02696344 */ cpu->r[10] = rbrew_read32(cpu->mem, _t201);
|
|
/* 02696348 */ _t202 = cpu->r[22] + 0x00000008u;
|
|
/* 02696348 */ rbrew_write32(cpu->mem, _t202, cpu->r[21]);
|
|
/* 0269634C */ _t203 = cpu->r[22] + 0x00000004u;
|
|
/* 0269634C */ rbrew_write32(cpu->mem, _t203, cpu->r[10]);
|
|
/* 02696350 */ _t204 = cpu->r[18] + 0x00000004u;
|
|
/* 02696350 */ cpu->r[12] = rbrew_read32(cpu->mem, _t204);
|
|
/* 02696354 */ _t205 = cpu->r[12] + 0x00000254u;
|
|
/* 02696354 */ cpu->r[0] = rbrew_read32(cpu->mem, _t205);
|
|
/* 02696358 */ cpu->ctr = cpu->r[0];
|
|
/* 0269635C */ cpu->r[3] = cpu->r[18];
|
|
/* 02696360 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02696364 */ _t206 = cpu->r[3] + 0x00000000u;
|
|
/* 02696364 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t206);
|
|
/* 02696368 */ _t207 = cpu->r[22] + 0x0000000Cu;
|
|
/* 02696368 */ rbrew_write_f32(cpu->mem, _t207, cpu->f[12]);
|
|
/* 0269636C */ _t208 = cpu->r[3] + 0x00000004u;
|
|
/* 0269636C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t208);
|
|
/* 02696370 */ _t209 = cpu->r[22] + 0x00000010u;
|
|
/* 02696370 */ rbrew_write_f32(cpu->mem, _t209, cpu->f[13]);
|
|
/* 02696374 */ _t210 = cpu->r[3] + 0x00000008u;
|
|
/* 02696374 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t210);
|
|
/* 02696378 */ _t211 = cpu->r[22] + 0x00000014u;
|
|
/* 02696378 */ rbrew_write_f32(cpu->mem, _t211, cpu->f[0]);
|
|
/* 0269637C */ _t212 = cpu->r[18] + 0x00000004u;
|
|
/* 0269637C */ cpu->r[8] = rbrew_read32(cpu->mem, _t212);
|
|
/* 02696380 */ _t213 = cpu->r[8] + 0x0000025Cu;
|
|
/* 02696380 */ cpu->r[10] = rbrew_read32(cpu->mem, _t213);
|
|
/* 02696384 */ cpu->ctr = cpu->r[10];
|
|
/* 02696388 */ cpu->r[3] = cpu->r[18];
|
|
/* 0269638C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02696390 */ _t214 = cpu->r[3] + 0x00000000u;
|
|
/* 02696390 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t214);
|
|
/* 02696394 */ _t215 = cpu->r[22] + 0x00000030u;
|
|
/* 02696394 */ rbrew_write_f32(cpu->mem, _t215, cpu->f[6]);
|
|
/* 02696398 */ _t216 = cpu->r[3] + 0x00000004u;
|
|
/* 02696398 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t216);
|
|
/* 0269639C */ _t217 = cpu->r[22] + 0x00000034u;
|
|
/* 0269639C */ rbrew_write_f32(cpu->mem, _t217, cpu->f[7]);
|
|
/* 026963A0 */ _t218 = cpu->r[3] + 0x00000008u;
|
|
/* 026963A0 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t218);
|
|
/* 026963A4 */ _t219 = cpu->r[22] + 0x00000038u;
|
|
/* 026963A4 */ rbrew_write_f32(cpu->mem, _t219, cpu->f[8]);
|
|
/* 026963A8 */ _t220 = cpu->r[31] + 0x00000000u;
|
|
/* 026963A8 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t220);
|
|
/* 026963AC */ _t221 = cpu->r[22] + 0x0000003Cu;
|
|
/* 026963AC */ rbrew_write_f32(cpu->mem, _t221, cpu->f[9]);
|
|
/* 026963B0 */ _t222 = cpu->r[31] + 0x00000004u;
|
|
/* 026963B0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t222);
|
|
/* 026963B4 */ _t223 = cpu->r[22] + 0x00000000u;
|
|
/* 026963B4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t223);
|
|
/* 026963B8 */ _t224 = cpu->r[22] + 0x00000040u;
|
|
/* 026963B8 */ rbrew_write_f32(cpu->mem, _t224, cpu->f[10]);
|
|
/* 026963BC */ _t225 = cpu->r[31] + 0x00000008u;
|
|
/* 026963BC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t225);
|
|
/* 026963C0 */ _t226 = cpu->r[22] + 0x0000004Cu;
|
|
/* 026963C0 */ rbrew_write8(cpu->mem, _t226, (uint8_t)cpu->r[19]);
|
|
/* 026963C4 */ cpu->r[3] = cpu->r[1] + 0x00000034u;
|
|
/* 026963C8 */ _t227 = cpu->r[22] + 0x00000048u;
|
|
/* 026963C8 */ rbrew_write_f32(cpu->mem, _t227, cpu->f[26]);
|
|
/* 026963CC */ _t228 = cpu->r[22] + 0x00000058u;
|
|
/* 026963CC */ rbrew_write_f32(cpu->mem, _t228, cpu->f[26]);
|
|
/* 026963D0 */ _t229 = cpu->r[22] + 0x00000044u;
|
|
/* 026963D0 */ rbrew_write_f32(cpu->mem, _t229, cpu->f[11]);
|
|
/* 026963D4 */ _t230 = cpu->r[22] + 0x00000054u;
|
|
/* 026963D4 */ rbrew_write_f32(cpu->mem, _t230, cpu->f[26]);
|
|
/* 026963D8 */ _t231 = cpu->r[22] + 0x00000050u;
|
|
/* 026963D8 */ rbrew_write32(cpu->mem, _t231, cpu->r[19]);
|
|
/* 026963DC */ Gambit_fn_028300A4(cpu);
|
|
/* 026963E0 */ cpu->r[3] = cpu->r[1] + 0x00000034u;
|
|
/* 026963E4 */ Gambit_fn_02830138(cpu);
|
|
/* 026963E8 */ cpu->r[12] = rbrew_rlwinm(cpu->r[3], 0x00000017u, 0x00000009u, 0x0000001Fu);
|
|
/* 026963EC */ cpu->r[0] = cpu->r[12] | 0x3F800000u;
|
|
/* 026963F0 */ _t232 = cpu->r[1] + 0x0000002Cu;
|
|
/* 026963F0 */ rbrew_write32(cpu->mem, _t232, cpu->r[0]);
|
|
/* 026963F4 */ _t233 = cpu->r[17] + 0x00000000u;
|
|
/* 026963F4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t233);
|
|
/* 026963F8 */ cpu->f[12] = cpu->f[13] - cpu->f[28];
|
|
/* 026963FC */ cpu->r[3] = cpu->r[1] + 0x00000034u;
|
|
/* 02696400 */ cpu->f[24] = cpu->f[12] * cpu->f[27];
|
|
/* 02696404 */ Gambit_fn_02830138(cpu);
|
|
/* 02696408 */ cpu->r[4] = rbrew_rlwinm(cpu->r[3], 0x00000017u, 0x00000009u, 0x0000001Fu);
|
|
/* 0269640C */ cpu->r[5] = cpu->r[4] | 0x3F800000u;
|
|
/* 02696410 */ _t234 = cpu->r[1] + 0x00000030u;
|
|
/* 02696410 */ rbrew_write32(cpu->mem, _t234, cpu->r[5]);
|
|
/* 02696414 */ _t235 = cpu->r[16] + 0x00000000u;
|
|
/* 02696414 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t235);
|
|
/* 02696418 */ cpu->f[0] = cpu->f[6] - cpu->f[28];
|
|
/* 0269641C */ cpu->f[1] = cpu->f[24];
|
|
/* 02696420 */ cpu->f[25] = cpu->f[0] * cpu->f[27];
|
|
/* 02696424 */ Gambit_fn_02C886F8(cpu);
|
|
/* 02696428 */ cpu->f[21] = cpu->f[1];
|
|
/* 0269642C */ cpu->f[1] = cpu->f[25];
|
|
/* 02696430 */ Gambit_fn_02C88F2C(cpu);
|
|
/* 02696434 */ cpu->f[22] = cpu->f[1];
|
|
/* 02696438 */ cpu->f[1] = cpu->f[25];
|
|
/* 0269643C */ Gambit_fn_02C886F8(cpu);
|
|
/* 02696440 */ cpu->f[23] = cpu->f[1];
|
|
/* 02696444 */ cpu->f[1] = cpu->f[24];
|
|
/* 02696448 */ Gambit_fn_02C88F2C(cpu);
|
|
/* 0269644C */ cpu->f[24] = cpu->f[1];
|
|
/* 02696450 */ cpu->f[1] = cpu->f[25];
|
|
/* 02696454 */ Gambit_fn_02C88F2C(cpu);
|
|
/* 02696458 */ cpu->f[13] = cpu->f[21] * cpu->f[22];
|
|
/* 0269645C */ _t236 = cpu->r[25] + 0x00000008u;
|
|
/* 0269645C */ cpu->r[11] = rbrew_read32(cpu->mem, _t236);
|
|
/* 02696460 */ _t237 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02696460 */ rbrew_write_f32(cpu->mem, _t237, cpu->f[23]);
|
|
/* 02696464 */ cpu->f[0] = cpu->f[24] * cpu->f[1];
|
|
/* 02696468 */ _t238 = cpu->r[1] + 0x00000008u;
|
|
/* 02696468 */ rbrew_write_f32(cpu->mem, _t238, cpu->f[13]);
|
|
/* 0269646C */ /* nop */
|
|
/* 02696470 */ _t239 = cpu->r[1] + 0x00000010u;
|
|
/* 02696470 */ rbrew_write_f32(cpu->mem, _t239, cpu->f[0]);
|
|
/* 02696474 */ _t240 = cpu->r[11] + 0x00000748u;
|
|
/* 02696474 */ cpu->r[6] = rbrew_read32(cpu->mem, _t240);
|
|
/* 02696478 */ _t241 = cpu->r[6] + 0x0000037Cu;
|
|
/* 02696478 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t241);
|
|
/* 0269647C */ /* nop */
|
|
/* 02696480 */ /* nop */
|
|
/* 02696484 */ _t242 = cpu->r[1] + 0x00000014u;
|
|
/* 02696484 */ cpu->r[9] = rbrew_read32(cpu->mem, _t242);
|
|
/* 02696488 */ cpu->f[12] = cpu->f[0] * cpu->f[11];
|
|
/* 0269648C */ _t243 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269648C */ rbrew_write_f32(cpu->mem, _t243, cpu->f[12]);
|
|
/* 02696490 */ _t244 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02696490 */ cpu->r[0] = rbrew_read32(cpu->mem, _t244);
|
|
/* 02696494 */ _t245 = cpu->r[1] + 0x00000020u;
|
|
/* 02696494 */ rbrew_write32(cpu->mem, _t245, cpu->r[9]);
|
|
/* 02696498 */ _t246 = cpu->r[1] + 0x00000020u;
|
|
/* 02696498 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t246);
|
|
/* 0269649C */ _t247 = cpu->r[1] + 0x00000018u;
|
|
/* 0269649C */ cpu->r[10] = rbrew_read32(cpu->mem, _t247);
|
|
/* 026964A0 */ _t248 = cpu->r[1] + 0x00000028u;
|
|
/* 026964A0 */ rbrew_write32(cpu->mem, _t248, cpu->r[0]);
|
|
/* 026964A4 */ _t249 = cpu->r[1] + 0x00000024u;
|
|
/* 026964A4 */ rbrew_write32(cpu->mem, _t249, cpu->r[10]);
|
|
/* 026964A8 */ _t250 = cpu->r[22] + 0x0000000Cu;
|
|
/* 026964A8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t250);
|
|
/* 026964AC */ _t251 = cpu->r[22] + 0x00000018u;
|
|
/* 026964AC */ rbrew_write_f32(cpu->mem, _t251, cpu->f[7]);
|
|
/* 026964B0 */ _t252 = cpu->r[1] + 0x00000024u;
|
|
/* 026964B0 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t252);
|
|
/* 026964B4 */ _t253 = cpu->r[22] + 0x00000014u;
|
|
/* 026964B4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t253);
|
|
/* 026964B8 */ _t254 = cpu->r[22] + 0x0000001Cu;
|
|
/* 026964B8 */ rbrew_write_f32(cpu->mem, _t254, cpu->f[8]);
|
|
/* 026964BC */ _t255 = cpu->r[1] + 0x00000028u;
|
|
/* 026964BC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t255);
|
|
/* 026964C0 */ _t256 = cpu->r[22] + 0x0000002Cu;
|
|
/* 026964C0 */ rbrew_write_f32(cpu->mem, _t256, cpu->f[12]);
|
|
/* 026964C4 */ _t257 = cpu->r[22] + 0x00000020u;
|
|
/* 026964C4 */ rbrew_write_f32(cpu->mem, _t257, cpu->f[9]);
|
|
/* 026964C8 */ _t258 = cpu->r[22] + 0x00000010u;
|
|
/* 026964C8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t258);
|
|
/* 026964CC */ _t259 = cpu->r[22] + 0x00000024u;
|
|
/* 026964CC */ rbrew_write_f32(cpu->mem, _t259, cpu->f[10]);
|
|
/* 026964D0 */ _t260 = cpu->r[22] + 0x00000028u;
|
|
/* 026964D0 */ rbrew_write_f32(cpu->mem, _t260, cpu->f[11]);
|
|
L_026964D4: ; // 0x26964d4
|
|
/* 026964D4 */ cpu->r[26] = cpu->r[26] + 0xFFFFFFFFu;
|
|
/* 026964D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 026964D8 */ cpu->r[23] = cpu->r[23] + 0x00000001u;
|
|
/* 026964DC */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 026964E0 */ _t261 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026964E0 */ _t262 = _t261 & 0x00000001u;
|
|
/* 026964E0 */ if (_t262) goto L_026964EC; else goto L_026964E4;
|
|
L_026964E4: ; // 0x26964e4
|
|
/* 026964E4 */ _t263 = cpu->r[25] + 0x00000008u;
|
|
/* 026964E4 */ cpu->r[22] = rbrew_read32(cpu->mem, _t263);
|
|
/* 026964E8 */ goto L_02696220;
|
|
L_026964EC: ; // 0x26964ec
|
|
/* 026964EC */ cpu->r[20] = cpu->r[20] + 0xFFFFFFFFu;
|
|
/* 026964EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[20], 0x00000000u);
|
|
/* 026964F0 */ cpu->r[21] = cpu->r[21] + 0x00000001u;
|
|
/* 026964F4 */ _t264 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026964F4 */ _t265 = _t264 & 0x00000001u;
|
|
/* 026964F4 */ if (_t265) goto L_026964F8; else goto L_026961CC;
|
|
L_026964F8: ; // 0x26964f8
|
|
/* 026964F8 */ /* nop */
|
|
/* 026964FC */ _t266 = cpu->r[1] + 0x00000160u;
|
|
/* 026964FC */ cpu->f[26] = rbrew_read_f32(cpu->mem, _t266);
|
|
/* 02696500 */ _t267 = cpu->r[1] + 0x00000140u;
|
|
/* 02696500 */ cpu->f[24] = rbrew_read_f32(cpu->mem, _t267);
|
|
/* 02696504 */ _t268 = cpu->r[1] + 0x00000158u;
|
|
/* 02696504 */ cpu->f[26] = rbrew_read_f64(cpu->mem, _t268);
|
|
/* 02696508 */ _t269 = cpu->r[1] + 0x00000130u;
|
|
/* 02696508 */ cpu->f[23] = rbrew_read_f32(cpu->mem, _t269);
|
|
/* 0269650C */ _t270 = cpu->r[1] + 0x00000138u;
|
|
/* 0269650C */ cpu->f[24] = rbrew_read_f64(cpu->mem, _t270);
|
|
/* 02696510 */ _t271 = cpu->r[1] + 0x00000128u;
|
|
/* 02696510 */ cpu->f[23] = rbrew_read_f64(cpu->mem, _t271);
|
|
/* 02696514 */ _t272 = cpu->r[1] + 0x00000180u;
|
|
/* 02696514 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t272);
|
|
/* 02696518 */ _t273 = cpu->r[1] + 0x00000150u;
|
|
/* 02696518 */ cpu->f[25] = rbrew_read_f32(cpu->mem, _t273);
|
|
/* 0269651C */ _t274 = cpu->r[1] + 0x00000178u;
|
|
/* 0269651C */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t274);
|
|
/* 02696520 */ _t275 = cpu->r[1] + 0x00000148u;
|
|
/* 02696520 */ cpu->f[25] = rbrew_read_f64(cpu->mem, _t275);
|
|
/* 02696524 */ _t276 = cpu->r[1] + 0x000001A0u;
|
|
/* 02696524 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t276);
|
|
/* 02696528 */ _t277 = cpu->r[1] + 0x00000170u;
|
|
/* 02696528 */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t277);
|
|
/* 0269652C */ _t278 = cpu->r[1] + 0x00000198u;
|
|
/* 0269652C */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t278);
|
|
/* 02696530 */ _t279 = cpu->r[1] + 0x00000168u;
|
|
/* 02696530 */ cpu->f[27] = rbrew_read_f64(cpu->mem, _t279);
|
|
/* 02696534 */ _t280 = cpu->r[1] + 0x00000120u;
|
|
/* 02696534 */ cpu->f[22] = rbrew_read_f32(cpu->mem, _t280);
|
|
/* 02696538 */ _t281 = cpu->r[1] + 0x00000190u;
|
|
/* 02696538 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t281);
|
|
/* 0269653C */ _t282 = cpu->r[1] + 0x00000118u;
|
|
/* 0269653C */ cpu->f[22] = rbrew_read_f64(cpu->mem, _t282);
|
|
/* 02696540 */ _t283 = cpu->r[1] + 0x00000188u;
|
|
/* 02696540 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t283);
|
|
/* 02696544 */ _t284 = cpu->r[1] + 0x00000110u;
|
|
/* 02696544 */ cpu->f[21] = rbrew_read_f32(cpu->mem, _t284);
|
|
/* 02696548 */ _t285 = cpu->r[1] + 0x000001B0u;
|
|
/* 02696548 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t285);
|
|
/* 0269654C */ _t286 = cpu->r[1] + 0x00000108u;
|
|
/* 0269654C */ cpu->f[21] = rbrew_read_f64(cpu->mem, _t286);
|
|
/* 02696550 */ _t287 = cpu->r[1] + 0x000001A8u;
|
|
/* 02696550 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t287);
|
|
/* 02696554 */ _t288 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02696554 */ _t289 = _t288 & 0x00000001u;
|
|
/* 02696554 */ if (_t289) goto L_02696558; // else: addr-0 trap, fall-through
|
|
L_02696558: ; // 0x2696558
|
|
/* 02696558 */ _t290 = cpu->r[1] + 0x000001BCu;
|
|
/* 02696558 */ cpu->r[0] = rbrew_read32(cpu->mem, _t290);
|
|
/* 0269655C */ cpu->lr = cpu->r[0];
|
|
/* 02696560 */ cpu->r[1] = cpu->r[1] + 0x000001B8u;
|
|
/* 02696564 */ return;
|
|
}
|
|
|
|
// fn_02696568 @ 0x2696568
|
|
void Gambit_fn_02696568(CPUState* cpu) {
|
|
uint32_t _t0, _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, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66;
|
|
double _ft50, _ft51;
|
|
|
|
L_02696568: ; // 0x2696568
|
|
/* 02696568 */ cpu->r[0] = cpu->lr;
|
|
/* 0269656C */ _t0 = cpu->r[1] + 0xFFFFFF88u;
|
|
/* 0269656C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269656C */ cpu->r[1] = _t0;
|
|
/* 02696570 */ _t1 = cpu->r[1] + 0x00000070u;
|
|
/* 02696570 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02696574 */ cpu->r[30] = cpu->r[3];
|
|
/* 02696578 */ _t2 = cpu->r[1] + 0x00000074u;
|
|
/* 02696578 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0269657C */ cpu->r[31] = cpu->r[4];
|
|
/* 02696580 */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 02696584 */ _t3 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02696584 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02696588 */ Gambit_fn_02043AC4(cpu);
|
|
/* 0269658C */ cpu->r[5] = 0x101F0000u;
|
|
/* 02696590 */ cpu->r[12] = 0x100E0000u;
|
|
/* 02696594 */ cpu->r[5] = cpu->r[5] + 0x00006350u;
|
|
/* 02696598 */ _t4 = cpu->r[12] + 0x00003C34u;
|
|
/* 02696598 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 0269659C */ /* nop */
|
|
/* 026965A0 */ _t5 = cpu->r[5] + 0x00000008u;
|
|
/* 026965A0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 026965A4 */ /* nop */
|
|
/* 026965A8 */ _t6 = cpu->r[30] + 0x00000008u;
|
|
/* 026965A8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t6);
|
|
/* 026965AC */ cpu->f[8] = cpu->f[10] * cpu->f[9];
|
|
/* 026965B0 */ /* nop */
|
|
/* 026965B4 */ _t7 = cpu->r[1] + 0x00000028u;
|
|
/* 026965B4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 026965B8 */ _t8 = cpu->r[1] + 0x00000024u;
|
|
/* 026965B8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t8);
|
|
/* 026965BC */ _t9 = cpu->r[1] + 0x0000002Cu;
|
|
/* 026965BC */ rbrew_write_f32(cpu->mem, _t9, cpu->f[8]);
|
|
/* 026965C0 */ _t10 = cpu->r[1] + 0x0000002Cu;
|
|
/* 026965C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 026965C4 */ _t11 = cpu->r[1] + 0x0000005Cu;
|
|
/* 026965C4 */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 026965C8 */ _t12 = cpu->r[31] + 0x0000000Cu;
|
|
/* 026965C8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t12);
|
|
/* 026965CC */ _t13 = cpu->r[1] + 0x00000058u;
|
|
/* 026965CC */ rbrew_write32(cpu->mem, _t13, cpu->r[10]);
|
|
/* 026965D0 */ /* nop */
|
|
/* 026965D4 */ _t14 = cpu->r[1] + 0x00000060u;
|
|
/* 026965D4 */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
/* 026965D8 */ /* nop */
|
|
/* 026965DC */ _t15 = cpu->r[31] + 0x00000014u;
|
|
/* 026965DC */ cpu->r[7] = rbrew_read32(cpu->mem, _t15);
|
|
/* 026965E0 */ /* nop */
|
|
/* 026965E4 */ _t16 = cpu->r[31] + 0x00000010u;
|
|
/* 026965E4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t16);
|
|
/* 026965E8 */ /* nop */
|
|
/* 026965EC */ _t17 = cpu->r[9] + 0x000000BCu;
|
|
/* 026965EC */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 026965F0 */ _t18 = cpu->r[1] + 0x00000068u;
|
|
/* 026965F0 */ rbrew_write32(cpu->mem, _t18, cpu->r[6]);
|
|
/* 026965F4 */ _t19 = cpu->r[1] + 0x00000060u;
|
|
/* 026965F4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 026965F8 */ _t20 = cpu->r[1] + 0x00000034u;
|
|
/* 026965F8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t20);
|
|
/* 026965FC */ cpu->f[0] = cpu->f[8] + cpu->f[10];
|
|
/* 02696600 */ _t21 = cpu->r[1] + 0x00000030u;
|
|
/* 02696600 */ cpu->r[9] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02696604 */ _t22 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02696604 */ rbrew_write32(cpu->mem, _t22, cpu->r[10]);
|
|
/* 02696608 */ _t23 = cpu->r[1] + 0x00000064u;
|
|
/* 02696608 */ rbrew_write32(cpu->mem, _t23, cpu->r[5]);
|
|
/* 0269660C */ /* nop */
|
|
/* 02696610 */ _t24 = cpu->r[1] + 0x00000018u;
|
|
/* 02696610 */ rbrew_write32(cpu->mem, _t24, cpu->r[9]);
|
|
/* 02696614 */ /* nop */
|
|
/* 02696618 */ _t25 = cpu->r[1] + 0x00000038u;
|
|
/* 02696618 */ rbrew_write_f32(cpu->mem, _t25, cpu->f[0]);
|
|
/* 0269661C */ _t26 = cpu->r[1] + 0x00000038u;
|
|
/* 0269661C */ cpu->r[0] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02696620 */ _t27 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02696620 */ rbrew_write32(cpu->mem, _t27, cpu->r[7]);
|
|
/* 02696624 */ _t28 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02696624 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 02696628 */ _t29 = cpu->r[1] + 0x00000020u;
|
|
/* 02696628 */ rbrew_write32(cpu->mem, _t29, cpu->r[0]);
|
|
/* 0269662C */ /* nop */
|
|
/* 02696630 */ _t30 = cpu->r[1] + 0x00000020u;
|
|
/* 02696630 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 02696634 */ /* nop */
|
|
/* 02696638 */ _t31 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02696638 */ cpu->r[10] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0269663C */ cpu->f[12] = cpu->f[0] - cpu->f[7];
|
|
/* 02696640 */ _t32 = cpu->r[1] + 0x00000040u;
|
|
/* 02696640 */ cpu->r[11] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02696644 */ _t33 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02696644 */ rbrew_write32(cpu->mem, _t33, cpu->r[10]);
|
|
/* 02696648 */ _t34 = cpu->r[1] + 0x00000044u;
|
|
/* 02696648 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[12]);
|
|
/* 0269664C */ _t35 = cpu->r[1] + 0x00000044u;
|
|
/* 0269664C */ cpu->r[12] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02696650 */ _t36 = cpu->r[1] + 0x00000010u;
|
|
/* 02696650 */ rbrew_write32(cpu->mem, _t36, cpu->r[11]);
|
|
/* 02696654 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02696658 */ _t37 = cpu->r[1] + 0x00000014u;
|
|
/* 02696658 */ rbrew_write32(cpu->mem, _t37, cpu->r[12]);
|
|
/* 0269665C */ Gambit_fn_02C69350(cpu);
|
|
/* 02696660 */ cpu->r[9] = 0x100E0000u;
|
|
/* 02696664 */ _t38 = cpu->r[9] + 0x00003C38u;
|
|
/* 02696664 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 02696668 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[10]);
|
|
/* 0269666C */ _t39 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269666C */ _t40 = _t39 & 0x00000001u;
|
|
/* 0269666C */ if (_t40) goto L_02696670; else goto L_0269667C;
|
|
L_02696670: ; // 0x2696670
|
|
/* 02696670 */ cpu->r[0] = 0x00000000u;
|
|
/* 02696674 */ _t41 = cpu->r[31] + 0x0000004Cu;
|
|
/* 02696674 */ rbrew_write8(cpu->mem, _t41, (uint8_t)cpu->r[0]);
|
|
/* 02696678 */ goto L_02696768;
|
|
L_0269667C: ; // 0x269667c
|
|
/* 0269667C */ _t42 = cpu->r[1] + 0x00000010u;
|
|
/* 0269667C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 02696680 */ cpu->f[7] = cpu->f[0] * cpu->f[0];
|
|
/* 02696684 */ _t43 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02696684 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 02696688 */ cpu->f[9] = fma(cpu->f[8], cpu->f[8], cpu->f[7]);
|
|
/* 0269668C */ _t44 = cpu->r[1] + 0x00000014u;
|
|
/* 0269668C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 02696690 */ cpu->r[7] = 0x100E0000u;
|
|
/* 02696694 */ cpu->f[10] = fma(cpu->f[7], cpu->f[7], cpu->f[9]);
|
|
/* 02696698 */ _t45 = cpu->r[7] + 0x00003C28u;
|
|
/* 02696698 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t45);
|
|
/* 0269669C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[0]);
|
|
/* 026966A0 */ _t46 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 026966A0 */ _t47 = _t46 & 0x00000001u;
|
|
/* 026966A0 */ if (_t47) goto L_026966A4; else goto L_026966E0;
|
|
L_026966A4: ; // 0x26966a4
|
|
/* 026966A4 */ cpu->r[5] = 0x100E0000u;
|
|
/* 026966A8 */ cpu->r[12] = 0x100E0000u;
|
|
/* 026966AC */ _t48 = cpu->r[5] + 0x00003C3Cu;
|
|
/* 026966AC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 026966B0 */ _t49 = cpu->r[12] + 0x00003C40u;
|
|
/* 026966B0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 026966B4 */ _ft50 = sqrt(cpu->f[10]);
|
|
/* 026966B4 */ _ft51 = (double)(int32_t)0x00000001u;
|
|
/* 026966B4 */ cpu->f[9] = _ft51 / _ft50;
|
|
/* 026966B8 */ cpu->f[11] = cpu->f[9] * cpu->f[9];
|
|
/* 026966BC */ cpu->f[7] = cpu->f[9] * cpu->f[12];
|
|
/* 026966C0 */ cpu->f[11] = -fma(cpu->f[11], cpu->f[10], -(cpu->f[13]));
|
|
/* 026966C4 */ cpu->f[9] = cpu->f[11] * cpu->f[7];
|
|
/* 026966C8 */ _t52 = cpu->r[1] + 0x00000014u;
|
|
/* 026966C8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 026966CC */ /* nop */
|
|
/* 026966D0 */ cpu->f[13] = cpu->f[13] * cpu->f[9];
|
|
/* 026966D4 */ /* nop */
|
|
/* 026966D8 */ _t53 = cpu->r[1] + 0x00000014u;
|
|
/* 026966D8 */ rbrew_write_f32(cpu->mem, _t53, cpu->f[13]);
|
|
/* 026966DC */ /* nop */
|
|
L_026966E0: ; // 0x26966e0
|
|
/* 026966E0 */ cpu->r[11] = 0x101E0000u;
|
|
/* 026966E4 */ cpu->r[10] = 0x100E0000u;
|
|
/* 026966E8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[0]);
|
|
/* 026966EC */ _t54 = cpu->r[11] + 0xFFFF958Cu;
|
|
/* 026966EC */ cpu->f[2] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 026966F0 */ cpu->r[7] = 0x101C0000u;
|
|
/* 026966F4 */ _t55 = cpu->r[10] + 0x00003C44u;
|
|
/* 026966F4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 026966F8 */ _t56 = cpu->r[7] + 0x00001EF8u;
|
|
/* 026966F8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t56);
|
|
/* 026966FC */ _t57 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 026966FC */ _t58 = _t57 & 0x00000001u;
|
|
/* 026966FC */ if (_t58) goto L_02696734; else goto L_02696700;
|
|
L_02696700: ; // 0x2696700
|
|
/* 02696700 */ _t59 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02696700 */ cpu->r[9] = rbrew_read32(cpu->mem, _t59);
|
|
/* 02696704 */ cpu->r[5] = 0x00000000u;
|
|
/* 02696708 */ cpu->r[0] = cpu->r[1] + 0x00000048u;
|
|
/* 0269670C */ cpu->f[1] = cpu->f[11];
|
|
/* 02696710 */ cpu->r[7] = cpu->r[5];
|
|
/* 02696714 */ cpu->r[6] = cpu->r[5];
|
|
/* 02696718 */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 0269671C */ cpu->r[10] = cpu->r[7];
|
|
/* 02696720 */ cpu->r[8] = 0x000001FFu;
|
|
/* 02696724 */ _t60 = cpu->r[1] + 0x00000008u;
|
|
/* 02696724 */ rbrew_write32(cpu->mem, _t60, cpu->r[0]);
|
|
/* 02696728 */ Gambit_fn_0204A4DC(cpu);
|
|
/* 0269672C */ cpu->r[0] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02696730 */ goto L_02696764;
|
|
L_02696734: ; // 0x2696734
|
|
/* 02696734 */ _t61 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02696734 */ cpu->r[8] = rbrew_read32(cpu->mem, _t61);
|
|
/* 02696738 */ cpu->f[3] = cpu->f[2];
|
|
/* 0269673C */ cpu->r[9] = 0x100E0000u;
|
|
/* 02696740 */ cpu->r[6] = 0x00000000u;
|
|
/* 02696744 */ cpu->f[2] = cpu->f[11];
|
|
/* 02696748 */ _t62 = cpu->r[9] + 0x00003C2Cu;
|
|
/* 02696748 */ cpu->f[4] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 0269674C */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 02696750 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02696754 */ cpu->r[7] = 0x000001FFu;
|
|
/* 02696758 */ cpu->r[9] = cpu->r[1] + 0x00000048u;
|
|
/* 0269675C */ Gambit_fn_0204A864(cpu);
|
|
/* 02696760 */ cpu->r[0] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
L_02696764: ; // 0x2696764
|
|
/* 02696764 */ _t63 = cpu->r[31] + 0x0000004Cu;
|
|
/* 02696764 */ rbrew_write8(cpu->mem, _t63, (uint8_t)cpu->r[0]);
|
|
L_02696768: ; // 0x2696768
|
|
/* 02696768 */ _t64 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02696768 */ cpu->r[0] = rbrew_read32(cpu->mem, _t64);
|
|
/* 0269676C */ _t65 = cpu->r[1] + 0x00000070u;
|
|
/* 0269676C */ cpu->r[30] = rbrew_read32(cpu->mem, _t65);
|
|
/* 02696770 */ cpu->lr = cpu->r[0];
|
|
/* 02696774 */ _t66 = cpu->r[1] + 0x00000074u;
|
|
/* 02696774 */ cpu->r[31] = rbrew_read32(cpu->mem, _t66);
|
|
/* 02696778 */ cpu->r[1] = cpu->r[1] + 0x00000078u;
|
|
/* 0269677C */ return;
|
|
}
|
|
|
|
// fn_0269656C @ 0x269656c
|
|
void Gambit_fn_0269656C(CPUState* cpu) {
|
|
uint32_t _t0, _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, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66;
|
|
double _ft50, _ft51;
|
|
|
|
L_0269656C: ; // 0x269656c
|
|
/* 0269656C */ _t0 = cpu->r[1] + 0xFFFFFF88u;
|
|
/* 0269656C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269656C */ cpu->r[1] = _t0;
|
|
/* 02696570 */ _t1 = cpu->r[1] + 0x00000070u;
|
|
/* 02696570 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02696574 */ cpu->r[30] = cpu->r[3];
|
|
/* 02696578 */ _t2 = cpu->r[1] + 0x00000074u;
|
|
/* 02696578 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0269657C */ cpu->r[31] = cpu->r[4];
|
|
/* 02696580 */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 02696584 */ _t3 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02696584 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02696588 */ Gambit_fn_02043AC4(cpu);
|
|
/* 0269658C */ cpu->r[5] = 0x101F0000u;
|
|
/* 02696590 */ cpu->r[12] = 0x100E0000u;
|
|
/* 02696594 */ cpu->r[5] = cpu->r[5] + 0x00006350u;
|
|
/* 02696598 */ _t4 = cpu->r[12] + 0x00003C34u;
|
|
/* 02696598 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 0269659C */ /* nop */
|
|
/* 026965A0 */ _t5 = cpu->r[5] + 0x00000008u;
|
|
/* 026965A0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 026965A4 */ /* nop */
|
|
/* 026965A8 */ _t6 = cpu->r[30] + 0x00000008u;
|
|
/* 026965A8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t6);
|
|
/* 026965AC */ cpu->f[8] = cpu->f[10] * cpu->f[9];
|
|
/* 026965B0 */ /* nop */
|
|
/* 026965B4 */ _t7 = cpu->r[1] + 0x00000028u;
|
|
/* 026965B4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 026965B8 */ _t8 = cpu->r[1] + 0x00000024u;
|
|
/* 026965B8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t8);
|
|
/* 026965BC */ _t9 = cpu->r[1] + 0x0000002Cu;
|
|
/* 026965BC */ rbrew_write_f32(cpu->mem, _t9, cpu->f[8]);
|
|
/* 026965C0 */ _t10 = cpu->r[1] + 0x0000002Cu;
|
|
/* 026965C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 026965C4 */ _t11 = cpu->r[1] + 0x0000005Cu;
|
|
/* 026965C4 */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 026965C8 */ _t12 = cpu->r[31] + 0x0000000Cu;
|
|
/* 026965C8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t12);
|
|
/* 026965CC */ _t13 = cpu->r[1] + 0x00000058u;
|
|
/* 026965CC */ rbrew_write32(cpu->mem, _t13, cpu->r[10]);
|
|
/* 026965D0 */ /* nop */
|
|
/* 026965D4 */ _t14 = cpu->r[1] + 0x00000060u;
|
|
/* 026965D4 */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
/* 026965D8 */ /* nop */
|
|
/* 026965DC */ _t15 = cpu->r[31] + 0x00000014u;
|
|
/* 026965DC */ cpu->r[7] = rbrew_read32(cpu->mem, _t15);
|
|
/* 026965E0 */ /* nop */
|
|
/* 026965E4 */ _t16 = cpu->r[31] + 0x00000010u;
|
|
/* 026965E4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t16);
|
|
/* 026965E8 */ /* nop */
|
|
/* 026965EC */ _t17 = cpu->r[9] + 0x000000BCu;
|
|
/* 026965EC */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 026965F0 */ _t18 = cpu->r[1] + 0x00000068u;
|
|
/* 026965F0 */ rbrew_write32(cpu->mem, _t18, cpu->r[6]);
|
|
/* 026965F4 */ _t19 = cpu->r[1] + 0x00000060u;
|
|
/* 026965F4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 026965F8 */ _t20 = cpu->r[1] + 0x00000034u;
|
|
/* 026965F8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t20);
|
|
/* 026965FC */ cpu->f[0] = cpu->f[8] + cpu->f[10];
|
|
/* 02696600 */ _t21 = cpu->r[1] + 0x00000030u;
|
|
/* 02696600 */ cpu->r[9] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02696604 */ _t22 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02696604 */ rbrew_write32(cpu->mem, _t22, cpu->r[10]);
|
|
/* 02696608 */ _t23 = cpu->r[1] + 0x00000064u;
|
|
/* 02696608 */ rbrew_write32(cpu->mem, _t23, cpu->r[5]);
|
|
/* 0269660C */ /* nop */
|
|
/* 02696610 */ _t24 = cpu->r[1] + 0x00000018u;
|
|
/* 02696610 */ rbrew_write32(cpu->mem, _t24, cpu->r[9]);
|
|
/* 02696614 */ /* nop */
|
|
/* 02696618 */ _t25 = cpu->r[1] + 0x00000038u;
|
|
/* 02696618 */ rbrew_write_f32(cpu->mem, _t25, cpu->f[0]);
|
|
/* 0269661C */ _t26 = cpu->r[1] + 0x00000038u;
|
|
/* 0269661C */ cpu->r[0] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02696620 */ _t27 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02696620 */ rbrew_write32(cpu->mem, _t27, cpu->r[7]);
|
|
/* 02696624 */ _t28 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02696624 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 02696628 */ _t29 = cpu->r[1] + 0x00000020u;
|
|
/* 02696628 */ rbrew_write32(cpu->mem, _t29, cpu->r[0]);
|
|
/* 0269662C */ /* nop */
|
|
/* 02696630 */ _t30 = cpu->r[1] + 0x00000020u;
|
|
/* 02696630 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 02696634 */ /* nop */
|
|
/* 02696638 */ _t31 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02696638 */ cpu->r[10] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0269663C */ cpu->f[12] = cpu->f[0] - cpu->f[7];
|
|
/* 02696640 */ _t32 = cpu->r[1] + 0x00000040u;
|
|
/* 02696640 */ cpu->r[11] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02696644 */ _t33 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02696644 */ rbrew_write32(cpu->mem, _t33, cpu->r[10]);
|
|
/* 02696648 */ _t34 = cpu->r[1] + 0x00000044u;
|
|
/* 02696648 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[12]);
|
|
/* 0269664C */ _t35 = cpu->r[1] + 0x00000044u;
|
|
/* 0269664C */ cpu->r[12] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02696650 */ _t36 = cpu->r[1] + 0x00000010u;
|
|
/* 02696650 */ rbrew_write32(cpu->mem, _t36, cpu->r[11]);
|
|
/* 02696654 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02696658 */ _t37 = cpu->r[1] + 0x00000014u;
|
|
/* 02696658 */ rbrew_write32(cpu->mem, _t37, cpu->r[12]);
|
|
/* 0269665C */ Gambit_fn_02C69350(cpu);
|
|
/* 02696660 */ cpu->r[9] = 0x100E0000u;
|
|
/* 02696664 */ _t38 = cpu->r[9] + 0x00003C38u;
|
|
/* 02696664 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 02696668 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[10]);
|
|
/* 0269666C */ _t39 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269666C */ _t40 = _t39 & 0x00000001u;
|
|
/* 0269666C */ if (_t40) goto L_02696670; else goto L_0269667C;
|
|
L_02696670: ; // 0x2696670
|
|
/* 02696670 */ cpu->r[0] = 0x00000000u;
|
|
/* 02696674 */ _t41 = cpu->r[31] + 0x0000004Cu;
|
|
/* 02696674 */ rbrew_write8(cpu->mem, _t41, (uint8_t)cpu->r[0]);
|
|
/* 02696678 */ goto L_02696768;
|
|
L_0269667C: ; // 0x269667c
|
|
/* 0269667C */ _t42 = cpu->r[1] + 0x00000010u;
|
|
/* 0269667C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 02696680 */ cpu->f[7] = cpu->f[0] * cpu->f[0];
|
|
/* 02696684 */ _t43 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02696684 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 02696688 */ cpu->f[9] = fma(cpu->f[8], cpu->f[8], cpu->f[7]);
|
|
/* 0269668C */ _t44 = cpu->r[1] + 0x00000014u;
|
|
/* 0269668C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 02696690 */ cpu->r[7] = 0x100E0000u;
|
|
/* 02696694 */ cpu->f[10] = fma(cpu->f[7], cpu->f[7], cpu->f[9]);
|
|
/* 02696698 */ _t45 = cpu->r[7] + 0x00003C28u;
|
|
/* 02696698 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t45);
|
|
/* 0269669C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[0]);
|
|
/* 026966A0 */ _t46 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 026966A0 */ _t47 = _t46 & 0x00000001u;
|
|
/* 026966A0 */ if (_t47) goto L_026966A4; else goto L_026966E0;
|
|
L_026966A4: ; // 0x26966a4
|
|
/* 026966A4 */ cpu->r[5] = 0x100E0000u;
|
|
/* 026966A8 */ cpu->r[12] = 0x100E0000u;
|
|
/* 026966AC */ _t48 = cpu->r[5] + 0x00003C3Cu;
|
|
/* 026966AC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 026966B0 */ _t49 = cpu->r[12] + 0x00003C40u;
|
|
/* 026966B0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 026966B4 */ _ft50 = sqrt(cpu->f[10]);
|
|
/* 026966B4 */ _ft51 = (double)(int32_t)0x00000001u;
|
|
/* 026966B4 */ cpu->f[9] = _ft51 / _ft50;
|
|
/* 026966B8 */ cpu->f[11] = cpu->f[9] * cpu->f[9];
|
|
/* 026966BC */ cpu->f[7] = cpu->f[9] * cpu->f[12];
|
|
/* 026966C0 */ cpu->f[11] = -fma(cpu->f[11], cpu->f[10], -(cpu->f[13]));
|
|
/* 026966C4 */ cpu->f[9] = cpu->f[11] * cpu->f[7];
|
|
/* 026966C8 */ _t52 = cpu->r[1] + 0x00000014u;
|
|
/* 026966C8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 026966CC */ /* nop */
|
|
/* 026966D0 */ cpu->f[13] = cpu->f[13] * cpu->f[9];
|
|
/* 026966D4 */ /* nop */
|
|
/* 026966D8 */ _t53 = cpu->r[1] + 0x00000014u;
|
|
/* 026966D8 */ rbrew_write_f32(cpu->mem, _t53, cpu->f[13]);
|
|
/* 026966DC */ /* nop */
|
|
L_026966E0: ; // 0x26966e0
|
|
/* 026966E0 */ cpu->r[11] = 0x101E0000u;
|
|
/* 026966E4 */ cpu->r[10] = 0x100E0000u;
|
|
/* 026966E8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[0]);
|
|
/* 026966EC */ _t54 = cpu->r[11] + 0xFFFF958Cu;
|
|
/* 026966EC */ cpu->f[2] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 026966F0 */ cpu->r[7] = 0x101C0000u;
|
|
/* 026966F4 */ _t55 = cpu->r[10] + 0x00003C44u;
|
|
/* 026966F4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 026966F8 */ _t56 = cpu->r[7] + 0x00001EF8u;
|
|
/* 026966F8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t56);
|
|
/* 026966FC */ _t57 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 026966FC */ _t58 = _t57 & 0x00000001u;
|
|
/* 026966FC */ if (_t58) goto L_02696734; else goto L_02696700;
|
|
L_02696700: ; // 0x2696700
|
|
/* 02696700 */ _t59 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02696700 */ cpu->r[9] = rbrew_read32(cpu->mem, _t59);
|
|
/* 02696704 */ cpu->r[5] = 0x00000000u;
|
|
/* 02696708 */ cpu->r[0] = cpu->r[1] + 0x00000048u;
|
|
/* 0269670C */ cpu->f[1] = cpu->f[11];
|
|
/* 02696710 */ cpu->r[7] = cpu->r[5];
|
|
/* 02696714 */ cpu->r[6] = cpu->r[5];
|
|
/* 02696718 */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 0269671C */ cpu->r[10] = cpu->r[7];
|
|
/* 02696720 */ cpu->r[8] = 0x000001FFu;
|
|
/* 02696724 */ _t60 = cpu->r[1] + 0x00000008u;
|
|
/* 02696724 */ rbrew_write32(cpu->mem, _t60, cpu->r[0]);
|
|
/* 02696728 */ Gambit_fn_0204A4DC(cpu);
|
|
/* 0269672C */ cpu->r[0] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02696730 */ goto L_02696764;
|
|
L_02696734: ; // 0x2696734
|
|
/* 02696734 */ _t61 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02696734 */ cpu->r[8] = rbrew_read32(cpu->mem, _t61);
|
|
/* 02696738 */ cpu->f[3] = cpu->f[2];
|
|
/* 0269673C */ cpu->r[9] = 0x100E0000u;
|
|
/* 02696740 */ cpu->r[6] = 0x00000000u;
|
|
/* 02696744 */ cpu->f[2] = cpu->f[11];
|
|
/* 02696748 */ _t62 = cpu->r[9] + 0x00003C2Cu;
|
|
/* 02696748 */ cpu->f[4] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 0269674C */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 02696750 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02696754 */ cpu->r[7] = 0x000001FFu;
|
|
/* 02696758 */ cpu->r[9] = cpu->r[1] + 0x00000048u;
|
|
/* 0269675C */ Gambit_fn_0204A864(cpu);
|
|
/* 02696760 */ cpu->r[0] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
L_02696764: ; // 0x2696764
|
|
/* 02696764 */ _t63 = cpu->r[31] + 0x0000004Cu;
|
|
/* 02696764 */ rbrew_write8(cpu->mem, _t63, (uint8_t)cpu->r[0]);
|
|
L_02696768: ; // 0x2696768
|
|
/* 02696768 */ _t64 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02696768 */ cpu->r[0] = rbrew_read32(cpu->mem, _t64);
|
|
/* 0269676C */ _t65 = cpu->r[1] + 0x00000070u;
|
|
/* 0269676C */ cpu->r[30] = rbrew_read32(cpu->mem, _t65);
|
|
/* 02696770 */ cpu->lr = cpu->r[0];
|
|
/* 02696774 */ _t66 = cpu->r[1] + 0x00000074u;
|
|
/* 02696774 */ cpu->r[31] = rbrew_read32(cpu->mem, _t66);
|
|
/* 02696778 */ cpu->r[1] = cpu->r[1] + 0x00000078u;
|
|
/* 0269677C */ return;
|
|
}
|
|
|
|
// fn_02696780 @ 0x2696780
|
|
void Gambit_fn_02696780(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_02696780: ; // 0x2696780
|
|
/* 02696780 */ cpu->r[0] = cpu->lr;
|
|
/* 02696784 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02696784 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02696784 */ cpu->r[1] = _t0;
|
|
/* 02696788 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02696788 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0269678C */ cpu->r[31] = cpu->r[4];
|
|
/* 02696790 */ cpu->r[4] = cpu->r[31] + 0x0000000Cu;
|
|
/* 02696794 */ cpu->r[3] = cpu->r[3] + 0x00000014u;
|
|
/* 02696798 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02696798 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0269679C */ Gambit_fn_02699258(cpu);
|
|
/* 026967A0 */ cpu->r[12] = 0x100E0000u;
|
|
/* 026967A4 */ _t3 = cpu->r[12] + 0x00003C28u;
|
|
/* 026967A4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 026967A8 */ /* nop */
|
|
/* 026967AC */ _t4 = cpu->r[31] + 0x00000048u;
|
|
/* 026967AC */ rbrew_write_f32(cpu->mem, _t4, cpu->f[0]);
|
|
/* 026967B0 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 026967B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 026967B4 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026967B4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 026967B8 */ cpu->lr = cpu->r[0];
|
|
/* 026967BC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 026967C0 */ return;
|
|
}
|
|
|
|
// fn_02696784 @ 0x2696784
|
|
void Gambit_fn_02696784(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_02696784: ; // 0x2696784
|
|
/* 02696784 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02696784 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02696784 */ cpu->r[1] = _t0;
|
|
/* 02696788 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02696788 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0269678C */ cpu->r[31] = cpu->r[4];
|
|
/* 02696790 */ cpu->r[4] = cpu->r[31] + 0x0000000Cu;
|
|
/* 02696794 */ cpu->r[3] = cpu->r[3] + 0x00000014u;
|
|
/* 02696798 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02696798 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0269679C */ Gambit_fn_02699258(cpu);
|
|
/* 026967A0 */ cpu->r[12] = 0x100E0000u;
|
|
/* 026967A4 */ _t3 = cpu->r[12] + 0x00003C28u;
|
|
/* 026967A4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 026967A8 */ /* nop */
|
|
/* 026967AC */ _t4 = cpu->r[31] + 0x00000048u;
|
|
/* 026967AC */ rbrew_write_f32(cpu->mem, _t4, cpu->f[0]);
|
|
/* 026967B0 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 026967B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 026967B4 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026967B4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 026967B8 */ cpu->lr = cpu->r[0];
|
|
/* 026967BC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 026967C0 */ return;
|
|
}
|
|
|
|
// fn_026967C4 @ 0x26967c4
|
|
void Gambit_fn_026967C4(CPUState* cpu) {
|
|
uint32_t _t0, _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_026967C4: ; // 0x26967c4
|
|
/* 026967C4 */ cpu->r[0] = cpu->lr;
|
|
/* 026967C8 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 026967C8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 026967C8 */ cpu->r[1] = _t0;
|
|
/* 026967CC */ cpu->r[9] = 0x101F0000u;
|
|
/* 026967D0 */ cpu->r[10] = 0x100E0000u;
|
|
/* 026967D4 */ cpu->r[9] = cpu->r[9] + 0x00006350u;
|
|
/* 026967D8 */ _t1 = cpu->r[10] + 0x00003C34u;
|
|
/* 026967D8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 026967DC */ _t2 = cpu->r[1] + 0x0000003Cu;
|
|
/* 026967DC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 026967E0 */ _t3 = cpu->r[1] + 0x00000044u;
|
|
/* 026967E0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 026967E4 */ /* nop */
|
|
/* 026967E8 */ _t4 = cpu->r[3] + 0x00000008u;
|
|
/* 026967E8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 026967EC */ /* nop */
|
|
/* 026967F0 */ _t5 = cpu->r[9] + 0x00000008u;
|
|
/* 026967F0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 026967F4 */ /* nop */
|
|
/* 026967F8 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 026967F8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t6);
|
|
/* 026967FC */ cpu->f[13] = cpu->f[12] * cpu->f[0];
|
|
/* 02696800 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02696800 */ cpu->r[7] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02696804 */ _t8 = cpu->r[1] + 0x00000010u;
|
|
/* 02696804 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[13]);
|
|
/* 02696808 */ _t9 = cpu->r[1] + 0x00000010u;
|
|
/* 02696808 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269680C */ _t10 = cpu->r[1] + 0x00000020u;
|
|
/* 0269680C */ rbrew_write32(cpu->mem, _t10, cpu->r[6]);
|
|
/* 02696810 */ _t11 = cpu->r[1] + 0x00000024u;
|
|
/* 02696810 */ rbrew_write32(cpu->mem, _t11, cpu->r[7]);
|
|
/* 02696814 */ /* nop */
|
|
/* 02696818 */ _t12 = cpu->r[1] + 0x00000028u;
|
|
/* 02696818 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 0269681C */ /* nop */
|
|
/* 02696820 */ /* nop */
|
|
/* 02696824 */ _t13 = cpu->r[1] + 0x00000028u;
|
|
/* 02696824 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 02696828 */ /* nop */
|
|
/* 0269682C */ _t14 = cpu->r[12] + 0x000000BCu;
|
|
/* 0269682C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 02696830 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 02696830 */ cpu->r[7] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02696834 */ cpu->f[0] = cpu->f[13] + cpu->f[0];
|
|
/* 02696838 */ _t16 = cpu->r[1] + 0x00000018u;
|
|
/* 02696838 */ cpu->r[9] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0269683C */ _t17 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0269683C */ rbrew_write32(cpu->mem, _t17, cpu->r[7]);
|
|
/* 02696840 */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 02696844 */ _t18 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02696844 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[0]);
|
|
/* 02696848 */ _t19 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02696848 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0269684C */ cpu->r[31] = cpu->r[4];
|
|
/* 02696850 */ _t20 = cpu->r[1] + 0x00000030u;
|
|
/* 02696850 */ rbrew_write32(cpu->mem, _t20, cpu->r[9]);
|
|
/* 02696854 */ cpu->r[4] = cpu->r[31] + 0x0000000Cu;
|
|
/* 02696858 */ _t21 = cpu->r[1] + 0x00000034u;
|
|
/* 02696858 */ rbrew_write32(cpu->mem, _t21, cpu->r[0]);
|
|
/* 0269685C */ Gambit_fn_02C693A4(cpu);
|
|
/* 02696860 */ _t22 = cpu->r[31] + 0x00000054u;
|
|
/* 02696860 */ rbrew_write_f32(cpu->mem, _t22, cpu->f[1]);
|
|
/* 02696864 */ _t23 = cpu->r[1] + 0x00000044u;
|
|
/* 02696864 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02696868 */ cpu->lr = cpu->r[0];
|
|
/* 0269686C */ _t24 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0269686C */ cpu->r[31] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02696870 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 02696874 */ return;
|
|
}
|
|
|
|
// fn_026967C8 @ 0x26967c8
|
|
void Gambit_fn_026967C8(CPUState* cpu) {
|
|
uint32_t _t0, _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_026967C8: ; // 0x26967c8
|
|
/* 026967C8 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 026967C8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 026967C8 */ cpu->r[1] = _t0;
|
|
/* 026967CC */ cpu->r[9] = 0x101F0000u;
|
|
/* 026967D0 */ cpu->r[10] = 0x100E0000u;
|
|
/* 026967D4 */ cpu->r[9] = cpu->r[9] + 0x00006350u;
|
|
/* 026967D8 */ _t1 = cpu->r[10] + 0x00003C34u;
|
|
/* 026967D8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 026967DC */ _t2 = cpu->r[1] + 0x0000003Cu;
|
|
/* 026967DC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 026967E0 */ _t3 = cpu->r[1] + 0x00000044u;
|
|
/* 026967E0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 026967E4 */ /* nop */
|
|
/* 026967E8 */ _t4 = cpu->r[3] + 0x00000008u;
|
|
/* 026967E8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 026967EC */ /* nop */
|
|
/* 026967F0 */ _t5 = cpu->r[9] + 0x00000008u;
|
|
/* 026967F0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 026967F4 */ /* nop */
|
|
/* 026967F8 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 026967F8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t6);
|
|
/* 026967FC */ cpu->f[13] = cpu->f[12] * cpu->f[0];
|
|
/* 02696800 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02696800 */ cpu->r[7] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02696804 */ _t8 = cpu->r[1] + 0x00000010u;
|
|
/* 02696804 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[13]);
|
|
/* 02696808 */ _t9 = cpu->r[1] + 0x00000010u;
|
|
/* 02696808 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269680C */ _t10 = cpu->r[1] + 0x00000020u;
|
|
/* 0269680C */ rbrew_write32(cpu->mem, _t10, cpu->r[6]);
|
|
/* 02696810 */ _t11 = cpu->r[1] + 0x00000024u;
|
|
/* 02696810 */ rbrew_write32(cpu->mem, _t11, cpu->r[7]);
|
|
/* 02696814 */ /* nop */
|
|
/* 02696818 */ _t12 = cpu->r[1] + 0x00000028u;
|
|
/* 02696818 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 0269681C */ /* nop */
|
|
/* 02696820 */ /* nop */
|
|
/* 02696824 */ _t13 = cpu->r[1] + 0x00000028u;
|
|
/* 02696824 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 02696828 */ /* nop */
|
|
/* 0269682C */ _t14 = cpu->r[12] + 0x000000BCu;
|
|
/* 0269682C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 02696830 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 02696830 */ cpu->r[7] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02696834 */ cpu->f[0] = cpu->f[13] + cpu->f[0];
|
|
/* 02696838 */ _t16 = cpu->r[1] + 0x00000018u;
|
|
/* 02696838 */ cpu->r[9] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0269683C */ _t17 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0269683C */ rbrew_write32(cpu->mem, _t17, cpu->r[7]);
|
|
/* 02696840 */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 02696844 */ _t18 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02696844 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[0]);
|
|
/* 02696848 */ _t19 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02696848 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0269684C */ cpu->r[31] = cpu->r[4];
|
|
/* 02696850 */ _t20 = cpu->r[1] + 0x00000030u;
|
|
/* 02696850 */ rbrew_write32(cpu->mem, _t20, cpu->r[9]);
|
|
/* 02696854 */ cpu->r[4] = cpu->r[31] + 0x0000000Cu;
|
|
/* 02696858 */ _t21 = cpu->r[1] + 0x00000034u;
|
|
/* 02696858 */ rbrew_write32(cpu->mem, _t21, cpu->r[0]);
|
|
/* 0269685C */ Gambit_fn_02C693A4(cpu);
|
|
/* 02696860 */ _t22 = cpu->r[31] + 0x00000054u;
|
|
/* 02696860 */ rbrew_write_f32(cpu->mem, _t22, cpu->f[1]);
|
|
/* 02696864 */ _t23 = cpu->r[1] + 0x00000044u;
|
|
/* 02696864 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02696868 */ cpu->lr = cpu->r[0];
|
|
/* 0269686C */ _t24 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0269686C */ cpu->r[31] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02696870 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 02696874 */ return;
|
|
}
|
|
|
|
// fn_02696878 @ 0x2696878
|
|
void Gambit_fn_02696878(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t25, _t26;
|
|
double _ft23, _ft24;
|
|
|
|
L_02696878: ; // 0x2696878
|
|
/* 02696878 */ _t0 = cpu->r[4] + 0x00000034u;
|
|
/* 02696878 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 0269687C */ _t1 = cpu->r[4] + 0x00000030u;
|
|
/* 0269687C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 02696880 */ cpu->f[9] = cpu->f[8] * cpu->f[8];
|
|
/* 02696884 */ cpu->f[10] = fma(cpu->f[12], cpu->f[12], cpu->f[9]);
|
|
/* 02696888 */ _t2 = cpu->r[4] + 0x00000038u;
|
|
/* 02696888 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 0269688C */ cpu->r[12] = 0x100E0000u;
|
|
/* 02696890 */ cpu->f[8] = fma(cpu->f[7], cpu->f[7], cpu->f[10]);
|
|
/* 02696894 */ _t3 = cpu->r[12] + 0x00003C38u;
|
|
/* 02696894 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 02696898 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[13]);
|
|
/* 0269689C */ _t4 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269689C */ _t5 = _t4 & 0x00000001u;
|
|
/* 0269689C */ if (_t5) goto L_026968A0; else goto L_026968C0;
|
|
L_026968A0: ; // 0x26968a0
|
|
/* 026968A0 */ cpu->r[12] = 0x101F0000u;
|
|
/* 026968A4 */ _t6 = cpu->r[12] + 0x00006338u;
|
|
/* 026968A4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 026968A4 */ cpu->r[12] = _t6;
|
|
/* 026968A8 */ _t7 = cpu->r[4] + 0x0000003Cu;
|
|
/* 026968A8 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[13]);
|
|
/* 026968AC */ _t8 = cpu->r[12] + 0x00000004u;
|
|
/* 026968AC */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 026968B0 */ _t9 = cpu->r[4] + 0x00000040u;
|
|
/* 026968B0 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[7]);
|
|
/* 026968B4 */ _t10 = cpu->r[12] + 0x00000008u;
|
|
/* 026968B4 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 026968B8 */ _t11 = cpu->r[4] + 0x00000044u;
|
|
/* 026968B8 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[9]);
|
|
/* 026968BC */ return;
|
|
L_026968C0: ; // 0x26968c0
|
|
/* 026968C0 */ _t12 = cpu->r[4] + 0x00000034u;
|
|
/* 026968C0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 026968C4 */ _t13 = cpu->r[4] + 0x00000038u;
|
|
/* 026968C4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 026968C8 */ cpu->f[0] = cpu->f[13] * cpu->f[13];
|
|
/* 026968CC */ _t14 = cpu->r[4] + 0x00000044u;
|
|
/* 026968CC */ rbrew_write_f32(cpu->mem, _t14, cpu->f[11]);
|
|
/* 026968D0 */ cpu->r[12] = 0x100E0000u;
|
|
/* 026968D4 */ _t15 = cpu->r[4] + 0x0000003Cu;
|
|
/* 026968D4 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[12]);
|
|
/* 026968D8 */ cpu->f[7] = fma(cpu->f[12], cpu->f[12], cpu->f[0]);
|
|
/* 026968DC */ _t16 = cpu->r[12] + 0x00003C28u;
|
|
/* 026968DC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 026968E0 */ cpu->f[9] = fma(cpu->f[11], cpu->f[11], cpu->f[7]);
|
|
/* 026968E4 */ _t17 = cpu->r[4] + 0x00000040u;
|
|
/* 026968E4 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[13]);
|
|
/* 026968E8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[0]);
|
|
/* 026968EC */ _t18 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 026968EC */ _t19 = _t18 & 0x00000001u;
|
|
/* 026968EC */ _t20 = _t19 ^ 0x00000001u;
|
|
/* 026968EC */ if (_t20) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 026968EC */ goto L_026968F0;
|
|
L_026968F0: ; // 0x26968f0
|
|
/* 026968F0 */ cpu->r[12] = 0x100E0000u;
|
|
/* 026968F4 */ _t21 = cpu->r[12] + 0x00003C3Cu;
|
|
/* 026968F4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 026968F8 */ cpu->r[12] = 0x100E0000u;
|
|
/* 026968FC */ _t22 = cpu->r[12] + 0x00003C40u;
|
|
/* 026968FC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 02696900 */ _ft23 = sqrt(cpu->f[9]);
|
|
/* 02696900 */ _ft24 = (double)(int32_t)0x00000001u;
|
|
/* 02696900 */ cpu->f[0] = _ft24 / _ft23;
|
|
/* 02696904 */ cpu->f[8] = cpu->f[0] * cpu->f[0];
|
|
/* 02696908 */ cpu->f[10] = cpu->f[0] * cpu->f[11];
|
|
/* 0269690C */ cpu->f[8] = -fma(cpu->f[8], cpu->f[9], -(cpu->f[12]));
|
|
/* 02696910 */ cpu->f[0] = cpu->f[8] * cpu->f[10];
|
|
/* 02696914 */ _t25 = cpu->r[4] + 0x00000044u;
|
|
/* 02696914 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 02696918 */ /* nop */
|
|
/* 0269691C */ cpu->f[10] = cpu->f[10] * cpu->f[0];
|
|
/* 02696920 */ /* nop */
|
|
/* 02696924 */ _t26 = cpu->r[4] + 0x00000044u;
|
|
/* 02696924 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[10]);
|
|
/* 02696928 */ /* nop */
|
|
/* 0269692C */ return;
|
|
}
|
|
|
|
// fn_02696930 @ 0x2696930
|
|
void Gambit_fn_02696930(CPUState* cpu) {
|
|
uint32_t _t0, _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_02696930: ; // 0x2696930
|
|
/* 02696930 */ cpu->r[0] = cpu->lr;
|
|
/* 02696934 */ _t0 = cpu->r[1] + 0xFFFFFFA0u;
|
|
/* 02696934 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02696934 */ cpu->r[1] = _t0;
|
|
/* 02696938 */ _t1 = cpu->r[1] + 0x00000050u;
|
|
/* 02696938 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0269693C */ /* nop */
|
|
/* 02696940 */ _t2 = cpu->r[1] + 0x00000040u;
|
|
/* 02696940 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[30]);
|
|
/* 02696944 */ /* nop */
|
|
/* 02696948 */ _t3 = cpu->r[1] + 0x00000058u;
|
|
/* 02696948 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 0269694C */ _t4 = cpu->r[1] + 0x00000048u;
|
|
/* 0269694C */ rbrew_write_f32(cpu->mem, _t4, cpu->f[30]);
|
|
/* 02696950 */ _t5 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02696950 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02696954 */ _t6 = cpu->r[1] + 0x00000064u;
|
|
/* 02696954 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02696958 */ cpu->r[31] = cpu->r[4];
|
|
/* 0269695C */ _t7 = cpu->r[1] + 0x00000038u;
|
|
/* 0269695C */ rbrew_write32(cpu->mem, _t7, cpu->r[30]);
|
|
/* 02696960 */ _t8 = cpu->r[31] + 0x0000004Cu;
|
|
/* 02696960 */ cpu->r[9] = rbrew_read8(cpu->mem, _t8);
|
|
/* 02696964 */ cpu->r[30] = cpu->r[3];
|
|
/* 02696968 */ cpu->r[8] = 0x100E0000u;
|
|
/* 0269696C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02696970 */ _t9 = cpu->r[8] + 0x00003C28u;
|
|
/* 02696970 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 02696974 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02696974 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02696974 */ if (_t11) goto L_026969F0; else goto L_02696978;
|
|
L_02696978: ; // 0x2696978
|
|
/* 02696978 */ cpu->r[12] = 0x100E0000u;
|
|
/* 0269697C */ _t12 = cpu->r[31] + 0x00000054u;
|
|
/* 0269697C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 02696980 */ _t13 = cpu->r[12] + 0x00003C48u;
|
|
/* 02696980 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 02696984 */ cpu->f[11] = cpu->f[12] - cpu->f[13];
|
|
/* 02696988 */ /* nop */
|
|
/* 0269698C */ cpu->r[8] = 0x100E0000u;
|
|
/* 02696990 */ cpu->f[10] = cpu->f[0] / cpu->f[12];
|
|
/* 02696994 */ _t14 = cpu->r[8] + 0x00003C4Cu;
|
|
/* 02696994 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 02696998 */ cpu->f[1] = cpu->f[10] * cpu->f[0];
|
|
/* 0269699C */ Gambit_fn_02C886F8(cpu);
|
|
/* 026969A0 */ _t15 = cpu->r[30] + 0x00000008u;
|
|
/* 026969A0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t15);
|
|
/* 026969A4 */ _t16 = cpu->r[11] + 0x00000748u;
|
|
/* 026969A4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 026969A8 */ _t17 = cpu->r[11] + 0x0000031Cu;
|
|
/* 026969A8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 026969AC */ cpu->r[12] = 0x100E0000u;
|
|
/* 026969B0 */ cpu->f[12] = fma(cpu->f[1], cpu->f[11], cpu->f[31]);
|
|
/* 026969B4 */ _t18 = cpu->r[12] + 0x00003C2Cu;
|
|
/* 026969B4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 026969B8 */ cpu->f[0] = cpu->f[12] - cpu->f[13];
|
|
/* 026969BC */ /* nop */
|
|
/* 026969C0 */ _t19 = cpu->r[31] + 0x00000058u;
|
|
/* 026969C0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 026969C4 */ cpu->f[11] = cpu->f[10] - cpu->f[0];
|
|
/* 026969C8 */ _t20 = cpu->r[11] + 0x000002BCu;
|
|
/* 026969C8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 026969CC */ cpu->f[11] = fma(cpu->f[11], cpu->f[10], cpu->f[0]);
|
|
/* 026969D0 */ cpu->f[12] = cpu->f[13] - cpu->f[11];
|
|
/* 026969D4 */ _t21 = cpu->r[31] + 0x00000058u;
|
|
/* 026969D4 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[11]);
|
|
/* 026969D8 */ _t22 = cpu->r[31] + 0x00000014u;
|
|
/* 026969D8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 026969DC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[31]);
|
|
/* 026969E0 */ _t23 = cpu->r[31] + 0x00000020u;
|
|
/* 026969E0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 026969E4 */ /* nop */
|
|
/* 026969E8 */ _t24 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026969E8 */ _t25 = _t24 & 0x00000001u;
|
|
/* 026969E8 */ if (_t25) goto L_02696A68; else goto L_026969EC;
|
|
L_026969EC: ; // 0x26969ec
|
|
/* 026969EC */ goto L_02696AE0;
|
|
L_026969F0: ; // 0x26969f0
|
|
/* 026969F0 */ cpu->r[12] = 0x100E0000u;
|
|
/* 026969F4 */ _t26 = cpu->r[31] + 0x00000054u;
|
|
/* 026969F4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 026969F8 */ _t27 = cpu->r[12] + 0x00003C48u;
|
|
/* 026969F8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 026969FC */ cpu->f[11] = cpu->f[12] - cpu->f[13];
|
|
/* 02696A00 */ /* nop */
|
|
/* 02696A04 */ cpu->r[8] = 0x100E0000u;
|
|
/* 02696A08 */ cpu->f[10] = cpu->f[0] / cpu->f[12];
|
|
/* 02696A0C */ _t28 = cpu->r[8] + 0x00003C4Cu;
|
|
/* 02696A0C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 02696A10 */ cpu->f[1] = cpu->f[10] * cpu->f[0];
|
|
/* 02696A14 */ _t29 = cpu->r[31] + 0x00000048u;
|
|
/* 02696A14 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 02696A18 */ Gambit_fn_02C886F8(cpu);
|
|
/* 02696A1C */ _t30 = cpu->r[30] + 0x00000008u;
|
|
/* 02696A1C */ cpu->r[11] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02696A20 */ _t31 = cpu->r[11] + 0x00000748u;
|
|
/* 02696A20 */ cpu->r[11] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02696A24 */ _t32 = cpu->r[11] + 0x0000031Cu;
|
|
/* 02696A24 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 02696A28 */ cpu->r[12] = 0x100E0000u;
|
|
/* 02696A2C */ cpu->f[12] = fma(cpu->f[1], cpu->f[11], cpu->f[30]);
|
|
/* 02696A30 */ _t33 = cpu->r[12] + 0x00003C2Cu;
|
|
/* 02696A30 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 02696A34 */ cpu->f[0] = cpu->f[12] - cpu->f[13];
|
|
/* 02696A38 */ /* nop */
|
|
/* 02696A3C */ _t34 = cpu->r[31] + 0x00000058u;
|
|
/* 02696A3C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 02696A40 */ cpu->f[11] = cpu->f[10] - cpu->f[0];
|
|
/* 02696A44 */ _t35 = cpu->r[11] + 0x000002BCu;
|
|
/* 02696A44 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 02696A48 */ cpu->f[11] = fma(cpu->f[11], cpu->f[10], cpu->f[0]);
|
|
/* 02696A4C */ cpu->f[12] = cpu->f[13] - cpu->f[11];
|
|
/* 02696A50 */ _t36 = cpu->r[31] + 0x00000058u;
|
|
/* 02696A50 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[11]);
|
|
/* 02696A54 */ _t37 = cpu->r[31] + 0x00000014u;
|
|
/* 02696A54 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 02696A58 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[31]);
|
|
/* 02696A5C */ _t38 = cpu->r[31] + 0x00000020u;
|
|
/* 02696A5C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 02696A60 */ /* nop */
|
|
/* 02696A64 */ _t39 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02696A64 */ _t40 = _t39 & 0x00000001u;
|
|
/* 02696A64 */ if (_t40) goto L_02696A68; else goto L_02696AE0;
|
|
L_02696A68: ; // 0x2696a68
|
|
/* 02696A68 */ cpu->f[0] = cpu->f[10] * cpu->f[31];
|
|
/* 02696A6C */ /* nop */
|
|
/* 02696A70 */ /* nop */
|
|
/* 02696A74 */ _t41 = cpu->r[1] + 0x00000010u;
|
|
/* 02696A74 */ rbrew_write_f32(cpu->mem, _t41, cpu->f[0]);
|
|
/* 02696A78 */ _t42 = cpu->r[1] + 0x00000010u;
|
|
/* 02696A78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02696A7C */ /* nop */
|
|
/* 02696A80 */ _t43 = cpu->r[1] + 0x00000008u;
|
|
/* 02696A80 */ cpu->r[10] = rbrew_read32(cpu->mem, _t43);
|
|
/* 02696A84 */ _t44 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02696A84 */ cpu->r[12] = rbrew_read32(cpu->mem, _t44);
|
|
/* 02696A88 */ _t45 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02696A88 */ rbrew_write32(cpu->mem, _t45, cpu->r[10]);
|
|
/* 02696A8C */ _t46 = cpu->r[1] + 0x00000030u;
|
|
/* 02696A8C */ rbrew_write32(cpu->mem, _t46, cpu->r[12]);
|
|
/* 02696A90 */ /* nop */
|
|
/* 02696A94 */ _t47 = cpu->r[1] + 0x00000034u;
|
|
/* 02696A94 */ rbrew_write32(cpu->mem, _t47, cpu->r[0]);
|
|
/* 02696A98 */ /* nop */
|
|
/* 02696A9C */ _t48 = cpu->r[1] + 0x00000034u;
|
|
/* 02696A9C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 02696AA0 */ /* nop */
|
|
/* 02696AA4 */ _t49 = cpu->r[1] + 0x00000014u;
|
|
/* 02696AA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t49);
|
|
/* 02696AA8 */ _t50 = cpu->r[1] + 0x00000018u;
|
|
/* 02696AA8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t50);
|
|
/* 02696AAC */ cpu->f[10] = cpu->f[11] + cpu->f[13];
|
|
/* 02696AB0 */ _t51 = cpu->r[1] + 0x00000020u;
|
|
/* 02696AB0 */ rbrew_write32(cpu->mem, _t51, cpu->r[0]);
|
|
/* 02696AB4 */ _t52 = cpu->r[1] + 0x00000020u;
|
|
/* 02696AB4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 02696AB8 */ _t53 = cpu->r[1] + 0x00000024u;
|
|
/* 02696AB8 */ rbrew_write32(cpu->mem, _t53, cpu->r[9]);
|
|
/* 02696ABC */ _t54 = cpu->r[1] + 0x00000024u;
|
|
/* 02696ABC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 02696AC0 */ _t55 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02696AC0 */ rbrew_write_f32(cpu->mem, _t55, cpu->f[10]);
|
|
/* 02696AC4 */ _t56 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02696AC4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t56);
|
|
/* 02696AC8 */ _t57 = cpu->r[31] + 0x00000024u;
|
|
/* 02696AC8 */ rbrew_write_f32(cpu->mem, _t57, cpu->f[11]);
|
|
/* 02696ACC */ _t58 = cpu->r[1] + 0x00000028u;
|
|
/* 02696ACC */ rbrew_write32(cpu->mem, _t58, cpu->r[0]);
|
|
/* 02696AD0 */ _t59 = cpu->r[1] + 0x00000028u;
|
|
/* 02696AD0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t59);
|
|
/* 02696AD4 */ _t60 = cpu->r[31] + 0x00000028u;
|
|
/* 02696AD4 */ rbrew_write_f32(cpu->mem, _t60, cpu->f[0]);
|
|
/* 02696AD8 */ _t61 = cpu->r[31] + 0x0000002Cu;
|
|
/* 02696AD8 */ rbrew_write_f32(cpu->mem, _t61, cpu->f[10]);
|
|
/* 02696ADC */ goto L_02696B60;
|
|
L_02696AE0: ; // 0x2696ae0
|
|
/* 02696AE0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[13]);
|
|
/* 02696AE4 */ _t62 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02696AE4 */ _t63 = _t62 & 0x00000001u;
|
|
/* 02696AE4 */ if (_t63) goto L_02696AE8; else goto L_02696AEC;
|
|
L_02696AE8: ; // 0x2696ae8
|
|
/* 02696AE8 */ cpu->f[12] = cpu->f[13];
|
|
L_02696AEC: ; // 0x2696aec
|
|
/* 02696AEC */ cpu->f[0] = cpu->f[10] * cpu->f[12];
|
|
/* 02696AF0 */ /* nop */
|
|
/* 02696AF4 */ /* nop */
|
|
/* 02696AF8 */ _t64 = cpu->r[1] + 0x00000010u;
|
|
/* 02696AF8 */ rbrew_write_f32(cpu->mem, _t64, cpu->f[0]);
|
|
/* 02696AFC */ _t65 = cpu->r[1] + 0x00000010u;
|
|
/* 02696AFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t65);
|
|
/* 02696B00 */ /* nop */
|
|
/* 02696B04 */ _t66 = cpu->r[1] + 0x00000008u;
|
|
/* 02696B04 */ cpu->r[10] = rbrew_read32(cpu->mem, _t66);
|
|
/* 02696B08 */ _t67 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02696B08 */ cpu->r[12] = rbrew_read32(cpu->mem, _t67);
|
|
/* 02696B0C */ _t68 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02696B0C */ rbrew_write32(cpu->mem, _t68, cpu->r[10]);
|
|
/* 02696B10 */ _t69 = cpu->r[1] + 0x00000030u;
|
|
/* 02696B10 */ rbrew_write32(cpu->mem, _t69, cpu->r[12]);
|
|
/* 02696B14 */ /* nop */
|
|
/* 02696B18 */ _t70 = cpu->r[1] + 0x00000034u;
|
|
/* 02696B18 */ rbrew_write32(cpu->mem, _t70, cpu->r[0]);
|
|
/* 02696B1C */ /* nop */
|
|
/* 02696B20 */ _t71 = cpu->r[1] + 0x00000034u;
|
|
/* 02696B20 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t71);
|
|
/* 02696B24 */ /* nop */
|
|
/* 02696B28 */ _t72 = cpu->r[1] + 0x00000014u;
|
|
/* 02696B28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t72);
|
|
/* 02696B2C */ _t73 = cpu->r[1] + 0x00000018u;
|
|
/* 02696B2C */ cpu->r[9] = rbrew_read32(cpu->mem, _t73);
|
|
/* 02696B30 */ cpu->f[10] = cpu->f[11] + cpu->f[13];
|
|
/* 02696B34 */ _t74 = cpu->r[1] + 0x00000020u;
|
|
/* 02696B34 */ rbrew_write32(cpu->mem, _t74, cpu->r[0]);
|
|
/* 02696B38 */ _t75 = cpu->r[1] + 0x00000020u;
|
|
/* 02696B38 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t75);
|
|
/* 02696B3C */ _t76 = cpu->r[1] + 0x00000024u;
|
|
/* 02696B3C */ rbrew_write32(cpu->mem, _t76, cpu->r[9]);
|
|
/* 02696B40 */ _t77 = cpu->r[1] + 0x00000024u;
|
|
/* 02696B40 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t77);
|
|
/* 02696B44 */ _t78 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02696B44 */ rbrew_write_f32(cpu->mem, _t78, cpu->f[10]);
|
|
/* 02696B48 */ _t79 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02696B48 */ cpu->r[0] = rbrew_read32(cpu->mem, _t79);
|
|
/* 02696B4C */ _t80 = cpu->r[31] + 0x00000024u;
|
|
/* 02696B4C */ rbrew_write_f32(cpu->mem, _t80, cpu->f[11]);
|
|
/* 02696B50 */ _t81 = cpu->r[1] + 0x00000028u;
|
|
/* 02696B50 */ rbrew_write32(cpu->mem, _t81, cpu->r[0]);
|
|
/* 02696B54 */ _t82 = cpu->r[1] + 0x00000028u;
|
|
/* 02696B54 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t82);
|
|
/* 02696B58 */ _t83 = cpu->r[31] + 0x00000028u;
|
|
/* 02696B58 */ rbrew_write_f32(cpu->mem, _t83, cpu->f[0]);
|
|
/* 02696B5C */ _t84 = cpu->r[31] + 0x0000002Cu;
|
|
/* 02696B5C */ rbrew_write_f32(cpu->mem, _t84, cpu->f[10]);
|
|
L_02696B60: ; // 0x2696b60
|
|
/* 02696B60 */ _t85 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02696B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t85);
|
|
/* 02696B64 */ _t86 = cpu->r[1] + 0x00000058u;
|
|
/* 02696B64 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t86);
|
|
/* 02696B68 */ _t87 = cpu->r[1] + 0x00000048u;
|
|
/* 02696B68 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t87);
|
|
/* 02696B6C */ _t88 = cpu->r[1] + 0x00000050u;
|
|
/* 02696B6C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t88);
|
|
/* 02696B70 */ _t89 = cpu->r[1] + 0x00000040u;
|
|
/* 02696B70 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t89);
|
|
/* 02696B74 */ _t90 = cpu->r[1] + 0x00000038u;
|
|
/* 02696B74 */ cpu->r[30] = rbrew_read32(cpu->mem, _t90);
|
|
/* 02696B78 */ _t91 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02696B78 */ _t92 = _t91 & 0x00000001u;
|
|
/* 02696B78 */ if (_t92) goto L_02696B7C; // else: addr-0 trap, fall-through
|
|
L_02696B7C: ; // 0x2696b7c
|
|
/* 02696B7C */ _t93 = cpu->r[1] + 0x00000064u;
|
|
/* 02696B7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t93);
|
|
/* 02696B80 */ cpu->lr = cpu->r[0];
|
|
/* 02696B84 */ cpu->r[1] = cpu->r[1] + 0x00000060u;
|
|
/* 02696B88 */ return;
|
|
}
|
|
|
|
// fn_02696934 @ 0x2696934
|
|
void Gambit_fn_02696934(CPUState* cpu) {
|
|
uint32_t _t0, _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_02696934: ; // 0x2696934
|
|
/* 02696934 */ _t0 = cpu->r[1] + 0xFFFFFFA0u;
|
|
/* 02696934 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02696934 */ cpu->r[1] = _t0;
|
|
/* 02696938 */ _t1 = cpu->r[1] + 0x00000050u;
|
|
/* 02696938 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0269693C */ /* nop */
|
|
/* 02696940 */ _t2 = cpu->r[1] + 0x00000040u;
|
|
/* 02696940 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[30]);
|
|
/* 02696944 */ /* nop */
|
|
/* 02696948 */ _t3 = cpu->r[1] + 0x00000058u;
|
|
/* 02696948 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 0269694C */ _t4 = cpu->r[1] + 0x00000048u;
|
|
/* 0269694C */ rbrew_write_f32(cpu->mem, _t4, cpu->f[30]);
|
|
/* 02696950 */ _t5 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02696950 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02696954 */ _t6 = cpu->r[1] + 0x00000064u;
|
|
/* 02696954 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02696958 */ cpu->r[31] = cpu->r[4];
|
|
/* 0269695C */ _t7 = cpu->r[1] + 0x00000038u;
|
|
/* 0269695C */ rbrew_write32(cpu->mem, _t7, cpu->r[30]);
|
|
/* 02696960 */ _t8 = cpu->r[31] + 0x0000004Cu;
|
|
/* 02696960 */ cpu->r[9] = rbrew_read8(cpu->mem, _t8);
|
|
/* 02696964 */ cpu->r[30] = cpu->r[3];
|
|
/* 02696968 */ cpu->r[8] = 0x100E0000u;
|
|
/* 0269696C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02696970 */ _t9 = cpu->r[8] + 0x00003C28u;
|
|
/* 02696970 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 02696974 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02696974 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02696974 */ if (_t11) goto L_026969F0; else goto L_02696978;
|
|
L_02696978: ; // 0x2696978
|
|
/* 02696978 */ cpu->r[12] = 0x100E0000u;
|
|
/* 0269697C */ _t12 = cpu->r[31] + 0x00000054u;
|
|
/* 0269697C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 02696980 */ _t13 = cpu->r[12] + 0x00003C48u;
|
|
/* 02696980 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 02696984 */ cpu->f[11] = cpu->f[12] - cpu->f[13];
|
|
/* 02696988 */ /* nop */
|
|
/* 0269698C */ cpu->r[8] = 0x100E0000u;
|
|
/* 02696990 */ cpu->f[10] = cpu->f[0] / cpu->f[12];
|
|
/* 02696994 */ _t14 = cpu->r[8] + 0x00003C4Cu;
|
|
/* 02696994 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 02696998 */ cpu->f[1] = cpu->f[10] * cpu->f[0];
|
|
/* 0269699C */ Gambit_fn_02C886F8(cpu);
|
|
/* 026969A0 */ _t15 = cpu->r[30] + 0x00000008u;
|
|
/* 026969A0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t15);
|
|
/* 026969A4 */ _t16 = cpu->r[11] + 0x00000748u;
|
|
/* 026969A4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 026969A8 */ _t17 = cpu->r[11] + 0x0000031Cu;
|
|
/* 026969A8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 026969AC */ cpu->r[12] = 0x100E0000u;
|
|
/* 026969B0 */ cpu->f[12] = fma(cpu->f[1], cpu->f[11], cpu->f[31]);
|
|
/* 026969B4 */ _t18 = cpu->r[12] + 0x00003C2Cu;
|
|
/* 026969B4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 026969B8 */ cpu->f[0] = cpu->f[12] - cpu->f[13];
|
|
/* 026969BC */ /* nop */
|
|
/* 026969C0 */ _t19 = cpu->r[31] + 0x00000058u;
|
|
/* 026969C0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 026969C4 */ cpu->f[11] = cpu->f[10] - cpu->f[0];
|
|
/* 026969C8 */ _t20 = cpu->r[11] + 0x000002BCu;
|
|
/* 026969C8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 026969CC */ cpu->f[11] = fma(cpu->f[11], cpu->f[10], cpu->f[0]);
|
|
/* 026969D0 */ cpu->f[12] = cpu->f[13] - cpu->f[11];
|
|
/* 026969D4 */ _t21 = cpu->r[31] + 0x00000058u;
|
|
/* 026969D4 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[11]);
|
|
/* 026969D8 */ _t22 = cpu->r[31] + 0x00000014u;
|
|
/* 026969D8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 026969DC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[31]);
|
|
/* 026969E0 */ _t23 = cpu->r[31] + 0x00000020u;
|
|
/* 026969E0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 026969E4 */ /* nop */
|
|
/* 026969E8 */ _t24 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026969E8 */ _t25 = _t24 & 0x00000001u;
|
|
/* 026969E8 */ if (_t25) goto L_02696A68; else goto L_026969EC;
|
|
L_026969EC: ; // 0x26969ec
|
|
/* 026969EC */ goto L_02696AE0;
|
|
L_026969F0: ; // 0x26969f0
|
|
/* 026969F0 */ cpu->r[12] = 0x100E0000u;
|
|
/* 026969F4 */ _t26 = cpu->r[31] + 0x00000054u;
|
|
/* 026969F4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 026969F8 */ _t27 = cpu->r[12] + 0x00003C48u;
|
|
/* 026969F8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 026969FC */ cpu->f[11] = cpu->f[12] - cpu->f[13];
|
|
/* 02696A00 */ /* nop */
|
|
/* 02696A04 */ cpu->r[8] = 0x100E0000u;
|
|
/* 02696A08 */ cpu->f[10] = cpu->f[0] / cpu->f[12];
|
|
/* 02696A0C */ _t28 = cpu->r[8] + 0x00003C4Cu;
|
|
/* 02696A0C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 02696A10 */ cpu->f[1] = cpu->f[10] * cpu->f[0];
|
|
/* 02696A14 */ _t29 = cpu->r[31] + 0x00000048u;
|
|
/* 02696A14 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 02696A18 */ Gambit_fn_02C886F8(cpu);
|
|
/* 02696A1C */ _t30 = cpu->r[30] + 0x00000008u;
|
|
/* 02696A1C */ cpu->r[11] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02696A20 */ _t31 = cpu->r[11] + 0x00000748u;
|
|
/* 02696A20 */ cpu->r[11] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02696A24 */ _t32 = cpu->r[11] + 0x0000031Cu;
|
|
/* 02696A24 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 02696A28 */ cpu->r[12] = 0x100E0000u;
|
|
/* 02696A2C */ cpu->f[12] = fma(cpu->f[1], cpu->f[11], cpu->f[30]);
|
|
/* 02696A30 */ _t33 = cpu->r[12] + 0x00003C2Cu;
|
|
/* 02696A30 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 02696A34 */ cpu->f[0] = cpu->f[12] - cpu->f[13];
|
|
/* 02696A38 */ /* nop */
|
|
/* 02696A3C */ _t34 = cpu->r[31] + 0x00000058u;
|
|
/* 02696A3C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 02696A40 */ cpu->f[11] = cpu->f[10] - cpu->f[0];
|
|
/* 02696A44 */ _t35 = cpu->r[11] + 0x000002BCu;
|
|
/* 02696A44 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 02696A48 */ cpu->f[11] = fma(cpu->f[11], cpu->f[10], cpu->f[0]);
|
|
/* 02696A4C */ cpu->f[12] = cpu->f[13] - cpu->f[11];
|
|
/* 02696A50 */ _t36 = cpu->r[31] + 0x00000058u;
|
|
/* 02696A50 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[11]);
|
|
/* 02696A54 */ _t37 = cpu->r[31] + 0x00000014u;
|
|
/* 02696A54 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 02696A58 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[31]);
|
|
/* 02696A5C */ _t38 = cpu->r[31] + 0x00000020u;
|
|
/* 02696A5C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 02696A60 */ /* nop */
|
|
/* 02696A64 */ _t39 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02696A64 */ _t40 = _t39 & 0x00000001u;
|
|
/* 02696A64 */ if (_t40) goto L_02696A68; else goto L_02696AE0;
|
|
L_02696A68: ; // 0x2696a68
|
|
/* 02696A68 */ cpu->f[0] = cpu->f[10] * cpu->f[31];
|
|
/* 02696A6C */ /* nop */
|
|
/* 02696A70 */ /* nop */
|
|
/* 02696A74 */ _t41 = cpu->r[1] + 0x00000010u;
|
|
/* 02696A74 */ rbrew_write_f32(cpu->mem, _t41, cpu->f[0]);
|
|
/* 02696A78 */ _t42 = cpu->r[1] + 0x00000010u;
|
|
/* 02696A78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02696A7C */ /* nop */
|
|
/* 02696A80 */ _t43 = cpu->r[1] + 0x00000008u;
|
|
/* 02696A80 */ cpu->r[10] = rbrew_read32(cpu->mem, _t43);
|
|
/* 02696A84 */ _t44 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02696A84 */ cpu->r[12] = rbrew_read32(cpu->mem, _t44);
|
|
/* 02696A88 */ _t45 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02696A88 */ rbrew_write32(cpu->mem, _t45, cpu->r[10]);
|
|
/* 02696A8C */ _t46 = cpu->r[1] + 0x00000030u;
|
|
/* 02696A8C */ rbrew_write32(cpu->mem, _t46, cpu->r[12]);
|
|
/* 02696A90 */ /* nop */
|
|
/* 02696A94 */ _t47 = cpu->r[1] + 0x00000034u;
|
|
/* 02696A94 */ rbrew_write32(cpu->mem, _t47, cpu->r[0]);
|
|
/* 02696A98 */ /* nop */
|
|
/* 02696A9C */ _t48 = cpu->r[1] + 0x00000034u;
|
|
/* 02696A9C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 02696AA0 */ /* nop */
|
|
/* 02696AA4 */ _t49 = cpu->r[1] + 0x00000014u;
|
|
/* 02696AA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t49);
|
|
/* 02696AA8 */ _t50 = cpu->r[1] + 0x00000018u;
|
|
/* 02696AA8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t50);
|
|
/* 02696AAC */ cpu->f[10] = cpu->f[11] + cpu->f[13];
|
|
/* 02696AB0 */ _t51 = cpu->r[1] + 0x00000020u;
|
|
/* 02696AB0 */ rbrew_write32(cpu->mem, _t51, cpu->r[0]);
|
|
/* 02696AB4 */ _t52 = cpu->r[1] + 0x00000020u;
|
|
/* 02696AB4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 02696AB8 */ _t53 = cpu->r[1] + 0x00000024u;
|
|
/* 02696AB8 */ rbrew_write32(cpu->mem, _t53, cpu->r[9]);
|
|
/* 02696ABC */ _t54 = cpu->r[1] + 0x00000024u;
|
|
/* 02696ABC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 02696AC0 */ _t55 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02696AC0 */ rbrew_write_f32(cpu->mem, _t55, cpu->f[10]);
|
|
/* 02696AC4 */ _t56 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02696AC4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t56);
|
|
/* 02696AC8 */ _t57 = cpu->r[31] + 0x00000024u;
|
|
/* 02696AC8 */ rbrew_write_f32(cpu->mem, _t57, cpu->f[11]);
|
|
/* 02696ACC */ _t58 = cpu->r[1] + 0x00000028u;
|
|
/* 02696ACC */ rbrew_write32(cpu->mem, _t58, cpu->r[0]);
|
|
/* 02696AD0 */ _t59 = cpu->r[1] + 0x00000028u;
|
|
/* 02696AD0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t59);
|
|
/* 02696AD4 */ _t60 = cpu->r[31] + 0x00000028u;
|
|
/* 02696AD4 */ rbrew_write_f32(cpu->mem, _t60, cpu->f[0]);
|
|
/* 02696AD8 */ _t61 = cpu->r[31] + 0x0000002Cu;
|
|
/* 02696AD8 */ rbrew_write_f32(cpu->mem, _t61, cpu->f[10]);
|
|
/* 02696ADC */ goto L_02696B60;
|
|
L_02696AE0: ; // 0x2696ae0
|
|
/* 02696AE0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[13]);
|
|
/* 02696AE4 */ _t62 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02696AE4 */ _t63 = _t62 & 0x00000001u;
|
|
/* 02696AE4 */ if (_t63) goto L_02696AE8; else goto L_02696AEC;
|
|
L_02696AE8: ; // 0x2696ae8
|
|
/* 02696AE8 */ cpu->f[12] = cpu->f[13];
|
|
L_02696AEC: ; // 0x2696aec
|
|
/* 02696AEC */ cpu->f[0] = cpu->f[10] * cpu->f[12];
|
|
/* 02696AF0 */ /* nop */
|
|
/* 02696AF4 */ /* nop */
|
|
/* 02696AF8 */ _t64 = cpu->r[1] + 0x00000010u;
|
|
/* 02696AF8 */ rbrew_write_f32(cpu->mem, _t64, cpu->f[0]);
|
|
/* 02696AFC */ _t65 = cpu->r[1] + 0x00000010u;
|
|
/* 02696AFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t65);
|
|
/* 02696B00 */ /* nop */
|
|
/* 02696B04 */ _t66 = cpu->r[1] + 0x00000008u;
|
|
/* 02696B04 */ cpu->r[10] = rbrew_read32(cpu->mem, _t66);
|
|
/* 02696B08 */ _t67 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02696B08 */ cpu->r[12] = rbrew_read32(cpu->mem, _t67);
|
|
/* 02696B0C */ _t68 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02696B0C */ rbrew_write32(cpu->mem, _t68, cpu->r[10]);
|
|
/* 02696B10 */ _t69 = cpu->r[1] + 0x00000030u;
|
|
/* 02696B10 */ rbrew_write32(cpu->mem, _t69, cpu->r[12]);
|
|
/* 02696B14 */ /* nop */
|
|
/* 02696B18 */ _t70 = cpu->r[1] + 0x00000034u;
|
|
/* 02696B18 */ rbrew_write32(cpu->mem, _t70, cpu->r[0]);
|
|
/* 02696B1C */ /* nop */
|
|
/* 02696B20 */ _t71 = cpu->r[1] + 0x00000034u;
|
|
/* 02696B20 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t71);
|
|
/* 02696B24 */ /* nop */
|
|
/* 02696B28 */ _t72 = cpu->r[1] + 0x00000014u;
|
|
/* 02696B28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t72);
|
|
/* 02696B2C */ _t73 = cpu->r[1] + 0x00000018u;
|
|
/* 02696B2C */ cpu->r[9] = rbrew_read32(cpu->mem, _t73);
|
|
/* 02696B30 */ cpu->f[10] = cpu->f[11] + cpu->f[13];
|
|
/* 02696B34 */ _t74 = cpu->r[1] + 0x00000020u;
|
|
/* 02696B34 */ rbrew_write32(cpu->mem, _t74, cpu->r[0]);
|
|
/* 02696B38 */ _t75 = cpu->r[1] + 0x00000020u;
|
|
/* 02696B38 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t75);
|
|
/* 02696B3C */ _t76 = cpu->r[1] + 0x00000024u;
|
|
/* 02696B3C */ rbrew_write32(cpu->mem, _t76, cpu->r[9]);
|
|
/* 02696B40 */ _t77 = cpu->r[1] + 0x00000024u;
|
|
/* 02696B40 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t77);
|
|
/* 02696B44 */ _t78 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02696B44 */ rbrew_write_f32(cpu->mem, _t78, cpu->f[10]);
|
|
/* 02696B48 */ _t79 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02696B48 */ cpu->r[0] = rbrew_read32(cpu->mem, _t79);
|
|
/* 02696B4C */ _t80 = cpu->r[31] + 0x00000024u;
|
|
/* 02696B4C */ rbrew_write_f32(cpu->mem, _t80, cpu->f[11]);
|
|
/* 02696B50 */ _t81 = cpu->r[1] + 0x00000028u;
|
|
/* 02696B50 */ rbrew_write32(cpu->mem, _t81, cpu->r[0]);
|
|
/* 02696B54 */ _t82 = cpu->r[1] + 0x00000028u;
|
|
/* 02696B54 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t82);
|
|
/* 02696B58 */ _t83 = cpu->r[31] + 0x00000028u;
|
|
/* 02696B58 */ rbrew_write_f32(cpu->mem, _t83, cpu->f[0]);
|
|
/* 02696B5C */ _t84 = cpu->r[31] + 0x0000002Cu;
|
|
/* 02696B5C */ rbrew_write_f32(cpu->mem, _t84, cpu->f[10]);
|
|
L_02696B60: ; // 0x2696b60
|
|
/* 02696B60 */ _t85 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02696B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t85);
|
|
/* 02696B64 */ _t86 = cpu->r[1] + 0x00000058u;
|
|
/* 02696B64 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t86);
|
|
/* 02696B68 */ _t87 = cpu->r[1] + 0x00000048u;
|
|
/* 02696B68 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t87);
|
|
/* 02696B6C */ _t88 = cpu->r[1] + 0x00000050u;
|
|
/* 02696B6C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t88);
|
|
/* 02696B70 */ _t89 = cpu->r[1] + 0x00000040u;
|
|
/* 02696B70 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t89);
|
|
/* 02696B74 */ _t90 = cpu->r[1] + 0x00000038u;
|
|
/* 02696B74 */ cpu->r[30] = rbrew_read32(cpu->mem, _t90);
|
|
/* 02696B78 */ _t91 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02696B78 */ _t92 = _t91 & 0x00000001u;
|
|
/* 02696B78 */ if (_t92) goto L_02696B7C; // else: addr-0 trap, fall-through
|
|
L_02696B7C: ; // 0x2696b7c
|
|
/* 02696B7C */ _t93 = cpu->r[1] + 0x00000064u;
|
|
/* 02696B7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t93);
|
|
/* 02696B80 */ cpu->lr = cpu->r[0];
|
|
/* 02696B84 */ cpu->r[1] = cpu->r[1] + 0x00000060u;
|
|
/* 02696B88 */ return;
|
|
}
|
|
|
|
// fn_02696B8C @ 0x2696b8c
|
|
void Gambit_fn_02696B8C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02696B8C: ; // 0x2696b8c
|
|
/* 02696B8C */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 02696B8C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02696B8C */ cpu->r[1] = _t0;
|
|
/* 02696B90 */ /* nop */
|
|
/* 02696B94 */ cpu->r[0] = cpu->lr;
|
|
/* 02696B98 */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 02696B98 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02696B9C */ cpu->r[29] = cpu->r[3];
|
|
/* 02696BA0 */ cpu->r[3] = cpu->r[29] + 0x00000014u;
|
|
/* 02696BA4 */ Gambit_fn_02699230(cpu);
|
|
/* 02696BA8 */ _t2 = cpu->r[29] + 0x00000098u;
|
|
/* 02696BA8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02696BAC */ _t3 = cpu->r[29] + 0x000000A0u;
|
|
/* 02696BAC */ cpu->r[8] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02696BB0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[0]);
|
|
/* 02696BB4 */ cpu->r[28] = 0x00000000u;
|
|
/* 02696BB8 */ _t4 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02696BB8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02696BB8 */ if (_t5) goto L_02696BBC; else goto L_02696BC8;
|
|
L_02696BBC: ; // 0x2696bbc
|
|
/* 02696BBC */ cpu->r[10] = (uint32_t)((int32_t)cpu->r[8] * (int32_t)0x00000014u);
|
|
/* 02696BC0 */ _t6 = cpu->r[29] + 0x0000009Cu;
|
|
/* 02696BC0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02696BC4 */ cpu->r[28] = cpu->r[11] + cpu->r[10];
|
|
L_02696BC8: ; // 0x2696bc8
|
|
/* 02696BC8 */ _t7 = cpu->r[28] + 0x00000000u;
|
|
/* 02696BC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02696BCC */ cpu->r[30] = 0x00000000u;
|
|
/* 02696BD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]);
|
|
/* 02696BD4 */ _t8 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02696BD4 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02696BD4 */ if (_t9) goto L_02696BD8; else goto L_02696C34;
|
|
L_02696BD8: ; // 0x2696bd8
|
|
/* 02696BD8 */ cpu->r[27] = 0x00000000u;
|
|
L_02696BDC: ; // 0x2696bdc
|
|
/* 02696BDC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[0]);
|
|
/* 02696BE0 */ cpu->r[31] = 0x00000000u;
|
|
/* 02696BE4 */ _t10 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02696BE4 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02696BE4 */ if (_t11) goto L_02696BE8; else goto L_02696BF0;
|
|
L_02696BE8: ; // 0x2696be8
|
|
/* 02696BE8 */ _t12 = cpu->r[28] + 0x00000008u;
|
|
/* 02696BE8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02696BEC */ _t13 = cpu->r[12] + cpu->r[27];
|
|
/* 02696BEC */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
L_02696BF0: ; // 0x2696bf0
|
|
/* 02696BF0 */ cpu->r[3] = cpu->r[29];
|
|
/* 02696BF4 */ cpu->r[4] = cpu->r[31];
|
|
/* 02696BF8 */ Gambit_fn_02696780(cpu);
|
|
/* 02696BFC */ cpu->r[3] = cpu->r[29];
|
|
/* 02696C00 */ cpu->r[4] = cpu->r[31];
|
|
/* 02696C04 */ Gambit_fn_026967C4(cpu);
|
|
/* 02696C08 */ cpu->r[3] = cpu->r[29];
|
|
/* 02696C0C */ cpu->r[4] = cpu->r[31];
|
|
/* 02696C10 */ Gambit_fn_02696878(cpu);
|
|
/* 02696C14 */ cpu->r[3] = cpu->r[29];
|
|
/* 02696C18 */ cpu->r[4] = cpu->r[31];
|
|
/* 02696C1C */ Gambit_fn_02696930(cpu);
|
|
/* 02696C20 */ _t14 = cpu->r[28] + 0x00000000u;
|
|
/* 02696C20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02696C24 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02696C28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]);
|
|
/* 02696C2C */ cpu->r[27] = cpu->r[27] + 0x00000004u;
|
|
/* 02696C30 */ _t15 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02696C30 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02696C30 */ if (_t16) goto L_02696BDC; else goto L_02696C34;
|
|
L_02696C34: ; // 0x2696c34
|
|
/* 02696C34 */ cpu->r[0] = 0x00000001u;
|
|
/* 02696C38 */ _t17 = cpu->r[29] + 0x000000ADu;
|
|
/* 02696C38 */ rbrew_write8(cpu->mem, _t17, (uint8_t)cpu->r[0]);
|
|
/* 02696C3C */ /* nop */
|
|
/* 02696C40 */ _t18 = cpu->r[1] + 0x00000024u;
|
|
/* 02696C40 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02696C44 */ cpu->lr = cpu->r[0];
|
|
/* 02696C48 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 02696C4C */ return;
|
|
}
|
|
|
|
// fn_02696C50 @ 0x2696c50
|
|
void Gambit_fn_02696C50(CPUState* cpu) {
|
|
uint32_t _t0, _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_02696C50: ; // 0x2696c50
|
|
/* 02696C50 */ cpu->r[0] = cpu->lr;
|
|
/* 02696C54 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02696C54 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02696C54 */ cpu->r[1] = _t0;
|
|
/* 02696C58 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02696C58 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 02696C5C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02696C5C */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 02696C60 */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 02696C60 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 02696C64 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 02696C64 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 02696C68 */ cpu->r[30] = cpu->r[3];
|
|
/* 02696C6C */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02696C6C */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02696C70 */ _t6 = cpu->r[30] + 0x00000008u;
|
|
/* 02696C70 */ cpu->r[11] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02696C74 */ _t7 = cpu->r[11] + 0x000006BBu;
|
|
/* 02696C74 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 02696C78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02696C7C */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02696C7C */ _t9 = _t8 & 0x00000001u;
|
|
/* 02696C7C */ if (_t9) goto L_02696D00; else goto L_02696C80;
|
|
L_02696C80: ; // 0x2696c80
|
|
/* 02696C80 */ _t10 = cpu->r[30] + 0x000000ACu;
|
|
/* 02696C80 */ cpu->r[8] = rbrew_read8(cpu->mem, _t10);
|
|
/* 02696C84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02696C88 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02696C88 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02696C88 */ if (_t12) goto L_02696D00; else goto L_02696C8C;
|
|
L_02696C8C: ; // 0x2696c8c
|
|
/* 02696C8C */ cpu->r[3] = cpu->r[30];
|
|
/* 02696C90 */ Gambit_fn_02695E1C(cpu);
|
|
/* 02696C94 */ _t13 = cpu->r[30] + 0x00000098u;
|
|
/* 02696C94 */ cpu->r[9] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02696C98 */ _t14 = cpu->r[30] + 0x000000A0u;
|
|
/* 02696C98 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02696C9C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[9]);
|
|
/* 02696CA0 */ cpu->r[29] = 0x00000000u;
|
|
/* 02696CA4 */ _t15 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02696CA4 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02696CA4 */ if (_t16) goto L_02696CA8; else goto L_02696CB4;
|
|
L_02696CA8: ; // 0x2696ca8
|
|
/* 02696CA8 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x00000014u);
|
|
/* 02696CAC */ _t17 = cpu->r[30] + 0x0000009Cu;
|
|
/* 02696CAC */ cpu->r[11] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02696CB0 */ cpu->r[29] = cpu->r[11] + cpu->r[0];
|
|
L_02696CB4: ; // 0x2696cb4
|
|
/* 02696CB4 */ _t18 = cpu->r[29] + 0x00000000u;
|
|
/* 02696CB4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02696CB8 */ cpu->r[31] = 0x00000000u;
|
|
/* 02696CBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[0]);
|
|
/* 02696CC0 */ _t19 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02696CC0 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02696CC0 */ if (_t20) goto L_02696CC4; else goto L_02696CF8;
|
|
L_02696CC4: ; // 0x2696cc4
|
|
/* 02696CC4 */ cpu->r[28] = 0x00000000u;
|
|
L_02696CC8: ; // 0x2696cc8
|
|
/* 02696CC8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 02696CCC */ cpu->r[4] = 0x00000000u;
|
|
/* 02696CD0 */ _t21 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02696CD0 */ _t22 = _t21 & 0x00000001u;
|
|
/* 02696CD0 */ if (_t22) goto L_02696CD4; else goto L_02696CDC;
|
|
L_02696CD4: ; // 0x2696cd4
|
|
/* 02696CD4 */ _t23 = cpu->r[29] + 0x00000008u;
|
|
/* 02696CD4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02696CD8 */ _t24 = cpu->r[12] + cpu->r[28];
|
|
/* 02696CD8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t24);
|
|
L_02696CDC: ; // 0x2696cdc
|
|
/* 02696CDC */ cpu->r[3] = cpu->r[30];
|
|
/* 02696CE0 */ Gambit_fn_02696568(cpu);
|
|
/* 02696CE4 */ _t25 = cpu->r[29] + 0x00000000u;
|
|
/* 02696CE4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02696CE8 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 02696CEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[0]);
|
|
/* 02696CF0 */ cpu->r[28] = cpu->r[28] + 0x00000004u;
|
|
/* 02696CF4 */ _t26 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02696CF4 */ _t27 = _t26 & 0x00000001u;
|
|
/* 02696CF4 */ if (_t27) goto L_02696CC8; else goto L_02696CF8;
|
|
L_02696CF8: ; // 0x2696cf8
|
|
/* 02696CF8 */ cpu->r[3] = cpu->r[30];
|
|
/* 02696CFC */ Gambit_fn_02696B8C(cpu);
|
|
L_02696D00: ; // 0x2696d00
|
|
/* 02696D00 */ _t28 = cpu->r[1] + 0x00000008u;
|
|
/* 02696D00 */ cpu->r[28] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02696D04 */ _t29 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02696D04 */ cpu->r[29] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02696D08 */ _t30 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02696D08 */ cpu->r[0] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02696D0C */ _t31 = cpu->r[1] + 0x00000010u;
|
|
/* 02696D0C */ cpu->r[30] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02696D10 */ cpu->lr = cpu->r[0];
|
|
/* 02696D14 */ _t32 = cpu->r[1] + 0x00000014u;
|
|
/* 02696D14 */ cpu->r[31] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02696D18 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02696D1C */ return;
|
|
}
|
|
|
|
// fn_02696C54 @ 0x2696c54
|
|
void Gambit_fn_02696C54(CPUState* cpu) {
|
|
uint32_t _t0, _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_02696C54: ; // 0x2696c54
|
|
/* 02696C54 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02696C54 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02696C54 */ cpu->r[1] = _t0;
|
|
/* 02696C58 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02696C58 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 02696C5C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02696C5C */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 02696C60 */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 02696C60 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 02696C64 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 02696C64 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 02696C68 */ cpu->r[30] = cpu->r[3];
|
|
/* 02696C6C */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02696C6C */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02696C70 */ _t6 = cpu->r[30] + 0x00000008u;
|
|
/* 02696C70 */ cpu->r[11] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02696C74 */ _t7 = cpu->r[11] + 0x000006BBu;
|
|
/* 02696C74 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 02696C78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02696C7C */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02696C7C */ _t9 = _t8 & 0x00000001u;
|
|
/* 02696C7C */ if (_t9) goto L_02696D00; else goto L_02696C80;
|
|
L_02696C80: ; // 0x2696c80
|
|
/* 02696C80 */ _t10 = cpu->r[30] + 0x000000ACu;
|
|
/* 02696C80 */ cpu->r[8] = rbrew_read8(cpu->mem, _t10);
|
|
/* 02696C84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02696C88 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02696C88 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02696C88 */ if (_t12) goto L_02696D00; else goto L_02696C8C;
|
|
L_02696C8C: ; // 0x2696c8c
|
|
/* 02696C8C */ cpu->r[3] = cpu->r[30];
|
|
/* 02696C90 */ Gambit_fn_02695E1C(cpu);
|
|
/* 02696C94 */ _t13 = cpu->r[30] + 0x00000098u;
|
|
/* 02696C94 */ cpu->r[9] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02696C98 */ _t14 = cpu->r[30] + 0x000000A0u;
|
|
/* 02696C98 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02696C9C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[9]);
|
|
/* 02696CA0 */ cpu->r[29] = 0x00000000u;
|
|
/* 02696CA4 */ _t15 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02696CA4 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02696CA4 */ if (_t16) goto L_02696CA8; else goto L_02696CB4;
|
|
L_02696CA8: ; // 0x2696ca8
|
|
/* 02696CA8 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x00000014u);
|
|
/* 02696CAC */ _t17 = cpu->r[30] + 0x0000009Cu;
|
|
/* 02696CAC */ cpu->r[11] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02696CB0 */ cpu->r[29] = cpu->r[11] + cpu->r[0];
|
|
L_02696CB4: ; // 0x2696cb4
|
|
/* 02696CB4 */ _t18 = cpu->r[29] + 0x00000000u;
|
|
/* 02696CB4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02696CB8 */ cpu->r[31] = 0x00000000u;
|
|
/* 02696CBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[0]);
|
|
/* 02696CC0 */ _t19 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02696CC0 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02696CC0 */ if (_t20) goto L_02696CC4; else goto L_02696CF8;
|
|
L_02696CC4: ; // 0x2696cc4
|
|
/* 02696CC4 */ cpu->r[28] = 0x00000000u;
|
|
L_02696CC8: ; // 0x2696cc8
|
|
/* 02696CC8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 02696CCC */ cpu->r[4] = 0x00000000u;
|
|
/* 02696CD0 */ _t21 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02696CD0 */ _t22 = _t21 & 0x00000001u;
|
|
/* 02696CD0 */ if (_t22) goto L_02696CD4; else goto L_02696CDC;
|
|
L_02696CD4: ; // 0x2696cd4
|
|
/* 02696CD4 */ _t23 = cpu->r[29] + 0x00000008u;
|
|
/* 02696CD4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02696CD8 */ _t24 = cpu->r[12] + cpu->r[28];
|
|
/* 02696CD8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t24);
|
|
L_02696CDC: ; // 0x2696cdc
|
|
/* 02696CDC */ cpu->r[3] = cpu->r[30];
|
|
/* 02696CE0 */ Gambit_fn_02696568(cpu);
|
|
/* 02696CE4 */ _t25 = cpu->r[29] + 0x00000000u;
|
|
/* 02696CE4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02696CE8 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 02696CEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[0]);
|
|
/* 02696CF0 */ cpu->r[28] = cpu->r[28] + 0x00000004u;
|
|
/* 02696CF4 */ _t26 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02696CF4 */ _t27 = _t26 & 0x00000001u;
|
|
/* 02696CF4 */ if (_t27) goto L_02696CC8; else goto L_02696CF8;
|
|
L_02696CF8: ; // 0x2696cf8
|
|
/* 02696CF8 */ cpu->r[3] = cpu->r[30];
|
|
/* 02696CFC */ Gambit_fn_02696B8C(cpu);
|
|
L_02696D00: ; // 0x2696d00
|
|
/* 02696D00 */ _t28 = cpu->r[1] + 0x00000008u;
|
|
/* 02696D00 */ cpu->r[28] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02696D04 */ _t29 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02696D04 */ cpu->r[29] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02696D08 */ _t30 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02696D08 */ cpu->r[0] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02696D0C */ _t31 = cpu->r[1] + 0x00000010u;
|
|
/* 02696D0C */ cpu->r[30] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02696D10 */ cpu->lr = cpu->r[0];
|
|
/* 02696D14 */ _t32 = cpu->r[1] + 0x00000014u;
|
|
/* 02696D14 */ cpu->r[31] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02696D18 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02696D1C */ return;
|
|
}
|
|
|
|
// fn_02696D20 @ 0x2696d20
|
|
void Gambit_fn_02696D20(CPUState* cpu) {
|
|
L_02696D20: ; // 0x2696d20
|
|
/* 02696D20 */ return;
|
|
}
|
|
|
|
// fn_02696D24 @ 0x2696d24
|
|
void Gambit_fn_02696D24(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02696D24: ; // 0x2696d24
|
|
/* 02696D24 */ _t0 = cpu->r[3] + 0x000000A8u;
|
|
/* 02696D24 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 02696D28 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[1]);
|
|
/* 02696D2C */ /* nop */
|
|
/* 02696D30 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000001u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02696D34 */ cpu->r[3] = cpu->r[0] ^ 0x00000001u;
|
|
/* 02696D38 */ return;
|
|
}
|
|
|
|
// fn_02696D3C @ 0x2696d3c
|
|
void Gambit_fn_02696D3C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02696D3C: ; // 0x2696d3c
|
|
/* 02696D3C */ cpu->r[12] = 0x100E0000u;
|
|
/* 02696D40 */ _t0 = cpu->r[12] + 0x00003C28u;
|
|
/* 02696D40 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 02696D44 */ cpu->r[12] = 0x100E0000u;
|
|
/* 02696D48 */ cpu->r[11] = 0x101F0000u;
|
|
/* 02696D4C */ _t1 = cpu->r[12] + 0x00003C50u;
|
|
/* 02696D4C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 02696D50 */ cpu->r[12] = 0x100E0000u;
|
|
/* 02696D54 */ _t2 = cpu->r[11] + 0xFFFFD8D4u;
|
|
/* 02696D54 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[13]);
|
|
/* 02696D54 */ cpu->r[11] = _t2;
|
|
/* 02696D58 */ _t3 = cpu->r[12] + 0x00003C54u;
|
|
/* 02696D58 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 02696D5C */ _t4 = cpu->r[11] + 0x00000004u;
|
|
/* 02696D5C */ rbrew_write_f32(cpu->mem, _t4, cpu->f[12]);
|
|
/* 02696D60 */ _t5 = cpu->r[11] + 0x00000008u;
|
|
/* 02696D60 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[0]);
|
|
/* 02696D64 */ return;
|
|
}
|
|
|
|
// fn_02696D68 @ 0x2696d68
|
|
void Gambit_fn_02696D68(CPUState* cpu) {
|
|
L_02696D68: ; // 0x2696d68
|
|
/* 02696D68 */ return;
|
|
}
|
|
|
|
// fn_02696D6C @ 0x2696d6c
|
|
void Gambit_fn_02696D6C(CPUState* cpu) {
|
|
L_02696D6C: ; // 0x2696d6c
|
|
/* 02696D6C */ return;
|
|
}
|
|
|
|
// fn_02696D70 @ 0x2696d70
|
|
void Gambit_fn_02696D70(CPUState* cpu) {
|
|
uint32_t _t0, _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_02696D70: ; // 0x2696d70
|
|
/* 02696D70 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 02696D70 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02696D70 */ cpu->r[1] = _t0;
|
|
/* 02696D74 */ cpu->r[0] = cpu->lr;
|
|
/* 02696D78 */ /* nop */
|
|
/* 02696D7C */ cpu->r[31] = cpu->r[3];
|
|
/* 02696D7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02696D80 */ cpu->r[30] = cpu->r[5];
|
|
/* 02696D84 */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 02696D84 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02696D88 */ cpu->r[29] = cpu->r[4];
|
|
/* 02696D8C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02696D8C */ _t3 = _t2 & 0x00000001u;
|
|
/* 02696D8C */ if (_t3) goto L_02696D90; else goto L_02696DA0;
|
|
L_02696D90: ; // 0x2696d90
|
|
/* 02696D90 */ cpu->r[3] = 0x00000190u;
|
|
/* 02696D94 */ Gambit_fn_02801A78(cpu);
|
|
/* 02696D98 */ cpu->r[31] = cpu->r[3];
|
|
/* 02696D98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02696D9C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02696D9C */ _t5 = _t4 & 0x00000001u;
|
|
/* 02696D9C */ if (_t5) goto L_02696EDC; else goto L_02696DA0;
|
|
L_02696DA0: ; // 0x2696da0
|
|
/* 02696DA0 */ cpu->r[3] = cpu->r[31];
|
|
/* 02696DA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02696DA4 */ cpu->r[28] = 0x00000000u;
|
|
/* 02696DA8 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02696DA8 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02696DA8 */ if (_t7) goto L_02696DAC; else goto L_02696DBC;
|
|
L_02696DAC: ; // 0x2696dac
|
|
/* 02696DAC */ cpu->r[3] = 0x00000008u;
|
|
/* 02696DB0 */ Gambit_fn_02801A78(cpu);
|
|
/* 02696DB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02696DB8 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02696DB8 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02696DB8 */ if (_t9) goto L_02696DCC; else goto L_02696DBC;
|
|
L_02696DBC: ; // 0x2696dbc
|
|
/* 02696DBC */ cpu->r[12] = 0x100E0000u;
|
|
/* 02696DC0 */ _t10 = cpu->r[3] + 0x00000000u;
|
|
/* 02696DC0 */ rbrew_write32(cpu->mem, _t10, cpu->r[28]);
|
|
/* 02696DC4 */ cpu->r[12] = cpu->r[12] + 0x00003D08u;
|
|
/* 02696DC8 */ _t11 = cpu->r[3] + 0x00000004u;
|
|
/* 02696DC8 */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
L_02696DCC: ; // 0x2696dcc
|
|
/* 02696DCC */ _t12 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02696DCC */ rbrew_write32(cpu->mem, _t12, cpu->r[28]);
|
|
/* 02696DD0 */ cpu->r[0] = 0x100E0000u;
|
|
/* 02696DD4 */ _t13 = cpu->r[31] + 0x00000008u;
|
|
/* 02696DD4 */ rbrew_write32(cpu->mem, _t13, cpu->r[29]);
|
|
/* 02696DD8 */ cpu->r[0] = cpu->r[0] + 0x00003D18u;
|
|
/* 02696DDC */ cpu->r[27] = cpu->r[31] + 0x00000020u;
|
|
/* 02696DDC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02696DE0 */ _t14 = cpu->r[31] + 0x00000004u;
|
|
/* 02696DE0 */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
/* 02696DE4 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02696DE4 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02696DE4 */ if (_t16) goto L_02696DE8; else goto L_02696DF8;
|
|
L_02696DE8: ; // 0x2696de8
|
|
/* 02696DE8 */ cpu->r[3] = 0x00000014u;
|
|
/* 02696DEC */ Gambit_fn_02801A78(cpu);
|
|
/* 02696DF0 */ cpu->r[27] = cpu->r[3];
|
|
/* 02696DF0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02696DF4 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02696DF4 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02696DF4 */ if (_t18) goto L_02696E24; else goto L_02696DF8;
|
|
L_02696DF8: ; // 0x2696df8
|
|
/* 02696DF8 */ cpu->r[3] = cpu->r[27];
|
|
/* 02696DF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02696DFC */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02696DFC */ _t20 = _t19 & 0x00000001u;
|
|
/* 02696DFC */ if (_t20) goto L_02696E00; else goto L_02696E10;
|
|
L_02696E00: ; // 0x2696e00
|
|
/* 02696E00 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02696E04 */ Gambit_fn_02801A78(cpu);
|
|
/* 02696E08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02696E0C */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02696E0C */ _t22 = _t21 & 0x00000001u;
|
|
/* 02696E0C */ if (_t22) goto L_02696E1C; else goto L_02696E10;
|
|
L_02696E10: ; // 0x2696e10
|
|
/* 02696E10 */ _t23 = cpu->r[3] + 0x00000004u;
|
|
/* 02696E10 */ rbrew_write32(cpu->mem, _t23, cpu->r[28]);
|
|
/* 02696E14 */ _t24 = cpu->r[3] + 0x00000000u;
|
|
/* 02696E14 */ rbrew_write32(cpu->mem, _t24, cpu->r[28]);
|
|
/* 02696E18 */ _t25 = cpu->r[3] + 0x00000008u;
|
|
/* 02696E18 */ rbrew_write32(cpu->mem, _t25, cpu->r[28]);
|
|
L_02696E1C: ; // 0x2696e1c
|
|
/* 02696E1C */ _t26 = cpu->r[27] + 0x00000010u;
|
|
/* 02696E1C */ rbrew_write32(cpu->mem, _t26, cpu->r[28]);
|
|
/* 02696E20 */ _t27 = cpu->r[27] + 0x0000000Cu;
|
|
/* 02696E20 */ rbrew_write32(cpu->mem, _t27, cpu->r[28]);
|
|
L_02696E24: ; // 0x2696e24
|
|
/* 02696E24 */ cpu->r[6] = 0x02690000u;
|
|
/* 02696E28 */ cpu->r[3] = cpu->r[31] + 0x00000034u;
|
|
/* 02696E2C */ cpu->r[5] = 0x0000004Cu;
|
|
/* 02696E30 */ cpu->r[6] = cpu->r[6] + 0x0000786Cu;
|
|
/* 02696E34 */ cpu->r[4] = 0x00000004u;
|
|
/* 02696E38 */ Gambit_fn_02C82E00(cpu);
|
|
/* 02696E3C */ cpu->r[6] = 0x02690000u;
|
|
/* 02696E40 */ cpu->r[3] = cpu->r[31] + 0x00000168u;
|
|
/* 02696E44 */ cpu->r[5] = 0x00000008u;
|
|
/* 02696E48 */ cpu->r[6] = cpu->r[6] + 0x00007964u;
|
|
/* 02696E4C */ cpu->r[4] = 0x00000004u;
|
|
/* 02696E50 */ Gambit_fn_02C82E00(cpu);
|
|
/* 02696E54 */ cpu->r[0] = 0x00000004u;
|
|
/* 02696E58 */ cpu->r[10] = cpu->r[31] + 0x00000160u;
|
|
/* 02696E5C */ cpu->ctr = cpu->r[0];
|
|
/* 02696E60 */ _t28 = cpu->r[31] + 0x00000188u;
|
|
/* 02696E60 */ rbrew_write32(cpu->mem, _t28, cpu->r[28]);
|
|
L_02696E64: ; // 0x2696e64
|
|
/* 02696E64 */ cpu->r[0] = 0x00000000u;
|
|
/* 02696E68 */ _t29 = cpu->r[10] + 0x00000008u;
|
|
/* 02696E68 */ rbrew_write32(cpu->mem, _t29, cpu->r[0]);
|
|
/* 02696E68 */ cpu->r[10] = _t29;
|
|
/* 02696E6C */ _t30 = cpu->r[10] + 0x00000004u;
|
|
/* 02696E6C */ rbrew_write32(cpu->mem, _t30, cpu->r[0]);
|
|
/* 02696E70 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02696E70 */ _t31 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02696E70 */ _t32 = _t31 >> (0x00000002u & 31u);
|
|
/* 02696E70 */ _t33 = _t32 & 0x00000001u;
|
|
/* 02696E70 */ if (_t33) goto L_02696E64; else goto L_02696E74;
|
|
L_02696E74: ; // 0x2696e74
|
|
/* 02696E74 */ cpu->r[4] = cpu->r[29];
|
|
/* 02696E78 */ cpu->r[3] = 0x00000000u;
|
|
/* 02696E7C */ cpu->r[5] = cpu->r[31];
|
|
/* 02696E80 */ Gambit_fn_026809B0(cpu);
|
|
/* 02696E84 */ _t34 = cpu->r[31] + 0x00000010u;
|
|
/* 02696E84 */ rbrew_write32(cpu->mem, _t34, cpu->r[3]);
|
|
/* 02696E88 */ cpu->r[4] = cpu->r[29];
|
|
/* 02696E8C */ cpu->r[3] = 0x00000000u;
|
|
/* 02696E90 */ cpu->r[5] = cpu->r[31];
|
|
/* 02696E94 */ Gambit_fn_02681864(cpu);
|
|
/* 02696E98 */ _t35 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02696E98 */ rbrew_write32(cpu->mem, _t35, cpu->r[3]);
|
|
/* 02696E9C */ cpu->r[4] = cpu->r[29];
|
|
/* 02696EA0 */ cpu->r[3] = 0x00000000u;
|
|
/* 02696EA4 */ cpu->r[5] = cpu->r[31];
|
|
/* 02696EA8 */ Gambit_fn_026956AC(cpu);
|
|
/* 02696EAC */ _t36 = cpu->r[31] + 0x00000014u;
|
|
/* 02696EAC */ rbrew_write32(cpu->mem, _t36, cpu->r[3]);
|
|
/* 02696EB0 */ cpu->r[5] = cpu->r[31];
|
|
/* 02696EB4 */ cpu->r[3] = 0x00000000u;
|
|
/* 02696EB8 */ cpu->r[4] = cpu->r[29];
|
|
/* 02696EBC */ Gambit_fn_02693D48(cpu);
|
|
/* 02696EC0 */ _t37 = cpu->r[31] + 0x00000018u;
|
|
/* 02696EC0 */ rbrew_write32(cpu->mem, _t37, cpu->r[3]);
|
|
/* 02696EC4 */ cpu->r[4] = cpu->r[29];
|
|
/* 02696EC8 */ cpu->r[5] = cpu->r[31];
|
|
/* 02696ECC */ cpu->r[3] = 0x00000000u;
|
|
/* 02696ED0 */ cpu->r[6] = cpu->r[30];
|
|
/* 02696ED4 */ Gambit_fn_026938D4(cpu);
|
|
/* 02696ED8 */ _t38 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02696ED8 */ rbrew_write32(cpu->mem, _t38, cpu->r[3]);
|
|
L_02696EDC: ; // 0x2696edc
|
|
/* 02696EDC */ cpu->r[3] = cpu->r[31];
|
|
/* 02696EE0 */ /* nop */
|
|
/* 02696EE4 */ _t39 = cpu->r[1] + 0x00000024u;
|
|
/* 02696EE4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02696EE8 */ cpu->lr = cpu->r[0];
|
|
/* 02696EEC */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 02696EF0 */ return;
|
|
}
|
|
|
|
// fn_02696EF4 @ 0x2696ef4
|
|
void Gambit_fn_02696EF4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_02696EF4: ; // 0x2696ef4
|
|
/* 02696EF4 */ cpu->r[0] = cpu->lr;
|
|
/* 02696EF8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02696EF8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02696EF8 */ cpu->r[1] = _t0;
|
|
/* 02696EFC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02696EFC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02696F00 */ cpu->r[31] = cpu->r[3];
|
|
/* 02696F04 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02696F04 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02696F08 */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02696F08 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02696F0C */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 02696F0C */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02696F10 */ _t5 = cpu->r[12] + 0x00000014u;
|
|
/* 02696F10 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02696F14 */ cpu->ctr = cpu->r[0];
|
|
/* 02696F18 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02696F1C */ _t6 = cpu->r[31] + 0x00000014u;
|
|
/* 02696F1C */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02696F20 */ _t7 = cpu->r[3] + 0x00000004u;
|
|
/* 02696F20 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02696F24 */ _t8 = cpu->r[12] + 0x00000014u;
|
|
/* 02696F24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02696F28 */ cpu->ctr = cpu->r[0];
|
|
/* 02696F2C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02696F30 */ _t9 = cpu->r[31] + 0x00000018u;
|
|
/* 02696F30 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02696F34 */ _t10 = cpu->r[3] + 0x00000004u;
|
|
/* 02696F34 */ cpu->r[11] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02696F38 */ _t11 = cpu->r[11] + 0x00000014u;
|
|
/* 02696F38 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02696F3C */ cpu->ctr = cpu->r[0];
|
|
/* 02696F40 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02696F44 */ _t12 = cpu->r[31] + 0x00000010u;
|
|
/* 02696F44 */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02696F48 */ Gambit_fn_02680C44(cpu);
|
|
/* 02696F4C */ _t13 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02696F4C */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02696F50 */ Gambit_fn_02681E20(cpu);
|
|
/* 02696F54 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02696F54 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02696F58 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02696F58 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02696F5C */ cpu->lr = cpu->r[0];
|
|
/* 02696F60 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02696F64 */ return;
|
|
}
|
|
|
|
// fn_02696EF8 @ 0x2696ef8
|
|
void Gambit_fn_02696EF8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_02696EF8: ; // 0x2696ef8
|
|
/* 02696EF8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02696EF8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02696EF8 */ cpu->r[1] = _t0;
|
|
/* 02696EFC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02696EFC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02696F00 */ cpu->r[31] = cpu->r[3];
|
|
/* 02696F04 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02696F04 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02696F08 */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02696F08 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02696F0C */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 02696F0C */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02696F10 */ _t5 = cpu->r[12] + 0x00000014u;
|
|
/* 02696F10 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02696F14 */ cpu->ctr = cpu->r[0];
|
|
/* 02696F18 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02696F1C */ _t6 = cpu->r[31] + 0x00000014u;
|
|
/* 02696F1C */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02696F20 */ _t7 = cpu->r[3] + 0x00000004u;
|
|
/* 02696F20 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02696F24 */ _t8 = cpu->r[12] + 0x00000014u;
|
|
/* 02696F24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02696F28 */ cpu->ctr = cpu->r[0];
|
|
/* 02696F2C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02696F30 */ _t9 = cpu->r[31] + 0x00000018u;
|
|
/* 02696F30 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02696F34 */ _t10 = cpu->r[3] + 0x00000004u;
|
|
/* 02696F34 */ cpu->r[11] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02696F38 */ _t11 = cpu->r[11] + 0x00000014u;
|
|
/* 02696F38 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02696F3C */ cpu->ctr = cpu->r[0];
|
|
/* 02696F40 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02696F44 */ _t12 = cpu->r[31] + 0x00000010u;
|
|
/* 02696F44 */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02696F48 */ Gambit_fn_02680C44(cpu);
|
|
/* 02696F4C */ _t13 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02696F4C */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02696F50 */ Gambit_fn_02681E20(cpu);
|
|
/* 02696F54 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02696F54 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02696F58 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02696F58 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02696F5C */ cpu->lr = cpu->r[0];
|
|
/* 02696F60 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02696F64 */ return;
|
|
}
|
|
|
|
// fn_02696F68 @ 0x2696f68
|
|
void Gambit_fn_02696F68(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_02696F68: ; // 0x2696f68
|
|
/* 02696F68 */ cpu->r[0] = cpu->lr;
|
|
/* 02696F6C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02696F6C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02696F6C */ cpu->r[1] = _t0;
|
|
/* 02696F70 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02696F70 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02696F74 */ cpu->r[31] = cpu->r[3];
|
|
/* 02696F78 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02696F78 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02696F7C */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02696F7C */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02696F80 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 02696F80 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02696F84 */ _t5 = cpu->r[12] + 0x0000001Cu;
|
|
/* 02696F84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02696F88 */ cpu->ctr = cpu->r[0];
|
|
/* 02696F8C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02696F90 */ _t6 = cpu->r[31] + 0x00000014u;
|
|
/* 02696F90 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02696F94 */ _t7 = cpu->r[3] + 0x00000004u;
|
|
/* 02696F94 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02696F98 */ _t8 = cpu->r[12] + 0x0000001Cu;
|
|
/* 02696F98 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02696F9C */ cpu->ctr = cpu->r[0];
|
|
/* 02696FA0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02696FA4 */ _t9 = cpu->r[31] + 0x00000018u;
|
|
/* 02696FA4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02696FA8 */ _t10 = cpu->r[3] + 0x00000004u;
|
|
/* 02696FA8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02696FAC */ _t11 = cpu->r[12] + 0x0000001Cu;
|
|
/* 02696FAC */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02696FB0 */ cpu->ctr = cpu->r[12];
|
|
/* 02696FB4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02696FB8 */ _t12 = cpu->r[31] + 0x00000010u;
|
|
/* 02696FB8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02696FBC */ Gambit_fn_02680B98(cpu);
|
|
/* 02696FC0 */ _t13 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02696FC0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02696FC4 */ Gambit_fn_02681A34(cpu);
|
|
/* 02696FC8 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02696FC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02696FCC */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02696FCC */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02696FD0 */ cpu->lr = cpu->r[0];
|
|
/* 02696FD4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02696FD8 */ return;
|
|
}
|
|
|
|
// fn_02696F6C @ 0x2696f6c
|
|
void Gambit_fn_02696F6C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_02696F6C: ; // 0x2696f6c
|
|
/* 02696F6C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02696F6C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02696F6C */ cpu->r[1] = _t0;
|
|
/* 02696F70 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02696F70 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02696F74 */ cpu->r[31] = cpu->r[3];
|
|
/* 02696F78 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02696F78 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02696F7C */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02696F7C */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02696F80 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 02696F80 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02696F84 */ _t5 = cpu->r[12] + 0x0000001Cu;
|
|
/* 02696F84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02696F88 */ cpu->ctr = cpu->r[0];
|
|
/* 02696F8C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02696F90 */ _t6 = cpu->r[31] + 0x00000014u;
|
|
/* 02696F90 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02696F94 */ _t7 = cpu->r[3] + 0x00000004u;
|
|
/* 02696F94 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02696F98 */ _t8 = cpu->r[12] + 0x0000001Cu;
|
|
/* 02696F98 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02696F9C */ cpu->ctr = cpu->r[0];
|
|
/* 02696FA0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02696FA4 */ _t9 = cpu->r[31] + 0x00000018u;
|
|
/* 02696FA4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02696FA8 */ _t10 = cpu->r[3] + 0x00000004u;
|
|
/* 02696FA8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02696FAC */ _t11 = cpu->r[12] + 0x0000001Cu;
|
|
/* 02696FAC */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02696FB0 */ cpu->ctr = cpu->r[12];
|
|
/* 02696FB4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02696FB8 */ _t12 = cpu->r[31] + 0x00000010u;
|
|
/* 02696FB8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02696FBC */ Gambit_fn_02680B98(cpu);
|
|
/* 02696FC0 */ _t13 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02696FC0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02696FC4 */ Gambit_fn_02681A34(cpu);
|
|
/* 02696FC8 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02696FC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02696FCC */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02696FCC */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02696FD0 */ cpu->lr = cpu->r[0];
|
|
/* 02696FD4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02696FD8 */ return;
|
|
}
|
|
|
|
// fn_02696FDC @ 0x2696fdc
|
|
void Gambit_fn_02696FDC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_02696FDC: ; // 0x2696fdc
|
|
/* 02696FDC */ cpu->r[0] = cpu->lr;
|
|
/* 02696FE0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02696FE0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02696FE0 */ cpu->r[1] = _t0;
|
|
/* 02696FE4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02696FE4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02696FE8 */ cpu->r[31] = cpu->r[3];
|
|
/* 02696FEC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02696FEC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02696FF0 */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02696FF0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02696FF4 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 02696FF4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02696FF8 */ _t5 = cpu->r[12] + 0x00000024u;
|
|
/* 02696FF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02696FFC */ cpu->ctr = cpu->r[0];
|
|
/* 02697000 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02697004 */ _t6 = cpu->r[31] + 0x00000014u;
|
|
/* 02697004 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02697008 */ _t7 = cpu->r[3] + 0x00000004u;
|
|
/* 02697008 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269700C */ _t8 = cpu->r[12] + 0x00000024u;
|
|
/* 0269700C */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02697010 */ cpu->ctr = cpu->r[0];
|
|
/* 02697014 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02697018 */ _t9 = cpu->r[31] + 0x00000018u;
|
|
/* 02697018 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269701C */ _t10 = cpu->r[3] + 0x00000004u;
|
|
/* 0269701C */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02697020 */ _t11 = cpu->r[12] + 0x00000024u;
|
|
/* 02697020 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02697024 */ cpu->ctr = cpu->r[12];
|
|
/* 02697028 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0269702C */ _t12 = cpu->r[31] + 0x00000010u;
|
|
/* 0269702C */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02697030 */ Gambit_fn_02680D9C(cpu);
|
|
/* 02697034 */ _t13 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02697034 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02697038 */ Gambit_fn_026820AC(cpu);
|
|
/* 0269703C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 0269703C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02697040 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02697040 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02697044 */ cpu->lr = cpu->r[0];
|
|
/* 02697048 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0269704C */ return;
|
|
}
|
|
|
|
// fn_02696FE0 @ 0x2696fe0
|
|
void Gambit_fn_02696FE0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_02696FE0: ; // 0x2696fe0
|
|
/* 02696FE0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02696FE0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02696FE0 */ cpu->r[1] = _t0;
|
|
/* 02696FE4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02696FE4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02696FE8 */ cpu->r[31] = cpu->r[3];
|
|
/* 02696FEC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02696FEC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02696FF0 */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02696FF0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02696FF4 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 02696FF4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02696FF8 */ _t5 = cpu->r[12] + 0x00000024u;
|
|
/* 02696FF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02696FFC */ cpu->ctr = cpu->r[0];
|
|
/* 02697000 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02697004 */ _t6 = cpu->r[31] + 0x00000014u;
|
|
/* 02697004 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02697008 */ _t7 = cpu->r[3] + 0x00000004u;
|
|
/* 02697008 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269700C */ _t8 = cpu->r[12] + 0x00000024u;
|
|
/* 0269700C */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02697010 */ cpu->ctr = cpu->r[0];
|
|
/* 02697014 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02697018 */ _t9 = cpu->r[31] + 0x00000018u;
|
|
/* 02697018 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269701C */ _t10 = cpu->r[3] + 0x00000004u;
|
|
/* 0269701C */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02697020 */ _t11 = cpu->r[12] + 0x00000024u;
|
|
/* 02697020 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02697024 */ cpu->ctr = cpu->r[12];
|
|
/* 02697028 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0269702C */ _t12 = cpu->r[31] + 0x00000010u;
|
|
/* 0269702C */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02697030 */ Gambit_fn_02680D9C(cpu);
|
|
/* 02697034 */ _t13 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02697034 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02697038 */ Gambit_fn_026820AC(cpu);
|
|
/* 0269703C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 0269703C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02697040 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02697040 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02697044 */ cpu->lr = cpu->r[0];
|
|
/* 02697048 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0269704C */ return;
|
|
}
|
|
|
|
// fn_02697050 @ 0x2697050
|
|
void Gambit_fn_02697050(CPUState* cpu) {
|
|
uint32_t _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_02697050: ; // 0x2697050
|
|
/* 02697050 */ cpu->r[0] = cpu->lr;
|
|
/* 02697054 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02697054 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02697054 */ cpu->r[1] = _t0;
|
|
/* 02697058 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02697058 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0269705C */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269705C */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 02697060 */ cpu->r[31] = cpu->r[3];
|
|
/* 02697064 */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 02697064 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 02697068 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02697068 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0269706C */ rbrew_dispatch(cpu, 0x02d0ab30u);
|
|
/* 02697070 */ cpu->r[29] = cpu->r[3];
|
|
/* 02697074 */ _t5 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02697074 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02697078 */ _t6 = cpu->r[3] + 0x00000004u;
|
|
/* 02697078 */ cpu->r[11] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0269707C */ _t7 = cpu->r[11] + 0x0000002Cu;
|
|
/* 0269707C */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02697080 */ cpu->ctr = cpu->r[0];
|
|
/* 02697084 */ cpu->r[30] = cpu->r[4];
|
|
/* 02697088 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0269708C */ _t8 = cpu->r[31] + 0x00000014u;
|
|
/* 0269708C */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02697090 */ _t9 = cpu->r[3] + 0x00000004u;
|
|
/* 02697090 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02697094 */ _t10 = cpu->r[12] + 0x0000002Cu;
|
|
/* 02697094 */ cpu->r[10] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02697098 */ cpu->ctr = cpu->r[10];
|
|
/* 0269709C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 026970A0 */ _t11 = cpu->r[31] + 0x00000018u;
|
|
/* 026970A0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
/* 026970A4 */ _t12 = cpu->r[3] + 0x00000004u;
|
|
/* 026970A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 026970A8 */ _t13 = cpu->r[12] + 0x0000002Cu;
|
|
/* 026970A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 026970AC */ cpu->ctr = cpu->r[0];
|
|
/* 026970B0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 026970B4 */ _t14 = cpu->r[31] + 0x00000010u;
|
|
/* 026970B4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 026970B8 */ Gambit_fn_02680DA0(cpu);
|
|
/* 026970BC */ _t15 = cpu->r[31] + 0x0000000Cu;
|
|
/* 026970BC */ cpu->r[3] = rbrew_read32(cpu->mem, _t15);
|
|
/* 026970C0 */ Gambit_fn_02682F10(cpu);
|
|
/* 026970C4 */ rbrew_dispatch(cpu, 0x02d0ab30u);
|
|
/* 026970C8 */ cpu->r[0] = cpu->r[4] - cpu->r[30];
|
|
/* 026970CC */ _t16 = cpu->r[31] + 0x0000016Cu;
|
|
/* 026970CC */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 026970D0 */ cpu->r[9] = cpu->r[3] - cpu->r[29];
|
|
/* 026970D4 */ _t17 = cpu->r[31] + 0x00000168u;
|
|
/* 026970D4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t17);
|
|
/* 026970D8 */ cpu->r[0] = cpu->r[11] + cpu->r[0];
|
|
/* 026970DC */ cpu->r[12] = cpu->r[10] + cpu->r[9];
|
|
/* 026970E0 */ _t18 = cpu->r[31] + 0x0000016Cu;
|
|
/* 026970E0 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
/* 026970E4 */ _t19 = cpu->r[31] + 0x00000168u;
|
|
/* 026970E4 */ rbrew_write32(cpu->mem, _t19, cpu->r[12]);
|
|
/* 026970E8 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026970E8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t20);
|
|
/* 026970EC */ _t21 = cpu->r[1] + 0x0000001Cu;
|
|
/* 026970EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 026970F0 */ _t22 = cpu->r[1] + 0x00000014u;
|
|
/* 026970F0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t22);
|
|
/* 026970F4 */ cpu->lr = cpu->r[0];
|
|
/* 026970F8 */ _t23 = cpu->r[1] + 0x00000010u;
|
|
/* 026970F8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t23);
|
|
/* 026970FC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02697100 */ return;
|
|
}
|
|
|
|
// fn_02697054 @ 0x2697054
|
|
void Gambit_fn_02697054(CPUState* cpu) {
|
|
uint32_t _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_02697054: ; // 0x2697054
|
|
/* 02697054 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02697054 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02697054 */ cpu->r[1] = _t0;
|
|
/* 02697058 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02697058 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0269705C */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269705C */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 02697060 */ cpu->r[31] = cpu->r[3];
|
|
/* 02697064 */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 02697064 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 02697068 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02697068 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0269706C */ rbrew_dispatch(cpu, 0x02d0ab30u);
|
|
/* 02697070 */ cpu->r[29] = cpu->r[3];
|
|
/* 02697074 */ _t5 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02697074 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02697078 */ _t6 = cpu->r[3] + 0x00000004u;
|
|
/* 02697078 */ cpu->r[11] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0269707C */ _t7 = cpu->r[11] + 0x0000002Cu;
|
|
/* 0269707C */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02697080 */ cpu->ctr = cpu->r[0];
|
|
/* 02697084 */ cpu->r[30] = cpu->r[4];
|
|
/* 02697088 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0269708C */ _t8 = cpu->r[31] + 0x00000014u;
|
|
/* 0269708C */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02697090 */ _t9 = cpu->r[3] + 0x00000004u;
|
|
/* 02697090 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02697094 */ _t10 = cpu->r[12] + 0x0000002Cu;
|
|
/* 02697094 */ cpu->r[10] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02697098 */ cpu->ctr = cpu->r[10];
|
|
/* 0269709C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 026970A0 */ _t11 = cpu->r[31] + 0x00000018u;
|
|
/* 026970A0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
/* 026970A4 */ _t12 = cpu->r[3] + 0x00000004u;
|
|
/* 026970A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 026970A8 */ _t13 = cpu->r[12] + 0x0000002Cu;
|
|
/* 026970A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 026970AC */ cpu->ctr = cpu->r[0];
|
|
/* 026970B0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 026970B4 */ _t14 = cpu->r[31] + 0x00000010u;
|
|
/* 026970B4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 026970B8 */ Gambit_fn_02680DA0(cpu);
|
|
/* 026970BC */ _t15 = cpu->r[31] + 0x0000000Cu;
|
|
/* 026970BC */ cpu->r[3] = rbrew_read32(cpu->mem, _t15);
|
|
/* 026970C0 */ Gambit_fn_02682F10(cpu);
|
|
/* 026970C4 */ rbrew_dispatch(cpu, 0x02d0ab30u);
|
|
/* 026970C8 */ cpu->r[0] = cpu->r[4] - cpu->r[30];
|
|
/* 026970CC */ _t16 = cpu->r[31] + 0x0000016Cu;
|
|
/* 026970CC */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 026970D0 */ cpu->r[9] = cpu->r[3] - cpu->r[29];
|
|
/* 026970D4 */ _t17 = cpu->r[31] + 0x00000168u;
|
|
/* 026970D4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t17);
|
|
/* 026970D8 */ cpu->r[0] = cpu->r[11] + cpu->r[0];
|
|
/* 026970DC */ cpu->r[12] = cpu->r[10] + cpu->r[9];
|
|
/* 026970E0 */ _t18 = cpu->r[31] + 0x0000016Cu;
|
|
/* 026970E0 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
/* 026970E4 */ _t19 = cpu->r[31] + 0x00000168u;
|
|
/* 026970E4 */ rbrew_write32(cpu->mem, _t19, cpu->r[12]);
|
|
/* 026970E8 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026970E8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t20);
|
|
/* 026970EC */ _t21 = cpu->r[1] + 0x0000001Cu;
|
|
/* 026970EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 026970F0 */ _t22 = cpu->r[1] + 0x00000014u;
|
|
/* 026970F0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t22);
|
|
/* 026970F4 */ cpu->lr = cpu->r[0];
|
|
/* 026970F8 */ _t23 = cpu->r[1] + 0x00000010u;
|
|
/* 026970F8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t23);
|
|
/* 026970FC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02697100 */ return;
|
|
}
|
|
|
|
// fn_02697104 @ 0x2697104
|
|
void Gambit_fn_02697104(CPUState* cpu) {
|
|
uint32_t _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_02697104: ; // 0x2697104
|
|
/* 02697104 */ cpu->r[0] = cpu->lr;
|
|
/* 02697108 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02697108 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02697108 */ cpu->r[1] = _t0;
|
|
/* 0269710C */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0269710C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02697110 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02697110 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 02697114 */ cpu->r[31] = cpu->r[3];
|
|
/* 02697118 */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 02697118 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 0269711C */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269711C */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02697120 */ rbrew_dispatch(cpu, 0x02d0ab30u);
|
|
/* 02697124 */ cpu->r[29] = cpu->r[3];
|
|
/* 02697128 */ _t5 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02697128 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0269712C */ _t6 = cpu->r[3] + 0x00000004u;
|
|
/* 0269712C */ cpu->r[11] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02697130 */ _t7 = cpu->r[11] + 0x00000034u;
|
|
/* 02697130 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02697134 */ cpu->ctr = cpu->r[0];
|
|
/* 02697138 */ cpu->r[30] = cpu->r[4];
|
|
/* 0269713C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02697140 */ _t8 = cpu->r[31] + 0x00000014u;
|
|
/* 02697140 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02697144 */ _t9 = cpu->r[3] + 0x00000004u;
|
|
/* 02697144 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02697148 */ _t10 = cpu->r[12] + 0x00000034u;
|
|
/* 02697148 */ cpu->r[10] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269714C */ cpu->ctr = cpu->r[10];
|
|
/* 02697150 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02697154 */ _t11 = cpu->r[31] + 0x00000018u;
|
|
/* 02697154 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02697158 */ _t12 = cpu->r[3] + 0x00000004u;
|
|
/* 02697158 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0269715C */ _t13 = cpu->r[12] + 0x00000034u;
|
|
/* 0269715C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02697160 */ cpu->ctr = cpu->r[0];
|
|
/* 02697164 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02697168 */ _t14 = cpu->r[31] + 0x00000010u;
|
|
/* 02697168 */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0269716C */ Gambit_fn_02681764(cpu);
|
|
/* 02697170 */ _t15 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02697170 */ cpu->r[3] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02697174 */ Gambit_fn_02684540(cpu);
|
|
/* 02697178 */ rbrew_dispatch(cpu, 0x02d0ab30u);
|
|
/* 0269717C */ cpu->r[0] = cpu->r[4] - cpu->r[30];
|
|
/* 02697180 */ _t16 = cpu->r[31] + 0x00000174u;
|
|
/* 02697180 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02697184 */ cpu->r[9] = cpu->r[3] - cpu->r[29];
|
|
/* 02697188 */ _t17 = cpu->r[31] + 0x00000170u;
|
|
/* 02697188 */ cpu->r[10] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0269718C */ cpu->r[0] = cpu->r[11] + cpu->r[0];
|
|
/* 02697190 */ cpu->r[12] = cpu->r[10] + cpu->r[9];
|
|
/* 02697194 */ _t18 = cpu->r[31] + 0x00000174u;
|
|
/* 02697194 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
/* 02697198 */ _t19 = cpu->r[31] + 0x00000170u;
|
|
/* 02697198 */ rbrew_write32(cpu->mem, _t19, cpu->r[12]);
|
|
/* 0269719C */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269719C */ cpu->r[29] = rbrew_read32(cpu->mem, _t20);
|
|
/* 026971A0 */ _t21 = cpu->r[1] + 0x0000001Cu;
|
|
/* 026971A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 026971A4 */ _t22 = cpu->r[1] + 0x00000014u;
|
|
/* 026971A4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t22);
|
|
/* 026971A8 */ cpu->lr = cpu->r[0];
|
|
/* 026971AC */ _t23 = cpu->r[1] + 0x00000010u;
|
|
/* 026971AC */ cpu->r[30] = rbrew_read32(cpu->mem, _t23);
|
|
/* 026971B0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 026971B4 */ return;
|
|
}
|
|
|
|
// fn_02697108 @ 0x2697108
|
|
void Gambit_fn_02697108(CPUState* cpu) {
|
|
uint32_t _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_02697108: ; // 0x2697108
|
|
/* 02697108 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02697108 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02697108 */ cpu->r[1] = _t0;
|
|
/* 0269710C */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0269710C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02697110 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02697110 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 02697114 */ cpu->r[31] = cpu->r[3];
|
|
/* 02697118 */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 02697118 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 0269711C */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269711C */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02697120 */ rbrew_dispatch(cpu, 0x02d0ab30u);
|
|
/* 02697124 */ cpu->r[29] = cpu->r[3];
|
|
/* 02697128 */ _t5 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02697128 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0269712C */ _t6 = cpu->r[3] + 0x00000004u;
|
|
/* 0269712C */ cpu->r[11] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02697130 */ _t7 = cpu->r[11] + 0x00000034u;
|
|
/* 02697130 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02697134 */ cpu->ctr = cpu->r[0];
|
|
/* 02697138 */ cpu->r[30] = cpu->r[4];
|
|
/* 0269713C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02697140 */ _t8 = cpu->r[31] + 0x00000014u;
|
|
/* 02697140 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02697144 */ _t9 = cpu->r[3] + 0x00000004u;
|
|
/* 02697144 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02697148 */ _t10 = cpu->r[12] + 0x00000034u;
|
|
/* 02697148 */ cpu->r[10] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269714C */ cpu->ctr = cpu->r[10];
|
|
/* 02697150 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02697154 */ _t11 = cpu->r[31] + 0x00000018u;
|
|
/* 02697154 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02697158 */ _t12 = cpu->r[3] + 0x00000004u;
|
|
/* 02697158 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0269715C */ _t13 = cpu->r[12] + 0x00000034u;
|
|
/* 0269715C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02697160 */ cpu->ctr = cpu->r[0];
|
|
/* 02697164 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02697168 */ _t14 = cpu->r[31] + 0x00000010u;
|
|
/* 02697168 */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0269716C */ Gambit_fn_02681764(cpu);
|
|
/* 02697170 */ _t15 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02697170 */ cpu->r[3] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02697174 */ Gambit_fn_02684540(cpu);
|
|
/* 02697178 */ rbrew_dispatch(cpu, 0x02d0ab30u);
|
|
/* 0269717C */ cpu->r[0] = cpu->r[4] - cpu->r[30];
|
|
/* 02697180 */ _t16 = cpu->r[31] + 0x00000174u;
|
|
/* 02697180 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02697184 */ cpu->r[9] = cpu->r[3] - cpu->r[29];
|
|
/* 02697188 */ _t17 = cpu->r[31] + 0x00000170u;
|
|
/* 02697188 */ cpu->r[10] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0269718C */ cpu->r[0] = cpu->r[11] + cpu->r[0];
|
|
/* 02697190 */ cpu->r[12] = cpu->r[10] + cpu->r[9];
|
|
/* 02697194 */ _t18 = cpu->r[31] + 0x00000174u;
|
|
/* 02697194 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
/* 02697198 */ _t19 = cpu->r[31] + 0x00000170u;
|
|
/* 02697198 */ rbrew_write32(cpu->mem, _t19, cpu->r[12]);
|
|
/* 0269719C */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269719C */ cpu->r[29] = rbrew_read32(cpu->mem, _t20);
|
|
/* 026971A0 */ _t21 = cpu->r[1] + 0x0000001Cu;
|
|
/* 026971A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 026971A4 */ _t22 = cpu->r[1] + 0x00000014u;
|
|
/* 026971A4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t22);
|
|
/* 026971A8 */ cpu->lr = cpu->r[0];
|
|
/* 026971AC */ _t23 = cpu->r[1] + 0x00000010u;
|
|
/* 026971AC */ cpu->r[30] = rbrew_read32(cpu->mem, _t23);
|
|
/* 026971B0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 026971B4 */ return;
|
|
}
|
|
|
|
// fn_026971B8 @ 0x26971b8
|
|
void Gambit_fn_026971B8(CPUState* cpu) {
|
|
uint32_t _t0, _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;
|
|
|
|
L_026971B8: ; // 0x26971b8
|
|
/* 026971B8 */ _t0 = cpu->r[1] + 0xFFFFFF68u;
|
|
/* 026971B8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 026971B8 */ cpu->r[1] = _t0;
|
|
/* 026971BC */ /* nop */
|
|
/* 026971C0 */ _t1 = cpu->r[1] + 0x00000088u;
|
|
/* 026971C0 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 026971C4 */ _t2 = cpu->r[1] + 0x00000078u;
|
|
/* 026971C4 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[30]);
|
|
/* 026971C8 */ /* nop */
|
|
/* 026971CC */ _t3 = cpu->r[1] + 0x00000090u;
|
|
/* 026971CC */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 026971D0 */ /* nop */
|
|
/* 026971D4 */ _t4 = cpu->r[1] + 0x00000080u;
|
|
/* 026971D4 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[30]);
|
|
/* 026971D8 */ _t5 = cpu->r[1] + 0x00000068u;
|
|
/* 026971D8 */ rbrew_write_f64(cpu->mem, _t5, cpu->f[29]);
|
|
/* 026971DC */ cpu->r[0] = cpu->lr;
|
|
/* 026971E0 */ _t6 = cpu->r[1] + 0x0000009Cu;
|
|
/* 026971E0 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 026971E4 */ /* nop */
|
|
/* 026971E8 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026971E8 */ rbrew_write32(cpu->mem, _t7, cpu->r[3]);
|
|
/* 026971EC */ _t8 = cpu->r[1] + 0x00000070u;
|
|
/* 026971EC */ rbrew_write_f32(cpu->mem, _t8, cpu->f[29]);
|
|
/* 026971F0 */ rbrew_dispatch(cpu, 0x02d0ab30u);
|
|
/* 026971F4 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026971F4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 026971F8 */ cpu->r[30] = cpu->r[3];
|
|
/* 026971FC */ _t10 = cpu->r[12] + 0x0000001Cu;
|
|
/* 026971FC */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02697200 */ _t11 = cpu->r[3] + 0x00000004u;
|
|
/* 02697200 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02697204 */ _t12 = cpu->r[7] + 0x0000003Cu;
|
|
/* 02697204 */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02697208 */ cpu->ctr = cpu->r[9];
|
|
/* 0269720C */ cpu->r[31] = cpu->r[4];
|
|
/* 02697210 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02697214 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02697214 */ cpu->r[11] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02697218 */ _t14 = cpu->r[11] + 0x00000014u;
|
|
/* 02697218 */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0269721C */ _t15 = cpu->r[3] + 0x00000004u;
|
|
/* 0269721C */ cpu->r[11] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02697220 */ _t16 = cpu->r[11] + 0x0000003Cu;
|
|
/* 02697220 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02697224 */ cpu->ctr = cpu->r[12];
|
|
/* 02697228 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0269722C */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269722C */ cpu->r[10] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02697230 */ _t18 = cpu->r[10] + 0x00000018u;
|
|
/* 02697230 */ cpu->r[3] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02697234 */ _t19 = cpu->r[3] + 0x00000004u;
|
|
/* 02697234 */ cpu->r[4] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02697238 */ _t20 = cpu->r[4] + 0x0000003Cu;
|
|
/* 02697238 */ cpu->r[5] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0269723C */ cpu->ctr = cpu->r[5];
|
|
/* 02697240 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02697244 */ _t21 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02697244 */ cpu->r[8] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02697248 */ _t22 = cpu->r[8] + 0x00000010u;
|
|
/* 02697248 */ cpu->r[3] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0269724C */ Gambit_fn_026817D4(cpu);
|
|
/* 02697250 */ _t23 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02697250 */ cpu->r[6] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02697254 */ _t24 = cpu->r[6] + 0x0000000Cu;
|
|
/* 02697254 */ cpu->r[3] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02697258 */ Gambit_fn_02684594(cpu);
|
|
/* 0269725C */ rbrew_dispatch(cpu, 0x02d0ab30u);
|
|
/* 02697260 */ _t25 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02697260 */ cpu->r[5] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02697264 */ cpu->r[0] = cpu->r[4] - cpu->r[31];
|
|
/* 02697268 */ _t26 = cpu->r[5] + 0x0000017Cu;
|
|
/* 02697268 */ cpu->r[6] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0269726C */ cpu->r[8] = cpu->r[3] - cpu->r[30];
|
|
/* 02697270 */ cpu->r[31] = cpu->r[5] + 0x00000168u;
|
|
/* 02697274 */ _t27 = cpu->r[5] + 0x00000178u;
|
|
/* 02697274 */ cpu->r[4] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02697278 */ cpu->r[0] = cpu->r[6] + cpu->r[0];
|
|
/* 0269727C */ cpu->r[12] = cpu->r[4] + cpu->r[8];
|
|
/* 02697280 */ _t28 = cpu->r[5] + 0x00000188u;
|
|
/* 02697280 */ cpu->r[10] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02697284 */ _t29 = cpu->r[5] + 0x00000178u;
|
|
/* 02697284 */ rbrew_write32(cpu->mem, _t29, cpu->r[12]);
|
|
/* 02697288 */ _t30 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02697288 */ cpu->r[12] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0269728C */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 02697290 */ _t31 = cpu->r[12] + 0x0000017Cu;
|
|
/* 02697290 */ rbrew_write32(cpu->mem, _t31, cpu->r[0]);
|
|
/* 02697294 */ _t32 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02697294 */ cpu->r[11] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02697298 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x0000003Cu);
|
|
/* 0269729C */ _t33 = cpu->r[11] + 0x00000188u;
|
|
/* 0269729C */ rbrew_write32(cpu->mem, _t33, cpu->r[10]);
|
|
/* 026972A0 */ _t34 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026972A0 */ _t35 = _t34 & 0x00000001u;
|
|
/* 026972A0 */ if (_t35) goto L_026976C0; else goto L_026972A4;
|
|
L_026972A4: ; // 0x26972a4
|
|
/* 026972A4 */ _t36 = cpu->r[31] + 0x00000018u;
|
|
/* 026972A4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t36);
|
|
/* 026972A8 */ _t37 = cpu->r[31] + 0x0000001Cu;
|
|
/* 026972A8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t37);
|
|
/* 026972AC */ cpu->r[11] = 0x00000000u;
|
|
L_026972B0: ; // 0x26972b0
|
|
/* 026972B0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[11], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 026972B4 */ cpu->r[10] = cpu->r[31] + cpu->r[0];
|
|
/* 026972B8 */ _t38 = cpu->r[10] + 0x00000004u;
|
|
/* 026972B8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t38);
|
|
/* 026972BC */ _t39 = cpu->r[10] + 0x00000000u;
|
|
/* 026972BC */ cpu->r[6] = rbrew_read32(cpu->mem, _t39);
|
|
/* 026972C0 */ cpu->r[9] = cpu->r[9] + cpu->r[7];
|
|
/* 026972C4 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 026972C8 */ cpu->r[8] = cpu->r[8] + cpu->r[6];
|
|
/* 026972CC */ _t40 = cpu->r[31] + 0x0000001Cu;
|
|
/* 026972CC */ rbrew_write32(cpu->mem, _t40, cpu->r[9]);
|
|
/* 026972D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000004u);
|
|
/* 026972D4 */ _t41 = cpu->r[31] + 0x00000018u;
|
|
/* 026972D4 */ rbrew_write32(cpu->mem, _t41, cpu->r[8]);
|
|
/* 026972D8 */ _t42 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026972D8 */ _t43 = _t42 & 0x00000001u;
|
|
/* 026972D8 */ if (_t43) goto L_026972DC; else goto L_026972F0;
|
|
L_026972DC: ; // 0x26972dc
|
|
/* 026972DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 026972E0 */ _t44 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026972E0 */ _t45 = _t44 & 0x00000001u;
|
|
/* 026972E0 */ if (_t45) goto L_026972E4; else goto L_026972B0;
|
|
L_026972E4: ; // 0x26972e4
|
|
/* 026972E4 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 026972E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000004u);
|
|
/* 026972EC */ _t46 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026972EC */ _t47 = _t46 & 0x00000001u;
|
|
/* 026972EC */ if (_t47) goto L_026972DC; else goto L_026972F0;
|
|
L_026972F0: ; // 0x26972f0
|
|
/* 026972F0 */ cpu->r[5] = 0x100E0000u;
|
|
/* 026972F4 */ cpu->r[30] = cpu->r[31];
|
|
/* 026972F8 */ _t48 = cpu->r[5] + 0x00003D28u;
|
|
/* 026972F8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 026972FC */ cpu->r[29] = 0x00000004u;
|
|
L_02697300: ; // 0x2697300
|
|
/* 02697300 */ _t49 = cpu->r[30] + 0x00000000u;
|
|
/* 02697300 */ cpu->r[3] = rbrew_read32(cpu->mem, _t49);
|
|
/* 02697304 */ _t50 = cpu->r[30] + 0x00000004u;
|
|
/* 02697304 */ cpu->r[4] = rbrew_read32(cpu->mem, _t50);
|
|
/* 02697308 */ Gambit_fn_02C89780(cpu);
|
|
/* 0269730C */ cpu->f[1] = cpu->f[1] / cpu->f[31];
|
|
/* 02697310 */ Gambit_fn_02C898C4(cpu);
|
|
/* 02697314 */ _t51 = cpu->r[30] + 0x00000000u;
|
|
/* 02697314 */ rbrew_write32(cpu->mem, _t51, cpu->r[3]);
|
|
/* 02697318 */ _t52 = cpu->r[30] + 0x00000004u;
|
|
/* 02697318 */ rbrew_write32(cpu->mem, _t52, cpu->r[4]);
|
|
/* 0269731C */ cpu->r[29] = cpu->r[29] + 0xFFFFFFFFu;
|
|
/* 0269731C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02697320 */ cpu->r[30] = cpu->r[30] + 0x00000008u;
|
|
/* 02697324 */ _t53 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02697324 */ _t54 = _t53 & 0x00000001u;
|
|
/* 02697324 */ if (_t54) goto L_02697328; else goto L_02697300;
|
|
L_02697328: ; // 0x2697328
|
|
/* 02697328 */ _t55 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02697328 */ cpu->r[9] = rbrew_read32(cpu->mem, _t55);
|
|
/* 0269732C */ cpu->r[17] = 0x00000000u;
|
|
/* 02697330 */ cpu->r[23] = 0x101D0000u;
|
|
/* 02697334 */ cpu->r[27] = 0x101D0000u;
|
|
/* 02697338 */ cpu->r[20] = cpu->r[17];
|
|
/* 0269733C */ cpu->r[11] = 0x100E0000u;
|
|
/* 02697340 */ cpu->r[0] = 0x00000004u;
|
|
/* 02697344 */ cpu->r[4] = 0x101F0000u;
|
|
/* 02697348 */ _t56 = cpu->r[11] + 0x00003D2Cu;
|
|
/* 02697348 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 0269734C */ cpu->r[30] = 0x101D0000u;
|
|
/* 02697350 */ cpu->r[4] = cpu->r[4] + 0x00006C30u;
|
|
/* 02697354 */ _t57 = cpu->r[1] + 0x00000008u;
|
|
/* 02697354 */ rbrew_write32(cpu->mem, _t57, cpu->r[0]);
|
|
/* 02697358 */ cpu->r[22] = 0x7BD00000u;
|
|
/* 0269735C */ _t58 = cpu->r[4] + 0x00000000u;
|
|
/* 0269735C */ cpu->r[24] = rbrew_read32(cpu->mem, _t58);
|
|
/* 02697360 */ cpu->r[30] = cpu->r[30] + 0x00000E44u;
|
|
/* 02697364 */ cpu->r[22] = cpu->r[22] + 0x00005AF6u;
|
|
/* 02697368 */ _t59 = cpu->r[4] + 0x00000004u;
|
|
/* 02697368 */ cpu->r[25] = rbrew_read32(cpu->mem, _t59);
|
|
/* 0269736C */ cpu->r[19] = 0x84300000u;
|
|
/* 02697370 */ cpu->r[18] = cpu->r[9] + 0xFFFFFFE8u;
|
|
/* 02697374 */ cpu->r[26] = cpu->r[20];
|
|
/* 02697378 */ cpu->r[28] = 0x101D0000u;
|
|
/* 0269737C */ cpu->r[29] = 0x101D0000u;
|
|
/* 02697380 */ cpu->r[14] = 0xFFFFF79Cu;
|
|
/* 02697384 */ cpu->r[19] = cpu->r[19] + 0xFFFFA50Au;
|
|
/* 02697388 */ cpu->r[15] = 0x100E0000u;
|
|
/* 0269738C */ cpu->r[21] = 0x00000863u;
|
|
L_02697390: ; // 0x2697390
|
|
/* 02697390 */ _t60 = cpu->r[28] + 0x00000DE8u;
|
|
/* 02697390 */ cpu->r[5] = rbrew_read32(cpu->mem, _t60);
|
|
/* 02697394 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 02697398 */ _t61 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02697398 */ _t62 = _t61 & 0x00000001u;
|
|
/* 02697398 */ if (_t62) goto L_0269739C; else goto L_026973B8;
|
|
L_0269739C: ; // 0x269739c
|
|
/* 0269739C */ cpu->r[8] = 0x00000001u;
|
|
/* 026973A0 */ cpu->r[4] = 0x101D0000u;
|
|
/* 026973A4 */ cpu->r[3] = cpu->r[29] + 0x000055FAu;
|
|
/* 026973A8 */ cpu->r[5] = 0x00000023u;
|
|
/* 026973AC */ cpu->r[4] = cpu->r[4] + 0xFFFF802Cu;
|
|
/* 026973B0 */ _t63 = cpu->r[28] + 0x00000DE8u;
|
|
/* 026973B0 */ rbrew_write32(cpu->mem, _t63, cpu->r[8]);
|
|
/* 026973B4 */ rbrew_dispatch(cpu, 0x02d0b870u);
|
|
L_026973B8: ; // 0x26973b8
|
|
/* 026973B8 */ _t64 = cpu->r[27] + 0x00000DE4u;
|
|
/* 026973B8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t64);
|
|
/* 026973BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 026973C0 */ _t65 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026973C0 */ _t66 = _t65 & 0x00000001u;
|
|
/* 026973C0 */ if (_t66) goto L_026973C4; else goto L_026973D0;
|
|
L_026973C4: ; // 0x26973c4
|
|
/* 026973C4 */ cpu->r[7] = 0x00000001u;
|
|
/* 026973C8 */ _t67 = cpu->r[23] + 0x00000E40u;
|
|
/* 026973C8 */ rbrew_write32(cpu->mem, _t67, cpu->r[26]);
|
|
/* 026973CC */ _t68 = cpu->r[27] + 0x00000DE4u;
|
|
/* 026973CC */ rbrew_write32(cpu->mem, _t68, cpu->r[7]);
|
|
L_026973D0: ; // 0x26973d0
|
|
/* 026973D0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[17], 0x00000004u);
|
|
/* 026973D4 */ _t69 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026973D4 */ _t70 = _t69 & 0x00000001u;
|
|
/* 026973D4 */ if (_t70) goto L_02697420; else goto L_026973D8;
|
|
L_026973D8: ; // 0x26973d8
|
|
/* 026973D8 */ cpu->r[6] = 0x00000000u;
|
|
/* 026973DC */ cpu->r[16] = cpu->r[31] + cpu->r[20];
|
|
/* 026973E0 */ _t71 = cpu->r[1] + 0x00000018u;
|
|
/* 026973E0 */ rbrew_write32(cpu->mem, _t71, cpu->r[6]);
|
|
/* 026973E4 */ _t72 = cpu->r[31] + cpu->r[20];
|
|
/* 026973E4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t72);
|
|
/* 026973E8 */ _t73 = cpu->r[16] + 0x00000004u;
|
|
/* 026973E8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t73);
|
|
/* 026973EC */ Gambit_fn_02C89780(cpu);
|
|
/* 026973F0 */ cpu->f[29] = cpu->f[1];
|
|
/* 026973F4 */ cpu->r[3] = cpu->r[24];
|
|
/* 026973F8 */ cpu->r[4] = cpu->r[25];
|
|
/* 026973FC */ Gambit_fn_02C89780(cpu);
|
|
/* 02697400 */ _t74 = cpu->r[16] + 0x00000000u;
|
|
/* 02697400 */ cpu->r[3] = rbrew_read32(cpu->mem, _t74);
|
|
/* 02697404 */ cpu->f[0] = cpu->f[29] / cpu->f[1];
|
|
/* 02697408 */ _t75 = cpu->r[16] + 0x00000004u;
|
|
/* 02697408 */ cpu->r[4] = rbrew_read32(cpu->mem, _t75);
|
|
/* 0269740C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[14], cpu->r[3]);
|
|
/* 02697410 */ cpu->f[29] = cpu->f[0] * cpu->f[31];
|
|
/* 02697414 */ _t76 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02697414 */ _t77 = _t76 & 0x00000001u;
|
|
/* 02697414 */ if (_t77) goto L_026974B4; else goto L_02697418;
|
|
L_02697418: ; // 0x2697418
|
|
/* 02697418 */ _t78 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02697418 */ _t79 = _t78 & 0x00000001u;
|
|
/* 02697418 */ if (_t79) goto L_0269754C; else goto L_0269741C;
|
|
L_0269741C: ; // 0x269741c
|
|
/* 0269741C */ goto L_026974AC;
|
|
L_02697420: ; // 0x2697420
|
|
/* 02697420 */ _t80 = cpu->r[23] + 0x00000E40u;
|
|
/* 02697420 */ cpu->r[0] = rbrew_read32(cpu->mem, _t80);
|
|
/* 02697424 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02697428 */ _t81 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02697428 */ _t82 = _t81 & 0x00000001u;
|
|
/* 02697428 */ if (_t82) goto L_0269742C; else goto L_02697464;
|
|
L_0269742C: ; // 0x269742c
|
|
/* 0269742C */ Gambit_fn_0282A450(cpu);
|
|
/* 02697430 */ cpu->r[16] = cpu->r[3];
|
|
/* 02697434 */ Gambit_fn_02836FFC(cpu);
|
|
/* 02697438 */ _t83 = cpu->r[23] + 0x00000E40u;
|
|
/* 02697438 */ cpu->r[0] = rbrew_read32(cpu->mem, _t83);
|
|
/* 0269743C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02697440 */ _t84 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02697440 */ _t85 = _t84 & 0x00000001u;
|
|
/* 02697440 */ if (_t85) goto L_02697444; else goto L_02697458;
|
|
L_02697444: ; // 0x2697444
|
|
/* 02697444 */ cpu->r[5] = 0x00000004u;
|
|
/* 02697448 */ cpu->r[4] = cpu->r[29] + 0x000055FAu;
|
|
/* 0269744C */ cpu->r[3] = cpu->r[30];
|
|
/* 02697450 */ Gambit_fn_0282A374(cpu);
|
|
/* 02697454 */ _t86 = cpu->r[23] + 0x00000E40u;
|
|
/* 02697454 */ rbrew_write32(cpu->mem, _t86, cpu->r[30]);
|
|
L_02697458: ; // 0x2697458
|
|
/* 02697458 */ cpu->r[3] = cpu->r[16];
|
|
/* 0269745C */ Gambit_fn_02837030(cpu);
|
|
/* 02697460 */ _t87 = cpu->r[23] + 0x00000E40u;
|
|
/* 02697460 */ cpu->r[0] = rbrew_read32(cpu->mem, _t87);
|
|
L_02697464: ; // 0x2697464
|
|
/* 02697464 */ cpu->r[7] = rbrew_rlwinm(cpu->r[17], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02697468 */ _t88 = cpu->r[7] + cpu->r[0];
|
|
/* 02697468 */ cpu->r[5] = rbrew_read32(cpu->mem, _t88);
|
|
/* 0269746C */ cpu->r[16] = cpu->r[31] + cpu->r[20];
|
|
/* 02697470 */ _t89 = cpu->r[1] + 0x00000018u;
|
|
/* 02697470 */ rbrew_write32(cpu->mem, _t89, cpu->r[5]);
|
|
/* 02697474 */ _t90 = cpu->r[31] + cpu->r[20];
|
|
/* 02697474 */ cpu->r[3] = rbrew_read32(cpu->mem, _t90);
|
|
/* 02697478 */ _t91 = cpu->r[16] + 0x00000004u;
|
|
/* 02697478 */ cpu->r[4] = rbrew_read32(cpu->mem, _t91);
|
|
/* 0269747C */ Gambit_fn_02C89780(cpu);
|
|
/* 02697480 */ cpu->f[29] = cpu->f[1];
|
|
/* 02697484 */ cpu->r[3] = cpu->r[24];
|
|
/* 02697488 */ cpu->r[4] = cpu->r[25];
|
|
/* 0269748C */ Gambit_fn_02C89780(cpu);
|
|
/* 02697490 */ _t92 = cpu->r[16] + 0x00000000u;
|
|
/* 02697490 */ cpu->r[3] = rbrew_read32(cpu->mem, _t92);
|
|
/* 02697494 */ cpu->f[0] = cpu->f[29] / cpu->f[1];
|
|
/* 02697498 */ _t93 = cpu->r[16] + 0x00000004u;
|
|
/* 02697498 */ cpu->r[4] = rbrew_read32(cpu->mem, _t93);
|
|
/* 0269749C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[14], cpu->r[3]);
|
|
/* 026974A0 */ cpu->f[29] = cpu->f[0] * cpu->f[31];
|
|
/* 026974A4 */ _t94 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026974A4 */ _t95 = _t94 & 0x00000001u;
|
|
/* 026974A4 */ if (_t95) goto L_026974B4; else goto L_026974A8;
|
|
L_026974A8: ; // 0x26974a8
|
|
/* 026974A8 */ _t96 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 026974A8 */ _t97 = _t96 & 0x00000001u;
|
|
/* 026974A8 */ if (_t97) goto L_0269754C; else goto L_026974AC;
|
|
L_026974AC: ; // 0x26974ac
|
|
/* 026974AC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[19], cpu->r[4]);
|
|
/* 026974B0 */ _t98 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 026974B0 */ _t99 = _t98 & 0x00000001u;
|
|
/* 026974B0 */ if (_t99) goto L_0269754C; else goto L_026974B4;
|
|
L_026974B4: ; // 0x26974b4
|
|
/* 026974B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], cpu->r[21]);
|
|
/* 026974B8 */ _t100 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026974B8 */ _t101 = _t100 & 0x00000001u;
|
|
/* 026974B8 */ if (_t101) goto L_026974C8; else goto L_026974BC;
|
|
L_026974BC: ; // 0x26974bc
|
|
/* 026974BC */ _t102 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 026974BC */ _t103 = _t102 & 0x00000001u;
|
|
/* 026974BC */ if (_t103) goto L_02697574; else goto L_026974C0;
|
|
L_026974C0: ; // 0x26974c0
|
|
/* 026974C0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[22]);
|
|
/* 026974C4 */ _t104 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026974C4 */ _t105 = _t104 & 0x00000001u;
|
|
/* 026974C4 */ if (_t105) goto L_026974C8; else goto L_02697574;
|
|
L_026974C8: ; // 0x26974c8
|
|
/* 026974C8 */ cpu->r[9] = 0x000F0000u;
|
|
/* 026974CC */ cpu->r[9] = cpu->r[9] + 0x00004240u;
|
|
/* 026974D0 */ cpu->r[11] = (uint32_t)((int32_t)cpu->r[3] * (int32_t)cpu->r[9]);
|
|
/* 026974D4 */ /* nop */
|
|
/* 026974D8 */ cpu->r[4] = (uint32_t)((int32_t)cpu->r[4] * (int32_t)cpu->r[9]);
|
|
/* 026974DC */ cpu->r[3] = cpu->r[8] + cpu->r[11];
|
|
/* 026974E0 */ cpu->r[6] = cpu->r[25];
|
|
/* 026974E4 */ cpu->r[5] = cpu->r[24];
|
|
/* 026974E8 */ Gambit_fn_02C89EC8(cpu);
|
|
/* 026974EC */ _t106 = cpu->r[1] + 0x00000014u;
|
|
/* 026974EC */ rbrew_write32(cpu->mem, _t106, cpu->r[4]);
|
|
/* 026974F0 */ cpu->f[13] = cpu->f[29] * cpu->f[30];
|
|
/* 026974F4 */ _t107 = cpu->r[1] + 0x00000014u;
|
|
/* 026974F4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t107);
|
|
/* 026974F8 */ cpu->r[18] = cpu->r[18] + 0x0000004Cu;
|
|
/* 026974FC */ _t108 = cpu->r[1] + 0x00000010u;
|
|
/* 026974FC */ rbrew_write32(cpu->mem, _t108, cpu->r[3]);
|
|
/* 02697500 */ _t109 = cpu->r[1] + 0x00000010u;
|
|
/* 02697500 */ cpu->r[7] = rbrew_read32(cpu->mem, _t109);
|
|
/* 02697504 */ cpu->f[1] = cpu->f[13];
|
|
/* 02697508 */ _t110 = cpu->r[1] + 0x00000018u;
|
|
/* 02697508 */ cpu->r[5] = rbrew_read32(cpu->mem, _t110);
|
|
/* 0269750C */ cpu->r[3] = cpu->r[18];
|
|
/* 02697510 */ cpu->r[4] = cpu->r[15] + 0x00003D30u;
|
|
/* 02697514 */ _t111 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 02697514 */ _t112 = _t111 & 0x00000001u;
|
|
/* 02697514 */ if (_t112) goto L_02697518; // else: addr-0 trap, fall-through
|
|
L_02697518: ; // 0x2697518
|
|
/* 02697518 */ Gambit_fn_0282A5F4(cpu);
|
|
/* 0269751C */ _t113 = cpu->r[18] + 0x00000004u;
|
|
/* 0269751C */ cpu->r[7] = rbrew_read32(cpu->mem, _t113);
|
|
/* 02697520 */ _t114 = cpu->r[7] + 0x00000014u;
|
|
/* 02697520 */ cpu->r[9] = rbrew_read32(cpu->mem, _t114);
|
|
/* 02697524 */ cpu->ctr = cpu->r[9];
|
|
/* 02697528 */ cpu->r[3] = cpu->r[18];
|
|
/* 0269752C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02697530 */ _t115 = cpu->r[1] + 0x00000008u;
|
|
/* 02697530 */ cpu->r[10] = rbrew_read32(cpu->mem, _t115);
|
|
/* 02697534 */ cpu->r[17] = cpu->r[17] + 0x00000001u;
|
|
/* 02697538 */ cpu->r[0] = cpu->r[10] + 0xFFFFFFFFu;
|
|
/* 02697538 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0269753C */ cpu->r[20] = cpu->r[20] + 0x00000008u;
|
|
/* 02697540 */ _t116 = cpu->r[1] + 0x00000008u;
|
|
/* 02697540 */ rbrew_write32(cpu->mem, _t116, cpu->r[0]);
|
|
/* 02697544 */ _t117 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02697544 */ _t118 = _t117 & 0x00000001u;
|
|
/* 02697544 */ if (_t118) goto L_02697548; else goto L_02697390;
|
|
L_02697548: ; // 0x2697548
|
|
/* 02697548 */ goto L_02697698;
|
|
L_0269754C: ; // 0x269754c
|
|
/* 0269754C */ cpu->r[12] = 0xFFDF0000u;
|
|
/* 02697550 */ cpu->r[12] = cpu->r[12] + 0x00003B64u;
|
|
/* 02697554 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], cpu->r[12]);
|
|
/* 02697558 */ _t119 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02697558 */ _t120 = _t119 & 0x00000001u;
|
|
/* 02697558 */ if (_t120) goto L_02697598; else goto L_0269755C;
|
|
L_0269755C: ; // 0x269755c
|
|
/* 0269755C */ _t121 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269755C */ _t122 = _t121 & 0x00000001u;
|
|
/* 0269755C */ if (_t122) goto L_02697620; else goto L_02697560;
|
|
L_02697560: ; // 0x2697560
|
|
/* 02697560 */ cpu->r[5] = 0x5A1D0000u;
|
|
/* 02697564 */ cpu->r[5] = cpu->r[5] + 0xFFFFAC09u;
|
|
/* 02697568 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[5]);
|
|
/* 0269756C */ _t123 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269756C */ _t124 = _t123 & 0x00000001u;
|
|
/* 0269756C */ if (_t124) goto L_02697570; else goto L_02697598;
|
|
L_02697570: ; // 0x2697570
|
|
/* 02697570 */ goto L_02697620;
|
|
L_02697574: ; // 0x2697574
|
|
/* 02697574 */ cpu->r[6] = 0x00210000u;
|
|
/* 02697578 */ cpu->r[6] = cpu->r[6] + 0xFFFFC49Bu;
|
|
/* 0269757C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], cpu->r[6]);
|
|
/* 02697580 */ _t125 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02697580 */ _t126 = _t125 & 0x00000001u;
|
|
/* 02697580 */ if (_t126) goto L_02697598; else goto L_02697584;
|
|
L_02697584: ; // 0x2697584
|
|
/* 02697584 */ _t127 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02697584 */ _t128 = _t127 & 0x00000001u;
|
|
/* 02697584 */ if (_t128) goto L_02697620; else goto L_02697588;
|
|
L_02697588: ; // 0x2697588
|
|
/* 02697588 */ cpu->r[7] = 0xA5E30000u;
|
|
/* 0269758C */ cpu->r[7] = cpu->r[7] + 0x000053F7u;
|
|
/* 02697590 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[7]);
|
|
/* 02697594 */ _t129 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02697594 */ _t130 = _t129 & 0x00000001u;
|
|
/* 02697594 */ if (_t130) goto L_02697598; else goto L_02697620;
|
|
L_02697598: ; // 0x2697598
|
|
/* 02697598 */ cpu->r[9] = (uint32_t)((int32_t)cpu->r[3] * (int32_t)0x000003E8u);
|
|
/* 0269759C */ cpu->r[16] = 0x000003E8u;
|
|
/* 026975A0 */ /* nop */
|
|
/* 026975A4 */ cpu->r[4] = (uint32_t)((int32_t)cpu->r[4] * (int32_t)0x000003E8u);
|
|
/* 026975A8 */ cpu->r[3] = cpu->r[8] + cpu->r[9];
|
|
/* 026975AC */ cpu->r[6] = cpu->r[25];
|
|
/* 026975B0 */ cpu->r[5] = cpu->r[24];
|
|
/* 026975B4 */ Gambit_fn_02C89EC8(cpu);
|
|
/* 026975B8 */ /* nop */
|
|
/* 026975BC */ cpu->f[13] = cpu->f[29] * cpu->f[30];
|
|
/* 026975C0 */ _t131 = cpu->r[1] + 0x00000018u;
|
|
/* 026975C0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t131);
|
|
/* 026975C4 */ cpu->r[8] = (uint32_t)((int32_t)cpu->r[4] * (int32_t)0x000003E8u);
|
|
/* 026975C8 */ cpu->r[12] = (uint32_t)((int32_t)cpu->r[3] * (int32_t)0x000003E8u);
|
|
/* 026975CC */ cpu->f[1] = cpu->f[13];
|
|
/* 026975D0 */ cpu->r[4] = cpu->r[15] + 0x00003D30u;
|
|
/* 026975D4 */ _t132 = cpu->r[1] + 0x00000014u;
|
|
/* 026975D4 */ rbrew_write32(cpu->mem, _t132, cpu->r[8]);
|
|
/* 026975D8 */ cpu->r[18] = cpu->r[18] + 0x0000004Cu;
|
|
/* 026975DC */ cpu->r[7] = cpu->r[10] + cpu->r[12];
|
|
/* 026975E0 */ cpu->r[3] = cpu->r[18];
|
|
/* 026975E4 */ _t133 = cpu->r[1] + 0x00000010u;
|
|
/* 026975E4 */ rbrew_write32(cpu->mem, _t133, cpu->r[7]);
|
|
/* 026975E8 */ _t134 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 026975E8 */ _t135 = _t134 & 0x00000001u;
|
|
/* 026975E8 */ if (_t135) goto L_026975EC; // else: addr-0 trap, fall-through
|
|
L_026975EC: ; // 0x26975ec
|
|
/* 026975EC */ Gambit_fn_0282A5F4(cpu);
|
|
/* 026975F0 */ _t136 = cpu->r[18] + 0x00000004u;
|
|
/* 026975F0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t136);
|
|
/* 026975F4 */ _t137 = cpu->r[7] + 0x00000014u;
|
|
/* 026975F4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t137);
|
|
/* 026975F8 */ cpu->ctr = cpu->r[9];
|
|
/* 026975FC */ cpu->r[3] = cpu->r[18];
|
|
/* 02697600 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02697604 */ _t138 = cpu->r[1] + 0x00000008u;
|
|
/* 02697604 */ cpu->r[10] = rbrew_read32(cpu->mem, _t138);
|
|
/* 02697608 */ cpu->r[17] = cpu->r[17] + 0x00000001u;
|
|
/* 0269760C */ cpu->r[0] = cpu->r[10] + 0xFFFFFFFFu;
|
|
/* 0269760C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02697610 */ cpu->r[20] = cpu->r[20] + 0x00000008u;
|
|
/* 02697614 */ _t139 = cpu->r[1] + 0x00000008u;
|
|
/* 02697614 */ rbrew_write32(cpu->mem, _t139, cpu->r[0]);
|
|
/* 02697618 */ _t140 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02697618 */ _t141 = _t140 & 0x00000001u;
|
|
/* 02697618 */ if (_t141) goto L_0269761C; else goto L_02697390;
|
|
L_0269761C: ; // 0x269761c
|
|
/* 0269761C */ goto L_02697698;
|
|
L_02697620: ; // 0x2697620
|
|
/* 02697620 */ cpu->r[5] = cpu->r[24];
|
|
/* 02697624 */ cpu->r[6] = cpu->r[25];
|
|
/* 02697628 */ Gambit_fn_02C89EC8(cpu);
|
|
/* 0269762C */ cpu->r[9] = 0x000F0000u;
|
|
/* 02697630 */ cpu->r[9] = cpu->r[9] + 0x00004240u;
|
|
/* 02697634 */ cpu->r[8] = (uint32_t)((int32_t)cpu->r[4] * (int32_t)cpu->r[9]);
|
|
/* 02697638 */ cpu->f[13] = cpu->f[29] * cpu->f[30];
|
|
/* 0269763C */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[3] * (int32_t)cpu->r[9]);
|
|
/* 02697640 */ cpu->r[18] = cpu->r[18] + 0x0000004Cu;
|
|
/* 02697644 */ /* nop */
|
|
/* 02697648 */ _t142 = cpu->r[1] + 0x00000014u;
|
|
/* 02697648 */ rbrew_write32(cpu->mem, _t142, cpu->r[8]);
|
|
/* 0269764C */ cpu->f[1] = cpu->f[13];
|
|
/* 02697650 */ cpu->r[3] = cpu->r[18];
|
|
/* 02697654 */ _t143 = cpu->r[1] + 0x00000018u;
|
|
/* 02697654 */ cpu->r[5] = rbrew_read32(cpu->mem, _t143);
|
|
/* 02697658 */ cpu->r[7] = cpu->r[7] + cpu->r[0];
|
|
/* 0269765C */ cpu->r[4] = cpu->r[15] + 0x00003D30u;
|
|
/* 02697660 */ _t144 = cpu->r[1] + 0x00000010u;
|
|
/* 02697660 */ rbrew_write32(cpu->mem, _t144, cpu->r[7]);
|
|
/* 02697664 */ _t145 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 02697664 */ _t146 = _t145 & 0x00000001u;
|
|
/* 02697664 */ if (_t146) goto L_02697668; // else: addr-0 trap, fall-through
|
|
L_02697668: ; // 0x2697668
|
|
/* 02697668 */ Gambit_fn_0282A5F4(cpu);
|
|
/* 0269766C */ _t147 = cpu->r[18] + 0x00000004u;
|
|
/* 0269766C */ cpu->r[7] = rbrew_read32(cpu->mem, _t147);
|
|
/* 02697670 */ _t148 = cpu->r[7] + 0x00000014u;
|
|
/* 02697670 */ cpu->r[9] = rbrew_read32(cpu->mem, _t148);
|
|
/* 02697674 */ cpu->ctr = cpu->r[9];
|
|
/* 02697678 */ cpu->r[3] = cpu->r[18];
|
|
/* 0269767C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02697680 */ _t149 = cpu->r[1] + 0x00000008u;
|
|
/* 02697680 */ cpu->r[10] = rbrew_read32(cpu->mem, _t149);
|
|
/* 02697684 */ cpu->r[17] = cpu->r[17] + 0x00000001u;
|
|
/* 02697688 */ cpu->r[0] = cpu->r[10] + 0xFFFFFFFFu;
|
|
/* 02697688 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0269768C */ cpu->r[20] = cpu->r[20] + 0x00000008u;
|
|
/* 02697690 */ _t150 = cpu->r[1] + 0x00000008u;
|
|
/* 02697690 */ rbrew_write32(cpu->mem, _t150, cpu->r[0]);
|
|
/* 02697694 */ _t151 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02697694 */ _t152 = _t151 & 0x00000001u;
|
|
/* 02697694 */ if (_t152) goto L_02697698; else goto L_02697390;
|
|
L_02697698: ; // 0x2697698
|
|
/* 02697698 */ _t153 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02697698 */ cpu->r[6] = rbrew_read32(cpu->mem, _t153);
|
|
/* 0269769C */ cpu->r[11] = 0x00000004u;
|
|
/* 026976A0 */ cpu->r[12] = cpu->r[31] + 0xFFFFFFF8u;
|
|
/* 026976A4 */ cpu->r[0] = 0x00000000u;
|
|
/* 026976A8 */ cpu->ctr = cpu->r[11];
|
|
/* 026976AC */ _t154 = cpu->r[6] + 0x00000188u;
|
|
/* 026976AC */ rbrew_write32(cpu->mem, _t154, cpu->r[0]);
|
|
L_026976B0: ; // 0x26976b0
|
|
/* 026976B0 */ cpu->r[10] = 0x00000000u;
|
|
/* 026976B4 */ _t155 = cpu->r[12] + 0x00000008u;
|
|
/* 026976B4 */ rbrew_write32(cpu->mem, _t155, cpu->r[10]);
|
|
/* 026976B4 */ cpu->r[12] = _t155;
|
|
/* 026976B8 */ _t156 = cpu->r[12] + 0x00000004u;
|
|
/* 026976B8 */ rbrew_write32(cpu->mem, _t156, cpu->r[10]);
|
|
/* 026976BC */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 026976BC */ _t157 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 026976BC */ _t158 = _t157 >> (0x00000002u & 31u);
|
|
/* 026976BC */ _t159 = _t158 & 0x00000001u;
|
|
/* 026976BC */ if (_t159) goto L_026976B0; else goto L_026976C0;
|
|
L_026976C0: ; // 0x26976c0
|
|
/* 026976C0 */ /* nop */
|
|
/* 026976C4 */ _t160 = cpu->r[1] + 0x00000070u;
|
|
/* 026976C4 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t160);
|
|
/* 026976C8 */ _t161 = cpu->r[1] + 0x00000080u;
|
|
/* 026976C8 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t161);
|
|
/* 026976CC */ _t162 = cpu->r[1] + 0x00000068u;
|
|
/* 026976CC */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t162);
|
|
/* 026976D0 */ _t163 = cpu->r[1] + 0x00000090u;
|
|
/* 026976D0 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t163);
|
|
/* 026976D4 */ _t164 = cpu->r[1] + 0x00000078u;
|
|
/* 026976D4 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t164);
|
|
/* 026976D8 */ _t165 = cpu->r[1] + 0x00000088u;
|
|
/* 026976D8 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t165);
|
|
/* 026976DC */ _t166 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026976DC */ _t167 = _t166 & 0x00000001u;
|
|
/* 026976DC */ if (_t167) goto L_026976E0; // else: addr-0 trap, fall-through
|
|
L_026976E0: ; // 0x26976e0
|
|
/* 026976E0 */ _t168 = cpu->r[1] + 0x0000009Cu;
|
|
/* 026976E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t168);
|
|
/* 026976E4 */ cpu->lr = cpu->r[0];
|
|
/* 026976E8 */ cpu->r[1] = cpu->r[1] + 0x00000098u;
|
|
/* 026976EC */ return;
|
|
}
|
|
|
|
// fn_026976F0 @ 0x26976f0
|
|
void Gambit_fn_026976F0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_026976F0: ; // 0x26976f0
|
|
/* 026976F0 */ cpu->r[0] = cpu->lr;
|
|
/* 026976F4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 026976F4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 026976F4 */ cpu->r[1] = _t0;
|
|
/* 026976F8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026976F8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 026976FC */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 026976FC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02697700 */ cpu->r[31] = cpu->r[3];
|
|
/* 02697704 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02697704 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02697708 */ _t4 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02697708 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269770C */ _t5 = cpu->r[3] + 0x00000004u;
|
|
/* 0269770C */ cpu->r[8] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02697710 */ _t6 = cpu->r[8] + 0x00000044u;
|
|
/* 02697710 */ cpu->r[9] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02697714 */ cpu->ctr = cpu->r[9];
|
|
/* 02697718 */ cpu->r[30] = cpu->r[4];
|
|
/* 0269771C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02697720 */ _t7 = cpu->r[31] + 0x00000014u;
|
|
/* 02697720 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02697724 */ _t8 = cpu->r[3] + 0x00000004u;
|
|
/* 02697724 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02697728 */ _t9 = cpu->r[12] + 0x00000044u;
|
|
/* 02697728 */ cpu->r[7] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269772C */ cpu->ctr = cpu->r[7];
|
|
/* 02697730 */ cpu->r[4] = cpu->r[30];
|
|
/* 02697734 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02697738 */ _t10 = cpu->r[31] + 0x00000018u;
|
|
/* 02697738 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269773C */ _t11 = cpu->r[3] + 0x00000004u;
|
|
/* 0269773C */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02697740 */ _t12 = cpu->r[10] + 0x00000044u;
|
|
/* 02697740 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02697744 */ cpu->ctr = cpu->r[0];
|
|
/* 02697748 */ cpu->r[4] = cpu->r[30];
|
|
/* 0269774C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02697750 */ _t13 = cpu->r[31] + 0x00000010u;
|
|
/* 02697750 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02697754 */ cpu->r[4] = cpu->r[30];
|
|
/* 02697758 */ Gambit_fn_0268185C(cpu);
|
|
/* 0269775C */ _t14 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0269775C */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02697760 */ cpu->r[4] = cpu->r[30];
|
|
/* 02697764 */ Gambit_fn_026846C4(cpu);
|
|
/* 02697768 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 02697768 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0269776C */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269776C */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02697770 */ cpu->lr = cpu->r[0];
|
|
/* 02697774 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 02697774 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02697778 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0269777C */ return;
|
|
}
|
|
|
|
// fn_026976F4 @ 0x26976f4
|
|
void Gambit_fn_026976F4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_026976F4: ; // 0x26976f4
|
|
/* 026976F4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 026976F4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 026976F4 */ cpu->r[1] = _t0;
|
|
/* 026976F8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026976F8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 026976FC */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 026976FC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02697700 */ cpu->r[31] = cpu->r[3];
|
|
/* 02697704 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02697704 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02697708 */ _t4 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02697708 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269770C */ _t5 = cpu->r[3] + 0x00000004u;
|
|
/* 0269770C */ cpu->r[8] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02697710 */ _t6 = cpu->r[8] + 0x00000044u;
|
|
/* 02697710 */ cpu->r[9] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02697714 */ cpu->ctr = cpu->r[9];
|
|
/* 02697718 */ cpu->r[30] = cpu->r[4];
|
|
/* 0269771C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02697720 */ _t7 = cpu->r[31] + 0x00000014u;
|
|
/* 02697720 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02697724 */ _t8 = cpu->r[3] + 0x00000004u;
|
|
/* 02697724 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02697728 */ _t9 = cpu->r[12] + 0x00000044u;
|
|
/* 02697728 */ cpu->r[7] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269772C */ cpu->ctr = cpu->r[7];
|
|
/* 02697730 */ cpu->r[4] = cpu->r[30];
|
|
/* 02697734 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02697738 */ _t10 = cpu->r[31] + 0x00000018u;
|
|
/* 02697738 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269773C */ _t11 = cpu->r[3] + 0x00000004u;
|
|
/* 0269773C */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02697740 */ _t12 = cpu->r[10] + 0x00000044u;
|
|
/* 02697740 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02697744 */ cpu->ctr = cpu->r[0];
|
|
/* 02697748 */ cpu->r[4] = cpu->r[30];
|
|
/* 0269774C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02697750 */ _t13 = cpu->r[31] + 0x00000010u;
|
|
/* 02697750 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02697754 */ cpu->r[4] = cpu->r[30];
|
|
/* 02697758 */ Gambit_fn_0268185C(cpu);
|
|
/* 0269775C */ _t14 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0269775C */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02697760 */ cpu->r[4] = cpu->r[30];
|
|
/* 02697764 */ Gambit_fn_026846C4(cpu);
|
|
/* 02697768 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 02697768 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0269776C */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269776C */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02697770 */ cpu->lr = cpu->r[0];
|
|
/* 02697774 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 02697774 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02697778 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0269777C */ return;
|
|
}
|
|
|
|
// fn_02697780 @ 0x2697780
|
|
void Gambit_fn_02697780(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_02697780: ; // 0x2697780
|
|
/* 02697780 */ cpu->r[0] = cpu->lr;
|
|
/* 02697784 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02697784 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02697784 */ cpu->r[1] = _t0;
|
|
/* 02697788 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02697788 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0269778C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0269778C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02697790 */ cpu->r[31] = cpu->r[3];
|
|
/* 02697794 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02697794 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02697798 */ _t4 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02697798 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269779C */ _t5 = cpu->r[3] + 0x00000004u;
|
|
/* 0269779C */ cpu->r[8] = rbrew_read32(cpu->mem, _t5);
|
|
/* 026977A0 */ _t6 = cpu->r[8] + 0x0000004Cu;
|
|
/* 026977A0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t6);
|
|
/* 026977A4 */ cpu->ctr = cpu->r[9];
|
|
/* 026977A8 */ cpu->r[30] = cpu->r[4];
|
|
/* 026977AC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 026977B0 */ _t7 = cpu->r[31] + 0x00000014u;
|
|
/* 026977B0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 026977B4 */ _t8 = cpu->r[3] + 0x00000004u;
|
|
/* 026977B4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 026977B8 */ _t9 = cpu->r[12] + 0x0000004Cu;
|
|
/* 026977B8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t9);
|
|
/* 026977BC */ cpu->ctr = cpu->r[7];
|
|
/* 026977C0 */ cpu->r[4] = cpu->r[30];
|
|
/* 026977C4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 026977C8 */ _t10 = cpu->r[31] + 0x00000018u;
|
|
/* 026977C8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 026977CC */ _t11 = cpu->r[3] + 0x00000004u;
|
|
/* 026977CC */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 026977D0 */ _t12 = cpu->r[10] + 0x0000004Cu;
|
|
/* 026977D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 026977D4 */ cpu->ctr = cpu->r[0];
|
|
/* 026977D8 */ cpu->r[4] = cpu->r[30];
|
|
/* 026977DC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 026977E0 */ _t13 = cpu->r[31] + 0x00000010u;
|
|
/* 026977E0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 026977E4 */ cpu->r[4] = cpu->r[30];
|
|
/* 026977E8 */ Gambit_fn_02681860(cpu);
|
|
/* 026977EC */ _t14 = cpu->r[31] + 0x0000000Cu;
|
|
/* 026977EC */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 026977F0 */ cpu->r[4] = cpu->r[30];
|
|
/* 026977F4 */ Gambit_fn_026846C8(cpu);
|
|
/* 026977F8 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 026977F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 026977FC */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026977FC */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02697800 */ cpu->lr = cpu->r[0];
|
|
/* 02697804 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 02697804 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02697808 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0269780C */ return;
|
|
}
|
|
|
|
// fn_02697784 @ 0x2697784
|
|
void Gambit_fn_02697784(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_02697784: ; // 0x2697784
|
|
/* 02697784 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02697784 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02697784 */ cpu->r[1] = _t0;
|
|
/* 02697788 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02697788 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0269778C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0269778C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02697790 */ cpu->r[31] = cpu->r[3];
|
|
/* 02697794 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02697794 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02697798 */ _t4 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02697798 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269779C */ _t5 = cpu->r[3] + 0x00000004u;
|
|
/* 0269779C */ cpu->r[8] = rbrew_read32(cpu->mem, _t5);
|
|
/* 026977A0 */ _t6 = cpu->r[8] + 0x0000004Cu;
|
|
/* 026977A0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t6);
|
|
/* 026977A4 */ cpu->ctr = cpu->r[9];
|
|
/* 026977A8 */ cpu->r[30] = cpu->r[4];
|
|
/* 026977AC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 026977B0 */ _t7 = cpu->r[31] + 0x00000014u;
|
|
/* 026977B0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 026977B4 */ _t8 = cpu->r[3] + 0x00000004u;
|
|
/* 026977B4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 026977B8 */ _t9 = cpu->r[12] + 0x0000004Cu;
|
|
/* 026977B8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t9);
|
|
/* 026977BC */ cpu->ctr = cpu->r[7];
|
|
/* 026977C0 */ cpu->r[4] = cpu->r[30];
|
|
/* 026977C4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 026977C8 */ _t10 = cpu->r[31] + 0x00000018u;
|
|
/* 026977C8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 026977CC */ _t11 = cpu->r[3] + 0x00000004u;
|
|
/* 026977CC */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 026977D0 */ _t12 = cpu->r[10] + 0x0000004Cu;
|
|
/* 026977D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 026977D4 */ cpu->ctr = cpu->r[0];
|
|
/* 026977D8 */ cpu->r[4] = cpu->r[30];
|
|
/* 026977DC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 026977E0 */ _t13 = cpu->r[31] + 0x00000010u;
|
|
/* 026977E0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 026977E4 */ cpu->r[4] = cpu->r[30];
|
|
/* 026977E8 */ Gambit_fn_02681860(cpu);
|
|
/* 026977EC */ _t14 = cpu->r[31] + 0x0000000Cu;
|
|
/* 026977EC */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 026977F0 */ cpu->r[4] = cpu->r[30];
|
|
/* 026977F4 */ Gambit_fn_026846C8(cpu);
|
|
/* 026977F8 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 026977F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 026977FC */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026977FC */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02697800 */ cpu->lr = cpu->r[0];
|
|
/* 02697804 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 02697804 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02697808 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0269780C */ return;
|
|
}
|
|
|
|
// fn_02697810 @ 0x2697810
|
|
void Gambit_fn_02697810(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_02697810: ; // 0x2697810
|
|
/* 02697810 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02697814 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02697814 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02697814 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02697814 */ goto L_02697818;
|
|
L_02697818: ; // 0x2697818
|
|
/* 02697818 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02697818 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0269781C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269781C */ _t3 = _t2 & 0x00000001u;
|
|
/* 0269781C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0269781C */ goto L_02697820;
|
|
L_02697820: ; // 0x2697820
|
|
/* 02697820 */ 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_02697824 @ 0x2697824
|
|
void Gambit_fn_02697824(CPUState* cpu) {
|
|
L_02697824: ; // 0x2697824
|
|
/* 02697824 */ return;
|
|
}
|
|
|
|
// fn_02697828 @ 0x2697828
|
|
void Gambit_fn_02697828(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_02697828: ; // 0x2697828
|
|
/* 02697828 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0269782C */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269782C */ _t1 = _t0 & 0x00000001u;
|
|
/* 0269782C */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0269782C */ goto L_02697830;
|
|
L_02697830: ; // 0x2697830
|
|
/* 02697830 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02697830 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02697834 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02697834 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02697834 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02697834 */ goto L_02697838;
|
|
L_02697838: ; // 0x2697838
|
|
/* 02697838 */ 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_0269783C @ 0x269783c
|
|
void Gambit_fn_0269783C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_0269783C: ; // 0x269783c
|
|
/* 0269783C */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 0269783C */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02697840 */ _t1 = cpu->r[3] + 0x00000008u;
|
|
/* 02697840 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02697844 */ cpu->r[12] = cpu->r[11] + cpu->r[12];
|
|
/* 02697848 */ cpu->r[11] = 0x10110000u;
|
|
/* 0269784C */ _t2 = cpu->r[11] + 0x00007399u;
|
|
/* 0269784C */ cpu->r[0] = rbrew_read8(cpu->mem, _t2);
|
|
/* 02697850 */ _t3 = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 02697850 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]);
|
|
/* 02697854 */ return;
|
|
}
|
|
|
|
// fn_02697858 @ 0x2697858
|
|
void Gambit_fn_02697858(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_02697858: ; // 0x2697858
|
|
/* 02697858 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0269785C */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269785C */ _t1 = _t0 & 0x00000001u;
|
|
/* 0269785C */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0269785C */ goto L_02697860;
|
|
L_02697860: ; // 0x2697860
|
|
/* 02697860 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02697860 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02697864 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02697864 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02697864 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02697864 */ goto L_02697868;
|
|
L_02697868: ; // 0x2697868
|
|
/* 02697868 */ 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_02697870 @ 0x2697870
|
|
void Gambit_fn_02697870(CPUState* cpu) {
|
|
uint32_t _t0, _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_02697870: ; // 0x2697870
|
|
/* 02697870 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02697870 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02697870 */ cpu->r[1] = _t0;
|
|
/* 02697874 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02697874 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 02697878 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02697878 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0269787C */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 0269787C */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 02697880 */ cpu->r[31] = cpu->r[3];
|
|
/* 02697880 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02697884 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02697884 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02697888 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02697888 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02697888 */ if (_t6) goto L_0269788C; else goto L_0269789C;
|
|
L_0269788C: ; // 0x269788c
|
|
/* 0269788C */ cpu->r[3] = 0x0000004Cu;
|
|
/* 02697890 */ Gambit_fn_02801A78(cpu);
|
|
/* 02697894 */ cpu->r[31] = cpu->r[3];
|
|
/* 02697894 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02697898 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02697898 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02697898 */ if (_t8) goto L_02697930; else goto L_0269789C;
|
|
L_0269789C: ; // 0x269789c
|
|
/* 0269789C */ cpu->r[29] = cpu->r[31];
|
|
/* 0269789C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 026978A0 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026978A0 */ _t10 = _t9 & 0x00000001u;
|
|
/* 026978A0 */ if (_t10) goto L_026978A4; else goto L_026978B4;
|
|
L_026978A4: ; // 0x26978a4
|
|
/* 026978A4 */ cpu->r[3] = 0x0000004Cu;
|
|
/* 026978A8 */ Gambit_fn_02801A78(cpu);
|
|
/* 026978AC */ cpu->r[29] = cpu->r[3];
|
|
/* 026978AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 026978B0 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026978B0 */ _t12 = _t11 & 0x00000001u;
|
|
/* 026978B0 */ if (_t12) goto L_02697924; else goto L_026978B4;
|
|
L_026978B4: ; // 0x26978b4
|
|
/* 026978B4 */ cpu->r[3] = cpu->r[29];
|
|
/* 026978B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 026978B8 */ cpu->r[30] = 0x10110000u;
|
|
/* 026978BC */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026978BC */ _t14 = _t13 & 0x00000001u;
|
|
/* 026978BC */ if (_t14) goto L_026978C0; else goto L_026978EC;
|
|
L_026978C0: ; // 0x26978c0
|
|
/* 026978C0 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 026978C4 */ Gambit_fn_02801A78(cpu);
|
|
/* 026978C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 026978CC */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026978CC */ _t16 = _t15 & 0x00000001u;
|
|
/* 026978CC */ if (_t16) goto L_026978D0; else goto L_026978EC;
|
|
L_026978D0: ; // 0x26978d0
|
|
/* 026978D0 */ cpu->r[10] = 0x100E0000u;
|
|
/* 026978D4 */ _t17 = cpu->r[30] + 0x00007399u;
|
|
/* 026978D4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t17);
|
|
/* 026978D8 */ cpu->r[10] = cpu->r[10] + 0x00003CD8u;
|
|
/* 026978DC */ _t18 = cpu->r[29] + 0x00000000u;
|
|
/* 026978DC */ cpu->r[11] = rbrew_read32(cpu->mem, _t18);
|
|
/* 026978E0 */ _t19 = cpu->r[29] + 0x00000004u;
|
|
/* 026978E0 */ rbrew_write32(cpu->mem, _t19, cpu->r[10]);
|
|
/* 026978E4 */ _t20 = cpu->r[11] + 0x00000000u;
|
|
/* 026978E4 */ rbrew_write8(cpu->mem, _t20, (uint8_t)cpu->r[0]);
|
|
/* 026978E8 */ goto L_02697924;
|
|
L_026978EC: ; // 0x26978ec
|
|
/* 026978EC */ cpu->r[0] = 0x100E0000u;
|
|
/* 026978F0 */ cpu->r[12] = cpu->r[29] + 0x0000000Cu;
|
|
/* 026978F4 */ cpu->r[0] = cpu->r[0] + 0x00003CC0u;
|
|
/* 026978F8 */ _t21 = cpu->r[3] + 0x00000000u;
|
|
/* 026978F8 */ rbrew_write32(cpu->mem, _t21, cpu->r[12]);
|
|
/* 026978FC */ cpu->r[9] = 0x00000040u;
|
|
/* 02697900 */ _t22 = cpu->r[3] + 0x00000004u;
|
|
/* 02697900 */ rbrew_write32(cpu->mem, _t22, cpu->r[0]);
|
|
/* 02697904 */ _t23 = cpu->r[3] + 0x00000008u;
|
|
/* 02697904 */ rbrew_write32(cpu->mem, _t23, cpu->r[9]);
|
|
/* 02697908 */ _t24 = cpu->r[30] + 0x00007399u;
|
|
/* 02697908 */ cpu->r[0] = rbrew_read8(cpu->mem, _t24);
|
|
/* 0269790C */ cpu->r[10] = 0x100E0000u;
|
|
/* 02697910 */ _t25 = cpu->r[29] + 0x00000000u;
|
|
/* 02697910 */ cpu->r[11] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02697914 */ cpu->r[10] = cpu->r[10] + 0x00003CD8u;
|
|
/* 02697918 */ _t26 = cpu->r[29] + 0x0000004Bu;
|
|
/* 02697918 */ rbrew_write8(cpu->mem, _t26, (uint8_t)cpu->r[0]);
|
|
/* 0269791C */ _t27 = cpu->r[29] + 0x00000004u;
|
|
/* 0269791C */ rbrew_write32(cpu->mem, _t27, cpu->r[10]);
|
|
/* 02697920 */ _t28 = cpu->r[11] + 0x00000000u;
|
|
/* 02697920 */ rbrew_write8(cpu->mem, _t28, (uint8_t)cpu->r[0]);
|
|
L_02697924: ; // 0x2697924
|
|
/* 02697924 */ cpu->r[12] = 0x100E0000u;
|
|
/* 02697928 */ cpu->r[12] = cpu->r[12] + 0x00003CF0u;
|
|
/* 0269792C */ _t29 = cpu->r[31] + 0x00000004u;
|
|
/* 0269792C */ rbrew_write32(cpu->mem, _t29, cpu->r[12]);
|
|
L_02697930: ; // 0x2697930
|
|
/* 02697930 */ _t30 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02697930 */ cpu->r[29] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02697934 */ _t31 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02697934 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02697938 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269793C */ _t32 = cpu->r[1] + 0x00000010u;
|
|
/* 0269793C */ cpu->r[30] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02697940 */ cpu->lr = cpu->r[0];
|
|
/* 02697944 */ _t33 = cpu->r[1] + 0x00000014u;
|
|
/* 02697944 */ cpu->r[31] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02697948 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269794C */ return;
|
|
}
|
|
|
|
// fn_02697950 @ 0x2697950
|
|
void Gambit_fn_02697950(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_02697950: ; // 0x2697950
|
|
/* 02697950 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02697954 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02697954 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02697954 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02697954 */ goto L_02697958;
|
|
L_02697958: ; // 0x2697958
|
|
/* 02697958 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02697958 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0269795C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269795C */ _t3 = _t2 & 0x00000001u;
|
|
/* 0269795C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0269795C */ goto L_02697960;
|
|
L_02697960: ; // 0x2697960
|
|
/* 02697960 */ 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_02697970 @ 0x2697970
|
|
void Gambit_fn_02697970(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_02697970: ; // 0x2697970
|
|
/* 02697970 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 02697970 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02697970 */ cpu->r[1] = _t0;
|
|
/* 02697974 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02697974 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02697974 */ if (_t2) goto L_02697978; else goto L_02697988;
|
|
L_02697978: ; // 0x2697978
|
|
/* 02697978 */ cpu->r[3] = 0x00000008u;
|
|
/* 0269797C */ Gambit_fn_02801A78(cpu);
|
|
/* 02697980 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02697984 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02697984 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02697984 */ if (_t4) goto L_02697994; else goto L_02697988;
|
|
L_02697988: ; // 0x2697988
|
|
/* 02697988 */ cpu->r[0] = 0x00000000u;
|
|
/* 0269798C */ _t5 = cpu->r[3] + 0x00000000u;
|
|
/* 0269798C */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02697990 */ _t6 = cpu->r[3] + 0x00000004u;
|
|
/* 02697990 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
L_02697994: ; // 0x2697994
|
|
/* 02697994 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02697994 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02697998 */ cpu->lr = cpu->r[0];
|
|
/* 0269799C */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 026979A0 */ return;
|
|
}
|
|
|
|
// fn_026979A4 @ 0x26979a4
|
|
void Gambit_fn_026979A4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t117, _t118, _t119, _t120, _t121, _t122, _t123, _t124, _t125, _t126, _t127, _t128, _t129, _t130, _t131, _t132, _t133, _t134, _t135, _t136, _t137, _t138, _t139, _t140, _t141, _t142, _t143, _t144, _t145, _t146, _t147, _t148, _t149, _t150, _t151, _t152, _t153, _t154, _t155, _t156, _t157, _t158, _t159, _t160, _t161, _t162, _t163, _t164, _t165, _t166, _t167, _t168, _t169, _t170, _t171, _t172, _t173, _t174, _t175, _t176, _t177, _t178, _t179, _t180, _t181, _t182, _t183, _t184, _t185, _t186, _t187, _t188, _t189, _t190, _t191, _t192, _t193, _t194, _t195, _t196, _t197, _t198, _t199, _t200, _t201, _t202, _t203, _t204, _t205;
|
|
|
|
L_026979A4: ; // 0x26979a4
|
|
/* 026979A4 */ _t0 = cpu->r[1] + 0xFFFFFC68u;
|
|
/* 026979A4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 026979A4 */ cpu->r[1] = _t0;
|
|
/* 026979A8 */ /* nop */
|
|
/* 026979AC */ _t1 = cpu->r[1] + 0x00000358u;
|
|
/* 026979AC */ rbrew_write_f64(cpu->mem, _t1, cpu->f[28]);
|
|
/* 026979B0 */ _t2 = cpu->r[1] + 0x00000368u;
|
|
/* 026979B0 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[29]);
|
|
/* 026979B4 */ _t3 = cpu->r[1] + 0x00000378u;
|
|
/* 026979B4 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[30]);
|
|
/* 026979B8 */ /* nop */
|
|
/* 026979BC */ _t4 = cpu->r[1] + 0x00000388u;
|
|
/* 026979BC */ rbrew_write_f64(cpu->mem, _t4, cpu->f[31]);
|
|
/* 026979C0 */ /* nop */
|
|
/* 026979C4 */ cpu->r[0] = cpu->lr;
|
|
/* 026979C8 */ /* nop */
|
|
/* 026979CC */ _t5 = cpu->r[1] + 0x00000360u;
|
|
/* 026979CC */ rbrew_write_f32(cpu->mem, _t5, cpu->f[28]);
|
|
/* 026979D0 */ cpu->r[26] = cpu->r[3];
|
|
/* 026979D4 */ _t6 = cpu->r[1] + 0x00000370u;
|
|
/* 026979D4 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[29]);
|
|
/* 026979D8 */ /* nop */
|
|
/* 026979DC */ _t7 = cpu->r[1] + 0x0000039Cu;
|
|
/* 026979DC */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 026979E0 */ cpu->r[3] = cpu->r[1] + 0x000000B4u;
|
|
/* 026979E4 */ cpu->r[30] = cpu->r[5];
|
|
/* 026979E8 */ _t8 = cpu->r[1] + 0x00000380u;
|
|
/* 026979E8 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[30]);
|
|
/* 026979EC */ cpu->f[30] = cpu->f[1];
|
|
/* 026979F0 */ _t9 = cpu->r[1] + 0x00000390u;
|
|
/* 026979F0 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[31]);
|
|
/* 026979F4 */ cpu->r[29] = cpu->r[4];
|
|
/* 026979F8 */ Gambit_fn_027FF40C(cpu);
|
|
/* 026979FC */ cpu->r[31] = 0x00000000u;
|
|
/* 02697A00 */ _t10 = cpu->r[1] + 0x00000060u;
|
|
/* 02697A00 */ rbrew_write8(cpu->mem, _t10, (uint8_t)cpu->r[31]);
|
|
/* 02697A04 */ _t11 = cpu->r[30] + 0x00000008u;
|
|
/* 02697A04 */ cpu->f[3] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 02697A08 */ cpu->r[0] = 0x000000FFu;
|
|
/* 02697A0C */ _t12 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02697A0C */ cpu->f[4] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 02697A10 */ _t13 = cpu->r[1] + 0x00000061u;
|
|
/* 02697A10 */ rbrew_write8(cpu->mem, _t13, (uint8_t)cpu->r[31]);
|
|
/* 02697A14 */ _t14 = cpu->r[30] + 0x00000004u;
|
|
/* 02697A14 */ cpu->f[2] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 02697A18 */ _t15 = cpu->r[30] + 0x00000000u;
|
|
/* 02697A18 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 02697A1C */ _t16 = cpu->r[1] + 0x00000062u;
|
|
/* 02697A1C */ rbrew_write8(cpu->mem, _t16, (uint8_t)cpu->r[31]);
|
|
/* 02697A20 */ cpu->r[3] = cpu->r[1] + 0x00000060u;
|
|
/* 02697A24 */ _t17 = cpu->r[1] + 0x00000063u;
|
|
/* 02697A24 */ rbrew_write8(cpu->mem, _t17, (uint8_t)cpu->r[0]);
|
|
/* 02697A28 */ Gambit_fn_0281B3A8(cpu);
|
|
/* 02697A2C */ _t18 = cpu->r[1] + 0x00000060u;
|
|
/* 02697A2C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02697A30 */ cpu->r[4] = cpu->r[1] + 0x000000B0u;
|
|
/* 02697A34 */ cpu->r[3] = cpu->r[1] + 0x000000B4u;
|
|
/* 02697A38 */ _t19 = cpu->r[1] + 0x000000B0u;
|
|
/* 02697A38 */ rbrew_write32(cpu->mem, _t19, cpu->r[0]);
|
|
/* 02697A3C */ Gambit_fn_027FF610(cpu);
|
|
/* 02697A40 */ cpu->r[3] = cpu->r[1] + 0x000000B4u;
|
|
/* 02697A44 */ cpu->r[4] = 0x00000111u;
|
|
/* 02697A48 */ Gambit_fn_027FF658(cpu);
|
|
/* 02697A4C */ cpu->f[1] = cpu->f[30];
|
|
/* 02697A50 */ cpu->r[3] = cpu->r[1] + 0x000000B4u;
|
|
/* 02697A54 */ Gambit_fn_027FF5D4(cpu);
|
|
/* 02697A58 */ cpu->r[30] = 0x10110000u;
|
|
/* 02697A5C */ _t20 = cpu->r[29] + 0x00000004u;
|
|
/* 02697A5C */ cpu->r[4] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02697A60 */ cpu->r[0] = cpu->r[1] + 0x00000070u;
|
|
/* 02697A64 */ _t21 = cpu->r[30] + 0x00007399u;
|
|
/* 02697A64 */ cpu->r[30] = rbrew_read8(cpu->mem, _t21);
|
|
/* 02697A68 */ cpu->r[7] = 0x00000040u;
|
|
/* 02697A6C */ _t22 = cpu->r[1] + 0x00000064u;
|
|
/* 02697A6C */ rbrew_write32(cpu->mem, _t22, cpu->r[0]);
|
|
/* 02697A70 */ cpu->r[11] = 0x100E0000u;
|
|
/* 02697A74 */ _t23 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02697A74 */ rbrew_write32(cpu->mem, _t23, cpu->r[7]);
|
|
/* 02697A78 */ cpu->r[11] = cpu->r[11] + 0x00003DC8u;
|
|
/* 02697A7C */ _t24 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02697A7C */ rbrew_write32(cpu->mem, _t24, cpu->r[7]);
|
|
/* 02697A80 */ _t25 = cpu->r[1] + 0x00000068u;
|
|
/* 02697A80 */ rbrew_write32(cpu->mem, _t25, cpu->r[11]);
|
|
/* 02697A84 */ _t26 = cpu->r[1] + 0x00000070u;
|
|
/* 02697A84 */ rbrew_write8(cpu->mem, _t26, (uint8_t)cpu->r[30]);
|
|
/* 02697A88 */ _t27 = cpu->r[1] + 0x000000AFu;
|
|
/* 02697A88 */ rbrew_write8(cpu->mem, _t27, (uint8_t)cpu->r[30]);
|
|
/* 02697A8C */ _t28 = cpu->r[4] + 0x00000014u;
|
|
/* 02697A8C */ cpu->r[5] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02697A90 */ cpu->r[24] = 0x100E0000u;
|
|
/* 02697A94 */ cpu->ctr = cpu->r[5];
|
|
/* 02697A98 */ cpu->r[24] = cpu->r[24] + 0x00003D50u;
|
|
/* 02697A9C */ cpu->r[3] = cpu->r[29];
|
|
/* 02697AA0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02697AA4 */ _t29 = cpu->r[29] + 0x00000000u;
|
|
/* 02697AA4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02697AA8 */ _t30 = cpu->r[8] + 0x00000000u;
|
|
/* 02697AA8 */ cpu->r[6] = rbrew_read8(cpu->mem, _t30);
|
|
/* 02697AAC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[30]);
|
|
/* 02697AB0 */ cpu->r[11] = 0x00080000u;
|
|
/* 02697AB4 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02697AB4 */ _t32 = _t31 & 0x00000001u;
|
|
/* 02697AB4 */ if (_t32) goto L_02697ADC; else goto L_02697AB8;
|
|
L_02697AB8: ; // 0x2697ab8
|
|
/* 02697AB8 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 02697ABC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[11]);
|
|
/* 02697AC0 */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 02697AC4 */ _t33 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02697AC4 */ _t34 = _t33 & 0x00000001u;
|
|
/* 02697AC4 */ if (_t34) goto L_02697AD8; else goto L_02697AC8;
|
|
L_02697AC8: ; // 0x2697ac8
|
|
/* 02697AC8 */ _t35 = cpu->r[8] + 0x00000000u;
|
|
/* 02697AC8 */ cpu->r[7] = rbrew_read8(cpu->mem, _t35);
|
|
/* 02697ACC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[30]);
|
|
/* 02697AD0 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02697AD0 */ _t37 = _t36 & 0x00000001u;
|
|
/* 02697AD0 */ if (_t37) goto L_02697AD4; else goto L_02697AB8;
|
|
L_02697AD4: ; // 0x2697ad4
|
|
/* 02697AD4 */ goto L_02697ADC;
|
|
L_02697AD8: ; // 0x2697ad8
|
|
/* 02697AD8 */ cpu->r[31] = 0x00000000u;
|
|
L_02697ADC: ; // 0x2697adc
|
|
/* 02697ADC */ cpu->r[5] = 0x100E0000u;
|
|
/* 02697AE0 */ cpu->r[28] = cpu->r[29];
|
|
/* 02697AE4 */ cpu->r[22] = 0x00000000u;
|
|
/* 02697AE8 */ _t38 = cpu->r[5] + 0x00003D48u;
|
|
/* 02697AE8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 02697AEC */ cpu->r[20] = cpu->r[22];
|
|
/* 02697AF0 */ _t39 = cpu->r[1] + 0x00000008u;
|
|
/* 02697AF0 */ rbrew_write32(cpu->mem, _t39, cpu->r[28]);
|
|
/* 02697AF4 */ cpu->r[23] = 0x100E0000u;
|
|
/* 02697AF8 */ _t40 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02697AF8 */ rbrew_write32(cpu->mem, _t40, cpu->r[20]);
|
|
/* 02697AFC */ cpu->r[23] = cpu->r[23] + 0x00003DF0u;
|
|
/* 02697B00 */ cpu->r[27] = 0x00080000u;
|
|
/* 02697B04 */ cpu->r[4] = 0x100E0000u;
|
|
/* 02697B08 */ _t41 = cpu->r[1] + 0x00000010u;
|
|
/* 02697B08 */ rbrew_write32(cpu->mem, _t41, cpu->r[23]);
|
|
/* 02697B0C */ cpu->r[21] = cpu->r[31] + 0x00000001u;
|
|
/* 02697B10 */ cpu->r[0] = 0x100E0000u;
|
|
/* 02697B14 */ _t42 = cpu->r[4] + 0x00003E00u;
|
|
/* 02697B14 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 02697B18 */ cpu->r[27] = cpu->r[27] + 0x00000001u;
|
|
/* 02697B1C */ cpu->r[0] = cpu->r[0] + 0x00003E10u;
|
|
/* 02697B20 */ _t43 = cpu->r[1] + 0x00000018u;
|
|
/* 02697B20 */ rbrew_write32(cpu->mem, _t43, cpu->r[24]);
|
|
/* 02697B24 */ cpu->r[31] = 0x101F0000u;
|
|
/* 02697B28 */ cpu->f[28] = cpu->f[0] * cpu->f[30];
|
|
/* 02697B2C */ _t44 = cpu->r[1] + 0x00000014u;
|
|
/* 02697B2C */ rbrew_write32(cpu->mem, _t44, cpu->r[0]);
|
|
L_02697B30: ; // 0x2697b30
|
|
/* 02697B30 */ cpu->f[29] = cpu->f[28];
|
|
/* 02697B34 */ cpu->r[25] = cpu->r[30];
|
|
/* 02697B38 */ cpu->f[30] = cpu->f[31];
|
|
/* 02697B3C */ goto L_02697F10;
|
|
L_02697B40: ; // 0x2697b40
|
|
/* 02697B40 */ _t45 = cpu->r[1] + 0x00000014u;
|
|
/* 02697B40 */ cpu->r[9] = rbrew_read32(cpu->mem, _t45);
|
|
/* 02697B44 */ _t46 = cpu->r[1] + 0x00000020u;
|
|
/* 02697B44 */ rbrew_write32(cpu->mem, _t46, cpu->r[20]);
|
|
/* 02697B48 */ _t47 = cpu->r[1] + 0x00000028u;
|
|
/* 02697B48 */ rbrew_write32(cpu->mem, _t47, cpu->r[9]);
|
|
/* 02697B4C */ _t48 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02697B4C */ rbrew_write32(cpu->mem, _t48, cpu->r[24]);
|
|
/* 02697B50 */ _t49 = cpu->r[1] + 0x00000024u;
|
|
/* 02697B50 */ rbrew_write32(cpu->mem, _t49, cpu->r[23]);
|
|
/* 02697B54 */ _t50 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02697B54 */ rbrew_write32(cpu->mem, _t50, cpu->r[28]);
|
|
/* 02697B58 */ _t51 = cpu->r[28] + 0x00000004u;
|
|
/* 02697B58 */ cpu->r[11] = rbrew_read32(cpu->mem, _t51);
|
|
/* 02697B5C */ _t52 = cpu->r[11] + 0x00000014u;
|
|
/* 02697B5C */ cpu->r[12] = rbrew_read32(cpu->mem, _t52);
|
|
/* 02697B60 */ cpu->ctr = cpu->r[12];
|
|
/* 02697B64 */ cpu->r[3] = cpu->r[28];
|
|
/* 02697B68 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02697B6C */ _t53 = cpu->r[28] + 0x00000000u;
|
|
/* 02697B6C */ cpu->r[8] = rbrew_read32(cpu->mem, _t53);
|
|
/* 02697B70 */ _t54 = cpu->r[8] + 0x00000000u;
|
|
/* 02697B70 */ cpu->r[0] = rbrew_read8(cpu->mem, _t54);
|
|
/* 02697B74 */ cpu->r[11] = 0x00000000u;
|
|
/* 02697B78 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[25]);
|
|
/* 02697B7C */ cpu->r[10] = 0x00080000u;
|
|
/* 02697B80 */ _t55 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02697B80 */ _t56 = _t55 & 0x00000001u;
|
|
/* 02697B80 */ if (_t56) goto L_02697BA8; else goto L_02697B84;
|
|
L_02697B84: ; // 0x2697b84
|
|
/* 02697B84 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 02697B88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], cpu->r[10]);
|
|
/* 02697B8C */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 02697B90 */ _t57 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02697B90 */ _t58 = _t57 & 0x00000001u;
|
|
/* 02697B90 */ if (_t58) goto L_02697BA4; else goto L_02697B94;
|
|
L_02697B94: ; // 0x2697b94
|
|
/* 02697B94 */ _t59 = cpu->r[8] + 0x00000000u;
|
|
/* 02697B94 */ cpu->r[4] = rbrew_read8(cpu->mem, _t59);
|
|
/* 02697B98 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[25]);
|
|
/* 02697B9C */ _t60 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02697B9C */ _t61 = _t60 & 0x00000001u;
|
|
/* 02697B9C */ if (_t61) goto L_02697BA0; else goto L_02697B84;
|
|
L_02697BA0: ; // 0x2697ba0
|
|
/* 02697BA0 */ goto L_02697BA8;
|
|
L_02697BA4: ; // 0x2697ba4
|
|
/* 02697BA4 */ cpu->r[11] = 0x00000000u;
|
|
L_02697BA8: ; // 0x2697ba8
|
|
/* 02697BA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[20], 0x00000000u);
|
|
/* 02697BAC */ _t62 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02697BAC */ _t63 = _t62 & 0x00000001u;
|
|
/* 02697BAC */ if (_t63) goto L_02697BB8; else goto L_02697BB0;
|
|
L_02697BB0: ; // 0x2697bb0
|
|
/* 02697BB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[20], cpu->r[11]);
|
|
/* 02697BB4 */ _t64 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02697BB4 */ _t65 = _t64 & 0x00000001u;
|
|
/* 02697BB4 */ if (_t65) goto L_02697BB8; else goto L_02697C00;
|
|
L_02697BB8: ; // 0x2697bb8
|
|
/* 02697BB8 */ _t66 = cpu->r[1] + 0x00000008u;
|
|
/* 02697BB8 */ cpu->r[19] = rbrew_read32(cpu->mem, _t66);
|
|
/* 02697BBC */ _t67 = cpu->r[19] + 0x00000004u;
|
|
/* 02697BBC */ cpu->r[4] = rbrew_read32(cpu->mem, _t67);
|
|
/* 02697BC0 */ _t68 = cpu->r[4] + 0x00000014u;
|
|
/* 02697BC0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t68);
|
|
/* 02697BC4 */ _t69 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02697BC4 */ cpu->r[20] = rbrew_read32(cpu->mem, _t69);
|
|
/* 02697BC8 */ cpu->ctr = cpu->r[6];
|
|
/* 02697BCC */ _t70 = cpu->r[1] + 0x00000020u;
|
|
/* 02697BCC */ cpu->r[5] = rbrew_read32(cpu->mem, _t70);
|
|
/* 02697BD0 */ cpu->r[12] = cpu->r[5] - cpu->r[20];
|
|
/* 02697BD4 */ cpu->r[3] = cpu->r[19];
|
|
/* 02697BD8 */ cpu->r[28] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 02697BDC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02697BE0 */ _t71 = cpu->r[19] + 0x00000000u;
|
|
/* 02697BE0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t71);
|
|
/* 02697BE4 */ cpu->r[8] = cpu->r[11];
|
|
/* 02697BE8 */ _t72 = cpu->r[8] + 0x00000000u;
|
|
/* 02697BE8 */ cpu->r[7] = rbrew_read8(cpu->mem, _t72);
|
|
/* 02697BEC */ cpu->r[10] = 0x00000000u;
|
|
/* 02697BF0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[25]);
|
|
/* 02697BF4 */ cpu->r[0] = 0x00080000u;
|
|
/* 02697BF8 */ _t73 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02697BF8 */ _t74 = _t73 & 0x00000001u;
|
|
/* 02697BF8 */ if (_t74) goto L_02697BFC; else goto L_02697CA8;
|
|
L_02697BFC: ; // 0x2697bfc
|
|
/* 02697BFC */ goto L_02697CCC;
|
|
L_02697C00: ; // 0x2697c00
|
|
/* 02697C00 */ cpu->r[28] = cpu->r[25];
|
|
L_02697C04: ; // 0x2697c04
|
|
/* 02697C04 */ _t75 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02697C04 */ cpu->r[7] = rbrew_read32(cpu->mem, _t75);
|
|
/* 02697C08 */ _t76 = cpu->r[7] + 0x00000000u;
|
|
/* 02697C08 */ cpu->r[5] = rbrew_read32(cpu->mem, _t76);
|
|
/* 02697C0C */ _t77 = cpu->r[5] + cpu->r[20];
|
|
/* 02697C0C */ cpu->r[6] = rbrew_read8(cpu->mem, _t77);
|
|
/* 02697C10 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[28]);
|
|
/* 02697C14 */ cpu->r[19] = cpu->r[5] + cpu->r[20];
|
|
/* 02697C18 */ _t78 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02697C18 */ _t79 = _t78 & 0x00000001u;
|
|
/* 02697C18 */ if (_t79) goto L_02697C60; else goto L_02697C1C;
|
|
L_02697C1C: ; // 0x2697c1c
|
|
/* 02697C1C */ _t80 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02697C1C */ cpu->r[7] = rbrew_read32(cpu->mem, _t80);
|
|
/* 02697C20 */ _t81 = cpu->r[7] + 0x00000014u;
|
|
/* 02697C20 */ cpu->r[8] = rbrew_read32(cpu->mem, _t81);
|
|
/* 02697C24 */ cpu->ctr = cpu->r[8];
|
|
/* 02697C28 */ cpu->r[3] = cpu->r[1] + 0x00000028u;
|
|
/* 02697C2C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02697C30 */ cpu->ctr = cpu->r[27];
|
|
/* 02697C34 */ _t82 = cpu->r[1] + 0x00000028u;
|
|
/* 02697C34 */ cpu->r[12] = rbrew_read32(cpu->mem, _t82);
|
|
L_02697C38: ; // 0x2697c38
|
|
/* 02697C38 */ _t83 = cpu->r[12] + 0x00000000u;
|
|
/* 02697C38 */ cpu->r[10] = rbrew_read8(cpu->mem, _t83);
|
|
/* 02697C3C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[28]);
|
|
/* 02697C40 */ _t84 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02697C40 */ _t85 = _t84 & 0x00000001u;
|
|
/* 02697C40 */ if (_t85) goto L_02697C58; else goto L_02697C44;
|
|
L_02697C44: ; // 0x2697c44
|
|
/* 02697C44 */ _t86 = cpu->r[19] + 0x00000000u;
|
|
/* 02697C44 */ cpu->r[9] = rbrew_read8(cpu->mem, _t86);
|
|
/* 02697C48 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[9]);
|
|
/* 02697C4C */ _t87 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02697C4C */ _t88 = _t87 & 0x00000001u;
|
|
/* 02697C4C */ if (_t88) goto L_02697C60; else goto L_02697C50;
|
|
L_02697C50: ; // 0x2697c50
|
|
/* 02697C50 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 02697C54 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02697C54 */ _t89 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02697C54 */ _t90 = _t89 >> (0x00000002u & 31u);
|
|
/* 02697C54 */ _t91 = _t90 & 0x00000001u;
|
|
/* 02697C54 */ if (_t91) goto L_02697C38; else goto L_02697C58;
|
|
L_02697C58: ; // 0x2697c58
|
|
/* 02697C58 */ cpu->r[20] = cpu->r[20] + 0x00000001u;
|
|
/* 02697C5C */ goto L_02697C04;
|
|
L_02697C60: ; // 0x2697c60
|
|
/* 02697C60 */ _t92 = cpu->r[1] + 0x00000008u;
|
|
/* 02697C60 */ cpu->r[19] = rbrew_read32(cpu->mem, _t92);
|
|
/* 02697C64 */ cpu->r[5] = cpu->r[20] + 0x00000001u;
|
|
/* 02697C68 */ _t93 = cpu->r[1] + 0x00000020u;
|
|
/* 02697C68 */ rbrew_write32(cpu->mem, _t93, cpu->r[5]);
|
|
/* 02697C6C */ _t94 = cpu->r[19] + 0x00000004u;
|
|
/* 02697C6C */ cpu->r[4] = rbrew_read32(cpu->mem, _t94);
|
|
/* 02697C70 */ _t95 = cpu->r[4] + 0x00000014u;
|
|
/* 02697C70 */ cpu->r[6] = rbrew_read32(cpu->mem, _t95);
|
|
/* 02697C74 */ _t96 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02697C74 */ cpu->r[20] = rbrew_read32(cpu->mem, _t96);
|
|
/* 02697C78 */ cpu->ctr = cpu->r[6];
|
|
/* 02697C7C */ cpu->r[12] = cpu->r[5] - cpu->r[20];
|
|
/* 02697C80 */ cpu->r[3] = cpu->r[19];
|
|
/* 02697C84 */ cpu->r[28] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 02697C88 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02697C8C */ _t97 = cpu->r[19] + 0x00000000u;
|
|
/* 02697C8C */ cpu->r[11] = rbrew_read32(cpu->mem, _t97);
|
|
/* 02697C90 */ cpu->r[8] = cpu->r[11];
|
|
/* 02697C94 */ _t98 = cpu->r[8] + 0x00000000u;
|
|
/* 02697C94 */ cpu->r[7] = rbrew_read8(cpu->mem, _t98);
|
|
/* 02697C98 */ cpu->r[10] = 0x00000000u;
|
|
/* 02697C9C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[25]);
|
|
/* 02697CA0 */ cpu->r[0] = 0x00080000u;
|
|
/* 02697CA4 */ _t99 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02697CA4 */ _t100 = _t99 & 0x00000001u;
|
|
/* 02697CA4 */ if (_t100) goto L_02697CCC; else goto L_02697CA8;
|
|
L_02697CA8: ; // 0x2697ca8
|
|
/* 02697CA8 */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 02697CAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], cpu->r[0]);
|
|
/* 02697CB0 */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 02697CB4 */ _t101 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02697CB4 */ _t102 = _t101 & 0x00000001u;
|
|
/* 02697CB4 */ if (_t102) goto L_02697CC8; else goto L_02697CB8;
|
|
L_02697CB8: ; // 0x2697cb8
|
|
/* 02697CB8 */ _t103 = cpu->r[8] + 0x00000000u;
|
|
/* 02697CB8 */ cpu->r[9] = rbrew_read8(cpu->mem, _t103);
|
|
/* 02697CBC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[25]);
|
|
/* 02697CC0 */ _t104 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02697CC0 */ _t105 = _t104 & 0x00000001u;
|
|
/* 02697CC0 */ if (_t105) goto L_02697CC4; else goto L_02697CA8;
|
|
L_02697CC4: ; // 0x2697cc4
|
|
/* 02697CC4 */ goto L_02697CCC;
|
|
L_02697CC8: ; // 0x2697cc8
|
|
/* 02697CC8 */ cpu->r[10] = 0x00000000u;
|
|
L_02697CCC: ; // 0x2697ccc
|
|
/* 02697CCC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[20], 0x00000000u);
|
|
/* 02697CD0 */ _t106 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02697CD0 */ _t107 = _t106 & 0x00000001u;
|
|
/* 02697CD0 */ if (_t107) goto L_02697CDC; else goto L_02697CD4;
|
|
L_02697CD4: ; // 0x2697cd4
|
|
/* 02697CD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[20], cpu->r[10]);
|
|
/* 02697CD8 */ _t108 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02697CD8 */ _t109 = _t108 & 0x00000001u;
|
|
/* 02697CD8 */ if (_t109) goto L_02697CDC; else goto L_02697CFC;
|
|
L_02697CDC: ; // 0x2697cdc
|
|
/* 02697CDC */ _t110 = cpu->r[31] + 0x000066E8u;
|
|
/* 02697CDC */ cpu->r[0] = rbrew_read32(cpu->mem, _t110);
|
|
/* 02697CE0 */ cpu->r[9] = cpu->r[24];
|
|
/* 02697CE4 */ _t111 = cpu->r[1] + 0x00000064u;
|
|
/* 02697CE4 */ cpu->r[20] = rbrew_read32(cpu->mem, _t111);
|
|
/* 02697CE8 */ _t112 = cpu->r[1] + 0x00000034u;
|
|
/* 02697CE8 */ rbrew_write32(cpu->mem, _t112, cpu->r[9]);
|
|
/* 02697CEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 02697CF0 */ _t113 = cpu->r[1] + 0x00000030u;
|
|
/* 02697CF0 */ rbrew_write32(cpu->mem, _t113, cpu->r[0]);
|
|
/* 02697CF4 */ _t114 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02697CF4 */ _t115 = _t114 & 0x00000001u;
|
|
/* 02697CF4 */ if (_t115) goto L_02697CF8; else goto L_02697D60;
|
|
L_02697CF8: ; // 0x2697cf8
|
|
/* 02697CF8 */ goto L_02697D18;
|
|
L_02697CFC: ; // 0x2697cfc
|
|
/* 02697CFC */ cpu->r[0] = cpu->r[11] + cpu->r[20];
|
|
/* 02697D00 */ _t116 = cpu->r[1] + 0x00000064u;
|
|
/* 02697D00 */ cpu->r[20] = rbrew_read32(cpu->mem, _t116);
|
|
/* 02697D04 */ cpu->r[9] = cpu->r[24];
|
|
/* 02697D08 */ _t117 = cpu->r[1] + 0x00000030u;
|
|
/* 02697D08 */ rbrew_write32(cpu->mem, _t117, cpu->r[0]);
|
|
/* 02697D0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 02697D10 */ _t118 = cpu->r[1] + 0x00000034u;
|
|
/* 02697D10 */ rbrew_write32(cpu->mem, _t118, cpu->r[9]);
|
|
/* 02697D14 */ _t119 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02697D14 */ _t120 = _t119 & 0x00000001u;
|
|
/* 02697D14 */ if (_t120) goto L_02697D18; else goto L_02697D60;
|
|
L_02697D18: ; // 0x2697d18
|
|
/* 02697D18 */ cpu->r[3] = cpu->r[1] + 0x00000030u;
|
|
/* 02697D1C */ Gambit_fn_02698C94(cpu);
|
|
/* 02697D20 */ _t121 = cpu->r[1] + 0x00000030u;
|
|
/* 02697D20 */ cpu->r[6] = rbrew_read32(cpu->mem, _t121);
|
|
/* 02697D24 */ _t122 = cpu->r[6] + 0x00000000u;
|
|
/* 02697D24 */ cpu->r[12] = rbrew_read8(cpu->mem, _t122);
|
|
/* 02697D28 */ cpu->r[28] = 0x00000000u;
|
|
/* 02697D2C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[25]);
|
|
/* 02697D30 */ cpu->r[8] = 0x00080000u;
|
|
/* 02697D34 */ _t123 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02697D34 */ _t124 = _t123 & 0x00000001u;
|
|
/* 02697D34 */ if (_t124) goto L_02697D5C; else goto L_02697D38;
|
|
L_02697D38: ; // 0x2697d38
|
|
/* 02697D38 */ cpu->r[28] = cpu->r[28] + 0x00000001u;
|
|
/* 02697D3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], cpu->r[8]);
|
|
/* 02697D40 */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 02697D44 */ _t125 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02697D44 */ _t126 = _t125 & 0x00000001u;
|
|
/* 02697D44 */ if (_t126) goto L_02697D58; else goto L_02697D48;
|
|
L_02697D48: ; // 0x2697d48
|
|
/* 02697D48 */ _t127 = cpu->r[6] + 0x00000000u;
|
|
/* 02697D48 */ cpu->r[0] = rbrew_read8(cpu->mem, _t127);
|
|
/* 02697D4C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[25]);
|
|
/* 02697D50 */ _t128 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02697D50 */ _t129 = _t128 & 0x00000001u;
|
|
/* 02697D50 */ if (_t129) goto L_02697D54; else goto L_02697D38;
|
|
L_02697D54: ; // 0x2697d54
|
|
/* 02697D54 */ goto L_02697D5C;
|
|
L_02697D58: ; // 0x2697d58
|
|
/* 02697D58 */ cpu->r[28] = 0x00000000u;
|
|
L_02697D5C: ; // 0x2697d5c
|
|
/* 02697D5C */ _t130 = cpu->r[1] + 0x00000034u;
|
|
/* 02697D5C */ cpu->r[9] = rbrew_read32(cpu->mem, _t130);
|
|
L_02697D60: ; // 0x2697d60
|
|
/* 02697D60 */ _t131 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02697D60 */ cpu->r[6] = rbrew_read32(cpu->mem, _t131);
|
|
/* 02697D64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], cpu->r[6]);
|
|
/* 02697D68 */ _t132 = cpu->r[9] + 0x00000014u;
|
|
/* 02697D68 */ cpu->r[4] = rbrew_read32(cpu->mem, _t132);
|
|
/* 02697D6C */ _t133 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02697D6C */ _t134 = _t133 & 0x00000001u;
|
|
/* 02697D6C */ if (_t134) goto L_02697D74; else goto L_02697D70;
|
|
L_02697D70: ; // 0x2697d70
|
|
/* 02697D70 */ cpu->r[28] = cpu->r[6] + 0xFFFFFFFFu;
|
|
L_02697D74: ; // 0x2697d74
|
|
/* 02697D74 */ cpu->ctr = cpu->r[4];
|
|
/* 02697D78 */ cpu->r[3] = cpu->r[1] + 0x00000030u;
|
|
/* 02697D7C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02697D80 */ _t135 = cpu->r[1] + 0x00000030u;
|
|
/* 02697D80 */ cpu->r[4] = rbrew_read32(cpu->mem, _t135);
|
|
/* 02697D84 */ cpu->r[3] = cpu->r[20];
|
|
/* 02697D88 */ cpu->r[5] = cpu->r[28];
|
|
/* 02697D8C */ cpu->r[6] = 0x00000000u;
|
|
/* 02697D90 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 02697D94 */ cpu->r[12] = 0x100E0000u;
|
|
/* 02697D98 */ cpu->r[7] = 0x43300000u;
|
|
/* 02697D9C */ _t136 = cpu->r[12] + 0x00003E08u;
|
|
/* 02697D9C */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t136);
|
|
/* 02697DA0 */ cpu->r[8] = cpu->r[22] ^ 0x80000000u;
|
|
/* 02697DA4 */ _t137 = cpu->r[1] + 0x00000040u;
|
|
/* 02697DA4 */ rbrew_write32(cpu->mem, _t137, cpu->r[7]);
|
|
/* 02697DA8 */ _t138 = cpu->r[1] + 0x00000044u;
|
|
/* 02697DA8 */ rbrew_write32(cpu->mem, _t138, cpu->r[8]);
|
|
/* 02697DAC */ _t139 = cpu->r[1] + 0x00000040u;
|
|
/* 02697DAC */ cpu->f[7] = rbrew_read_f64(cpu->mem, _t139);
|
|
/* 02697DB0 */ cpu->f[8] = cpu->f[7] - cpu->f[13];
|
|
/* 02697DB4 */ _t140 = cpu->r[20] + cpu->r[28];
|
|
/* 02697DB4 */ rbrew_write8(cpu->mem, _t140, (uint8_t)cpu->r[25]);
|
|
/* 02697DB8 */ cpu->f[12] = (double)(float)cpu->f[8];
|
|
/* 02697DBC */ /* nop */
|
|
/* 02697DC0 */ cpu->f[6] = cpu->f[29] * cpu->f[12];
|
|
/* 02697DC4 */ _t141 = cpu->r[1] + 0x00000038u;
|
|
/* 02697DC4 */ rbrew_write_f32(cpu->mem, _t141, cpu->f[30]);
|
|
/* 02697DC8 */ _t142 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02697DC8 */ rbrew_write_f32(cpu->mem, _t142, cpu->f[6]);
|
|
/* 02697DCC */ /* nop */
|
|
/* 02697DD0 */ _t143 = cpu->r[1] + 0x00000068u;
|
|
/* 02697DD0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t143);
|
|
/* 02697DD4 */ /* nop */
|
|
/* 02697DD8 */ /* nop */
|
|
/* 02697DDC */ _t144 = cpu->r[1] + 0x00000058u;
|
|
/* 02697DDC */ cpu->r[7] = rbrew_read32(cpu->mem, _t144);
|
|
/* 02697DE0 */ _t145 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02697DE0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t145);
|
|
/* 02697DE4 */ _t146 = cpu->r[1] + 0x00000050u;
|
|
/* 02697DE4 */ rbrew_write32(cpu->mem, _t146, cpu->r[7]);
|
|
/* 02697DE8 */ _t147 = cpu->r[1] + 0x00000054u;
|
|
/* 02697DE8 */ rbrew_write32(cpu->mem, _t147, cpu->r[0]);
|
|
/* 02697DEC */ _t148 = cpu->r[9] + 0x00000014u;
|
|
/* 02697DEC */ cpu->r[10] = rbrew_read32(cpu->mem, _t148);
|
|
/* 02697DF0 */ cpu->ctr = cpu->r[10];
|
|
/* 02697DF4 */ cpu->r[3] = cpu->r[1] + 0x00000064u;
|
|
/* 02697DF8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02697DFC */ _t149 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02697DFC */ cpu->r[11] = rbrew_read32(cpu->mem, _t149);
|
|
/* 02697E00 */ cpu->r[8] = 0xFFFFFFFFu;
|
|
/* 02697E04 */ cpu->r[3] = cpu->r[1] + 0x000000B4u;
|
|
/* 02697E08 */ _t150 = cpu->r[1] + 0x00000064u;
|
|
/* 02697E08 */ cpu->r[7] = rbrew_read32(cpu->mem, _t150);
|
|
/* 02697E0C */ cpu->r[4] = cpu->r[1] + 0x00000048u;
|
|
/* 02697E10 */ cpu->r[6] = 0x00000001u;
|
|
/* 02697E14 */ _t151 = cpu->r[1] + 0x00000048u;
|
|
/* 02697E14 */ rbrew_write32(cpu->mem, _t151, cpu->r[11]);
|
|
/* 02697E18 */ cpu->r[5] = cpu->r[1] + 0x00000050u;
|
|
/* 02697E1C */ Gambit_fn_027FF75C(cpu);
|
|
/* 02697E20 */ _t152 = cpu->r[1] + 0x00000008u;
|
|
/* 02697E20 */ cpu->r[28] = rbrew_read32(cpu->mem, _t152);
|
|
/* 02697E24 */ _t153 = cpu->r[28] + 0x00000004u;
|
|
/* 02697E24 */ cpu->r[12] = rbrew_read32(cpu->mem, _t153);
|
|
/* 02697E28 */ _t154 = cpu->r[12] + 0x00000014u;
|
|
/* 02697E28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t154);
|
|
/* 02697E2C */ cpu->ctr = cpu->r[0];
|
|
/* 02697E30 */ _t155 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02697E30 */ cpu->r[20] = rbrew_read32(cpu->mem, _t155);
|
|
/* 02697E34 */ cpu->r[3] = cpu->r[28];
|
|
/* 02697E38 */ cpu->r[22] = cpu->r[22] + 0x00000001u;
|
|
/* 02697E3C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02697E40 */ _t156 = cpu->r[28] + 0x00000000u;
|
|
/* 02697E40 */ cpu->r[11] = rbrew_read32(cpu->mem, _t156);
|
|
/* 02697E44 */ _t157 = cpu->r[11] + 0x00000000u;
|
|
/* 02697E44 */ cpu->r[4] = rbrew_read8(cpu->mem, _t157);
|
|
/* 02697E48 */ cpu->r[12] = 0x00000000u;
|
|
/* 02697E4C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[25]);
|
|
/* 02697E50 */ cpu->r[0] = 0x00080000u;
|
|
/* 02697E54 */ _t158 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02697E54 */ _t159 = _t158 & 0x00000001u;
|
|
/* 02697E54 */ if (_t159) goto L_02697E7C; else goto L_02697E58;
|
|
L_02697E58: ; // 0x2697e58
|
|
/* 02697E58 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 02697E5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], cpu->r[0]);
|
|
/* 02697E60 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 02697E64 */ _t160 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02697E64 */ _t161 = _t160 & 0x00000001u;
|
|
/* 02697E64 */ if (_t161) goto L_02697E78; else goto L_02697E68;
|
|
L_02697E68: ; // 0x2697e68
|
|
/* 02697E68 */ _t162 = cpu->r[11] + 0x00000000u;
|
|
/* 02697E68 */ cpu->r[5] = rbrew_read8(cpu->mem, _t162);
|
|
/* 02697E6C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[25]);
|
|
/* 02697E70 */ _t163 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02697E70 */ _t164 = _t163 & 0x00000001u;
|
|
/* 02697E70 */ if (_t164) goto L_02697E74; else goto L_02697E58;
|
|
L_02697E74: ; // 0x2697e74
|
|
/* 02697E74 */ goto L_02697E7C;
|
|
L_02697E78: ; // 0x2697e78
|
|
/* 02697E78 */ cpu->r[12] = 0x00000000u;
|
|
L_02697E7C: ; // 0x2697e7c
|
|
/* 02697E7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[20], 0x00000000u);
|
|
/* 02697E80 */ _t165 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02697E80 */ _t166 = _t165 & 0x00000001u;
|
|
/* 02697E80 */ if (_t166) goto L_02697E8C; else goto L_02697E84;
|
|
L_02697E84: ; // 0x2697e84
|
|
/* 02697E84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[20], cpu->r[12]);
|
|
/* 02697E88 */ _t167 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02697E88 */ _t168 = _t167 & 0x00000001u;
|
|
/* 02697E88 */ if (_t168) goto L_02697E8C; else goto L_02697E98;
|
|
L_02697E8C: ; // 0x2697e8c
|
|
/* 02697E8C */ _t169 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02697E8C */ cpu->r[20] = rbrew_read32(cpu->mem, _t169);
|
|
/* 02697E90 */ _t170 = cpu->r[1] + 0x00000008u;
|
|
/* 02697E90 */ cpu->r[28] = rbrew_read32(cpu->mem, _t170);
|
|
/* 02697E94 */ goto L_02697B30;
|
|
L_02697E98: ; // 0x2697e98
|
|
/* 02697E98 */ cpu->r[19] = cpu->r[25];
|
|
L_02697E9C: ; // 0x2697e9c
|
|
/* 02697E9C */ _t171 = cpu->r[1] + 0x00000008u;
|
|
/* 02697E9C */ cpu->r[28] = rbrew_read32(cpu->mem, _t171);
|
|
/* 02697EA0 */ _t172 = cpu->r[28] + 0x00000000u;
|
|
/* 02697EA0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t172);
|
|
/* 02697EA4 */ _t173 = cpu->r[6] + cpu->r[20];
|
|
/* 02697EA4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t173);
|
|
/* 02697EA8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[19]);
|
|
/* 02697EAC */ cpu->r[18] = cpu->r[6] + cpu->r[20];
|
|
/* 02697EB0 */ _t174 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02697EB0 */ _t175 = _t174 & 0x00000001u;
|
|
/* 02697EB0 */ if (_t175) goto L_02697F08; else goto L_02697EB4;
|
|
L_02697EB4: ; // 0x2697eb4
|
|
/* 02697EB4 */ _t176 = cpu->r[1] + 0x00000018u;
|
|
/* 02697EB4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t176);
|
|
/* 02697EB8 */ _t177 = cpu->r[9] + 0x00000014u;
|
|
/* 02697EB8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t177);
|
|
/* 02697EBC */ cpu->ctr = cpu->r[10];
|
|
/* 02697EC0 */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 02697EC4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02697EC8 */ cpu->ctr = cpu->r[27];
|
|
/* 02697ECC */ _t178 = cpu->r[1] + 0x00000014u;
|
|
/* 02697ECC */ cpu->r[8] = rbrew_read32(cpu->mem, _t178);
|
|
L_02697ED0: ; // 0x2697ed0
|
|
/* 02697ED0 */ _t179 = cpu->r[8] + 0x00000000u;
|
|
/* 02697ED0 */ cpu->r[12] = rbrew_read8(cpu->mem, _t179);
|
|
/* 02697ED4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[19]);
|
|
/* 02697ED8 */ _t180 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02697ED8 */ _t181 = _t180 & 0x00000001u;
|
|
/* 02697ED8 */ if (_t181) goto L_02697F00; else goto L_02697EDC;
|
|
L_02697EDC: ; // 0x2697edc
|
|
/* 02697EDC */ _t182 = cpu->r[18] + 0x00000000u;
|
|
/* 02697EDC */ cpu->r[0] = rbrew_read8(cpu->mem, _t182);
|
|
/* 02697EE0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[0]);
|
|
/* 02697EE4 */ _t183 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02697EE4 */ _t184 = _t183 & 0x00000001u;
|
|
/* 02697EE4 */ if (_t184) goto L_02697EE8; else goto L_02697EF8;
|
|
L_02697EE8: ; // 0x2697ee8
|
|
/* 02697EE8 */ _t185 = cpu->r[1] + 0x00000008u;
|
|
/* 02697EE8 */ cpu->r[28] = rbrew_read32(cpu->mem, _t185);
|
|
/* 02697EEC */ cpu->r[20] = cpu->r[20] + 0x00000001u;
|
|
/* 02697EF0 */ _t186 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02697EF0 */ rbrew_write32(cpu->mem, _t186, cpu->r[20]);
|
|
/* 02697EF4 */ goto L_02697F10;
|
|
L_02697EF8: ; // 0x2697ef8
|
|
/* 02697EF8 */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 02697EFC */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02697EFC */ _t187 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02697EFC */ _t188 = _t187 >> (0x00000002u & 31u);
|
|
/* 02697EFC */ _t189 = _t188 & 0x00000001u;
|
|
/* 02697EFC */ if (_t189) goto L_02697ED0; else goto L_02697F00;
|
|
L_02697F00: ; // 0x2697f00
|
|
/* 02697F00 */ cpu->r[20] = cpu->r[20] + 0x00000001u;
|
|
/* 02697F04 */ goto L_02697E9C;
|
|
L_02697F08: ; // 0x2697f08
|
|
/* 02697F08 */ cpu->r[20] = cpu->r[20] + 0x00000001u;
|
|
/* 02697F0C */ _t190 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02697F0C */ rbrew_write32(cpu->mem, _t190, cpu->r[20]);
|
|
L_02697F10: ; // 0x2697f10
|
|
/* 02697F10 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[29]);
|
|
/* 02697F14 */ _t191 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02697F14 */ _t192 = _t191 & 0x00000001u;
|
|
/* 02697F14 */ if (_t192) goto L_02697F18; else goto L_02697B40;
|
|
L_02697F18: ; // 0x2697f18
|
|
/* 02697F18 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[20], cpu->r[21]);
|
|
/* 02697F1C */ _t193 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02697F1C */ _t194 = _t193 & 0x00000001u;
|
|
/* 02697F1C */ if (_t194) goto L_02697F20; else goto L_02697B40;
|
|
L_02697F20: ; // 0x2697f20
|
|
/* 02697F20 */ /* nop */
|
|
/* 02697F24 */ _t195 = cpu->r[1] + 0x00000370u;
|
|
/* 02697F24 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t195);
|
|
/* 02697F28 */ _t196 = cpu->r[1] + 0x00000380u;
|
|
/* 02697F28 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t196);
|
|
/* 02697F2C */ _t197 = cpu->r[1] + 0x00000368u;
|
|
/* 02697F2C */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t197);
|
|
/* 02697F30 */ _t198 = cpu->r[1] + 0x00000378u;
|
|
/* 02697F30 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t198);
|
|
/* 02697F34 */ _t199 = cpu->r[1] + 0x00000360u;
|
|
/* 02697F34 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t199);
|
|
/* 02697F38 */ _t200 = cpu->r[1] + 0x00000390u;
|
|
/* 02697F38 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t200);
|
|
/* 02697F3C */ _t201 = cpu->r[1] + 0x00000358u;
|
|
/* 02697F3C */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t201);
|
|
/* 02697F40 */ _t202 = cpu->r[1] + 0x00000388u;
|
|
/* 02697F40 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t202);
|
|
/* 02697F44 */ _t203 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02697F44 */ _t204 = _t203 & 0x00000001u;
|
|
/* 02697F44 */ if (_t204) goto L_02697F48; // else: addr-0 trap, fall-through
|
|
L_02697F48: ; // 0x2697f48
|
|
/* 02697F48 */ _t205 = cpu->r[1] + 0x0000039Cu;
|
|
/* 02697F48 */ cpu->r[0] = rbrew_read32(cpu->mem, _t205);
|
|
/* 02697F4C */ cpu->lr = cpu->r[0];
|
|
/* 02697F50 */ cpu->r[1] = cpu->r[1] + 0x00000398u;
|
|
/* 02697F54 */ return;
|
|
}
|
|
|
|
// fn_02697F58 @ 0x2697f58
|
|
void Gambit_fn_02697F58(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_02697F58: ; // 0x2697f58
|
|
/* 02697F58 */ cpu->r[0] = cpu->lr;
|
|
/* 02697F5C */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 02697F5C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02697F5C */ cpu->r[1] = _t0;
|
|
/* 02697F60 */ _t1 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02697F60 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02697F64 */ _t2 = cpu->r[1] + 0x00000018u;
|
|
/* 02697F64 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02697F68 */ cpu->r[30] = 0x101C0000u;
|
|
/* 02697F6C */ cpu->r[31] = cpu->r[3];
|
|
/* 02697F70 */ _t3 = cpu->r[1] + 0x00000024u;
|
|
/* 02697F70 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02697F74 */ _t4 = cpu->r[30] + 0x00000E14u;
|
|
/* 02697F74 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02697F78 */ cpu->r[4] = 0x00000000u;
|
|
/* 02697F7C */ Gambit_fn_0200CBD8(cpu);
|
|
/* 02697F80 */ cpu->r[4] = cpu->r[3];
|
|
/* 02697F84 */ cpu->r[5] = cpu->r[31];
|
|
/* 02697F88 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02697F8C */ Gambit_fn_02014888(cpu);
|
|
/* 02697F90 */ _t5 = cpu->r[30] + 0x00000E14u;
|
|
/* 02697F90 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02697F94 */ cpu->r[4] = 0x00000000u;
|
|
/* 02697F98 */ Gambit_fn_0200CBD8(cpu);
|
|
/* 02697F9C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02697FA0 */ Gambit_fn_02014980(cpu);
|
|
/* 02697FA4 */ _t6 = cpu->r[1] + 0x00000024u;
|
|
/* 02697FA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02697FA8 */ _t7 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02697FA8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02697FAC */ cpu->lr = cpu->r[0];
|
|
/* 02697FB0 */ _t8 = cpu->r[1] + 0x00000018u;
|
|
/* 02697FB0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02697FB4 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 02697FB8 */ return;
|
|
}
|
|
|
|
// fn_02697F5C @ 0x2697f5c
|
|
void Gambit_fn_02697F5C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_02697F5C: ; // 0x2697f5c
|
|
/* 02697F5C */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 02697F5C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02697F5C */ cpu->r[1] = _t0;
|
|
/* 02697F60 */ _t1 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02697F60 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02697F64 */ _t2 = cpu->r[1] + 0x00000018u;
|
|
/* 02697F64 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02697F68 */ cpu->r[30] = 0x101C0000u;
|
|
/* 02697F6C */ cpu->r[31] = cpu->r[3];
|
|
/* 02697F70 */ _t3 = cpu->r[1] + 0x00000024u;
|
|
/* 02697F70 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02697F74 */ _t4 = cpu->r[30] + 0x00000E14u;
|
|
/* 02697F74 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02697F78 */ cpu->r[4] = 0x00000000u;
|
|
/* 02697F7C */ Gambit_fn_0200CBD8(cpu);
|
|
/* 02697F80 */ cpu->r[4] = cpu->r[3];
|
|
/* 02697F84 */ cpu->r[5] = cpu->r[31];
|
|
/* 02697F88 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02697F8C */ Gambit_fn_02014888(cpu);
|
|
/* 02697F90 */ _t5 = cpu->r[30] + 0x00000E14u;
|
|
/* 02697F90 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02697F94 */ cpu->r[4] = 0x00000000u;
|
|
/* 02697F98 */ Gambit_fn_0200CBD8(cpu);
|
|
/* 02697F9C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02697FA0 */ Gambit_fn_02014980(cpu);
|
|
/* 02697FA4 */ _t6 = cpu->r[1] + 0x00000024u;
|
|
/* 02697FA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02697FA8 */ _t7 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02697FA8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02697FAC */ cpu->lr = cpu->r[0];
|
|
/* 02697FB0 */ _t8 = cpu->r[1] + 0x00000018u;
|
|
/* 02697FB0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02697FB4 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 02697FB8 */ return;
|
|
}
|
|
|
|
// fn_02697FBC @ 0x2697fbc
|
|
void Gambit_fn_02697FBC(CPUState* cpu) {
|
|
uint32_t _t0, _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_02697FBC: ; // 0x2697fbc
|
|
/* 02697FBC */ cpu->r[0] = cpu->lr;
|
|
/* 02697FC0 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 02697FC0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02697FC0 */ cpu->r[1] = _t0;
|
|
/* 02697FC4 */ _t1 = cpu->r[1] + 0x00000020u;
|
|
/* 02697FC4 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[30]);
|
|
/* 02697FC8 */ /* nop */
|
|
/* 02697FCC */ _t2 = cpu->r[1] + 0x00000030u;
|
|
/* 02697FCC */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 02697FD0 */ /* nop */
|
|
/* 02697FD4 */ _t3 = cpu->r[1] + 0x00000028u;
|
|
/* 02697FD4 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[30]);
|
|
/* 02697FD8 */ cpu->r[9] = 0x100E0000u;
|
|
/* 02697FDC */ _t4 = cpu->r[1] + 0x00000038u;
|
|
/* 02697FDC */ rbrew_write_f32(cpu->mem, _t4, cpu->f[31]);
|
|
/* 02697FE0 */ _t5 = cpu->r[9] + 0x00003E14u;
|
|
/* 02697FE0 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 02697FE4 */ _t6 = cpu->r[1] + 0x00000044u;
|
|
/* 02697FE4 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02697FE8 */ _t7 = cpu->r[1] + 0x00000010u;
|
|
/* 02697FE8 */ rbrew_write32(cpu->mem, _t7, cpu->r[28]);
|
|
/* 02697FEC */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 02697FEC */ rbrew_write32(cpu->mem, _t8, cpu->r[29]);
|
|
/* 02697FF0 */ _t9 = cpu->r[1] + 0x00000018u;
|
|
/* 02697FF0 */ rbrew_write32(cpu->mem, _t9, cpu->r[30]);
|
|
/* 02697FF4 */ cpu->r[28] = 0x00000001u;
|
|
/* 02697FF8 */ _t10 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02697FF8 */ rbrew_write32(cpu->mem, _t10, cpu->r[31]);
|
|
/* 02697FFC */ cpu->r[29] = 0x00000000u;
|
|
/* 02698000 */ cpu->r[31] = 0x00000014u;
|
|
L_02698004: ; // 0x2698004
|
|
/* 02698004 */ cpu->r[8] = 0x100E0000u;
|
|
/* 02698008 */ cpu->r[0] = cpu->r[29] ^ 0x80000000u;
|
|
/* 0269800C */ _t11 = cpu->r[8] + 0x00003E08u;
|
|
/* 0269800C */ cpu->f[12] = rbrew_read_f64(cpu->mem, _t11);
|
|
/* 02698010 */ cpu->r[30] = 0x43300000u;
|
|
/* 02698014 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02698014 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 02698018 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 02698018 */ rbrew_write32(cpu->mem, _t13, cpu->r[30]);
|
|
/* 0269801C */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 0269801C */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t14);
|
|
/* 02698020 */ cpu->f[13] = cpu->f[0] - cpu->f[12];
|
|
/* 02698024 */ cpu->f[0] = (double)(float)cpu->f[13];
|
|
/* 02698028 */ cpu->f[30] = cpu->f[31] * cpu->f[0];
|
|
/* 0269802C */ cpu->f[1] = cpu->f[30];
|
|
/* 02698030 */ Gambit_fn_02C88F2C(cpu);
|
|
/* 02698034 */ cpu->f[1] = cpu->f[30];
|
|
/* 02698038 */ Gambit_fn_02C886F8(cpu);
|
|
/* 0269803C */ cpu->r[0] = cpu->r[28] ^ 0x80000000u;
|
|
/* 02698040 */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 02698040 */ rbrew_write32(cpu->mem, _t15, cpu->r[30]);
|
|
/* 02698044 */ cpu->r[12] = 0x100E0000u;
|
|
/* 02698048 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02698048 */ rbrew_write32(cpu->mem, _t16, cpu->r[0]);
|
|
/* 0269804C */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 0269804C */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t17);
|
|
/* 02698050 */ _t18 = cpu->r[12] + 0x00003E08u;
|
|
/* 02698050 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t18);
|
|
/* 02698054 */ cpu->f[12] = cpu->f[13] - cpu->f[0];
|
|
/* 02698058 */ cpu->f[0] = (double)(float)cpu->f[12];
|
|
/* 0269805C */ cpu->f[30] = cpu->f[31] * cpu->f[0];
|
|
/* 02698060 */ cpu->f[1] = cpu->f[30];
|
|
/* 02698064 */ Gambit_fn_02C88F2C(cpu);
|
|
/* 02698068 */ cpu->f[1] = cpu->f[30];
|
|
/* 0269806C */ Gambit_fn_02C886F8(cpu);
|
|
/* 02698070 */ cpu->r[31] = cpu->r[31] + 0xFFFFFFFFu;
|
|
/* 02698070 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02698074 */ cpu->r[28] = cpu->r[28] + 0x00000001u;
|
|
/* 02698078 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 0269807C */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269807C */ _t20 = _t19 & 0x00000001u;
|
|
/* 0269807C */ if (_t20) goto L_02698080; else goto L_02698004;
|
|
L_02698080: ; // 0x2698080
|
|
/* 02698080 */ _t21 = cpu->r[1] + 0x00000010u;
|
|
/* 02698080 */ cpu->r[28] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02698084 */ _t22 = cpu->r[1] + 0x00000014u;
|
|
/* 02698084 */ cpu->r[29] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02698088 */ _t23 = cpu->r[1] + 0x00000038u;
|
|
/* 02698088 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 0269808C */ _t24 = cpu->r[1] + 0x00000028u;
|
|
/* 0269808C */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 02698090 */ _t25 = cpu->r[1] + 0x00000030u;
|
|
/* 02698090 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t25);
|
|
/* 02698094 */ _t26 = cpu->r[1] + 0x00000020u;
|
|
/* 02698094 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t26);
|
|
/* 02698098 */ _t27 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02698098 */ cpu->r[31] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0269809C */ _t28 = cpu->r[1] + 0x00000018u;
|
|
/* 0269809C */ cpu->r[30] = rbrew_read32(cpu->mem, _t28);
|
|
/* 026980A0 */ _t29 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026980A0 */ _t30 = _t29 & 0x00000001u;
|
|
/* 026980A0 */ if (_t30) goto L_026980A4; // else: addr-0 trap, fall-through
|
|
L_026980A4: ; // 0x26980a4
|
|
/* 026980A4 */ _t31 = cpu->r[1] + 0x00000044u;
|
|
/* 026980A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 026980A8 */ cpu->lr = cpu->r[0];
|
|
/* 026980AC */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 026980B0 */ return;
|
|
}
|
|
|
|
// fn_02697FC0 @ 0x2697fc0
|
|
void Gambit_fn_02697FC0(CPUState* cpu) {
|
|
uint32_t _t0, _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_02697FC0: ; // 0x2697fc0
|
|
/* 02697FC0 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 02697FC0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02697FC0 */ cpu->r[1] = _t0;
|
|
/* 02697FC4 */ _t1 = cpu->r[1] + 0x00000020u;
|
|
/* 02697FC4 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[30]);
|
|
/* 02697FC8 */ /* nop */
|
|
/* 02697FCC */ _t2 = cpu->r[1] + 0x00000030u;
|
|
/* 02697FCC */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 02697FD0 */ /* nop */
|
|
/* 02697FD4 */ _t3 = cpu->r[1] + 0x00000028u;
|
|
/* 02697FD4 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[30]);
|
|
/* 02697FD8 */ cpu->r[9] = 0x100E0000u;
|
|
/* 02697FDC */ _t4 = cpu->r[1] + 0x00000038u;
|
|
/* 02697FDC */ rbrew_write_f32(cpu->mem, _t4, cpu->f[31]);
|
|
/* 02697FE0 */ _t5 = cpu->r[9] + 0x00003E14u;
|
|
/* 02697FE0 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 02697FE4 */ _t6 = cpu->r[1] + 0x00000044u;
|
|
/* 02697FE4 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02697FE8 */ _t7 = cpu->r[1] + 0x00000010u;
|
|
/* 02697FE8 */ rbrew_write32(cpu->mem, _t7, cpu->r[28]);
|
|
/* 02697FEC */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 02697FEC */ rbrew_write32(cpu->mem, _t8, cpu->r[29]);
|
|
/* 02697FF0 */ _t9 = cpu->r[1] + 0x00000018u;
|
|
/* 02697FF0 */ rbrew_write32(cpu->mem, _t9, cpu->r[30]);
|
|
/* 02697FF4 */ cpu->r[28] = 0x00000001u;
|
|
/* 02697FF8 */ _t10 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02697FF8 */ rbrew_write32(cpu->mem, _t10, cpu->r[31]);
|
|
/* 02697FFC */ cpu->r[29] = 0x00000000u;
|
|
/* 02698000 */ cpu->r[31] = 0x00000014u;
|
|
L_02698004: ; // 0x2698004
|
|
/* 02698004 */ cpu->r[8] = 0x100E0000u;
|
|
/* 02698008 */ cpu->r[0] = cpu->r[29] ^ 0x80000000u;
|
|
/* 0269800C */ _t11 = cpu->r[8] + 0x00003E08u;
|
|
/* 0269800C */ cpu->f[12] = rbrew_read_f64(cpu->mem, _t11);
|
|
/* 02698010 */ cpu->r[30] = 0x43300000u;
|
|
/* 02698014 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02698014 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 02698018 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 02698018 */ rbrew_write32(cpu->mem, _t13, cpu->r[30]);
|
|
/* 0269801C */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 0269801C */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t14);
|
|
/* 02698020 */ cpu->f[13] = cpu->f[0] - cpu->f[12];
|
|
/* 02698024 */ cpu->f[0] = (double)(float)cpu->f[13];
|
|
/* 02698028 */ cpu->f[30] = cpu->f[31] * cpu->f[0];
|
|
/* 0269802C */ cpu->f[1] = cpu->f[30];
|
|
/* 02698030 */ Gambit_fn_02C88F2C(cpu);
|
|
/* 02698034 */ cpu->f[1] = cpu->f[30];
|
|
/* 02698038 */ Gambit_fn_02C886F8(cpu);
|
|
/* 0269803C */ cpu->r[0] = cpu->r[28] ^ 0x80000000u;
|
|
/* 02698040 */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 02698040 */ rbrew_write32(cpu->mem, _t15, cpu->r[30]);
|
|
/* 02698044 */ cpu->r[12] = 0x100E0000u;
|
|
/* 02698048 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02698048 */ rbrew_write32(cpu->mem, _t16, cpu->r[0]);
|
|
/* 0269804C */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 0269804C */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t17);
|
|
/* 02698050 */ _t18 = cpu->r[12] + 0x00003E08u;
|
|
/* 02698050 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t18);
|
|
/* 02698054 */ cpu->f[12] = cpu->f[13] - cpu->f[0];
|
|
/* 02698058 */ cpu->f[0] = (double)(float)cpu->f[12];
|
|
/* 0269805C */ cpu->f[30] = cpu->f[31] * cpu->f[0];
|
|
/* 02698060 */ cpu->f[1] = cpu->f[30];
|
|
/* 02698064 */ Gambit_fn_02C88F2C(cpu);
|
|
/* 02698068 */ cpu->f[1] = cpu->f[30];
|
|
/* 0269806C */ Gambit_fn_02C886F8(cpu);
|
|
/* 02698070 */ cpu->r[31] = cpu->r[31] + 0xFFFFFFFFu;
|
|
/* 02698070 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02698074 */ cpu->r[28] = cpu->r[28] + 0x00000001u;
|
|
/* 02698078 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 0269807C */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269807C */ _t20 = _t19 & 0x00000001u;
|
|
/* 0269807C */ if (_t20) goto L_02698080; else goto L_02698004;
|
|
L_02698080: ; // 0x2698080
|
|
/* 02698080 */ _t21 = cpu->r[1] + 0x00000010u;
|
|
/* 02698080 */ cpu->r[28] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02698084 */ _t22 = cpu->r[1] + 0x00000014u;
|
|
/* 02698084 */ cpu->r[29] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02698088 */ _t23 = cpu->r[1] + 0x00000038u;
|
|
/* 02698088 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 0269808C */ _t24 = cpu->r[1] + 0x00000028u;
|
|
/* 0269808C */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 02698090 */ _t25 = cpu->r[1] + 0x00000030u;
|
|
/* 02698090 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t25);
|
|
/* 02698094 */ _t26 = cpu->r[1] + 0x00000020u;
|
|
/* 02698094 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t26);
|
|
/* 02698098 */ _t27 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02698098 */ cpu->r[31] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0269809C */ _t28 = cpu->r[1] + 0x00000018u;
|
|
/* 0269809C */ cpu->r[30] = rbrew_read32(cpu->mem, _t28);
|
|
/* 026980A0 */ _t29 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026980A0 */ _t30 = _t29 & 0x00000001u;
|
|
/* 026980A0 */ if (_t30) goto L_026980A4; // else: addr-0 trap, fall-through
|
|
L_026980A4: ; // 0x26980a4
|
|
/* 026980A4 */ _t31 = cpu->r[1] + 0x00000044u;
|
|
/* 026980A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 026980A8 */ cpu->lr = cpu->r[0];
|
|
/* 026980AC */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 026980B0 */ return;
|
|
}
|
|
|
|
// fn_026980B4 @ 0x26980b4
|
|
void Gambit_fn_026980B4(CPUState* cpu) {
|
|
L_026980B4: ; // 0x26980b4
|
|
/* 026980B4 */ return;
|
|
}
|
|
|
|
// fn_026980B8 @ 0x26980b8
|
|
void Gambit_fn_026980B8(CPUState* cpu) {
|
|
L_026980B8: ; // 0x26980b8
|
|
/* 026980B8 */ return;
|
|
}
|
|
|
|
// fn_026980BC @ 0x26980bc
|
|
void Gambit_fn_026980BC(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_026980BC: ; // 0x26980bc
|
|
/* 026980BC */ cpu->r[0] = cpu->lr;
|
|
/* 026980C0 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 026980C0 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 026980C4 */ cpu->r[9] = 0x100E0000u;
|
|
/* 026980C8 */ _t1 = cpu->r[1] + 0xFFFFFF98u;
|
|
/* 026980C8 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 026980C8 */ cpu->r[1] = _t1;
|
|
/* 026980CC */ _t2 = cpu->r[9] + 0x00003E18u;
|
|
/* 026980CC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 026980D0 */ cpu->r[9] = 0x101F0000u;
|
|
/* 026980D4 */ cpu->r[9] = cpu->r[9] + 0x00006368u;
|
|
/* 026980D8 */ /* nop */
|
|
/* 026980DC */ _t3 = cpu->r[9] + 0x00000008u;
|
|
/* 026980DC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 026980E0 */ /* nop */
|
|
/* 026980E4 */ /* nop */
|
|
/* 026980E8 */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 026980E8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 026980EC */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026980EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 026980F0 */ cpu->f[12] = cpu->f[12] * cpu->f[1];
|
|
/* 026980F4 */ _t6 = cpu->r[1] + 0x00000020u;
|
|
/* 026980F4 */ rbrew_write32(cpu->mem, _t6, cpu->r[12]);
|
|
/* 026980F8 */ _t7 = cpu->r[1] + 0x00000024u;
|
|
/* 026980F8 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 026980FC */ /* nop */
|
|
/* 02698100 */ _t8 = cpu->r[1] + 0x00000010u;
|
|
/* 02698100 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[12]);
|
|
/* 02698104 */ _t9 = cpu->r[1] + 0x00000010u;
|
|
/* 02698104 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02698108 */ /* nop */
|
|
/* 0269810C */ /* nop */
|
|
/* 02698110 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02698110 */ cpu->r[10] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02698114 */ _t11 = cpu->r[1] + 0x00000028u;
|
|
/* 02698114 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02698118 */ _t12 = cpu->r[1] + 0x00000028u;
|
|
/* 02698118 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 0269811C */ _t13 = cpu->r[1] + 0x00000018u;
|
|
/* 0269811C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02698120 */ cpu->f[12] = cpu->f[13] + cpu->f[13];
|
|
/* 02698124 */ _t14 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02698124 */ rbrew_write32(cpu->mem, _t14, cpu->r[10]);
|
|
/* 02698128 */ cpu->r[6] = cpu->r[3];
|
|
/* 0269812C */ _t15 = cpu->r[1] + 0x00000030u;
|
|
/* 0269812C */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 02698130 */ cpu->r[5] = 0x101F0000u;
|
|
/* 02698134 */ _t16 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02698134 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[12]);
|
|
/* 02698138 */ _t17 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02698138 */ cpu->r[9] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0269813C */ cpu->r[4] = cpu->r[1] + 0x0000002Cu;
|
|
/* 02698140 */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 02698144 */ cpu->r[5] = cpu->r[5] + 0x00006338u;
|
|
/* 02698148 */ _t18 = cpu->r[1] + 0x00000034u;
|
|
/* 02698148 */ rbrew_write32(cpu->mem, _t18, cpu->r[9]);
|
|
/* 0269814C */ Gambit_fn_0200FC4C(cpu);
|
|
/* 02698150 */ _t19 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02698150 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02698154 */ cpu->lr = cpu->r[0];
|
|
/* 02698158 */ cpu->r[1] = cpu->r[1] + 0x00000068u;
|
|
/* 0269815C */ return;
|
|
}
|
|
|
|
// fn_026980C8 @ 0x26980c8
|
|
void Gambit_fn_026980C8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_026980C8: ; // 0x26980c8
|
|
/* 026980C8 */ _t0 = cpu->r[1] + 0xFFFFFF98u;
|
|
/* 026980C8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 026980C8 */ cpu->r[1] = _t0;
|
|
/* 026980CC */ _t1 = cpu->r[9] + 0x00003E18u;
|
|
/* 026980CC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 026980D0 */ cpu->r[9] = 0x101F0000u;
|
|
/* 026980D4 */ cpu->r[9] = cpu->r[9] + 0x00006368u;
|
|
/* 026980D8 */ /* nop */
|
|
/* 026980DC */ _t2 = cpu->r[9] + 0x00000008u;
|
|
/* 026980DC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 026980E0 */ /* nop */
|
|
/* 026980E4 */ /* nop */
|
|
/* 026980E8 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 026980E8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 026980EC */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026980EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 026980F0 */ cpu->f[12] = cpu->f[12] * cpu->f[1];
|
|
/* 026980F4 */ _t5 = cpu->r[1] + 0x00000020u;
|
|
/* 026980F4 */ rbrew_write32(cpu->mem, _t5, cpu->r[12]);
|
|
/* 026980F8 */ _t6 = cpu->r[1] + 0x00000024u;
|
|
/* 026980F8 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 026980FC */ /* nop */
|
|
/* 02698100 */ _t7 = cpu->r[1] + 0x00000010u;
|
|
/* 02698100 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[12]);
|
|
/* 02698104 */ _t8 = cpu->r[1] + 0x00000010u;
|
|
/* 02698104 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02698108 */ /* nop */
|
|
/* 0269810C */ /* nop */
|
|
/* 02698110 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02698110 */ cpu->r[10] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02698114 */ _t10 = cpu->r[1] + 0x00000028u;
|
|
/* 02698114 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 02698118 */ _t11 = cpu->r[1] + 0x00000028u;
|
|
/* 02698118 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 0269811C */ _t12 = cpu->r[1] + 0x00000018u;
|
|
/* 0269811C */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02698120 */ cpu->f[12] = cpu->f[13] + cpu->f[13];
|
|
/* 02698124 */ _t13 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02698124 */ rbrew_write32(cpu->mem, _t13, cpu->r[10]);
|
|
/* 02698128 */ cpu->r[6] = cpu->r[3];
|
|
/* 0269812C */ _t14 = cpu->r[1] + 0x00000030u;
|
|
/* 0269812C */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
/* 02698130 */ cpu->r[5] = 0x101F0000u;
|
|
/* 02698134 */ _t15 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02698134 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[12]);
|
|
/* 02698138 */ _t16 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02698138 */ cpu->r[9] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0269813C */ cpu->r[4] = cpu->r[1] + 0x0000002Cu;
|
|
/* 02698140 */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 02698144 */ cpu->r[5] = cpu->r[5] + 0x00006338u;
|
|
/* 02698148 */ _t17 = cpu->r[1] + 0x00000034u;
|
|
/* 02698148 */ rbrew_write32(cpu->mem, _t17, cpu->r[9]);
|
|
/* 0269814C */ Gambit_fn_0200FC4C(cpu);
|
|
/* 02698150 */ _t18 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02698150 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02698154 */ cpu->lr = cpu->r[0];
|
|
/* 02698158 */ cpu->r[1] = cpu->r[1] + 0x00000068u;
|
|
/* 0269815C */ return;
|
|
}
|
|
|
|
// fn_02698160 @ 0x2698160
|
|
void Gambit_fn_02698160(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_02698160: ; // 0x2698160
|
|
/* 02698160 */ cpu->r[0] = cpu->lr;
|
|
/* 02698164 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 02698164 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 02698168 */ cpu->r[9] = 0x100E0000u;
|
|
/* 0269816C */ _t1 = cpu->r[1] + 0xFFFFFF98u;
|
|
/* 0269816C */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 0269816C */ cpu->r[1] = _t1;
|
|
/* 02698170 */ _t2 = cpu->r[9] + 0x00003E18u;
|
|
/* 02698170 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 02698174 */ cpu->r[9] = 0x101F0000u;
|
|
/* 02698178 */ cpu->r[9] = cpu->r[9] + 0x00006368u;
|
|
/* 0269817C */ /* nop */
|
|
/* 02698180 */ _t3 = cpu->r[9] + 0x00000008u;
|
|
/* 02698180 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 02698184 */ /* nop */
|
|
/* 02698188 */ /* nop */
|
|
/* 0269818C */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 0269818C */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02698190 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02698190 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02698194 */ cpu->f[12] = cpu->f[12] * cpu->f[1];
|
|
/* 02698198 */ _t6 = cpu->r[1] + 0x00000020u;
|
|
/* 02698198 */ rbrew_write32(cpu->mem, _t6, cpu->r[12]);
|
|
/* 0269819C */ _t7 = cpu->r[1] + 0x00000024u;
|
|
/* 0269819C */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 026981A0 */ /* nop */
|
|
/* 026981A4 */ _t8 = cpu->r[1] + 0x00000010u;
|
|
/* 026981A4 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[12]);
|
|
/* 026981A8 */ _t9 = cpu->r[1] + 0x00000010u;
|
|
/* 026981A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 026981AC */ /* nop */
|
|
/* 026981B0 */ /* nop */
|
|
/* 026981B4 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 026981B4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t10);
|
|
/* 026981B8 */ _t11 = cpu->r[1] + 0x00000028u;
|
|
/* 026981B8 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 026981BC */ _t12 = cpu->r[1] + 0x00000028u;
|
|
/* 026981BC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 026981C0 */ _t13 = cpu->r[1] + 0x00000018u;
|
|
/* 026981C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 026981C4 */ cpu->f[12] = cpu->f[13] + cpu->f[13];
|
|
/* 026981C8 */ _t14 = cpu->r[1] + 0x0000002Cu;
|
|
/* 026981C8 */ rbrew_write32(cpu->mem, _t14, cpu->r[10]);
|
|
/* 026981CC */ cpu->r[6] = cpu->r[3];
|
|
/* 026981D0 */ _t15 = cpu->r[1] + 0x00000030u;
|
|
/* 026981D0 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 026981D4 */ cpu->r[5] = 0x101F0000u;
|
|
/* 026981D8 */ _t16 = cpu->r[1] + 0x0000001Cu;
|
|
/* 026981D8 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[12]);
|
|
/* 026981DC */ _t17 = cpu->r[1] + 0x0000001Cu;
|
|
/* 026981DC */ cpu->r[9] = rbrew_read32(cpu->mem, _t17);
|
|
/* 026981E0 */ cpu->r[4] = cpu->r[1] + 0x0000002Cu;
|
|
/* 026981E4 */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 026981E8 */ cpu->r[5] = cpu->r[5] + 0x00006338u;
|
|
/* 026981EC */ _t18 = cpu->r[1] + 0x00000034u;
|
|
/* 026981EC */ rbrew_write32(cpu->mem, _t18, cpu->r[9]);
|
|
/* 026981F0 */ Gambit_fn_0200FC4C(cpu);
|
|
/* 026981F4 */ _t19 = cpu->r[1] + 0x0000006Cu;
|
|
/* 026981F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 026981F8 */ cpu->lr = cpu->r[0];
|
|
/* 026981FC */ cpu->r[1] = cpu->r[1] + 0x00000068u;
|
|
/* 02698200 */ return;
|
|
}
|
|
|
|
// fn_0269816C @ 0x269816c
|
|
void Gambit_fn_0269816C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_0269816C: ; // 0x269816c
|
|
/* 0269816C */ _t0 = cpu->r[1] + 0xFFFFFF98u;
|
|
/* 0269816C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269816C */ cpu->r[1] = _t0;
|
|
/* 02698170 */ _t1 = cpu->r[9] + 0x00003E18u;
|
|
/* 02698170 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 02698174 */ cpu->r[9] = 0x101F0000u;
|
|
/* 02698178 */ cpu->r[9] = cpu->r[9] + 0x00006368u;
|
|
/* 0269817C */ /* nop */
|
|
/* 02698180 */ _t2 = cpu->r[9] + 0x00000008u;
|
|
/* 02698180 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 02698184 */ /* nop */
|
|
/* 02698188 */ /* nop */
|
|
/* 0269818C */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 0269818C */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02698190 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02698190 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02698194 */ cpu->f[12] = cpu->f[12] * cpu->f[1];
|
|
/* 02698198 */ _t5 = cpu->r[1] + 0x00000020u;
|
|
/* 02698198 */ rbrew_write32(cpu->mem, _t5, cpu->r[12]);
|
|
/* 0269819C */ _t6 = cpu->r[1] + 0x00000024u;
|
|
/* 0269819C */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 026981A0 */ /* nop */
|
|
/* 026981A4 */ _t7 = cpu->r[1] + 0x00000010u;
|
|
/* 026981A4 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[12]);
|
|
/* 026981A8 */ _t8 = cpu->r[1] + 0x00000010u;
|
|
/* 026981A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 026981AC */ /* nop */
|
|
/* 026981B0 */ /* nop */
|
|
/* 026981B4 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 026981B4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t9);
|
|
/* 026981B8 */ _t10 = cpu->r[1] + 0x00000028u;
|
|
/* 026981B8 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 026981BC */ _t11 = cpu->r[1] + 0x00000028u;
|
|
/* 026981BC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 026981C0 */ _t12 = cpu->r[1] + 0x00000018u;
|
|
/* 026981C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 026981C4 */ cpu->f[12] = cpu->f[13] + cpu->f[13];
|
|
/* 026981C8 */ _t13 = cpu->r[1] + 0x0000002Cu;
|
|
/* 026981C8 */ rbrew_write32(cpu->mem, _t13, cpu->r[10]);
|
|
/* 026981CC */ cpu->r[6] = cpu->r[3];
|
|
/* 026981D0 */ _t14 = cpu->r[1] + 0x00000030u;
|
|
/* 026981D0 */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
/* 026981D4 */ cpu->r[5] = 0x101F0000u;
|
|
/* 026981D8 */ _t15 = cpu->r[1] + 0x0000001Cu;
|
|
/* 026981D8 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[12]);
|
|
/* 026981DC */ _t16 = cpu->r[1] + 0x0000001Cu;
|
|
/* 026981DC */ cpu->r[9] = rbrew_read32(cpu->mem, _t16);
|
|
/* 026981E0 */ cpu->r[4] = cpu->r[1] + 0x0000002Cu;
|
|
/* 026981E4 */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 026981E8 */ cpu->r[5] = cpu->r[5] + 0x00006338u;
|
|
/* 026981EC */ _t17 = cpu->r[1] + 0x00000034u;
|
|
/* 026981EC */ rbrew_write32(cpu->mem, _t17, cpu->r[9]);
|
|
/* 026981F0 */ Gambit_fn_0200FC4C(cpu);
|
|
/* 026981F4 */ _t18 = cpu->r[1] + 0x0000006Cu;
|
|
/* 026981F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 026981F8 */ cpu->lr = cpu->r[0];
|
|
/* 026981FC */ cpu->r[1] = cpu->r[1] + 0x00000068u;
|
|
/* 02698200 */ return;
|
|
}
|
|
|
|
// fn_02698204 @ 0x2698204
|
|
void Gambit_fn_02698204(CPUState* cpu) {
|
|
uint32_t _t0, _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_02698204: ; // 0x2698204
|
|
/* 02698204 */ _t0 = cpu->r[1] + 0xFFFFFE90u;
|
|
/* 02698204 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02698204 */ cpu->r[1] = _t0;
|
|
/* 02698208 */ /* nop */
|
|
/* 0269820C */ cpu->r[0] = cpu->lr;
|
|
/* 02698210 */ _t1 = cpu->r[1] + 0x00000120u;
|
|
/* 02698210 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[27]);
|
|
/* 02698214 */ _t2 = cpu->r[1] + 0x00000130u;
|
|
/* 02698214 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[28]);
|
|
/* 02698218 */ _t3 = cpu->r[1] + 0x00000140u;
|
|
/* 02698218 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[29]);
|
|
/* 0269821C */ /* nop */
|
|
/* 02698220 */ _t4 = cpu->r[1] + 0x00000150u;
|
|
/* 02698220 */ rbrew_write_f64(cpu->mem, _t4, cpu->f[30]);
|
|
/* 02698224 */ /* nop */
|
|
/* 02698228 */ _t5 = cpu->r[1] + 0x00000160u;
|
|
/* 02698228 */ rbrew_write_f64(cpu->mem, _t5, cpu->f[31]);
|
|
/* 0269822C */ /* nop */
|
|
/* 02698230 */ _t6 = cpu->r[1] + 0x00000128u;
|
|
/* 02698230 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[27]);
|
|
/* 02698234 */ /* nop */
|
|
/* 02698238 */ _t7 = cpu->r[1] + 0x00000138u;
|
|
/* 02698238 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[28]);
|
|
/* 0269823C */ /* nop */
|
|
/* 02698240 */ _t8 = cpu->r[1] + 0x00000148u;
|
|
/* 02698240 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[29]);
|
|
/* 02698244 */ cpu->r[12] = 0x100E0000u;
|
|
/* 02698248 */ _t9 = cpu->r[1] + 0x00000158u;
|
|
/* 02698248 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[30]);
|
|
/* 0269824C */ _t10 = cpu->r[1] + 0x00000168u;
|
|
/* 0269824C */ rbrew_write_f32(cpu->mem, _t10, cpu->f[31]);
|
|
/* 02698250 */ cpu->r[7] = 0x100E0000u;
|
|
/* 02698254 */ cpu->f[30] = cpu->f[1];
|
|
/* 02698258 */ _t11 = cpu->r[7] + 0x00003E1Cu;
|
|
/* 02698258 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 0269825C */ _t12 = cpu->r[12] + 0x00003E20u;
|
|
/* 0269825C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 02698260 */ cpu->f[11] = cpu->f[30] * cpu->f[31];
|
|
/* 02698264 */ _t13 = cpu->r[1] + 0x00000174u;
|
|
/* 02698264 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02698268 */ cpu->r[29] = 0x101F0000u;
|
|
/* 0269826C */ cpu->r[29] = cpu->r[29] + 0x00006350u;
|
|
/* 02698270 */ cpu->f[6] = fabs(cpu->f[11]);
|
|
/* 02698274 */ _t14 = cpu->r[29] + 0x00000008u;
|
|
/* 02698274 */ cpu->f[4] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 02698278 */ /* nop */
|
|
/* 0269827C */ cpu->f[11] = cpu->f[4] * cpu->f[6];
|
|
/* 02698280 */ /* nop */
|
|
/* 02698284 */ _t15 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02698284 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[11]);
|
|
/* 02698288 */ _t16 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02698288 */ cpu->r[7] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0269828C */ /* nop */
|
|
/* 02698290 */ _t17 = cpu->r[1] + 0x00000074u;
|
|
/* 02698290 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02698294 */ _t18 = cpu->r[1] + 0x00000078u;
|
|
/* 02698294 */ cpu->r[6] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02698298 */ _t19 = cpu->r[1] + 0x000000BCu;
|
|
/* 02698298 */ rbrew_write32(cpu->mem, _t19, cpu->r[0]);
|
|
/* 0269829C */ cpu->r[8] = 0x100E0000u;
|
|
/* 026982A0 */ _t20 = cpu->r[1] + 0x000000C0u;
|
|
/* 026982A0 */ rbrew_write32(cpu->mem, _t20, cpu->r[6]);
|
|
/* 026982A4 */ /* nop */
|
|
/* 026982A8 */ _t21 = cpu->r[8] + 0x00003E24u;
|
|
/* 026982A8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 026982AC */ _t22 = cpu->r[1] + 0x000000C4u;
|
|
/* 026982AC */ rbrew_write32(cpu->mem, _t22, cpu->r[7]);
|
|
/* 026982B0 */ /* nop */
|
|
/* 026982B4 */ /* nop */
|
|
/* 026982B8 */ _t23 = cpu->r[1] + 0x000000C4u;
|
|
/* 026982B8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 026982BC */ _t24 = cpu->r[1] + 0x00000080u;
|
|
/* 026982BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 026982C0 */ cpu->f[9] = cpu->f[12] * cpu->f[13];
|
|
/* 026982C4 */ _t25 = cpu->r[1] + 0x00000084u;
|
|
/* 026982C4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t25);
|
|
/* 026982C8 */ _t26 = cpu->r[1] + 0x000000B0u;
|
|
/* 026982C8 */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 026982CC */ _t27 = cpu->r[1] + 0x00000088u;
|
|
/* 026982CC */ rbrew_write_f32(cpu->mem, _t27, cpu->f[9]);
|
|
/* 026982D0 */ _t28 = cpu->r[1] + 0x00000088u;
|
|
/* 026982D0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t28);
|
|
/* 026982D4 */ _t29 = cpu->r[1] + 0x000000B4u;
|
|
/* 026982D4 */ rbrew_write32(cpu->mem, _t29, cpu->r[5]);
|
|
/* 026982D8 */ /* nop */
|
|
/* 026982DC */ _t30 = cpu->r[1] + 0x000000B8u;
|
|
/* 026982DC */ rbrew_write32(cpu->mem, _t30, cpu->r[7]);
|
|
/* 026982E0 */ cpu->r[30] = cpu->r[3];
|
|
/* 026982E4 */ _t31 = cpu->r[1] + 0x000000B8u;
|
|
/* 026982E4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 026982E8 */ _t32 = cpu->r[30] + 0x00000008u;
|
|
/* 026982E8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 026982EC */ /* nop */
|
|
/* 026982F0 */ cpu->f[8] = cpu->f[10] + cpu->f[12];
|
|
/* 026982F4 */ _t33 = cpu->r[1] + 0x00000068u;
|
|
/* 026982F4 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[0]);
|
|
/* 026982F8 */ /* nop */
|
|
/* 026982FC */ /* nop */
|
|
/* 02698300 */ _t34 = cpu->r[1] + 0x0000008Cu;
|
|
/* 02698300 */ cpu->r[9] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02698304 */ _t35 = cpu->r[1] + 0x00000090u;
|
|
/* 02698304 */ cpu->r[11] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02698308 */ _t36 = cpu->r[1] + 0x000000A4u;
|
|
/* 02698308 */ rbrew_write32(cpu->mem, _t36, cpu->r[9]);
|
|
/* 0269830C */ _t37 = cpu->r[1] + 0x00000094u;
|
|
/* 0269830C */ rbrew_write_f32(cpu->mem, _t37, cpu->f[8]);
|
|
/* 02698310 */ _t38 = cpu->r[1] + 0x000000A8u;
|
|
/* 02698310 */ rbrew_write32(cpu->mem, _t38, cpu->r[11]);
|
|
/* 02698314 */ /* nop */
|
|
/* 02698318 */ _t39 = cpu->r[1] + 0x00000070u;
|
|
/* 02698318 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[0]);
|
|
/* 0269831C */ /* nop */
|
|
/* 02698320 */ _t40 = cpu->r[1] + 0x00000094u;
|
|
/* 02698320 */ cpu->r[12] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02698324 */ /* nop */
|
|
/* 02698328 */ _t41 = cpu->r[1] + 0x000000ACu;
|
|
/* 02698328 */ rbrew_write32(cpu->mem, _t41, cpu->r[12]);
|
|
/* 0269832C */ _t42 = cpu->r[1] + 0x000000ACu;
|
|
/* 0269832C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 02698330 */ _t43 = cpu->r[1] + 0x0000009Cu;
|
|
/* 02698330 */ cpu->r[6] = rbrew_read32(cpu->mem, _t43);
|
|
/* 02698334 */ cpu->f[9] = cpu->f[10] + cpu->f[4];
|
|
/* 02698338 */ _t44 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02698338 */ rbrew_write_f32(cpu->mem, _t44, cpu->f[6]);
|
|
/* 0269833C */ _t45 = cpu->r[1] + 0x00000098u;
|
|
/* 0269833C */ cpu->r[0] = rbrew_read32(cpu->mem, _t45);
|
|
/* 02698340 */ _t46 = cpu->r[1] + 0x000000A0u;
|
|
/* 02698340 */ rbrew_write_f32(cpu->mem, _t46, cpu->f[9]);
|
|
/* 02698344 */ _t47 = cpu->r[1] + 0x000000A0u;
|
|
/* 02698344 */ cpu->r[8] = rbrew_read32(cpu->mem, _t47);
|
|
/* 02698348 */ cpu->r[5] = cpu->r[1] + 0x000000C8u;
|
|
/* 0269834C */ _t48 = cpu->r[1] + 0x000000C8u;
|
|
/* 0269834C */ rbrew_write32(cpu->mem, _t48, cpu->r[0]);
|
|
/* 02698350 */ cpu->r[3] = cpu->r[1] + 0x000000D4u;
|
|
/* 02698354 */ _t49 = cpu->r[1] + 0x000000CCu;
|
|
/* 02698354 */ rbrew_write32(cpu->mem, _t49, cpu->r[6]);
|
|
/* 02698358 */ cpu->r[4] = cpu->r[1] + 0x00000068u;
|
|
/* 0269835C */ _t50 = cpu->r[1] + 0x000000D0u;
|
|
/* 0269835C */ rbrew_write32(cpu->mem, _t50, cpu->r[8]);
|
|
/* 02698360 */ Gambit_fn_020FF2BC(cpu);
|
|
/* 02698364 */ cpu->r[5] = 0x100E0000u;
|
|
/* 02698368 */ cpu->f[9] = fabs(cpu->f[30]);
|
|
/* 0269836C */ _t51 = cpu->r[5] + 0x00003E28u;
|
|
/* 0269836C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 02698370 */ cpu->f[10] = cpu->f[9] * cpu->f[12];
|
|
/* 02698374 */ cpu->f[12] = (uint32_t)(int32_t)cpu->f[10];
|
|
/* 02698378 */ cpu->r[0] = cpu->r[1] + 0x00000008u;
|
|
/* 0269837C */ /* nop */
|
|
/* 02698380 */ _t52 = cpu->r[1] + 0x00000008u;
|
|
/* 02698380 */ cpu->r[31] = rbrew_read32(cpu->mem, _t52);
|
|
/* 02698384 */ cpu->r[10] = cpu->r[31] + 0x00000001u;
|
|
/* 02698388 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000001u);
|
|
/* 0269838C */ cpu->r[28] = 0x00000001u;
|
|
/* 02698390 */ _t53 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02698390 */ _t54 = _t53 & 0x00000001u;
|
|
/* 02698390 */ if (_t54) goto L_02698394; else goto L_026984D8;
|
|
L_02698394: ; // 0x2698394
|
|
/* 02698394 */ /* nop */
|
|
/* 02698398 */ cpu->r[10] = 0x100E0000u;
|
|
/* 0269839C */ cpu->r[12] = 0x100E0000u;
|
|
/* 026983A0 */ _t55 = cpu->r[29] + 0x00000008u;
|
|
/* 026983A0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 026983A4 */ /* nop */
|
|
/* 026983A8 */ _t56 = cpu->r[10] + 0x00003E30u;
|
|
/* 026983A8 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 026983AC */ cpu->r[27] = 0x101F0000u;
|
|
/* 026983B0 */ cpu->r[6] = 0x100E0000u;
|
|
/* 026983B4 */ _t57 = cpu->r[12] + 0x00003E34u;
|
|
/* 026983B4 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 026983B8 */ cpu->f[27] = cpu->f[0] * cpu->f[31];
|
|
/* 026983BC */ _t58 = cpu->r[6] + 0x00003E2Cu;
|
|
/* 026983BC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 026983C0 */ cpu->r[26] = 0x101F0000u;
|
|
L_026983C4: ; // 0x26983c4
|
|
/* 026983C4 */ cpu->r[10] = cpu->r[28] ^ 0x80000000u;
|
|
/* 026983C8 */ cpu->r[6] = 0x100E0000u;
|
|
/* 026983CC */ cpu->r[0] = 0x66660000u;
|
|
/* 026983D0 */ _t59 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026983D0 */ rbrew_write32(cpu->mem, _t59, cpu->r[10]);
|
|
/* 026983D4 */ cpu->r[9] = 0x43300000u;
|
|
/* 026983D8 */ _t60 = cpu->r[6] + 0x00003E08u;
|
|
/* 026983D8 */ cpu->f[11] = rbrew_read_f64(cpu->mem, _t60);
|
|
/* 026983DC */ cpu->r[0] = cpu->r[0] | 0x00006667u;
|
|
/* 026983E0 */ _t61 = cpu->r[1] + 0x00000008u;
|
|
/* 026983E0 */ rbrew_write32(cpu->mem, _t61, cpu->r[9]);
|
|
/* 026983E4 */ cpu->r[12] = (uint32_t)(((int64_t)(int32_t)cpu->r[0] * (int64_t)(int32_t)cpu->r[28]) >> 32);
|
|
/* 026983E8 */ _t62 = cpu->r[1] + 0x00000008u;
|
|
/* 026983E8 */ cpu->f[8] = rbrew_read_f64(cpu->mem, _t62);
|
|
/* 026983EC */ cpu->f[9] = cpu->f[8] - cpu->f[11];
|
|
/* 026983F0 */ /* nop */
|
|
/* 026983F4 */ /* nop */
|
|
/* 026983F8 */ cpu->r[12] = cpu->r[12] - cpu->r[0];
|
|
/* 026983FC */ cpu->f[13] = (double)(float)cpu->f[9];
|
|
/* 02698400 */ cpu->r[12] = (uint32_t)((int32_t)cpu->r[12] * (int32_t)0x00000005u);
|
|
/* 02698404 */ cpu->f[0] = cpu->f[13] * cpu->f[31];
|
|
/* 02698408 */ cpu->r[11] = cpu->r[28] - cpu->r[12];
|
|
/* 02698408 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0269840C */ cpu->r[10] = cpu->r[26] + 0x00005BCCu;
|
|
/* 02698410 */ _t63 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02698410 */ _t64 = _t63 & 0x00000001u;
|
|
/* 02698410 */ if (_t64) goto L_02698414; else goto L_02698418;
|
|
L_02698414: ; // 0x2698414
|
|
/* 02698414 */ cpu->r[10] = cpu->r[27] + 0x00005BDCu;
|
|
L_02698418: ; // 0x2698418
|
|
/* 02698418 */ _t65 = cpu->r[10] + 0x00000000u;
|
|
/* 02698418 */ cpu->r[6] = rbrew_read32(cpu->mem, _t65);
|
|
/* 0269841C */ _t66 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0269841C */ rbrew_write32(cpu->mem, _t66, cpu->r[6]);
|
|
/* 02698420 */ _t67 = cpu->r[10] + 0x00000004u;
|
|
/* 02698420 */ cpu->r[7] = rbrew_read32(cpu->mem, _t67);
|
|
/* 02698424 */ /* nop */
|
|
/* 02698428 */ _t68 = cpu->r[1] + 0x00000050u;
|
|
/* 02698428 */ rbrew_write32(cpu->mem, _t68, cpu->r[7]);
|
|
/* 0269842C */ _t69 = cpu->r[10] + 0x00000008u;
|
|
/* 0269842C */ cpu->r[9] = rbrew_read32(cpu->mem, _t69);
|
|
/* 02698430 */ /* nop */
|
|
/* 02698434 */ _t70 = cpu->r[1] + 0x00000010u;
|
|
/* 02698434 */ cpu->r[8] = rbrew_read32(cpu->mem, _t70);
|
|
/* 02698438 */ _t71 = cpu->r[1] + 0x00000054u;
|
|
/* 02698438 */ rbrew_write32(cpu->mem, _t71, cpu->r[9]);
|
|
/* 0269843C */ _t72 = cpu->r[1] + 0x00000014u;
|
|
/* 0269843C */ cpu->r[9] = rbrew_read32(cpu->mem, _t72);
|
|
/* 02698440 */ _t73 = cpu->r[1] + 0x00000040u;
|
|
/* 02698440 */ rbrew_write32(cpu->mem, _t73, cpu->r[8]);
|
|
/* 02698444 */ _t74 = cpu->r[1] + 0x00000044u;
|
|
/* 02698444 */ rbrew_write32(cpu->mem, _t74, cpu->r[9]);
|
|
/* 02698448 */ /* nop */
|
|
/* 0269844C */ _t75 = cpu->r[1] + 0x00000018u;
|
|
/* 0269844C */ rbrew_write_f32(cpu->mem, _t75, cpu->f[27]);
|
|
/* 02698450 */ _t76 = cpu->r[1] + 0x00000018u;
|
|
/* 02698450 */ cpu->r[0] = rbrew_read32(cpu->mem, _t76);
|
|
/* 02698454 */ /* nop */
|
|
/* 02698458 */ /* nop */
|
|
/* 0269845C */ _t77 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269845C */ cpu->r[8] = rbrew_read32(cpu->mem, _t77);
|
|
/* 02698460 */ _t78 = cpu->r[1] + 0x00000020u;
|
|
/* 02698460 */ cpu->r[9] = rbrew_read32(cpu->mem, _t78);
|
|
/* 02698464 */ _t79 = cpu->r[1] + 0x00000034u;
|
|
/* 02698464 */ rbrew_write32(cpu->mem, _t79, cpu->r[8]);
|
|
/* 02698468 */ _t80 = cpu->r[1] + 0x00000038u;
|
|
/* 02698468 */ rbrew_write32(cpu->mem, _t80, cpu->r[9]);
|
|
/* 0269846C */ /* nop */
|
|
/* 02698470 */ _t81 = cpu->r[1] + 0x00000048u;
|
|
/* 02698470 */ rbrew_write32(cpu->mem, _t81, cpu->r[0]);
|
|
/* 02698474 */ _t82 = cpu->r[1] + 0x00000048u;
|
|
/* 02698474 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t82);
|
|
/* 02698478 */ /* nop */
|
|
/* 0269847C */ _t83 = cpu->r[1] + 0x00000058u;
|
|
/* 0269847C */ rbrew_write_f32(cpu->mem, _t83, cpu->f[29]);
|
|
/* 02698480 */ cpu->f[7] = cpu->f[8] * cpu->f[0];
|
|
/* 02698484 */ /* nop */
|
|
/* 02698488 */ _t84 = cpu->r[1] + 0x00000028u;
|
|
/* 02698488 */ cpu->r[0] = rbrew_read32(cpu->mem, _t84);
|
|
/* 0269848C */ _t85 = cpu->r[1] + 0x00000024u;
|
|
/* 0269848C */ rbrew_write_f32(cpu->mem, _t85, cpu->f[7]);
|
|
/* 02698490 */ _t86 = cpu->r[1] + 0x00000024u;
|
|
/* 02698490 */ cpu->r[11] = rbrew_read32(cpu->mem, _t86);
|
|
/* 02698494 */ _t87 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02698494 */ rbrew_write32(cpu->mem, _t87, cpu->r[11]);
|
|
/* 02698498 */ _t88 = cpu->r[30] + 0x00000008u;
|
|
/* 02698498 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t88);
|
|
/* 0269849C */ _t89 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0269849C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t89);
|
|
/* 026984A0 */ _t90 = cpu->r[1] + 0x0000002Cu;
|
|
/* 026984A0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t90);
|
|
/* 026984A4 */ cpu->f[11] = cpu->f[13] + cpu->f[0];
|
|
/* 026984A8 */ _t91 = cpu->r[1] + 0x0000005Cu;
|
|
/* 026984A8 */ rbrew_write32(cpu->mem, _t91, cpu->r[0]);
|
|
/* 026984AC */ _t92 = cpu->r[1] + 0x00000060u;
|
|
/* 026984AC */ rbrew_write32(cpu->mem, _t92, cpu->r[5]);
|
|
/* 026984B0 */ cpu->f[1] = cpu->f[28];
|
|
/* 026984B4 */ _t93 = cpu->r[1] + 0x00000030u;
|
|
/* 026984B4 */ rbrew_write_f32(cpu->mem, _t93, cpu->f[11]);
|
|
/* 026984B8 */ _t94 = cpu->r[1] + 0x00000030u;
|
|
/* 026984B8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t94);
|
|
/* 026984BC */ cpu->r[4] = cpu->r[1] + 0x0000004Cu;
|
|
/* 026984C0 */ cpu->r[3] = cpu->r[1] + 0x0000005Cu;
|
|
/* 026984C4 */ _t95 = cpu->r[1] + 0x00000064u;
|
|
/* 026984C4 */ rbrew_write32(cpu->mem, _t95, cpu->r[6]);
|
|
/* 026984C8 */ Gambit_fn_02697FBC(cpu);
|
|
/* 026984CC */ cpu->r[31] = cpu->r[31] + 0xFFFFFFFFu;
|
|
/* 026984CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 026984D0 */ cpu->r[28] = cpu->r[28] + 0x00000001u;
|
|
/* 026984D4 */ _t96 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026984D4 */ _t97 = _t96 & 0x00000001u;
|
|
/* 026984D4 */ if (_t97) goto L_026984D8; else goto L_026983C4;
|
|
L_026984D8: ; // 0x26984d8
|
|
/* 026984D8 */ /* nop */
|
|
/* 026984DC */ _t98 = cpu->r[1] + 0x00000138u;
|
|
/* 026984DC */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t98);
|
|
/* 026984E0 */ _t99 = cpu->r[1] + 0x00000158u;
|
|
/* 026984E0 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t99);
|
|
/* 026984E4 */ _t100 = cpu->r[1] + 0x00000130u;
|
|
/* 026984E4 */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t100);
|
|
/* 026984E8 */ _t101 = cpu->r[1] + 0x00000148u;
|
|
/* 026984E8 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t101);
|
|
/* 026984EC */ _t102 = cpu->r[1] + 0x00000150u;
|
|
/* 026984EC */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t102);
|
|
/* 026984F0 */ _t103 = cpu->r[1] + 0x00000140u;
|
|
/* 026984F0 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t103);
|
|
/* 026984F4 */ _t104 = cpu->r[1] + 0x00000128u;
|
|
/* 026984F4 */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t104);
|
|
/* 026984F8 */ _t105 = cpu->r[1] + 0x00000168u;
|
|
/* 026984F8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t105);
|
|
/* 026984FC */ _t106 = cpu->r[1] + 0x00000120u;
|
|
/* 026984FC */ cpu->f[27] = rbrew_read_f64(cpu->mem, _t106);
|
|
/* 02698500 */ _t107 = cpu->r[1] + 0x00000160u;
|
|
/* 02698500 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t107);
|
|
/* 02698504 */ _t108 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02698504 */ _t109 = _t108 & 0x00000001u;
|
|
/* 02698504 */ if (_t109) goto L_02698508; // else: addr-0 trap, fall-through
|
|
L_02698508: ; // 0x2698508
|
|
/* 02698508 */ _t110 = cpu->r[1] + 0x00000174u;
|
|
/* 02698508 */ cpu->r[0] = rbrew_read32(cpu->mem, _t110);
|
|
/* 0269850C */ cpu->lr = cpu->r[0];
|
|
/* 02698510 */ cpu->r[1] = cpu->r[1] + 0x00000170u;
|
|
/* 02698514 */ return;
|
|
}
|
|
|
|
// fn_02698518 @ 0x2698518
|
|
void Gambit_fn_02698518(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82;
|
|
|
|
L_02698518: ; // 0x2698518
|
|
/* 02698518 */ _t0 = cpu->r[1] + 0xFFFFFF68u;
|
|
/* 02698518 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02698518 */ cpu->r[1] = _t0;
|
|
/* 0269851C */ _t1 = cpu->r[1] + 0x00000048u;
|
|
/* 0269851C */ rbrew_write_f64(cpu->mem, _t1, cpu->f[27]);
|
|
/* 02698520 */ _t2 = cpu->r[1] + 0x00000058u;
|
|
/* 02698520 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[28]);
|
|
/* 02698524 */ /* nop */
|
|
/* 02698528 */ _t3 = cpu->r[1] + 0x00000068u;
|
|
/* 02698528 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[29]);
|
|
/* 0269852C */ /* nop */
|
|
/* 02698530 */ _t4 = cpu->r[1] + 0x00000078u;
|
|
/* 02698530 */ rbrew_write_f64(cpu->mem, _t4, cpu->f[30]);
|
|
/* 02698534 */ cpu->r[0] = cpu->lr;
|
|
/* 02698538 */ _t5 = cpu->r[1] + 0x00000050u;
|
|
/* 02698538 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[27]);
|
|
/* 0269853C */ /* nop */
|
|
/* 02698540 */ _t6 = cpu->r[1] + 0x00000060u;
|
|
/* 02698540 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[28]);
|
|
/* 02698544 */ _t7 = cpu->r[1] + 0x00000070u;
|
|
/* 02698544 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[29]);
|
|
/* 02698548 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 0269854C */ _t8 = cpu->r[1] + 0x00000088u;
|
|
/* 0269854C */ rbrew_write_f64(cpu->mem, _t8, cpu->f[31]);
|
|
/* 02698550 */ /* nop */
|
|
/* 02698554 */ _t9 = cpu->r[1] + 0x00000044u;
|
|
/* 02698554 */ rbrew_write32(cpu->mem, _t9, cpu->r[31]);
|
|
/* 02698558 */ /* nop */
|
|
/* 0269855C */ _t10 = cpu->r[1] + 0x00000080u;
|
|
/* 0269855C */ rbrew_write_f32(cpu->mem, _t10, cpu->f[30]);
|
|
/* 02698560 */ cpu->f[30] = cpu->f[1];
|
|
/* 02698564 */ _t11 = cpu->r[1] + 0x0000009Cu;
|
|
/* 02698564 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02698568 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269856C */ _t12 = cpu->r[1] + 0x00000090u;
|
|
/* 0269856C */ rbrew_write_f32(cpu->mem, _t12, cpu->f[31]);
|
|
/* 02698570 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02698570 */ _t14 = _t13 & 0x00000001u;
|
|
/* 02698570 */ if (_t14) goto L_02698574; else goto L_026985D0;
|
|
L_02698574: ; // 0x2698574
|
|
/* 02698574 */ cpu->r[12] = 0x101F0000u;
|
|
/* 02698578 */ _t15 = cpu->r[12] + 0x00006338u;
|
|
/* 02698578 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02698578 */ cpu->r[12] = _t15;
|
|
/* 0269857C */ _t16 = cpu->r[31] + 0x00000000u;
|
|
/* 0269857C */ rbrew_write32(cpu->mem, _t16, cpu->r[0]);
|
|
/* 02698580 */ _t17 = cpu->r[12] + 0x00000004u;
|
|
/* 02698580 */ cpu->r[6] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02698584 */ _t18 = cpu->r[31] + 0x00000004u;
|
|
/* 02698584 */ rbrew_write32(cpu->mem, _t18, cpu->r[6]);
|
|
/* 02698588 */ _t19 = cpu->r[12] + 0x00000008u;
|
|
/* 02698588 */ cpu->r[7] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0269858C */ _t20 = cpu->r[31] + 0x00000008u;
|
|
/* 0269858C */ rbrew_write32(cpu->mem, _t20, cpu->r[7]);
|
|
/* 02698590 */ _t21 = cpu->r[1] + 0x00000070u;
|
|
/* 02698590 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 02698594 */ _t22 = cpu->r[1] + 0x00000050u;
|
|
/* 02698594 */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 02698598 */ _t23 = cpu->r[1] + 0x00000068u;
|
|
/* 02698598 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t23);
|
|
/* 0269859C */ _t24 = cpu->r[1] + 0x00000048u;
|
|
/* 0269859C */ cpu->f[27] = rbrew_read_f64(cpu->mem, _t24);
|
|
/* 026985A0 */ _t25 = cpu->r[1] + 0x00000080u;
|
|
/* 026985A0 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 026985A4 */ _t26 = cpu->r[1] + 0x00000060u;
|
|
/* 026985A4 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 026985A8 */ _t27 = cpu->r[1] + 0x00000078u;
|
|
/* 026985A8 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t27);
|
|
/* 026985AC */ _t28 = cpu->r[1] + 0x00000058u;
|
|
/* 026985AC */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t28);
|
|
/* 026985B0 */ _t29 = cpu->r[1] + 0x00000090u;
|
|
/* 026985B0 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 026985B4 */ _t30 = cpu->r[1] + 0x00000044u;
|
|
/* 026985B4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t30);
|
|
/* 026985B8 */ _t31 = cpu->r[1] + 0x00000088u;
|
|
/* 026985B8 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t31);
|
|
/* 026985BC */ _t32 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026985BC */ _t33 = _t32 & 0x00000001u;
|
|
/* 026985BC */ if (_t33) goto L_026985C0; // else: addr-0 trap, fall-through
|
|
L_026985C0: ; // 0x26985c0
|
|
/* 026985C0 */ _t34 = cpu->r[1] + 0x0000009Cu;
|
|
/* 026985C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t34);
|
|
/* 026985C4 */ cpu->lr = cpu->r[0];
|
|
/* 026985C8 */ cpu->r[1] = cpu->r[1] + 0x00000098u;
|
|
/* 026985CC */ return;
|
|
L_026985D0: ; // 0x26985d0
|
|
/* 026985D0 */ cpu->r[12] = 0x100E0000u;
|
|
/* 026985D4 */ cpu->r[5] = cpu->r[4] + 0xFFFFFFFFu;
|
|
/* 026985D8 */ cpu->r[9] = 0x00000001u;
|
|
/* 026985DC */ _t35 = cpu->r[12] + 0x00003D48u;
|
|
/* 026985DC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 026985E0 */ cpu->r[5] = rbrew_rlwinm(cpu->r[5], 0x00000000u, 0x00000010u, 0x0000001Fu);
|
|
L_026985E4: ; // 0x26985e4
|
|
/* 026985E4 */ cpu->r[10] = 0x100E0000u;
|
|
/* 026985E8 */ _t36 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026985E8 */ rbrew_write32(cpu->mem, _t36, cpu->r[9]);
|
|
/* 026985EC */ _t37 = cpu->r[10] + 0x00003E38u;
|
|
/* 026985EC */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t37);
|
|
/* 026985F0 */ cpu->r[10] = 0x43300000u;
|
|
/* 026985F4 */ _t38 = cpu->r[1] + 0x00000008u;
|
|
/* 026985F4 */ rbrew_write32(cpu->mem, _t38, cpu->r[10]);
|
|
/* 026985F8 */ _t39 = cpu->r[1] + 0x00000008u;
|
|
/* 026985F8 */ cpu->f[12] = rbrew_read_f64(cpu->mem, _t39);
|
|
/* 026985FC */ cpu->f[9] = cpu->f[12] - cpu->f[13];
|
|
/* 02698600 */ cpu->f[29] = (double)(float)cpu->f[9];
|
|
/* 02698604 */ cpu->f[11] = cpu->f[30] * cpu->f[29];
|
|
/* 02698608 */ cpu->r[8] = 0x100E0000u;
|
|
/* 0269860C */ cpu->f[0] = cpu->f[11] + cpu->f[11];
|
|
/* 02698610 */ _t40 = cpu->r[8] + 0x00003E40u;
|
|
/* 02698610 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 02698614 */ cpu->f[9] = cpu->f[0] * cpu->f[12];
|
|
/* 02698618 */ cpu->f[11] = cpu->f[9] / cpu->f[30];
|
|
/* 0269861C */ cpu->f[12] = (uint32_t)(int32_t)cpu->f[11];
|
|
/* 02698620 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 02698624 */ /* nop */
|
|
/* 02698628 */ _t41 = cpu->r[1] + 0x0000000Au;
|
|
/* 02698628 */ cpu->r[0] = rbrew_read16(cpu->mem, _t41);
|
|
/* 0269862C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[5]);
|
|
/* 02698630 */ _t42 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02698630 */ _t43 = _t42 & 0x00000001u;
|
|
/* 02698630 */ if (_t43) goto L_02698634; else goto L_02698730;
|
|
L_02698634: ; // 0x2698634
|
|
/* 02698634 */ cpu->r[6] = 0x100E0000u;
|
|
/* 02698638 */ _t44 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02698638 */ rbrew_write32(cpu->mem, _t44, cpu->r[0]);
|
|
/* 0269863C */ cpu->r[0] = 0x43300000u;
|
|
/* 02698640 */ _t45 = cpu->r[6] + 0x00003E38u;
|
|
/* 02698640 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t45);
|
|
/* 02698644 */ _t46 = cpu->r[1] + 0x00000008u;
|
|
/* 02698644 */ rbrew_write32(cpu->mem, _t46, cpu->r[0]);
|
|
/* 02698648 */ _t47 = cpu->r[1] + 0x00000008u;
|
|
/* 02698648 */ cpu->f[11] = rbrew_read_f64(cpu->mem, _t47);
|
|
/* 0269864C */ _t48 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269864C */ rbrew_write32(cpu->mem, _t48, cpu->r[5]);
|
|
/* 02698650 */ _t49 = cpu->r[1] + 0x00000008u;
|
|
/* 02698650 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t49);
|
|
/* 02698654 */ cpu->f[12] = cpu->f[11] - cpu->f[0];
|
|
/* 02698658 */ cpu->f[8] = cpu->f[13] - cpu->f[0];
|
|
/* 0269865C */ cpu->r[12] = 0x100E0000u;
|
|
/* 02698660 */ cpu->f[9] = (double)(float)cpu->f[12];
|
|
/* 02698664 */ _t50 = cpu->r[12] + 0x00003E44u;
|
|
/* 02698664 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t50);
|
|
/* 02698668 */ cpu->f[12] = (double)(float)cpu->f[8];
|
|
/* 0269866C */ cpu->f[9] = cpu->f[11] / cpu->f[9];
|
|
/* 02698670 */ cpu->f[28] = cpu->f[9] * cpu->f[12];
|
|
/* 02698674 */ cpu->f[1] = cpu->f[28];
|
|
/* 02698678 */ Gambit_fn_02C88F2C(cpu);
|
|
/* 0269867C */ cpu->f[27] = cpu->f[1];
|
|
/* 02698680 */ cpu->f[1] = cpu->f[28];
|
|
/* 02698684 */ Gambit_fn_02C886F8(cpu);
|
|
/* 02698688 */ _t51 = cpu->r[1] + 0x00000014u;
|
|
/* 02698688 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[31]);
|
|
/* 0269868C */ cpu->f[10] = cpu->f[1] * cpu->f[29];
|
|
/* 02698690 */ _t52 = cpu->r[1] + 0x00000010u;
|
|
/* 02698690 */ rbrew_write_f32(cpu->mem, _t52, cpu->f[27]);
|
|
/* 02698694 */ /* nop */
|
|
/* 02698698 */ _t53 = cpu->r[1] + 0x00000018u;
|
|
/* 02698698 */ rbrew_write_f32(cpu->mem, _t53, cpu->f[1]);
|
|
/* 0269869C */ /* nop */
|
|
/* 026986A0 */ _t54 = cpu->r[1] + 0x00000024u;
|
|
/* 026986A0 */ rbrew_write_f32(cpu->mem, _t54, cpu->f[10]);
|
|
/* 026986A4 */ _t55 = cpu->r[1] + 0x00000024u;
|
|
/* 026986A4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t55);
|
|
/* 026986A8 */ /* nop */
|
|
/* 026986AC */ _t56 = cpu->r[1] + 0x0000001Cu;
|
|
/* 026986AC */ cpu->r[11] = rbrew_read32(cpu->mem, _t56);
|
|
/* 026986B0 */ _t57 = cpu->r[1] + 0x00000020u;
|
|
/* 026986B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t57);
|
|
/* 026986B4 */ _t58 = cpu->r[1] + 0x00000034u;
|
|
/* 026986B4 */ rbrew_write32(cpu->mem, _t58, cpu->r[11]);
|
|
/* 026986B8 */ _t59 = cpu->r[1] + 0x00000038u;
|
|
/* 026986B8 */ rbrew_write32(cpu->mem, _t59, cpu->r[0]);
|
|
/* 026986BC */ /* nop */
|
|
/* 026986C0 */ _t60 = cpu->r[1] + 0x0000003Cu;
|
|
/* 026986C0 */ rbrew_write32(cpu->mem, _t60, cpu->r[5]);
|
|
/* 026986C4 */ _t61 = cpu->r[1] + 0x0000003Cu;
|
|
/* 026986C4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t61);
|
|
/* 026986C8 */ /* nop */
|
|
/* 026986CC */ /* nop */
|
|
/* 026986D0 */ _t62 = cpu->r[1] + 0x00000028u;
|
|
/* 026986D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t62);
|
|
/* 026986D4 */ cpu->f[13] = cpu->f[8] * cpu->f[30];
|
|
/* 026986D8 */ _t63 = cpu->r[1] + 0x0000002Cu;
|
|
/* 026986D8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t63);
|
|
/* 026986DC */ _t64 = cpu->r[31] + 0x00000000u;
|
|
/* 026986DC */ rbrew_write32(cpu->mem, _t64, cpu->r[0]);
|
|
/* 026986E0 */ _t65 = cpu->r[1] + 0x00000030u;
|
|
/* 026986E0 */ rbrew_write_f32(cpu->mem, _t65, cpu->f[13]);
|
|
/* 026986E4 */ _t66 = cpu->r[1] + 0x00000030u;
|
|
/* 026986E4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t66);
|
|
/* 026986E8 */ _t67 = cpu->r[31] + 0x00000004u;
|
|
/* 026986E8 */ rbrew_write32(cpu->mem, _t67, cpu->r[12]);
|
|
/* 026986EC */ _t68 = cpu->r[31] + 0x00000008u;
|
|
/* 026986EC */ rbrew_write32(cpu->mem, _t68, cpu->r[7]);
|
|
/* 026986F0 */ _t69 = cpu->r[1] + 0x00000090u;
|
|
/* 026986F0 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t69);
|
|
/* 026986F4 */ _t70 = cpu->r[1] + 0x00000080u;
|
|
/* 026986F4 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t70);
|
|
/* 026986F8 */ _t71 = cpu->r[1] + 0x00000088u;
|
|
/* 026986F8 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t71);
|
|
/* 026986FC */ _t72 = cpu->r[1] + 0x00000050u;
|
|
/* 026986FC */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t72);
|
|
/* 02698700 */ _t73 = cpu->r[1] + 0x00000078u;
|
|
/* 02698700 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t73);
|
|
/* 02698704 */ _t74 = cpu->r[1] + 0x00000048u;
|
|
/* 02698704 */ cpu->f[27] = rbrew_read_f64(cpu->mem, _t74);
|
|
/* 02698708 */ _t75 = cpu->r[1] + 0x00000060u;
|
|
/* 02698708 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t75);
|
|
/* 0269870C */ _t76 = cpu->r[1] + 0x00000070u;
|
|
/* 0269870C */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t76);
|
|
/* 02698710 */ _t77 = cpu->r[1] + 0x00000058u;
|
|
/* 02698710 */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t77);
|
|
/* 02698714 */ _t78 = cpu->r[1] + 0x00000068u;
|
|
/* 02698714 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t78);
|
|
/* 02698718 */ _t79 = cpu->r[1] + 0x00000044u;
|
|
/* 02698718 */ cpu->r[31] = rbrew_read32(cpu->mem, _t79);
|
|
/* 0269871C */ _t80 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269871C */ _t81 = _t80 & 0x00000001u;
|
|
/* 0269871C */ if (_t81) goto L_02698720; // else: addr-0 trap, fall-through
|
|
L_02698720: ; // 0x2698720
|
|
/* 02698720 */ _t82 = cpu->r[1] + 0x0000009Cu;
|
|
/* 02698720 */ cpu->r[0] = rbrew_read32(cpu->mem, _t82);
|
|
/* 02698724 */ cpu->lr = cpu->r[0];
|
|
/* 02698728 */ cpu->r[1] = cpu->r[1] + 0x00000098u;
|
|
/* 0269872C */ return;
|
|
L_02698730: ; // 0x2698730
|
|
/* 02698730 */ cpu->r[5] = cpu->r[5] - cpu->r[0];
|
|
/* 02698734 */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 02698738 */ cpu->r[5] = rbrew_rlwinm(cpu->r[5], 0x00000000u, 0x00000010u, 0x0000001Fu);
|
|
/* 0269873C */ cpu->r[9] = rbrew_rlwinm(cpu->r[9], 0x00000000u, 0x00000010u, 0x0000001Fu);
|
|
/* 02698740 */ goto L_026985E4;
|
|
}
|
|
|
|
// fn_02698744 @ 0x2698744
|
|
void Gambit_fn_02698744(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t117, _t118, _t119, _t120, _t121, _t122, _t123, _t124, _t125, _t126, _t127, _t128, _t129, _t130, _t131, _t132, _t133, _t134, _t135, _t136, _t137, _t138, _t139, _t140, _t141, _t142, _t143, _t144, _t145, _t146, _t147, _t148, _t149, _t150, _t151, _t152, _t153, _t154, _t155, _t156, _t157, _t158, _t159, _t160, _t161;
|
|
|
|
L_02698744: ; // 0x2698744
|
|
/* 02698744 */ _t0 = cpu->r[1] + 0xFFFFFF30u;
|
|
/* 02698744 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02698744 */ cpu->r[1] = _t0;
|
|
/* 02698748 */ /* nop */
|
|
/* 0269874C */ cpu->r[10] = 0x101F0000u;
|
|
/* 02698750 */ _t1 = cpu->r[10] + 0xFFFFD984u;
|
|
/* 02698750 */ cpu->r[11] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02698750 */ cpu->r[10] = _t1;
|
|
/* 02698754 */ cpu->r[12] = 0x101F0000u;
|
|
/* 02698758 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0269875C */ cpu->r[12] = cpu->r[12] + 0xFFFFD8E4u;
|
|
/* 02698760 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02698760 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02698760 */ if (_t3) goto L_02698764; else goto L_02698A1C;
|
|
L_02698764: ; // 0x2698764
|
|
/* 02698764 */ cpu->r[11] = 0x100E0000u;
|
|
/* 02698768 */ _t4 = cpu->r[11] + 0x00003E20u;
|
|
/* 02698768 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 0269876C */ cpu->r[11] = 0x100E0000u;
|
|
/* 02698770 */ _t5 = cpu->r[11] + 0x00003E48u;
|
|
/* 02698770 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 02698774 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 02698774 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[8]);
|
|
/* 02698778 */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 02698778 */ cpu->r[29] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269877C */ cpu->r[11] = 0x100E0000u;
|
|
/* 02698780 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 02698780 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[8]);
|
|
/* 02698784 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02698784 */ cpu->r[5] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02698788 */ _t10 = cpu->r[11] + 0x00003E4Cu;
|
|
/* 02698788 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 0269878C */ _t11 = cpu->r[1] + 0x00000018u;
|
|
/* 0269878C */ rbrew_write_f32(cpu->mem, _t11, cpu->f[13]);
|
|
/* 02698790 */ _t12 = cpu->r[1] + 0x00000018u;
|
|
/* 02698790 */ cpu->r[7] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02698794 */ cpu->r[11] = 0x100E0000u;
|
|
/* 02698798 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02698798 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[8]);
|
|
/* 0269879C */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269879C */ cpu->r[30] = rbrew_read32(cpu->mem, _t14);
|
|
/* 026987A0 */ _t15 = cpu->r[11] + 0x00003E50u;
|
|
/* 026987A0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 026987A4 */ _t16 = cpu->r[1] + 0x0000001Cu;
|
|
/* 026987A4 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[9]);
|
|
/* 026987A8 */ _t17 = cpu->r[1] + 0x0000001Cu;
|
|
/* 026987A8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t17);
|
|
/* 026987AC */ _t18 = cpu->r[1] + 0x00000024u;
|
|
/* 026987AC */ rbrew_write_f32(cpu->mem, _t18, cpu->f[8]);
|
|
/* 026987B0 */ _t19 = cpu->r[1] + 0x00000024u;
|
|
/* 026987B0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 026987B4 */ _t20 = cpu->r[12] + 0x00000014u;
|
|
/* 026987B4 */ rbrew_write32(cpu->mem, _t20, cpu->r[8]);
|
|
/* 026987B8 */ _t21 = cpu->r[12] + 0x0000001Cu;
|
|
/* 026987B8 */ rbrew_write32(cpu->mem, _t21, cpu->r[11]);
|
|
/* 026987BC */ cpu->r[11] = 0x00000001u;
|
|
/* 026987C0 */ _t22 = cpu->r[10] + 0x00000000u;
|
|
/* 026987C0 */ rbrew_write32(cpu->mem, _t22, cpu->r[11]);
|
|
/* 026987C4 */ cpu->r[11] = 0x100E0000u;
|
|
/* 026987C8 */ _t23 = cpu->r[11] + 0x00003E54u;
|
|
/* 026987C8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 026987CC */ cpu->r[11] = 0x100E0000u;
|
|
/* 026987D0 */ _t24 = cpu->r[11] + 0x00003E58u;
|
|
/* 026987D0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 026987D4 */ cpu->r[11] = 0x100E0000u;
|
|
/* 026987D8 */ _t25 = cpu->r[1] + 0x00000020u;
|
|
/* 026987D8 */ rbrew_write_f32(cpu->mem, _t25, cpu->f[10]);
|
|
/* 026987DC */ _t26 = cpu->r[1] + 0x00000020u;
|
|
/* 026987DC */ cpu->r[9] = rbrew_read32(cpu->mem, _t26);
|
|
/* 026987E0 */ _t27 = cpu->r[11] + 0x00003E5Cu;
|
|
/* 026987E0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 026987E4 */ _t28 = cpu->r[1] + 0x00000028u;
|
|
/* 026987E4 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[11]);
|
|
/* 026987E8 */ _t29 = cpu->r[1] + 0x00000028u;
|
|
/* 026987E8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t29);
|
|
/* 026987EC */ _t30 = cpu->r[1] + 0x00000010u;
|
|
/* 026987EC */ rbrew_write_f32(cpu->mem, _t30, cpu->f[8]);
|
|
/* 026987F0 */ _t31 = cpu->r[1] + 0x00000010u;
|
|
/* 026987F0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t31);
|
|
/* 026987F4 */ _t32 = cpu->r[12] + 0x00000018u;
|
|
/* 026987F4 */ rbrew_write32(cpu->mem, _t32, cpu->r[9]);
|
|
/* 026987F8 */ _t33 = cpu->r[12] + 0x00000008u;
|
|
/* 026987F8 */ rbrew_write32(cpu->mem, _t33, cpu->r[31]);
|
|
/* 026987FC */ _t34 = cpu->r[12] + 0x0000000Cu;
|
|
/* 026987FC */ rbrew_write32(cpu->mem, _t34, cpu->r[5]);
|
|
/* 02698800 */ _t35 = cpu->r[12] + 0x00000000u;
|
|
/* 02698800 */ rbrew_write32(cpu->mem, _t35, cpu->r[29]);
|
|
/* 02698804 */ _t36 = cpu->r[12] + 0x00000004u;
|
|
/* 02698804 */ rbrew_write32(cpu->mem, _t36, cpu->r[30]);
|
|
/* 02698808 */ _t37 = cpu->r[12] + 0x00000010u;
|
|
/* 02698808 */ rbrew_write32(cpu->mem, _t37, cpu->r[7]);
|
|
/* 0269880C */ _t38 = cpu->r[12] + 0x00000020u;
|
|
/* 0269880C */ rbrew_write32(cpu->mem, _t38, cpu->r[11]);
|
|
/* 02698810 */ _t39 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02698810 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[0]);
|
|
/* 02698814 */ _t40 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02698814 */ cpu->r[11] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02698818 */ _t41 = cpu->r[1] + 0x00000034u;
|
|
/* 02698818 */ rbrew_write_f32(cpu->mem, _t41, cpu->f[8]);
|
|
/* 0269881C */ _t42 = cpu->r[12] + 0x00000024u;
|
|
/* 0269881C */ rbrew_write32(cpu->mem, _t42, cpu->r[11]);
|
|
/* 02698820 */ _t43 = cpu->r[1] + 0x00000030u;
|
|
/* 02698820 */ rbrew_write_f32(cpu->mem, _t43, cpu->f[12]);
|
|
/* 02698824 */ cpu->r[11] = 0x100E0000u;
|
|
/* 02698828 */ _t44 = cpu->r[11] + 0x00003E60u;
|
|
/* 02698828 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 0269882C */ cpu->r[11] = 0x100E0000u;
|
|
/* 02698830 */ _t45 = cpu->r[1] + 0x00000030u;
|
|
/* 02698830 */ cpu->r[31] = rbrew_read32(cpu->mem, _t45);
|
|
/* 02698834 */ _t46 = cpu->r[11] + 0x00003E6Cu;
|
|
/* 02698834 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 02698838 */ cpu->r[11] = 0x100E0000u;
|
|
/* 0269883C */ _t47 = cpu->r[11] + 0x00003E64u;
|
|
/* 0269883C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 02698840 */ cpu->r[11] = 0x100E0000u;
|
|
/* 02698844 */ _t48 = cpu->r[1] + 0x00000048u;
|
|
/* 02698844 */ rbrew_write_f32(cpu->mem, _t48, cpu->f[13]);
|
|
/* 02698848 */ _t49 = cpu->r[1] + 0x00000048u;
|
|
/* 02698848 */ cpu->r[10] = rbrew_read32(cpu->mem, _t49);
|
|
/* 0269884C */ _t50 = cpu->r[11] + 0x00003E68u;
|
|
/* 0269884C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t50);
|
|
/* 02698850 */ cpu->r[11] = 0x100E0000u;
|
|
/* 02698854 */ _t51 = cpu->r[11] + 0x00003E70u;
|
|
/* 02698854 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 02698858 */ cpu->r[11] = 0x100E0000u;
|
|
/* 0269885C */ _t52 = cpu->r[12] + 0x00000028u;
|
|
/* 0269885C */ rbrew_write32(cpu->mem, _t52, cpu->r[31]);
|
|
/* 02698860 */ _t53 = cpu->r[11] + 0x00003E74u;
|
|
/* 02698860 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t53);
|
|
/* 02698864 */ _t54 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02698864 */ rbrew_write_f32(cpu->mem, _t54, cpu->f[13]);
|
|
/* 02698868 */ _t55 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02698868 */ cpu->r[11] = rbrew_read32(cpu->mem, _t55);
|
|
/* 0269886C */ _t56 = cpu->r[1] + 0x00000050u;
|
|
/* 0269886C */ rbrew_write_f32(cpu->mem, _t56, cpu->f[0]);
|
|
/* 02698870 */ _t57 = cpu->r[1] + 0x00000038u;
|
|
/* 02698870 */ rbrew_write_f32(cpu->mem, _t57, cpu->f[10]);
|
|
/* 02698874 */ _t58 = cpu->r[1] + 0x00000038u;
|
|
/* 02698874 */ cpu->r[5] = rbrew_read32(cpu->mem, _t58);
|
|
/* 02698878 */ _t59 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02698878 */ rbrew_write_f32(cpu->mem, _t59, cpu->f[11]);
|
|
/* 0269887C */ _t60 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0269887C */ cpu->r[6] = rbrew_read32(cpu->mem, _t60);
|
|
/* 02698880 */ _t61 = cpu->r[1] + 0x00000040u;
|
|
/* 02698880 */ rbrew_write_f32(cpu->mem, _t61, cpu->f[12]);
|
|
/* 02698884 */ _t62 = cpu->r[1] + 0x00000040u;
|
|
/* 02698884 */ cpu->r[7] = rbrew_read32(cpu->mem, _t62);
|
|
/* 02698888 */ _t63 = cpu->r[1] + 0x00000044u;
|
|
/* 02698888 */ rbrew_write_f32(cpu->mem, _t63, cpu->f[8]);
|
|
/* 0269888C */ _t64 = cpu->r[1] + 0x00000044u;
|
|
/* 0269888C */ cpu->r[8] = rbrew_read32(cpu->mem, _t64);
|
|
/* 02698890 */ _t65 = cpu->r[12] + 0x00000038u;
|
|
/* 02698890 */ rbrew_write32(cpu->mem, _t65, cpu->r[7]);
|
|
/* 02698894 */ _t66 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02698894 */ rbrew_write32(cpu->mem, _t66, cpu->r[8]);
|
|
/* 02698898 */ _t67 = cpu->r[12] + 0x00000034u;
|
|
/* 02698898 */ rbrew_write32(cpu->mem, _t67, cpu->r[6]);
|
|
/* 0269889C */ _t68 = cpu->r[12] + 0x00000040u;
|
|
/* 0269889C */ rbrew_write32(cpu->mem, _t68, cpu->r[10]);
|
|
/* 026988A0 */ _t69 = cpu->r[12] + 0x00000030u;
|
|
/* 026988A0 */ rbrew_write32(cpu->mem, _t69, cpu->r[5]);
|
|
/* 026988A4 */ _t70 = cpu->r[12] + 0x00000044u;
|
|
/* 026988A4 */ rbrew_write32(cpu->mem, _t70, cpu->r[11]);
|
|
/* 026988A8 */ cpu->r[11] = 0x100E0000u;
|
|
/* 026988AC */ _t71 = cpu->r[1] + 0x00000054u;
|
|
/* 026988AC */ rbrew_write_f32(cpu->mem, _t71, cpu->f[8]);
|
|
/* 026988B0 */ _t72 = cpu->r[1] + 0x00000054u;
|
|
/* 026988B0 */ cpu->r[28] = rbrew_read32(cpu->mem, _t72);
|
|
/* 026988B4 */ cpu->r[10] = 0x100E0000u;
|
|
/* 026988B8 */ _t73 = cpu->r[11] + 0x00003E84u;
|
|
/* 026988B8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t73);
|
|
/* 026988BC */ _t74 = cpu->r[10] + 0x00003E7Cu;
|
|
/* 026988BC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t74);
|
|
/* 026988C0 */ cpu->r[11] = 0x100E0000u;
|
|
/* 026988C4 */ _t75 = cpu->r[1] + 0x00000068u;
|
|
/* 026988C4 */ rbrew_write_f32(cpu->mem, _t75, cpu->f[0]);
|
|
/* 026988C8 */ _t76 = cpu->r[1] + 0x00000068u;
|
|
/* 026988C8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t76);
|
|
/* 026988CC */ cpu->r[10] = 0x100E0000u;
|
|
/* 026988D0 */ _t77 = cpu->r[11] + 0x00003E88u;
|
|
/* 026988D0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t77);
|
|
/* 026988D4 */ _t78 = cpu->r[10] + 0x00003E78u;
|
|
/* 026988D4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t78);
|
|
/* 026988D8 */ _t79 = cpu->r[1] + 0x0000006Cu;
|
|
/* 026988D8 */ rbrew_write_f32(cpu->mem, _t79, cpu->f[13]);
|
|
/* 026988DC */ _t80 = cpu->r[1] + 0x0000006Cu;
|
|
/* 026988DC */ cpu->r[5] = rbrew_read32(cpu->mem, _t80);
|
|
/* 026988E0 */ cpu->r[10] = 0x100E0000u;
|
|
/* 026988E4 */ _t81 = cpu->r[1] + 0x00000034u;
|
|
/* 026988E4 */ cpu->r[26] = rbrew_read32(cpu->mem, _t81);
|
|
/* 026988E8 */ _t82 = cpu->r[10] + 0x00003E80u;
|
|
/* 026988E8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t82);
|
|
/* 026988EC */ _t83 = cpu->r[1] + 0x00000050u;
|
|
/* 026988EC */ cpu->r[27] = rbrew_read32(cpu->mem, _t83);
|
|
/* 026988F0 */ _t84 = cpu->r[1] + 0x00000058u;
|
|
/* 026988F0 */ rbrew_write_f32(cpu->mem, _t84, cpu->f[12]);
|
|
/* 026988F4 */ _t85 = cpu->r[1] + 0x00000058u;
|
|
/* 026988F4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t85);
|
|
/* 026988F8 */ _t86 = cpu->r[1] + 0x0000005Cu;
|
|
/* 026988F8 */ rbrew_write_f32(cpu->mem, _t86, cpu->f[10]);
|
|
/* 026988FC */ _t87 = cpu->r[1] + 0x0000005Cu;
|
|
/* 026988FC */ cpu->r[9] = rbrew_read32(cpu->mem, _t87);
|
|
/* 02698900 */ _t88 = cpu->r[1] + 0x00000060u;
|
|
/* 02698900 */ rbrew_write_f32(cpu->mem, _t88, cpu->f[11]);
|
|
/* 02698904 */ _t89 = cpu->r[1] + 0x00000060u;
|
|
/* 02698904 */ cpu->r[30] = rbrew_read32(cpu->mem, _t89);
|
|
/* 02698908 */ _t90 = cpu->r[1] + 0x00000064u;
|
|
/* 02698908 */ rbrew_write_f32(cpu->mem, _t90, cpu->f[8]);
|
|
/* 0269890C */ _t91 = cpu->r[1] + 0x00000064u;
|
|
/* 0269890C */ cpu->r[10] = rbrew_read32(cpu->mem, _t91);
|
|
/* 02698910 */ _t92 = cpu->r[12] + 0x00000054u;
|
|
/* 02698910 */ rbrew_write32(cpu->mem, _t92, cpu->r[9]);
|
|
/* 02698914 */ _t93 = cpu->r[12] + 0x0000005Cu;
|
|
/* 02698914 */ rbrew_write32(cpu->mem, _t93, cpu->r[10]);
|
|
/* 02698918 */ _t94 = cpu->r[1] + 0x00000070u;
|
|
/* 02698918 */ rbrew_write_f32(cpu->mem, _t94, cpu->f[12]);
|
|
/* 0269891C */ cpu->r[10] = 0x100E0000u;
|
|
/* 02698920 */ _t95 = cpu->r[10] + 0x00003E8Cu;
|
|
/* 02698920 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t95);
|
|
/* 02698924 */ _t96 = cpu->r[1] + 0x00000070u;
|
|
/* 02698924 */ cpu->r[6] = rbrew_read32(cpu->mem, _t96);
|
|
/* 02698928 */ _t97 = cpu->r[1] + 0x00000074u;
|
|
/* 02698928 */ rbrew_write_f32(cpu->mem, _t97, cpu->f[8]);
|
|
/* 0269892C */ _t98 = cpu->r[1] + 0x00000084u;
|
|
/* 0269892C */ rbrew_write_f32(cpu->mem, _t98, cpu->f[8]);
|
|
/* 02698930 */ cpu->r[10] = 0x100E0000u;
|
|
/* 02698934 */ _t99 = cpu->r[1] + 0x00000084u;
|
|
/* 02698934 */ cpu->r[11] = rbrew_read32(cpu->mem, _t99);
|
|
/* 02698938 */ _t100 = cpu->r[10] + 0x00003E90u;
|
|
/* 02698938 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t100);
|
|
/* 0269893C */ cpu->r[10] = 0x100E0000u;
|
|
/* 02698940 */ _t101 = cpu->r[1] + 0x00000074u;
|
|
/* 02698940 */ cpu->r[7] = rbrew_read32(cpu->mem, _t101);
|
|
/* 02698944 */ _t102 = cpu->r[10] + 0x00003E94u;
|
|
/* 02698944 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t102);
|
|
/* 02698948 */ _t103 = cpu->r[1] + 0x00000078u;
|
|
/* 02698948 */ rbrew_write_f32(cpu->mem, _t103, cpu->f[9]);
|
|
/* 0269894C */ _t104 = cpu->r[1] + 0x00000078u;
|
|
/* 0269894C */ cpu->r[8] = rbrew_read32(cpu->mem, _t104);
|
|
/* 02698950 */ _t105 = cpu->r[1] + 0x00000080u;
|
|
/* 02698950 */ rbrew_write_f32(cpu->mem, _t105, cpu->f[11]);
|
|
/* 02698954 */ _t106 = cpu->r[1] + 0x00000080u;
|
|
/* 02698954 */ cpu->r[10] = rbrew_read32(cpu->mem, _t106);
|
|
/* 02698958 */ _t107 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02698958 */ rbrew_write_f32(cpu->mem, _t107, cpu->f[0]);
|
|
/* 0269895C */ _t108 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0269895C */ cpu->r[9] = rbrew_read32(cpu->mem, _t108);
|
|
/* 02698960 */ _t109 = cpu->r[12] + 0x00000078u;
|
|
/* 02698960 */ rbrew_write32(cpu->mem, _t109, cpu->r[10]);
|
|
/* 02698964 */ _t110 = cpu->r[12] + 0x0000007Cu;
|
|
/* 02698964 */ rbrew_write32(cpu->mem, _t110, cpu->r[11]);
|
|
/* 02698968 */ cpu->r[11] = 0x100E0000u;
|
|
/* 0269896C */ _t111 = cpu->r[12] + 0x0000006Cu;
|
|
/* 0269896C */ rbrew_write32(cpu->mem, _t111, cpu->r[7]);
|
|
/* 02698970 */ _t112 = cpu->r[11] + 0x00003E98u;
|
|
/* 02698970 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t112);
|
|
/* 02698974 */ cpu->r[11] = 0x100E0000u;
|
|
/* 02698978 */ _t113 = cpu->r[12] + 0x00000074u;
|
|
/* 02698978 */ rbrew_write32(cpu->mem, _t113, cpu->r[9]);
|
|
/* 0269897C */ _t114 = cpu->r[11] + 0x00003E9Cu;
|
|
/* 0269897C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t114);
|
|
/* 02698980 */ _t115 = cpu->r[12] + 0x00000060u;
|
|
/* 02698980 */ rbrew_write32(cpu->mem, _t115, cpu->r[31]);
|
|
/* 02698984 */ cpu->r[11] = 0x100E0000u;
|
|
/* 02698988 */ _t116 = cpu->r[12] + 0x0000004Cu;
|
|
/* 02698988 */ rbrew_write32(cpu->mem, _t116, cpu->r[28]);
|
|
/* 0269898C */ _t117 = cpu->r[11] + 0x00003EA0u;
|
|
/* 0269898C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t117);
|
|
/* 02698990 */ _t118 = cpu->r[1] + 0x00000088u;
|
|
/* 02698990 */ rbrew_write_f32(cpu->mem, _t118, cpu->f[12]);
|
|
/* 02698994 */ _t119 = cpu->r[1] + 0x00000088u;
|
|
/* 02698994 */ cpu->r[11] = rbrew_read32(cpu->mem, _t119);
|
|
/* 02698998 */ _t120 = cpu->r[12] + 0x0000002Cu;
|
|
/* 02698998 */ rbrew_write32(cpu->mem, _t120, cpu->r[26]);
|
|
/* 0269899C */ _t121 = cpu->r[12] + 0x00000064u;
|
|
/* 0269899C */ rbrew_write32(cpu->mem, _t121, cpu->r[5]);
|
|
/* 026989A0 */ _t122 = cpu->r[12] + 0x00000050u;
|
|
/* 026989A0 */ rbrew_write32(cpu->mem, _t122, cpu->r[29]);
|
|
/* 026989A4 */ _t123 = cpu->r[12] + 0x00000058u;
|
|
/* 026989A4 */ rbrew_write32(cpu->mem, _t123, cpu->r[30]);
|
|
/* 026989A8 */ _t124 = cpu->r[12] + 0x00000070u;
|
|
/* 026989A8 */ rbrew_write32(cpu->mem, _t124, cpu->r[8]);
|
|
/* 026989AC */ _t125 = cpu->r[12] + 0x00000068u;
|
|
/* 026989AC */ rbrew_write32(cpu->mem, _t125, cpu->r[6]);
|
|
/* 026989B0 */ _t126 = cpu->r[12] + 0x00000048u;
|
|
/* 026989B0 */ rbrew_write32(cpu->mem, _t126, cpu->r[27]);
|
|
/* 026989B4 */ _t127 = cpu->r[12] + 0x00000080u;
|
|
/* 026989B4 */ rbrew_write32(cpu->mem, _t127, cpu->r[11]);
|
|
/* 026989B8 */ _t128 = cpu->r[1] + 0x0000008Cu;
|
|
/* 026989B8 */ rbrew_write_f32(cpu->mem, _t128, cpu->f[13]);
|
|
/* 026989BC */ _t129 = cpu->r[1] + 0x0000008Cu;
|
|
/* 026989BC */ cpu->r[11] = rbrew_read32(cpu->mem, _t129);
|
|
/* 026989C0 */ _t130 = cpu->r[1] + 0x00000094u;
|
|
/* 026989C0 */ rbrew_write_f32(cpu->mem, _t130, cpu->f[8]);
|
|
/* 026989C4 */ _t131 = cpu->r[1] + 0x00000094u;
|
|
/* 026989C4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t131);
|
|
/* 026989C8 */ _t132 = cpu->r[12] + 0x00000084u;
|
|
/* 026989C8 */ rbrew_write32(cpu->mem, _t132, cpu->r[11]);
|
|
/* 026989CC */ cpu->r[11] = 0x100E0000u;
|
|
/* 026989D0 */ _t133 = cpu->r[11] + 0x00003EA8u;
|
|
/* 026989D0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t133);
|
|
/* 026989D4 */ cpu->r[11] = 0x100E0000u;
|
|
/* 026989D8 */ _t134 = cpu->r[11] + 0x00003EA4u;
|
|
/* 026989D8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t134);
|
|
/* 026989DC */ _t135 = cpu->r[1] + 0x000000A4u;
|
|
/* 026989DC */ rbrew_write_f32(cpu->mem, _t135, cpu->f[8]);
|
|
/* 026989E0 */ _t136 = cpu->r[1] + 0x000000A4u;
|
|
/* 026989E0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t136);
|
|
/* 026989E4 */ _t137 = cpu->r[1] + 0x00000098u;
|
|
/* 026989E4 */ rbrew_write_f32(cpu->mem, _t137, cpu->f[10]);
|
|
/* 026989E8 */ _t138 = cpu->r[1] + 0x00000098u;
|
|
/* 026989E8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t138);
|
|
/* 026989EC */ _t139 = cpu->r[1] + 0x00000090u;
|
|
/* 026989EC */ rbrew_write_f32(cpu->mem, _t139, cpu->f[0]);
|
|
/* 026989F0 */ _t140 = cpu->r[1] + 0x00000090u;
|
|
/* 026989F0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t140);
|
|
/* 026989F4 */ _t141 = cpu->r[1] + 0x0000009Cu;
|
|
/* 026989F4 */ rbrew_write_f32(cpu->mem, _t141, cpu->f[11]);
|
|
/* 026989F8 */ _t142 = cpu->r[1] + 0x0000009Cu;
|
|
/* 026989F8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t142);
|
|
/* 026989FC */ _t143 = cpu->r[12] + 0x00000088u;
|
|
/* 026989FC */ rbrew_write32(cpu->mem, _t143, cpu->r[10]);
|
|
/* 02698A00 */ _t144 = cpu->r[1] + 0x000000A0u;
|
|
/* 02698A00 */ rbrew_write_f32(cpu->mem, _t144, cpu->f[9]);
|
|
/* 02698A04 */ _t145 = cpu->r[1] + 0x000000A0u;
|
|
/* 02698A04 */ cpu->r[10] = rbrew_read32(cpu->mem, _t145);
|
|
/* 02698A08 */ _t146 = cpu->r[12] + 0x00000094u;
|
|
/* 02698A08 */ rbrew_write32(cpu->mem, _t146, cpu->r[9]);
|
|
/* 02698A0C */ _t147 = cpu->r[12] + 0x00000090u;
|
|
/* 02698A0C */ rbrew_write32(cpu->mem, _t147, cpu->r[8]);
|
|
/* 02698A10 */ _t148 = cpu->r[12] + 0x00000098u;
|
|
/* 02698A10 */ rbrew_write32(cpu->mem, _t148, cpu->r[10]);
|
|
/* 02698A14 */ _t149 = cpu->r[12] + 0x0000008Cu;
|
|
/* 02698A14 */ rbrew_write32(cpu->mem, _t149, cpu->r[7]);
|
|
/* 02698A18 */ _t150 = cpu->r[12] + 0x0000009Cu;
|
|
/* 02698A18 */ rbrew_write32(cpu->mem, _t150, cpu->r[11]);
|
|
L_02698A1C: ; // 0x2698a1c
|
|
/* 02698A1C */ cpu->r[11] = 0x66660000u;
|
|
/* 02698A20 */ cpu->r[11] = cpu->r[11] + 0x00006667u;
|
|
/* 02698A24 */ cpu->r[9] = (uint32_t)(((int64_t)(int32_t)cpu->r[11] * (int64_t)(int32_t)cpu->r[4]) >> 32);
|
|
/* 02698A28 */ /* nop */
|
|
/* 02698A2C */ /* nop */
|
|
/* 02698A30 */ cpu->r[9] = cpu->r[9] - cpu->r[11];
|
|
/* 02698A34 */ cpu->r[9] = (uint32_t)((int32_t)cpu->r[9] * (int32_t)0x0000000Au);
|
|
/* 02698A38 */ cpu->r[11] = cpu->r[4] - cpu->r[9];
|
|
/* 02698A3C */ cpu->r[11] = rbrew_rlwinm(cpu->r[11], 0x00000004u, 0x00000000u, 0x0000001Bu);
|
|
/* 02698A40 */ cpu->r[8] = cpu->r[11] + cpu->r[12];
|
|
/* 02698A44 */ _t151 = cpu->r[11] + cpu->r[12];
|
|
/* 02698A44 */ cpu->r[9] = rbrew_read32(cpu->mem, _t151);
|
|
/* 02698A48 */ _t152 = cpu->r[8] + 0x00000004u;
|
|
/* 02698A48 */ cpu->r[10] = rbrew_read32(cpu->mem, _t152);
|
|
/* 02698A4C */ _t153 = cpu->r[8] + 0x00000008u;
|
|
/* 02698A4C */ cpu->r[11] = rbrew_read32(cpu->mem, _t153);
|
|
/* 02698A50 */ _t154 = cpu->r[8] + 0x0000000Cu;
|
|
/* 02698A50 */ cpu->r[8] = rbrew_read32(cpu->mem, _t154);
|
|
/* 02698A54 */ _t155 = cpu->r[3] + 0x00000000u;
|
|
/* 02698A54 */ rbrew_write32(cpu->mem, _t155, cpu->r[9]);
|
|
/* 02698A58 */ _t156 = cpu->r[1] + 0x000000B4u;
|
|
/* 02698A58 */ rbrew_write32(cpu->mem, _t156, cpu->r[8]);
|
|
/* 02698A5C */ _t157 = cpu->r[1] + 0x000000B4u;
|
|
/* 02698A5C */ rbrew_write_f32(cpu->mem, _t157, cpu->f[1]);
|
|
/* 02698A60 */ _t158 = cpu->r[1] + 0x000000B4u;
|
|
/* 02698A60 */ cpu->r[12] = rbrew_read32(cpu->mem, _t158);
|
|
/* 02698A64 */ _t159 = cpu->r[3] + 0x00000004u;
|
|
/* 02698A64 */ rbrew_write32(cpu->mem, _t159, cpu->r[10]);
|
|
/* 02698A68 */ _t160 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02698A68 */ rbrew_write32(cpu->mem, _t160, cpu->r[12]);
|
|
/* 02698A6C */ _t161 = cpu->r[3] + 0x00000008u;
|
|
/* 02698A6C */ rbrew_write32(cpu->mem, _t161, cpu->r[11]);
|
|
/* 02698A70 */ /* nop */
|
|
/* 02698A74 */ cpu->r[1] = cpu->r[1] + 0x000000D0u;
|
|
/* 02698A78 */ return;
|
|
}
|
|
|
|
// fn_02698A7C @ 0x2698a7c
|
|
void Gambit_fn_02698A7C(CPUState* cpu) {
|
|
uint32_t _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_02698A7C: ; // 0x2698a7c
|
|
/* 02698A7C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[4], cpu->f[1]);
|
|
/* 02698A80 */ _t0 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02698A80 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02698A80 */ if (_t1) goto L_02698A84; else goto L_02698AB8;
|
|
L_02698A84: ; // 0x2698a84
|
|
/* 02698A84 */ cpu->f[4] = cpu->f[1];
|
|
/* 02698A88 */ cpu->f[9] = cpu->f[4] - cpu->f[2];
|
|
/* 02698A8C */ cpu->f[11] = cpu->f[4] - cpu->f[1];
|
|
/* 02698A90 */ cpu->f[10] = fabs(cpu->f[9]);
|
|
/* 02698A94 */ cpu->f[0] = fabs(cpu->f[11]);
|
|
/* 02698A98 */ cpu->f[9] = cpu->f[10] - cpu->f[0];
|
|
/* 02698A9C */ /* nop */
|
|
/* 02698AA0 */ cpu->r[12] = 0x100E0000u;
|
|
/* 02698AA4 */ cpu->f[12] = fabs(cpu->f[11]);
|
|
/* 02698AA8 */ _t2 = cpu->r[12] + 0x00003EACu;
|
|
/* 02698AA8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 02698AAC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[13]);
|
|
/* 02698AB0 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02698AB0 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02698AB0 */ if (_t4) goto L_02698AB4; else goto L_02698AFC;
|
|
L_02698AB4: ; // 0x2698ab4
|
|
/* 02698AB4 */ goto L_02698AF0;
|
|
L_02698AB8: ; // 0x2698ab8
|
|
/* 02698AB8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[4], cpu->f[2]);
|
|
/* 02698ABC */ _t5 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02698ABC */ _t6 = _t5 & 0x00000001u;
|
|
/* 02698ABC */ if (_t6) goto L_02698AC0; else goto L_02698AC4;
|
|
L_02698AC0: ; // 0x2698ac0
|
|
/* 02698AC0 */ cpu->f[4] = cpu->f[2];
|
|
L_02698AC4: ; // 0x2698ac4
|
|
/* 02698AC4 */ cpu->f[9] = cpu->f[4] - cpu->f[2];
|
|
/* 02698AC8 */ cpu->f[11] = cpu->f[4] - cpu->f[1];
|
|
/* 02698ACC */ cpu->f[10] = fabs(cpu->f[9]);
|
|
/* 02698AD0 */ cpu->f[0] = fabs(cpu->f[11]);
|
|
/* 02698AD4 */ cpu->f[9] = cpu->f[10] - cpu->f[0];
|
|
/* 02698AD8 */ /* nop */
|
|
/* 02698ADC */ cpu->r[12] = 0x100E0000u;
|
|
/* 02698AE0 */ cpu->f[12] = fabs(cpu->f[11]);
|
|
/* 02698AE4 */ _t7 = cpu->r[12] + 0x00003EACu;
|
|
/* 02698AE4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 02698AE8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[13]);
|
|
/* 02698AEC */ _t8 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02698AEC */ _t9 = _t8 & 0x00000001u;
|
|
/* 02698AEC */ if (_t9) goto L_02698AF0; else goto L_02698AFC;
|
|
L_02698AF0: ; // 0x2698af0
|
|
/* 02698AF0 */ cpu->r[12] = 0x100E0000u;
|
|
/* 02698AF4 */ _t10 = cpu->r[12] + 0x00003D48u;
|
|
/* 02698AF4 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 02698AF8 */ return;
|
|
L_02698AFC: ; // 0x2698afc
|
|
/* 02698AFC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[3], cpu->f[1]);
|
|
/* 02698B00 */ _t11 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02698B00 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02698B00 */ if (_t12) goto L_02698B04; else goto L_02698B20;
|
|
L_02698B04: ; // 0x2698b04
|
|
/* 02698B04 */ cpu->f[0] = cpu->f[1] - cpu->f[4];
|
|
/* 02698B08 */ cpu->r[12] = 0x100E0000u;
|
|
/* 02698B0C */ cpu->f[1] = cpu->f[0] / cpu->f[11];
|
|
/* 02698B10 */ _t13 = cpu->r[12] + 0x00003EB0u;
|
|
/* 02698B10 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 02698B14 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[0]);
|
|
/* 02698B18 */ _t14 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02698B18 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02698B18 */ if (_t15) goto L_02698B44; else goto L_02698B1C;
|
|
L_02698B1C: ; // 0x2698b1c
|
|
/* 02698B1C */ goto L_02698B4C;
|
|
L_02698B20: ; // 0x2698b20
|
|
/* 02698B20 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[3], cpu->f[2]);
|
|
/* 02698B24 */ _t16 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02698B24 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02698B24 */ if (_t17) goto L_02698B28; else goto L_02698B2C;
|
|
L_02698B28: ; // 0x2698b28
|
|
/* 02698B28 */ cpu->f[3] = cpu->f[2];
|
|
L_02698B2C: ; // 0x2698b2c
|
|
/* 02698B2C */ cpu->f[0] = cpu->f[3] - cpu->f[4];
|
|
/* 02698B30 */ cpu->r[12] = 0x100E0000u;
|
|
/* 02698B34 */ cpu->f[1] = cpu->f[0] / cpu->f[11];
|
|
/* 02698B38 */ _t18 = cpu->r[12] + 0x00003EB0u;
|
|
/* 02698B38 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 02698B3C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[0]);
|
|
/* 02698B40 */ _t19 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02698B40 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02698B40 */ if (_t20) goto L_02698B44; else goto L_02698B4C;
|
|
L_02698B44: ; // 0x2698b44
|
|
/* 02698B44 */ cpu->f[1] = cpu->f[0];
|
|
/* 02698B48 */ return;
|
|
L_02698B4C: ; // 0x2698b4c
|
|
/* 02698B4C */ cpu->r[12] = 0x100E0000u;
|
|
/* 02698B50 */ _t21 = cpu->r[12] + 0x00003E20u;
|
|
/* 02698B50 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 02698B54 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[12]);
|
|
/* 02698B58 */ _t22 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02698B58 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02698B58 */ if (_t23) goto L_02698B5C; else goto L_02698B60;
|
|
L_02698B5C: ; // 0x2698b5c
|
|
/* 02698B5C */ cpu->f[1] = cpu->f[12];
|
|
L_02698B60: ; // 0x2698b60
|
|
/* 02698B60 */ return;
|
|
}
|
|
|
|
// fn_02698B64 @ 0x2698b64
|
|
void Gambit_fn_02698B64(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42;
|
|
|
|
L_02698B64: ; // 0x2698b64
|
|
/* 02698B64 */ cpu->r[0] = cpu->lr;
|
|
/* 02698B68 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 02698B68 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02698B68 */ cpu->r[1] = _t0;
|
|
/* 02698B6C */ _t1 = cpu->r[1] + 0x00000020u;
|
|
/* 02698B6C */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 02698B70 */ /* nop */
|
|
/* 02698B74 */ _t2 = cpu->r[1] + 0x00000028u;
|
|
/* 02698B74 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 02698B78 */ _t3 = cpu->r[1] + 0x00000034u;
|
|
/* 02698B78 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02698B7C */ _t4 = cpu->r[1] + 0x00000010u;
|
|
/* 02698B7C */ rbrew_write32(cpu->mem, _t4, cpu->r[28]);
|
|
/* 02698B80 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 02698B80 */ rbrew_write32(cpu->mem, _t5, cpu->r[29]);
|
|
/* 02698B84 */ _t6 = cpu->r[1] + 0x00000018u;
|
|
/* 02698B84 */ rbrew_write32(cpu->mem, _t6, cpu->r[30]);
|
|
/* 02698B88 */ _t7 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02698B88 */ rbrew_write32(cpu->mem, _t7, cpu->r[31]);
|
|
/* 02698B8C */ cpu->r[31] = cpu->r[4];
|
|
/* 02698B90 */ cpu->r[12] = 0x100E0000u;
|
|
/* 02698B94 */ _t8 = cpu->r[31] + 0x00000000u;
|
|
/* 02698B94 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02698B98 */ _t9 = cpu->r[12] + 0x00003D48u;
|
|
/* 02698B98 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 02698B9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02698BA0 */ cpu->r[30] = cpu->r[3];
|
|
/* 02698BA4 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02698BA4 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02698BA4 */ if (_t11) goto L_02698BA8; else goto L_02698BD8;
|
|
L_02698BA8: ; // 0x2698ba8
|
|
/* 02698BA8 */ _t12 = cpu->r[1] + 0x00000010u;
|
|
/* 02698BA8 */ cpu->r[28] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02698BAC */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 02698BAC */ cpu->r[29] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02698BB0 */ cpu->f[1] = cpu->f[31];
|
|
/* 02698BB4 */ _t14 = cpu->r[1] + 0x00000028u;
|
|
/* 02698BB4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 02698BB8 */ _t15 = cpu->r[1] + 0x00000018u;
|
|
/* 02698BB8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02698BBC */ _t16 = cpu->r[1] + 0x00000020u;
|
|
/* 02698BBC */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t16);
|
|
/* 02698BC0 */ _t17 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02698BC0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02698BC4 */ _t18 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02698BC4 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02698BC4 */ if (_t19) goto L_02698BC8; // else: addr-0 trap, fall-through
|
|
L_02698BC8: ; // 0x2698bc8
|
|
/* 02698BC8 */ _t20 = cpu->r[1] + 0x00000034u;
|
|
/* 02698BC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02698BCC */ cpu->lr = cpu->r[0];
|
|
/* 02698BD0 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 02698BD4 */ return;
|
|
L_02698BD8: ; // 0x2698bd8
|
|
/* 02698BD8 */ cpu->r[29] = 0x00000000u;
|
|
/* 02698BDC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[0]);
|
|
/* 02698BE0 */ _t21 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02698BE0 */ _t22 = _t21 & 0x00000001u;
|
|
/* 02698BE0 */ if (_t22) goto L_02698BE4; else goto L_02698C1C;
|
|
L_02698BE4: ; // 0x2698be4
|
|
/* 02698BE4 */ cpu->r[28] = 0x00000000u;
|
|
L_02698BE8: ; // 0x2698be8
|
|
/* 02698BE8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[0]);
|
|
/* 02698BEC */ cpu->r[3] = 0x00000000u;
|
|
/* 02698BF0 */ _t23 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02698BF0 */ _t24 = _t23 & 0x00000001u;
|
|
/* 02698BF0 */ if (_t24) goto L_02698BF4; else goto L_02698BFC;
|
|
L_02698BF4: ; // 0x2698bf4
|
|
/* 02698BF4 */ _t25 = cpu->r[31] + 0x00000008u;
|
|
/* 02698BF4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02698BF8 */ _t26 = cpu->r[11] + cpu->r[28];
|
|
/* 02698BF8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t26);
|
|
L_02698BFC: ; // 0x2698bfc
|
|
/* 02698BFC */ cpu->r[4] = cpu->r[30];
|
|
/* 02698C00 */ Gambit_fn_02C693A4(cpu);
|
|
/* 02698C04 */ _t27 = cpu->r[31] + 0x00000000u;
|
|
/* 02698C04 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02698C08 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 02698C0C */ cpu->r[28] = cpu->r[28] + 0x00000004u;
|
|
/* 02698C10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[0]);
|
|
/* 02698C14 */ cpu->f[31] = cpu->f[31] + cpu->f[1];
|
|
/* 02698C18 */ _t28 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02698C18 */ _t29 = _t28 & 0x00000001u;
|
|
/* 02698C18 */ if (_t29) goto L_02698BE8; else goto L_02698C1C;
|
|
L_02698C1C: ; // 0x2698c1c
|
|
/* 02698C1C */ cpu->r[10] = 0x100E0000u;
|
|
/* 02698C20 */ cpu->r[0] = cpu->r[0] ^ 0x80000000u;
|
|
/* 02698C24 */ _t30 = cpu->r[10] + 0x00003E08u;
|
|
/* 02698C24 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t30);
|
|
/* 02698C28 */ cpu->r[7] = 0x43300000u;
|
|
/* 02698C2C */ _t31 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02698C2C */ rbrew_write32(cpu->mem, _t31, cpu->r[0]);
|
|
/* 02698C30 */ _t32 = cpu->r[1] + 0x00000008u;
|
|
/* 02698C30 */ rbrew_write32(cpu->mem, _t32, cpu->r[7]);
|
|
/* 02698C34 */ _t33 = cpu->r[1] + 0x00000008u;
|
|
/* 02698C34 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t33);
|
|
/* 02698C38 */ _t34 = cpu->r[1] + 0x00000010u;
|
|
/* 02698C38 */ cpu->r[28] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02698C3C */ cpu->f[0] = cpu->f[13] - cpu->f[0];
|
|
/* 02698C40 */ _t35 = cpu->r[1] + 0x00000014u;
|
|
/* 02698C40 */ cpu->r[29] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02698C44 */ cpu->f[13] = (double)(float)cpu->f[0];
|
|
/* 02698C48 */ _t36 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02698C48 */ cpu->r[31] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02698C4C */ _t37 = cpu->r[1] + 0x00000018u;
|
|
/* 02698C4C */ cpu->r[30] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02698C50 */ cpu->f[1] = cpu->f[31] / cpu->f[13];
|
|
/* 02698C54 */ _t38 = cpu->r[1] + 0x00000028u;
|
|
/* 02698C54 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 02698C58 */ _t39 = cpu->r[1] + 0x00000020u;
|
|
/* 02698C58 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t39);
|
|
/* 02698C5C */ _t40 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02698C5C */ _t41 = _t40 & 0x00000001u;
|
|
/* 02698C5C */ if (_t41) goto L_02698C60; // else: addr-0 trap, fall-through
|
|
L_02698C60: ; // 0x2698c60
|
|
/* 02698C60 */ _t42 = cpu->r[1] + 0x00000034u;
|
|
/* 02698C60 */ cpu->r[0] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02698C64 */ cpu->lr = cpu->r[0];
|
|
/* 02698C68 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 02698C6C */ return;
|
|
}
|
|
|
|
// fn_02698B68 @ 0x2698b68
|
|
void Gambit_fn_02698B68(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42;
|
|
|
|
L_02698B68: ; // 0x2698b68
|
|
/* 02698B68 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 02698B68 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02698B68 */ cpu->r[1] = _t0;
|
|
/* 02698B6C */ _t1 = cpu->r[1] + 0x00000020u;
|
|
/* 02698B6C */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 02698B70 */ /* nop */
|
|
/* 02698B74 */ _t2 = cpu->r[1] + 0x00000028u;
|
|
/* 02698B74 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 02698B78 */ _t3 = cpu->r[1] + 0x00000034u;
|
|
/* 02698B78 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02698B7C */ _t4 = cpu->r[1] + 0x00000010u;
|
|
/* 02698B7C */ rbrew_write32(cpu->mem, _t4, cpu->r[28]);
|
|
/* 02698B80 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 02698B80 */ rbrew_write32(cpu->mem, _t5, cpu->r[29]);
|
|
/* 02698B84 */ _t6 = cpu->r[1] + 0x00000018u;
|
|
/* 02698B84 */ rbrew_write32(cpu->mem, _t6, cpu->r[30]);
|
|
/* 02698B88 */ _t7 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02698B88 */ rbrew_write32(cpu->mem, _t7, cpu->r[31]);
|
|
/* 02698B8C */ cpu->r[31] = cpu->r[4];
|
|
/* 02698B90 */ cpu->r[12] = 0x100E0000u;
|
|
/* 02698B94 */ _t8 = cpu->r[31] + 0x00000000u;
|
|
/* 02698B94 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02698B98 */ _t9 = cpu->r[12] + 0x00003D48u;
|
|
/* 02698B98 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 02698B9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02698BA0 */ cpu->r[30] = cpu->r[3];
|
|
/* 02698BA4 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02698BA4 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02698BA4 */ if (_t11) goto L_02698BA8; else goto L_02698BD8;
|
|
L_02698BA8: ; // 0x2698ba8
|
|
/* 02698BA8 */ _t12 = cpu->r[1] + 0x00000010u;
|
|
/* 02698BA8 */ cpu->r[28] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02698BAC */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 02698BAC */ cpu->r[29] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02698BB0 */ cpu->f[1] = cpu->f[31];
|
|
/* 02698BB4 */ _t14 = cpu->r[1] + 0x00000028u;
|
|
/* 02698BB4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 02698BB8 */ _t15 = cpu->r[1] + 0x00000018u;
|
|
/* 02698BB8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02698BBC */ _t16 = cpu->r[1] + 0x00000020u;
|
|
/* 02698BBC */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t16);
|
|
/* 02698BC0 */ _t17 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02698BC0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02698BC4 */ _t18 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02698BC4 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02698BC4 */ if (_t19) goto L_02698BC8; // else: addr-0 trap, fall-through
|
|
L_02698BC8: ; // 0x2698bc8
|
|
/* 02698BC8 */ _t20 = cpu->r[1] + 0x00000034u;
|
|
/* 02698BC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02698BCC */ cpu->lr = cpu->r[0];
|
|
/* 02698BD0 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 02698BD4 */ return;
|
|
L_02698BD8: ; // 0x2698bd8
|
|
/* 02698BD8 */ cpu->r[29] = 0x00000000u;
|
|
/* 02698BDC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[0]);
|
|
/* 02698BE0 */ _t21 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02698BE0 */ _t22 = _t21 & 0x00000001u;
|
|
/* 02698BE0 */ if (_t22) goto L_02698BE4; else goto L_02698C1C;
|
|
L_02698BE4: ; // 0x2698be4
|
|
/* 02698BE4 */ cpu->r[28] = 0x00000000u;
|
|
L_02698BE8: ; // 0x2698be8
|
|
/* 02698BE8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[0]);
|
|
/* 02698BEC */ cpu->r[3] = 0x00000000u;
|
|
/* 02698BF0 */ _t23 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02698BF0 */ _t24 = _t23 & 0x00000001u;
|
|
/* 02698BF0 */ if (_t24) goto L_02698BF4; else goto L_02698BFC;
|
|
L_02698BF4: ; // 0x2698bf4
|
|
/* 02698BF4 */ _t25 = cpu->r[31] + 0x00000008u;
|
|
/* 02698BF4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02698BF8 */ _t26 = cpu->r[11] + cpu->r[28];
|
|
/* 02698BF8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t26);
|
|
L_02698BFC: ; // 0x2698bfc
|
|
/* 02698BFC */ cpu->r[4] = cpu->r[30];
|
|
/* 02698C00 */ Gambit_fn_02C693A4(cpu);
|
|
/* 02698C04 */ _t27 = cpu->r[31] + 0x00000000u;
|
|
/* 02698C04 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02698C08 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 02698C0C */ cpu->r[28] = cpu->r[28] + 0x00000004u;
|
|
/* 02698C10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[0]);
|
|
/* 02698C14 */ cpu->f[31] = cpu->f[31] + cpu->f[1];
|
|
/* 02698C18 */ _t28 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02698C18 */ _t29 = _t28 & 0x00000001u;
|
|
/* 02698C18 */ if (_t29) goto L_02698BE8; else goto L_02698C1C;
|
|
L_02698C1C: ; // 0x2698c1c
|
|
/* 02698C1C */ cpu->r[10] = 0x100E0000u;
|
|
/* 02698C20 */ cpu->r[0] = cpu->r[0] ^ 0x80000000u;
|
|
/* 02698C24 */ _t30 = cpu->r[10] + 0x00003E08u;
|
|
/* 02698C24 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t30);
|
|
/* 02698C28 */ cpu->r[7] = 0x43300000u;
|
|
/* 02698C2C */ _t31 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02698C2C */ rbrew_write32(cpu->mem, _t31, cpu->r[0]);
|
|
/* 02698C30 */ _t32 = cpu->r[1] + 0x00000008u;
|
|
/* 02698C30 */ rbrew_write32(cpu->mem, _t32, cpu->r[7]);
|
|
/* 02698C34 */ _t33 = cpu->r[1] + 0x00000008u;
|
|
/* 02698C34 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t33);
|
|
/* 02698C38 */ _t34 = cpu->r[1] + 0x00000010u;
|
|
/* 02698C38 */ cpu->r[28] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02698C3C */ cpu->f[0] = cpu->f[13] - cpu->f[0];
|
|
/* 02698C40 */ _t35 = cpu->r[1] + 0x00000014u;
|
|
/* 02698C40 */ cpu->r[29] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02698C44 */ cpu->f[13] = (double)(float)cpu->f[0];
|
|
/* 02698C48 */ _t36 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02698C48 */ cpu->r[31] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02698C4C */ _t37 = cpu->r[1] + 0x00000018u;
|
|
/* 02698C4C */ cpu->r[30] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02698C50 */ cpu->f[1] = cpu->f[31] / cpu->f[13];
|
|
/* 02698C54 */ _t38 = cpu->r[1] + 0x00000028u;
|
|
/* 02698C54 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 02698C58 */ _t39 = cpu->r[1] + 0x00000020u;
|
|
/* 02698C58 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t39);
|
|
/* 02698C5C */ _t40 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02698C5C */ _t41 = _t40 & 0x00000001u;
|
|
/* 02698C5C */ if (_t41) goto L_02698C60; // else: addr-0 trap, fall-through
|
|
L_02698C60: ; // 0x2698c60
|
|
/* 02698C60 */ _t42 = cpu->r[1] + 0x00000034u;
|
|
/* 02698C60 */ cpu->r[0] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02698C64 */ cpu->lr = cpu->r[0];
|
|
/* 02698C68 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 02698C6C */ return;
|
|
}
|
|
|
|
// fn_02698C70 @ 0x2698c70
|
|
void Gambit_fn_02698C70(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02698C70: ; // 0x2698c70
|
|
/* 02698C70 */ cpu->r[12] = 0x101F0000u;
|
|
/* 02698C74 */ cpu->r[0] = 0x00000020u;
|
|
/* 02698C78 */ _t0 = cpu->r[12] + 0xFFFFD8E0u;
|
|
/* 02698C78 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 02698C7C */ return;
|
|
}
|
|
|
|
// fn_02698C80 @ 0x2698c80
|
|
void Gambit_fn_02698C80(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_02698C80: ; // 0x2698c80
|
|
/* 02698C80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02698C84 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02698C84 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02698C84 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02698C84 */ goto L_02698C88;
|
|
L_02698C88: ; // 0x2698c88
|
|
/* 02698C88 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02698C88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02698C8C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02698C8C */ _t3 = _t2 & 0x00000001u;
|
|
/* 02698C8C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02698C8C */ goto L_02698C90;
|
|
L_02698C90: ; // 0x2698c90
|
|
/* 02698C90 */ 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_02698C94 @ 0x2698c94
|
|
void Gambit_fn_02698C94(CPUState* cpu) {
|
|
L_02698C94: ; // 0x2698c94
|
|
/* 02698C94 */ return;
|
|
}
|
|
|
|
// fn_02698C98 @ 0x2698c98
|
|
void Gambit_fn_02698C98(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_02698C98: ; // 0x2698c98
|
|
/* 02698C98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02698C9C */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02698C9C */ _t1 = _t0 & 0x00000001u;
|
|
/* 02698C9C */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02698C9C */ goto L_02698CA0;
|
|
L_02698CA0: ; // 0x2698ca0
|
|
/* 02698CA0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02698CA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02698CA4 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02698CA4 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02698CA4 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02698CA4 */ goto L_02698CA8;
|
|
L_02698CA8: ; // 0x2698ca8
|
|
/* 02698CA8 */ 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_02698CAC @ 0x2698cac
|
|
void Gambit_fn_02698CAC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_02698CAC: ; // 0x2698cac
|
|
/* 02698CAC */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 02698CAC */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02698CB0 */ _t1 = cpu->r[3] + 0x00000008u;
|
|
/* 02698CB0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02698CB4 */ cpu->r[12] = cpu->r[11] + cpu->r[12];
|
|
/* 02698CB8 */ cpu->r[11] = 0x10110000u;
|
|
/* 02698CBC */ _t2 = cpu->r[11] + 0x00007399u;
|
|
/* 02698CBC */ cpu->r[0] = rbrew_read8(cpu->mem, _t2);
|
|
/* 02698CC0 */ _t3 = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 02698CC0 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]);
|
|
/* 02698CC4 */ return;
|
|
}
|
|
|
|
// fn_02698CC8 @ 0x2698cc8
|
|
void Gambit_fn_02698CC8(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_02698CC8: ; // 0x2698cc8
|
|
/* 02698CC8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02698CCC */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02698CCC */ _t1 = _t0 & 0x00000001u;
|
|
/* 02698CCC */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02698CCC */ goto L_02698CD0;
|
|
L_02698CD0: ; // 0x2698cd0
|
|
/* 02698CD0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02698CD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02698CD4 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02698CD4 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02698CD4 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02698CD4 */ goto L_02698CD8;
|
|
L_02698CD8: ; // 0x2698cd8
|
|
/* 02698CD8 */ 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_02698CDC @ 0x2698cdc
|
|
void Gambit_fn_02698CDC(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_02698CDC: ; // 0x2698cdc
|
|
/* 02698CDC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02698CE0 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02698CE0 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02698CE0 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02698CE0 */ goto L_02698CE4;
|
|
L_02698CE4: ; // 0x2698ce4
|
|
/* 02698CE4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02698CE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02698CE8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02698CE8 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02698CE8 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02698CE8 */ goto L_02698CEC;
|
|
L_02698CEC: ; // 0x2698cec
|
|
/* 02698CEC */ 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_02698CF0 @ 0x2698cf0
|
|
void Gambit_fn_02698CF0(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_02698CF0: ; // 0x2698cf0
|
|
/* 02698CF0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02698CF4 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02698CF4 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02698CF4 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02698CF4 */ goto L_02698CF8;
|
|
L_02698CF8: ; // 0x2698cf8
|
|
/* 02698CF8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02698CF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02698CFC */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02698CFC */ _t3 = _t2 & 0x00000001u;
|
|
/* 02698CFC */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02698CFC */ goto L_02698D00;
|
|
L_02698D00: ; // 0x2698d00
|
|
/* 02698D00 */ 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_02698D04 @ 0x2698d04
|
|
void Gambit_fn_02698D04(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_02698D04: ; // 0x2698d04
|
|
/* 02698D04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02698D08 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02698D08 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02698D08 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02698D08 */ goto L_02698D0C;
|
|
L_02698D0C: ; // 0x2698d0c
|
|
/* 02698D0C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02698D0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02698D10 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02698D10 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02698D10 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02698D10 */ goto L_02698D14;
|
|
L_02698D14: ; // 0x2698d14
|
|
/* 02698D14 */ 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_02698D18 @ 0x2698d18
|
|
void Gambit_fn_02698D18(CPUState* cpu) {
|
|
uint32_t _t0, _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;
|
|
|
|
L_02698D18: ; // 0x2698d18
|
|
/* 02698D18 */ cpu->r[12] = 0x100E0000u;
|
|
/* 02698D1C */ _t0 = cpu->r[12] + 0x00003EBCu;
|
|
/* 02698D1C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 02698D20 */ cpu->r[12] = 0x100E0000u;
|
|
/* 02698D24 */ _t1 = cpu->r[12] + 0x00003EB8u;
|
|
/* 02698D24 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 02698D28 */ _t2 = cpu->r[3] + 0x00000018u;
|
|
/* 02698D28 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[0]);
|
|
/* 02698D2C */ _t3 = cpu->r[3] + 0x00000010u;
|
|
/* 02698D2C */ rbrew_write_f32(cpu->mem, _t3, cpu->f[13]);
|
|
/* 02698D30 */ _t4 = cpu->r[3] + 0x00000020u;
|
|
/* 02698D30 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[13]);
|
|
/* 02698D34 */ _t5 = cpu->r[3] + 0x00000024u;
|
|
/* 02698D34 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[13]);
|
|
/* 02698D38 */ _t6 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02698D38 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[13]);
|
|
/* 02698D3C */ _t7 = cpu->r[3] + 0x0000001Cu;
|
|
/* 02698D3C */ rbrew_write_f32(cpu->mem, _t7, cpu->f[13]);
|
|
/* 02698D40 */ _t8 = cpu->r[3] + 0x0000002Cu;
|
|
/* 02698D40 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[13]);
|
|
/* 02698D44 */ _t9 = cpu->r[3] + 0x00000030u;
|
|
/* 02698D44 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[13]);
|
|
/* 02698D48 */ _t10 = cpu->r[3] + 0x00000008u;
|
|
/* 02698D48 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[0]);
|
|
/* 02698D4C */ _t11 = cpu->r[3] + 0x00000034u;
|
|
/* 02698D4C */ rbrew_write_f32(cpu->mem, _t11, cpu->f[13]);
|
|
/* 02698D50 */ _t12 = cpu->r[3] + 0x00000028u;
|
|
/* 02698D50 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[0]);
|
|
/* 02698D54 */ cpu->r[12] = 0x101F0000u;
|
|
/* 02698D58 */ _t13 = cpu->r[3] + 0x00000014u;
|
|
/* 02698D58 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[13]);
|
|
/* 02698D5C */ _t14 = cpu->r[12] + 0x00006338u;
|
|
/* 02698D5C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 02698D5C */ cpu->r[12] = _t14;
|
|
/* 02698D60 */ _t15 = cpu->r[3] + 0x00000038u;
|
|
/* 02698D60 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[10]);
|
|
/* 02698D64 */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 02698D64 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 02698D68 */ _t17 = cpu->r[3] + 0x0000003Cu;
|
|
/* 02698D68 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[11]);
|
|
/* 02698D6C */ _t18 = cpu->r[12] + 0x00000008u;
|
|
/* 02698D6C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 02698D70 */ cpu->r[12] = 0x101F0000u;
|
|
/* 02698D74 */ _t19 = cpu->r[3] + 0x00000040u;
|
|
/* 02698D74 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[13]);
|
|
/* 02698D78 */ _t20 = cpu->r[12] + 0x0000635Cu;
|
|
/* 02698D78 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 02698D78 */ cpu->r[12] = _t20;
|
|
/* 02698D7C */ _t21 = cpu->r[3] + 0x00000044u;
|
|
/* 02698D7C */ rbrew_write_f32(cpu->mem, _t21, cpu->f[0]);
|
|
/* 02698D80 */ _t22 = cpu->r[12] + 0x00000004u;
|
|
/* 02698D80 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 02698D84 */ _t23 = cpu->r[3] + 0x00000048u;
|
|
/* 02698D84 */ rbrew_write_f32(cpu->mem, _t23, cpu->f[12]);
|
|
/* 02698D88 */ _t24 = cpu->r[12] + 0x00000008u;
|
|
/* 02698D88 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 02698D8C */ _t25 = cpu->r[3] + 0x00000078u;
|
|
/* 02698D8C */ rbrew_write_f32(cpu->mem, _t25, cpu->f[10]);
|
|
/* 02698D90 */ cpu->r[0] = 0x00000001u;
|
|
/* 02698D94 */ _t26 = cpu->r[3] + 0x0000004Cu;
|
|
/* 02698D94 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[12]);
|
|
/* 02698D98 */ _t27 = cpu->r[3] + 0x00000065u;
|
|
/* 02698D98 */ rbrew_write8(cpu->mem, _t27, (uint8_t)cpu->r[0]);
|
|
/* 02698D9C */ _t28 = cpu->r[3] + 0x0000007Cu;
|
|
/* 02698D9C */ rbrew_write_f32(cpu->mem, _t28, cpu->f[11]);
|
|
/* 02698DA0 */ _t29 = cpu->r[3] + 0x00000080u;
|
|
/* 02698DA0 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[13]);
|
|
/* 02698DA4 */ return;
|
|
}
|
|
|
|
// fn_02698DA8 @ 0x2698da8
|
|
void Gambit_fn_02698DA8(CPUState* cpu) {
|
|
uint32_t _t0, _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;
|
|
|
|
L_02698DA8: ; // 0x2698da8
|
|
/* 02698DA8 */ _t0 = cpu->r[1] + 0xFFFFFF90u;
|
|
/* 02698DA8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02698DA8 */ cpu->r[1] = _t0;
|
|
/* 02698DAC */ _t1 = cpu->r[1] + 0x00000060u;
|
|
/* 02698DAC */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 02698DB0 */ /* nop */
|
|
/* 02698DB4 */ _t2 = cpu->r[1] + 0x00000020u;
|
|
/* 02698DB4 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[27]);
|
|
/* 02698DB8 */ /* nop */
|
|
/* 02698DBC */ _t3 = cpu->r[1] + 0x00000068u;
|
|
/* 02698DBC */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 02698DC0 */ _t4 = cpu->r[1] + 0x00000028u;
|
|
/* 02698DC0 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[27]);
|
|
/* 02698DC4 */ _t5 = cpu->r[1] + 0x00000050u;
|
|
/* 02698DC4 */ rbrew_write_f64(cpu->mem, _t5, cpu->f[30]);
|
|
/* 02698DC8 */ cpu->f[27] = cpu->f[1];
|
|
/* 02698DCC */ _t6 = cpu->r[1] + 0x00000030u;
|
|
/* 02698DCC */ rbrew_write_f64(cpu->mem, _t6, cpu->f[28]);
|
|
/* 02698DD0 */ /* nop */
|
|
/* 02698DD4 */ /* nop */
|
|
/* 02698DD8 */ cpu->r[0] = cpu->lr;
|
|
/* 02698DDC */ /* nop */
|
|
/* 02698DE0 */ _t7 = cpu->r[1] + 0x00000040u;
|
|
/* 02698DE0 */ rbrew_write_f64(cpu->mem, _t7, cpu->f[29]);
|
|
/* 02698DE4 */ /* nop */
|
|
/* 02698DE8 */ _t8 = cpu->r[1] + 0x00000038u;
|
|
/* 02698DE8 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[28]);
|
|
/* 02698DEC */ cpu->r[28] = cpu->r[4];
|
|
/* 02698DF0 */ _t9 = cpu->r[1] + 0x00000058u;
|
|
/* 02698DF0 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[30]);
|
|
/* 02698DF4 */ cpu->f[28] = cpu->f[2];
|
|
/* 02698DF8 */ _t10 = cpu->r[1] + 0x00000048u;
|
|
/* 02698DF8 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[29]);
|
|
/* 02698DFC */ cpu->r[31] = cpu->r[3];
|
|
/* 02698DFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02698E00 */ _t11 = cpu->r[1] + 0x00000074u;
|
|
/* 02698E00 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02698E04 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02698E04 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02698E04 */ if (_t13) goto L_02698E08; else goto L_02698E18;
|
|
L_02698E08: ; // 0x2698e08
|
|
/* 02698E08 */ cpu->r[3] = 0x00000084u;
|
|
/* 02698E0C */ Gambit_fn_02801A78(cpu);
|
|
/* 02698E10 */ cpu->r[31] = cpu->r[3];
|
|
/* 02698E10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02698E14 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02698E14 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02698E14 */ if (_t15) goto L_02699078; else goto L_02698E18;
|
|
L_02698E18: ; // 0x2698e18
|
|
/* 02698E18 */ cpu->r[3] = cpu->r[31];
|
|
/* 02698E18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02698E1C */ cpu->r[29] = 0x00000000u;
|
|
/* 02698E20 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02698E20 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02698E20 */ if (_t17) goto L_02698E24; else goto L_02698E34;
|
|
L_02698E24: ; // 0x2698e24
|
|
/* 02698E24 */ cpu->r[3] = 0x00000008u;
|
|
/* 02698E28 */ Gambit_fn_02801A78(cpu);
|
|
/* 02698E2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02698E30 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02698E30 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02698E30 */ if (_t19) goto L_02698E44; else goto L_02698E34;
|
|
L_02698E34: ; // 0x2698e34
|
|
/* 02698E34 */ cpu->r[7] = 0x100E0000u;
|
|
/* 02698E38 */ _t20 = cpu->r[3] + 0x00000000u;
|
|
/* 02698E38 */ rbrew_write32(cpu->mem, _t20, cpu->r[29]);
|
|
/* 02698E3C */ cpu->r[7] = cpu->r[7] + 0x00003ED8u;
|
|
/* 02698E40 */ _t21 = cpu->r[3] + 0x00000004u;
|
|
/* 02698E40 */ rbrew_write32(cpu->mem, _t21, cpu->r[7]);
|
|
L_02698E44: ; // 0x2698e44
|
|
/* 02698E44 */ cpu->r[0] = 0x100E0000u;
|
|
/* 02698E48 */ cpu->r[0] = cpu->r[0] + 0x00003F20u;
|
|
/* 02698E4C */ cpu->r[26] = cpu->r[31] + 0x00000008u;
|
|
/* 02698E4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 02698E50 */ _t22 = cpu->r[31] + 0x00000004u;
|
|
/* 02698E50 */ rbrew_write32(cpu->mem, _t22, cpu->r[0]);
|
|
/* 02698E54 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02698E54 */ _t24 = _t23 & 0x00000001u;
|
|
/* 02698E54 */ if (_t24) goto L_02698E58; else goto L_02698E68;
|
|
L_02698E58: ; // 0x2698e58
|
|
/* 02698E58 */ cpu->r[3] = 0x00000030u;
|
|
/* 02698E5C */ Gambit_fn_02801A78(cpu);
|
|
/* 02698E60 */ cpu->r[26] = cpu->r[3];
|
|
/* 02698E60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 02698E64 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02698E64 */ _t26 = _t25 & 0x00000001u;
|
|
/* 02698E64 */ if (_t26) goto L_02698FC0; else goto L_02698E68;
|
|
L_02698E68: ; // 0x2698e68
|
|
/* 02698E68 */ cpu->r[30] = 0x101F0000u;
|
|
/* 02698E6C */ cpu->r[27] = cpu->r[26];
|
|
/* 02698E6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02698E70 */ cpu->r[30] = cpu->r[30] + 0x00005E30u;
|
|
/* 02698E74 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02698E74 */ _t28 = _t27 & 0x00000001u;
|
|
/* 02698E74 */ if (_t28) goto L_02698E78; else goto L_02698EA0;
|
|
L_02698E78: ; // 0x2698e78
|
|
/* 02698E78 */ cpu->r[3] = 0x00000024u;
|
|
/* 02698E7C */ Gambit_fn_02801A78(cpu);
|
|
/* 02698E80 */ cpu->r[27] = cpu->r[3];
|
|
/* 02698E80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02698E84 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02698E84 */ _t30 = _t29 & 0x00000001u;
|
|
/* 02698E84 */ if (_t30) goto L_02698E88; else goto L_02698EA0;
|
|
L_02698E88: ; // 0x2698e88
|
|
/* 02698E88 */ _t31 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02698E88 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 02698E8C */ cpu->r[3] = cpu->r[26] + 0x00000024u;
|
|
/* 02698E8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02698E90 */ _t32 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02698E90 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 02698E94 */ _t33 = cpu->r[30] + 0x0000002Cu;
|
|
/* 02698E94 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 02698E98 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02698E98 */ _t35 = _t34 & 0x00000001u;
|
|
/* 02698E98 */ if (_t35) goto L_02698F8C; else goto L_02698E9C;
|
|
L_02698E9C: ; // 0x2698e9c
|
|
/* 02698E9C */ goto L_02698F9C;
|
|
L_02698EA0: ; // 0x2698ea0
|
|
/* 02698EA0 */ _t36 = cpu->r[30] + 0x00000010u;
|
|
/* 02698EA0 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 02698EA4 */ cpu->r[3] = cpu->r[27];
|
|
/* 02698EA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02698EA8 */ _t37 = cpu->r[30] + 0x00000000u;
|
|
/* 02698EA8 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 02698EAC */ _t38 = cpu->r[30] + 0x00000020u;
|
|
/* 02698EAC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 02698EB0 */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02698EB0 */ _t40 = _t39 & 0x00000001u;
|
|
/* 02698EB0 */ if (_t40) goto L_02698EB4; else goto L_02698EC4;
|
|
L_02698EB4: ; // 0x2698eb4
|
|
/* 02698EB4 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02698EB8 */ Gambit_fn_02801A78(cpu);
|
|
/* 02698EBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02698EC0 */ _t41 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02698EC0 */ _t42 = _t41 & 0x00000001u;
|
|
/* 02698EC0 */ if (_t42) goto L_02698EE8; else goto L_02698EC4;
|
|
L_02698EC4: ; // 0x2698ec4
|
|
/* 02698EC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02698EC8 */ _t43 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02698EC8 */ _t44 = _t43 & 0x00000001u;
|
|
/* 02698EC8 */ if (_t44) goto L_02698ECC; else goto L_02698EDC;
|
|
L_02698ECC: ; // 0x2698ecc
|
|
/* 02698ECC */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02698ED0 */ Gambit_fn_02801A78(cpu);
|
|
/* 02698ED4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02698ED8 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02698ED8 */ _t46 = _t45 & 0x00000001u;
|
|
/* 02698ED8 */ if (_t46) goto L_02698EE8; else goto L_02698EDC;
|
|
L_02698EDC: ; // 0x2698edc
|
|
/* 02698EDC */ _t47 = cpu->r[3] + 0x00000004u;
|
|
/* 02698EDC */ rbrew_write_f32(cpu->mem, _t47, cpu->f[30]);
|
|
/* 02698EE0 */ _t48 = cpu->r[3] + 0x00000000u;
|
|
/* 02698EE0 */ rbrew_write_f32(cpu->mem, _t48, cpu->f[29]);
|
|
/* 02698EE4 */ _t49 = cpu->r[3] + 0x00000008u;
|
|
/* 02698EE4 */ rbrew_write_f32(cpu->mem, _t49, cpu->f[31]);
|
|
L_02698EE8: ; // 0x2698ee8
|
|
/* 02698EE8 */ _t50 = cpu->r[30] + 0x00000004u;
|
|
/* 02698EE8 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t50);
|
|
/* 02698EEC */ cpu->r[3] = cpu->r[27] + 0x0000000Cu;
|
|
/* 02698EEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02698EF0 */ _t51 = cpu->r[30] + 0x00000014u;
|
|
/* 02698EF0 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 02698EF4 */ _t52 = cpu->r[30] + 0x00000024u;
|
|
/* 02698EF4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 02698EF8 */ _t53 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02698EF8 */ _t54 = _t53 & 0x00000001u;
|
|
/* 02698EF8 */ if (_t54) goto L_02698EFC; else goto L_02698F0C;
|
|
L_02698EFC: ; // 0x2698efc
|
|
/* 02698EFC */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02698F00 */ Gambit_fn_02801A78(cpu);
|
|
/* 02698F04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02698F08 */ _t55 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02698F08 */ _t56 = _t55 & 0x00000001u;
|
|
/* 02698F08 */ if (_t56) goto L_02698F30; else goto L_02698F0C;
|
|
L_02698F0C: ; // 0x2698f0c
|
|
/* 02698F0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02698F10 */ _t57 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02698F10 */ _t58 = _t57 & 0x00000001u;
|
|
/* 02698F10 */ if (_t58) goto L_02698F14; else goto L_02698F24;
|
|
L_02698F14: ; // 0x2698f14
|
|
/* 02698F14 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02698F18 */ Gambit_fn_02801A78(cpu);
|
|
/* 02698F1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02698F20 */ _t59 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02698F20 */ _t60 = _t59 & 0x00000001u;
|
|
/* 02698F20 */ if (_t60) goto L_02698F30; else goto L_02698F24;
|
|
L_02698F24: ; // 0x2698f24
|
|
/* 02698F24 */ _t61 = cpu->r[3] + 0x00000004u;
|
|
/* 02698F24 */ rbrew_write_f32(cpu->mem, _t61, cpu->f[30]);
|
|
/* 02698F28 */ _t62 = cpu->r[3] + 0x00000000u;
|
|
/* 02698F28 */ rbrew_write_f32(cpu->mem, _t62, cpu->f[29]);
|
|
/* 02698F2C */ _t63 = cpu->r[3] + 0x00000008u;
|
|
/* 02698F2C */ rbrew_write_f32(cpu->mem, _t63, cpu->f[31]);
|
|
L_02698F30: ; // 0x2698f30
|
|
/* 02698F30 */ _t64 = cpu->r[30] + 0x00000008u;
|
|
/* 02698F30 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 02698F34 */ cpu->r[3] = cpu->r[27] + 0x00000018u;
|
|
/* 02698F34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02698F38 */ _t65 = cpu->r[30] + 0x00000018u;
|
|
/* 02698F38 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t65);
|
|
/* 02698F3C */ _t66 = cpu->r[30] + 0x00000028u;
|
|
/* 02698F3C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t66);
|
|
/* 02698F40 */ _t67 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02698F40 */ _t68 = _t67 & 0x00000001u;
|
|
/* 02698F40 */ if (_t68) goto L_02698F44; else goto L_02698F54;
|
|
L_02698F44: ; // 0x2698f44
|
|
/* 02698F44 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02698F48 */ Gambit_fn_02801A78(cpu);
|
|
/* 02698F4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02698F50 */ _t69 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02698F50 */ _t70 = _t69 & 0x00000001u;
|
|
/* 02698F50 */ if (_t70) goto L_02698F78; else goto L_02698F54;
|
|
L_02698F54: ; // 0x2698f54
|
|
/* 02698F54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02698F58 */ _t71 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02698F58 */ _t72 = _t71 & 0x00000001u;
|
|
/* 02698F58 */ if (_t72) goto L_02698F5C; else goto L_02698F6C;
|
|
L_02698F5C: ; // 0x2698f5c
|
|
/* 02698F5C */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02698F60 */ Gambit_fn_02801A78(cpu);
|
|
/* 02698F64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02698F68 */ _t73 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02698F68 */ _t74 = _t73 & 0x00000001u;
|
|
/* 02698F68 */ if (_t74) goto L_02698F78; else goto L_02698F6C;
|
|
L_02698F6C: ; // 0x2698f6c
|
|
/* 02698F6C */ _t75 = cpu->r[3] + 0x00000004u;
|
|
/* 02698F6C */ rbrew_write_f32(cpu->mem, _t75, cpu->f[30]);
|
|
/* 02698F70 */ _t76 = cpu->r[3] + 0x00000000u;
|
|
/* 02698F70 */ rbrew_write_f32(cpu->mem, _t76, cpu->f[29]);
|
|
/* 02698F74 */ _t77 = cpu->r[3] + 0x00000008u;
|
|
/* 02698F74 */ rbrew_write_f32(cpu->mem, _t77, cpu->f[31]);
|
|
L_02698F78: ; // 0x2698f78
|
|
/* 02698F78 */ _t78 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02698F78 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t78);
|
|
/* 02698F7C */ cpu->r[3] = cpu->r[26] + 0x00000024u;
|
|
/* 02698F7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02698F80 */ _t79 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02698F80 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t79);
|
|
/* 02698F84 */ _t80 = cpu->r[30] + 0x0000002Cu;
|
|
/* 02698F84 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t80);
|
|
/* 02698F88 */ _t81 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02698F88 */ _t82 = _t81 & 0x00000001u;
|
|
/* 02698F88 */ if (_t82) goto L_02698F8C; else goto L_02698F9C;
|
|
L_02698F8C: ; // 0x2698f8c
|
|
/* 02698F8C */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02698F90 */ Gambit_fn_02801A78(cpu);
|
|
/* 02698F94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02698F98 */ _t83 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02698F98 */ _t84 = _t83 & 0x00000001u;
|
|
/* 02698F98 */ if (_t84) goto L_02698FC0; else goto L_02698F9C;
|
|
L_02698F9C: ; // 0x2698f9c
|
|
/* 02698F9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02698FA0 */ _t85 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02698FA0 */ _t86 = _t85 & 0x00000001u;
|
|
/* 02698FA0 */ if (_t86) goto L_02698FA4; else goto L_02698FB4;
|
|
L_02698FA4: ; // 0x2698fa4
|
|
/* 02698FA4 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02698FA8 */ Gambit_fn_02801A78(cpu);
|
|
/* 02698FAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02698FB0 */ _t87 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02698FB0 */ _t88 = _t87 & 0x00000001u;
|
|
/* 02698FB0 */ if (_t88) goto L_02698FC0; else goto L_02698FB4;
|
|
L_02698FB4: ; // 0x2698fb4
|
|
/* 02698FB4 */ _t89 = cpu->r[3] + 0x00000004u;
|
|
/* 02698FB4 */ rbrew_write_f32(cpu->mem, _t89, cpu->f[30]);
|
|
/* 02698FB8 */ _t90 = cpu->r[3] + 0x00000000u;
|
|
/* 02698FB8 */ rbrew_write_f32(cpu->mem, _t90, cpu->f[29]);
|
|
/* 02698FBC */ _t91 = cpu->r[3] + 0x00000008u;
|
|
/* 02698FBC */ rbrew_write_f32(cpu->mem, _t91, cpu->f[31]);
|
|
L_02698FC0: ; // 0x2698fc0
|
|
/* 02698FC0 */ cpu->r[30] = 0x101F0000u;
|
|
/* 02698FC4 */ _t92 = cpu->r[30] + 0x00006338u;
|
|
/* 02698FC4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t92);
|
|
/* 02698FC4 */ cpu->r[30] = _t92;
|
|
/* 02698FC8 */ _t93 = cpu->r[31] + 0x00000038u;
|
|
/* 02698FC8 */ rbrew_write32(cpu->mem, _t93, cpu->r[9]);
|
|
/* 02698FCC */ _t94 = cpu->r[30] + 0x00000004u;
|
|
/* 02698FCC */ cpu->r[10] = rbrew_read32(cpu->mem, _t94);
|
|
/* 02698FD0 */ _t95 = cpu->r[31] + 0x0000003Cu;
|
|
/* 02698FD0 */ rbrew_write32(cpu->mem, _t95, cpu->r[10]);
|
|
/* 02698FD4 */ _t96 = cpu->r[30] + 0x00000008u;
|
|
/* 02698FD4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t96);
|
|
/* 02698FD8 */ cpu->r[12] = 0x101F0000u;
|
|
/* 02698FDC */ _t97 = cpu->r[31] + 0x00000040u;
|
|
/* 02698FDC */ rbrew_write32(cpu->mem, _t97, cpu->r[0]);
|
|
/* 02698FE0 */ _t98 = cpu->r[12] + 0x0000635Cu;
|
|
/* 02698FE0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t98);
|
|
/* 02698FE0 */ cpu->r[12] = _t98;
|
|
/* 02698FE4 */ _t99 = cpu->r[31] + 0x00000044u;
|
|
/* 02698FE4 */ rbrew_write32(cpu->mem, _t99, cpu->r[7]);
|
|
/* 02698FE8 */ _t100 = cpu->r[12] + 0x00000004u;
|
|
/* 02698FE8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t100);
|
|
/* 02698FEC */ _t101 = cpu->r[31] + 0x00000048u;
|
|
/* 02698FEC */ rbrew_write32(cpu->mem, _t101, cpu->r[8]);
|
|
/* 02698FF0 */ _t102 = cpu->r[12] + 0x00000008u;
|
|
/* 02698FF0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t102);
|
|
/* 02698FF4 */ _t103 = cpu->r[31] + 0x0000004Cu;
|
|
/* 02698FF4 */ rbrew_write32(cpu->mem, _t103, cpu->r[0]);
|
|
/* 02698FF8 */ _t104 = cpu->r[28] + 0x00000000u;
|
|
/* 02698FF8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t104);
|
|
/* 02698FFC */ _t105 = cpu->r[31] + 0x00000050u;
|
|
/* 02698FFC */ rbrew_write32(cpu->mem, _t105, cpu->r[10]);
|
|
/* 02699000 */ _t106 = cpu->r[28] + 0x00000004u;
|
|
/* 02699000 */ cpu->r[11] = rbrew_read32(cpu->mem, _t106);
|
|
/* 02699004 */ _t107 = cpu->r[31] + 0x00000054u;
|
|
/* 02699004 */ rbrew_write32(cpu->mem, _t107, cpu->r[11]);
|
|
/* 02699008 */ _t108 = cpu->r[28] + 0x00000008u;
|
|
/* 02699008 */ cpu->r[0] = rbrew_read32(cpu->mem, _t108);
|
|
/* 0269900C */ _t109 = cpu->r[31] + 0x0000005Cu;
|
|
/* 0269900C */ rbrew_write_f32(cpu->mem, _t109, cpu->f[27]);
|
|
/* 02699010 */ _t110 = cpu->r[31] + 0x00000058u;
|
|
/* 02699010 */ rbrew_write32(cpu->mem, _t110, cpu->r[0]);
|
|
/* 02699014 */ _t111 = cpu->r[31] + 0x00000060u;
|
|
/* 02699014 */ rbrew_write_f32(cpu->mem, _t111, cpu->f[28]);
|
|
/* 02699018 */ _t112 = cpu->r[31] + 0x00000064u;
|
|
/* 02699018 */ rbrew_write8(cpu->mem, _t112, (uint8_t)cpu->r[29]);
|
|
/* 0269901C */ cpu->r[3] = cpu->r[31] + 0x00000068u;
|
|
/* 0269901C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02699020 */ _t113 = cpu->r[31] + 0x00000065u;
|
|
/* 02699020 */ rbrew_write8(cpu->mem, _t113, (uint8_t)cpu->r[29]);
|
|
/* 02699024 */ _t114 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02699024 */ _t115 = _t114 & 0x00000001u;
|
|
/* 02699024 */ if (_t115) goto L_02699028; else goto L_02699038;
|
|
L_02699028: ; // 0x2699028
|
|
/* 02699028 */ cpu->r[3] = 0x00000010u;
|
|
/* 0269902C */ Gambit_fn_02801A78(cpu);
|
|
/* 02699030 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02699034 */ _t116 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02699034 */ _t117 = _t116 & 0x00000001u;
|
|
/* 02699034 */ if (_t117) goto L_02699058; else goto L_02699038;
|
|
L_02699038: ; // 0x2699038
|
|
/* 02699038 */ cpu->r[6] = 0x100E0000u;
|
|
/* 0269903C */ cpu->r[5] = 0x100E0000u;
|
|
/* 02699040 */ _t118 = cpu->r[6] + 0x00003EBCu;
|
|
/* 02699040 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t118);
|
|
/* 02699044 */ _t119 = cpu->r[5] + 0x00003EE8u;
|
|
/* 02699044 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t119);
|
|
/* 02699048 */ _t120 = cpu->r[3] + 0x00000008u;
|
|
/* 02699048 */ rbrew_write_f32(cpu->mem, _t120, cpu->f[13]);
|
|
/* 0269904C */ _t121 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0269904C */ rbrew_write_f32(cpu->mem, _t121, cpu->f[0]);
|
|
/* 02699050 */ _t122 = cpu->r[3] + 0x00000004u;
|
|
/* 02699050 */ rbrew_write_f32(cpu->mem, _t122, cpu->f[13]);
|
|
/* 02699054 */ _t123 = cpu->r[3] + 0x00000000u;
|
|
/* 02699054 */ rbrew_write_f32(cpu->mem, _t123, cpu->f[13]);
|
|
L_02699058: ; // 0x2699058
|
|
/* 02699058 */ _t124 = cpu->r[30] + 0x00000000u;
|
|
/* 02699058 */ cpu->r[0] = rbrew_read32(cpu->mem, _t124);
|
|
/* 0269905C */ _t125 = cpu->r[31] + 0x00000078u;
|
|
/* 0269905C */ rbrew_write32(cpu->mem, _t125, cpu->r[0]);
|
|
/* 02699060 */ _t126 = cpu->r[30] + 0x00000004u;
|
|
/* 02699060 */ cpu->r[5] = rbrew_read32(cpu->mem, _t126);
|
|
/* 02699064 */ _t127 = cpu->r[31] + 0x0000007Cu;
|
|
/* 02699064 */ rbrew_write32(cpu->mem, _t127, cpu->r[5]);
|
|
/* 02699068 */ _t128 = cpu->r[30] + 0x00000008u;
|
|
/* 02699068 */ cpu->r[6] = rbrew_read32(cpu->mem, _t128);
|
|
/* 0269906C */ cpu->r[3] = cpu->r[31];
|
|
/* 02699070 */ _t129 = cpu->r[31] + 0x00000080u;
|
|
/* 02699070 */ rbrew_write32(cpu->mem, _t129, cpu->r[6]);
|
|
/* 02699074 */ Gambit_fn_02698D18(cpu);
|
|
L_02699078: ; // 0x2699078
|
|
/* 02699078 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269907C */ /* nop */
|
|
/* 02699080 */ _t130 = cpu->r[1] + 0x00000038u;
|
|
/* 02699080 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t130);
|
|
/* 02699084 */ _t131 = cpu->r[1] + 0x00000058u;
|
|
/* 02699084 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t131);
|
|
/* 02699088 */ _t132 = cpu->r[1] + 0x00000030u;
|
|
/* 02699088 */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t132);
|
|
/* 0269908C */ _t133 = cpu->r[1] + 0x00000048u;
|
|
/* 0269908C */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t133);
|
|
/* 02699090 */ _t134 = cpu->r[1] + 0x00000050u;
|
|
/* 02699090 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t134);
|
|
/* 02699094 */ _t135 = cpu->r[1] + 0x00000040u;
|
|
/* 02699094 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t135);
|
|
/* 02699098 */ _t136 = cpu->r[1] + 0x00000028u;
|
|
/* 02699098 */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t136);
|
|
/* 0269909C */ _t137 = cpu->r[1] + 0x00000068u;
|
|
/* 0269909C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t137);
|
|
/* 026990A0 */ _t138 = cpu->r[1] + 0x00000020u;
|
|
/* 026990A0 */ cpu->f[27] = rbrew_read_f64(cpu->mem, _t138);
|
|
/* 026990A4 */ _t139 = cpu->r[1] + 0x00000060u;
|
|
/* 026990A4 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t139);
|
|
/* 026990A8 */ _t140 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026990A8 */ _t141 = _t140 & 0x00000001u;
|
|
/* 026990A8 */ if (_t141) goto L_026990AC; // else: addr-0 trap, fall-through
|
|
L_026990AC: ; // 0x26990ac
|
|
/* 026990AC */ _t142 = cpu->r[1] + 0x00000074u;
|
|
/* 026990AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t142);
|
|
/* 026990B0 */ cpu->lr = cpu->r[0];
|
|
/* 026990B4 */ cpu->r[1] = cpu->r[1] + 0x00000070u;
|
|
/* 026990B8 */ return;
|
|
}
|
|
|
|
// fn_026990C0 @ 0x26990c0
|
|
void Gambit_fn_026990C0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71;
|
|
|
|
L_026990C0: ; // 0x26990c0
|
|
/* 026990C0 */ _t0 = cpu->r[1] + 0xFFFFFF90u;
|
|
/* 026990C0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 026990C0 */ cpu->r[1] = _t0;
|
|
/* 026990C4 */ _t1 = cpu->r[1] + 0x0000006Cu;
|
|
/* 026990C4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 026990C8 */ cpu->r[31] = cpu->r[3];
|
|
/* 026990CC */ _t2 = cpu->r[1] + 0x00000074u;
|
|
/* 026990CC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 026990D0 */ _t3 = cpu->r[31] + 0x00000044u;
|
|
/* 026990D0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 026990D4 */ _t4 = cpu->r[31] + 0x00000048u;
|
|
/* 026990D4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 026990D8 */ _t5 = cpu->r[31] + 0x00000020u;
|
|
/* 026990D8 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[0]);
|
|
/* 026990DC */ _t6 = cpu->r[31] + 0x0000004Cu;
|
|
/* 026990DC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 026990E0 */ _t7 = cpu->r[31] + 0x00000024u;
|
|
/* 026990E0 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[8]);
|
|
/* 026990E4 */ cpu->r[12] = 0x101F0000u;
|
|
/* 026990E8 */ _t8 = cpu->r[31] + 0x00000028u;
|
|
/* 026990E8 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[9]);
|
|
/* 026990EC */ _t9 = cpu->r[12] + 0x00006350u;
|
|
/* 026990EC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 026990EC */ cpu->r[12] = _t9;
|
|
/* 026990F0 */ _t10 = cpu->r[31] + 0x00000014u;
|
|
/* 026990F0 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[10]);
|
|
/* 026990F4 */ _t11 = cpu->r[12] + 0x00000004u;
|
|
/* 026990F4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 026990F8 */ cpu->r[4] = 0x100E0000u;
|
|
/* 026990FC */ _t12 = cpu->r[31] + 0x00000018u;
|
|
/* 026990FC */ rbrew_write_f32(cpu->mem, _t12, cpu->f[13]);
|
|
/* 02699100 */ _t13 = cpu->r[12] + 0x00000008u;
|
|
/* 02699100 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 02699104 */ cpu->r[4] = cpu->r[4] + 0x00003EECu;
|
|
/* 02699108 */ cpu->r[3] = cpu->r[31] + 0x00000008u;
|
|
/* 0269910C */ cpu->r[5] = 0x000000AFu;
|
|
/* 02699110 */ _t14 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02699110 */ rbrew_write_f32(cpu->mem, _t14, cpu->f[10]);
|
|
/* 02699114 */ Gambit_fn_0204D64C(cpu);
|
|
/* 02699118 */ _t15 = cpu->r[31] + 0x00000038u;
|
|
/* 02699118 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 0269911C */ _t16 = cpu->r[31] + 0x00000008u;
|
|
/* 0269911C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 02699120 */ _t17 = cpu->r[31] + 0x0000002Cu;
|
|
/* 02699120 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[0]);
|
|
/* 02699124 */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 02699124 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[11]);
|
|
/* 02699128 */ _t19 = cpu->r[31] + 0x00000020u;
|
|
/* 02699128 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 0269912C */ _t20 = cpu->r[1] + 0x00000014u;
|
|
/* 0269912C */ rbrew_write_f32(cpu->mem, _t20, cpu->f[0]);
|
|
/* 02699130 */ _t21 = cpu->r[1] + 0x00000010u;
|
|
/* 02699130 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[8]);
|
|
/* 02699134 */ _t22 = cpu->r[31] + 0x0000003Cu;
|
|
/* 02699134 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 02699138 */ _t23 = cpu->r[31] + 0x00000024u;
|
|
/* 02699138 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 0269913C */ _t24 = cpu->r[31] + 0x00000014u;
|
|
/* 0269913C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 02699140 */ _t25 = cpu->r[1] + 0x00000024u;
|
|
/* 02699140 */ rbrew_write_f32(cpu->mem, _t25, cpu->f[9]);
|
|
/* 02699144 */ _t26 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02699144 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[13]);
|
|
/* 02699148 */ _t27 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02699148 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 0269914C */ _t28 = cpu->r[31] + 0x00000010u;
|
|
/* 0269914C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 02699150 */ _t29 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02699150 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[10]);
|
|
/* 02699154 */ _t30 = cpu->r[1] + 0x00000028u;
|
|
/* 02699154 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[8]);
|
|
/* 02699158 */ _t31 = cpu->r[31] + 0x00000040u;
|
|
/* 02699158 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 0269915C */ _t32 = cpu->r[31] + 0x00000018u;
|
|
/* 0269915C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 02699160 */ _t33 = cpu->r[1] + 0x00000034u;
|
|
/* 02699160 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[12]);
|
|
/* 02699164 */ _t34 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02699164 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 02699168 */ _t35 = cpu->r[31] + 0x00000030u;
|
|
/* 02699168 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[9]);
|
|
/* 0269916C */ _t36 = cpu->r[1] + 0x00000018u;
|
|
/* 0269916C */ rbrew_write_f32(cpu->mem, _t36, cpu->f[11]);
|
|
/* 02699170 */ _t37 = cpu->r[31] + 0x00000028u;
|
|
/* 02699170 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 02699174 */ _t38 = cpu->r[31] + 0x00000054u;
|
|
/* 02699174 */ cpu->f[2] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 02699178 */ _t39 = cpu->r[1] + 0x00000030u;
|
|
/* 02699178 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[11]);
|
|
/* 0269917C */ _t40 = cpu->r[31] + 0x00000058u;
|
|
/* 0269917C */ cpu->f[3] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 02699180 */ _t41 = cpu->r[1] + 0x00000020u;
|
|
/* 02699180 */ rbrew_write_f32(cpu->mem, _t41, cpu->f[0]);
|
|
/* 02699184 */ _t42 = cpu->r[31] + 0x00000050u;
|
|
/* 02699184 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 02699188 */ _t43 = cpu->r[31] + 0x00000034u;
|
|
/* 02699188 */ rbrew_write_f32(cpu->mem, _t43, cpu->f[12]);
|
|
/* 0269918C */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 02699190 */ _t44 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02699190 */ rbrew_write_f32(cpu->mem, _t44, cpu->f[13]);
|
|
/* 02699194 */ Gambit_fn_02C69840(cpu);
|
|
/* 02699198 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0269919C */ cpu->r[4] = cpu->r[1] + 0x00000038u;
|
|
/* 026991A0 */ cpu->r[5] = cpu->r[3];
|
|
/* 026991A4 */ Gambit_fn_02C69544(cpu);
|
|
/* 026991A8 */ _t45 = cpu->r[1] + 0x00000010u;
|
|
/* 026991A8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t45);
|
|
/* 026991AC */ _t46 = cpu->r[1] + 0x00000014u;
|
|
/* 026991AC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 026991B0 */ _t47 = cpu->r[31] + 0x00000020u;
|
|
/* 026991B0 */ rbrew_write_f32(cpu->mem, _t47, cpu->f[10]);
|
|
/* 026991B4 */ _t48 = cpu->r[1] + 0x00000024u;
|
|
/* 026991B4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 026991B8 */ _t49 = cpu->r[1] + 0x00000020u;
|
|
/* 026991B8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 026991BC */ _t50 = cpu->r[31] + 0x00000030u;
|
|
/* 026991BC */ rbrew_write_f32(cpu->mem, _t50, cpu->f[10]);
|
|
/* 026991C0 */ _t51 = cpu->r[31] + 0x00000024u;
|
|
/* 026991C0 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[12]);
|
|
/* 026991C4 */ _t52 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026991C4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 026991C8 */ _t53 = cpu->r[1] + 0x00000028u;
|
|
/* 026991C8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t53);
|
|
/* 026991CC */ _t54 = cpu->r[31] + 0x00000014u;
|
|
/* 026991CC */ rbrew_write_f32(cpu->mem, _t54, cpu->f[12]);
|
|
/* 026991D0 */ _t55 = cpu->r[31] + 0x00000010u;
|
|
/* 026991D0 */ rbrew_write_f32(cpu->mem, _t55, cpu->f[11]);
|
|
/* 026991D4 */ _t56 = cpu->r[1] + 0x0000001Cu;
|
|
/* 026991D4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 026991D8 */ _t57 = cpu->r[1] + 0x00000030u;
|
|
/* 026991D8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 026991DC */ _t58 = cpu->r[1] + 0x00000034u;
|
|
/* 026991DC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 026991E0 */ _t59 = cpu->r[1] + 0x00000008u;
|
|
/* 026991E0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t59);
|
|
/* 026991E4 */ _t60 = cpu->r[1] + 0x0000002Cu;
|
|
/* 026991E4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t60);
|
|
/* 026991E8 */ _t61 = cpu->r[31] + 0x00000008u;
|
|
/* 026991E8 */ rbrew_write_f32(cpu->mem, _t61, cpu->f[11]);
|
|
/* 026991EC */ _t62 = cpu->r[31] + 0x0000001Cu;
|
|
/* 026991EC */ rbrew_write_f32(cpu->mem, _t62, cpu->f[8]);
|
|
/* 026991F0 */ cpu->r[3] = cpu->r[31] + 0x00000078u;
|
|
/* 026991F4 */ _t63 = cpu->r[31] + 0x00000028u;
|
|
/* 026991F4 */ rbrew_write_f32(cpu->mem, _t63, cpu->f[0]);
|
|
/* 026991F8 */ _t64 = cpu->r[1] + 0x00000018u;
|
|
/* 026991F8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 026991FC */ _t65 = cpu->r[31] + 0x00000034u;
|
|
/* 026991FC */ rbrew_write_f32(cpu->mem, _t65, cpu->f[12]);
|
|
/* 02699200 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02699204 */ _t66 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02699204 */ rbrew_write_f32(cpu->mem, _t66, cpu->f[0]);
|
|
/* 02699208 */ _t67 = cpu->r[31] + 0x00000018u;
|
|
/* 02699208 */ rbrew_write_f32(cpu->mem, _t67, cpu->f[13]);
|
|
/* 0269920C */ _t68 = cpu->r[31] + 0x0000002Cu;
|
|
/* 0269920C */ rbrew_write_f32(cpu->mem, _t68, cpu->f[9]);
|
|
/* 02699210 */ Gambit_fn_0200D450(cpu);
|
|
/* 02699214 */ cpu->r[0] = 0x00000000u;
|
|
/* 02699218 */ _t69 = cpu->r[31] + 0x00000065u;
|
|
/* 02699218 */ rbrew_write8(cpu->mem, _t69, (uint8_t)cpu->r[0]);
|
|
/* 0269921C */ _t70 = cpu->r[1] + 0x00000074u;
|
|
/* 0269921C */ cpu->r[0] = rbrew_read32(cpu->mem, _t70);
|
|
/* 02699220 */ _t71 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02699220 */ cpu->r[31] = rbrew_read32(cpu->mem, _t71);
|
|
/* 02699224 */ cpu->lr = cpu->r[0];
|
|
/* 02699228 */ cpu->r[1] = cpu->r[1] + 0x00000070u;
|
|
/* 0269922C */ return;
|
|
}
|
|
|
|
// fn_02699230 @ 0x2699230
|
|
void Gambit_fn_02699230(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74;
|
|
|
|
L_026990BC: ; // 0x26990bc
|
|
/* 026990BC */ cpu->r[0] = cpu->lr;
|
|
/* 026990C0 */ _t0 = cpu->r[1] + 0xFFFFFF90u;
|
|
/* 026990C0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 026990C0 */ cpu->r[1] = _t0;
|
|
/* 026990C4 */ _t1 = cpu->r[1] + 0x0000006Cu;
|
|
/* 026990C4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 026990C8 */ cpu->r[31] = cpu->r[3];
|
|
/* 026990CC */ _t2 = cpu->r[1] + 0x00000074u;
|
|
/* 026990CC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 026990D0 */ _t3 = cpu->r[31] + 0x00000044u;
|
|
/* 026990D0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 026990D4 */ _t4 = cpu->r[31] + 0x00000048u;
|
|
/* 026990D4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 026990D8 */ _t5 = cpu->r[31] + 0x00000020u;
|
|
/* 026990D8 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[0]);
|
|
/* 026990DC */ _t6 = cpu->r[31] + 0x0000004Cu;
|
|
/* 026990DC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 026990E0 */ _t7 = cpu->r[31] + 0x00000024u;
|
|
/* 026990E0 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[8]);
|
|
/* 026990E4 */ cpu->r[12] = 0x101F0000u;
|
|
/* 026990E8 */ _t8 = cpu->r[31] + 0x00000028u;
|
|
/* 026990E8 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[9]);
|
|
/* 026990EC */ _t9 = cpu->r[12] + 0x00006350u;
|
|
/* 026990EC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 026990EC */ cpu->r[12] = _t9;
|
|
/* 026990F0 */ _t10 = cpu->r[31] + 0x00000014u;
|
|
/* 026990F0 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[10]);
|
|
/* 026990F4 */ _t11 = cpu->r[12] + 0x00000004u;
|
|
/* 026990F4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 026990F8 */ cpu->r[4] = 0x100E0000u;
|
|
/* 026990FC */ _t12 = cpu->r[31] + 0x00000018u;
|
|
/* 026990FC */ rbrew_write_f32(cpu->mem, _t12, cpu->f[13]);
|
|
/* 02699100 */ _t13 = cpu->r[12] + 0x00000008u;
|
|
/* 02699100 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 02699104 */ cpu->r[4] = cpu->r[4] + 0x00003EECu;
|
|
/* 02699108 */ cpu->r[3] = cpu->r[31] + 0x00000008u;
|
|
/* 0269910C */ cpu->r[5] = 0x000000AFu;
|
|
/* 02699110 */ _t14 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02699110 */ rbrew_write_f32(cpu->mem, _t14, cpu->f[10]);
|
|
/* 02699114 */ Gambit_fn_0204D64C(cpu);
|
|
/* 02699118 */ _t15 = cpu->r[31] + 0x00000038u;
|
|
/* 02699118 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 0269911C */ _t16 = cpu->r[31] + 0x00000008u;
|
|
/* 0269911C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 02699120 */ _t17 = cpu->r[31] + 0x0000002Cu;
|
|
/* 02699120 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[0]);
|
|
/* 02699124 */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 02699124 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[11]);
|
|
/* 02699128 */ _t19 = cpu->r[31] + 0x00000020u;
|
|
/* 02699128 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 0269912C */ _t20 = cpu->r[1] + 0x00000014u;
|
|
/* 0269912C */ rbrew_write_f32(cpu->mem, _t20, cpu->f[0]);
|
|
/* 02699130 */ _t21 = cpu->r[1] + 0x00000010u;
|
|
/* 02699130 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[8]);
|
|
/* 02699134 */ _t22 = cpu->r[31] + 0x0000003Cu;
|
|
/* 02699134 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 02699138 */ _t23 = cpu->r[31] + 0x00000024u;
|
|
/* 02699138 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 0269913C */ _t24 = cpu->r[31] + 0x00000014u;
|
|
/* 0269913C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 02699140 */ _t25 = cpu->r[1] + 0x00000024u;
|
|
/* 02699140 */ rbrew_write_f32(cpu->mem, _t25, cpu->f[9]);
|
|
/* 02699144 */ _t26 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02699144 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[13]);
|
|
/* 02699148 */ _t27 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02699148 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 0269914C */ _t28 = cpu->r[31] + 0x00000010u;
|
|
/* 0269914C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 02699150 */ _t29 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02699150 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[10]);
|
|
/* 02699154 */ _t30 = cpu->r[1] + 0x00000028u;
|
|
/* 02699154 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[8]);
|
|
/* 02699158 */ _t31 = cpu->r[31] + 0x00000040u;
|
|
/* 02699158 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 0269915C */ _t32 = cpu->r[31] + 0x00000018u;
|
|
/* 0269915C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 02699160 */ _t33 = cpu->r[1] + 0x00000034u;
|
|
/* 02699160 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[12]);
|
|
/* 02699164 */ _t34 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02699164 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 02699168 */ _t35 = cpu->r[31] + 0x00000030u;
|
|
/* 02699168 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[9]);
|
|
/* 0269916C */ _t36 = cpu->r[1] + 0x00000018u;
|
|
/* 0269916C */ rbrew_write_f32(cpu->mem, _t36, cpu->f[11]);
|
|
/* 02699170 */ _t37 = cpu->r[31] + 0x00000028u;
|
|
/* 02699170 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 02699174 */ _t38 = cpu->r[31] + 0x00000054u;
|
|
/* 02699174 */ cpu->f[2] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 02699178 */ _t39 = cpu->r[1] + 0x00000030u;
|
|
/* 02699178 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[11]);
|
|
/* 0269917C */ _t40 = cpu->r[31] + 0x00000058u;
|
|
/* 0269917C */ cpu->f[3] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 02699180 */ _t41 = cpu->r[1] + 0x00000020u;
|
|
/* 02699180 */ rbrew_write_f32(cpu->mem, _t41, cpu->f[0]);
|
|
/* 02699184 */ _t42 = cpu->r[31] + 0x00000050u;
|
|
/* 02699184 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 02699188 */ _t43 = cpu->r[31] + 0x00000034u;
|
|
/* 02699188 */ rbrew_write_f32(cpu->mem, _t43, cpu->f[12]);
|
|
/* 0269918C */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 02699190 */ _t44 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02699190 */ rbrew_write_f32(cpu->mem, _t44, cpu->f[13]);
|
|
/* 02699194 */ Gambit_fn_02C69840(cpu);
|
|
/* 02699198 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0269919C */ cpu->r[4] = cpu->r[1] + 0x00000038u;
|
|
/* 026991A0 */ cpu->r[5] = cpu->r[3];
|
|
/* 026991A4 */ Gambit_fn_02C69544(cpu);
|
|
/* 026991A8 */ _t45 = cpu->r[1] + 0x00000010u;
|
|
/* 026991A8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t45);
|
|
/* 026991AC */ _t46 = cpu->r[1] + 0x00000014u;
|
|
/* 026991AC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 026991B0 */ _t47 = cpu->r[31] + 0x00000020u;
|
|
/* 026991B0 */ rbrew_write_f32(cpu->mem, _t47, cpu->f[10]);
|
|
/* 026991B4 */ _t48 = cpu->r[1] + 0x00000024u;
|
|
/* 026991B4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 026991B8 */ _t49 = cpu->r[1] + 0x00000020u;
|
|
/* 026991B8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 026991BC */ _t50 = cpu->r[31] + 0x00000030u;
|
|
/* 026991BC */ rbrew_write_f32(cpu->mem, _t50, cpu->f[10]);
|
|
/* 026991C0 */ _t51 = cpu->r[31] + 0x00000024u;
|
|
/* 026991C0 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[12]);
|
|
/* 026991C4 */ _t52 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026991C4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 026991C8 */ _t53 = cpu->r[1] + 0x00000028u;
|
|
/* 026991C8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t53);
|
|
/* 026991CC */ _t54 = cpu->r[31] + 0x00000014u;
|
|
/* 026991CC */ rbrew_write_f32(cpu->mem, _t54, cpu->f[12]);
|
|
/* 026991D0 */ _t55 = cpu->r[31] + 0x00000010u;
|
|
/* 026991D0 */ rbrew_write_f32(cpu->mem, _t55, cpu->f[11]);
|
|
/* 026991D4 */ _t56 = cpu->r[1] + 0x0000001Cu;
|
|
/* 026991D4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 026991D8 */ _t57 = cpu->r[1] + 0x00000030u;
|
|
/* 026991D8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 026991DC */ _t58 = cpu->r[1] + 0x00000034u;
|
|
/* 026991DC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 026991E0 */ _t59 = cpu->r[1] + 0x00000008u;
|
|
/* 026991E0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t59);
|
|
/* 026991E4 */ _t60 = cpu->r[1] + 0x0000002Cu;
|
|
/* 026991E4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t60);
|
|
/* 026991E8 */ _t61 = cpu->r[31] + 0x00000008u;
|
|
/* 026991E8 */ rbrew_write_f32(cpu->mem, _t61, cpu->f[11]);
|
|
/* 026991EC */ _t62 = cpu->r[31] + 0x0000001Cu;
|
|
/* 026991EC */ rbrew_write_f32(cpu->mem, _t62, cpu->f[8]);
|
|
/* 026991F0 */ cpu->r[3] = cpu->r[31] + 0x00000078u;
|
|
/* 026991F4 */ _t63 = cpu->r[31] + 0x00000028u;
|
|
/* 026991F4 */ rbrew_write_f32(cpu->mem, _t63, cpu->f[0]);
|
|
/* 026991F8 */ _t64 = cpu->r[1] + 0x00000018u;
|
|
/* 026991F8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 026991FC */ _t65 = cpu->r[31] + 0x00000034u;
|
|
/* 026991FC */ rbrew_write_f32(cpu->mem, _t65, cpu->f[12]);
|
|
/* 02699200 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02699204 */ _t66 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02699204 */ rbrew_write_f32(cpu->mem, _t66, cpu->f[0]);
|
|
/* 02699208 */ _t67 = cpu->r[31] + 0x00000018u;
|
|
/* 02699208 */ rbrew_write_f32(cpu->mem, _t67, cpu->f[13]);
|
|
/* 0269920C */ _t68 = cpu->r[31] + 0x0000002Cu;
|
|
/* 0269920C */ rbrew_write_f32(cpu->mem, _t68, cpu->f[9]);
|
|
/* 02699210 */ Gambit_fn_0200D450(cpu);
|
|
/* 02699214 */ cpu->r[0] = 0x00000000u;
|
|
/* 02699218 */ _t69 = cpu->r[31] + 0x00000065u;
|
|
/* 02699218 */ rbrew_write8(cpu->mem, _t69, (uint8_t)cpu->r[0]);
|
|
/* 0269921C */ _t70 = cpu->r[1] + 0x00000074u;
|
|
/* 0269921C */ cpu->r[0] = rbrew_read32(cpu->mem, _t70);
|
|
/* 02699220 */ _t71 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02699220 */ cpu->r[31] = rbrew_read32(cpu->mem, _t71);
|
|
/* 02699224 */ cpu->lr = cpu->r[0];
|
|
/* 02699228 */ cpu->r[1] = cpu->r[1] + 0x00000070u;
|
|
/* 0269922C */ return;
|
|
L_02699230: ; // 0x2699230
|
|
/* 02699230 */ _t72 = cpu->r[3] + 0x00000065u;
|
|
/* 02699230 */ cpu->r[0] = rbrew_read8(cpu->mem, _t72);
|
|
/* 02699234 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02699238 */ _t73 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02699238 */ _t74 = _t73 & 0x00000001u;
|
|
/* 02699238 */ if (_t74) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02699238 */ goto L_0269923C;
|
|
L_0269923C: ; // 0x269923c
|
|
/* 0269923C */ goto L_026990BC;
|
|
}
|
|
|
|
// fn_02699240 @ 0x2699240
|
|
void Gambit_fn_02699240(CPUState* cpu) {
|
|
L_02699240: ; // 0x2699240
|
|
/* 02699240 */ cpu->r[3] = cpu->r[3] + 0x00000078u;
|
|
/* 02699244 */ return;
|
|
}
|
|
|
|
// fn_02699248 @ 0x2699248
|
|
void Gambit_fn_02699248(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02699248: ; // 0x2699248
|
|
/* 02699248 */ _t0 = cpu->r[3] + 0x00000060u;
|
|
/* 02699248 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 0269924C */ return;
|
|
}
|
|
|
|
// fn_02699250 @ 0x2699250
|
|
void Gambit_fn_02699250(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02699250: ; // 0x2699250
|
|
/* 02699250 */ _t0 = cpu->r[3] + 0x00000064u;
|
|
/* 02699250 */ cpu->r[3] = rbrew_read8(cpu->mem, _t0);
|
|
/* 02699254 */ return;
|
|
}
|
|
|
|
// fn_02699258 @ 0x2699258
|
|
void Gambit_fn_02699258(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40;
|
|
double _ft24, _ft25;
|
|
|
|
L_02699258: ; // 0x2699258
|
|
/* 02699258 */ cpu->r[0] = cpu->lr;
|
|
/* 0269925C */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 0269925C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269925C */ cpu->r[1] = _t0;
|
|
/* 02699260 */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 02699260 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02699264 */ cpu->r[31] = cpu->r[3];
|
|
/* 02699268 */ _t2 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02699268 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0269926C */ Gambit_fn_02699240(cpu);
|
|
/* 02699270 */ /* nop */
|
|
/* 02699274 */ /* nop */
|
|
/* 02699278 */ _t3 = cpu->r[4] + 0x00000008u;
|
|
/* 02699278 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 0269927C */ /* nop */
|
|
/* 02699280 */ /* nop */
|
|
/* 02699284 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 02699284 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02699288 */ _t5 = cpu->r[1] + 0x00000018u;
|
|
/* 02699288 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0269928C */ _t6 = cpu->r[3] + 0x00000008u;
|
|
/* 0269928C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 02699290 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02699290 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 02699294 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02699294 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 02699298 */ cpu->f[10] = cpu->f[11] - cpu->f[12];
|
|
/* 0269929C */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 0269929C */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 026992A0 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 026992A0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 026992A4 */ cpu->f[0] = cpu->f[0] * cpu->f[0];
|
|
/* 026992A8 */ _t11 = cpu->r[1] + 0x0000001Cu;
|
|
/* 026992A8 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[10]);
|
|
/* 026992AC */ _t12 = cpu->r[1] + 0x0000001Cu;
|
|
/* 026992AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 026992B0 */ cpu->f[10] = fma(cpu->f[11], cpu->f[11], cpu->f[0]);
|
|
/* 026992B4 */ _t13 = cpu->r[1] + 0x00000010u;
|
|
/* 026992B4 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 026992B8 */ _t14 = cpu->r[1] + 0x00000010u;
|
|
/* 026992B8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 026992BC */ cpu->r[11] = 0x100E0000u;
|
|
/* 026992C0 */ cpu->f[0] = fma(cpu->f[12], cpu->f[12], cpu->f[10]);
|
|
/* 026992C4 */ _t15 = cpu->r[11] + 0x00003EB8u;
|
|
/* 026992C4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 026992C8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[13]);
|
|
/* 026992CC */ _t16 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 026992CC */ _t17 = _t16 & 0x00000001u;
|
|
/* 026992CC */ if (_t17) goto L_026992FC; else goto L_026992D0;
|
|
L_026992D0: ; // 0x26992d0
|
|
/* 026992D0 */ /* nop */
|
|
/* 026992D4 */ /* nop */
|
|
/* 026992D8 */ /* nop */
|
|
/* 026992DC */ _t18 = cpu->r[31] + 0x0000004Cu;
|
|
/* 026992DC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 026992E0 */ /* nop */
|
|
/* 026992E4 */ cpu->r[12] = 0x100E0000u;
|
|
/* 026992E8 */ cpu->f[1] = fma(cpu->f[12], cpu->f[11], cpu->f[0]);
|
|
/* 026992EC */ _t19 = cpu->r[12] + 0x00003F08u;
|
|
/* 026992EC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 026992F0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[0]);
|
|
/* 026992F4 */ _t20 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026992F4 */ _t21 = _t20 & 0x00000001u;
|
|
/* 026992F4 */ if (_t21) goto L_02699358; else goto L_026992F8;
|
|
L_026992F8: ; // 0x26992f8
|
|
/* 026992F8 */ goto L_02699378;
|
|
L_026992FC: ; // 0x26992fc
|
|
/* 026992FC */ cpu->r[12] = 0x100E0000u;
|
|
/* 02699300 */ cpu->r[10] = 0x100E0000u;
|
|
/* 02699304 */ _t22 = cpu->r[12] + 0x00003F04u;
|
|
/* 02699304 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 02699308 */ _t23 = cpu->r[10] + 0x00003F00u;
|
|
/* 02699308 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 0269930C */ _ft24 = sqrt(cpu->f[0]);
|
|
/* 0269930C */ _ft25 = (double)(int32_t)0x00000001u;
|
|
/* 0269930C */ cpu->f[9] = _ft25 / _ft24;
|
|
/* 02699310 */ cpu->f[11] = cpu->f[9] * cpu->f[9];
|
|
/* 02699314 */ cpu->f[13] = cpu->f[9] * cpu->f[12];
|
|
/* 02699318 */ cpu->f[11] = -fma(cpu->f[11], cpu->f[0], -(cpu->f[10]));
|
|
/* 0269931C */ cpu->f[9] = cpu->f[11] * cpu->f[13];
|
|
/* 02699320 */ _t26 = cpu->r[1] + 0x00000010u;
|
|
/* 02699320 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 02699324 */ /* nop */
|
|
/* 02699328 */ cpu->f[12] = cpu->f[12] * cpu->f[9];
|
|
/* 0269932C */ /* nop */
|
|
/* 02699330 */ /* nop */
|
|
/* 02699334 */ /* nop */
|
|
/* 02699338 */ _t27 = cpu->r[31] + 0x0000004Cu;
|
|
/* 02699338 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 0269933C */ /* nop */
|
|
/* 02699340 */ cpu->r[12] = 0x100E0000u;
|
|
/* 02699344 */ cpu->f[1] = fma(cpu->f[12], cpu->f[11], cpu->f[0]);
|
|
/* 02699348 */ _t28 = cpu->r[12] + 0x00003F08u;
|
|
/* 02699348 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 0269934C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[0]);
|
|
/* 02699350 */ _t29 = cpu->r[1] + 0x00000010u;
|
|
/* 02699350 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[12]);
|
|
/* 02699354 */ _t30 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02699354 */ _t31 = _t30 & 0x00000001u;
|
|
/* 02699354 */ if (_t31) goto L_02699358; else goto L_02699378;
|
|
L_02699358: ; // 0x2699358
|
|
/* 02699358 */ cpu->f[1] = cpu->f[0];
|
|
/* 0269935C */ Gambit_fn_02C892F8(cpu);
|
|
/* 02699360 */ cpu->r[11] = 0x100E0000u;
|
|
/* 02699364 */ _t32 = cpu->r[31] + 0x0000005Cu;
|
|
/* 02699364 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 02699368 */ _t33 = cpu->r[11] + 0x00003F0Cu;
|
|
/* 02699368 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 0269936C */ cpu->f[13] = -fma(cpu->f[1], cpu->f[0], -(cpu->f[12]));
|
|
/* 02699370 */ cpu->f[1] = cpu->f[13] / cpu->f[12];
|
|
/* 02699374 */ goto L_026993A4;
|
|
L_02699378: ; // 0x2699378
|
|
/* 02699378 */ cpu->r[12] = 0x100E0000u;
|
|
/* 0269937C */ _t34 = cpu->r[12] + 0x00003EBCu;
|
|
/* 0269937C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 02699380 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[11]);
|
|
/* 02699384 */ _t35 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02699384 */ _t36 = _t35 & 0x00000001u;
|
|
/* 02699384 */ if (_t36) goto L_02699388; else goto L_0269938C;
|
|
L_02699388: ; // 0x2699388
|
|
/* 02699388 */ cpu->f[1] = cpu->f[11];
|
|
L_0269938C: ; // 0x269938c
|
|
/* 0269938C */ Gambit_fn_02C892F8(cpu);
|
|
/* 02699390 */ cpu->r[11] = 0x100E0000u;
|
|
/* 02699394 */ _t37 = cpu->r[31] + 0x0000005Cu;
|
|
/* 02699394 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 02699398 */ _t38 = cpu->r[11] + 0x00003F0Cu;
|
|
/* 02699398 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 0269939C */ cpu->f[13] = -fma(cpu->f[1], cpu->f[0], -(cpu->f[12]));
|
|
/* 026993A0 */ cpu->f[1] = cpu->f[13] / cpu->f[12];
|
|
L_026993A4: ; // 0x26993a4
|
|
/* 026993A4 */ _t39 = cpu->r[1] + 0x0000002Cu;
|
|
/* 026993A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t39);
|
|
/* 026993A8 */ _t40 = cpu->r[1] + 0x00000024u;
|
|
/* 026993A8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t40);
|
|
/* 026993AC */ cpu->lr = cpu->r[0];
|
|
/* 026993B0 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 026993B4 */ return;
|
|
}
|
|
|
|
// fn_0269925C @ 0x269925c
|
|
void Gambit_fn_0269925C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40;
|
|
double _ft24, _ft25;
|
|
|
|
L_0269925C: ; // 0x269925c
|
|
/* 0269925C */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 0269925C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269925C */ cpu->r[1] = _t0;
|
|
/* 02699260 */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 02699260 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02699264 */ cpu->r[31] = cpu->r[3];
|
|
/* 02699268 */ _t2 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02699268 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0269926C */ Gambit_fn_02699240(cpu);
|
|
/* 02699270 */ /* nop */
|
|
/* 02699274 */ /* nop */
|
|
/* 02699278 */ _t3 = cpu->r[4] + 0x00000008u;
|
|
/* 02699278 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 0269927C */ /* nop */
|
|
/* 02699280 */ /* nop */
|
|
/* 02699284 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 02699284 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02699288 */ _t5 = cpu->r[1] + 0x00000018u;
|
|
/* 02699288 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0269928C */ _t6 = cpu->r[3] + 0x00000008u;
|
|
/* 0269928C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 02699290 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02699290 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 02699294 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02699294 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 02699298 */ cpu->f[10] = cpu->f[11] - cpu->f[12];
|
|
/* 0269929C */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 0269929C */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 026992A0 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 026992A0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 026992A4 */ cpu->f[0] = cpu->f[0] * cpu->f[0];
|
|
/* 026992A8 */ _t11 = cpu->r[1] + 0x0000001Cu;
|
|
/* 026992A8 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[10]);
|
|
/* 026992AC */ _t12 = cpu->r[1] + 0x0000001Cu;
|
|
/* 026992AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 026992B0 */ cpu->f[10] = fma(cpu->f[11], cpu->f[11], cpu->f[0]);
|
|
/* 026992B4 */ _t13 = cpu->r[1] + 0x00000010u;
|
|
/* 026992B4 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 026992B8 */ _t14 = cpu->r[1] + 0x00000010u;
|
|
/* 026992B8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 026992BC */ cpu->r[11] = 0x100E0000u;
|
|
/* 026992C0 */ cpu->f[0] = fma(cpu->f[12], cpu->f[12], cpu->f[10]);
|
|
/* 026992C4 */ _t15 = cpu->r[11] + 0x00003EB8u;
|
|
/* 026992C4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 026992C8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[13]);
|
|
/* 026992CC */ _t16 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 026992CC */ _t17 = _t16 & 0x00000001u;
|
|
/* 026992CC */ if (_t17) goto L_026992FC; else goto L_026992D0;
|
|
L_026992D0: ; // 0x26992d0
|
|
/* 026992D0 */ /* nop */
|
|
/* 026992D4 */ /* nop */
|
|
/* 026992D8 */ /* nop */
|
|
/* 026992DC */ _t18 = cpu->r[31] + 0x0000004Cu;
|
|
/* 026992DC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 026992E0 */ /* nop */
|
|
/* 026992E4 */ cpu->r[12] = 0x100E0000u;
|
|
/* 026992E8 */ cpu->f[1] = fma(cpu->f[12], cpu->f[11], cpu->f[0]);
|
|
/* 026992EC */ _t19 = cpu->r[12] + 0x00003F08u;
|
|
/* 026992EC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 026992F0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[0]);
|
|
/* 026992F4 */ _t20 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026992F4 */ _t21 = _t20 & 0x00000001u;
|
|
/* 026992F4 */ if (_t21) goto L_02699358; else goto L_026992F8;
|
|
L_026992F8: ; // 0x26992f8
|
|
/* 026992F8 */ goto L_02699378;
|
|
L_026992FC: ; // 0x26992fc
|
|
/* 026992FC */ cpu->r[12] = 0x100E0000u;
|
|
/* 02699300 */ cpu->r[10] = 0x100E0000u;
|
|
/* 02699304 */ _t22 = cpu->r[12] + 0x00003F04u;
|
|
/* 02699304 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 02699308 */ _t23 = cpu->r[10] + 0x00003F00u;
|
|
/* 02699308 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 0269930C */ _ft24 = sqrt(cpu->f[0]);
|
|
/* 0269930C */ _ft25 = (double)(int32_t)0x00000001u;
|
|
/* 0269930C */ cpu->f[9] = _ft25 / _ft24;
|
|
/* 02699310 */ cpu->f[11] = cpu->f[9] * cpu->f[9];
|
|
/* 02699314 */ cpu->f[13] = cpu->f[9] * cpu->f[12];
|
|
/* 02699318 */ cpu->f[11] = -fma(cpu->f[11], cpu->f[0], -(cpu->f[10]));
|
|
/* 0269931C */ cpu->f[9] = cpu->f[11] * cpu->f[13];
|
|
/* 02699320 */ _t26 = cpu->r[1] + 0x00000010u;
|
|
/* 02699320 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 02699324 */ /* nop */
|
|
/* 02699328 */ cpu->f[12] = cpu->f[12] * cpu->f[9];
|
|
/* 0269932C */ /* nop */
|
|
/* 02699330 */ /* nop */
|
|
/* 02699334 */ /* nop */
|
|
/* 02699338 */ _t27 = cpu->r[31] + 0x0000004Cu;
|
|
/* 02699338 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 0269933C */ /* nop */
|
|
/* 02699340 */ cpu->r[12] = 0x100E0000u;
|
|
/* 02699344 */ cpu->f[1] = fma(cpu->f[12], cpu->f[11], cpu->f[0]);
|
|
/* 02699348 */ _t28 = cpu->r[12] + 0x00003F08u;
|
|
/* 02699348 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 0269934C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[0]);
|
|
/* 02699350 */ _t29 = cpu->r[1] + 0x00000010u;
|
|
/* 02699350 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[12]);
|
|
/* 02699354 */ _t30 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02699354 */ _t31 = _t30 & 0x00000001u;
|
|
/* 02699354 */ if (_t31) goto L_02699358; else goto L_02699378;
|
|
L_02699358: ; // 0x2699358
|
|
/* 02699358 */ cpu->f[1] = cpu->f[0];
|
|
/* 0269935C */ Gambit_fn_02C892F8(cpu);
|
|
/* 02699360 */ cpu->r[11] = 0x100E0000u;
|
|
/* 02699364 */ _t32 = cpu->r[31] + 0x0000005Cu;
|
|
/* 02699364 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 02699368 */ _t33 = cpu->r[11] + 0x00003F0Cu;
|
|
/* 02699368 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 0269936C */ cpu->f[13] = -fma(cpu->f[1], cpu->f[0], -(cpu->f[12]));
|
|
/* 02699370 */ cpu->f[1] = cpu->f[13] / cpu->f[12];
|
|
/* 02699374 */ goto L_026993A4;
|
|
L_02699378: ; // 0x2699378
|
|
/* 02699378 */ cpu->r[12] = 0x100E0000u;
|
|
/* 0269937C */ _t34 = cpu->r[12] + 0x00003EBCu;
|
|
/* 0269937C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 02699380 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[11]);
|
|
/* 02699384 */ _t35 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02699384 */ _t36 = _t35 & 0x00000001u;
|
|
/* 02699384 */ if (_t36) goto L_02699388; else goto L_0269938C;
|
|
L_02699388: ; // 0x2699388
|
|
/* 02699388 */ cpu->f[1] = cpu->f[11];
|
|
L_0269938C: ; // 0x269938c
|
|
/* 0269938C */ Gambit_fn_02C892F8(cpu);
|
|
/* 02699390 */ cpu->r[11] = 0x100E0000u;
|
|
/* 02699394 */ _t37 = cpu->r[31] + 0x0000005Cu;
|
|
/* 02699394 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 02699398 */ _t38 = cpu->r[11] + 0x00003F0Cu;
|
|
/* 02699398 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 0269939C */ cpu->f[13] = -fma(cpu->f[1], cpu->f[0], -(cpu->f[12]));
|
|
/* 026993A0 */ cpu->f[1] = cpu->f[13] / cpu->f[12];
|
|
L_026993A4: ; // 0x26993a4
|
|
/* 026993A4 */ _t39 = cpu->r[1] + 0x0000002Cu;
|
|
/* 026993A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t39);
|
|
/* 026993A8 */ _t40 = cpu->r[1] + 0x00000024u;
|
|
/* 026993A8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t40);
|
|
/* 026993AC */ cpu->lr = cpu->r[0];
|
|
/* 026993B0 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 026993B4 */ return;
|
|
}
|
|
|
|
// fn_026993B8 @ 0x26993b8
|
|
void Gambit_fn_026993B8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_026993B8: ; // 0x26993b8
|
|
/* 026993B8 */ _t0 = cpu->r[4] + 0x00000000u;
|
|
/* 026993B8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 026993BC */ _t1 = cpu->r[3] + 0x00000038u;
|
|
/* 026993BC */ rbrew_write_f32(cpu->mem, _t1, cpu->f[0]);
|
|
/* 026993C0 */ _t2 = cpu->r[4] + 0x00000004u;
|
|
/* 026993C0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 026993C4 */ cpu->r[0] = 0x00000001u;
|
|
/* 026993C8 */ _t3 = cpu->r[3] + 0x0000003Cu;
|
|
/* 026993C8 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[0]);
|
|
/* 026993CC */ _t4 = cpu->r[4] + 0x00000008u;
|
|
/* 026993CC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 026993D0 */ _t5 = cpu->r[3] + 0x00000065u;
|
|
/* 026993D0 */ rbrew_write8(cpu->mem, _t5, (uint8_t)cpu->r[0]);
|
|
/* 026993D4 */ _t6 = cpu->r[3] + 0x00000040u;
|
|
/* 026993D4 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[0]);
|
|
/* 026993D8 */ return;
|
|
}
|
|
|
|
// fn_026993DC @ 0x26993dc
|
|
void Gambit_fn_026993DC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t13, _t14, _t15;
|
|
double _ft11, _ft12;
|
|
|
|
L_026993DC: ; // 0x26993dc
|
|
/* 026993DC */ _t0 = cpu->r[4] + 0x00000000u;
|
|
/* 026993DC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 026993E0 */ _t1 = cpu->r[3] + 0x00000044u;
|
|
/* 026993E0 */ rbrew_write_f32(cpu->mem, _t1, cpu->f[9]);
|
|
/* 026993E4 */ _t2 = cpu->r[4] + 0x00000004u;
|
|
/* 026993E4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 026993E8 */ cpu->f[10] = cpu->f[0] * cpu->f[0];
|
|
/* 026993EC */ _t3 = cpu->r[3] + 0x00000048u;
|
|
/* 026993EC */ rbrew_write_f32(cpu->mem, _t3, cpu->f[0]);
|
|
/* 026993F0 */ _t4 = cpu->r[4] + 0x00000008u;
|
|
/* 026993F0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 026993F4 */ cpu->f[11] = fma(cpu->f[9], cpu->f[9], cpu->f[10]);
|
|
/* 026993F8 */ cpu->r[12] = 0x100E0000u;
|
|
/* 026993FC */ cpu->f[10] = fma(cpu->f[13], cpu->f[13], cpu->f[11]);
|
|
/* 02699400 */ _t5 = cpu->r[12] + 0x00003EB8u;
|
|
/* 02699400 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 02699404 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[0]);
|
|
/* 02699408 */ _t6 = cpu->r[3] + 0x0000004Cu;
|
|
/* 02699408 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[13]);
|
|
/* 0269940C */ _t7 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0269940C */ _t8 = _t7 & 0x00000001u;
|
|
/* 0269940C */ if (_t8) goto L_02699410; else goto L_0269944C;
|
|
L_02699410: ; // 0x2699410
|
|
/* 02699410 */ cpu->r[12] = 0x100E0000u;
|
|
/* 02699414 */ _t9 = cpu->r[12] + 0x00003F00u;
|
|
/* 02699414 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 02699418 */ cpu->r[12] = 0x100E0000u;
|
|
/* 0269941C */ _t10 = cpu->r[12] + 0x00003F04u;
|
|
/* 0269941C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 02699420 */ _ft11 = sqrt(cpu->f[10]);
|
|
/* 02699420 */ _ft12 = (double)(int32_t)0x00000001u;
|
|
/* 02699420 */ cpu->f[0] = _ft12 / _ft11;
|
|
/* 02699424 */ cpu->f[11] = cpu->f[0] * cpu->f[0];
|
|
/* 02699428 */ cpu->f[9] = cpu->f[0] * cpu->f[13];
|
|
/* 0269942C */ cpu->f[11] = -fma(cpu->f[11], cpu->f[10], -(cpu->f[12]));
|
|
/* 02699430 */ cpu->f[0] = cpu->f[11] * cpu->f[9];
|
|
/* 02699434 */ _t13 = cpu->r[3] + 0x0000004Cu;
|
|
/* 02699434 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 02699438 */ /* nop */
|
|
/* 0269943C */ cpu->f[9] = cpu->f[9] * cpu->f[0];
|
|
/* 02699440 */ /* nop */
|
|
/* 02699444 */ _t14 = cpu->r[3] + 0x0000004Cu;
|
|
/* 02699444 */ rbrew_write_f32(cpu->mem, _t14, cpu->f[9]);
|
|
/* 02699448 */ /* nop */
|
|
L_0269944C: ; // 0x269944c
|
|
/* 0269944C */ cpu->r[0] = 0x00000001u;
|
|
/* 02699450 */ _t15 = cpu->r[3] + 0x00000065u;
|
|
/* 02699450 */ rbrew_write8(cpu->mem, _t15, (uint8_t)cpu->r[0]);
|
|
/* 02699454 */ return;
|
|
}
|
|
|
|
// fn_02699458 @ 0x2699458
|
|
void Gambit_fn_02699458(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_02699458: ; // 0x2699458
|
|
/* 02699458 */ _t0 = cpu->r[4] + 0x00000000u;
|
|
/* 02699458 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 0269945C */ _t1 = cpu->r[3] + 0x00000050u;
|
|
/* 0269945C */ rbrew_write_f32(cpu->mem, _t1, cpu->f[0]);
|
|
/* 02699460 */ _t2 = cpu->r[4] + 0x00000004u;
|
|
/* 02699460 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 02699464 */ cpu->r[0] = 0x00000001u;
|
|
/* 02699468 */ _t3 = cpu->r[3] + 0x00000054u;
|
|
/* 02699468 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[0]);
|
|
/* 0269946C */ _t4 = cpu->r[4] + 0x00000008u;
|
|
/* 0269946C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 02699470 */ _t5 = cpu->r[3] + 0x00000065u;
|
|
/* 02699470 */ rbrew_write8(cpu->mem, _t5, (uint8_t)cpu->r[0]);
|
|
/* 02699474 */ _t6 = cpu->r[3] + 0x00000058u;
|
|
/* 02699474 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[0]);
|
|
/* 02699478 */ return;
|
|
}
|
|
|
|
// fn_0269947C @ 0x269947c
|
|
void Gambit_fn_0269947C(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0269947C: ; // 0x269947c
|
|
/* 0269947C */ _t0 = cpu->r[3] + 0x0000005Cu;
|
|
/* 0269947C */ rbrew_write_f32(cpu->mem, _t0, cpu->f[1]);
|
|
/* 02699480 */ return;
|
|
}
|
|
|
|
// fn_02699484 @ 0x2699484
|
|
void Gambit_fn_02699484(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02699484: ; // 0x2699484
|
|
/* 02699484 */ _t0 = cpu->r[3] + 0x00000060u;
|
|
/* 02699484 */ rbrew_write_f32(cpu->mem, _t0, cpu->f[1]);
|
|
/* 02699488 */ return;
|
|
}
|
|
|
|
// fn_0269948C @ 0x269948c
|
|
void Gambit_fn_0269948C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_0269948C: ; // 0x269948c
|
|
/* 0269948C */ _t0 = cpu->r[4] + 0x00000000u;
|
|
/* 0269948C */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02699490 */ _t1 = cpu->r[3] + 0x00000068u;
|
|
/* 02699490 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02699494 */ _t2 = cpu->r[4] + 0x00000004u;
|
|
/* 02699494 */ cpu->r[11] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02699498 */ _t3 = cpu->r[3] + 0x0000006Cu;
|
|
/* 02699498 */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 0269949C */ _t4 = cpu->r[4] + 0x00000008u;
|
|
/* 0269949C */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 026994A0 */ _t5 = cpu->r[3] + 0x00000070u;
|
|
/* 026994A0 */ rbrew_write32(cpu->mem, _t5, cpu->r[12]);
|
|
/* 026994A4 */ _t6 = cpu->r[4] + 0x0000000Cu;
|
|
/* 026994A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 026994A8 */ _t7 = cpu->r[3] + 0x00000074u;
|
|
/* 026994A8 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 026994AC */ return;
|
|
}
|
|
|
|
// fn_026994B0 @ 0x26994b0
|
|
void Gambit_fn_026994B0(CPUState* cpu) {
|
|
uint32_t _t0, _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;
|
|
|
|
L_026994B0: ; // 0x26994b0
|
|
/* 026994B0 */ _t0 = cpu->r[1] + 0xFFFFFD00u;
|
|
/* 026994B0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 026994B0 */ cpu->r[1] = _t0;
|
|
/* 026994B4 */ /* nop */
|
|
/* 026994B8 */ _t1 = cpu->r[1] + 0x000002A0u;
|
|
/* 026994B8 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[26]);
|
|
/* 026994BC */ _t2 = cpu->r[1] + 0x000002B0u;
|
|
/* 026994BC */ rbrew_write_f64(cpu->mem, _t2, cpu->f[27]);
|
|
/* 026994C0 */ cpu->r[0] = cpu->lr;
|
|
/* 026994C4 */ _t3 = cpu->r[1] + 0x000002C0u;
|
|
/* 026994C4 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[28]);
|
|
/* 026994C8 */ _t4 = cpu->r[1] + 0x000002D0u;
|
|
/* 026994C8 */ rbrew_write_f64(cpu->mem, _t4, cpu->f[29]);
|
|
/* 026994CC */ _t5 = cpu->r[1] + 0x000002E0u;
|
|
/* 026994CC */ rbrew_write_f64(cpu->mem, _t5, cpu->f[30]);
|
|
/* 026994D0 */ /* nop */
|
|
/* 026994D4 */ _t6 = cpu->r[1] + 0x000002F0u;
|
|
/* 026994D4 */ rbrew_write_f64(cpu->mem, _t6, cpu->f[31]);
|
|
/* 026994D8 */ _t7 = cpu->r[1] + 0x00000304u;
|
|
/* 026994D8 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 026994DC */ /* nop */
|
|
/* 026994E0 */ /* nop */
|
|
/* 026994E4 */ /* nop */
|
|
/* 026994E8 */ _t8 = cpu->r[1] + 0x000002A8u;
|
|
/* 026994E8 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[26]);
|
|
/* 026994EC */ /* nop */
|
|
/* 026994F0 */ _t9 = cpu->r[1] + 0x000002B8u;
|
|
/* 026994F0 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[27]);
|
|
/* 026994F4 */ /* nop */
|
|
/* 026994F8 */ _t10 = cpu->r[1] + 0x000002C8u;
|
|
/* 026994F8 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[28]);
|
|
/* 026994FC */ _t11 = cpu->r[1] + 0x000002D8u;
|
|
/* 026994FC */ rbrew_write_f32(cpu->mem, _t11, cpu->f[29]);
|
|
/* 02699500 */ _t12 = cpu->r[1] + 0x000002E8u;
|
|
/* 02699500 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[30]);
|
|
/* 02699504 */ _t13 = cpu->r[1] + 0x000002F8u;
|
|
/* 02699504 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[31]);
|
|
/* 02699508 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269950C */ _t14 = cpu->r[31] + 0x00000064u;
|
|
/* 0269950C */ cpu->r[9] = rbrew_read8(cpu->mem, _t14);
|
|
/* 02699510 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02699514 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02699514 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02699514 */ if (_t16) goto L_02699804; else goto L_02699518;
|
|
L_02699518: ; // 0x2699518
|
|
/* 02699518 */ _t17 = cpu->r[4] + 0x00000000u;
|
|
/* 02699518 */ cpu->r[10] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0269951C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000006u);
|
|
/* 02699520 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02699520 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02699520 */ if (_t19) goto L_02699524; else goto L_02699804;
|
|
L_02699524: ; // 0x2699524
|
|
/* 02699524 */ cpu->r[3] = cpu->r[1] + 0x000001C0u;
|
|
/* 02699528 */ Gambit_fn_0281E19C(cpu);
|
|
/* 0269952C */ cpu->r[30] = 0x00000001u;
|
|
/* 02699530 */ cpu->r[20] = 0x00000000u;
|
|
/* 02699534 */ _t20 = cpu->r[1] + 0x000001C0u;
|
|
/* 02699534 */ rbrew_write8(cpu->mem, _t20, (uint8_t)cpu->r[30]);
|
|
/* 02699538 */ cpu->r[0] = 0x00000002u;
|
|
/* 0269953C */ _t21 = cpu->r[1] + 0x000001C1u;
|
|
/* 0269953C */ rbrew_write8(cpu->mem, _t21, (uint8_t)cpu->r[20]);
|
|
/* 02699540 */ cpu->r[3] = cpu->r[1] + 0x000001C0u;
|
|
/* 02699544 */ _t22 = cpu->r[1] + 0x000001C8u;
|
|
/* 02699544 */ rbrew_write32(cpu->mem, _t22, cpu->r[0]);
|
|
/* 02699548 */ Gambit_fn_0281E2C8(cpu);
|
|
/* 0269954C */ cpu->r[11] = 0x100E0000u;
|
|
/* 02699550 */ cpu->r[9] = 0x100E0000u;
|
|
/* 02699554 */ cpu->r[7] = 0x100E0000u;
|
|
/* 02699558 */ _t23 = cpu->r[11] + 0x00003F14u;
|
|
/* 02699558 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 0269955C */ cpu->r[4] = 0x101F0000u;
|
|
/* 02699560 */ cpu->r[28] = cpu->r[1] + 0x00000100u;
|
|
/* 02699564 */ _t24 = cpu->r[9] + 0x00003F10u;
|
|
/* 02699564 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 02699568 */ cpu->r[4] = cpu->r[4] + 0x00006350u;
|
|
/* 0269956C */ cpu->r[25] = cpu->r[1] + 0x000000A0u;
|
|
/* 02699570 */ _t25 = cpu->r[7] + 0x00003EB8u;
|
|
/* 02699570 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 02699574 */ cpu->r[27] = cpu->r[1] + 0x00000190u;
|
|
/* 02699578 */ cpu->r[24] = cpu->r[1] + 0x00000034u;
|
|
/* 0269957C */ /* nop */
|
|
/* 02699580 */ cpu->r[26] = cpu->r[27];
|
|
/* 02699584 */ cpu->r[23] = cpu->r[1] + 0x00000238u;
|
|
/* 02699588 */ _t26 = cpu->r[4] + 0x00000008u;
|
|
/* 02699588 */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 0269958C */ cpu->r[29] = cpu->r[1] + 0x000000D0u;
|
|
/* 02699590 */ cpu->r[22] = cpu->r[1] + 0x00000130u;
|
|
/* 02699594 */ cpu->r[21] = cpu->r[1] + 0x00000160u;
|
|
/* 02699598 */ cpu->r[19] = 0x00000014u;
|
|
L_0269959C: ; // 0x269959c
|
|
/* 0269959C */ _t27 = cpu->r[31] + 0x0000005Cu;
|
|
/* 0269959C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 026995A0 */ cpu->f[1] = cpu->f[9] * cpu->f[31];
|
|
/* 026995A4 */ Gambit_fn_02C886F8(cpu);
|
|
/* 026995A8 */ _t28 = cpu->r[31] + 0x0000005Cu;
|
|
/* 026995A8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 026995AC */ cpu->f[26] = cpu->f[1];
|
|
/* 026995B0 */ cpu->f[1] = cpu->f[11] * cpu->f[31];
|
|
/* 026995B4 */ Gambit_fn_02C88F2C(cpu);
|
|
/* 026995B8 */ _t29 = cpu->r[1] + 0x00000010u;
|
|
/* 026995B8 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[26]);
|
|
/* 026995BC */ _t30 = cpu->r[1] + 0x00000014u;
|
|
/* 026995BC */ rbrew_write_f32(cpu->mem, _t30, cpu->f[29]);
|
|
/* 026995C0 */ /* nop */
|
|
/* 026995C4 */ _t31 = cpu->r[31] + 0x00000060u;
|
|
/* 026995C4 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 026995C8 */ _t32 = cpu->r[1] + 0x00000018u;
|
|
/* 026995C8 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[1]);
|
|
/* 026995CC */ /* nop */
|
|
/* 026995D0 */ /* nop */
|
|
/* 026995D4 */ cpu->f[8] = cpu->f[1] * cpu->f[7];
|
|
/* 026995D8 */ _t33 = cpu->r[1] + 0x00000074u;
|
|
/* 026995D8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t33);
|
|
/* 026995DC */ _t34 = cpu->r[1] + 0x00000070u;
|
|
/* 026995DC */ cpu->r[8] = rbrew_read32(cpu->mem, _t34);
|
|
/* 026995E0 */ _t35 = cpu->r[1] + 0x00000078u;
|
|
/* 026995E0 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[8]);
|
|
/* 026995E4 */ _t36 = cpu->r[1] + 0x00000078u;
|
|
/* 026995E4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t36);
|
|
/* 026995E8 */ _t37 = cpu->r[1] + 0x00000064u;
|
|
/* 026995E8 */ rbrew_write32(cpu->mem, _t37, cpu->r[8]);
|
|
/* 026995EC */ _t38 = cpu->r[1] + 0x00000064u;
|
|
/* 026995EC */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 026995F0 */ _t39 = cpu->r[1] + 0x00000068u;
|
|
/* 026995F0 */ rbrew_write32(cpu->mem, _t39, cpu->r[10]);
|
|
/* 026995F4 */ _t40 = cpu->r[1] + 0x00000068u;
|
|
/* 026995F4 */ cpu->f[2] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 026995F8 */ _t41 = cpu->r[1] + 0x0000006Cu;
|
|
/* 026995F8 */ rbrew_write32(cpu->mem, _t41, cpu->r[12]);
|
|
/* 026995FC */ _t42 = cpu->r[1] + 0x0000006Cu;
|
|
/* 026995FC */ cpu->f[3] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 02699600 */ cpu->r[3] = cpu->r[23];
|
|
/* 02699604 */ Gambit_fn_02C69840(cpu);
|
|
/* 02699608 */ cpu->r[4] = 0x100E0000u;
|
|
/* 0269960C */ cpu->r[18] = 0x43300000u;
|
|
/* 02699610 */ _t43 = cpu->r[4] + 0x00003F18u;
|
|
/* 02699610 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t43);
|
|
/* 02699614 */ cpu->r[10] = cpu->r[20] ^ 0x80000000u;
|
|
/* 02699618 */ _t44 = cpu->r[1] + 0x00000008u;
|
|
/* 02699618 */ rbrew_write32(cpu->mem, _t44, cpu->r[18]);
|
|
/* 0269961C */ _t45 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269961C */ rbrew_write32(cpu->mem, _t45, cpu->r[10]);
|
|
/* 02699620 */ _t46 = cpu->r[1] + 0x00000008u;
|
|
/* 02699620 */ cpu->f[6] = rbrew_read_f64(cpu->mem, _t46);
|
|
/* 02699624 */ cpu->f[9] = cpu->f[6] - cpu->f[0];
|
|
/* 02699628 */ cpu->f[0] = (double)(float)cpu->f[9];
|
|
/* 0269962C */ _t47 = cpu->r[1] + 0x00000020u;
|
|
/* 0269962C */ rbrew_write_f32(cpu->mem, _t47, cpu->f[29]);
|
|
/* 02699630 */ cpu->f[13] = cpu->f[30] * cpu->f[0];
|
|
/* 02699634 */ _t48 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02699634 */ rbrew_write_f32(cpu->mem, _t48, cpu->f[29]);
|
|
/* 02699638 */ cpu->r[3] = cpu->r[1] + 0x000000D0u;
|
|
/* 0269963C */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 02699640 */ _t49 = cpu->r[1] + 0x00000024u;
|
|
/* 02699640 */ rbrew_write_f32(cpu->mem, _t49, cpu->f[13]);
|
|
/* 02699644 */ Gambit_fn_021E983C(cpu);
|
|
/* 02699648 */ cpu->r[12] = 0x100E0000u;
|
|
/* 0269964C */ _t50 = cpu->r[1] + 0x00000008u;
|
|
/* 0269964C */ rbrew_write32(cpu->mem, _t50, cpu->r[18]);
|
|
/* 02699650 */ cpu->r[0] = cpu->r[30] ^ 0x80000000u;
|
|
/* 02699654 */ _t51 = cpu->r[12] + 0x00003F18u;
|
|
/* 02699654 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t51);
|
|
/* 02699658 */ _t52 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02699658 */ rbrew_write32(cpu->mem, _t52, cpu->r[0]);
|
|
/* 0269965C */ _t53 = cpu->r[1] + 0x00000008u;
|
|
/* 0269965C */ cpu->f[10] = rbrew_read_f64(cpu->mem, _t53);
|
|
/* 02699660 */ cpu->f[12] = cpu->f[10] - cpu->f[13];
|
|
/* 02699664 */ cpu->f[0] = (double)(float)cpu->f[12];
|
|
/* 02699668 */ _t54 = cpu->r[1] + 0x00000028u;
|
|
/* 02699668 */ rbrew_write_f32(cpu->mem, _t54, cpu->f[29]);
|
|
/* 0269966C */ cpu->f[8] = cpu->f[30] * cpu->f[0];
|
|
/* 02699670 */ _t55 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02699670 */ rbrew_write_f32(cpu->mem, _t55, cpu->f[29]);
|
|
/* 02699674 */ cpu->r[4] = cpu->r[1] + 0x00000028u;
|
|
/* 02699678 */ cpu->r[3] = cpu->r[1] + 0x00000100u;
|
|
/* 0269967C */ _t56 = cpu->r[1] + 0x00000030u;
|
|
/* 0269967C */ rbrew_write_f32(cpu->mem, _t56, cpu->f[8]);
|
|
/* 02699680 */ Gambit_fn_021E983C(cpu);
|
|
/* 02699684 */ cpu->r[3] = cpu->r[29];
|
|
/* 02699688 */ cpu->r[4] = cpu->r[23];
|
|
/* 0269968C */ cpu->r[5] = cpu->r[27];
|
|
/* 02699690 */ Gambit_fn_02C69544(cpu);
|
|
/* 02699694 */ cpu->r[6] = 0x00000003u;
|
|
/* 02699698 */ cpu->r[12] = cpu->r[1] + 0x0000018Cu;
|
|
/* 0269969C */ cpu->ctr = cpu->r[6];
|
|
/* 026996A0 */ cpu->r[5] = cpu->r[1] + 0x0000009Cu;
|
|
L_026996A4: ; // 0x26996a4
|
|
/* 026996A4 */ _t57 = cpu->r[12] + 0x00000004u;
|
|
/* 026996A4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t57);
|
|
/* 026996A8 */ _t58 = cpu->r[5] + 0x00000004u;
|
|
/* 026996A8 */ rbrew_write32(cpu->mem, _t58, cpu->r[7]);
|
|
/* 026996AC */ _t59 = cpu->r[12] + 0x00000008u;
|
|
/* 026996AC */ cpu->r[8] = rbrew_read32(cpu->mem, _t59);
|
|
/* 026996B0 */ _t60 = cpu->r[5] + 0x00000008u;
|
|
/* 026996B0 */ rbrew_write32(cpu->mem, _t60, cpu->r[8]);
|
|
/* 026996B4 */ _t61 = cpu->r[12] + 0x0000000Cu;
|
|
/* 026996B4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t61);
|
|
/* 026996B8 */ _t62 = cpu->r[5] + 0x0000000Cu;
|
|
/* 026996B8 */ rbrew_write32(cpu->mem, _t62, cpu->r[9]);
|
|
/* 026996BC */ _t63 = cpu->r[12] + 0x00000010u;
|
|
/* 026996BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t63);
|
|
/* 026996BC */ cpu->r[12] = _t63;
|
|
/* 026996C0 */ _t64 = cpu->r[5] + 0x00000010u;
|
|
/* 026996C0 */ rbrew_write32(cpu->mem, _t64, cpu->r[0]);
|
|
/* 026996C0 */ cpu->r[5] = _t64;
|
|
/* 026996C4 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 026996C4 */ _t65 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 026996C4 */ _t66 = _t65 >> (0x00000002u & 31u);
|
|
/* 026996C4 */ _t67 = _t66 & 0x00000001u;
|
|
/* 026996C4 */ if (_t67) goto L_026996A4; else goto L_026996C8;
|
|
L_026996C8: ; // 0x26996c8
|
|
/* 026996C8 */ cpu->r[4] = cpu->r[22];
|
|
/* 026996CC */ cpu->r[3] = cpu->r[25];
|
|
/* 026996D0 */ Gambit_fn_02C69510(cpu);
|
|
/* 026996D4 */ cpu->r[5] = cpu->r[26];
|
|
/* 026996D8 */ cpu->r[4] = cpu->r[23];
|
|
/* 026996DC */ cpu->r[3] = cpu->r[28];
|
|
/* 026996E0 */ Gambit_fn_02C69544(cpu);
|
|
/* 026996E4 */ cpu->r[0] = 0x00000003u;
|
|
/* 026996E8 */ cpu->r[11] = cpu->r[1] + 0x0000018Cu;
|
|
/* 026996EC */ cpu->ctr = cpu->r[0];
|
|
/* 026996F0 */ cpu->r[12] = cpu->r[1] + 0x0000009Cu;
|
|
L_026996F4: ; // 0x26996f4
|
|
/* 026996F4 */ _t68 = cpu->r[11] + 0x00000004u;
|
|
/* 026996F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t68);
|
|
/* 026996F8 */ _t69 = cpu->r[12] + 0x00000004u;
|
|
/* 026996F8 */ rbrew_write32(cpu->mem, _t69, cpu->r[0]);
|
|
/* 026996FC */ _t70 = cpu->r[11] + 0x00000008u;
|
|
/* 026996FC */ cpu->r[6] = rbrew_read32(cpu->mem, _t70);
|
|
/* 02699700 */ _t71 = cpu->r[12] + 0x00000008u;
|
|
/* 02699700 */ rbrew_write32(cpu->mem, _t71, cpu->r[6]);
|
|
/* 02699704 */ _t72 = cpu->r[11] + 0x0000000Cu;
|
|
/* 02699704 */ cpu->r[7] = rbrew_read32(cpu->mem, _t72);
|
|
/* 02699708 */ _t73 = cpu->r[12] + 0x0000000Cu;
|
|
/* 02699708 */ rbrew_write32(cpu->mem, _t73, cpu->r[7]);
|
|
/* 0269970C */ _t74 = cpu->r[11] + 0x00000010u;
|
|
/* 0269970C */ cpu->r[0] = rbrew_read32(cpu->mem, _t74);
|
|
/* 0269970C */ cpu->r[11] = _t74;
|
|
/* 02699710 */ _t75 = cpu->r[12] + 0x00000010u;
|
|
/* 02699710 */ rbrew_write32(cpu->mem, _t75, cpu->r[0]);
|
|
/* 02699710 */ cpu->r[12] = _t75;
|
|
/* 02699714 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02699714 */ _t76 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02699714 */ _t77 = _t76 >> (0x00000002u & 31u);
|
|
/* 02699714 */ _t78 = _t77 & 0x00000001u;
|
|
/* 02699714 */ if (_t78) goto L_026996F4; else goto L_02699718;
|
|
L_02699718: ; // 0x2699718
|
|
/* 02699718 */ cpu->r[4] = cpu->r[21];
|
|
/* 0269971C */ cpu->r[3] = cpu->r[25];
|
|
/* 02699720 */ Gambit_fn_02C69510(cpu);
|
|
/* 02699724 */ _t79 = cpu->r[31] + 0x00000008u;
|
|
/* 02699724 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t79);
|
|
/* 02699728 */ _t80 = cpu->r[31] + 0x00000014u;
|
|
/* 02699728 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t80);
|
|
/* 0269972C */ _t81 = cpu->r[1] + 0x00000034u;
|
|
/* 0269972C */ rbrew_write_f32(cpu->mem, _t81, cpu->f[7]);
|
|
/* 02699730 */ _t82 = cpu->r[1] + 0x00000038u;
|
|
/* 02699730 */ rbrew_write_f32(cpu->mem, _t82, cpu->f[10]);
|
|
/* 02699734 */ _t83 = cpu->r[31] + 0x00000024u;
|
|
/* 02699734 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t83);
|
|
/* 02699738 */ _t84 = cpu->r[31] + 0x0000002Cu;
|
|
/* 02699738 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t84);
|
|
/* 0269973C */ _t85 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0269973C */ rbrew_write_f32(cpu->mem, _t85, cpu->f[7]);
|
|
/* 02699740 */ _t86 = cpu->r[1] + 0x00000040u;
|
|
/* 02699740 */ rbrew_write_f32(cpu->mem, _t86, cpu->f[12]);
|
|
/* 02699744 */ _t87 = cpu->r[31] + 0x00000020u;
|
|
/* 02699744 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t87);
|
|
/* 02699748 */ _t88 = cpu->r[31] + 0x00000030u;
|
|
/* 02699748 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t88);
|
|
/* 0269974C */ _t89 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0269974C */ rbrew_write_f32(cpu->mem, _t89, cpu->f[11]);
|
|
/* 02699750 */ _t90 = cpu->r[1] + 0x00000050u;
|
|
/* 02699750 */ rbrew_write_f32(cpu->mem, _t90, cpu->f[8]);
|
|
/* 02699754 */ _t91 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02699754 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t91);
|
|
/* 02699758 */ _t92 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02699758 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t92);
|
|
/* 0269975C */ _t93 = cpu->r[1] + 0x00000058u;
|
|
/* 0269975C */ rbrew_write_f32(cpu->mem, _t93, cpu->f[12]);
|
|
/* 02699760 */ _t94 = cpu->r[1] + 0x00000044u;
|
|
/* 02699760 */ rbrew_write_f32(cpu->mem, _t94, cpu->f[13]);
|
|
/* 02699764 */ _t95 = cpu->r[31] + 0x00000018u;
|
|
/* 02699764 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t95);
|
|
/* 02699768 */ _t96 = cpu->r[31] + 0x00000028u;
|
|
/* 02699768 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t96);
|
|
/* 0269976C */ _t97 = cpu->r[1] + 0x00000048u;
|
|
/* 0269976C */ rbrew_write_f32(cpu->mem, _t97, cpu->f[6]);
|
|
/* 02699770 */ _t98 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02699770 */ rbrew_write_f32(cpu->mem, _t98, cpu->f[11]);
|
|
/* 02699774 */ _t99 = cpu->r[31] + 0x00000010u;
|
|
/* 02699774 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t99);
|
|
/* 02699778 */ cpu->r[5] = cpu->r[22];
|
|
/* 0269977C */ _t100 = cpu->r[31] + 0x00000034u;
|
|
/* 0269977C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t100);
|
|
/* 02699780 */ cpu->r[3] = cpu->r[24];
|
|
/* 02699784 */ _t101 = cpu->r[1] + 0x00000054u;
|
|
/* 02699784 */ rbrew_write_f32(cpu->mem, _t101, cpu->f[10]);
|
|
/* 02699788 */ cpu->r[4] = cpu->r[22];
|
|
/* 0269978C */ _t102 = cpu->r[1] + 0x00000060u;
|
|
/* 0269978C */ rbrew_write_f32(cpu->mem, _t102, cpu->f[13]);
|
|
/* 02699790 */ Gambit_fn_02C69544(cpu);
|
|
/* 02699794 */ cpu->r[5] = cpu->r[21];
|
|
/* 02699798 */ cpu->r[3] = cpu->r[24];
|
|
/* 0269979C */ cpu->r[4] = cpu->r[21];
|
|
/* 026997A0 */ Gambit_fn_02C69544(cpu);
|
|
/* 026997A4 */ cpu->r[3] = cpu->r[1] + 0x00000088u;
|
|
/* 026997A8 */ cpu->r[4] = cpu->r[1] + 0x00000130u;
|
|
/* 026997AC */ Gambit_fn_0200D450(cpu);
|
|
/* 026997B0 */ cpu->r[4] = cpu->r[1] + 0x00000160u;
|
|
/* 026997B4 */ cpu->r[3] = cpu->r[1] + 0x00000094u;
|
|
/* 026997B8 */ Gambit_fn_0200D450(cpu);
|
|
/* 026997BC */ cpu->r[3] = cpu->r[31];
|
|
/* 026997C0 */ Gambit_fn_02699240(cpu);
|
|
/* 026997C4 */ /* nop */
|
|
/* 026997C8 */ /* nop */
|
|
/* 026997CC */ /* nop */
|
|
/* 026997D0 */ _t103 = cpu->r[3] + 0x00000008u;
|
|
/* 026997D0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t103);
|
|
/* 026997D4 */ _t104 = cpu->r[1] + 0x0000007Cu;
|
|
/* 026997D4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t104);
|
|
/* 026997D8 */ cpu->f[11] = cpu->f[27] + cpu->f[12];
|
|
/* 026997DC */ _t105 = cpu->r[1] + 0x00000080u;
|
|
/* 026997DC */ cpu->r[8] = rbrew_read32(cpu->mem, _t105);
|
|
/* 026997E0 */ _t106 = cpu->r[1] + 0x00000064u;
|
|
/* 026997E0 */ rbrew_write32(cpu->mem, _t106, cpu->r[7]);
|
|
/* 026997E4 */ _t107 = cpu->r[1] + 0x00000084u;
|
|
/* 026997E4 */ rbrew_write_f32(cpu->mem, _t107, cpu->f[11]);
|
|
/* 026997E8 */ _t108 = cpu->r[1] + 0x00000084u;
|
|
/* 026997E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t108);
|
|
/* 026997EC */ _t109 = cpu->r[1] + 0x00000068u;
|
|
/* 026997EC */ rbrew_write32(cpu->mem, _t109, cpu->r[8]);
|
|
/* 026997F0 */ _t110 = cpu->r[1] + 0x0000006Cu;
|
|
/* 026997F0 */ rbrew_write32(cpu->mem, _t110, cpu->r[0]);
|
|
/* 026997F4 */ cpu->r[19] = cpu->r[19] + 0xFFFFFFFFu;
|
|
/* 026997F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[19], 0x00000000u);
|
|
/* 026997F8 */ cpu->r[20] = cpu->r[20] + 0x00000001u;
|
|
/* 026997FC */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02699800 */ _t111 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02699800 */ _t112 = _t111 & 0x00000001u;
|
|
/* 02699800 */ if (_t112) goto L_02699804; else goto L_0269959C;
|
|
L_02699804: ; // 0x2699804
|
|
/* 02699804 */ /* nop */
|
|
/* 02699808 */ _t113 = cpu->r[1] + 0x000002E8u;
|
|
/* 02699808 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t113);
|
|
/* 0269980C */ _t114 = cpu->r[1] + 0x000002C8u;
|
|
/* 0269980C */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t114);
|
|
/* 02699810 */ _t115 = cpu->r[1] + 0x000002E0u;
|
|
/* 02699810 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t115);
|
|
/* 02699814 */ _t116 = cpu->r[1] + 0x000002C0u;
|
|
/* 02699814 */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t116);
|
|
/* 02699818 */ _t117 = cpu->r[1] + 0x000002B8u;
|
|
/* 02699818 */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t117);
|
|
/* 0269981C */ _t118 = cpu->r[1] + 0x000002D8u;
|
|
/* 0269981C */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t118);
|
|
/* 02699820 */ _t119 = cpu->r[1] + 0x000002B0u;
|
|
/* 02699820 */ cpu->f[27] = rbrew_read_f64(cpu->mem, _t119);
|
|
/* 02699824 */ _t120 = cpu->r[1] + 0x000002D0u;
|
|
/* 02699824 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t120);
|
|
/* 02699828 */ _t121 = cpu->r[1] + 0x000002A8u;
|
|
/* 02699828 */ cpu->f[26] = rbrew_read_f32(cpu->mem, _t121);
|
|
/* 0269982C */ _t122 = cpu->r[1] + 0x000002F8u;
|
|
/* 0269982C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t122);
|
|
/* 02699830 */ _t123 = cpu->r[1] + 0x000002A0u;
|
|
/* 02699830 */ cpu->f[26] = rbrew_read_f64(cpu->mem, _t123);
|
|
/* 02699834 */ _t124 = cpu->r[1] + 0x000002F0u;
|
|
/* 02699834 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t124);
|
|
/* 02699838 */ _t125 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02699838 */ _t126 = _t125 & 0x00000001u;
|
|
/* 02699838 */ if (_t126) goto L_0269983C; // else: addr-0 trap, fall-through
|
|
L_0269983C: ; // 0x269983c
|
|
/* 0269983C */ _t127 = cpu->r[1] + 0x00000304u;
|
|
/* 0269983C */ cpu->r[0] = rbrew_read32(cpu->mem, _t127);
|
|
/* 02699840 */ cpu->lr = cpu->r[0];
|
|
/* 02699844 */ cpu->r[1] = cpu->r[1] + 0x00000300u;
|
|
/* 02699848 */ return;
|
|
}
|
|
|
|
// fn_0269984C @ 0x269984c
|
|
void Gambit_fn_0269984C(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_0269984C: ; // 0x269984c
|
|
/* 0269984C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02699850 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02699850 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02699850 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02699850 */ goto L_02699854;
|
|
L_02699854: ; // 0x2699854
|
|
/* 02699854 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02699854 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02699858 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02699858 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02699858 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02699858 */ goto L_0269985C;
|
|
L_0269985C: ; // 0x269985c
|
|
/* 0269985C */ 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_02699860 @ 0x2699860
|
|
void Gambit_fn_02699860(CPUState* cpu) {
|
|
L_02699860: ; // 0x2699860
|
|
/* 02699860 */ return;
|
|
}
|
|
|
|
// fn_02699864 @ 0x2699864
|
|
void Gambit_fn_02699864(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02699864: ; // 0x2699864
|
|
/* 02699864 */ cpu->r[0] = cpu->lr;
|
|
/* 02699868 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02699868 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02699868 */ cpu->r[1] = _t0;
|
|
/* 0269986C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269986C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02699870 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02699870 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02699874 */ cpu->r[30] = cpu->r[3];
|
|
/* 02699874 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02699878 */ cpu->r[31] = cpu->r[4];
|
|
/* 0269987C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0269987C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02699880 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02699880 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02699880 */ if (_t5) goto L_026998C0; else goto L_02699884;
|
|
L_02699884: ; // 0x2699884
|
|
/* 02699884 */ cpu->r[0] = 0x100E0000u;
|
|
/* 02699888 */ cpu->r[11] = 0x100E0000u;
|
|
/* 0269988C */ cpu->r[0] = cpu->r[0] + 0x00003FC8u;
|
|
/* 02699890 */ cpu->r[11] = cpu->r[11] + 0x00004168u;
|
|
/* 02699894 */ _t6 = cpu->r[30] + 0x00000004u;
|
|
/* 02699894 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02699898 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0269989C */ cpu->r[4] = 0x00000000u;
|
|
/* 026998A0 */ _t7 = cpu->r[30] + 0x00000244u;
|
|
/* 026998A0 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 026998A4 */ cpu->r[3] = cpu->r[30];
|
|
/* 026998A8 */ _t8 = cpu->r[12] + 0xFFFF8058u;
|
|
/* 026998A8 */ rbrew_write32(cpu->mem, _t8, cpu->r[4]);
|
|
/* 026998AC */ Gambit_fn_023AE47C(cpu);
|
|
/* 026998B0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 026998B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 026998B4 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026998B4 */ _t10 = _t9 & 0x00000001u;
|
|
/* 026998B4 */ if (_t10) goto L_026998C0; else goto L_026998B8;
|
|
L_026998B8: ; // 0x26998b8
|
|
/* 026998B8 */ cpu->r[3] = cpu->r[30];
|
|
/* 026998BC */ Gambit_fn_02801BB0(cpu);
|
|
L_026998C0: ; // 0x26998c0
|
|
/* 026998C0 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 026998C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 026998C4 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 026998C4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t12);
|
|
/* 026998C8 */ cpu->lr = cpu->r[0];
|
|
/* 026998CC */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026998CC */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 026998D0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 026998D4 */ return;
|
|
}
|
|
|
|
// fn_02699868 @ 0x2699868
|
|
void Gambit_fn_02699868(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02699868: ; // 0x2699868
|
|
/* 02699868 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02699868 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02699868 */ cpu->r[1] = _t0;
|
|
/* 0269986C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269986C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02699870 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02699870 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02699874 */ cpu->r[30] = cpu->r[3];
|
|
/* 02699874 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02699878 */ cpu->r[31] = cpu->r[4];
|
|
/* 0269987C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0269987C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02699880 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02699880 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02699880 */ if (_t5) goto L_026998C0; else goto L_02699884;
|
|
L_02699884: ; // 0x2699884
|
|
/* 02699884 */ cpu->r[0] = 0x100E0000u;
|
|
/* 02699888 */ cpu->r[11] = 0x100E0000u;
|
|
/* 0269988C */ cpu->r[0] = cpu->r[0] + 0x00003FC8u;
|
|
/* 02699890 */ cpu->r[11] = cpu->r[11] + 0x00004168u;
|
|
/* 02699894 */ _t6 = cpu->r[30] + 0x00000004u;
|
|
/* 02699894 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02699898 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0269989C */ cpu->r[4] = 0x00000000u;
|
|
/* 026998A0 */ _t7 = cpu->r[30] + 0x00000244u;
|
|
/* 026998A0 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 026998A4 */ cpu->r[3] = cpu->r[30];
|
|
/* 026998A8 */ _t8 = cpu->r[12] + 0xFFFF8058u;
|
|
/* 026998A8 */ rbrew_write32(cpu->mem, _t8, cpu->r[4]);
|
|
/* 026998AC */ Gambit_fn_023AE47C(cpu);
|
|
/* 026998B0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 026998B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 026998B4 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026998B4 */ _t10 = _t9 & 0x00000001u;
|
|
/* 026998B4 */ if (_t10) goto L_026998C0; else goto L_026998B8;
|
|
L_026998B8: ; // 0x26998b8
|
|
/* 026998B8 */ cpu->r[3] = cpu->r[30];
|
|
/* 026998BC */ Gambit_fn_02801BB0(cpu);
|
|
L_026998C0: ; // 0x26998c0
|
|
/* 026998C0 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 026998C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 026998C4 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 026998C4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t12);
|
|
/* 026998C8 */ cpu->lr = cpu->r[0];
|
|
/* 026998CC */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026998CC */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 026998D0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 026998D4 */ return;
|
|
}
|
|
|
|
// fn_026998D8 @ 0x26998d8
|
|
void Gambit_fn_026998D8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02699864: ; // 0x2699864
|
|
/* 02699864 */ cpu->r[0] = cpu->lr;
|
|
/* 02699868 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02699868 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02699868 */ cpu->r[1] = _t0;
|
|
/* 0269986C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269986C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02699870 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02699870 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02699874 */ cpu->r[30] = cpu->r[3];
|
|
/* 02699874 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02699878 */ cpu->r[31] = cpu->r[4];
|
|
/* 0269987C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0269987C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02699880 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02699880 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02699880 */ if (_t5) goto L_026998C0; else goto L_02699884;
|
|
L_02699884: ; // 0x2699884
|
|
/* 02699884 */ cpu->r[0] = 0x100E0000u;
|
|
/* 02699888 */ cpu->r[11] = 0x100E0000u;
|
|
/* 0269988C */ cpu->r[0] = cpu->r[0] + 0x00003FC8u;
|
|
/* 02699890 */ cpu->r[11] = cpu->r[11] + 0x00004168u;
|
|
/* 02699894 */ _t6 = cpu->r[30] + 0x00000004u;
|
|
/* 02699894 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02699898 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0269989C */ cpu->r[4] = 0x00000000u;
|
|
/* 026998A0 */ _t7 = cpu->r[30] + 0x00000244u;
|
|
/* 026998A0 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 026998A4 */ cpu->r[3] = cpu->r[30];
|
|
/* 026998A8 */ _t8 = cpu->r[12] + 0xFFFF8058u;
|
|
/* 026998A8 */ rbrew_write32(cpu->mem, _t8, cpu->r[4]);
|
|
/* 026998AC */ Gambit_fn_023AE47C(cpu);
|
|
/* 026998B0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 026998B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 026998B4 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026998B4 */ _t10 = _t9 & 0x00000001u;
|
|
/* 026998B4 */ if (_t10) goto L_026998C0; else goto L_026998B8;
|
|
L_026998B8: ; // 0x26998b8
|
|
/* 026998B8 */ cpu->r[3] = cpu->r[30];
|
|
/* 026998BC */ Gambit_fn_02801BB0(cpu);
|
|
L_026998C0: ; // 0x26998c0
|
|
/* 026998C0 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 026998C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 026998C4 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 026998C4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t12);
|
|
/* 026998C8 */ cpu->lr = cpu->r[0];
|
|
/* 026998CC */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026998CC */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 026998D0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 026998D4 */ return;
|
|
L_026998D8: ; // 0x26998d8
|
|
/* 026998D8 */ cpu->r[3] = cpu->r[3] + 0xFFFFFDC8u;
|
|
/* 026998DC */ goto L_02699864;
|
|
}
|
|
|
|
// fn_026998E0 @ 0x26998e0
|
|
void Gambit_fn_026998E0(CPUState* cpu) {
|
|
uint32_t _t0, _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_026998E0: ; // 0x26998e0
|
|
/* 026998E0 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 026998E0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 026998E0 */ cpu->r[1] = _t0;
|
|
/* 026998E4 */ cpu->r[0] = cpu->lr;
|
|
/* 026998E8 */ /* nop */
|
|
/* 026998EC */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 026998EC */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 026998F0 */ cpu->r[29] = cpu->r[3];
|
|
/* 026998F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 026998F4 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026998F4 */ _t3 = _t2 & 0x00000001u;
|
|
/* 026998F4 */ if (_t3) goto L_026998F8; else goto L_02699908;
|
|
L_026998F8: ; // 0x26998f8
|
|
/* 026998F8 */ cpu->r[3] = 0x000002DCu;
|
|
/* 026998FC */ Gambit_fn_02801A78(cpu);
|
|
/* 02699900 */ cpu->r[29] = cpu->r[3];
|
|
/* 02699900 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02699904 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02699904 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02699904 */ if (_t5) goto L_026999F0; else goto L_02699908;
|
|
L_02699908: ; // 0x2699908
|
|
/* 02699908 */ cpu->r[4] = 0x00000001u;
|
|
/* 0269990C */ cpu->r[3] = cpu->r[29];
|
|
/* 02699910 */ cpu->r[6] = 0x0000000Fu;
|
|
/* 02699914 */ cpu->r[5] = cpu->r[4];
|
|
/* 02699918 */ Gambit_fn_023AE4E4(cpu);
|
|
/* 0269991C */ cpu->r[7] = 0x100E0000u;
|
|
/* 02699920 */ cpu->r[30] = 0x00000000u;
|
|
/* 02699924 */ cpu->r[7] = cpu->r[7] + 0x00004168u;
|
|
/* 02699928 */ cpu->r[0] = 0x100E0000u;
|
|
/* 0269992C */ _t6 = cpu->r[29] + 0x00000244u;
|
|
/* 0269992C */ rbrew_write32(cpu->mem, _t6, cpu->r[7]);
|
|
/* 02699930 */ cpu->r[0] = cpu->r[0] + 0x00003FC8u;
|
|
/* 02699934 */ cpu->r[12] = 0x101C0000u;
|
|
/* 02699938 */ _t7 = cpu->r[29] + 0x000002D8u;
|
|
/* 02699938 */ rbrew_write32(cpu->mem, _t7, cpu->r[30]);
|
|
/* 0269993C */ cpu->r[9] = 0x100E0000u;
|
|
/* 02699940 */ cpu->r[10] = 0x101D0000u;
|
|
/* 02699944 */ _t8 = cpu->r[29] + 0x00000004u;
|
|
/* 02699944 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 02699948 */ _t9 = cpu->r[12] + 0x00001358u;
|
|
/* 02699948 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269994C */ cpu->r[9] = cpu->r[9] + 0x00003F60u;
|
|
/* 02699950 */ cpu->r[0] = 0x100E0000u;
|
|
/* 02699954 */ _t10 = cpu->r[10] + 0xFFFF8058u;
|
|
/* 02699954 */ rbrew_write32(cpu->mem, _t10, cpu->r[29]);
|
|
/* 02699958 */ cpu->r[0] = cpu->r[0] + 0x00003FB0u;
|
|
/* 0269995C */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269995C */ rbrew_write32(cpu->mem, _t11, cpu->r[9]);
|
|
/* 02699960 */ cpu->r[27] = cpu->r[12] + 0x0000001Cu;
|
|
/* 02699964 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02699968 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02699968 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 0269996C */ _t13 = cpu->r[12] + 0x0000001Cu;
|
|
/* 0269996C */ cpu->r[28] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02699970 */ Gambit_fn_02699B8C(cpu);
|
|
/* 02699974 */ cpu->r[31] = 0x10110000u;
|
|
/* 02699978 */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 02699978 */ cpu->r[12] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0269997C */ _t15 = cpu->r[31] + 0x00007399u;
|
|
/* 0269997C */ cpu->r[31] = rbrew_read8(cpu->mem, _t15);
|
|
/* 02699980 */ _t16 = cpu->r[12] + 0x00000000u;
|
|
/* 02699980 */ cpu->r[6] = rbrew_read8(cpu->mem, _t16);
|
|
/* 02699984 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[31]);
|
|
/* 02699988 */ cpu->r[7] = 0x00080000u;
|
|
/* 0269998C */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269998C */ _t18 = _t17 & 0x00000001u;
|
|
/* 0269998C */ if (_t18) goto L_026999B4; else goto L_02699990;
|
|
L_02699990: ; // 0x2699990
|
|
/* 02699990 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02699994 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[7]);
|
|
/* 02699998 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 0269999C */ _t19 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0269999C */ _t20 = _t19 & 0x00000001u;
|
|
/* 0269999C */ if (_t20) goto L_026999B0; else goto L_026999A0;
|
|
L_026999A0: ; // 0x26999a0
|
|
/* 026999A0 */ _t21 = cpu->r[12] + 0x00000000u;
|
|
/* 026999A0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t21);
|
|
/* 026999A4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 026999A8 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026999A8 */ _t23 = _t22 & 0x00000001u;
|
|
/* 026999A8 */ if (_t23) goto L_026999AC; else goto L_02699990;
|
|
L_026999AC: ; // 0x26999ac
|
|
/* 026999AC */ goto L_026999B4;
|
|
L_026999B0: ; // 0x26999b0
|
|
/* 026999B0 */ cpu->r[30] = 0x00000000u;
|
|
L_026999B4: ; // 0x26999b4
|
|
/* 026999B4 */ _t24 = cpu->r[27] + 0x00000008u;
|
|
/* 026999B4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t24);
|
|
/* 026999B8 */ _t25 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026999B8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t25);
|
|
/* 026999BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[10]);
|
|
/* 026999C0 */ _t26 = cpu->r[9] + 0x00000014u;
|
|
/* 026999C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t26);
|
|
/* 026999C4 */ _t27 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026999C4 */ _t28 = _t27 & 0x00000001u;
|
|
/* 026999C4 */ if (_t28) goto L_026999CC; else goto L_026999C8;
|
|
L_026999C8: ; // 0x26999c8
|
|
/* 026999C8 */ cpu->r[30] = cpu->r[10] + 0xFFFFFFFFu;
|
|
L_026999CC: ; // 0x26999cc
|
|
/* 026999CC */ cpu->ctr = cpu->r[0];
|
|
/* 026999D0 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 026999D4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 026999D8 */ _t29 = cpu->r[1] + 0x00000008u;
|
|
/* 026999D8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t29);
|
|
/* 026999DC */ cpu->r[6] = 0x00000000u;
|
|
/* 026999E0 */ cpu->r[5] = cpu->r[30];
|
|
/* 026999E4 */ cpu->r[3] = cpu->r[28];
|
|
/* 026999E8 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 026999EC */ _t30 = cpu->r[28] + cpu->r[30];
|
|
/* 026999EC */ rbrew_write8(cpu->mem, _t30, (uint8_t)cpu->r[31]);
|
|
L_026999F0: ; // 0x26999f0
|
|
/* 026999F0 */ cpu->r[3] = cpu->r[29];
|
|
/* 026999F4 */ /* nop */
|
|
/* 026999F8 */ _t31 = cpu->r[1] + 0x0000002Cu;
|
|
/* 026999F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 026999FC */ cpu->lr = cpu->r[0];
|
|
/* 02699A00 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 02699A04 */ return;
|
|
}
|
|
|
|
// fn_02699A08 @ 0x2699a08
|
|
void Gambit_fn_02699A08(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_02699A08: ; // 0x2699a08
|
|
/* 02699A08 */ cpu->r[0] = cpu->lr;
|
|
/* 02699A0C */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 02699A0C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02699A0C */ cpu->r[1] = _t0;
|
|
/* 02699A10 */ _t1 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02699A10 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02699A14 */ cpu->r[31] = cpu->r[3];
|
|
/* 02699A18 */ _t2 = cpu->r[1] + 0x00000024u;
|
|
/* 02699A18 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02699A1C */ Gambit_fn_023AE57C(cpu);
|
|
/* 02699A20 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02699A24 */ Gambit_fn_02450E80(cpu);
|
|
/* 02699A28 */ cpu->r[10] = 0x00000006u;
|
|
/* 02699A2C */ cpu->r[0] = 0x00000008u;
|
|
/* 02699A30 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 02699A30 */ rbrew_write32(cpu->mem, _t3, cpu->r[10]);
|
|
/* 02699A34 */ cpu->r[3] = 0x00000000u;
|
|
/* 02699A38 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02699A3C */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02699A3C */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02699A40 */ Gambit_fn_02450740(cpu);
|
|
/* 02699A44 */ cpu->r[4] = cpu->r[3];
|
|
/* 02699A44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 02699A48 */ _t5 = cpu->r[31] + 0x00000250u;
|
|
/* 02699A48 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02699A4C */ _t6 = cpu->r[31] + 0x000002D8u;
|
|
/* 02699A4C */ rbrew_write32(cpu->mem, _t6, cpu->r[4]);
|
|
/* 02699A50 */ _t7 = cpu->r[12] + 0x00000250u;
|
|
/* 02699A50 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02699A54 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02699A54 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02699A54 */ if (_t9) goto L_02699A5C; else goto L_02699A58;
|
|
L_02699A58: ; // 0x2699a58
|
|
/* 02699A58 */ cpu->r[4] = cpu->r[4] + 0x00000010u;
|
|
L_02699A5C: ; // 0x2699a5c
|
|
/* 02699A5C */ cpu->r[5] = 0x00000000u;
|
|
/* 02699A60 */ Gambit_fn_027EFC10(cpu);
|
|
/* 02699A64 */ _t10 = cpu->r[1] + 0x00000024u;
|
|
/* 02699A64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02699A68 */ _t11 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02699A68 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02699A6C */ cpu->lr = cpu->r[0];
|
|
/* 02699A70 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 02699A74 */ return;
|
|
}
|
|
|
|
// fn_02699A0C @ 0x2699a0c
|
|
void Gambit_fn_02699A0C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_02699A0C: ; // 0x2699a0c
|
|
/* 02699A0C */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 02699A0C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02699A0C */ cpu->r[1] = _t0;
|
|
/* 02699A10 */ _t1 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02699A10 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02699A14 */ cpu->r[31] = cpu->r[3];
|
|
/* 02699A18 */ _t2 = cpu->r[1] + 0x00000024u;
|
|
/* 02699A18 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02699A1C */ Gambit_fn_023AE57C(cpu);
|
|
/* 02699A20 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02699A24 */ Gambit_fn_02450E80(cpu);
|
|
/* 02699A28 */ cpu->r[10] = 0x00000006u;
|
|
/* 02699A2C */ cpu->r[0] = 0x00000008u;
|
|
/* 02699A30 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 02699A30 */ rbrew_write32(cpu->mem, _t3, cpu->r[10]);
|
|
/* 02699A34 */ cpu->r[3] = 0x00000000u;
|
|
/* 02699A38 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02699A3C */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02699A3C */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02699A40 */ Gambit_fn_02450740(cpu);
|
|
/* 02699A44 */ cpu->r[4] = cpu->r[3];
|
|
/* 02699A44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 02699A48 */ _t5 = cpu->r[31] + 0x00000250u;
|
|
/* 02699A48 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02699A4C */ _t6 = cpu->r[31] + 0x000002D8u;
|
|
/* 02699A4C */ rbrew_write32(cpu->mem, _t6, cpu->r[4]);
|
|
/* 02699A50 */ _t7 = cpu->r[12] + 0x00000250u;
|
|
/* 02699A50 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02699A54 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02699A54 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02699A54 */ if (_t9) goto L_02699A5C; else goto L_02699A58;
|
|
L_02699A58: ; // 0x2699a58
|
|
/* 02699A58 */ cpu->r[4] = cpu->r[4] + 0x00000010u;
|
|
L_02699A5C: ; // 0x2699a5c
|
|
/* 02699A5C */ cpu->r[5] = 0x00000000u;
|
|
/* 02699A60 */ Gambit_fn_027EFC10(cpu);
|
|
/* 02699A64 */ _t10 = cpu->r[1] + 0x00000024u;
|
|
/* 02699A64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02699A68 */ _t11 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02699A68 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02699A6C */ cpu->lr = cpu->r[0];
|
|
/* 02699A70 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 02699A74 */ return;
|
|
}
|
|
|
|
// fn_02699A78 @ 0x2699a78
|
|
void Gambit_fn_02699A78(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_023ACDB4: ; // 0x23acdb4
|
|
/* 023ACDB4 */ cpu->r[0] = cpu->lr;
|
|
/* 023ACDB8 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 023ACDB8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 023ACDB8 */ cpu->r[1] = _t0;
|
|
/* 023ACDBC */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 023ACDBC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 023ACDC0 */ cpu->r[31] = cpu->r[3];
|
|
/* 023ACDC4 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 023ACDC4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 023ACDC8 */ _t3 = cpu->r[31] + 0x0000025Cu;
|
|
/* 023ACDC8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 023ACDCC */ Gambit_fn_023D6FFC(cpu);
|
|
/* 023ACDD0 */ cpu->r[10] = 0x10090000u;
|
|
/* 023ACDD4 */ cpu->r[9] = 0x00000001u;
|
|
/* 023ACDD8 */ _t4 = cpu->r[10] + 0xFFFF82FCu;
|
|
/* 023ACDD8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 023ACDDC */ cpu->r[12] = 0x00000004u;
|
|
/* 023ACDE0 */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 023ACDE0 */ rbrew_write32(cpu->mem, _t5, cpu->r[9]);
|
|
/* 023ACDE4 */ cpu->r[3] = cpu->r[31];
|
|
/* 023ACDE8 */ _t6 = cpu->r[1] + 0x00000010u;
|
|
/* 023ACDE8 */ rbrew_write32(cpu->mem, _t6, cpu->r[12]);
|
|
/* 023ACDEC */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 023ACDF0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 023ACDF4 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023ACDF4 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 023ACDF8 */ Gambit_fn_02791774(cpu);
|
|
/* 023ACDFC */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 023ACDFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 023ACE00 */ cpu->r[0] = cpu->r[0] | 0x00000002u;
|
|
/* 023ACE04 */ cpu->r[3] = 0x101D0000u;
|
|
/* 023ACE08 */ _t9 = cpu->r[31] + 0x00000230u;
|
|
/* 023ACE08 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 023ACE0C */ _t10 = cpu->r[3] + 0xFFFF97C0u;
|
|
/* 023ACE0C */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 023ACE10 */ Gambit_fn_027E57AC(cpu);
|
|
/* 023ACE14 */ _t11 = cpu->r[1] + 0x0000001Cu;
|
|
/* 023ACE14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 023ACE18 */ cpu->lr = cpu->r[0];
|
|
/* 023ACE1C */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 023ACE1C */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 023ACE20 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 023ACE24 */ return;
|
|
L_02699A78: ; // 0x2699a78
|
|
/* 02699A78 */ goto L_023ACDB4;
|
|
}
|
|
|
|
// fn_02699A7C @ 0x2699a7c
|
|
void Gambit_fn_02699A7C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02699A7C: ; // 0x2699a7c
|
|
/* 02699A7C */ cpu->r[0] = cpu->lr;
|
|
/* 02699A80 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02699A80 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02699A80 */ cpu->r[1] = _t0;
|
|
/* 02699A84 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02699A84 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02699A88 */ cpu->r[31] = cpu->r[3];
|
|
/* 02699A8C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02699A8C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02699A90 */ Gambit_fn_023AE5D8(cpu);
|
|
/* 02699A94 */ cpu->r[12] = 0x101D0000u;
|
|
/* 02699A98 */ _t3 = cpu->r[12] + 0xFFFF805Cu;
|
|
/* 02699A98 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02699A9C */ cpu->r[12] = cpu->r[31] + cpu->r[12];
|
|
/* 02699AA0 */ _t4 = cpu->r[12] + 0x00000104u;
|
|
/* 02699AA0 */ cpu->r[11] = rbrew_read8(cpu->mem, _t4);
|
|
/* 02699AA4 */ _t5 = cpu->r[31] + 0x00000030u;
|
|
/* 02699AA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02699AA8 */ cpu->r[12] = rbrew_rlwinm(cpu->r[11], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02699AAC */ _t6 = cpu->r[12] + cpu->r[0];
|
|
/* 02699AAC */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02699AB0 */ _t7 = cpu->r[12] + 0x00000004u;
|
|
/* 02699AB0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02699AB4 */ _t8 = cpu->r[11] + 0x00000000u;
|
|
/* 02699AB4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02699AB8 */ Gambit_fn_0269B590(cpu);
|
|
/* 02699ABC */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02699ABC */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02699AC0 */ cpu->lr = cpu->r[0];
|
|
/* 02699AC4 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02699AC4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02699AC8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02699ACC */ return;
|
|
}
|
|
|
|
// fn_02699A80 @ 0x2699a80
|
|
void Gambit_fn_02699A80(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02699A80: ; // 0x2699a80
|
|
/* 02699A80 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02699A80 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02699A80 */ cpu->r[1] = _t0;
|
|
/* 02699A84 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02699A84 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02699A88 */ cpu->r[31] = cpu->r[3];
|
|
/* 02699A8C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02699A8C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02699A90 */ Gambit_fn_023AE5D8(cpu);
|
|
/* 02699A94 */ cpu->r[12] = 0x101D0000u;
|
|
/* 02699A98 */ _t3 = cpu->r[12] + 0xFFFF805Cu;
|
|
/* 02699A98 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02699A9C */ cpu->r[12] = cpu->r[31] + cpu->r[12];
|
|
/* 02699AA0 */ _t4 = cpu->r[12] + 0x00000104u;
|
|
/* 02699AA0 */ cpu->r[11] = rbrew_read8(cpu->mem, _t4);
|
|
/* 02699AA4 */ _t5 = cpu->r[31] + 0x00000030u;
|
|
/* 02699AA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02699AA8 */ cpu->r[12] = rbrew_rlwinm(cpu->r[11], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02699AAC */ _t6 = cpu->r[12] + cpu->r[0];
|
|
/* 02699AAC */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02699AB0 */ _t7 = cpu->r[12] + 0x00000004u;
|
|
/* 02699AB0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02699AB4 */ _t8 = cpu->r[11] + 0x00000000u;
|
|
/* 02699AB4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02699AB8 */ Gambit_fn_0269B590(cpu);
|
|
/* 02699ABC */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02699ABC */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02699AC0 */ cpu->lr = cpu->r[0];
|
|
/* 02699AC4 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02699AC4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02699AC8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02699ACC */ return;
|
|
}
|
|
|
|
// fn_02699AD0 @ 0x2699ad0
|
|
void Gambit_fn_02699AD0(CPUState* cpu) {
|
|
uint32_t _t0, _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;
|
|
|
|
L_023AD108: ; // 0x23ad108
|
|
/* 023AD108 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 023AD108 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 023AD108 */ cpu->r[1] = _t0;
|
|
/* 023AD10C */ /* nop */
|
|
/* 023AD110 */ cpu->r[0] = cpu->lr;
|
|
/* 023AD114 */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 023AD114 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 023AD118 */ cpu->r[31] = cpu->r[3];
|
|
/* 023AD11C */ _t2 = cpu->r[31] + 0x0000025Cu;
|
|
/* 023AD11C */ cpu->r[3] = rbrew_read32(cpu->mem, _t2);
|
|
/* 023AD120 */ Gambit_fn_023D7680(cpu);
|
|
/* 023AD124 */ _t3 = cpu->r[31] + 0x00000004u;
|
|
/* 023AD124 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 023AD128 */ _t4 = cpu->r[11] + 0x00000154u;
|
|
/* 023AD128 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 023AD12C */ cpu->ctr = cpu->r[0];
|
|
/* 023AD130 */ cpu->r[3] = cpu->r[31];
|
|
/* 023AD134 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 023AD138 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000004u);
|
|
/* 023AD13C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023AD13C */ _t6 = _t5 & 0x00000001u;
|
|
/* 023AD13C */ if (_t6) goto L_023AD140; else goto L_023AD1F4;
|
|
L_023AD140: ; // 0x23ad140
|
|
/* 023AD140 */ _t7 = cpu->r[31] + 0x00000258u;
|
|
/* 023AD140 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 023AD144 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000004u);
|
|
/* 023AD148 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023AD148 */ _t9 = _t8 & 0x00000001u;
|
|
/* 023AD148 */ if (_t9) goto L_023AD1F4; else goto L_023AD14C;
|
|
L_023AD14C: ; // 0x23ad14c
|
|
/* 023AD14C */ cpu->r[12] = 0x00000000u;
|
|
/* 023AD150 */ cpu->r[0] = 0x0000000Fu;
|
|
/* 023AD154 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 023AD158 */ cpu->r[4] = cpu->r[12];
|
|
/* 023AD15C */ cpu->ctr = cpu->r[0];
|
|
/* 023AD160 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
L_023AD164: ; // 0x23ad164
|
|
/* 023AD164 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], 0x00000004u);
|
|
/* 023AD168 */ _t10 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 023AD168 */ _t11 = _t10 & 0x00000001u;
|
|
/* 023AD168 */ if (_t11) goto L_023AD16C; else goto L_023AD19C;
|
|
L_023AD16C: ; // 0x23ad16c
|
|
/* 023AD16C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], 0x00000000u);
|
|
/* 023AD170 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023AD170 */ _t13 = _t12 & 0x00000001u;
|
|
/* 023AD170 */ if (_t13) goto L_023AD1E8; else goto L_023AD174;
|
|
L_023AD174: ; // 0x23ad174
|
|
/* 023AD174 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], 0x00000002u);
|
|
/* 023AD178 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023AD178 */ _t15 = _t14 & 0x00000001u;
|
|
/* 023AD178 */ if (_t15) goto L_023AD1E8; else goto L_023AD17C;
|
|
L_023AD17C: ; // 0x23ad17c
|
|
/* 023AD17C */ _t16 = cpu->r[31] + 0x00000030u;
|
|
/* 023AD17C */ cpu->r[8] = rbrew_read32(cpu->mem, _t16);
|
|
/* 023AD180 */ _t17 = cpu->r[8] + cpu->r[4];
|
|
/* 023AD180 */ cpu->r[9] = rbrew_read32(cpu->mem, _t17);
|
|
/* 023AD184 */ _t18 = cpu->r[9] + 0x00000004u;
|
|
/* 023AD184 */ cpu->r[10] = rbrew_read32(cpu->mem, _t18);
|
|
/* 023AD188 */ _t19 = cpu->r[10] + 0x00000000u;
|
|
/* 023AD188 */ cpu->r[9] = rbrew_read32(cpu->mem, _t19);
|
|
/* 023AD18C */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 023AD18C */ rbrew_write32(cpu->mem, _t20, cpu->r[11]);
|
|
/* 023AD190 */ _t21 = cpu->r[5] + 0x00000000u;
|
|
/* 023AD190 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 023AD194 */ _t22 = cpu->r[9] + 0x0000000Cu;
|
|
/* 023AD194 */ rbrew_write32(cpu->mem, _t22, cpu->r[0]);
|
|
/* 023AD198 */ goto L_023AD1E8;
|
|
L_023AD19C: ; // 0x23ad19c
|
|
/* 023AD19C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], 0x00000004u);
|
|
/* 023AD1A0 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023AD1A0 */ _t24 = _t23 & 0x00000001u;
|
|
/* 023AD1A0 */ if (_t24) goto L_023AD1E8; else goto L_023AD1A4;
|
|
L_023AD1A4: ; // 0x23ad1a4
|
|
/* 023AD1A4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], 0x00000009u);
|
|
/* 023AD1A8 */ _t25 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 023AD1A8 */ _t26 = _t25 & 0x00000001u;
|
|
/* 023AD1A8 */ if (_t26) goto L_023AD1CC; else goto L_023AD1AC;
|
|
L_023AD1AC: ; // 0x23ad1ac
|
|
/* 023AD1AC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], 0x0000000Au);
|
|
/* 023AD1B0 */ _t27 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 023AD1B0 */ _t28 = _t27 & 0x00000001u;
|
|
/* 023AD1B0 */ if (_t28) goto L_023AD1B4; else goto L_023AD1E8;
|
|
L_023AD1B4: ; // 0x23ad1b4
|
|
/* 023AD1B4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], 0x0000000Cu);
|
|
/* 023AD1B8 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023AD1B8 */ _t30 = _t29 & 0x00000001u;
|
|
/* 023AD1B8 */ if (_t30) goto L_023AD1BC; else goto L_023AD1CC;
|
|
L_023AD1BC: ; // 0x23ad1bc
|
|
/* 023AD1BC */ _t31 = cpu->r[31] + 0x000002B0u;
|
|
/* 023AD1BC */ cpu->r[6] = rbrew_read32(cpu->mem, _t31);
|
|
/* 023AD1C0 */ cpu->r[7] = cpu->r[6] + 0xFFFFFFFFu;
|
|
/* 023AD1C4 */ cpu->r[0] = cpu->r[6] - cpu->r[7];
|
|
/* 023AD1C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 023AD1C8 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023AD1C8 */ _t33 = _t32 & 0x00000001u;
|
|
/* 023AD1C8 */ if (_t33) goto L_023AD1E8; else goto L_023AD1CC;
|
|
L_023AD1CC: ; // 0x23ad1cc
|
|
/* 023AD1CC */ _t34 = cpu->r[31] + 0x00000030u;
|
|
/* 023AD1CC */ cpu->r[8] = rbrew_read32(cpu->mem, _t34);
|
|
/* 023AD1D0 */ _t35 = cpu->r[8] + cpu->r[4];
|
|
/* 023AD1D0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t35);
|
|
/* 023AD1D4 */ _t36 = cpu->r[9] + 0x00000004u;
|
|
/* 023AD1D4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t36);
|
|
/* 023AD1D8 */ _t37 = cpu->r[10] + 0x00000000u;
|
|
/* 023AD1D8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t37);
|
|
/* 023AD1DC */ _t38 = cpu->r[1] + 0x00000008u;
|
|
/* 023AD1DC */ rbrew_write32(cpu->mem, _t38, cpu->r[11]);
|
|
/* 023AD1E0 */ _t39 = cpu->r[5] + 0x00000000u;
|
|
/* 023AD1E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t39);
|
|
/* 023AD1E4 */ _t40 = cpu->r[9] + 0x0000000Cu;
|
|
/* 023AD1E4 */ rbrew_write32(cpu->mem, _t40, cpu->r[0]);
|
|
L_023AD1E8: ; // 0x23ad1e8
|
|
/* 023AD1E8 */ cpu->r[4] = cpu->r[4] + 0x00000004u;
|
|
/* 023AD1EC */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 023AD1F0 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 023AD1F0 */ _t41 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 023AD1F0 */ _t42 = _t41 >> (0x00000002u & 31u);
|
|
/* 023AD1F0 */ _t43 = _t42 & 0x00000001u;
|
|
/* 023AD1F0 */ if (_t43) goto L_023AD164; else goto L_023AD1F4;
|
|
L_023AD1F4: ; // 0x23ad1f4
|
|
/* 023AD1F4 */ _t44 = cpu->r[31] + 0x00000004u;
|
|
/* 023AD1F4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t44);
|
|
/* 023AD1F8 */ _t45 = cpu->r[12] + 0x00000154u;
|
|
/* 023AD1F8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t45);
|
|
/* 023AD1FC */ cpu->ctr = cpu->r[6];
|
|
/* 023AD200 */ cpu->r[3] = cpu->r[31];
|
|
/* 023AD204 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 023AD208 */ cpu->r[8] = 0x10090000u;
|
|
/* 023AD20C */ _t46 = cpu->r[31] + 0x00000258u;
|
|
/* 023AD20C */ rbrew_write32(cpu->mem, _t46, cpu->r[3]);
|
|
/* 023AD210 */ cpu->r[0] = 0x00000004u;
|
|
/* 023AD214 */ _t47 = cpu->r[8] + 0xFFFF8314u;
|
|
/* 023AD214 */ cpu->r[10] = rbrew_read32(cpu->mem, _t47);
|
|
/* 023AD218 */ cpu->r[7] = 0x00000006u;
|
|
/* 023AD21C */ _t48 = cpu->r[1] + 0x00000014u;
|
|
/* 023AD21C */ rbrew_write32(cpu->mem, _t48, cpu->r[0]);
|
|
/* 023AD220 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 023AD224 */ _t49 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023AD224 */ rbrew_write32(cpu->mem, _t49, cpu->r[7]);
|
|
/* 023AD228 */ cpu->r[3] = cpu->r[31];
|
|
/* 023AD22C */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 023AD230 */ _t50 = cpu->r[1] + 0x00000010u;
|
|
/* 023AD230 */ rbrew_write32(cpu->mem, _t50, cpu->r[10]);
|
|
/* 023AD234 */ Gambit_fn_02791888(cpu);
|
|
/* 023AD238 */ _t51 = cpu->r[31] + 0x00000230u;
|
|
/* 023AD238 */ cpu->r[11] = rbrew_read32(cpu->mem, _t51);
|
|
/* 023AD23C */ _t52 = cpu->r[31] + 0x0000025Cu;
|
|
/* 023AD23C */ cpu->r[3] = rbrew_read32(cpu->mem, _t52);
|
|
/* 023AD240 */ cpu->r[11] = cpu->r[11] | 0x00000040u;
|
|
/* 023AD244 */ _t53 = cpu->r[31] + 0x00000230u;
|
|
/* 023AD244 */ rbrew_write32(cpu->mem, _t53, cpu->r[11]);
|
|
/* 023AD248 */ Gambit_fn_023D768C(cpu);
|
|
/* 023AD24C */ _t54 = cpu->r[31] + 0x00000258u;
|
|
/* 023AD24C */ cpu->r[12] = rbrew_read32(cpu->mem, _t54);
|
|
/* 023AD250 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000003u);
|
|
/* 023AD254 */ cpu->r[29] = cpu->r[31] + 0x000002C0u;
|
|
/* 023AD258 */ _t55 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023AD258 */ _t56 = _t55 & 0x00000001u;
|
|
/* 023AD258 */ if (_t56) goto L_023AD274; else goto L_023AD25C;
|
|
L_023AD25C: ; // 0x23ad25c
|
|
/* 023AD25C */ cpu->r[30] = 0x101C0000u;
|
|
/* 023AD260 */ _t57 = cpu->r[30] + 0x00006000u;
|
|
/* 023AD260 */ cpu->r[6] = rbrew_read32(cpu->mem, _t57);
|
|
/* 023AD260 */ cpu->r[30] = _t57;
|
|
/* 023AD264 */ _t58 = cpu->r[6] + 0x000002C8u;
|
|
/* 023AD264 */ cpu->r[7] = rbrew_read32(cpu->mem, _t58);
|
|
/* 023AD268 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000001u);
|
|
/* 023AD26C */ _t59 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 023AD26C */ _t60 = _t59 & 0x00000001u;
|
|
/* 023AD26C */ if (_t60) goto L_023AD270; else goto L_023AD304;
|
|
L_023AD270: ; // 0x23ad270
|
|
/* 023AD270 */ goto L_023AD2A4;
|
|
L_023AD274: ; // 0x23ad274
|
|
/* 023AD274 */ cpu->r[8] = 0x00000002u;
|
|
/* 023AD278 */ cpu->r[6] = 0x00000000u;
|
|
/* 023AD27C */ cpu->ctr = cpu->r[8];
|
|
/* 023AD280 */ cpu->r[0] = cpu->r[6];
|
|
L_023AD284: ; // 0x23ad284
|
|
/* 023AD284 */ _t61 = cpu->r[29] + cpu->r[6];
|
|
/* 023AD284 */ rbrew_write8(cpu->mem, _t61, (uint8_t)cpu->r[0]);
|
|
/* 023AD288 */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 023AD28C */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 023AD28C */ _t62 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 023AD28C */ _t63 = _t62 >> (0x00000002u & 31u);
|
|
/* 023AD28C */ _t64 = _t63 & 0x00000001u;
|
|
/* 023AD28C */ if (_t64) goto L_023AD284; else goto L_023AD290;
|
|
L_023AD290: ; // 0x23ad290
|
|
/* 023AD290 */ cpu->r[30] = 0x101C0000u;
|
|
/* 023AD294 */ _t65 = cpu->r[30] + 0x00006000u;
|
|
/* 023AD294 */ cpu->r[6] = rbrew_read32(cpu->mem, _t65);
|
|
/* 023AD294 */ cpu->r[30] = _t65;
|
|
/* 023AD298 */ _t66 = cpu->r[6] + 0x000002C8u;
|
|
/* 023AD298 */ cpu->r[7] = rbrew_read32(cpu->mem, _t66);
|
|
/* 023AD29C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000001u);
|
|
/* 023AD2A0 */ _t67 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 023AD2A0 */ _t68 = _t67 & 0x00000001u;
|
|
/* 023AD2A0 */ if (_t68) goto L_023AD2A4; else goto L_023AD304;
|
|
L_023AD2A4: ; // 0x23ad2a4
|
|
/* 023AD2A4 */ cpu->r[27] = 0x00000000u;
|
|
/* 023AD2A8 */ cpu->r[28] = cpu->r[27];
|
|
L_023AD2AC: ; // 0x23ad2ac
|
|
/* 023AD2AC */ _t69 = cpu->r[29] + cpu->r[27];
|
|
/* 023AD2AC */ cpu->r[8] = rbrew_read8(cpu->mem, _t69);
|
|
/* 023AD2B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 023AD2B4 */ _t70 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023AD2B4 */ _t71 = _t70 & 0x00000001u;
|
|
/* 023AD2B4 */ if (_t71) goto L_023AD2DC; else goto L_023AD2B8;
|
|
L_023AD2B8: ; // 0x23ad2b8
|
|
/* 023AD2B8 */ _t72 = cpu->r[31] + 0x000002A4u;
|
|
/* 023AD2B8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t72);
|
|
/* 023AD2BC */ cpu->r[4] = cpu->r[27];
|
|
/* 023AD2C0 */ Gambit_fn_023B4248(cpu);
|
|
/* 023AD2C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023AD2C8 */ _t73 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023AD2C8 */ _t74 = _t73 & 0x00000001u;
|
|
/* 023AD2C8 */ if (_t74) goto L_023AD2DC; else goto L_023AD2CC;
|
|
L_023AD2CC: ; // 0x23ad2cc
|
|
/* 023AD2CC */ _t75 = cpu->r[29] + cpu->r[27];
|
|
/* 023AD2CC */ rbrew_write8(cpu->mem, _t75, (uint8_t)cpu->r[28]);
|
|
/* 023AD2D0 */ _t76 = cpu->r[31] + 0x000002A4u;
|
|
/* 023AD2D0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t76);
|
|
/* 023AD2D4 */ cpu->r[4] = cpu->r[27];
|
|
/* 023AD2D8 */ Gambit_fn_023B4408(cpu);
|
|
L_023AD2DC: ; // 0x23ad2dc
|
|
/* 023AD2DC */ _t77 = cpu->r[30] + 0x00000000u;
|
|
/* 023AD2DC */ cpu->r[11] = rbrew_read32(cpu->mem, _t77);
|
|
/* 023AD2E0 */ _t78 = cpu->r[11] + 0x000002C8u;
|
|
/* 023AD2E0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t78);
|
|
/* 023AD2E4 */ cpu->r[27] = cpu->r[27] + 0x00000001u;
|
|
/* 023AD2E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], cpu->r[12]);
|
|
/* 023AD2EC */ _t79 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 023AD2EC */ _t80 = _t79 & 0x00000001u;
|
|
/* 023AD2EC */ if (_t80) goto L_023AD2AC; else goto L_023AD2F0;
|
|
L_023AD2F0: ; // 0x23ad2f0
|
|
/* 023AD2F0 */ /* nop */
|
|
/* 023AD2F4 */ _t81 = cpu->r[1] + 0x00000034u;
|
|
/* 023AD2F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t81);
|
|
/* 023AD2F8 */ cpu->lr = cpu->r[0];
|
|
/* 023AD2FC */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 023AD300 */ return;
|
|
L_023AD304: ; // 0x23ad304
|
|
/* 023AD304 */ _t82 = cpu->r[29] + 0x00000000u;
|
|
/* 023AD304 */ cpu->r[0] = rbrew_read8(cpu->mem, _t82);
|
|
/* 023AD308 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 023AD30C */ _t83 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023AD30C */ _t84 = _t83 & 0x00000001u;
|
|
/* 023AD30C */ if (_t84) goto L_023AD338; else goto L_023AD310;
|
|
L_023AD310: ; // 0x23ad310
|
|
/* 023AD310 */ _t85 = cpu->r[31] + 0x000002A4u;
|
|
/* 023AD310 */ cpu->r[3] = rbrew_read32(cpu->mem, _t85);
|
|
/* 023AD314 */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 023AD318 */ Gambit_fn_023B4248(cpu);
|
|
/* 023AD31C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 023AD320 */ _t86 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023AD320 */ _t87 = _t86 & 0x00000001u;
|
|
/* 023AD320 */ if (_t87) goto L_023AD338; else goto L_023AD324;
|
|
L_023AD324: ; // 0x23ad324
|
|
/* 023AD324 */ cpu->r[0] = 0x00000000u;
|
|
/* 023AD328 */ _t88 = cpu->r[29] + 0x00000000u;
|
|
/* 023AD328 */ rbrew_write8(cpu->mem, _t88, (uint8_t)cpu->r[0]);
|
|
/* 023AD32C */ _t89 = cpu->r[31] + 0x000002A4u;
|
|
/* 023AD32C */ cpu->r[3] = rbrew_read32(cpu->mem, _t89);
|
|
/* 023AD330 */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 023AD334 */ Gambit_fn_023B4408(cpu);
|
|
L_023AD338: ; // 0x23ad338
|
|
/* 023AD338 */ /* nop */
|
|
/* 023AD33C */ _t90 = cpu->r[1] + 0x00000034u;
|
|
/* 023AD33C */ cpu->r[0] = rbrew_read32(cpu->mem, _t90);
|
|
/* 023AD340 */ cpu->lr = cpu->r[0];
|
|
/* 023AD344 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 023AD348 */ return;
|
|
L_023AE60C: ; // 0x23ae60c
|
|
/* 023AE60C */ _t91 = cpu->r[3] + 0x000002D4u;
|
|
/* 023AE60C */ cpu->r[12] = rbrew_read32(cpu->mem, _t91);
|
|
/* 023AE610 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 023AE614 */ _t92 = cpu->r[3] + 0x000002D4u;
|
|
/* 023AE614 */ rbrew_write32(cpu->mem, _t92, cpu->r[12]);
|
|
/* 023AE618 */ goto L_023AD108;
|
|
L_02699AD0: ; // 0x2699ad0
|
|
/* 02699AD0 */ goto L_023AE60C;
|
|
}
|
|
|
|
// fn_02699AD4 @ 0x2699ad4
|
|
void Gambit_fn_02699AD4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_023AD098: ; // 0x23ad098
|
|
/* 023AD098 */ cpu->r[0] = cpu->lr;
|
|
/* 023AD09C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 023AD09C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 023AD09C */ cpu->r[1] = _t0;
|
|
/* 023AD0A0 */ cpu->r[11] = 0x00000004u;
|
|
/* 023AD0A4 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 023AD0A4 */ rbrew_write32(cpu->mem, _t1, cpu->r[11]);
|
|
/* 023AD0A8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 023AD0A8 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 023AD0AC */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 023AD0B0 */ cpu->r[12] = 0x10090000u;
|
|
/* 023AD0B4 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 023AD0B4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 023AD0B8 */ cpu->r[0] = 0x00000003u;
|
|
/* 023AD0BC */ _t4 = cpu->r[12] + 0xFFFF830Cu;
|
|
/* 023AD0BC */ cpu->r[10] = rbrew_read32(cpu->mem, _t4);
|
|
/* 023AD0C0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 023AD0C4 */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 023AD0C4 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 023AD0C8 */ cpu->r[31] = cpu->r[3];
|
|
/* 023AD0CC */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023AD0CC */ rbrew_write32(cpu->mem, _t6, cpu->r[10]);
|
|
/* 023AD0D0 */ Gambit_fn_02791774(cpu);
|
|
/* 023AD0D4 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 023AD0D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 023AD0D8 */ _t8 = cpu->r[31] + 0x0000025Cu;
|
|
/* 023AD0D8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 023AD0DC */ cpu->r[0] = cpu->r[0] | 0x00000008u;
|
|
/* 023AD0E0 */ _t9 = cpu->r[31] + 0x00000230u;
|
|
/* 023AD0E0 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 023AD0E4 */ Gambit_fn_023D7658(cpu);
|
|
/* 023AD0E8 */ cpu->r[0] = 0x00000001u;
|
|
/* 023AD0EC */ cpu->r[10] = 0x101D0000u;
|
|
/* 023AD0F0 */ _t10 = cpu->r[10] + 0xFFFF97D0u;
|
|
/* 023AD0F0 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 023AD0F4 */ _t11 = cpu->r[1] + 0x0000001Cu;
|
|
/* 023AD0F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 023AD0F8 */ cpu->lr = cpu->r[0];
|
|
/* 023AD0FC */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 023AD0FC */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 023AD100 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 023AD104 */ return;
|
|
L_02699AD4: ; // 0x2699ad4
|
|
/* 02699AD4 */ goto L_023AD098;
|
|
}
|
|
|
|
// fn_02699AD8 @ 0x2699ad8
|
|
void Gambit_fn_02699AD8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_02699AD8: ; // 0x2699ad8
|
|
/* 02699AD8 */ cpu->r[12] = 0x101D0000u;
|
|
/* 02699ADC */ _t0 = cpu->r[12] + 0xFFFF805Cu;
|
|
/* 02699ADC */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02699AE0 */ cpu->r[11] = cpu->r[3] + cpu->r[12];
|
|
/* 02699AE4 */ _t1 = cpu->r[11] + 0x00000104u;
|
|
/* 02699AE4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t1);
|
|
/* 02699AE8 */ _t2 = cpu->r[3] + 0x00000030u;
|
|
/* 02699AE8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02699AEC */ cpu->r[11] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02699AF0 */ _t3 = cpu->r[11] + cpu->r[12];
|
|
/* 02699AF0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02699AF4 */ _t4 = cpu->r[11] + 0x00000004u;
|
|
/* 02699AF4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02699AF8 */ _t5 = cpu->r[12] + 0x00000000u;
|
|
/* 02699AF8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02699AFC */ goto L_0269A960;
|
|
L_0269A960: ; // 0x269a960
|
|
/* 0269A960 */ _t6 = cpu->r[3] + 0x00000254u;
|
|
/* 0269A960 */ cpu->r[0] = rbrew_read8(cpu->mem, _t6);
|
|
/* 0269A964 */ /* nop */
|
|
/* 0269A968 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000004u);
|
|
/* 0269A96C */ _t7 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0269A96C */ _t8 = _t7 & 0x00000001u;
|
|
/* 0269A96C */ if (_t8) goto L_0269A980; else goto L_0269A970;
|
|
L_0269A970: ; // 0x269a970
|
|
/* 0269A970 */ cpu->r[12] = 0x100E0000u;
|
|
/* 0269A974 */ cpu->r[12] = cpu->r[12] + 0x000042E0u;
|
|
/* 0269A978 */ _t9 = cpu->r[12] + cpu->r[0];
|
|
/* 0269A978 */ cpu->r[3] = rbrew_read8(cpu->mem, _t9);
|
|
/* 0269A97C */ return;
|
|
L_0269A980: ; // 0x269a980
|
|
/* 0269A980 */ cpu->r[3] = 0xFFFFFFFFu;
|
|
/* 0269A984 */ return;
|
|
}
|
|
|
|
// fn_02699B00 @ 0x2699b00
|
|
void Gambit_fn_02699B00(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02699B00: ; // 0x2699b00
|
|
/* 02699B00 */ cpu->r[5] = 0x00000001u;
|
|
/* 02699B04 */ cpu->r[4] = 0x00000000u;
|
|
/* 02699B08 */ goto L_02699F24;
|
|
L_02699F24: ; // 0x2699f24
|
|
/* 02699F24 */ cpu->r[0] = cpu->lr;
|
|
/* 02699F28 */ cpu->r[12] = 0x101D0000u;
|
|
/* 02699F2C */ cpu->r[7] = 0x026A0000u;
|
|
/* 02699F30 */ cpu->r[6] = 0x026A0000u;
|
|
/* 02699F34 */ cpu->r[10] = 0x101D0000u;
|
|
/* 02699F38 */ cpu->r[7] = cpu->r[7] + 0xFFFF9E3Cu;
|
|
/* 02699F3C */ cpu->r[6] = cpu->r[6] + 0xFFFF9E3Cu;
|
|
/* 02699F40 */ cpu->r[10] = cpu->r[10] + 0xFFFF8060u;
|
|
/* 02699F44 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 02699F44 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 02699F48 */ cpu->r[0] = 0x101D0000u;
|
|
/* 02699F4C */ _t1 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02699F4C */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 02699F4C */ cpu->r[1] = _t1;
|
|
/* 02699F50 */ cpu->r[0] = cpu->r[0] + 0xFFFF805Cu;
|
|
/* 02699F54 */ _t2 = cpu->r[12] + 0xFFFF9034u;
|
|
/* 02699F54 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02699F58 */ cpu->r[8] = 0x00000000u;
|
|
/* 02699F5C */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 02699F5C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02699F60 */ cpu->r[9] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02699F64 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02699F64 */ rbrew_write32(cpu->mem, _t4, cpu->r[12]);
|
|
/* 02699F68 */ Gambit_fn_02791B10(cpu);
|
|
/* 02699F6C */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 02699F6C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02699F70 */ cpu->lr = cpu->r[0];
|
|
/* 02699F74 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02699F78 */ return;
|
|
}
|
|
|
|
// fn_02699B0C @ 0x2699b0c
|
|
void Gambit_fn_02699B0C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02699B0C: ; // 0x2699b0c
|
|
/* 02699B0C */ cpu->r[5] = 0xFFFFFFFDu;
|
|
/* 02699B10 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02699B10 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02699B10 */ cpu->r[1] = _t0;
|
|
/* 02699B14 */ cpu->r[10] = 0x101F0000u;
|
|
/* 02699B18 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 02699B1C */ _t1 = cpu->r[10] + 0xFFFFD988u;
|
|
/* 02699B1C */ rbrew_write32(cpu->mem, _t1, cpu->r[5]);
|
|
/* 02699B1C */ cpu->r[10] = _t1;
|
|
/* 02699B20 */ cpu->r[7] = 0x101F0000u;
|
|
/* 02699B24 */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 02699B24 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 02699B28 */ cpu->r[9] = 0xFFFFFFFEu;
|
|
/* 02699B2C */ cpu->r[8] = 0x101F0000u;
|
|
/* 02699B30 */ _t3 = cpu->r[7] + 0xFFFFD998u;
|
|
/* 02699B30 */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 02699B30 */ cpu->r[7] = _t3;
|
|
/* 02699B34 */ _t4 = cpu->r[8] + 0xFFFFD990u;
|
|
/* 02699B34 */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
/* 02699B34 */ cpu->r[8] = _t4;
|
|
/* 02699B38 */ cpu->r[0] = 0x00000002u;
|
|
/* 02699B3C */ _t5 = cpu->r[8] + 0x00000004u;
|
|
/* 02699B3C */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 02699B40 */ cpu->r[8] = 0x101F0000u;
|
|
/* 02699B44 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 02699B44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02699B48 */ cpu->r[12] = 0x101F0000u;
|
|
/* 02699B4C */ _t7 = cpu->r[7] + 0x00000004u;
|
|
/* 02699B4C */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 02699B50 */ _t8 = cpu->r[8] + 0xFFFFD9A8u;
|
|
/* 02699B50 */ rbrew_write32(cpu->mem, _t8, cpu->r[5]);
|
|
/* 02699B50 */ cpu->r[8] = _t8;
|
|
/* 02699B54 */ _t9 = cpu->r[12] + 0xFFFFD9A0u;
|
|
/* 02699B54 */ rbrew_write32(cpu->mem, _t9, cpu->r[5]);
|
|
/* 02699B54 */ cpu->r[12] = _t9;
|
|
/* 02699B58 */ _t10 = cpu->r[12] + 0x00000004u;
|
|
/* 02699B58 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 02699B5C */ cpu->r[0] = 0x00000004u;
|
|
/* 02699B60 */ _t11 = cpu->r[8] + 0x00000004u;
|
|
/* 02699B60 */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 02699B64 */ cpu->r[11] = 0x101F0000u;
|
|
/* 02699B68 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02699B68 */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02699B6C */ _t13 = cpu->r[11] + 0xFFFFD9B0u;
|
|
/* 02699B6C */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02699B70 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02699B74 */ return;
|
|
}
|
|
|
|
// fn_02699B10 @ 0x2699b10
|
|
void Gambit_fn_02699B10(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02699B10: ; // 0x2699b10
|
|
/* 02699B10 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02699B10 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02699B10 */ cpu->r[1] = _t0;
|
|
/* 02699B14 */ cpu->r[10] = 0x101F0000u;
|
|
/* 02699B18 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 02699B1C */ _t1 = cpu->r[10] + 0xFFFFD988u;
|
|
/* 02699B1C */ rbrew_write32(cpu->mem, _t1, cpu->r[5]);
|
|
/* 02699B1C */ cpu->r[10] = _t1;
|
|
/* 02699B20 */ cpu->r[7] = 0x101F0000u;
|
|
/* 02699B24 */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 02699B24 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 02699B28 */ cpu->r[9] = 0xFFFFFFFEu;
|
|
/* 02699B2C */ cpu->r[8] = 0x101F0000u;
|
|
/* 02699B30 */ _t3 = cpu->r[7] + 0xFFFFD998u;
|
|
/* 02699B30 */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 02699B30 */ cpu->r[7] = _t3;
|
|
/* 02699B34 */ _t4 = cpu->r[8] + 0xFFFFD990u;
|
|
/* 02699B34 */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
/* 02699B34 */ cpu->r[8] = _t4;
|
|
/* 02699B38 */ cpu->r[0] = 0x00000002u;
|
|
/* 02699B3C */ _t5 = cpu->r[8] + 0x00000004u;
|
|
/* 02699B3C */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 02699B40 */ cpu->r[8] = 0x101F0000u;
|
|
/* 02699B44 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 02699B44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02699B48 */ cpu->r[12] = 0x101F0000u;
|
|
/* 02699B4C */ _t7 = cpu->r[7] + 0x00000004u;
|
|
/* 02699B4C */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 02699B50 */ _t8 = cpu->r[8] + 0xFFFFD9A8u;
|
|
/* 02699B50 */ rbrew_write32(cpu->mem, _t8, cpu->r[5]);
|
|
/* 02699B50 */ cpu->r[8] = _t8;
|
|
/* 02699B54 */ _t9 = cpu->r[12] + 0xFFFFD9A0u;
|
|
/* 02699B54 */ rbrew_write32(cpu->mem, _t9, cpu->r[5]);
|
|
/* 02699B54 */ cpu->r[12] = _t9;
|
|
/* 02699B58 */ _t10 = cpu->r[12] + 0x00000004u;
|
|
/* 02699B58 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 02699B5C */ cpu->r[0] = 0x00000004u;
|
|
/* 02699B60 */ _t11 = cpu->r[8] + 0x00000004u;
|
|
/* 02699B60 */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 02699B64 */ cpu->r[11] = 0x101F0000u;
|
|
/* 02699B68 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02699B68 */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02699B6C */ _t13 = cpu->r[11] + 0xFFFFD9B0u;
|
|
/* 02699B6C */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02699B70 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02699B74 */ return;
|
|
}
|
|
|
|
// fn_02699B78 @ 0x2699b78
|
|
void Gambit_fn_02699B78(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_02699B78: ; // 0x2699b78
|
|
/* 02699B78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02699B7C */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02699B7C */ _t1 = _t0 & 0x00000001u;
|
|
/* 02699B7C */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02699B7C */ goto L_02699B80;
|
|
L_02699B80: ; // 0x2699b80
|
|
/* 02699B80 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02699B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02699B84 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02699B84 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02699B84 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02699B84 */ goto L_02699B88;
|
|
L_02699B88: ; // 0x2699b88
|
|
/* 02699B88 */ 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_02699B8C @ 0x2699b8c
|
|
void Gambit_fn_02699B8C(CPUState* cpu) {
|
|
L_02699B8C: ; // 0x2699b8c
|
|
/* 02699B8C */ return;
|
|
}
|
|
|
|
// fn_02699B90 @ 0x2699b90
|
|
void Gambit_fn_02699B90(CPUState* cpu) {
|
|
L_02699B90: ; // 0x2699b90
|
|
/* 02699B90 */ return;
|
|
}
|
|
|
|
// fn_02699B94 @ 0x2699b94
|
|
void Gambit_fn_02699B94(CPUState* cpu) {
|
|
L_02699B94: ; // 0x2699b94
|
|
/* 02699B94 */ return;
|
|
}
|
|
|
|
// fn_02699B98 @ 0x2699b98
|
|
void Gambit_fn_02699B98(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_02699B98: ; // 0x2699b98
|
|
/* 02699B98 */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 02699B98 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02699B9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02699BA0 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02699BA0 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02699BA0 */ if (_t2) goto L_02699BAC; else goto L_02699BA4;
|
|
L_02699BA4: ; // 0x2699ba4
|
|
/* 02699BA4 */ cpu->r[3] = cpu->r[12] + 0x00000034u;
|
|
/* 02699BA8 */ return;
|
|
L_02699BAC: ; // 0x2699bac
|
|
/* 02699BAC */ cpu->r[3] = 0x00000000u;
|
|
/* 02699BB0 */ return;
|
|
}
|
|
|
|
// fn_02699BB4 @ 0x2699bb4
|
|
void Gambit_fn_02699BB4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_02699BB4: ; // 0x2699bb4
|
|
/* 02699BB4 */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 02699BB4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02699BB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02699BBC */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02699BBC */ _t2 = _t1 & 0x00000001u;
|
|
/* 02699BBC */ if (_t2) goto L_02699BC8; else goto L_02699BC0;
|
|
L_02699BC0: ; // 0x2699bc0
|
|
/* 02699BC0 */ cpu->r[3] = cpu->r[12] + 0x00000064u;
|
|
/* 02699BC4 */ return;
|
|
L_02699BC8: ; // 0x2699bc8
|
|
/* 02699BC8 */ cpu->r[3] = 0x00000000u;
|
|
/* 02699BCC */ return;
|
|
}
|
|
|
|
// fn_02699BD0 @ 0x2699bd0
|
|
void Gambit_fn_02699BD0(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02699BD0: ; // 0x2699bd0
|
|
/* 02699BD0 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02699BD0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02699BD4 */ _t1 = cpu->r[12] + 0x00000114u;
|
|
/* 02699BD4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02699BD8 */ cpu->ctr = cpu->r[0];
|
|
/* 02699BDC */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02699BE0 @ 0x2699be0
|
|
void Gambit_fn_02699BE0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02699BE0: ; // 0x2699be0
|
|
/* 02699BE0 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02699BE0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02699BE4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02699BE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02699BE8 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02699BE8 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02699BE8 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 02699BE8 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02699BE8 */ goto L_02699BEC;
|
|
L_02699BEC: ; // 0x2699bec
|
|
/* 02699BEC */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 02699BEC */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02699BF0 */ _t5 = cpu->r[12] + 0x00000044u;
|
|
/* 02699BF0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02699BF4 */ cpu->ctr = cpu->r[12];
|
|
/* 02699BF8 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02699BFC @ 0x2699bfc
|
|
void Gambit_fn_02699BFC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02699BFC: ; // 0x2699bfc
|
|
/* 02699BFC */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02699BFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02699C00 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02699C00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02699C04 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02699C04 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02699C04 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 02699C04 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02699C04 */ goto L_02699C08;
|
|
L_02699C08: ; // 0x2699c08
|
|
/* 02699C08 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 02699C08 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02699C0C */ _t5 = cpu->r[12] + 0x0000004Cu;
|
|
/* 02699C0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02699C10 */ cpu->ctr = cpu->r[0];
|
|
/* 02699C14 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02699C18 @ 0x2699c18
|
|
void Gambit_fn_02699C18(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02699C18: ; // 0x2699c18
|
|
/* 02699C18 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02699C18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02699C1C */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Eu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02699C1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02699C20 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02699C20 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02699C20 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 02699C20 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02699C20 */ goto L_02699C24;
|
|
L_02699C24: ; // 0x2699c24
|
|
/* 02699C24 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 02699C24 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02699C28 */ _t5 = cpu->r[12] + 0x00000054u;
|
|
/* 02699C28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02699C2C */ cpu->ctr = cpu->r[0];
|
|
/* 02699C30 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02699C34 @ 0x2699c34
|
|
void Gambit_fn_02699C34(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02699C34: ; // 0x2699c34
|
|
/* 02699C34 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02699C34 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02699C38 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Du, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02699C38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02699C3C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02699C3C */ _t2 = _t1 & 0x00000001u;
|
|
/* 02699C3C */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 02699C3C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02699C3C */ goto L_02699C40;
|
|
L_02699C40: ; // 0x2699c40
|
|
/* 02699C40 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 02699C40 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02699C44 */ _t5 = cpu->r[12] + 0x0000005Cu;
|
|
/* 02699C44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02699C48 */ cpu->ctr = cpu->r[0];
|
|
/* 02699C4C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02699C50 @ 0x2699c50
|
|
void Gambit_fn_02699C50(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02699C50: ; // 0x2699c50
|
|
/* 02699C50 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02699C50 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02699C54 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Cu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02699C54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02699C58 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02699C58 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02699C58 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 02699C58 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02699C58 */ goto L_02699C5C;
|
|
L_02699C5C: ; // 0x2699c5c
|
|
/* 02699C5C */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 02699C5C */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02699C60 */ _t5 = cpu->r[12] + 0x00000064u;
|
|
/* 02699C60 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02699C64 */ cpu->ctr = cpu->r[0];
|
|
/* 02699C68 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02699C6C @ 0x2699c6c
|
|
void Gambit_fn_02699C6C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02699C6C: ; // 0x2699c6c
|
|
/* 02699C6C */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02699C6C */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02699C70 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02699C70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02699C74 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02699C74 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02699C74 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 02699C74 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02699C74 */ goto L_02699C78;
|
|
L_02699C78: ; // 0x2699c78
|
|
/* 02699C78 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 02699C78 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02699C7C */ _t5 = cpu->r[11] + 0x0000006Cu;
|
|
/* 02699C7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02699C80 */ cpu->ctr = cpu->r[0];
|
|
/* 02699C84 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02699C88 @ 0x2699c88
|
|
void Gambit_fn_02699C88(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02699C88: ; // 0x2699c88
|
|
/* 02699C88 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02699C88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02699C8C */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Au, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02699C8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02699C90 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02699C90 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02699C90 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 02699C90 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02699C90 */ goto L_02699C94;
|
|
L_02699C94: ; // 0x2699c94
|
|
/* 02699C94 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 02699C94 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02699C98 */ _t5 = cpu->r[11] + 0x00000074u;
|
|
/* 02699C98 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02699C9C */ cpu->ctr = cpu->r[0];
|
|
/* 02699CA0 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02699CA4 @ 0x2699ca4
|
|
void Gambit_fn_02699CA4(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02699CA4: ; // 0x2699ca4
|
|
/* 02699CA4 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02699CA4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02699CA8 */ _t1 = cpu->r[12] + 0x00000024u;
|
|
/* 02699CA8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02699CAC */ cpu->ctr = cpu->r[0];
|
|
/* 02699CB0 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02699CB4 @ 0x2699cb4
|
|
void Gambit_fn_02699CB4(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02699CB4: ; // 0x2699cb4
|
|
/* 02699CB4 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02699CB4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02699CB8 */ _t1 = cpu->r[12] + 0x0000002Cu;
|
|
/* 02699CB8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02699CBC */ cpu->ctr = cpu->r[0];
|
|
/* 02699CC0 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02699CC4 @ 0x2699cc4
|
|
void Gambit_fn_02699CC4(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02699CC4: ; // 0x2699cc4
|
|
/* 02699CC4 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02699CC4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02699CC8 */ _t1 = cpu->r[12] + 0x00000034u;
|
|
/* 02699CC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02699CCC */ cpu->ctr = cpu->r[0];
|
|
/* 02699CD0 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02699CD4 @ 0x2699cd4
|
|
void Gambit_fn_02699CD4(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02699CD4: ; // 0x2699cd4
|
|
/* 02699CD4 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02699CD4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02699CD8 */ _t1 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02699CD8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02699CDC */ cpu->ctr = cpu->r[0];
|
|
/* 02699CE0 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02699CE4 @ 0x2699ce4
|
|
void Gambit_fn_02699CE4(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02699CE4: ; // 0x2699ce4
|
|
/* 02699CE4 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02699CE4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02699CE8 */ _t1 = cpu->r[12] + 0x0000007Cu;
|
|
/* 02699CE8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02699CEC */ cpu->ctr = cpu->r[0];
|
|
/* 02699CF0 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02699CF4 @ 0x2699cf4
|
|
void Gambit_fn_02699CF4(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02699CF4: ; // 0x2699cf4
|
|
/* 02699CF4 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02699CF4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02699CF8 */ _t1 = cpu->r[12] + 0x00000084u;
|
|
/* 02699CF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02699CFC */ cpu->ctr = cpu->r[0];
|
|
/* 02699D00 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02699D04 @ 0x2699d04
|
|
void Gambit_fn_02699D04(CPUState* cpu) {
|
|
L_02699D04: ; // 0x2699d04
|
|
/* 02699D04 */ return;
|
|
}
|
|
|
|
// fn_02699D08 @ 0x2699d08
|
|
void Gambit_fn_02699D08(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02699D08: ; // 0x2699d08
|
|
/* 02699D08 */ cpu->r[0] = cpu->lr;
|
|
/* 02699D0C */ cpu->r[12] = 0x100E0000u;
|
|
/* 02699D10 */ cpu->r[10] = 0x00000007u;
|
|
/* 02699D14 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02699D14 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02699D14 */ cpu->r[1] = _t0;
|
|
/* 02699D18 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02699D18 */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 02699D1C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02699D1C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02699D20 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02699D24 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02699D24 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02699D28 */ cpu->r[0] = 0x00000004u;
|
|
/* 02699D2C */ _t4 = cpu->r[12] + 0x00003F38u;
|
|
/* 02699D2C */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02699D30 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02699D34 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 02699D34 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02699D38 */ cpu->r[31] = cpu->r[3];
|
|
/* 02699D3C */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02699D3C */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 02699D40 */ Gambit_fn_02791888(cpu);
|
|
/* 02699D44 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 02699D44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02699D48 */ cpu->r[0] = cpu->r[0] | 0x00000080u;
|
|
/* 02699D4C */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 02699D4C */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 02699D50 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02699D50 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02699D54 */ cpu->lr = cpu->r[0];
|
|
/* 02699D58 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02699D58 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02699D5C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02699D60 */ return;
|
|
}
|
|
|
|
// fn_02699D14 @ 0x2699d14
|
|
void Gambit_fn_02699D14(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02699D14: ; // 0x2699d14
|
|
/* 02699D14 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02699D14 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02699D14 */ cpu->r[1] = _t0;
|
|
/* 02699D18 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02699D18 */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 02699D1C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02699D1C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02699D20 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02699D24 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02699D24 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02699D28 */ cpu->r[0] = 0x00000004u;
|
|
/* 02699D2C */ _t4 = cpu->r[12] + 0x00003F38u;
|
|
/* 02699D2C */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02699D30 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02699D34 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 02699D34 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02699D38 */ cpu->r[31] = cpu->r[3];
|
|
/* 02699D3C */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02699D3C */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 02699D40 */ Gambit_fn_02791888(cpu);
|
|
/* 02699D44 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 02699D44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02699D48 */ cpu->r[0] = cpu->r[0] | 0x00000080u;
|
|
/* 02699D4C */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 02699D4C */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 02699D50 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02699D50 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02699D54 */ cpu->lr = cpu->r[0];
|
|
/* 02699D58 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02699D58 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02699D5C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02699D60 */ return;
|
|
}
|
|
|
|
// fn_02699D64 @ 0x2699d64
|
|
void Gambit_fn_02699D64(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02699D64: ; // 0x2699d64
|
|
/* 02699D64 */ cpu->r[0] = cpu->lr;
|
|
/* 02699D68 */ cpu->r[12] = 0x100E0000u;
|
|
/* 02699D6C */ cpu->r[10] = 0x00000009u;
|
|
/* 02699D70 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02699D70 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02699D70 */ cpu->r[1] = _t0;
|
|
/* 02699D74 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02699D74 */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 02699D78 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02699D78 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02699D7C */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02699D80 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02699D80 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02699D84 */ cpu->r[0] = 0x00000004u;
|
|
/* 02699D88 */ _t4 = cpu->r[12] + 0x00003F40u;
|
|
/* 02699D88 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02699D8C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02699D90 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 02699D90 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02699D94 */ cpu->r[31] = cpu->r[3];
|
|
/* 02699D98 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02699D98 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 02699D9C */ Gambit_fn_02791888(cpu);
|
|
/* 02699DA0 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 02699DA0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02699DA4 */ cpu->r[0] = cpu->r[0] | 0x00000200u;
|
|
/* 02699DA8 */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 02699DA8 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 02699DAC */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02699DAC */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02699DB0 */ cpu->lr = cpu->r[0];
|
|
/* 02699DB4 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02699DB4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02699DB8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02699DBC */ return;
|
|
}
|
|
|
|
// fn_02699D70 @ 0x2699d70
|
|
void Gambit_fn_02699D70(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02699D70: ; // 0x2699d70
|
|
/* 02699D70 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02699D70 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02699D70 */ cpu->r[1] = _t0;
|
|
/* 02699D74 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02699D74 */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 02699D78 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02699D78 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02699D7C */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02699D80 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02699D80 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02699D84 */ cpu->r[0] = 0x00000004u;
|
|
/* 02699D88 */ _t4 = cpu->r[12] + 0x00003F40u;
|
|
/* 02699D88 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02699D8C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02699D90 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 02699D90 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02699D94 */ cpu->r[31] = cpu->r[3];
|
|
/* 02699D98 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02699D98 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 02699D9C */ Gambit_fn_02791888(cpu);
|
|
/* 02699DA0 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 02699DA0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02699DA4 */ cpu->r[0] = cpu->r[0] | 0x00000200u;
|
|
/* 02699DA8 */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 02699DA8 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 02699DAC */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02699DAC */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02699DB0 */ cpu->lr = cpu->r[0];
|
|
/* 02699DB4 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02699DB4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02699DB8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02699DBC */ return;
|
|
}
|
|
|
|
// fn_02699DC0 @ 0x2699dc0
|
|
void Gambit_fn_02699DC0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_02699DC0: ; // 0x2699dc0
|
|
/* 02699DC0 */ cpu->r[0] = cpu->lr;
|
|
/* 02699DC4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02699DC4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02699DC4 */ cpu->r[1] = _t0;
|
|
/* 02699DC8 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02699DC8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02699DCC */ cpu->r[31] = cpu->r[3];
|
|
/* 02699DD0 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02699DD0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02699DD4 */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02699DD4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02699DD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000003u);
|
|
/* 02699DDC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02699DDC */ _t5 = _t4 & 0x00000001u;
|
|
/* 02699DDC */ if (_t5) goto L_02699DE0; else goto L_02699DFC;
|
|
L_02699DE0: ; // 0x2699de0
|
|
/* 02699DE0 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 02699DE0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02699DE4 */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 02699DE4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02699DE8 */ cpu->ctr = cpu->r[0];
|
|
/* 02699DEC */ cpu->r[3] = cpu->r[31];
|
|
/* 02699DF0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02699DF4 */ cpu->r[10] = 0x00000002u;
|
|
/* 02699DF8 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02699DF8 */ rbrew_write32(cpu->mem, _t8, cpu->r[10]);
|
|
L_02699DFC: ; // 0x2699dfc
|
|
/* 02699DFC */ cpu->r[0] = 0x00000005u;
|
|
/* 02699E00 */ cpu->r[12] = 0x100E0000u;
|
|
/* 02699E04 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 02699E04 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 02699E08 */ _t10 = cpu->r[12] + 0x00003F48u;
|
|
/* 02699E08 */ cpu->r[11] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02699E08 */ cpu->r[12] = _t10;
|
|
/* 02699E0C */ _t11 = cpu->r[12] + 0x00000004u;
|
|
/* 02699E0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02699E10 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02699E14 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02699E14 */ rbrew_write32(cpu->mem, _t12, cpu->r[11]);
|
|
/* 02699E18 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02699E1C */ cpu->r[3] = cpu->r[31];
|
|
/* 02699E20 */ _t13 = cpu->r[1] + 0x00000010u;
|
|
/* 02699E20 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02699E24 */ Gambit_fn_02791888(cpu);
|
|
/* 02699E28 */ _t14 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02699E28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02699E2C */ cpu->lr = cpu->r[0];
|
|
/* 02699E30 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 02699E30 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02699E34 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02699E38 */ return;
|
|
}
|
|
|
|
// fn_02699DC4 @ 0x2699dc4
|
|
void Gambit_fn_02699DC4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_02699DC4: ; // 0x2699dc4
|
|
/* 02699DC4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02699DC4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02699DC4 */ cpu->r[1] = _t0;
|
|
/* 02699DC8 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02699DC8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02699DCC */ cpu->r[31] = cpu->r[3];
|
|
/* 02699DD0 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02699DD0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02699DD4 */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02699DD4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02699DD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000003u);
|
|
/* 02699DDC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02699DDC */ _t5 = _t4 & 0x00000001u;
|
|
/* 02699DDC */ if (_t5) goto L_02699DE0; else goto L_02699DFC;
|
|
L_02699DE0: ; // 0x2699de0
|
|
/* 02699DE0 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 02699DE0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02699DE4 */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 02699DE4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02699DE8 */ cpu->ctr = cpu->r[0];
|
|
/* 02699DEC */ cpu->r[3] = cpu->r[31];
|
|
/* 02699DF0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02699DF4 */ cpu->r[10] = 0x00000002u;
|
|
/* 02699DF8 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02699DF8 */ rbrew_write32(cpu->mem, _t8, cpu->r[10]);
|
|
L_02699DFC: ; // 0x2699dfc
|
|
/* 02699DFC */ cpu->r[0] = 0x00000005u;
|
|
/* 02699E00 */ cpu->r[12] = 0x100E0000u;
|
|
/* 02699E04 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 02699E04 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 02699E08 */ _t10 = cpu->r[12] + 0x00003F48u;
|
|
/* 02699E08 */ cpu->r[11] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02699E08 */ cpu->r[12] = _t10;
|
|
/* 02699E0C */ _t11 = cpu->r[12] + 0x00000004u;
|
|
/* 02699E0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02699E10 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02699E14 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02699E14 */ rbrew_write32(cpu->mem, _t12, cpu->r[11]);
|
|
/* 02699E18 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02699E1C */ cpu->r[3] = cpu->r[31];
|
|
/* 02699E20 */ _t13 = cpu->r[1] + 0x00000010u;
|
|
/* 02699E20 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02699E24 */ Gambit_fn_02791888(cpu);
|
|
/* 02699E28 */ _t14 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02699E28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02699E2C */ cpu->lr = cpu->r[0];
|
|
/* 02699E30 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 02699E30 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02699E34 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02699E38 */ return;
|
|
}
|
|
|
|
// fn_02699E44 @ 0x2699e44
|
|
void Gambit_fn_02699E44(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02699E44: ; // 0x2699e44
|
|
/* 02699E44 */ _t0 = cpu->r[3] + 0x00000258u;
|
|
/* 02699E44 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02699E48 */ return;
|
|
}
|
|
|
|
// fn_02699E4C @ 0x2699e4c
|
|
void Gambit_fn_02699E4C(CPUState* cpu) {
|
|
L_02699E4C: ; // 0x2699e4c
|
|
/* 02699E4C */ cpu->r[3] = 0x100E0000u;
|
|
/* 02699E50 */ cpu->r[3] = cpu->r[3] + 0x00003F98u;
|
|
/* 02699E54 */ return;
|
|
}
|
|
|
|
// fn_02699E58 @ 0x2699e58
|
|
void Gambit_fn_02699E58(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02699E58: ; // 0x2699e58
|
|
/* 02699E58 */ cpu->r[12] = 0x101D0000u;
|
|
/* 02699E5C */ _t0 = cpu->r[12] + 0x000004D4u;
|
|
/* 02699E5C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02699E60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02699E64 */ cpu->r[12] = 0x101D0000u;
|
|
/* 02699E68 */ cpu->r[12] = cpu->r[12] + 0x00000E54u;
|
|
/* 02699E6C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02699E6C */ _t2 = _t1 & 0x00000001u;
|
|
/* 02699E6C */ if (_t2) goto L_02699E70; else goto L_02699E88;
|
|
L_02699E70: ; // 0x2699e70
|
|
/* 02699E70 */ cpu->r[0] = 0x100E0000u;
|
|
/* 02699E74 */ cpu->r[9] = 0x00000001u;
|
|
/* 02699E78 */ cpu->r[8] = 0x101D0000u;
|
|
/* 02699E7C */ cpu->r[0] = cpu->r[0] + 0x00003F88u;
|
|
/* 02699E80 */ _t3 = cpu->r[8] + 0x000004D4u;
|
|
/* 02699E80 */ rbrew_write32(cpu->mem, _t3, cpu->r[9]);
|
|
/* 02699E84 */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 02699E84 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
L_02699E88: ; // 0x2699e88
|
|
/* 02699E88 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 02699E8C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02699E8C */ _t6 = _t5 & 0x00000001u;
|
|
/* 02699E8C */ if (_t6) goto L_02699E90; else goto L_02699E98;
|
|
L_02699E90: ; // 0x2699e90
|
|
/* 02699E90 */ cpu->r[3] = 0x00000001u;
|
|
/* 02699E94 */ return;
|
|
L_02699E98: ; // 0x2699e98
|
|
/* 02699E98 */ cpu->r[11] = 0x101D0000u;
|
|
/* 02699E9C */ _t7 = cpu->r[11] + 0xFFFFD9BCu;
|
|
/* 02699E9C */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02699E9C */ cpu->r[11] = _t7;
|
|
/* 02699EA0 */ cpu->r[10] = 0x101D0000u;
|
|
/* 02699EA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02699EA8 */ cpu->r[10] = cpu->r[10] + 0xFFFFDB18u;
|
|
/* 02699EAC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02699EAC */ _t9 = _t8 & 0x00000001u;
|
|
/* 02699EAC */ if (_t9) goto L_02699EB0; else goto L_02699EC4;
|
|
L_02699EB0: ; // 0x2699eb0
|
|
/* 02699EB0 */ cpu->r[12] = 0x100E0000u;
|
|
/* 02699EB4 */ cpu->r[9] = 0x00000001u;
|
|
/* 02699EB8 */ cpu->r[12] = cpu->r[12] + 0x00003F78u;
|
|
/* 02699EBC */ _t10 = cpu->r[11] + 0x00000000u;
|
|
/* 02699EBC */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 02699EC0 */ _t11 = cpu->r[10] + 0x00000000u;
|
|
/* 02699EC0 */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
L_02699EC4: ; // 0x2699ec4
|
|
/* 02699EC4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]);
|
|
/* 02699EC8 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02699EC8 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02699EC8 */ if (_t13) goto L_02699ECC; else goto L_02699ED4;
|
|
L_02699ECC: ; // 0x2699ecc
|
|
/* 02699ECC */ cpu->r[0] = 0x00000001u;
|
|
/* 02699ED0 */ goto L_02699F0C;
|
|
L_02699ED4: ; // 0x2699ed4
|
|
/* 02699ED4 */ cpu->r[8] = 0x101D0000u;
|
|
/* 02699ED8 */ _t14 = cpu->r[8] + 0xFFFFD4E0u;
|
|
/* 02699ED8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02699ED8 */ cpu->r[8] = _t14;
|
|
/* 02699EDC */ cpu->r[11] = 0x101D0000u;
|
|
/* 02699EE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02699EE4 */ cpu->r[11] = cpu->r[11] + 0xFFFFD4E4u;
|
|
/* 02699EE8 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02699EE8 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02699EE8 */ if (_t16) goto L_02699EEC; else goto L_02699F00;
|
|
L_02699EEC: ; // 0x2699eec
|
|
/* 02699EEC */ cpu->r[10] = 0x100E0000u;
|
|
/* 02699EF0 */ cpu->r[9] = 0x00000001u;
|
|
/* 02699EF4 */ cpu->r[10] = cpu->r[10] + 0x00003F50u;
|
|
/* 02699EF8 */ _t17 = cpu->r[8] + 0x00000000u;
|
|
/* 02699EF8 */ rbrew_write32(cpu->mem, _t17, cpu->r[9]);
|
|
/* 02699EFC */ _t18 = cpu->r[11] + 0x00000000u;
|
|
/* 02699EFC */ rbrew_write32(cpu->mem, _t18, cpu->r[10]);
|
|
L_02699F00: ; // 0x2699f00
|
|
/* 02699F00 */ cpu->r[12] = cpu->r[4] ^ cpu->r[11];
|
|
/* 02699F04 */ cpu->r[0] = rbrew_clz32(cpu->r[12]);
|
|
/* 02699F08 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
L_02699F0C: ; // 0x2699f0c
|
|
/* 02699F0C */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 02699F10 */ return;
|
|
}
|
|
|
|
// fn_02699F14 @ 0x2699f14
|
|
void Gambit_fn_02699F14(CPUState* cpu) {
|
|
L_02699F14: ; // 0x2699f14
|
|
/* 02699F14 */ cpu->r[3] = 0x00000000u;
|
|
/* 02699F18 */ return;
|
|
}
|
|
|
|
// fn_02699F1C @ 0x2699f1c
|
|
void Gambit_fn_02699F1C(CPUState* cpu) {
|
|
L_02699F1C: ; // 0x2699f1c
|
|
/* 02699F1C */ cpu->r[3] = 0x00000000u;
|
|
/* 02699F20 */ return;
|
|
}
|
|
|
|
// fn_02699F4C @ 0x2699f4c
|
|
void Gambit_fn_02699F4C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_02699F4C: ; // 0x2699f4c
|
|
/* 02699F4C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02699F4C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02699F4C */ cpu->r[1] = _t0;
|
|
/* 02699F50 */ cpu->r[0] = cpu->r[0] + 0xFFFF805Cu;
|
|
/* 02699F54 */ _t1 = cpu->r[12] + 0xFFFF9034u;
|
|
/* 02699F54 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02699F58 */ cpu->r[8] = 0x00000000u;
|
|
/* 02699F5C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02699F5C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02699F60 */ cpu->r[9] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02699F64 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02699F64 */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 02699F68 */ Gambit_fn_02791B10(cpu);
|
|
/* 02699F6C */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 02699F6C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02699F70 */ cpu->lr = cpu->r[0];
|
|
/* 02699F74 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02699F78 */ return;
|
|
}
|
|
|
|
// fn_02699F7C @ 0x2699f7c
|
|
void Gambit_fn_02699F7C(CPUState* cpu) {
|
|
uint32_t _t0, _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;
|
|
|
|
L_02699F7C: ; // 0x2699f7c
|
|
/* 02699F7C */ _t0 = cpu->r[1] + 0xFFFFFFB0u;
|
|
/* 02699F7C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02699F7C */ cpu->r[1] = _t0;
|
|
/* 02699F80 */ cpu->r[0] = cpu->lr;
|
|
/* 02699F84 */ /* nop */
|
|
/* 02699F88 */ cpu->r[28] = cpu->r[3];
|
|
/* 02699F88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 02699F8C */ _t1 = cpu->r[1] + 0x00000054u;
|
|
/* 02699F8C */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02699F90 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02699F90 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02699F90 */ if (_t3) goto L_02699F94; else goto L_02699FA4;
|
|
L_02699F94: ; // 0x2699f94
|
|
/* 02699F94 */ cpu->r[3] = 0x00000280u;
|
|
/* 02699F98 */ Gambit_fn_02801A78(cpu);
|
|
/* 02699F9C */ cpu->r[28] = cpu->r[3];
|
|
/* 02699F9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 02699FA0 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02699FA0 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02699FA0 */ if (_t5) goto L_0269A544; else goto L_02699FA4;
|
|
L_02699FA4: ; // 0x2699fa4
|
|
/* 02699FA4 */ cpu->r[3] = cpu->r[28];
|
|
/* 02699FA8 */ Gambit_fn_023B3EE0(cpu);
|
|
/* 02699FAC */ cpu->r[7] = 0x100E0000u;
|
|
/* 02699FB0 */ cpu->r[31] = cpu->r[28] + 0x00000248u;
|
|
/* 02699FB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02699FB4 */ cpu->r[7] = cpu->r[7] + 0x000042E8u;
|
|
/* 02699FB8 */ cpu->r[27] = 0x00000000u;
|
|
/* 02699FBC */ _t6 = cpu->r[28] + 0x00000004u;
|
|
/* 02699FBC */ rbrew_write32(cpu->mem, _t6, cpu->r[7]);
|
|
/* 02699FC0 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02699FC0 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02699FC0 */ if (_t8) goto L_02699FC4; else goto L_02699FD4;
|
|
L_02699FC4: ; // 0x2699fc4
|
|
/* 02699FC4 */ cpu->r[3] = 0x00000038u;
|
|
/* 02699FC8 */ Gambit_fn_02801A78(cpu);
|
|
/* 02699FCC */ cpu->r[31] = cpu->r[3];
|
|
/* 02699FCC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02699FD0 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02699FD0 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02699FD0 */ if (_t10) goto L_0269A004; else goto L_02699FD4;
|
|
L_02699FD4: ; // 0x2699fd4
|
|
/* 02699FD4 */ cpu->r[3] = cpu->r[31];
|
|
/* 02699FD8 */ Gambit_fn_027FC29C(cpu);
|
|
/* 02699FDC */ cpu->r[0] = 0x100E0000u;
|
|
/* 02699FE0 */ _t11 = cpu->r[31] + 0x00000030u;
|
|
/* 02699FE0 */ rbrew_write32(cpu->mem, _t11, cpu->r[27]);
|
|
/* 02699FE4 */ cpu->r[0] = cpu->r[0] + 0x00004410u;
|
|
/* 02699FE8 */ _t12 = cpu->r[31] + 0x00000034u;
|
|
/* 02699FE8 */ rbrew_write32(cpu->mem, _t12, cpu->r[27]);
|
|
/* 02699FEC */ _t13 = cpu->r[31] + 0x00000004u;
|
|
/* 02699FEC */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02699FF0 */ _t14 = cpu->r[31] + 0x00000024u;
|
|
/* 02699FF0 */ rbrew_write32(cpu->mem, _t14, cpu->r[27]);
|
|
/* 02699FF4 */ _t15 = cpu->r[31] + 0x00000028u;
|
|
/* 02699FF4 */ rbrew_write32(cpu->mem, _t15, cpu->r[27]);
|
|
/* 02699FF8 */ _t16 = cpu->r[31] + 0x0000002Cu;
|
|
/* 02699FF8 */ rbrew_write32(cpu->mem, _t16, cpu->r[27]);
|
|
/* 02699FFC */ _t17 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02699FFC */ rbrew_write32(cpu->mem, _t17, cpu->r[27]);
|
|
/* 0269A000 */ _t18 = cpu->r[31] + 0x00000020u;
|
|
/* 0269A000 */ rbrew_write32(cpu->mem, _t18, cpu->r[27]);
|
|
L_0269A004: ; // 0x269a004
|
|
/* 0269A004 */ cpu->r[0] = 0x00000005u;
|
|
/* 0269A008 */ cpu->r[3] = cpu->r[28] + 0x00000248u;
|
|
/* 0269A00C */ cpu->r[4] = cpu->r[28];
|
|
/* 0269A010 */ cpu->r[6] = 0x00000000u;
|
|
/* 0269A014 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0269A018 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 0269A018 */ rbrew_write8(cpu->mem, _t19, (uint8_t)cpu->r[0]);
|
|
/* 0269A01C */ Gambit_fn_0269B59C(cpu);
|
|
/* 0269A020 */ cpu->r[26] = 0x100E0000u;
|
|
/* 0269A024 */ cpu->r[25] = 0x026A0000u;
|
|
/* 0269A028 */ cpu->r[26] = cpu->r[26] + 0x000041E8u;
|
|
/* 0269A02C */ cpu->r[6] = 0x100E0000u;
|
|
/* 0269A030 */ cpu->r[25] = cpu->r[25] + 0xFFFFAFF4u;
|
|
/* 0269A034 */ _t20 = cpu->r[1] + 0x00000010u;
|
|
/* 0269A034 */ rbrew_write32(cpu->mem, _t20, cpu->r[26]);
|
|
/* 0269A038 */ cpu->r[6] = cpu->r[6] + 0x0000426Cu;
|
|
/* 0269A03C */ cpu->ctr = cpu->r[25];
|
|
/* 0269A040 */ _t21 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269A040 */ rbrew_write32(cpu->mem, _t21, cpu->r[6]);
|
|
/* 0269A044 */ _t22 = cpu->r[28] + 0x00000260u;
|
|
/* 0269A044 */ cpu->r[24] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0269A048 */ _t23 = cpu->r[24] + 0x00000000u;
|
|
/* 0269A048 */ cpu->r[29] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0269A04C */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269A050 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0269A054 */ cpu->r[30] = 0x10110000u;
|
|
/* 0269A058 */ _t24 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269A058 */ cpu->r[5] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0269A05C */ _t25 = cpu->r[30] + 0x00007399u;
|
|
/* 0269A05C */ cpu->r[30] = rbrew_read8(cpu->mem, _t25);
|
|
/* 0269A060 */ _t26 = cpu->r[5] + 0x00000000u;
|
|
/* 0269A060 */ cpu->r[0] = rbrew_read8(cpu->mem, _t26);
|
|
/* 0269A064 */ cpu->r[31] = 0x00000000u;
|
|
/* 0269A068 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]);
|
|
/* 0269A06C */ cpu->r[7] = 0x00080000u;
|
|
/* 0269A070 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269A070 */ _t28 = _t27 & 0x00000001u;
|
|
/* 0269A070 */ if (_t28) goto L_0269A098; else goto L_0269A074;
|
|
L_0269A074: ; // 0x269a074
|
|
/* 0269A074 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 0269A078 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[7]);
|
|
/* 0269A07C */ cpu->r[5] = cpu->r[5] + 0x00000001u;
|
|
/* 0269A080 */ _t29 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0269A080 */ _t30 = _t29 & 0x00000001u;
|
|
/* 0269A080 */ if (_t30) goto L_0269A094; else goto L_0269A084;
|
|
L_0269A084: ; // 0x269a084
|
|
/* 0269A084 */ _t31 = cpu->r[5] + 0x00000000u;
|
|
/* 0269A084 */ cpu->r[0] = rbrew_read8(cpu->mem, _t31);
|
|
/* 0269A088 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]);
|
|
/* 0269A08C */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269A08C */ _t33 = _t32 & 0x00000001u;
|
|
/* 0269A08C */ if (_t33) goto L_0269A090; else goto L_0269A074;
|
|
L_0269A090: ; // 0x269a090
|
|
/* 0269A090 */ goto L_0269A098;
|
|
L_0269A094: ; // 0x269a094
|
|
/* 0269A094 */ cpu->r[31] = 0x00000000u;
|
|
L_0269A098: ; // 0x269a098
|
|
/* 0269A098 */ _t34 = cpu->r[24] + 0x00000008u;
|
|
/* 0269A098 */ cpu->r[11] = rbrew_read32(cpu->mem, _t34);
|
|
/* 0269A09C */ _t35 = cpu->r[1] + 0x00000010u;
|
|
/* 0269A09C */ cpu->r[6] = rbrew_read32(cpu->mem, _t35);
|
|
/* 0269A0A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[11]);
|
|
/* 0269A0A4 */ _t36 = cpu->r[6] + 0x00000014u;
|
|
/* 0269A0A4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0269A0A8 */ _t37 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269A0A8 */ _t38 = _t37 & 0x00000001u;
|
|
/* 0269A0A8 */ if (_t38) goto L_0269A0B0; else goto L_0269A0AC;
|
|
L_0269A0AC: ; // 0x269a0ac
|
|
/* 0269A0AC */ cpu->r[31] = cpu->r[11] + 0xFFFFFFFFu;
|
|
L_0269A0B0: ; // 0x269a0b0
|
|
/* 0269A0B0 */ cpu->ctr = cpu->r[7];
|
|
/* 0269A0B4 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269A0B8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0269A0BC */ _t39 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269A0BC */ cpu->r[4] = rbrew_read32(cpu->mem, _t39);
|
|
/* 0269A0C0 */ cpu->r[6] = 0x00000000u;
|
|
/* 0269A0C4 */ cpu->r[5] = cpu->r[31];
|
|
/* 0269A0C8 */ cpu->r[3] = cpu->r[29];
|
|
/* 0269A0CC */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0269A0D0 */ cpu->r[10] = 0x026A0000u;
|
|
/* 0269A0D4 */ _t40 = cpu->r[29] + cpu->r[31];
|
|
/* 0269A0D4 */ rbrew_write8(cpu->mem, _t40, (uint8_t)cpu->r[30]);
|
|
/* 0269A0D8 */ cpu->r[10] = cpu->r[10] + 0xFFFFA988u;
|
|
/* 0269A0DC */ _t41 = cpu->r[1] + 0x00000014u;
|
|
/* 0269A0DC */ rbrew_write16(cpu->mem, _t41, (uint16_t)cpu->r[27]);
|
|
/* 0269A0E0 */ cpu->r[9] = 0xFFFFFFFFu;
|
|
/* 0269A0E4 */ _t42 = cpu->r[1] + 0x00000018u;
|
|
/* 0269A0E4 */ rbrew_write32(cpu->mem, _t42, cpu->r[10]);
|
|
/* 0269A0E8 */ cpu->r[12] = 0x026A0000u;
|
|
/* 0269A0EC */ _t43 = cpu->r[1] + 0x00000026u;
|
|
/* 0269A0EC */ rbrew_write16(cpu->mem, _t43, (uint16_t)cpu->r[27]);
|
|
/* 0269A0F0 */ cpu->r[12] = cpu->r[12] + 0xFFFFA99Cu;
|
|
/* 0269A0F4 */ _t44 = cpu->r[1] + 0x00000016u;
|
|
/* 0269A0F4 */ rbrew_write16(cpu->mem, _t44, (uint16_t)cpu->r[9]);
|
|
/* 0269A0F8 */ cpu->r[8] = 0x00000000u;
|
|
/* 0269A0FC */ _t45 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269A0FC */ rbrew_write16(cpu->mem, _t45, (uint16_t)cpu->r[27]);
|
|
/* 0269A100 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 0269A104 */ _t46 = cpu->r[1] + 0x00000008u;
|
|
/* 0269A104 */ rbrew_write8(cpu->mem, _t46, (uint8_t)cpu->r[8]);
|
|
/* 0269A108 */ cpu->r[3] = cpu->r[28] + 0x00000248u;
|
|
/* 0269A10C */ _t47 = cpu->r[1] + 0x00000024u;
|
|
/* 0269A10C */ rbrew_write16(cpu->mem, _t47, (uint16_t)cpu->r[27]);
|
|
/* 0269A110 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 0269A114 */ _t48 = cpu->r[1] + 0x00000020u;
|
|
/* 0269A114 */ rbrew_write32(cpu->mem, _t48, cpu->r[12]);
|
|
/* 0269A118 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 0269A11C */ _t49 = cpu->r[1] + 0x0000001Eu;
|
|
/* 0269A11C */ rbrew_write16(cpu->mem, _t49, (uint16_t)cpu->r[9]);
|
|
/* 0269A120 */ cpu->r[5] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269A124 */ _t50 = cpu->r[1] + 0x00000028u;
|
|
/* 0269A124 */ rbrew_write32(cpu->mem, _t50, cpu->r[27]);
|
|
/* 0269A128 */ Gambit_fn_0269B84C(cpu);
|
|
/* 0269A12C */ cpu->r[0] = 0x100E0000u;
|
|
/* 0269A130 */ _t51 = cpu->r[1] + 0x00000010u;
|
|
/* 0269A130 */ rbrew_write32(cpu->mem, _t51, cpu->r[26]);
|
|
/* 0269A134 */ cpu->r[0] = cpu->r[0] + 0x00004284u;
|
|
/* 0269A138 */ _t52 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269A138 */ rbrew_write32(cpu->mem, _t52, cpu->r[0]);
|
|
/* 0269A13C */ _t53 = cpu->r[28] + 0x0000025Cu;
|
|
/* 0269A13C */ cpu->r[5] = rbrew_read32(cpu->mem, _t53);
|
|
/* 0269A140 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], 0x00000001u);
|
|
/* 0269A144 */ _t54 = cpu->r[28] + 0x00000260u;
|
|
/* 0269A144 */ cpu->r[29] = rbrew_read32(cpu->mem, _t54);
|
|
/* 0269A148 */ _t55 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0269A148 */ _t56 = _t55 & 0x00000001u;
|
|
/* 0269A148 */ if (_t56) goto L_0269A14C; else goto L_0269A150;
|
|
L_0269A14C: ; // 0x269a14c
|
|
/* 0269A14C */ cpu->r[29] = cpu->r[29] + 0x00000024u;
|
|
L_0269A150: ; // 0x269a150
|
|
/* 0269A150 */ cpu->ctr = cpu->r[25];
|
|
/* 0269A154 */ _t57 = cpu->r[29] + 0x00000000u;
|
|
/* 0269A154 */ cpu->r[24] = rbrew_read32(cpu->mem, _t57);
|
|
/* 0269A158 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269A15C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0269A160 */ _t58 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269A160 */ cpu->r[8] = rbrew_read32(cpu->mem, _t58);
|
|
/* 0269A164 */ _t59 = cpu->r[8] + 0x00000000u;
|
|
/* 0269A164 */ cpu->r[6] = rbrew_read8(cpu->mem, _t59);
|
|
/* 0269A168 */ cpu->r[31] = 0x00000000u;
|
|
/* 0269A16C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[30]);
|
|
/* 0269A170 */ cpu->r[10] = 0x00080000u;
|
|
/* 0269A174 */ _t60 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269A174 */ _t61 = _t60 & 0x00000001u;
|
|
/* 0269A174 */ if (_t61) goto L_0269A19C; else goto L_0269A178;
|
|
L_0269A178: ; // 0x269a178
|
|
/* 0269A178 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 0269A17C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[10]);
|
|
/* 0269A180 */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 0269A184 */ _t62 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0269A184 */ _t63 = _t62 & 0x00000001u;
|
|
/* 0269A184 */ if (_t63) goto L_0269A198; else goto L_0269A188;
|
|
L_0269A188: ; // 0x269a188
|
|
/* 0269A188 */ _t64 = cpu->r[8] + 0x00000000u;
|
|
/* 0269A188 */ cpu->r[7] = rbrew_read8(cpu->mem, _t64);
|
|
/* 0269A18C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[30]);
|
|
/* 0269A190 */ _t65 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269A190 */ _t66 = _t65 & 0x00000001u;
|
|
/* 0269A190 */ if (_t66) goto L_0269A194; else goto L_0269A178;
|
|
L_0269A194: ; // 0x269a194
|
|
/* 0269A194 */ goto L_0269A19C;
|
|
L_0269A198: ; // 0x269a198
|
|
/* 0269A198 */ cpu->r[31] = 0x00000000u;
|
|
L_0269A19C: ; // 0x269a19c
|
|
/* 0269A19C */ _t67 = cpu->r[29] + 0x00000008u;
|
|
/* 0269A19C */ cpu->r[12] = rbrew_read32(cpu->mem, _t67);
|
|
/* 0269A1A0 */ _t68 = cpu->r[1] + 0x00000010u;
|
|
/* 0269A1A0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t68);
|
|
/* 0269A1A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[12]);
|
|
/* 0269A1A8 */ _t69 = cpu->r[9] + 0x00000014u;
|
|
/* 0269A1A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t69);
|
|
/* 0269A1AC */ _t70 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269A1AC */ _t71 = _t70 & 0x00000001u;
|
|
/* 0269A1AC */ if (_t71) goto L_0269A1B4; else goto L_0269A1B0;
|
|
L_0269A1B0: ; // 0x269a1b0
|
|
/* 0269A1B0 */ cpu->r[31] = cpu->r[12] + 0xFFFFFFFFu;
|
|
L_0269A1B4: ; // 0x269a1b4
|
|
/* 0269A1B4 */ cpu->ctr = cpu->r[0];
|
|
/* 0269A1B8 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269A1BC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0269A1C0 */ _t72 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269A1C0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t72);
|
|
/* 0269A1C4 */ cpu->r[6] = 0x00000000u;
|
|
/* 0269A1C8 */ cpu->r[5] = cpu->r[31];
|
|
/* 0269A1CC */ cpu->r[3] = cpu->r[24];
|
|
/* 0269A1D0 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0269A1D4 */ _t73 = cpu->r[24] + cpu->r[31];
|
|
/* 0269A1D4 */ rbrew_write8(cpu->mem, _t73, (uint8_t)cpu->r[30]);
|
|
/* 0269A1D8 */ cpu->r[0] = 0x00000001u;
|
|
/* 0269A1DC */ _t74 = cpu->r[1] + 0x00000024u;
|
|
/* 0269A1DC */ rbrew_write16(cpu->mem, _t74, (uint16_t)cpu->r[27]);
|
|
/* 0269A1E0 */ cpu->r[10] = 0xFFFFFFFFu;
|
|
/* 0269A1E4 */ _t75 = cpu->r[1] + 0x00000008u;
|
|
/* 0269A1E4 */ rbrew_write8(cpu->mem, _t75, (uint8_t)cpu->r[0]);
|
|
/* 0269A1E8 */ cpu->r[11] = 0x026A0000u;
|
|
/* 0269A1EC */ _t76 = cpu->r[1] + 0x00000016u;
|
|
/* 0269A1EC */ rbrew_write16(cpu->mem, _t76, (uint16_t)cpu->r[10]);
|
|
/* 0269A1F0 */ cpu->r[12] = 0x026A0000u;
|
|
/* 0269A1F4 */ _t77 = cpu->r[1] + 0x00000026u;
|
|
/* 0269A1F4 */ rbrew_write16(cpu->mem, _t77, (uint16_t)cpu->r[27]);
|
|
/* 0269A1F8 */ _t78 = cpu->r[1] + 0x00000014u;
|
|
/* 0269A1F8 */ rbrew_write16(cpu->mem, _t78, (uint16_t)cpu->r[27]);
|
|
/* 0269A1FC */ cpu->r[12] = cpu->r[12] + 0xFFFFA9F8u;
|
|
/* 0269A200 */ _t79 = cpu->r[1] + 0x0000001Eu;
|
|
/* 0269A200 */ rbrew_write16(cpu->mem, _t79, (uint16_t)cpu->r[10]);
|
|
/* 0269A204 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 0269A208 */ _t80 = cpu->r[1] + 0x00000018u;
|
|
/* 0269A208 */ rbrew_write32(cpu->mem, _t80, cpu->r[12]);
|
|
/* 0269A20C */ cpu->r[11] = cpu->r[11] + 0xFFFFB594u;
|
|
/* 0269A210 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 0269A214 */ _t81 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269A214 */ rbrew_write16(cpu->mem, _t81, (uint16_t)cpu->r[27]);
|
|
/* 0269A218 */ cpu->r[3] = cpu->r[28] + 0x00000248u;
|
|
/* 0269A21C */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 0269A220 */ _t82 = cpu->r[1] + 0x00000020u;
|
|
/* 0269A220 */ rbrew_write32(cpu->mem, _t82, cpu->r[11]);
|
|
/* 0269A224 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269A228 */ _t83 = cpu->r[1] + 0x00000028u;
|
|
/* 0269A228 */ rbrew_write32(cpu->mem, _t83, cpu->r[27]);
|
|
/* 0269A22C */ Gambit_fn_0269B84C(cpu);
|
|
/* 0269A230 */ cpu->r[7] = 0x100E0000u;
|
|
/* 0269A234 */ _t84 = cpu->r[1] + 0x00000010u;
|
|
/* 0269A234 */ rbrew_write32(cpu->mem, _t84, cpu->r[26]);
|
|
/* 0269A238 */ cpu->r[7] = cpu->r[7] + 0x00004298u;
|
|
/* 0269A23C */ _t85 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269A23C */ rbrew_write32(cpu->mem, _t85, cpu->r[7]);
|
|
/* 0269A240 */ _t86 = cpu->r[28] + 0x0000025Cu;
|
|
/* 0269A240 */ cpu->r[9] = rbrew_read32(cpu->mem, _t86);
|
|
/* 0269A244 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], 0x00000002u);
|
|
/* 0269A248 */ _t87 = cpu->r[28] + 0x00000260u;
|
|
/* 0269A248 */ cpu->r[29] = rbrew_read32(cpu->mem, _t87);
|
|
/* 0269A24C */ _t88 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0269A24C */ _t89 = _t88 & 0x00000001u;
|
|
/* 0269A24C */ if (_t89) goto L_0269A250; else goto L_0269A254;
|
|
L_0269A250: ; // 0x269a250
|
|
/* 0269A250 */ cpu->r[29] = cpu->r[29] + 0x00000048u;
|
|
L_0269A254: ; // 0x269a254
|
|
/* 0269A254 */ cpu->ctr = cpu->r[25];
|
|
/* 0269A258 */ _t90 = cpu->r[29] + 0x00000000u;
|
|
/* 0269A258 */ cpu->r[24] = rbrew_read32(cpu->mem, _t90);
|
|
/* 0269A25C */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269A260 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0269A264 */ _t91 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269A264 */ cpu->r[12] = rbrew_read32(cpu->mem, _t91);
|
|
/* 0269A268 */ _t92 = cpu->r[12] + 0x00000000u;
|
|
/* 0269A268 */ cpu->r[11] = rbrew_read8(cpu->mem, _t92);
|
|
/* 0269A26C */ cpu->r[31] = 0x00000000u;
|
|
/* 0269A270 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[30]);
|
|
/* 0269A274 */ cpu->r[5] = 0x00080000u;
|
|
/* 0269A278 */ _t93 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269A278 */ _t94 = _t93 & 0x00000001u;
|
|
/* 0269A278 */ if (_t94) goto L_0269A2A0; else goto L_0269A27C;
|
|
L_0269A27C: ; // 0x269a27c
|
|
/* 0269A27C */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 0269A280 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[5]);
|
|
/* 0269A284 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 0269A288 */ _t95 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0269A288 */ _t96 = _t95 & 0x00000001u;
|
|
/* 0269A288 */ if (_t96) goto L_0269A29C; else goto L_0269A28C;
|
|
L_0269A28C: ; // 0x269a28c
|
|
/* 0269A28C */ _t97 = cpu->r[12] + 0x00000000u;
|
|
/* 0269A28C */ cpu->r[0] = rbrew_read8(cpu->mem, _t97);
|
|
/* 0269A290 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]);
|
|
/* 0269A294 */ _t98 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269A294 */ _t99 = _t98 & 0x00000001u;
|
|
/* 0269A294 */ if (_t99) goto L_0269A298; else goto L_0269A27C;
|
|
L_0269A298: ; // 0x269a298
|
|
/* 0269A298 */ goto L_0269A2A0;
|
|
L_0269A29C: ; // 0x269a29c
|
|
/* 0269A29C */ cpu->r[31] = 0x00000000u;
|
|
L_0269A2A0: ; // 0x269a2a0
|
|
/* 0269A2A0 */ _t100 = cpu->r[29] + 0x00000008u;
|
|
/* 0269A2A0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t100);
|
|
/* 0269A2A4 */ _t101 = cpu->r[1] + 0x00000010u;
|
|
/* 0269A2A4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t101);
|
|
/* 0269A2A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[5]);
|
|
/* 0269A2AC */ _t102 = cpu->r[6] + 0x00000014u;
|
|
/* 0269A2AC */ cpu->r[7] = rbrew_read32(cpu->mem, _t102);
|
|
/* 0269A2B0 */ _t103 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269A2B0 */ _t104 = _t103 & 0x00000001u;
|
|
/* 0269A2B0 */ if (_t104) goto L_0269A2B8; else goto L_0269A2B4;
|
|
L_0269A2B4: ; // 0x269a2b4
|
|
/* 0269A2B4 */ cpu->r[31] = cpu->r[5] + 0xFFFFFFFFu;
|
|
L_0269A2B8: ; // 0x269a2b8
|
|
/* 0269A2B8 */ cpu->ctr = cpu->r[7];
|
|
/* 0269A2BC */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269A2C0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0269A2C4 */ _t105 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269A2C4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t105);
|
|
/* 0269A2C8 */ cpu->r[3] = cpu->r[24];
|
|
/* 0269A2CC */ cpu->r[5] = cpu->r[31];
|
|
/* 0269A2D0 */ cpu->r[6] = 0x00000000u;
|
|
/* 0269A2D4 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0269A2D8 */ cpu->r[9] = 0x026A0000u;
|
|
/* 0269A2DC */ _t106 = cpu->r[24] + cpu->r[31];
|
|
/* 0269A2DC */ rbrew_write8(cpu->mem, _t106, (uint8_t)cpu->r[30]);
|
|
/* 0269A2E0 */ cpu->r[9] = cpu->r[9] + 0xFFFFAAF0u;
|
|
/* 0269A2E4 */ _t107 = cpu->r[1] + 0x00000014u;
|
|
/* 0269A2E4 */ rbrew_write16(cpu->mem, _t107, (uint16_t)cpu->r[27]);
|
|
/* 0269A2E8 */ cpu->r[7] = 0xFFFFFFFFu;
|
|
/* 0269A2EC */ _t108 = cpu->r[1] + 0x00000024u;
|
|
/* 0269A2EC */ rbrew_write16(cpu->mem, _t108, (uint16_t)cpu->r[27]);
|
|
/* 0269A2F0 */ cpu->r[12] = 0x026A0000u;
|
|
/* 0269A2F4 */ _t109 = cpu->r[1] + 0x0000001Eu;
|
|
/* 0269A2F4 */ rbrew_write16(cpu->mem, _t109, (uint16_t)cpu->r[7]);
|
|
/* 0269A2F8 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269A2FC */ _t110 = cpu->r[1] + 0x00000020u;
|
|
/* 0269A2FC */ rbrew_write32(cpu->mem, _t110, cpu->r[9]);
|
|
/* 0269A300 */ cpu->r[8] = 0x026A0000u;
|
|
/* 0269A304 */ _t111 = cpu->r[1] + 0x00000016u;
|
|
/* 0269A304 */ rbrew_write16(cpu->mem, _t111, (uint16_t)cpu->r[7]);
|
|
/* 0269A308 */ cpu->r[5] = 0x00000002u;
|
|
/* 0269A30C */ _t112 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269A30C */ rbrew_write16(cpu->mem, _t112, (uint16_t)cpu->r[27]);
|
|
/* 0269A310 */ cpu->r[12] = cpu->r[12] + 0xFFFFAB68u;
|
|
/* 0269A314 */ _t113 = cpu->r[1] + 0x00000026u;
|
|
/* 0269A314 */ rbrew_write16(cpu->mem, _t113, (uint16_t)cpu->r[7]);
|
|
/* 0269A318 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 0269A31C */ cpu->r[8] = cpu->r[8] + 0xFFFFAC50u;
|
|
/* 0269A320 */ _t114 = cpu->r[1] + 0x00000008u;
|
|
/* 0269A320 */ rbrew_write8(cpu->mem, _t114, (uint8_t)cpu->r[5]);
|
|
/* 0269A324 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 0269A328 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 0269A32C */ _t115 = cpu->r[1] + 0x00000028u;
|
|
/* 0269A32C */ rbrew_write32(cpu->mem, _t115, cpu->r[8]);
|
|
/* 0269A330 */ cpu->r[3] = cpu->r[28] + 0x00000248u;
|
|
/* 0269A334 */ _t116 = cpu->r[1] + 0x00000018u;
|
|
/* 0269A334 */ rbrew_write32(cpu->mem, _t116, cpu->r[12]);
|
|
/* 0269A338 */ Gambit_fn_0269B84C(cpu);
|
|
/* 0269A33C */ cpu->r[9] = 0x100E0000u;
|
|
/* 0269A340 */ _t117 = cpu->r[1] + 0x00000010u;
|
|
/* 0269A340 */ rbrew_write32(cpu->mem, _t117, cpu->r[26]);
|
|
/* 0269A344 */ cpu->r[9] = cpu->r[9] + 0x000042B0u;
|
|
/* 0269A348 */ _t118 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269A348 */ rbrew_write32(cpu->mem, _t118, cpu->r[9]);
|
|
/* 0269A34C */ _t119 = cpu->r[28] + 0x0000025Cu;
|
|
/* 0269A34C */ cpu->r[10] = rbrew_read32(cpu->mem, _t119);
|
|
/* 0269A350 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], 0x00000003u);
|
|
/* 0269A354 */ _t120 = cpu->r[28] + 0x00000260u;
|
|
/* 0269A354 */ cpu->r[31] = rbrew_read32(cpu->mem, _t120);
|
|
/* 0269A358 */ _t121 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0269A358 */ _t122 = _t121 & 0x00000001u;
|
|
/* 0269A358 */ if (_t122) goto L_0269A35C; else goto L_0269A360;
|
|
L_0269A35C: ; // 0x269a35c
|
|
/* 0269A35C */ cpu->r[31] = cpu->r[31] + 0x0000006Cu;
|
|
L_0269A360: ; // 0x269a360
|
|
/* 0269A360 */ cpu->ctr = cpu->r[25];
|
|
/* 0269A364 */ _t123 = cpu->r[31] + 0x00000000u;
|
|
/* 0269A364 */ cpu->r[24] = rbrew_read32(cpu->mem, _t123);
|
|
/* 0269A368 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269A36C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0269A370 */ _t124 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269A370 */ cpu->r[8] = rbrew_read32(cpu->mem, _t124);
|
|
/* 0269A374 */ _t125 = cpu->r[8] + 0x00000000u;
|
|
/* 0269A374 */ cpu->r[0] = rbrew_read8(cpu->mem, _t125);
|
|
/* 0269A378 */ cpu->r[10] = 0x00080000u;
|
|
/* 0269A37C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]);
|
|
/* 0269A380 */ cpu->r[29] = 0x00000000u;
|
|
/* 0269A384 */ _t126 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269A384 */ _t127 = _t126 & 0x00000001u;
|
|
/* 0269A384 */ if (_t127) goto L_0269A3AC; else goto L_0269A388;
|
|
L_0269A388: ; // 0x269a388
|
|
/* 0269A388 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 0269A38C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[10]);
|
|
/* 0269A390 */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 0269A394 */ _t128 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0269A394 */ _t129 = _t128 & 0x00000001u;
|
|
/* 0269A394 */ if (_t129) goto L_0269A3A8; else goto L_0269A398;
|
|
L_0269A398: ; // 0x269a398
|
|
/* 0269A398 */ _t130 = cpu->r[8] + 0x00000000u;
|
|
/* 0269A398 */ cpu->r[6] = rbrew_read8(cpu->mem, _t130);
|
|
/* 0269A39C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[30]);
|
|
/* 0269A3A0 */ _t131 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269A3A0 */ _t132 = _t131 & 0x00000001u;
|
|
/* 0269A3A0 */ if (_t132) goto L_0269A3A4; else goto L_0269A388;
|
|
L_0269A3A4: ; // 0x269a3a4
|
|
/* 0269A3A4 */ goto L_0269A3AC;
|
|
L_0269A3A8: ; // 0x269a3a8
|
|
/* 0269A3A8 */ cpu->r[29] = 0x00000000u;
|
|
L_0269A3AC: ; // 0x269a3ac
|
|
/* 0269A3AC */ _t133 = cpu->r[31] + 0x00000008u;
|
|
/* 0269A3AC */ cpu->r[7] = rbrew_read32(cpu->mem, _t133);
|
|
/* 0269A3B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[7]);
|
|
/* 0269A3B4 */ _t134 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269A3B4 */ _t135 = _t134 & 0x00000001u;
|
|
/* 0269A3B4 */ if (_t135) goto L_0269A3BC; else goto L_0269A3B8;
|
|
L_0269A3B8: ; // 0x269a3b8
|
|
/* 0269A3B8 */ cpu->r[29] = cpu->r[7] + 0xFFFFFFFFu;
|
|
L_0269A3BC: ; // 0x269a3bc
|
|
/* 0269A3BC */ _t136 = cpu->r[1] + 0x00000010u;
|
|
/* 0269A3BC */ cpu->r[8] = rbrew_read32(cpu->mem, _t136);
|
|
/* 0269A3C0 */ _t137 = cpu->r[8] + 0x00000014u;
|
|
/* 0269A3C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t137);
|
|
/* 0269A3C4 */ cpu->ctr = cpu->r[0];
|
|
/* 0269A3C8 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269A3CC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0269A3D0 */ _t138 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269A3D0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t138);
|
|
/* 0269A3D4 */ cpu->r[3] = cpu->r[24];
|
|
/* 0269A3D8 */ cpu->r[5] = cpu->r[29];
|
|
/* 0269A3DC */ cpu->r[6] = 0x00000000u;
|
|
/* 0269A3E0 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0269A3E4 */ _t139 = cpu->r[24] + cpu->r[29];
|
|
/* 0269A3E4 */ rbrew_write8(cpu->mem, _t139, (uint8_t)cpu->r[30]);
|
|
/* 0269A3E8 */ cpu->r[12] = 0x00000003u;
|
|
/* 0269A3EC */ _t140 = cpu->r[1] + 0x00000028u;
|
|
/* 0269A3EC */ rbrew_write32(cpu->mem, _t140, cpu->r[27]);
|
|
/* 0269A3F0 */ cpu->r[10] = 0xFFFFFFFFu;
|
|
/* 0269A3F4 */ _t141 = cpu->r[1] + 0x00000008u;
|
|
/* 0269A3F4 */ rbrew_write8(cpu->mem, _t141, (uint8_t)cpu->r[12]);
|
|
/* 0269A3F8 */ cpu->r[6] = 0x026A0000u;
|
|
/* 0269A3FC */ _t142 = cpu->r[1] + 0x00000026u;
|
|
/* 0269A3FC */ rbrew_write16(cpu->mem, _t142, (uint16_t)cpu->r[27]);
|
|
/* 0269A400 */ cpu->r[3] = cpu->r[28] + 0x00000248u;
|
|
/* 0269A404 */ _t143 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269A404 */ rbrew_write16(cpu->mem, _t143, (uint16_t)cpu->r[27]);
|
|
/* 0269A408 */ cpu->r[6] = cpu->r[6] + 0xFFFFB598u;
|
|
/* 0269A40C */ _t144 = cpu->r[1] + 0x00000016u;
|
|
/* 0269A40C */ rbrew_write16(cpu->mem, _t144, (uint16_t)cpu->r[10]);
|
|
/* 0269A410 */ cpu->r[11] = 0x026A0000u;
|
|
/* 0269A414 */ _t145 = cpu->r[1] + 0x00000024u;
|
|
/* 0269A414 */ rbrew_write16(cpu->mem, _t145, (uint16_t)cpu->r[27]);
|
|
/* 0269A418 */ cpu->r[11] = cpu->r[11] + 0xFFFFAC9Cu;
|
|
/* 0269A41C */ _t146 = cpu->r[1] + 0x00000014u;
|
|
/* 0269A41C */ rbrew_write16(cpu->mem, _t146, (uint16_t)cpu->r[27]);
|
|
/* 0269A420 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 0269A424 */ _t147 = cpu->r[1] + 0x00000018u;
|
|
/* 0269A424 */ rbrew_write32(cpu->mem, _t147, cpu->r[6]);
|
|
/* 0269A428 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 0269A42C */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269A430 */ _t148 = cpu->r[1] + 0x00000020u;
|
|
/* 0269A430 */ rbrew_write32(cpu->mem, _t148, cpu->r[11]);
|
|
/* 0269A434 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 0269A438 */ _t149 = cpu->r[1] + 0x0000001Eu;
|
|
/* 0269A438 */ rbrew_write16(cpu->mem, _t149, (uint16_t)cpu->r[10]);
|
|
/* 0269A43C */ Gambit_fn_0269B84C(cpu);
|
|
/* 0269A440 */ cpu->r[8] = 0x100E0000u;
|
|
/* 0269A444 */ _t150 = cpu->r[1] + 0x00000010u;
|
|
/* 0269A444 */ rbrew_write32(cpu->mem, _t150, cpu->r[26]);
|
|
/* 0269A448 */ cpu->r[8] = cpu->r[8] + 0x000042CCu;
|
|
/* 0269A44C */ _t151 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269A44C */ rbrew_write32(cpu->mem, _t151, cpu->r[8]);
|
|
/* 0269A450 */ _t152 = cpu->r[28] + 0x0000025Cu;
|
|
/* 0269A450 */ cpu->r[9] = rbrew_read32(cpu->mem, _t152);
|
|
/* 0269A454 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], 0x00000004u);
|
|
/* 0269A458 */ _t153 = cpu->r[28] + 0x00000260u;
|
|
/* 0269A458 */ cpu->r[29] = rbrew_read32(cpu->mem, _t153);
|
|
/* 0269A45C */ _t154 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0269A45C */ _t155 = _t154 & 0x00000001u;
|
|
/* 0269A45C */ if (_t155) goto L_0269A460; else goto L_0269A464;
|
|
L_0269A460: ; // 0x269a460
|
|
/* 0269A460 */ cpu->r[29] = cpu->r[29] + 0x00000090u;
|
|
L_0269A464: ; // 0x269a464
|
|
/* 0269A464 */ cpu->ctr = cpu->r[25];
|
|
/* 0269A468 */ _t156 = cpu->r[29] + 0x00000000u;
|
|
/* 0269A468 */ cpu->r[26] = rbrew_read32(cpu->mem, _t156);
|
|
/* 0269A46C */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269A470 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0269A474 */ _t157 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269A474 */ cpu->r[9] = rbrew_read32(cpu->mem, _t157);
|
|
/* 0269A478 */ _t158 = cpu->r[9] + 0x00000000u;
|
|
/* 0269A478 */ cpu->r[10] = rbrew_read8(cpu->mem, _t158);
|
|
/* 0269A47C */ cpu->r[31] = 0x00000000u;
|
|
/* 0269A480 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[30]);
|
|
/* 0269A484 */ cpu->r[6] = 0x00080000u;
|
|
/* 0269A488 */ _t159 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269A488 */ _t160 = _t159 & 0x00000001u;
|
|
/* 0269A488 */ if (_t160) goto L_0269A4B0; else goto L_0269A48C;
|
|
L_0269A48C: ; // 0x269a48c
|
|
/* 0269A48C */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 0269A490 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[6]);
|
|
/* 0269A494 */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 0269A498 */ _t161 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0269A498 */ _t162 = _t161 & 0x00000001u;
|
|
/* 0269A498 */ if (_t162) goto L_0269A4AC; else goto L_0269A49C;
|
|
L_0269A49C: ; // 0x269a49c
|
|
/* 0269A49C */ _t163 = cpu->r[9] + 0x00000000u;
|
|
/* 0269A49C */ cpu->r[11] = rbrew_read8(cpu->mem, _t163);
|
|
/* 0269A4A0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[30]);
|
|
/* 0269A4A4 */ _t164 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269A4A4 */ _t165 = _t164 & 0x00000001u;
|
|
/* 0269A4A4 */ if (_t165) goto L_0269A4A8; else goto L_0269A48C;
|
|
L_0269A4A8: ; // 0x269a4a8
|
|
/* 0269A4A8 */ goto L_0269A4B0;
|
|
L_0269A4AC: ; // 0x269a4ac
|
|
/* 0269A4AC */ cpu->r[31] = 0x00000000u;
|
|
L_0269A4B0: ; // 0x269a4b0
|
|
/* 0269A4B0 */ _t166 = cpu->r[29] + 0x00000008u;
|
|
/* 0269A4B0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t166);
|
|
/* 0269A4B4 */ _t167 = cpu->r[1] + 0x00000010u;
|
|
/* 0269A4B4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t167);
|
|
/* 0269A4B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[9]);
|
|
/* 0269A4BC */ _t168 = cpu->r[10] + 0x00000014u;
|
|
/* 0269A4BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t168);
|
|
/* 0269A4C0 */ _t169 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269A4C0 */ _t170 = _t169 & 0x00000001u;
|
|
/* 0269A4C0 */ if (_t170) goto L_0269A4C8; else goto L_0269A4C4;
|
|
L_0269A4C4: ; // 0x269a4c4
|
|
/* 0269A4C4 */ cpu->r[31] = cpu->r[9] + 0xFFFFFFFFu;
|
|
L_0269A4C8: ; // 0x269a4c8
|
|
/* 0269A4C8 */ cpu->ctr = cpu->r[0];
|
|
/* 0269A4CC */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269A4D0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0269A4D4 */ _t171 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269A4D4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t171);
|
|
/* 0269A4D8 */ cpu->r[3] = cpu->r[26];
|
|
/* 0269A4DC */ cpu->r[5] = cpu->r[31];
|
|
/* 0269A4E0 */ cpu->r[6] = 0x00000000u;
|
|
/* 0269A4E4 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0269A4E8 */ _t172 = cpu->r[26] + cpu->r[31];
|
|
/* 0269A4E8 */ rbrew_write8(cpu->mem, _t172, (uint8_t)cpu->r[30]);
|
|
/* 0269A4EC */ cpu->r[8] = 0x00000004u;
|
|
/* 0269A4F0 */ _t173 = cpu->r[1] + 0x00000028u;
|
|
/* 0269A4F0 */ rbrew_write32(cpu->mem, _t173, cpu->r[27]);
|
|
/* 0269A4F4 */ cpu->r[3] = cpu->r[28] + 0x00000248u;
|
|
/* 0269A4F8 */ _t174 = cpu->r[1] + 0x00000008u;
|
|
/* 0269A4F8 */ rbrew_write8(cpu->mem, _t174, (uint8_t)cpu->r[8]);
|
|
/* 0269A4FC */ cpu->r[8] = 0xFFFFFFFFu;
|
|
/* 0269A500 */ _t175 = cpu->r[1] + 0x00000024u;
|
|
/* 0269A500 */ rbrew_write16(cpu->mem, _t175, (uint16_t)cpu->r[27]);
|
|
/* 0269A504 */ cpu->r[12] = 0x026A0000u;
|
|
/* 0269A508 */ _t176 = cpu->r[1] + 0x00000016u;
|
|
/* 0269A508 */ rbrew_write16(cpu->mem, _t176, (uint16_t)cpu->r[8]);
|
|
/* 0269A50C */ cpu->r[12] = cpu->r[12] + 0xFFFFAD48u;
|
|
/* 0269A510 */ _t177 = cpu->r[1] + 0x00000026u;
|
|
/* 0269A510 */ rbrew_write16(cpu->mem, _t177, (uint16_t)cpu->r[27]);
|
|
/* 0269A514 */ cpu->r[0] = 0x026A0000u;
|
|
/* 0269A518 */ _t178 = cpu->r[1] + 0x00000020u;
|
|
/* 0269A518 */ rbrew_write32(cpu->mem, _t178, cpu->r[12]);
|
|
/* 0269A51C */ cpu->r[0] = cpu->r[0] + 0xFFFFAEE0u;
|
|
/* 0269A520 */ _t179 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269A520 */ rbrew_write16(cpu->mem, _t179, (uint16_t)cpu->r[27]);
|
|
/* 0269A524 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 0269A528 */ _t180 = cpu->r[1] + 0x00000014u;
|
|
/* 0269A528 */ rbrew_write16(cpu->mem, _t180, (uint16_t)cpu->r[27]);
|
|
/* 0269A52C */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 0269A530 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 0269A534 */ _t181 = cpu->r[1] + 0x00000018u;
|
|
/* 0269A534 */ rbrew_write32(cpu->mem, _t181, cpu->r[0]);
|
|
/* 0269A538 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269A53C */ _t182 = cpu->r[1] + 0x0000001Eu;
|
|
/* 0269A53C */ rbrew_write16(cpu->mem, _t182, (uint16_t)cpu->r[8]);
|
|
/* 0269A540 */ Gambit_fn_0269B84C(cpu);
|
|
L_0269A544: ; // 0x269a544
|
|
/* 0269A544 */ cpu->r[3] = cpu->r[28];
|
|
/* 0269A548 */ /* nop */
|
|
/* 0269A54C */ _t183 = cpu->r[1] + 0x00000054u;
|
|
/* 0269A54C */ cpu->r[0] = rbrew_read32(cpu->mem, _t183);
|
|
/* 0269A550 */ cpu->lr = cpu->r[0];
|
|
/* 0269A554 */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 0269A558 */ return;
|
|
}
|
|
|
|
// fn_0269A55C @ 0x269a55c
|
|
void Gambit_fn_0269A55C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_0269A55C: ; // 0x269a55c
|
|
/* 0269A55C */ cpu->r[0] = cpu->lr;
|
|
/* 0269A560 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0269A560 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269A560 */ cpu->r[1] = _t0;
|
|
/* 0269A564 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269A564 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0269A568 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269A56C */ cpu->r[3] = 0x101D0000u;
|
|
/* 0269A570 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0269A570 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0269A574 */ _t3 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 0269A574 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0269A578 */ Gambit_fn_02826F20(cpu);
|
|
/* 0269A57C */ cpu->r[12] = 0x101C0000u;
|
|
/* 0269A580 */ _t4 = cpu->r[12] + 0x000044E4u;
|
|
/* 0269A580 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269A584 */ cpu->r[5] = cpu->r[3];
|
|
/* 0269A588 */ _t5 = cpu->r[12] + 0x00000254u;
|
|
/* 0269A588 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0269A58C */ cpu->r[4] = cpu->r[31] + 0x00000248u;
|
|
/* 0269A590 */ Gambit_fn_027B8F9C(cpu);
|
|
/* 0269A594 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 0269A594 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0269A598 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269A598 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269A59C */ cpu->lr = cpu->r[0];
|
|
/* 0269A5A0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0269A5A4 */ return;
|
|
}
|
|
|
|
// fn_0269A560 @ 0x269a560
|
|
void Gambit_fn_0269A560(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_0269A560: ; // 0x269a560
|
|
/* 0269A560 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0269A560 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269A560 */ cpu->r[1] = _t0;
|
|
/* 0269A564 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269A564 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0269A568 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269A56C */ cpu->r[3] = 0x101D0000u;
|
|
/* 0269A570 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0269A570 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0269A574 */ _t3 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 0269A574 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0269A578 */ Gambit_fn_02826F20(cpu);
|
|
/* 0269A57C */ cpu->r[12] = 0x101C0000u;
|
|
/* 0269A580 */ _t4 = cpu->r[12] + 0x000044E4u;
|
|
/* 0269A580 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269A584 */ cpu->r[5] = cpu->r[3];
|
|
/* 0269A588 */ _t5 = cpu->r[12] + 0x00000254u;
|
|
/* 0269A588 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0269A58C */ cpu->r[4] = cpu->r[31] + 0x00000248u;
|
|
/* 0269A590 */ Gambit_fn_027B8F9C(cpu);
|
|
/* 0269A594 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 0269A594 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0269A598 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269A598 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269A59C */ cpu->lr = cpu->r[0];
|
|
/* 0269A5A0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0269A5A4 */ return;
|
|
}
|
|
|
|
// fn_0269A5A8 @ 0x269a5a8
|
|
void Gambit_fn_0269A5A8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0269A5A8: ; // 0x269a5a8
|
|
/* 0269A5A8 */ cpu->r[0] = cpu->lr;
|
|
/* 0269A5AC */ cpu->r[9] = 0x00000004u;
|
|
/* 0269A5B0 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0269A5B0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269A5B0 */ cpu->r[1] = _t0;
|
|
/* 0269A5B4 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 0269A5B4 */ rbrew_write32(cpu->mem, _t1, cpu->r[9]);
|
|
/* 0269A5B8 */ cpu->r[10] = 0x100E0000u;
|
|
/* 0269A5BC */ cpu->r[12] = 0x00000000u;
|
|
/* 0269A5C0 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0269A5C0 */ rbrew_write32(cpu->mem, _t2, cpu->r[12]);
|
|
/* 0269A5C4 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0269A5C4 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 0269A5C8 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269A5C8 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0269A5CC */ _t5 = cpu->r[10] + 0x00004178u;
|
|
/* 0269A5CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0269A5D0 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269A5D4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269A5D8 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269A5DC */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269A5DC */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0269A5E0 */ Gambit_fn_02791774(cpu);
|
|
/* 0269A5E4 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 0269A5E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269A5E8 */ cpu->r[0] = cpu->r[0] | 0x00000001u;
|
|
/* 0269A5EC */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0269A5EC */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0269A5F0 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269A5F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269A5F4 */ cpu->lr = cpu->r[0];
|
|
/* 0269A5F8 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0269A5F8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269A5FC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269A600 */ return;
|
|
}
|
|
|
|
// fn_0269A5B0 @ 0x269a5b0
|
|
void Gambit_fn_0269A5B0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0269A5B0: ; // 0x269a5b0
|
|
/* 0269A5B0 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0269A5B0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269A5B0 */ cpu->r[1] = _t0;
|
|
/* 0269A5B4 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 0269A5B4 */ rbrew_write32(cpu->mem, _t1, cpu->r[9]);
|
|
/* 0269A5B8 */ cpu->r[10] = 0x100E0000u;
|
|
/* 0269A5BC */ cpu->r[12] = 0x00000000u;
|
|
/* 0269A5C0 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0269A5C0 */ rbrew_write32(cpu->mem, _t2, cpu->r[12]);
|
|
/* 0269A5C4 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0269A5C4 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 0269A5C8 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269A5C8 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0269A5CC */ _t5 = cpu->r[10] + 0x00004178u;
|
|
/* 0269A5CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0269A5D0 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269A5D4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269A5D8 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269A5DC */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269A5DC */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0269A5E0 */ Gambit_fn_02791774(cpu);
|
|
/* 0269A5E4 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 0269A5E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269A5E8 */ cpu->r[0] = cpu->r[0] | 0x00000001u;
|
|
/* 0269A5EC */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0269A5EC */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0269A5F0 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269A5F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269A5F4 */ cpu->lr = cpu->r[0];
|
|
/* 0269A5F8 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0269A5F8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269A5FC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269A600 */ return;
|
|
}
|
|
|
|
// fn_0269A604 @ 0x269a604
|
|
void Gambit_fn_0269A604(CPUState* 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_0269A604: ; // 0x269a604
|
|
/* 0269A604 */ cpu->r[0] = cpu->lr;
|
|
/* 0269A608 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 0269A608 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269A608 */ cpu->r[1] = _t0;
|
|
/* 0269A60C */ _t1 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269A60C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0269A610 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269A614 */ _t2 = cpu->r[1] + 0x00000018u;
|
|
/* 0269A614 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0269A618 */ _t3 = cpu->r[1] + 0x00000024u;
|
|
/* 0269A618 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269A61C */ _t4 = cpu->r[31] + 0x00000256u;
|
|
/* 0269A61C */ cpu->r[4] = rbrew_read8(cpu->mem, _t4);
|
|
/* 0269A620 */ cpu->r[3] = cpu->r[31] + 0x00000248u;
|
|
/* 0269A624 */ /* nop */
|
|
/* 0269A628 */ Gambit_fn_027FC35C(cpu);
|
|
/* 0269A62C */ cpu->r[3] = cpu->r[31] + 0x00000248u;
|
|
/* 0269A630 */ Gambit_fn_0269B8D4(cpu);
|
|
/* 0269A634 */ cpu->r[7] = 0x100E0000u;
|
|
/* 0269A638 */ cpu->r[0] = 0x00000002u;
|
|
/* 0269A63C */ _t5 = cpu->r[7] + 0x00004188u;
|
|
/* 0269A63C */ cpu->r[10] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0269A640 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269A644 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269A644 */ rbrew_write32(cpu->mem, _t6, cpu->r[10]);
|
|
/* 0269A648 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269A64C */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 0269A64C */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 0269A650 */ cpu->r[0] = 0x00000004u;
|
|
/* 0269A654 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269A658 */ _t8 = cpu->r[1] + 0x00000010u;
|
|
/* 0269A658 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0269A65C */ Gambit_fn_02791774(cpu);
|
|
/* 0269A660 */ _t9 = cpu->r[31] + 0x00000230u;
|
|
/* 0269A660 */ cpu->r[11] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269A664 */ cpu->r[11] = cpu->r[11] | 0x00000004u;
|
|
/* 0269A668 */ cpu->r[30] = 0x101D0000u;
|
|
/* 0269A66C */ _t10 = cpu->r[31] + 0x00000230u;
|
|
/* 0269A66C */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 0269A670 */ _t11 = cpu->r[30] + 0xFFFF8058u;
|
|
/* 0269A670 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0269A674 */ _t12 = cpu->r[12] + 0x000002D8u;
|
|
/* 0269A674 */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0269A678 */ Gambit_fn_024508C8(cpu);
|
|
/* 0269A67C */ cpu->r[12] = 0x101C0000u;
|
|
/* 0269A680 */ _t13 = cpu->r[12] + 0x00006000u;
|
|
/* 0269A680 */ cpu->r[12] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0269A684 */ _t14 = cpu->r[12] + 0x00000268u;
|
|
/* 0269A684 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0269A688 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269A68C */ Gambit_fn_0261F774(cpu);
|
|
/* 0269A690 */ cpu->r[4] = cpu->r[3];
|
|
/* 0269A694 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269A698 */ Gambit_fn_0261F55C(cpu);
|
|
/* 0269A69C */ _t15 = cpu->r[30] + 0xFFFF8058u;
|
|
/* 0269A69C */ cpu->r[9] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0269A6A0 */ _t16 = cpu->r[3] + 0x000000A0u;
|
|
/* 0269A6A0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0269A6A4 */ _t17 = cpu->r[9] + 0x000002D8u;
|
|
/* 0269A6A4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0269A6A8 */ Gambit_fn_02450BA4(cpu);
|
|
/* 0269A6AC */ _t18 = cpu->r[1] + 0x00000024u;
|
|
/* 0269A6AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0269A6B0 */ _t19 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269A6B0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0269A6B4 */ cpu->lr = cpu->r[0];
|
|
/* 0269A6B8 */ _t20 = cpu->r[1] + 0x00000018u;
|
|
/* 0269A6B8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0269A6BC */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 0269A6C0 */ return;
|
|
}
|
|
|
|
// fn_0269A608 @ 0x269a608
|
|
void Gambit_fn_0269A608(CPUState* 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_0269A608: ; // 0x269a608
|
|
/* 0269A608 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 0269A608 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269A608 */ cpu->r[1] = _t0;
|
|
/* 0269A60C */ _t1 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269A60C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0269A610 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269A614 */ _t2 = cpu->r[1] + 0x00000018u;
|
|
/* 0269A614 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0269A618 */ _t3 = cpu->r[1] + 0x00000024u;
|
|
/* 0269A618 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269A61C */ _t4 = cpu->r[31] + 0x00000256u;
|
|
/* 0269A61C */ cpu->r[4] = rbrew_read8(cpu->mem, _t4);
|
|
/* 0269A620 */ cpu->r[3] = cpu->r[31] + 0x00000248u;
|
|
/* 0269A624 */ /* nop */
|
|
/* 0269A628 */ Gambit_fn_027FC35C(cpu);
|
|
/* 0269A62C */ cpu->r[3] = cpu->r[31] + 0x00000248u;
|
|
/* 0269A630 */ Gambit_fn_0269B8D4(cpu);
|
|
/* 0269A634 */ cpu->r[7] = 0x100E0000u;
|
|
/* 0269A638 */ cpu->r[0] = 0x00000002u;
|
|
/* 0269A63C */ _t5 = cpu->r[7] + 0x00004188u;
|
|
/* 0269A63C */ cpu->r[10] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0269A640 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269A644 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269A644 */ rbrew_write32(cpu->mem, _t6, cpu->r[10]);
|
|
/* 0269A648 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269A64C */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 0269A64C */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 0269A650 */ cpu->r[0] = 0x00000004u;
|
|
/* 0269A654 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269A658 */ _t8 = cpu->r[1] + 0x00000010u;
|
|
/* 0269A658 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0269A65C */ Gambit_fn_02791774(cpu);
|
|
/* 0269A660 */ _t9 = cpu->r[31] + 0x00000230u;
|
|
/* 0269A660 */ cpu->r[11] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269A664 */ cpu->r[11] = cpu->r[11] | 0x00000004u;
|
|
/* 0269A668 */ cpu->r[30] = 0x101D0000u;
|
|
/* 0269A66C */ _t10 = cpu->r[31] + 0x00000230u;
|
|
/* 0269A66C */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 0269A670 */ _t11 = cpu->r[30] + 0xFFFF8058u;
|
|
/* 0269A670 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0269A674 */ _t12 = cpu->r[12] + 0x000002D8u;
|
|
/* 0269A674 */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0269A678 */ Gambit_fn_024508C8(cpu);
|
|
/* 0269A67C */ cpu->r[12] = 0x101C0000u;
|
|
/* 0269A680 */ _t13 = cpu->r[12] + 0x00006000u;
|
|
/* 0269A680 */ cpu->r[12] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0269A684 */ _t14 = cpu->r[12] + 0x00000268u;
|
|
/* 0269A684 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0269A688 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269A68C */ Gambit_fn_0261F774(cpu);
|
|
/* 0269A690 */ cpu->r[4] = cpu->r[3];
|
|
/* 0269A694 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269A698 */ Gambit_fn_0261F55C(cpu);
|
|
/* 0269A69C */ _t15 = cpu->r[30] + 0xFFFF8058u;
|
|
/* 0269A69C */ cpu->r[9] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0269A6A0 */ _t16 = cpu->r[3] + 0x000000A0u;
|
|
/* 0269A6A0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0269A6A4 */ _t17 = cpu->r[9] + 0x000002D8u;
|
|
/* 0269A6A4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0269A6A8 */ Gambit_fn_02450BA4(cpu);
|
|
/* 0269A6AC */ _t18 = cpu->r[1] + 0x00000024u;
|
|
/* 0269A6AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0269A6B0 */ _t19 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269A6B0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0269A6B4 */ cpu->lr = cpu->r[0];
|
|
/* 0269A6B8 */ _t20 = cpu->r[1] + 0x00000018u;
|
|
/* 0269A6B8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0269A6BC */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 0269A6C0 */ return;
|
|
}
|
|
|
|
// fn_0269A6C4 @ 0x269a6c4
|
|
void Gambit_fn_0269A6C4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_0269A6C4: ; // 0x269a6c4
|
|
/* 0269A6C4 */ cpu->r[0] = cpu->lr;
|
|
/* 0269A6C8 */ _t0 = cpu->r[1] + 0xFFFFFE58u;
|
|
/* 0269A6C8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269A6C8 */ cpu->r[1] = _t0;
|
|
/* 0269A6CC */ _t1 = cpu->r[1] + 0x000001A4u;
|
|
/* 0269A6CC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0269A6D0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269A6D4 */ cpu->r[10] = 0x100E0000u;
|
|
/* 0269A6D8 */ _t2 = cpu->r[1] + 0x000001ACu;
|
|
/* 0269A6D8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0269A6DC */ cpu->r[0] = 0x00000003u;
|
|
/* 0269A6E0 */ _t3 = cpu->r[10] + 0x00004190u;
|
|
/* 0269A6E0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0269A6E4 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 0269A6E8 */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 0269A6E8 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0269A6EC */ cpu->r[0] = 0x00000004u;
|
|
/* 0269A6F0 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 0269A6F0 */ rbrew_write32(cpu->mem, _t5, cpu->r[10]);
|
|
/* 0269A6F4 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269A6F8 */ _t6 = cpu->r[1] + 0x00000018u;
|
|
/* 0269A6F8 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0269A6FC */ Gambit_fn_02791774(cpu);
|
|
/* 0269A700 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 0269A700 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269A704 */ cpu->r[0] = cpu->r[0] | 0x00000008u;
|
|
/* 0269A708 */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 0269A70C */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0269A70C */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0269A710 */ Gambit_fn_02173004(cpu);
|
|
/* 0269A714 */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 0269A718 */ Gambit_fn_02172AD8(cpu);
|
|
/* 0269A71C */ cpu->r[12] = 0x101C0000u;
|
|
/* 0269A720 */ _t9 = cpu->r[3] + 0x00000000u;
|
|
/* 0269A720 */ cpu->r[8] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269A724 */ _t10 = cpu->r[12] + 0x00001D34u;
|
|
/* 0269A724 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269A728 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269A728 */ rbrew_write32(cpu->mem, _t11, cpu->r[8]);
|
|
/* 0269A72C */ _t12 = cpu->r[3] + 0x00000004u;
|
|
/* 0269A72C */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0269A730 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0269A734 */ _t13 = cpu->r[1] + 0x00000010u;
|
|
/* 0269A734 */ rbrew_write32(cpu->mem, _t13, cpu->r[9]);
|
|
/* 0269A738 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269A738 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0269A738 */ if (_t15) goto L_0269A74C; else goto L_0269A73C;
|
|
L_0269A73C: ; // 0x269a73c
|
|
/* 0269A73C */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269A740 */ cpu->r[4] = 0x00000000u;
|
|
/* 0269A744 */ cpu->r[3] = cpu->r[12];
|
|
/* 0269A748 */ Gambit_fn_020355C0(cpu);
|
|
L_0269A74C: ; // 0x269a74c
|
|
/* 0269A74C */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 0269A750 */ cpu->r[4] = 0x00000002u;
|
|
/* 0269A754 */ Gambit_fn_021730E0(cpu);
|
|
/* 0269A758 */ _t16 = cpu->r[1] + 0x000001ACu;
|
|
/* 0269A758 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0269A75C */ _t17 = cpu->r[1] + 0x000001A4u;
|
|
/* 0269A75C */ cpu->r[31] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0269A760 */ cpu->lr = cpu->r[0];
|
|
/* 0269A764 */ cpu->r[1] = cpu->r[1] + 0x000001A8u;
|
|
/* 0269A768 */ return;
|
|
}
|
|
|
|
// fn_0269A6C8 @ 0x269a6c8
|
|
void Gambit_fn_0269A6C8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_0269A6C8: ; // 0x269a6c8
|
|
/* 0269A6C8 */ _t0 = cpu->r[1] + 0xFFFFFE58u;
|
|
/* 0269A6C8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269A6C8 */ cpu->r[1] = _t0;
|
|
/* 0269A6CC */ _t1 = cpu->r[1] + 0x000001A4u;
|
|
/* 0269A6CC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0269A6D0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269A6D4 */ cpu->r[10] = 0x100E0000u;
|
|
/* 0269A6D8 */ _t2 = cpu->r[1] + 0x000001ACu;
|
|
/* 0269A6D8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0269A6DC */ cpu->r[0] = 0x00000003u;
|
|
/* 0269A6E0 */ _t3 = cpu->r[10] + 0x00004190u;
|
|
/* 0269A6E0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0269A6E4 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 0269A6E8 */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 0269A6E8 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0269A6EC */ cpu->r[0] = 0x00000004u;
|
|
/* 0269A6F0 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 0269A6F0 */ rbrew_write32(cpu->mem, _t5, cpu->r[10]);
|
|
/* 0269A6F4 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269A6F8 */ _t6 = cpu->r[1] + 0x00000018u;
|
|
/* 0269A6F8 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0269A6FC */ Gambit_fn_02791774(cpu);
|
|
/* 0269A700 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 0269A700 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269A704 */ cpu->r[0] = cpu->r[0] | 0x00000008u;
|
|
/* 0269A708 */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 0269A70C */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0269A70C */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0269A710 */ Gambit_fn_02173004(cpu);
|
|
/* 0269A714 */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 0269A718 */ Gambit_fn_02172AD8(cpu);
|
|
/* 0269A71C */ cpu->r[12] = 0x101C0000u;
|
|
/* 0269A720 */ _t9 = cpu->r[3] + 0x00000000u;
|
|
/* 0269A720 */ cpu->r[8] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269A724 */ _t10 = cpu->r[12] + 0x00001D34u;
|
|
/* 0269A724 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269A728 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269A728 */ rbrew_write32(cpu->mem, _t11, cpu->r[8]);
|
|
/* 0269A72C */ _t12 = cpu->r[3] + 0x00000004u;
|
|
/* 0269A72C */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0269A730 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0269A734 */ _t13 = cpu->r[1] + 0x00000010u;
|
|
/* 0269A734 */ rbrew_write32(cpu->mem, _t13, cpu->r[9]);
|
|
/* 0269A738 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269A738 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0269A738 */ if (_t15) goto L_0269A74C; else goto L_0269A73C;
|
|
L_0269A73C: ; // 0x269a73c
|
|
/* 0269A73C */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269A740 */ cpu->r[4] = 0x00000000u;
|
|
/* 0269A744 */ cpu->r[3] = cpu->r[12];
|
|
/* 0269A748 */ Gambit_fn_020355C0(cpu);
|
|
L_0269A74C: ; // 0x269a74c
|
|
/* 0269A74C */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 0269A750 */ cpu->r[4] = 0x00000002u;
|
|
/* 0269A754 */ Gambit_fn_021730E0(cpu);
|
|
/* 0269A758 */ _t16 = cpu->r[1] + 0x000001ACu;
|
|
/* 0269A758 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0269A75C */ _t17 = cpu->r[1] + 0x000001A4u;
|
|
/* 0269A75C */ cpu->r[31] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0269A760 */ cpu->lr = cpu->r[0];
|
|
/* 0269A764 */ cpu->r[1] = cpu->r[1] + 0x000001A8u;
|
|
/* 0269A768 */ return;
|
|
}
|
|
|
|
// fn_0269A76C @ 0x269a76c
|
|
void Gambit_fn_0269A76C(CPUState* cpu) {
|
|
uint32_t _t0, _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;
|
|
|
|
L_0269A76C: ; // 0x269a76c
|
|
/* 0269A76C */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 0269A76C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269A76C */ cpu->r[1] = _t0;
|
|
/* 0269A770 */ cpu->r[0] = cpu->lr;
|
|
/* 0269A774 */ /* nop */
|
|
/* 0269A778 */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 0269A778 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0269A77C */ cpu->r[29] = 0x00000000u;
|
|
/* 0269A780 */ Gambit_fn_027E3E2C(cpu);
|
|
/* 0269A784 */ cpu->r[31] = 0x101D0000u;
|
|
/* 0269A788 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[3]);
|
|
/* 0269A78C */ cpu->r[30] = 0x101C0000u;
|
|
/* 0269A790 */ _t2 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269A790 */ _t3 = _t2 & 0x00000001u;
|
|
/* 0269A790 */ if (_t3) goto L_0269A794; else goto L_0269A848;
|
|
L_0269A794: ; // 0x269a794
|
|
/* 0269A794 */ _t4 = cpu->r[30] + 0x00006000u;
|
|
/* 0269A794 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269A798 */ _t5 = cpu->r[9] + 0x00000268u;
|
|
/* 0269A798 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0269A79C */ Gambit_fn_0261F774(cpu);
|
|
/* 0269A7A0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[3]);
|
|
/* 0269A7A4 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269A7A4 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0269A7A4 */ if (_t7) goto L_0269A7A8; else goto L_0269A838;
|
|
L_0269A7A8: ; // 0x269a7a8
|
|
/* 0269A7A8 */ cpu->r[25] = 0x00000001u;
|
|
/* 0269A7AC */ cpu->r[27] = cpu->r[1] + 0x00000008u;
|
|
/* 0269A7B0 */ cpu->r[26] = 0x0000000Bu;
|
|
/* 0269A7B4 */ cpu->r[28] = 0x00000000u;
|
|
L_0269A7B8: ; // 0x269a7b8
|
|
/* 0269A7B8 */ _t8 = cpu->r[30] + 0x00006000u;
|
|
/* 0269A7B8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0269A7BC */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 0269A7BC */ rbrew_write32(cpu->mem, _t9, cpu->r[28]);
|
|
/* 0269A7C0 */ _t10 = cpu->r[11] + 0x00000268u;
|
|
/* 0269A7C0 */ cpu->r[29] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269A7C4 */ cpu->r[3] = cpu->r[29];
|
|
/* 0269A7C8 */ Gambit_fn_0261F774(cpu);
|
|
/* 0269A7CC */ cpu->r[4] = cpu->r[3];
|
|
/* 0269A7D0 */ cpu->r[3] = cpu->r[29];
|
|
/* 0269A7D4 */ Gambit_fn_0261F55C(cpu);
|
|
/* 0269A7D8 */ _t11 = cpu->r[27] + 0x00000000u;
|
|
/* 0269A7D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0269A7DC */ _t12 = cpu->r[3] + 0x000006CCu;
|
|
/* 0269A7DC */ cpu->r[8] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0269A7E0 */ /* nop */
|
|
/* 0269A7E4 */ _t13 = cpu->r[8] + 0x00000074u;
|
|
/* 0269A7E4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0269A7E8 */ cpu->r[8] = cpu->r[9] & cpu->r[0];
|
|
/* 0269A7E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0269A7EC */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269A7EC */ _t15 = _t14 & 0x00000001u;
|
|
/* 0269A7EC */ if (_t15) goto L_0269A808; else goto L_0269A7F0;
|
|
L_0269A7F0: ; // 0x269a7f0
|
|
/* 0269A7F0 */ _t16 = cpu->r[27] + 0x00000000u;
|
|
/* 0269A7F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0269A7F4 */ _t17 = cpu->r[31] + 0xFFFF8058u;
|
|
/* 0269A7F4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0269A7F8 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269A7F8 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
/* 0269A7FC */ _t19 = cpu->r[11] + 0x000002D8u;
|
|
/* 0269A7FC */ cpu->r[3] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0269A800 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269A804 */ Gambit_fn_02450B74(cpu);
|
|
L_0269A808: ; // 0x269a808
|
|
/* 0269A808 */ cpu->r[26] = cpu->r[26] + 0xFFFFFFFFu;
|
|
/* 0269A808 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 0269A80C */ cpu->r[28] = cpu->r[28] + 0x00000001u;
|
|
/* 0269A810 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269A810 */ _t21 = _t20 & 0x00000001u;
|
|
/* 0269A810 */ if (_t21) goto L_0269A814; else goto L_0269A7B8;
|
|
L_0269A814: ; // 0x269a814
|
|
/* 0269A814 */ _t22 = cpu->r[31] + 0xFFFF8058u;
|
|
/* 0269A814 */ cpu->r[12] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0269A818 */ _t23 = cpu->r[12] + 0x00000250u;
|
|
/* 0269A818 */ cpu->r[11] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0269A81C */ _t24 = cpu->r[11] + 0x00000250u;
|
|
/* 0269A81C */ cpu->r[12] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0269A820 */ _t25 = cpu->r[12] + 0x000000A0u;
|
|
/* 0269A820 */ cpu->r[3] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0269A824 */ cpu->r[4] = 0x00000000u;
|
|
/* 0269A828 */ Gambit_fn_0206EAA8(cpu);
|
|
/* 0269A82C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0269A830 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269A830 */ _t27 = _t26 & 0x00000001u;
|
|
/* 0269A830 */ if (_t27) goto L_0269A874; else goto L_0269A834;
|
|
L_0269A834: ; // 0x269a834
|
|
/* 0269A834 */ goto L_0269A868;
|
|
L_0269A838: ; // 0x269a838
|
|
/* 0269A838 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 0269A83C */ Gambit_fn_027E3E2C(cpu);
|
|
/* 0269A840 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[3]);
|
|
/* 0269A844 */ _t28 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269A844 */ _t29 = _t28 & 0x00000001u;
|
|
/* 0269A844 */ if (_t29) goto L_0269A794; else goto L_0269A848;
|
|
L_0269A848: ; // 0x269a848
|
|
/* 0269A848 */ _t30 = cpu->r[31] + 0xFFFF8058u;
|
|
/* 0269A848 */ cpu->r[12] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0269A84C */ _t31 = cpu->r[12] + 0x00000250u;
|
|
/* 0269A84C */ cpu->r[11] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0269A850 */ _t32 = cpu->r[11] + 0x00000250u;
|
|
/* 0269A850 */ cpu->r[12] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0269A854 */ _t33 = cpu->r[12] + 0x000000A0u;
|
|
/* 0269A854 */ cpu->r[3] = rbrew_read32(cpu->mem, _t33);
|
|
/* 0269A858 */ cpu->r[4] = 0x00000000u;
|
|
/* 0269A85C */ Gambit_fn_0206EAA8(cpu);
|
|
/* 0269A860 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0269A864 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269A864 */ _t35 = _t34 & 0x00000001u;
|
|
/* 0269A864 */ if (_t35) goto L_0269A874; else goto L_0269A868;
|
|
L_0269A868: ; // 0x269a868
|
|
/* 0269A868 */ _t36 = cpu->r[31] + 0xFFFF8058u;
|
|
/* 0269A868 */ cpu->r[8] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0269A86C */ _t37 = cpu->r[8] + 0x000002D8u;
|
|
/* 0269A86C */ cpu->r[3] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0269A870 */ Gambit_fn_02450BEC(cpu);
|
|
L_0269A874: ; // 0x269a874
|
|
/* 0269A874 */ _t38 = cpu->r[31] + 0xFFFF8058u;
|
|
/* 0269A874 */ cpu->r[9] = rbrew_read32(cpu->mem, _t38);
|
|
/* 0269A878 */ _t39 = cpu->r[9] + 0x00000250u;
|
|
/* 0269A878 */ cpu->r[10] = rbrew_read32(cpu->mem, _t39);
|
|
/* 0269A87C */ _t40 = cpu->r[10] + 0x00000250u;
|
|
/* 0269A87C */ cpu->r[12] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0269A880 */ cpu->r[29] = 0x00000000u;
|
|
/* 0269A884 */ _t41 = cpu->r[12] + 0x000000A0u;
|
|
/* 0269A884 */ cpu->r[3] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0269A888 */ cpu->r[4] = cpu->r[29];
|
|
/* 0269A88C */ Gambit_fn_0206EAA8(cpu);
|
|
/* 0269A890 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0269A894 */ _t42 = cpu->r[30] + 0x00006000u;
|
|
/* 0269A894 */ cpu->r[10] = rbrew_read32(cpu->mem, _t42);
|
|
/* 0269A898 */ _t43 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269A898 */ _t44 = _t43 & 0x00000001u;
|
|
/* 0269A898 */ if (_t44) goto L_0269A89C; else goto L_0269A8A0;
|
|
L_0269A89C: ; // 0x269a89c
|
|
/* 0269A89C */ cpu->r[29] = 0x00000001u;
|
|
L_0269A8A0: ; // 0x269a8a0
|
|
/* 0269A8A0 */ _t45 = cpu->r[10] + 0x00000268u;
|
|
/* 0269A8A0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t45);
|
|
/* 0269A8A4 */ cpu->r[3] = cpu->r[30];
|
|
/* 0269A8A8 */ Gambit_fn_0261F774(cpu);
|
|
/* 0269A8AC */ cpu->r[4] = cpu->r[3];
|
|
/* 0269A8B0 */ cpu->r[3] = cpu->r[30];
|
|
/* 0269A8B4 */ Gambit_fn_0261F55C(cpu);
|
|
/* 0269A8B8 */ cpu->r[4] = 0x00000000u;
|
|
/* 0269A8BC */ Gambit_fn_025A97C4(cpu);
|
|
/* 0269A8C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0269A8C4 */ _t46 = cpu->r[31] + 0xFFFF8058u;
|
|
/* 0269A8C4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t46);
|
|
/* 0269A8C8 */ _t47 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269A8C8 */ _t48 = _t47 & 0x00000001u;
|
|
/* 0269A8C8 */ if (_t48) goto L_0269A8D0; else goto L_0269A8CC;
|
|
L_0269A8CC: ; // 0x269a8cc
|
|
/* 0269A8CC */ cpu->r[29] = 0x00000001u;
|
|
L_0269A8D0: ; // 0x269a8d0
|
|
/* 0269A8D0 */ _t49 = cpu->r[12] + 0x000002D8u;
|
|
/* 0269A8D0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t49);
|
|
/* 0269A8D4 */ cpu->r[4] = cpu->r[29];
|
|
/* 0269A8D8 */ Gambit_fn_02450B28(cpu);
|
|
/* 0269A8DC */ /* nop */
|
|
/* 0269A8E0 */ _t50 = cpu->r[1] + 0x00000034u;
|
|
/* 0269A8E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t50);
|
|
/* 0269A8E4 */ cpu->lr = cpu->r[0];
|
|
/* 0269A8E8 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 0269A8EC */ return;
|
|
}
|
|
|
|
// fn_0269A8F0 @ 0x269a8f0
|
|
void Gambit_fn_0269A8F0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0269A8F0: ; // 0x269a8f0
|
|
/* 0269A8F0 */ cpu->r[0] = cpu->lr;
|
|
/* 0269A8F4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0269A8F4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269A8F4 */ cpu->r[1] = _t0;
|
|
/* 0269A8F8 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0269A8F8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0269A8FC */ cpu->r[31] = cpu->r[3];
|
|
/* 0269A900 */ cpu->r[3] = cpu->r[31] + 0x00000248u;
|
|
/* 0269A904 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269A904 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0269A908 */ Gambit_fn_0269B9E4(cpu);
|
|
/* 0269A90C */ cpu->r[3] = cpu->r[31];
|
|
/* 0269A910 */ Gambit_fn_0269A76C(cpu);
|
|
/* 0269A914 */ cpu->r[11] = 0x100E0000u;
|
|
/* 0269A918 */ cpu->r[0] = 0x00000006u;
|
|
/* 0269A91C */ _t3 = cpu->r[11] + 0x00004198u;
|
|
/* 0269A91C */ cpu->r[8] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0269A920 */ cpu->r[9] = 0x00000004u;
|
|
/* 0269A924 */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 0269A924 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0269A928 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269A92C */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0269A92C */ rbrew_write32(cpu->mem, _t5, cpu->r[9]);
|
|
/* 0269A930 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269A934 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269A938 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269A938 */ rbrew_write32(cpu->mem, _t6, cpu->r[8]);
|
|
/* 0269A93C */ Gambit_fn_02791888(cpu);
|
|
/* 0269A940 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 0269A940 */ cpu->r[7] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269A944 */ cpu->r[7] = cpu->r[7] | 0x00000040u;
|
|
/* 0269A948 */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0269A948 */ rbrew_write32(cpu->mem, _t8, cpu->r[7]);
|
|
/* 0269A94C */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269A94C */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269A950 */ cpu->lr = cpu->r[0];
|
|
/* 0269A954 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0269A954 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269A958 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269A95C */ return;
|
|
}
|
|
|
|
// fn_0269A8F4 @ 0x269a8f4
|
|
void Gambit_fn_0269A8F4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0269A8F4: ; // 0x269a8f4
|
|
/* 0269A8F4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0269A8F4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269A8F4 */ cpu->r[1] = _t0;
|
|
/* 0269A8F8 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0269A8F8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0269A8FC */ cpu->r[31] = cpu->r[3];
|
|
/* 0269A900 */ cpu->r[3] = cpu->r[31] + 0x00000248u;
|
|
/* 0269A904 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269A904 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0269A908 */ Gambit_fn_0269B9E4(cpu);
|
|
/* 0269A90C */ cpu->r[3] = cpu->r[31];
|
|
/* 0269A910 */ Gambit_fn_0269A76C(cpu);
|
|
/* 0269A914 */ cpu->r[11] = 0x100E0000u;
|
|
/* 0269A918 */ cpu->r[0] = 0x00000006u;
|
|
/* 0269A91C */ _t3 = cpu->r[11] + 0x00004198u;
|
|
/* 0269A91C */ cpu->r[8] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0269A920 */ cpu->r[9] = 0x00000004u;
|
|
/* 0269A924 */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 0269A924 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0269A928 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269A92C */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0269A92C */ rbrew_write32(cpu->mem, _t5, cpu->r[9]);
|
|
/* 0269A930 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269A934 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269A938 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269A938 */ rbrew_write32(cpu->mem, _t6, cpu->r[8]);
|
|
/* 0269A93C */ Gambit_fn_02791888(cpu);
|
|
/* 0269A940 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 0269A940 */ cpu->r[7] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269A944 */ cpu->r[7] = cpu->r[7] | 0x00000040u;
|
|
/* 0269A948 */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0269A948 */ rbrew_write32(cpu->mem, _t8, cpu->r[7]);
|
|
/* 0269A94C */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269A94C */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269A950 */ cpu->lr = cpu->r[0];
|
|
/* 0269A954 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0269A954 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269A958 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269A95C */ return;
|
|
}
|
|
|
|
// fn_0269A9A0 @ 0x269a9a0
|
|
void Gambit_fn_0269A9A0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0269A9A0: ; // 0x269a9a0
|
|
/* 0269A9A0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0269A9A0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269A9A0 */ cpu->r[1] = _t0;
|
|
/* 0269A9A4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269A9A4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0269A9A8 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269A9AC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0269A9AC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0269A9B0 */ _t3 = cpu->r[31] + 0x00000250u;
|
|
/* 0269A9B0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0269A9B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000002u);
|
|
/* 0269A9B8 */ _t4 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0269A9B8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0269A9B8 */ if (_t5) goto L_0269A9BC; else goto L_0269A9E4;
|
|
L_0269A9BC: ; // 0x269a9bc
|
|
/* 0269A9BC */ Gambit_fn_027FA9BC(cpu);
|
|
/* 0269A9C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0269A9C4 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269A9C4 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0269A9C4 */ if (_t7) goto L_0269A9E4; else goto L_0269A9C8;
|
|
L_0269A9C8: ; // 0x269a9c8
|
|
/* 0269A9C8 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0269A9CC */ cpu->r[0] = 0x00000000u;
|
|
/* 0269A9D0 */ _t8 = cpu->r[12] + 0x00004364u;
|
|
/* 0269A9D0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0269A9D4 */ cpu->r[3] = cpu->r[31] + 0x00000248u;
|
|
/* 0269A9D8 */ cpu->r[4] = 0x00000001u;
|
|
/* 0269A9DC */ _t9 = cpu->r[12] + 0x00000164u;
|
|
/* 0269A9DC */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[0]);
|
|
/* 0269A9E0 */ Gambit_fn_0269BADC(cpu);
|
|
L_0269A9E4: ; // 0x269a9e4
|
|
/* 0269A9E4 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0269A9E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269A9E8 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269A9E8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0269A9EC */ cpu->lr = cpu->r[0];
|
|
/* 0269A9F0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0269A9F4 */ return;
|
|
}
|
|
|
|
// fn_0269A9FC @ 0x269a9fc
|
|
void Gambit_fn_0269A9FC(CPUState* cpu) {
|
|
uint32_t _t0, _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_0269A9FC: ; // 0x269a9fc
|
|
/* 0269A9FC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0269A9FC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269A9FC */ cpu->r[1] = _t0;
|
|
/* 0269AA00 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269AA00 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0269AA04 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269AA08 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0269AA08 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0269AA0C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0269AA0C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269AA10 */ Gambit_fn_027DF9A0(cpu);
|
|
/* 0269AA14 */ _t4 = cpu->r[3] + 0x0000008Cu;
|
|
/* 0269AA14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269AA18 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000016u, 0x00000016u);
|
|
/* 0269AA18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0269AA1C */ cpu->r[30] = 0x101D0000u;
|
|
/* 0269AA20 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269AA20 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0269AA20 */ if (_t6) goto L_0269AA5C; else goto L_0269AA24;
|
|
L_0269AA24: ; // 0x269aa24
|
|
/* 0269AA24 */ _t7 = cpu->r[30] + 0xFFFF8058u;
|
|
/* 0269AA24 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269AA28 */ _t8 = cpu->r[8] + 0x000002D8u;
|
|
/* 0269AA28 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0269AA2C */ Gambit_fn_02450BF4(cpu);
|
|
/* 0269AA30 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0269AA34 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269AA34 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0269AA34 */ if (_t10) goto L_0269AA38; else goto L_0269AA5C;
|
|
L_0269AA38: ; // 0x269aa38
|
|
/* 0269AA38 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0269AA3C */ _t11 = cpu->r[12] + 0xFFFF927Cu;
|
|
/* 0269AA3C */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0269AA40 */ _t12 = cpu->r[12] + 0x00000158u;
|
|
/* 0269AA40 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0269AA44 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000002u);
|
|
/* 0269AA48 */ _t13 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269AA48 */ _t14 = _t13 & 0x00000001u;
|
|
/* 0269AA48 */ if (_t14) goto L_0269AA4C; else goto L_0269AA5C;
|
|
L_0269AA4C: ; // 0x269aa4c
|
|
/* 0269AA4C */ cpu->r[3] = cpu->r[31] + 0x00000248u;
|
|
/* 0269AA50 */ cpu->r[4] = 0x00000002u;
|
|
/* 0269AA54 */ Gambit_fn_0269BADC(cpu);
|
|
/* 0269AA58 */ goto L_0269AAD8;
|
|
L_0269AA5C: ; // 0x269aa5c
|
|
/* 0269AA5C */ cpu->r[10] = 0x101C0000u;
|
|
/* 0269AA60 */ _t15 = cpu->r[10] + 0x00006000u;
|
|
/* 0269AA60 */ cpu->r[10] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0269AA64 */ _t16 = cpu->r[10] + 0x00000264u;
|
|
/* 0269AA64 */ cpu->r[9] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0269AA68 */ _t17 = cpu->r[9] + 0x00000030u;
|
|
/* 0269AA68 */ cpu->r[7] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0269AA6C */ _t18 = cpu->r[7] + 0x000000ECu;
|
|
/* 0269AA6C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0269AA70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0269AA74 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269AA74 */ _t20 = _t19 & 0x00000001u;
|
|
/* 0269AA74 */ if (_t20) goto L_0269AAB8; else goto L_0269AA78;
|
|
L_0269AA78: ; // 0x269aa78
|
|
/* 0269AA78 */ cpu->r[11] = 0x101C0000u;
|
|
/* 0269AA7C */ _t21 = cpu->r[11] + 0x00007D34u;
|
|
/* 0269AA7C */ cpu->r[11] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0269AA80 */ cpu->r[12] = cpu->r[9] + cpu->r[11];
|
|
/* 0269AA84 */ _t22 = cpu->r[12] + 0x00000104u;
|
|
/* 0269AA84 */ cpu->r[10] = rbrew_read8(cpu->mem, _t22);
|
|
/* 0269AA88 */ _t23 = cpu->r[9] + 0x00000030u;
|
|
/* 0269AA88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0269AA8C */ cpu->r[7] = rbrew_rlwinm(cpu->r[10], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0269AA90 */ _t24 = cpu->r[7] + cpu->r[0];
|
|
/* 0269AA90 */ cpu->r[9] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0269AA94 */ _t25 = cpu->r[9] + 0x00000004u;
|
|
/* 0269AA94 */ cpu->r[12] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0269AA98 */ _t26 = cpu->r[12] + 0x00000000u;
|
|
/* 0269AA98 */ cpu->r[3] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0269AA9C */ Gambit_fn_0264D3D8(cpu);
|
|
/* 0269AAA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0269AAA4 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269AAA4 */ _t28 = _t27 & 0x00000001u;
|
|
/* 0269AAA4 */ if (_t28) goto L_0269AAB8; else goto L_0269AAA8;
|
|
L_0269AAA8: ; // 0x269aaa8
|
|
/* 0269AAA8 */ cpu->r[3] = cpu->r[31] + 0x00000248u;
|
|
/* 0269AAAC */ cpu->r[4] = 0x00000003u;
|
|
/* 0269AAB0 */ Gambit_fn_0269BADC(cpu);
|
|
/* 0269AAB4 */ goto L_0269AAD8;
|
|
L_0269AAB8: ; // 0x269aab8
|
|
/* 0269AAB8 */ _t29 = cpu->r[30] + 0xFFFF8058u;
|
|
/* 0269AAB8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0269AABC */ _t30 = cpu->r[9] + 0x000002D8u;
|
|
/* 0269AABC */ cpu->r[3] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0269AAC0 */ Gambit_fn_02450BE4(cpu);
|
|
/* 0269AAC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0269AAC8 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269AAC8 */ _t32 = _t31 & 0x00000001u;
|
|
/* 0269AAC8 */ if (_t32) goto L_0269AAD8; else goto L_0269AACC;
|
|
L_0269AACC: ; // 0x269aacc
|
|
/* 0269AACC */ cpu->r[3] = cpu->r[31] + 0x00000248u;
|
|
/* 0269AAD0 */ cpu->r[4] = 0x00000004u;
|
|
/* 0269AAD4 */ Gambit_fn_0269BADC(cpu);
|
|
L_0269AAD8: ; // 0x269aad8
|
|
/* 0269AAD8 */ _t33 = cpu->r[1] + 0x00000014u;
|
|
/* 0269AAD8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 0269AADC */ _t34 = cpu->r[1] + 0x00000008u;
|
|
/* 0269AADC */ cpu->r[30] = rbrew_read32(cpu->mem, _t34);
|
|
/* 0269AAE0 */ cpu->lr = cpu->r[0];
|
|
/* 0269AAE4 */ _t35 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269AAE4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t35);
|
|
/* 0269AAE8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0269AAEC */ return;
|
|
}
|
|
|
|
// fn_0269AAF4 @ 0x269aaf4
|
|
void Gambit_fn_0269AAF4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_0269AAF4: ; // 0x269aaf4
|
|
/* 0269AAF4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0269AAF4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269AAF4 */ cpu->r[1] = _t0;
|
|
/* 0269AAF8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269AAF8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0269AAFC */ cpu->r[31] = 0x101D0000u;
|
|
/* 0269AB00 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0269AB00 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0269AB04 */ _t3 = cpu->r[31] + 0xFFFF8058u;
|
|
/* 0269AB04 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0269AB08 */ _t4 = cpu->r[11] + 0x000002D8u;
|
|
/* 0269AB08 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269AB0C */ Gambit_fn_024509C4(cpu);
|
|
/* 0269AB10 */ _t5 = cpu->r[31] + 0xFFFF8058u;
|
|
/* 0269AB10 */ cpu->r[10] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0269AB14 */ _t6 = cpu->r[10] + 0x000002D8u;
|
|
/* 0269AB14 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0269AB18 */ Gambit_fn_02450C8C(cpu);
|
|
/* 0269AB1C */ _t7 = cpu->r[31] + 0xFFFF8058u;
|
|
/* 0269AB1C */ cpu->r[9] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269AB20 */ _t8 = cpu->r[9] + 0x00000250u;
|
|
/* 0269AB20 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0269AB24 */ _t9 = cpu->r[12] + 0x00000250u;
|
|
/* 0269AB24 */ cpu->r[9] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269AB28 */ _t10 = cpu->r[9] + 0x000000B0u;
|
|
/* 0269AB28 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269AB2C */ cpu->r[31] = 0x00000001u;
|
|
/* 0269AB30 */ _t11 = cpu->r[12] + 0x00000070u;
|
|
/* 0269AB30 */ rbrew_write8(cpu->mem, _t11, (uint8_t)cpu->r[31]);
|
|
/* 0269AB34 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0269AB38 */ _t12 = cpu->r[12] + 0x00006000u;
|
|
/* 0269AB38 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0269AB3C */ _t13 = cpu->r[12] + 0x00000268u;
|
|
/* 0269AB3C */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0269AB40 */ Gambit_fn_0261F73C(cpu);
|
|
/* 0269AB44 */ Gambit_fn_025C82C4(cpu);
|
|
/* 0269AB48 */ cpu->r[11] = 0x101C0000u;
|
|
/* 0269AB4C */ _t14 = cpu->r[11] + 0x00004364u;
|
|
/* 0269AB4C */ cpu->r[11] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0269AB50 */ _t15 = cpu->r[11] + 0x00000164u;
|
|
/* 0269AB50 */ rbrew_write8(cpu->mem, _t15, (uint8_t)cpu->r[31]);
|
|
/* 0269AB54 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 0269AB54 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0269AB58 */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269AB58 */ cpu->r[31] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0269AB5C */ cpu->lr = cpu->r[0];
|
|
/* 0269AB60 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0269AB64 */ return;
|
|
}
|
|
|
|
// fn_0269AB6C @ 0x269ab6c
|
|
void Gambit_fn_0269AB6C(CPUState* cpu) {
|
|
uint32_t _t0, _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_0269AB6C: ; // 0x269ab6c
|
|
/* 0269AB6C */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 0269AB6C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269AB6C */ cpu->r[1] = _t0;
|
|
/* 0269AB70 */ _t1 = cpu->r[1] + 0x00000020u;
|
|
/* 0269AB70 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0269AB74 */ _t2 = cpu->r[1] + 0x00000024u;
|
|
/* 0269AB74 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0269AB78 */ cpu->r[30] = 0x101D0000u;
|
|
/* 0269AB7C */ _t3 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0269AB7C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269AB80 */ _t4 = cpu->r[30] + 0xFFFF8058u;
|
|
/* 0269AB80 */ cpu->r[5] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269AB80 */ cpu->r[30] = _t4;
|
|
/* 0269AB84 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269AB88 */ _t5 = cpu->r[5] + 0x000002D8u;
|
|
/* 0269AB88 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0269AB8C */ Gambit_fn_024504D4(cpu);
|
|
/* 0269AB90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0269AB94 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269AB94 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0269AB94 */ if (_t7) goto L_0269AB98; else goto L_0269AC1C;
|
|
L_0269AB98: ; // 0x269ab98
|
|
/* 0269AB98 */ _t8 = cpu->r[30] + 0x00000000u;
|
|
/* 0269AB98 */ cpu->r[7] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0269AB9C */ _t9 = cpu->r[7] + 0x000002D8u;
|
|
/* 0269AB9C */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269ABA0 */ Gambit_fn_02450CD0(cpu);
|
|
/* 0269ABA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0269ABA8 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269ABA8 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0269ABA8 */ if (_t11) goto L_0269AC38; else goto L_0269ABAC;
|
|
L_0269ABAC: ; // 0x269abac
|
|
/* 0269ABAC */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0269ABB0 */ Gambit_fn_02171048(cpu);
|
|
/* 0269ABB4 */ _t12 = cpu->r[30] + 0x00000000u;
|
|
/* 0269ABB4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0269ABB8 */ _t13 = cpu->r[9] + 0x000002D8u;
|
|
/* 0269ABB8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0269ABBC */ Gambit_fn_02450CD8(cpu);
|
|
/* 0269ABC0 */ cpu->r[4] = cpu->r[3];
|
|
/* 0269ABC4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0269ABC8 */ Gambit_fn_021710A0(cpu);
|
|
/* 0269ABCC */ cpu->r[10] = 0x101C0000u;
|
|
/* 0269ABD0 */ _t14 = cpu->r[10] + 0x00001358u;
|
|
/* 0269ABD0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0269ABD4 */ _t15 = cpu->r[10] + 0x00000010u;
|
|
/* 0269ABD4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0269ABD8 */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 0269ABD8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0269ABDC */ _t17 = cpu->r[8] + 0x00000000u;
|
|
/* 0269ABDC */ cpu->r[10] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0269ABE0 */ _t18 = cpu->r[10] + 0x00000040u;
|
|
/* 0269ABE0 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
/* 0269ABE4 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269ABE4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0269ABE8 */ _t20 = cpu->r[10] + 0x00000044u;
|
|
/* 0269ABE8 */ rbrew_write32(cpu->mem, _t20, cpu->r[11]);
|
|
/* 0269ABEC */ _t21 = cpu->r[1] + 0x00000010u;
|
|
/* 0269ABEC */ cpu->r[12] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0269ABF0 */ _t22 = cpu->r[10] + 0x00000048u;
|
|
/* 0269ABF0 */ rbrew_write32(cpu->mem, _t22, cpu->r[12]);
|
|
/* 0269ABF4 */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 0269ABF4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0269ABF8 */ _t24 = cpu->r[10] + 0x0000004Cu;
|
|
/* 0269ABF8 */ rbrew_write32(cpu->mem, _t24, cpu->r[0]);
|
|
/* 0269ABFC */ _t25 = cpu->r[1] + 0x00000018u;
|
|
/* 0269ABFC */ cpu->r[6] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0269AC00 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0269AC04 */ _t26 = cpu->r[10] + 0x00000050u;
|
|
/* 0269AC04 */ rbrew_write32(cpu->mem, _t26, cpu->r[6]);
|
|
/* 0269AC08 */ _t27 = cpu->r[12] + 0x00006000u;
|
|
/* 0269AC08 */ cpu->r[12] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0269AC0C */ _t28 = cpu->r[12] + 0x00000268u;
|
|
/* 0269AC0C */ cpu->r[3] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0269AC10 */ Gambit_fn_0261F73C(cpu);
|
|
/* 0269AC14 */ cpu->r[4] = 0x00000001u;
|
|
/* 0269AC18 */ Gambit_fn_025A8F50(cpu);
|
|
L_0269AC1C: ; // 0x269ac1c
|
|
/* 0269AC1C */ cpu->r[11] = 0x101C0000u;
|
|
/* 0269AC20 */ cpu->r[0] = 0x00000000u;
|
|
/* 0269AC24 */ _t29 = cpu->r[11] + 0x00004364u;
|
|
/* 0269AC24 */ cpu->r[11] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0269AC28 */ cpu->r[3] = cpu->r[31] + 0x00000248u;
|
|
/* 0269AC2C */ cpu->r[4] = 0x00000001u;
|
|
/* 0269AC30 */ _t30 = cpu->r[11] + 0x00000164u;
|
|
/* 0269AC30 */ rbrew_write8(cpu->mem, _t30, (uint8_t)cpu->r[0]);
|
|
/* 0269AC34 */ Gambit_fn_0269BADC(cpu);
|
|
L_0269AC38: ; // 0x269ac38
|
|
/* 0269AC38 */ _t31 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0269AC38 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0269AC3C */ _t32 = cpu->r[1] + 0x00000020u;
|
|
/* 0269AC3C */ cpu->r[30] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0269AC40 */ cpu->lr = cpu->r[0];
|
|
/* 0269AC44 */ _t33 = cpu->r[1] + 0x00000024u;
|
|
/* 0269AC44 */ cpu->r[31] = rbrew_read32(cpu->mem, _t33);
|
|
/* 0269AC48 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 0269AC4C */ return;
|
|
}
|
|
|
|
// fn_0269AC54 @ 0x269ac54
|
|
void Gambit_fn_0269AC54(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0269AC54: ; // 0x269ac54
|
|
/* 0269AC54 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0269AC54 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269AC54 */ cpu->r[1] = _t0;
|
|
/* 0269AC58 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269AC58 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0269AC5C */ cpu->r[31] = 0x101D0000u;
|
|
/* 0269AC60 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0269AC60 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0269AC64 */ _t3 = cpu->r[31] + 0xFFFF8058u;
|
|
/* 0269AC64 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0269AC68 */ _t4 = cpu->r[12] + 0x000002D8u;
|
|
/* 0269AC68 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269AC6C */ Gambit_fn_024508C8(cpu);
|
|
/* 0269AC70 */ _t5 = cpu->r[31] + 0xFFFF8058u;
|
|
/* 0269AC70 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0269AC74 */ _t6 = cpu->r[12] + 0x00000250u;
|
|
/* 0269AC74 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0269AC78 */ _t7 = cpu->r[12] + 0x00000250u;
|
|
/* 0269AC78 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269AC7C */ _t8 = cpu->r[12] + 0x000000B0u;
|
|
/* 0269AC7C */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0269AC80 */ cpu->r[0] = 0x00000000u;
|
|
/* 0269AC84 */ _t9 = cpu->r[12] + 0x00000070u;
|
|
/* 0269AC84 */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[0]);
|
|
/* 0269AC88 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0269AC88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269AC8C */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269AC8C */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0269AC90 */ cpu->lr = cpu->r[0];
|
|
/* 0269AC94 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0269AC98 */ return;
|
|
}
|
|
|
|
// fn_0269ACAC @ 0x269acac
|
|
void Gambit_fn_0269ACAC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_0269ACAC: ; // 0x269acac
|
|
/* 0269ACAC */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 0269ACAC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269ACAC */ cpu->r[1] = _t0;
|
|
/* 0269ACB0 */ _t1 = cpu->r[12] + 0x00006000u;
|
|
/* 0269ACB0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0269ACB4 */ _t2 = cpu->r[11] + 0x00007D34u;
|
|
/* 0269ACB4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0269ACB8 */ _t3 = cpu->r[12] + 0x00000264u;
|
|
/* 0269ACB8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0269ACBC */ cpu->r[11] = cpu->r[12] + cpu->r[11];
|
|
/* 0269ACC0 */ _t4 = cpu->r[11] + 0x00000104u;
|
|
/* 0269ACC0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t4);
|
|
/* 0269ACC4 */ _t5 = cpu->r[12] + 0x00000030u;
|
|
/* 0269ACC4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0269ACC8 */ cpu->r[11] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0269ACCC */ _t6 = cpu->r[11] + cpu->r[12];
|
|
/* 0269ACCC */ cpu->r[11] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0269ACD0 */ _t7 = cpu->r[11] + 0x00000004u;
|
|
/* 0269ACD0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269ACD4 */ _t8 = cpu->r[12] + 0x00000000u;
|
|
/* 0269ACD4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0269ACD8 */ Gambit_fn_0264D3E0(cpu);
|
|
/* 0269ACDC */ Gambit_fn_027FAB30(cpu);
|
|
/* 0269ACE0 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269ACE0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269ACE4 */ cpu->lr = cpu->r[0];
|
|
/* 0269ACE8 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 0269ACEC */ return;
|
|
}
|
|
|
|
// fn_0269ACF0 @ 0x269acf0
|
|
void Gambit_fn_0269ACF0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_0269ACF0: ; // 0x269acf0
|
|
/* 0269ACF0 */ cpu->r[0] = 0x00000000u;
|
|
/* 0269ACF4 */ cpu->r[12] = 0x00000004u;
|
|
/* 0269ACF8 */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 0269ACF8 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 0269ACFC */ _t1 = cpu->r[3] + 0x00000004u;
|
|
/* 0269ACFC */ rbrew_write32(cpu->mem, _t1, cpu->r[12]);
|
|
/* 0269AD00 */ _t2 = cpu->r[3] + 0x00000008u;
|
|
/* 0269AD00 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0269AD04 */ return;
|
|
}
|
|
|
|
// fn_0269AD08 @ 0x269ad08
|
|
void Gambit_fn_0269AD08(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_0269AD08: ; // 0x269ad08
|
|
/* 0269AD08 */ cpu->r[0] = cpu->lr;
|
|
/* 0269AD0C */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 0269AD0C */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 0269AD10 */ cpu->r[11] = cpu->r[3];
|
|
/* 0269AD14 */ _t1 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0269AD14 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 0269AD14 */ cpu->r[1] = _t1;
|
|
/* 0269AD18 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0269AD1C */ Gambit_fn_0269ACF0(cpu);
|
|
/* 0269AD20 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269AD20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0269AD24 */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 0269AD24 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0269AD28 */ _t4 = cpu->r[11] + 0x00000004u;
|
|
/* 0269AD28 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0269AD2C */ cpu->r[0] = 0x00000001u;
|
|
/* 0269AD30 */ _t5 = cpu->r[11] + 0x00000008u;
|
|
/* 0269AD30 */ rbrew_write32(cpu->mem, _t5, cpu->r[12]);
|
|
/* 0269AD34 */ _t6 = cpu->r[11] + 0x00000000u;
|
|
/* 0269AD34 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0269AD38 */ _t7 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269AD38 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269AD3C */ cpu->lr = cpu->r[0];
|
|
/* 0269AD40 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269AD44 */ return;
|
|
}
|
|
|
|
// fn_0269AD14 @ 0x269ad14
|
|
void Gambit_fn_0269AD14(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_0269AD14: ; // 0x269ad14
|
|
/* 0269AD14 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0269AD14 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269AD14 */ cpu->r[1] = _t0;
|
|
/* 0269AD18 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0269AD1C */ Gambit_fn_0269ACF0(cpu);
|
|
/* 0269AD20 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269AD20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0269AD24 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 0269AD24 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0269AD28 */ _t3 = cpu->r[11] + 0x00000004u;
|
|
/* 0269AD28 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269AD2C */ cpu->r[0] = 0x00000001u;
|
|
/* 0269AD30 */ _t4 = cpu->r[11] + 0x00000008u;
|
|
/* 0269AD30 */ rbrew_write32(cpu->mem, _t4, cpu->r[12]);
|
|
/* 0269AD34 */ _t5 = cpu->r[11] + 0x00000000u;
|
|
/* 0269AD34 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0269AD38 */ _t6 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269AD38 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0269AD3C */ cpu->lr = cpu->r[0];
|
|
/* 0269AD40 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269AD44 */ return;
|
|
}
|
|
|
|
// fn_0269AD4C @ 0x269ad4c
|
|
void Gambit_fn_0269AD4C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_0269AD4C: ; // 0x269ad4c
|
|
/* 0269AD4C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0269AD4C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269AD4C */ cpu->r[1] = _t0;
|
|
/* 0269AD50 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0269AD50 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0269AD54 */ cpu->r[31] = 0x101D0000u;
|
|
/* 0269AD58 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269AD58 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0269AD5C */ _t3 = cpu->r[31] + 0xFFFF8058u;
|
|
/* 0269AD5C */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0269AD60 */ _t4 = cpu->r[11] + 0x00000250u;
|
|
/* 0269AD60 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269AD64 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0269AD68 */ _t5 = cpu->r[12] + 0x00000250u;
|
|
/* 0269AD68 */ cpu->r[10] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0269AD6C */ Gambit_fn_0269ACF0(cpu);
|
|
/* 0269AD70 */ _t6 = cpu->r[10] + 0x000000A0u;
|
|
/* 0269AD70 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0269AD74 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269AD78 */ Gambit_fn_0206E9F0(cpu);
|
|
/* 0269AD7C */ _t7 = cpu->r[31] + 0xFFFF8058u;
|
|
/* 0269AD7C */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269AD80 */ _t8 = cpu->r[11] + 0x00000250u;
|
|
/* 0269AD80 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0269AD84 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0269AD88 */ _t9 = cpu->r[12] + 0x00000250u;
|
|
/* 0269AD88 */ cpu->r[10] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269AD8C */ Gambit_fn_0269AD08(cpu);
|
|
/* 0269AD90 */ _t10 = cpu->r[10] + 0x000000A0u;
|
|
/* 0269AD90 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269AD94 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269AD98 */ Gambit_fn_0206E9F0(cpu);
|
|
/* 0269AD9C */ cpu->r[12] = 0x101C0000u;
|
|
/* 0269ADA0 */ _t11 = cpu->r[12] + 0x00004364u;
|
|
/* 0269ADA0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0269ADA4 */ cpu->r[0] = 0x00000001u;
|
|
/* 0269ADA8 */ _t12 = cpu->r[12] + 0x00000164u;
|
|
/* 0269ADA8 */ rbrew_write8(cpu->mem, _t12, (uint8_t)cpu->r[0]);
|
|
/* 0269ADAC */ _t13 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269ADAC */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0269ADB0 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 0269ADB0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0269ADB4 */ cpu->lr = cpu->r[0];
|
|
/* 0269ADB8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269ADBC */ return;
|
|
}
|
|
|
|
// fn_0269ADC0 @ 0x269adc0
|
|
void Gambit_fn_0269ADC0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0269ADC0: ; // 0x269adc0
|
|
/* 0269ADC0 */ cpu->r[0] = cpu->lr;
|
|
/* 0269ADC4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0269ADC4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269ADC4 */ cpu->r[1] = _t0;
|
|
/* 0269ADC8 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 0269ADC8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0269ADCC */ cpu->r[30] = 0x101C0000u;
|
|
/* 0269ADD0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0269ADD0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0269ADD4 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269ADD4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269ADD8 */ _t4 = cpu->r[30] + 0x00006000u;
|
|
/* 0269ADD8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269ADDC */ _t5 = cpu->r[12] + 0x00000268u;
|
|
/* 0269ADDC */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0269ADE0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269ADE4 */ Gambit_fn_0261F774(cpu);
|
|
/* 0269ADE8 */ cpu->r[4] = cpu->r[3];
|
|
/* 0269ADEC */ cpu->r[3] = cpu->r[31];
|
|
/* 0269ADF0 */ Gambit_fn_0261F55C(cpu);
|
|
/* 0269ADF4 */ _t6 = cpu->r[30] + 0x00006000u;
|
|
/* 0269ADF4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0269ADF8 */ cpu->r[30] = cpu->r[3];
|
|
/* 0269ADFC */ _t7 = cpu->r[11] + 0x000002B4u;
|
|
/* 0269ADFC */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269AE00 */ cpu->r[4] = cpu->r[30];
|
|
/* 0269AE04 */ Gambit_fn_023B8EEC(cpu);
|
|
/* 0269AE08 */ cpu->r[0] = 0x00000004u;
|
|
/* 0269AE0C */ cpu->r[31] = cpu->r[3];
|
|
/* 0269AE10 */ cpu->r[3] = cpu->r[30];
|
|
/* 0269AE14 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269AE18 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 0269AE18 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0269AE1C */ Gambit_fn_025C6D0C(cpu);
|
|
/* 0269AE20 */ cpu->r[5] = cpu->r[31] + 0x00000018u;
|
|
/* 0269AE24 */ cpu->r[3] = cpu->r[30];
|
|
/* 0269AE28 */ cpu->r[4] = cpu->r[31] + 0x00000024u;
|
|
/* 0269AE2C */ cpu->r[6] = cpu->r[5];
|
|
/* 0269AE30 */ Gambit_fn_025C70C8(cpu);
|
|
/* 0269AE34 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269AE34 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269AE38 */ _t10 = cpu->r[1] + 0x00000010u;
|
|
/* 0269AE38 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269AE3C */ cpu->lr = cpu->r[0];
|
|
/* 0269AE40 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 0269AE40 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0269AE44 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269AE48 */ return;
|
|
}
|
|
|
|
// fn_0269ADC4 @ 0x269adc4
|
|
void Gambit_fn_0269ADC4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0269ADC4: ; // 0x269adc4
|
|
/* 0269ADC4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0269ADC4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269ADC4 */ cpu->r[1] = _t0;
|
|
/* 0269ADC8 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 0269ADC8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0269ADCC */ cpu->r[30] = 0x101C0000u;
|
|
/* 0269ADD0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0269ADD0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0269ADD4 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269ADD4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269ADD8 */ _t4 = cpu->r[30] + 0x00006000u;
|
|
/* 0269ADD8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269ADDC */ _t5 = cpu->r[12] + 0x00000268u;
|
|
/* 0269ADDC */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0269ADE0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269ADE4 */ Gambit_fn_0261F774(cpu);
|
|
/* 0269ADE8 */ cpu->r[4] = cpu->r[3];
|
|
/* 0269ADEC */ cpu->r[3] = cpu->r[31];
|
|
/* 0269ADF0 */ Gambit_fn_0261F55C(cpu);
|
|
/* 0269ADF4 */ _t6 = cpu->r[30] + 0x00006000u;
|
|
/* 0269ADF4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0269ADF8 */ cpu->r[30] = cpu->r[3];
|
|
/* 0269ADFC */ _t7 = cpu->r[11] + 0x000002B4u;
|
|
/* 0269ADFC */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269AE00 */ cpu->r[4] = cpu->r[30];
|
|
/* 0269AE04 */ Gambit_fn_023B8EEC(cpu);
|
|
/* 0269AE08 */ cpu->r[0] = 0x00000004u;
|
|
/* 0269AE0C */ cpu->r[31] = cpu->r[3];
|
|
/* 0269AE10 */ cpu->r[3] = cpu->r[30];
|
|
/* 0269AE14 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269AE18 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 0269AE18 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0269AE1C */ Gambit_fn_025C6D0C(cpu);
|
|
/* 0269AE20 */ cpu->r[5] = cpu->r[31] + 0x00000018u;
|
|
/* 0269AE24 */ cpu->r[3] = cpu->r[30];
|
|
/* 0269AE28 */ cpu->r[4] = cpu->r[31] + 0x00000024u;
|
|
/* 0269AE2C */ cpu->r[6] = cpu->r[5];
|
|
/* 0269AE30 */ Gambit_fn_025C70C8(cpu);
|
|
/* 0269AE34 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269AE34 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269AE38 */ _t10 = cpu->r[1] + 0x00000010u;
|
|
/* 0269AE38 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269AE3C */ cpu->lr = cpu->r[0];
|
|
/* 0269AE40 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 0269AE40 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0269AE44 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269AE48 */ return;
|
|
}
|
|
|
|
// fn_0269AE4C @ 0x269ae4c
|
|
void Gambit_fn_0269AE4C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_0269AE4C: ; // 0x269ae4c
|
|
/* 0269AE4C */ cpu->r[0] = cpu->lr;
|
|
/* 0269AE50 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0269AE50 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269AE50 */ cpu->r[1] = _t0;
|
|
/* 0269AE54 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269AE54 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0269AE58 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0269AE58 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0269AE5C */ cpu->r[30] = 0x101C0000u;
|
|
/* 0269AE60 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269AE64 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0269AE64 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269AE68 */ _t4 = cpu->r[30] + 0x000060F4u;
|
|
/* 0269AE68 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269AE6C */ Gambit_fn_023ECD34(cpu);
|
|
/* 0269AE70 */ _t5 = cpu->r[30] + 0x000060F4u;
|
|
/* 0269AE70 */ cpu->r[11] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0269AE74 */ cpu->r[12] = cpu->r[11] + 0x00080000u;
|
|
/* 0269AE78 */ _t6 = cpu->r[12] + 0xFFFFCD80u;
|
|
/* 0269AE78 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0269AE7C */ Gambit_fn_023E8064(cpu);
|
|
/* 0269AE80 */ _t7 = cpu->r[30] + 0x000060F4u;
|
|
/* 0269AE80 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269AE84 */ cpu->r[12] = cpu->r[11] + 0x00080000u;
|
|
/* 0269AE88 */ _t8 = cpu->r[12] + 0xFFFFCEDCu;
|
|
/* 0269AE88 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0269AE8C */ Gambit_fn_023E40B0(cpu);
|
|
/* 0269AE90 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269AE94 */ Gambit_fn_0269ADC0(cpu);
|
|
/* 0269AE98 */ cpu->r[31] = 0x101C0000u;
|
|
/* 0269AE9C */ _t9 = cpu->r[31] + 0x00006000u;
|
|
/* 0269AE9C */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269AEA0 */ cpu->r[0] = 0x00000001u;
|
|
/* 0269AEA4 */ _t10 = cpu->r[12] + 0x00000264u;
|
|
/* 0269AEA4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269AEA8 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0269AEAC */ _t11 = cpu->r[11] + 0x00000238u;
|
|
/* 0269AEAC */ rbrew_write8(cpu->mem, _t11, (uint8_t)cpu->r[0]);
|
|
/* 0269AEB0 */ _t12 = cpu->r[12] + 0xFFFF8058u;
|
|
/* 0269AEB0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0269AEB4 */ _t13 = cpu->r[12] + 0x000002D8u;
|
|
/* 0269AEB4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0269AEB8 */ Gambit_fn_02450E04(cpu);
|
|
/* 0269AEBC */ _t14 = cpu->r[31] + 0x00006000u;
|
|
/* 0269AEBC */ cpu->r[11] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0269AEC0 */ _t15 = cpu->r[11] + 0x00000274u;
|
|
/* 0269AEC0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0269AEC4 */ Gambit_fn_021F0C40(cpu);
|
|
/* 0269AEC8 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 0269AEC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0269AECC */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 0269AECC */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0269AED0 */ cpu->lr = cpu->r[0];
|
|
/* 0269AED4 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269AED4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0269AED8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0269AEDC */ return;
|
|
}
|
|
|
|
// fn_0269AE50 @ 0x269ae50
|
|
void Gambit_fn_0269AE50(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_0269AE50: ; // 0x269ae50
|
|
/* 0269AE50 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0269AE50 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269AE50 */ cpu->r[1] = _t0;
|
|
/* 0269AE54 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269AE54 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0269AE58 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0269AE58 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0269AE5C */ cpu->r[30] = 0x101C0000u;
|
|
/* 0269AE60 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269AE64 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0269AE64 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269AE68 */ _t4 = cpu->r[30] + 0x000060F4u;
|
|
/* 0269AE68 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269AE6C */ Gambit_fn_023ECD34(cpu);
|
|
/* 0269AE70 */ _t5 = cpu->r[30] + 0x000060F4u;
|
|
/* 0269AE70 */ cpu->r[11] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0269AE74 */ cpu->r[12] = cpu->r[11] + 0x00080000u;
|
|
/* 0269AE78 */ _t6 = cpu->r[12] + 0xFFFFCD80u;
|
|
/* 0269AE78 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0269AE7C */ Gambit_fn_023E8064(cpu);
|
|
/* 0269AE80 */ _t7 = cpu->r[30] + 0x000060F4u;
|
|
/* 0269AE80 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269AE84 */ cpu->r[12] = cpu->r[11] + 0x00080000u;
|
|
/* 0269AE88 */ _t8 = cpu->r[12] + 0xFFFFCEDCu;
|
|
/* 0269AE88 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0269AE8C */ Gambit_fn_023E40B0(cpu);
|
|
/* 0269AE90 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269AE94 */ Gambit_fn_0269ADC0(cpu);
|
|
/* 0269AE98 */ cpu->r[31] = 0x101C0000u;
|
|
/* 0269AE9C */ _t9 = cpu->r[31] + 0x00006000u;
|
|
/* 0269AE9C */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269AEA0 */ cpu->r[0] = 0x00000001u;
|
|
/* 0269AEA4 */ _t10 = cpu->r[12] + 0x00000264u;
|
|
/* 0269AEA4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269AEA8 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0269AEAC */ _t11 = cpu->r[11] + 0x00000238u;
|
|
/* 0269AEAC */ rbrew_write8(cpu->mem, _t11, (uint8_t)cpu->r[0]);
|
|
/* 0269AEB0 */ _t12 = cpu->r[12] + 0xFFFF8058u;
|
|
/* 0269AEB0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0269AEB4 */ _t13 = cpu->r[12] + 0x000002D8u;
|
|
/* 0269AEB4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0269AEB8 */ Gambit_fn_02450E04(cpu);
|
|
/* 0269AEBC */ _t14 = cpu->r[31] + 0x00006000u;
|
|
/* 0269AEBC */ cpu->r[11] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0269AEC0 */ _t15 = cpu->r[11] + 0x00000274u;
|
|
/* 0269AEC0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0269AEC4 */ Gambit_fn_021F0C40(cpu);
|
|
/* 0269AEC8 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 0269AEC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0269AECC */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 0269AECC */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0269AED0 */ cpu->lr = cpu->r[0];
|
|
/* 0269AED4 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269AED4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0269AED8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0269AEDC */ return;
|
|
}
|
|
|
|
// fn_0269AEE4 @ 0x269aee4
|
|
void Gambit_fn_0269AEE4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_0269AEE4: ; // 0x269aee4
|
|
/* 0269AEE4 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 0269AEE4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269AEE4 */ cpu->r[1] = _t0;
|
|
/* 0269AEE8 */ _t1 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269AEE8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0269AEEC */ _t2 = cpu->r[1] + 0x00000018u;
|
|
/* 0269AEEC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0269AEF0 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269AEF4 */ _t3 = cpu->r[1] + 0x00000024u;
|
|
/* 0269AEF4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269AEF8 */ _t4 = cpu->r[31] + 0x00000250u;
|
|
/* 0269AEF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269AEFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000001Eu);
|
|
/* 0269AF00 */ _t5 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269AF00 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0269AF00 */ if (_t6) goto L_0269AF5C; else goto L_0269AF04;
|
|
L_0269AF04: ; // 0x269af04
|
|
/* 0269AF04 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269AF08 */ Gambit_fn_0269AE4C(cpu);
|
|
/* 0269AF0C */ cpu->r[30] = 0x101D0000u;
|
|
/* 0269AF10 */ _t7 = cpu->r[30] + 0xFFFF8058u;
|
|
/* 0269AF10 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269AF14 */ _t8 = cpu->r[12] + 0x00000250u;
|
|
/* 0269AF14 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0269AF18 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0269AF1C */ _t9 = cpu->r[12] + 0x00000250u;
|
|
/* 0269AF1C */ cpu->r[10] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269AF20 */ Gambit_fn_0269ACF0(cpu);
|
|
/* 0269AF24 */ _t10 = cpu->r[10] + 0x000000A0u;
|
|
/* 0269AF24 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269AF28 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269AF2C */ Gambit_fn_0206EA2C(cpu);
|
|
/* 0269AF30 */ _t11 = cpu->r[30] + 0xFFFF8058u;
|
|
/* 0269AF30 */ cpu->r[8] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0269AF34 */ _t12 = cpu->r[8] + 0x00000250u;
|
|
/* 0269AF34 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0269AF38 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0269AF3C */ _t13 = cpu->r[12] + 0x00000250u;
|
|
/* 0269AF3C */ cpu->r[10] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0269AF40 */ Gambit_fn_0269AD08(cpu);
|
|
/* 0269AF44 */ _t14 = cpu->r[10] + 0x000000A0u;
|
|
/* 0269AF44 */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0269AF48 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269AF4C */ Gambit_fn_0206EA2C(cpu);
|
|
/* 0269AF50 */ cpu->r[3] = cpu->r[31] + 0x00000248u;
|
|
/* 0269AF54 */ cpu->r[4] = 0x00000000u;
|
|
/* 0269AF58 */ Gambit_fn_0269BADC(cpu);
|
|
L_0269AF5C: ; // 0x269af5c
|
|
/* 0269AF5C */ _t15 = cpu->r[1] + 0x00000024u;
|
|
/* 0269AF5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0269AF60 */ _t16 = cpu->r[1] + 0x00000018u;
|
|
/* 0269AF60 */ cpu->r[30] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0269AF64 */ cpu->lr = cpu->r[0];
|
|
/* 0269AF68 */ _t17 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269AF68 */ cpu->r[31] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0269AF6C */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 0269AF70 */ return;
|
|
}
|
|
|
|
// fn_0269AF74 @ 0x269af74
|
|
void Gambit_fn_0269AF74(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0269AF74: ; // 0x269af74
|
|
/* 0269AF74 */ cpu->r[5] = 0xFFFFFFFDu;
|
|
/* 0269AF78 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0269AF78 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269AF78 */ cpu->r[1] = _t0;
|
|
/* 0269AF7C */ cpu->r[10] = 0x101F0000u;
|
|
/* 0269AF80 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 0269AF84 */ _t1 = cpu->r[10] + 0xFFFFD9B4u;
|
|
/* 0269AF84 */ rbrew_write32(cpu->mem, _t1, cpu->r[5]);
|
|
/* 0269AF84 */ cpu->r[10] = _t1;
|
|
/* 0269AF88 */ cpu->r[7] = 0x101F0000u;
|
|
/* 0269AF8C */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 0269AF8C */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 0269AF90 */ cpu->r[9] = 0xFFFFFFFEu;
|
|
/* 0269AF94 */ cpu->r[8] = 0x101F0000u;
|
|
/* 0269AF98 */ _t3 = cpu->r[7] + 0xFFFFD9C4u;
|
|
/* 0269AF98 */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 0269AF98 */ cpu->r[7] = _t3;
|
|
/* 0269AF9C */ _t4 = cpu->r[8] + 0xFFFFD9BCu;
|
|
/* 0269AF9C */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
/* 0269AF9C */ cpu->r[8] = _t4;
|
|
/* 0269AFA0 */ cpu->r[0] = 0x00000002u;
|
|
/* 0269AFA4 */ _t5 = cpu->r[8] + 0x00000004u;
|
|
/* 0269AFA4 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 0269AFA8 */ cpu->r[8] = 0x101F0000u;
|
|
/* 0269AFAC */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 0269AFAC */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0269AFB0 */ cpu->r[12] = 0x101F0000u;
|
|
/* 0269AFB4 */ _t7 = cpu->r[7] + 0x00000004u;
|
|
/* 0269AFB4 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 0269AFB8 */ _t8 = cpu->r[8] + 0xFFFFD9D4u;
|
|
/* 0269AFB8 */ rbrew_write32(cpu->mem, _t8, cpu->r[5]);
|
|
/* 0269AFB8 */ cpu->r[8] = _t8;
|
|
/* 0269AFBC */ _t9 = cpu->r[12] + 0xFFFFD9CCu;
|
|
/* 0269AFBC */ rbrew_write32(cpu->mem, _t9, cpu->r[5]);
|
|
/* 0269AFBC */ cpu->r[12] = _t9;
|
|
/* 0269AFC0 */ _t10 = cpu->r[12] + 0x00000004u;
|
|
/* 0269AFC0 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 0269AFC4 */ cpu->r[0] = 0x00000004u;
|
|
/* 0269AFC8 */ _t11 = cpu->r[8] + 0x00000004u;
|
|
/* 0269AFC8 */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 0269AFCC */ cpu->r[11] = 0x101F0000u;
|
|
/* 0269AFD0 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 0269AFD0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0269AFD4 */ _t13 = cpu->r[11] + 0xFFFFD9DCu;
|
|
/* 0269AFD4 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 0269AFD8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269AFDC */ return;
|
|
}
|
|
|
|
// fn_0269AF78 @ 0x269af78
|
|
void Gambit_fn_0269AF78(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0269AF78: ; // 0x269af78
|
|
/* 0269AF78 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0269AF78 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269AF78 */ cpu->r[1] = _t0;
|
|
/* 0269AF7C */ cpu->r[10] = 0x101F0000u;
|
|
/* 0269AF80 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 0269AF84 */ _t1 = cpu->r[10] + 0xFFFFD9B4u;
|
|
/* 0269AF84 */ rbrew_write32(cpu->mem, _t1, cpu->r[5]);
|
|
/* 0269AF84 */ cpu->r[10] = _t1;
|
|
/* 0269AF88 */ cpu->r[7] = 0x101F0000u;
|
|
/* 0269AF8C */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 0269AF8C */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 0269AF90 */ cpu->r[9] = 0xFFFFFFFEu;
|
|
/* 0269AF94 */ cpu->r[8] = 0x101F0000u;
|
|
/* 0269AF98 */ _t3 = cpu->r[7] + 0xFFFFD9C4u;
|
|
/* 0269AF98 */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 0269AF98 */ cpu->r[7] = _t3;
|
|
/* 0269AF9C */ _t4 = cpu->r[8] + 0xFFFFD9BCu;
|
|
/* 0269AF9C */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
/* 0269AF9C */ cpu->r[8] = _t4;
|
|
/* 0269AFA0 */ cpu->r[0] = 0x00000002u;
|
|
/* 0269AFA4 */ _t5 = cpu->r[8] + 0x00000004u;
|
|
/* 0269AFA4 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 0269AFA8 */ cpu->r[8] = 0x101F0000u;
|
|
/* 0269AFAC */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 0269AFAC */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0269AFB0 */ cpu->r[12] = 0x101F0000u;
|
|
/* 0269AFB4 */ _t7 = cpu->r[7] + 0x00000004u;
|
|
/* 0269AFB4 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 0269AFB8 */ _t8 = cpu->r[8] + 0xFFFFD9D4u;
|
|
/* 0269AFB8 */ rbrew_write32(cpu->mem, _t8, cpu->r[5]);
|
|
/* 0269AFB8 */ cpu->r[8] = _t8;
|
|
/* 0269AFBC */ _t9 = cpu->r[12] + 0xFFFFD9CCu;
|
|
/* 0269AFBC */ rbrew_write32(cpu->mem, _t9, cpu->r[5]);
|
|
/* 0269AFBC */ cpu->r[12] = _t9;
|
|
/* 0269AFC0 */ _t10 = cpu->r[12] + 0x00000004u;
|
|
/* 0269AFC0 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 0269AFC4 */ cpu->r[0] = 0x00000004u;
|
|
/* 0269AFC8 */ _t11 = cpu->r[8] + 0x00000004u;
|
|
/* 0269AFC8 */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 0269AFCC */ cpu->r[11] = 0x101F0000u;
|
|
/* 0269AFD0 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 0269AFD0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0269AFD4 */ _t13 = cpu->r[11] + 0xFFFFD9DCu;
|
|
/* 0269AFD4 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 0269AFD8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269AFDC */ return;
|
|
}
|
|
|
|
// fn_0269AFE0 @ 0x269afe0
|
|
void Gambit_fn_0269AFE0(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_0269AFE0: ; // 0x269afe0
|
|
/* 0269AFE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0269AFE4 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269AFE4 */ _t1 = _t0 & 0x00000001u;
|
|
/* 0269AFE4 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0269AFE4 */ goto L_0269AFE8;
|
|
L_0269AFE8: ; // 0x269afe8
|
|
/* 0269AFE8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0269AFE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0269AFEC */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269AFEC */ _t3 = _t2 & 0x00000001u;
|
|
/* 0269AFEC */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0269AFEC */ goto L_0269AFF0;
|
|
L_0269AFF0: ; // 0x269aff0
|
|
/* 0269AFF0 */ 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_0269AFF4 @ 0x269aff4
|
|
void Gambit_fn_0269AFF4(CPUState* cpu) {
|
|
L_0269AFF4: ; // 0x269aff4
|
|
/* 0269AFF4 */ return;
|
|
}
|
|
|
|
// fn_0269AFF8 @ 0x269aff8
|
|
void Gambit_fn_0269AFF8(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_0269AFF8: ; // 0x269aff8
|
|
/* 0269AFF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0269AFFC */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269AFFC */ _t1 = _t0 & 0x00000001u;
|
|
/* 0269AFFC */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0269AFFC */ goto L_0269B000;
|
|
L_0269B000: ; // 0x269b000
|
|
/* 0269B000 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0269B000 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0269B004 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269B004 */ _t3 = _t2 & 0x00000001u;
|
|
/* 0269B004 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0269B004 */ goto L_0269B008;
|
|
L_0269B008: ; // 0x269b008
|
|
/* 0269B008 */ 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_0269B00C @ 0x269b00c
|
|
void Gambit_fn_0269B00C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_0269B00C: ; // 0x269b00c
|
|
/* 0269B00C */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 0269B00C */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0269B010 */ _t1 = cpu->r[3] + 0x00000008u;
|
|
/* 0269B010 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0269B014 */ cpu->r[12] = cpu->r[11] + cpu->r[12];
|
|
/* 0269B018 */ cpu->r[11] = 0x10110000u;
|
|
/* 0269B01C */ _t2 = cpu->r[11] + 0x00007399u;
|
|
/* 0269B01C */ cpu->r[0] = rbrew_read8(cpu->mem, _t2);
|
|
/* 0269B020 */ _t3 = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 0269B020 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]);
|
|
/* 0269B024 */ return;
|
|
}
|
|
|
|
// fn_0269B028 @ 0x269b028
|
|
void Gambit_fn_0269B028(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_0269B028: ; // 0x269b028
|
|
/* 0269B028 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0269B02C */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269B02C */ _t1 = _t0 & 0x00000001u;
|
|
/* 0269B02C */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0269B02C */ goto L_0269B030;
|
|
L_0269B030: ; // 0x269b030
|
|
/* 0269B030 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0269B030 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0269B034 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269B034 */ _t3 = _t2 & 0x00000001u;
|
|
/* 0269B034 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0269B034 */ goto L_0269B038;
|
|
L_0269B038: ; // 0x269b038
|
|
/* 0269B038 */ 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_0269B03C @ 0x269b03c
|
|
void Gambit_fn_0269B03C(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_0269B03C: ; // 0x269b03c
|
|
/* 0269B03C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0269B040 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269B040 */ _t1 = _t0 & 0x00000001u;
|
|
/* 0269B040 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0269B040 */ goto L_0269B044;
|
|
L_0269B044: ; // 0x269b044
|
|
/* 0269B044 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0269B044 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0269B048 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269B048 */ _t3 = _t2 & 0x00000001u;
|
|
/* 0269B048 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0269B048 */ goto L_0269B04C;
|
|
L_0269B04C: ; // 0x269b04c
|
|
/* 0269B04C */ 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_0269B050 @ 0x269b050
|
|
void Gambit_fn_0269B050(CPUState* cpu) {
|
|
L_0269B050: ; // 0x269b050
|
|
/* 0269B050 */ return;
|
|
}
|
|
|
|
// fn_0269B054 @ 0x269b054
|
|
void Gambit_fn_0269B054(CPUState* cpu) {
|
|
L_0269B054: ; // 0x269b054
|
|
/* 0269B054 */ return;
|
|
}
|
|
|
|
// fn_0269B058 @ 0x269b058
|
|
void Gambit_fn_0269B058(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_0269B058: ; // 0x269b058
|
|
/* 0269B058 */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 0269B058 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0269B05C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0269B060 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269B060 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0269B060 */ if (_t2) goto L_0269B06C; else goto L_0269B064;
|
|
L_0269B064: ; // 0x269b064
|
|
/* 0269B064 */ cpu->r[3] = cpu->r[12] + 0x00000034u;
|
|
/* 0269B068 */ return;
|
|
L_0269B06C: ; // 0x269b06c
|
|
/* 0269B06C */ cpu->r[3] = 0x00000000u;
|
|
/* 0269B070 */ return;
|
|
}
|
|
|
|
// fn_0269B074 @ 0x269b074
|
|
void Gambit_fn_0269B074(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_0269B074: ; // 0x269b074
|
|
/* 0269B074 */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 0269B074 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0269B078 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0269B07C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269B07C */ _t2 = _t1 & 0x00000001u;
|
|
/* 0269B07C */ if (_t2) goto L_0269B088; else goto L_0269B080;
|
|
L_0269B080: ; // 0x269b080
|
|
/* 0269B080 */ cpu->r[3] = cpu->r[12] + 0x00000064u;
|
|
/* 0269B084 */ return;
|
|
L_0269B088: ; // 0x269b088
|
|
/* 0269B088 */ cpu->r[3] = 0x00000000u;
|
|
/* 0269B08C */ return;
|
|
}
|
|
|
|
// fn_0269B090 @ 0x269b090
|
|
void Gambit_fn_0269B090(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0269B090: ; // 0x269b090
|
|
/* 0269B090 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0269B090 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0269B094 */ _t1 = cpu->r[12] + 0x00000114u;
|
|
/* 0269B094 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0269B098 */ cpu->ctr = cpu->r[0];
|
|
/* 0269B09C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0269B0A0 @ 0x269b0a0
|
|
void Gambit_fn_0269B0A0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0269B0A0: ; // 0x269b0a0
|
|
/* 0269B0A0 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0269B0A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0269B0A4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0269B0A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0269B0A8 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269B0A8 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0269B0A8 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0269B0A8 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0269B0A8 */ goto L_0269B0AC;
|
|
L_0269B0AC: ; // 0x269b0ac
|
|
/* 0269B0AC */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0269B0AC */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269B0B0 */ _t5 = cpu->r[12] + 0x00000044u;
|
|
/* 0269B0B0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0269B0B4 */ cpu->ctr = cpu->r[12];
|
|
/* 0269B0B8 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0269B0BC @ 0x269b0bc
|
|
void Gambit_fn_0269B0BC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0269B0BC: ; // 0x269b0bc
|
|
/* 0269B0BC */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0269B0BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0269B0C0 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0269B0C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0269B0C4 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269B0C4 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0269B0C4 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0269B0C4 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0269B0C4 */ goto L_0269B0C8;
|
|
L_0269B0C8: ; // 0x269b0c8
|
|
/* 0269B0C8 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0269B0C8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269B0CC */ _t5 = cpu->r[12] + 0x0000004Cu;
|
|
/* 0269B0CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0269B0D0 */ cpu->ctr = cpu->r[0];
|
|
/* 0269B0D4 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0269B0D8 @ 0x269b0d8
|
|
void Gambit_fn_0269B0D8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0269B0D8: ; // 0x269b0d8
|
|
/* 0269B0D8 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0269B0D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0269B0DC */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Eu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0269B0DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0269B0E0 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269B0E0 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0269B0E0 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0269B0E0 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0269B0E0 */ goto L_0269B0E4;
|
|
L_0269B0E4: ; // 0x269b0e4
|
|
/* 0269B0E4 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0269B0E4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269B0E8 */ _t5 = cpu->r[12] + 0x00000054u;
|
|
/* 0269B0E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0269B0EC */ cpu->ctr = cpu->r[0];
|
|
/* 0269B0F0 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0269B0F4 @ 0x269b0f4
|
|
void Gambit_fn_0269B0F4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0269B0F4: ; // 0x269b0f4
|
|
/* 0269B0F4 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0269B0F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0269B0F8 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Du, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0269B0F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0269B0FC */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269B0FC */ _t2 = _t1 & 0x00000001u;
|
|
/* 0269B0FC */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0269B0FC */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0269B0FC */ goto L_0269B100;
|
|
L_0269B100: ; // 0x269b100
|
|
/* 0269B100 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0269B100 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269B104 */ _t5 = cpu->r[12] + 0x0000005Cu;
|
|
/* 0269B104 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0269B108 */ cpu->ctr = cpu->r[0];
|
|
/* 0269B10C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0269B110 @ 0x269b110
|
|
void Gambit_fn_0269B110(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0269B110: ; // 0x269b110
|
|
/* 0269B110 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0269B110 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0269B114 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Cu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0269B114 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0269B118 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269B118 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0269B118 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0269B118 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0269B118 */ goto L_0269B11C;
|
|
L_0269B11C: ; // 0x269b11c
|
|
/* 0269B11C */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0269B11C */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269B120 */ _t5 = cpu->r[12] + 0x00000064u;
|
|
/* 0269B120 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0269B124 */ cpu->ctr = cpu->r[0];
|
|
/* 0269B128 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0269B12C @ 0x269b12c
|
|
void Gambit_fn_0269B12C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0269B12C: ; // 0x269b12c
|
|
/* 0269B12C */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0269B12C */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0269B130 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0269B130 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0269B134 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269B134 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0269B134 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0269B134 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0269B134 */ goto L_0269B138;
|
|
L_0269B138: ; // 0x269b138
|
|
/* 0269B138 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0269B138 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269B13C */ _t5 = cpu->r[11] + 0x0000006Cu;
|
|
/* 0269B13C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0269B140 */ cpu->ctr = cpu->r[0];
|
|
/* 0269B144 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0269B148 @ 0x269b148
|
|
void Gambit_fn_0269B148(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0269B148: ; // 0x269b148
|
|
/* 0269B148 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0269B148 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0269B14C */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Au, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0269B14C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0269B150 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269B150 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0269B150 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0269B150 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0269B150 */ goto L_0269B154;
|
|
L_0269B154: ; // 0x269b154
|
|
/* 0269B154 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0269B154 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269B158 */ _t5 = cpu->r[11] + 0x00000074u;
|
|
/* 0269B158 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0269B15C */ cpu->ctr = cpu->r[0];
|
|
/* 0269B160 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0269B164 @ 0x269b164
|
|
void Gambit_fn_0269B164(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0269B164: ; // 0x269b164
|
|
/* 0269B164 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0269B164 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0269B168 */ _t1 = cpu->r[12] + 0x00000024u;
|
|
/* 0269B168 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0269B16C */ cpu->ctr = cpu->r[0];
|
|
/* 0269B170 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0269B174 @ 0x269b174
|
|
void Gambit_fn_0269B174(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0269B174: ; // 0x269b174
|
|
/* 0269B174 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0269B174 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0269B178 */ _t1 = cpu->r[12] + 0x0000002Cu;
|
|
/* 0269B178 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0269B17C */ cpu->ctr = cpu->r[0];
|
|
/* 0269B180 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0269B184 @ 0x269b184
|
|
void Gambit_fn_0269B184(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0269B184: ; // 0x269b184
|
|
/* 0269B184 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0269B184 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0269B188 */ _t1 = cpu->r[12] + 0x00000034u;
|
|
/* 0269B188 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0269B18C */ cpu->ctr = cpu->r[0];
|
|
/* 0269B190 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0269B194 @ 0x269b194
|
|
void Gambit_fn_0269B194(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0269B194: ; // 0x269b194
|
|
/* 0269B194 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0269B194 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0269B198 */ _t1 = cpu->r[12] + 0x0000003Cu;
|
|
/* 0269B198 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0269B19C */ cpu->ctr = cpu->r[0];
|
|
/* 0269B1A0 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0269B1A4 @ 0x269b1a4
|
|
void Gambit_fn_0269B1A4(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0269B1A4: ; // 0x269b1a4
|
|
/* 0269B1A4 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0269B1A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0269B1A8 */ _t1 = cpu->r[12] + 0x0000007Cu;
|
|
/* 0269B1A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0269B1AC */ cpu->ctr = cpu->r[0];
|
|
/* 0269B1B0 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0269B1B4 @ 0x269b1b4
|
|
void Gambit_fn_0269B1B4(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0269B1B4: ; // 0x269b1b4
|
|
/* 0269B1B4 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0269B1B4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0269B1B8 */ _t1 = cpu->r[12] + 0x00000084u;
|
|
/* 0269B1B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0269B1BC */ cpu->ctr = cpu->r[0];
|
|
/* 0269B1C0 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0269B1C4 @ 0x269b1c4
|
|
void Gambit_fn_0269B1C4(CPUState* cpu) {
|
|
L_0269B1C4: ; // 0x269b1c4
|
|
/* 0269B1C4 */ return;
|
|
}
|
|
|
|
// fn_0269B1C8 @ 0x269b1c8
|
|
void Gambit_fn_0269B1C8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0269B1C8: ; // 0x269b1c8
|
|
/* 0269B1C8 */ cpu->r[0] = cpu->lr;
|
|
/* 0269B1CC */ cpu->r[12] = 0x100E0000u;
|
|
/* 0269B1D0 */ cpu->r[10] = 0x00000001u;
|
|
/* 0269B1D4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0269B1D4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269B1D4 */ cpu->r[1] = _t0;
|
|
/* 0269B1D8 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0269B1D8 */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 0269B1DC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0269B1DC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0269B1E0 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269B1E4 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269B1E4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269B1E8 */ cpu->r[0] = 0x00000004u;
|
|
/* 0269B1EC */ _t4 = cpu->r[12] + 0x00004180u;
|
|
/* 0269B1EC */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269B1F0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269B1F4 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0269B1F4 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0269B1F8 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269B1FC */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269B1FC */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 0269B200 */ Gambit_fn_02791774(cpu);
|
|
/* 0269B204 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 0269B204 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269B208 */ cpu->r[0] = cpu->r[0] | 0x00000002u;
|
|
/* 0269B20C */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0269B20C */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0269B210 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269B210 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269B214 */ cpu->lr = cpu->r[0];
|
|
/* 0269B218 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0269B218 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269B21C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269B220 */ return;
|
|
}
|
|
|
|
// fn_0269B1D4 @ 0x269b1d4
|
|
void Gambit_fn_0269B1D4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0269B1D4: ; // 0x269b1d4
|
|
/* 0269B1D4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0269B1D4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269B1D4 */ cpu->r[1] = _t0;
|
|
/* 0269B1D8 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0269B1D8 */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 0269B1DC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0269B1DC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0269B1E0 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269B1E4 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269B1E4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269B1E8 */ cpu->r[0] = 0x00000004u;
|
|
/* 0269B1EC */ _t4 = cpu->r[12] + 0x00004180u;
|
|
/* 0269B1EC */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269B1F0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269B1F4 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0269B1F4 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0269B1F8 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269B1FC */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269B1FC */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 0269B200 */ Gambit_fn_02791774(cpu);
|
|
/* 0269B204 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 0269B204 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269B208 */ cpu->r[0] = cpu->r[0] | 0x00000002u;
|
|
/* 0269B20C */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0269B20C */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0269B210 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269B210 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269B214 */ cpu->lr = cpu->r[0];
|
|
/* 0269B218 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0269B218 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269B21C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269B220 */ return;
|
|
}
|
|
|
|
// fn_0269B224 @ 0x269b224
|
|
void Gambit_fn_0269B224(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0269B224: ; // 0x269b224
|
|
/* 0269B224 */ cpu->r[0] = cpu->lr;
|
|
/* 0269B228 */ cpu->r[12] = 0x100E0000u;
|
|
/* 0269B22C */ cpu->r[10] = 0x00000007u;
|
|
/* 0269B230 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0269B230 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269B230 */ cpu->r[1] = _t0;
|
|
/* 0269B234 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0269B234 */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 0269B238 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0269B238 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0269B23C */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269B240 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269B240 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269B244 */ cpu->r[0] = 0x00000004u;
|
|
/* 0269B248 */ _t4 = cpu->r[12] + 0x000041A0u;
|
|
/* 0269B248 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269B24C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269B250 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0269B250 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0269B254 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269B258 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269B258 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 0269B25C */ Gambit_fn_02791888(cpu);
|
|
/* 0269B260 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 0269B260 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269B264 */ cpu->r[0] = cpu->r[0] | 0x00000080u;
|
|
/* 0269B268 */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0269B268 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0269B26C */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269B26C */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269B270 */ cpu->lr = cpu->r[0];
|
|
/* 0269B274 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0269B274 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269B278 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269B27C */ return;
|
|
}
|
|
|
|
// fn_0269B230 @ 0x269b230
|
|
void Gambit_fn_0269B230(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0269B230: ; // 0x269b230
|
|
/* 0269B230 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0269B230 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269B230 */ cpu->r[1] = _t0;
|
|
/* 0269B234 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0269B234 */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 0269B238 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0269B238 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0269B23C */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269B240 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269B240 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269B244 */ cpu->r[0] = 0x00000004u;
|
|
/* 0269B248 */ _t4 = cpu->r[12] + 0x000041A0u;
|
|
/* 0269B248 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269B24C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269B250 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0269B250 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0269B254 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269B258 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269B258 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 0269B25C */ Gambit_fn_02791888(cpu);
|
|
/* 0269B260 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 0269B260 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269B264 */ cpu->r[0] = cpu->r[0] | 0x00000080u;
|
|
/* 0269B268 */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0269B268 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0269B26C */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269B26C */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269B270 */ cpu->lr = cpu->r[0];
|
|
/* 0269B274 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0269B274 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269B278 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269B27C */ return;
|
|
}
|
|
|
|
// fn_0269B280 @ 0x269b280
|
|
void Gambit_fn_0269B280(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0269B280: ; // 0x269b280
|
|
/* 0269B280 */ cpu->r[0] = cpu->lr;
|
|
/* 0269B284 */ cpu->r[12] = 0x100E0000u;
|
|
/* 0269B288 */ cpu->r[10] = 0x00000008u;
|
|
/* 0269B28C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0269B28C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269B28C */ cpu->r[1] = _t0;
|
|
/* 0269B290 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0269B290 */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 0269B294 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0269B294 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0269B298 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269B29C */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269B29C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269B2A0 */ cpu->r[0] = 0x00000004u;
|
|
/* 0269B2A4 */ _t4 = cpu->r[12] + 0x000041A8u;
|
|
/* 0269B2A4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269B2A8 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269B2AC */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0269B2AC */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0269B2B0 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269B2B4 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269B2B4 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 0269B2B8 */ Gambit_fn_02791888(cpu);
|
|
/* 0269B2BC */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 0269B2BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269B2C0 */ cpu->r[0] = cpu->r[0] | 0x00000100u;
|
|
/* 0269B2C4 */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0269B2C4 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0269B2C8 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269B2C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269B2CC */ cpu->lr = cpu->r[0];
|
|
/* 0269B2D0 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0269B2D0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269B2D4 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269B2D8 */ return;
|
|
}
|
|
|
|
// fn_0269B28C @ 0x269b28c
|
|
void Gambit_fn_0269B28C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0269B28C: ; // 0x269b28c
|
|
/* 0269B28C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0269B28C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269B28C */ cpu->r[1] = _t0;
|
|
/* 0269B290 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0269B290 */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 0269B294 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0269B294 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0269B298 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269B29C */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269B29C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269B2A0 */ cpu->r[0] = 0x00000004u;
|
|
/* 0269B2A4 */ _t4 = cpu->r[12] + 0x000041A8u;
|
|
/* 0269B2A4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269B2A8 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269B2AC */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0269B2AC */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0269B2B0 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269B2B4 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269B2B4 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 0269B2B8 */ Gambit_fn_02791888(cpu);
|
|
/* 0269B2BC */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 0269B2BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269B2C0 */ cpu->r[0] = cpu->r[0] | 0x00000100u;
|
|
/* 0269B2C4 */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0269B2C4 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0269B2C8 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269B2C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269B2CC */ cpu->lr = cpu->r[0];
|
|
/* 0269B2D0 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0269B2D0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269B2D4 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269B2D8 */ return;
|
|
}
|
|
|
|
// fn_0269B2DC @ 0x269b2dc
|
|
void Gambit_fn_0269B2DC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0269B2DC: ; // 0x269b2dc
|
|
/* 0269B2DC */ cpu->r[0] = cpu->lr;
|
|
/* 0269B2E0 */ cpu->r[12] = 0x100E0000u;
|
|
/* 0269B2E4 */ cpu->r[10] = 0x00000009u;
|
|
/* 0269B2E8 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0269B2E8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269B2E8 */ cpu->r[1] = _t0;
|
|
/* 0269B2EC */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0269B2EC */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 0269B2F0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0269B2F0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0269B2F4 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269B2F8 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269B2F8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269B2FC */ cpu->r[0] = 0x00000004u;
|
|
/* 0269B300 */ _t4 = cpu->r[12] + 0x000041B0u;
|
|
/* 0269B300 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269B304 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269B308 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0269B308 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0269B30C */ cpu->r[31] = cpu->r[3];
|
|
/* 0269B310 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269B310 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 0269B314 */ Gambit_fn_02791888(cpu);
|
|
/* 0269B318 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 0269B318 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269B31C */ cpu->r[0] = cpu->r[0] | 0x00000200u;
|
|
/* 0269B320 */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0269B320 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0269B324 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269B324 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269B328 */ cpu->lr = cpu->r[0];
|
|
/* 0269B32C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0269B32C */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269B330 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269B334 */ return;
|
|
}
|
|
|
|
// fn_0269B2E8 @ 0x269b2e8
|
|
void Gambit_fn_0269B2E8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0269B2E8: ; // 0x269b2e8
|
|
/* 0269B2E8 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0269B2E8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269B2E8 */ cpu->r[1] = _t0;
|
|
/* 0269B2EC */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0269B2EC */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 0269B2F0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0269B2F0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0269B2F4 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269B2F8 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269B2F8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269B2FC */ cpu->r[0] = 0x00000004u;
|
|
/* 0269B300 */ _t4 = cpu->r[12] + 0x000041B0u;
|
|
/* 0269B300 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269B304 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269B308 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0269B308 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0269B30C */ cpu->r[31] = cpu->r[3];
|
|
/* 0269B310 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269B310 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 0269B314 */ Gambit_fn_02791888(cpu);
|
|
/* 0269B318 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 0269B318 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269B31C */ cpu->r[0] = cpu->r[0] | 0x00000200u;
|
|
/* 0269B320 */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0269B320 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0269B324 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269B324 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269B328 */ cpu->lr = cpu->r[0];
|
|
/* 0269B32C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0269B32C */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269B330 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269B334 */ return;
|
|
}
|
|
|
|
// fn_0269B338 @ 0x269b338
|
|
void Gambit_fn_0269B338(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0269B338: ; // 0x269b338
|
|
/* 0269B338 */ cpu->r[0] = cpu->lr;
|
|
/* 0269B33C */ cpu->r[12] = 0x100E0000u;
|
|
/* 0269B340 */ cpu->r[10] = 0x0000000Au;
|
|
/* 0269B344 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0269B344 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269B344 */ cpu->r[1] = _t0;
|
|
/* 0269B348 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0269B348 */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 0269B34C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0269B34C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0269B350 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269B354 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269B354 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269B358 */ cpu->r[0] = 0x00000004u;
|
|
/* 0269B35C */ _t4 = cpu->r[12] + 0x000041B8u;
|
|
/* 0269B35C */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269B360 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269B364 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0269B364 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0269B368 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269B36C */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269B36C */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 0269B370 */ Gambit_fn_02791888(cpu);
|
|
/* 0269B374 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 0269B374 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269B378 */ cpu->r[0] = cpu->r[0] | 0x00000400u;
|
|
/* 0269B37C */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0269B37C */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0269B380 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269B380 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269B384 */ cpu->lr = cpu->r[0];
|
|
/* 0269B388 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0269B388 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269B38C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269B390 */ return;
|
|
}
|
|
|
|
// fn_0269B344 @ 0x269b344
|
|
void Gambit_fn_0269B344(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0269B344: ; // 0x269b344
|
|
/* 0269B344 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0269B344 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269B344 */ cpu->r[1] = _t0;
|
|
/* 0269B348 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0269B348 */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 0269B34C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0269B34C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0269B350 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269B354 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269B354 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269B358 */ cpu->r[0] = 0x00000004u;
|
|
/* 0269B35C */ _t4 = cpu->r[12] + 0x000041B8u;
|
|
/* 0269B35C */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269B360 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269B364 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0269B364 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0269B368 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269B36C */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269B36C */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 0269B370 */ Gambit_fn_02791888(cpu);
|
|
/* 0269B374 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 0269B374 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269B378 */ cpu->r[0] = cpu->r[0] | 0x00000400u;
|
|
/* 0269B37C */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0269B37C */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0269B380 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269B380 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269B384 */ cpu->lr = cpu->r[0];
|
|
/* 0269B388 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0269B388 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269B38C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269B390 */ return;
|
|
}
|
|
|
|
// fn_0269B394 @ 0x269b394
|
|
void Gambit_fn_0269B394(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0269B394: ; // 0x269b394
|
|
/* 0269B394 */ cpu->r[0] = cpu->lr;
|
|
/* 0269B398 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0269B398 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269B398 */ cpu->r[1] = _t0;
|
|
/* 0269B39C */ cpu->r[8] = 0x100E0000u;
|
|
/* 0269B3A0 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0269B3A0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0269B3A4 */ cpu->r[12] = 0x0000000Bu;
|
|
/* 0269B3A8 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0269B3A8 */ rbrew_write32(cpu->mem, _t2, cpu->r[12]);
|
|
/* 0269B3AC */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269B3B0 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269B3B4 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269B3B4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269B3B8 */ cpu->r[0] = 0x00000004u;
|
|
/* 0269B3BC */ _t4 = cpu->r[8] + 0x000041C0u;
|
|
/* 0269B3BC */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269B3C0 */ cpu->r[6] = cpu->r[4];
|
|
/* 0269B3C4 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0269B3C4 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0269B3C8 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269B3CC */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269B3CC */ rbrew_write32(cpu->mem, _t6, cpu->r[11]);
|
|
/* 0269B3D0 */ Gambit_fn_027919C4(cpu);
|
|
/* 0269B3D4 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 0269B3D4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269B3D8 */ cpu->r[10] = cpu->r[10] | 0x00000800u;
|
|
/* 0269B3DC */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0269B3DC */ rbrew_write32(cpu->mem, _t8, cpu->r[10]);
|
|
/* 0269B3E0 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269B3E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269B3E4 */ cpu->lr = cpu->r[0];
|
|
/* 0269B3E8 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0269B3E8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269B3EC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269B3F0 */ return;
|
|
}
|
|
|
|
// fn_0269B398 @ 0x269b398
|
|
void Gambit_fn_0269B398(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0269B398: ; // 0x269b398
|
|
/* 0269B398 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0269B398 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269B398 */ cpu->r[1] = _t0;
|
|
/* 0269B39C */ cpu->r[8] = 0x100E0000u;
|
|
/* 0269B3A0 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0269B3A0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0269B3A4 */ cpu->r[12] = 0x0000000Bu;
|
|
/* 0269B3A8 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0269B3A8 */ rbrew_write32(cpu->mem, _t2, cpu->r[12]);
|
|
/* 0269B3AC */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269B3B0 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269B3B4 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269B3B4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269B3B8 */ cpu->r[0] = 0x00000004u;
|
|
/* 0269B3BC */ _t4 = cpu->r[8] + 0x000041C0u;
|
|
/* 0269B3BC */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269B3C0 */ cpu->r[6] = cpu->r[4];
|
|
/* 0269B3C4 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0269B3C4 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0269B3C8 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269B3CC */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269B3CC */ rbrew_write32(cpu->mem, _t6, cpu->r[11]);
|
|
/* 0269B3D0 */ Gambit_fn_027919C4(cpu);
|
|
/* 0269B3D4 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 0269B3D4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269B3D8 */ cpu->r[10] = cpu->r[10] | 0x00000800u;
|
|
/* 0269B3DC */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0269B3DC */ rbrew_write32(cpu->mem, _t8, cpu->r[10]);
|
|
/* 0269B3E0 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269B3E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269B3E4 */ cpu->lr = cpu->r[0];
|
|
/* 0269B3E8 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0269B3E8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269B3EC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269B3F0 */ return;
|
|
}
|
|
|
|
// fn_0269B3F4 @ 0x269b3f4
|
|
void Gambit_fn_0269B3F4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0269B3F4: ; // 0x269b3f4
|
|
/* 0269B3F4 */ cpu->r[0] = cpu->lr;
|
|
/* 0269B3F8 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0269B3F8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269B3F8 */ cpu->r[1] = _t0;
|
|
/* 0269B3FC */ cpu->r[8] = 0x100E0000u;
|
|
/* 0269B400 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0269B400 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0269B404 */ cpu->r[12] = 0x0000000Cu;
|
|
/* 0269B408 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0269B408 */ rbrew_write32(cpu->mem, _t2, cpu->r[12]);
|
|
/* 0269B40C */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269B410 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269B414 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269B414 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269B418 */ cpu->r[0] = 0x00000004u;
|
|
/* 0269B41C */ _t4 = cpu->r[8] + 0x000041C8u;
|
|
/* 0269B41C */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269B420 */ cpu->r[6] = cpu->r[4];
|
|
/* 0269B424 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0269B424 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0269B428 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269B42C */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269B42C */ rbrew_write32(cpu->mem, _t6, cpu->r[11]);
|
|
/* 0269B430 */ Gambit_fn_027919C4(cpu);
|
|
/* 0269B434 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 0269B434 */ cpu->r[10] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269B438 */ cpu->r[10] = cpu->r[10] | 0x00001000u;
|
|
/* 0269B43C */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0269B43C */ rbrew_write32(cpu->mem, _t8, cpu->r[10]);
|
|
/* 0269B440 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269B440 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269B444 */ cpu->lr = cpu->r[0];
|
|
/* 0269B448 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0269B448 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269B44C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269B450 */ return;
|
|
}
|
|
|
|
// fn_0269B3F8 @ 0x269b3f8
|
|
void Gambit_fn_0269B3F8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0269B3F8: ; // 0x269b3f8
|
|
/* 0269B3F8 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0269B3F8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269B3F8 */ cpu->r[1] = _t0;
|
|
/* 0269B3FC */ cpu->r[8] = 0x100E0000u;
|
|
/* 0269B400 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0269B400 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0269B404 */ cpu->r[12] = 0x0000000Cu;
|
|
/* 0269B408 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0269B408 */ rbrew_write32(cpu->mem, _t2, cpu->r[12]);
|
|
/* 0269B40C */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269B410 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269B414 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269B414 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269B418 */ cpu->r[0] = 0x00000004u;
|
|
/* 0269B41C */ _t4 = cpu->r[8] + 0x000041C8u;
|
|
/* 0269B41C */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269B420 */ cpu->r[6] = cpu->r[4];
|
|
/* 0269B424 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0269B424 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0269B428 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269B42C */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269B42C */ rbrew_write32(cpu->mem, _t6, cpu->r[11]);
|
|
/* 0269B430 */ Gambit_fn_027919C4(cpu);
|
|
/* 0269B434 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 0269B434 */ cpu->r[10] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269B438 */ cpu->r[10] = cpu->r[10] | 0x00001000u;
|
|
/* 0269B43C */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0269B43C */ rbrew_write32(cpu->mem, _t8, cpu->r[10]);
|
|
/* 0269B440 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269B440 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269B444 */ cpu->lr = cpu->r[0];
|
|
/* 0269B448 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0269B448 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269B44C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269B450 */ return;
|
|
}
|
|
|
|
// fn_0269B454 @ 0x269b454
|
|
void Gambit_fn_0269B454(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_0269B454: ; // 0x269b454
|
|
/* 0269B454 */ cpu->r[0] = cpu->lr;
|
|
/* 0269B458 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0269B458 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269B458 */ cpu->r[1] = _t0;
|
|
/* 0269B45C */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0269B45C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0269B460 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269B464 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269B464 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0269B468 */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0269B468 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0269B46C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000003u);
|
|
/* 0269B470 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269B470 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0269B470 */ if (_t5) goto L_0269B474; else goto L_0269B490;
|
|
L_0269B474: ; // 0x269b474
|
|
/* 0269B474 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 0269B474 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0269B478 */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 0269B478 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269B47C */ cpu->ctr = cpu->r[0];
|
|
/* 0269B480 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269B484 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0269B488 */ cpu->r[10] = 0x00000002u;
|
|
/* 0269B48C */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0269B48C */ rbrew_write32(cpu->mem, _t8, cpu->r[10]);
|
|
L_0269B490: ; // 0x269b490
|
|
/* 0269B490 */ cpu->r[0] = 0x00000005u;
|
|
/* 0269B494 */ cpu->r[12] = 0x100E0000u;
|
|
/* 0269B498 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 0269B498 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 0269B49C */ _t10 = cpu->r[12] + 0x000041D0u;
|
|
/* 0269B49C */ cpu->r[11] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269B49C */ cpu->r[12] = _t10;
|
|
/* 0269B4A0 */ _t11 = cpu->r[12] + 0x00000004u;
|
|
/* 0269B4A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0269B4A4 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269B4A8 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269B4A8 */ rbrew_write32(cpu->mem, _t12, cpu->r[11]);
|
|
/* 0269B4AC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269B4B0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269B4B4 */ _t13 = cpu->r[1] + 0x00000010u;
|
|
/* 0269B4B4 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 0269B4B8 */ Gambit_fn_02791888(cpu);
|
|
/* 0269B4BC */ _t14 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269B4BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0269B4C0 */ cpu->lr = cpu->r[0];
|
|
/* 0269B4C4 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 0269B4C4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0269B4C8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269B4CC */ return;
|
|
}
|
|
|
|
// fn_0269B458 @ 0x269b458
|
|
void Gambit_fn_0269B458(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_0269B458: ; // 0x269b458
|
|
/* 0269B458 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0269B458 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269B458 */ cpu->r[1] = _t0;
|
|
/* 0269B45C */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0269B45C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0269B460 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269B464 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269B464 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0269B468 */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0269B468 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0269B46C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000003u);
|
|
/* 0269B470 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269B470 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0269B470 */ if (_t5) goto L_0269B474; else goto L_0269B490;
|
|
L_0269B474: ; // 0x269b474
|
|
/* 0269B474 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 0269B474 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0269B478 */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 0269B478 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269B47C */ cpu->ctr = cpu->r[0];
|
|
/* 0269B480 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269B484 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0269B488 */ cpu->r[10] = 0x00000002u;
|
|
/* 0269B48C */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0269B48C */ rbrew_write32(cpu->mem, _t8, cpu->r[10]);
|
|
L_0269B490: ; // 0x269b490
|
|
/* 0269B490 */ cpu->r[0] = 0x00000005u;
|
|
/* 0269B494 */ cpu->r[12] = 0x100E0000u;
|
|
/* 0269B498 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 0269B498 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 0269B49C */ _t10 = cpu->r[12] + 0x000041D0u;
|
|
/* 0269B49C */ cpu->r[11] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269B49C */ cpu->r[12] = _t10;
|
|
/* 0269B4A0 */ _t11 = cpu->r[12] + 0x00000004u;
|
|
/* 0269B4A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0269B4A4 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269B4A8 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269B4A8 */ rbrew_write32(cpu->mem, _t12, cpu->r[11]);
|
|
/* 0269B4AC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269B4B0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269B4B4 */ _t13 = cpu->r[1] + 0x00000010u;
|
|
/* 0269B4B4 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 0269B4B8 */ Gambit_fn_02791888(cpu);
|
|
/* 0269B4BC */ _t14 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269B4BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0269B4C0 */ cpu->lr = cpu->r[0];
|
|
/* 0269B4C4 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 0269B4C4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0269B4C8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269B4CC */ return;
|
|
}
|
|
|
|
// fn_0269B4D0 @ 0x269b4d0
|
|
void Gambit_fn_0269B4D0(CPUState* cpu) {
|
|
L_0269B4D0: ; // 0x269b4d0
|
|
/* 0269B4D0 */ cpu->r[3] = 0x100E0000u;
|
|
/* 0269B4D4 */ cpu->r[3] = cpu->r[3] + 0x00004258u;
|
|
/* 0269B4D8 */ return;
|
|
}
|
|
|
|
// fn_0269B4DC @ 0x269b4dc
|
|
void Gambit_fn_0269B4DC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0269B4DC: ; // 0x269b4dc
|
|
/* 0269B4DC */ cpu->r[9] = 0x101D0000u;
|
|
/* 0269B4E0 */ _t0 = cpu->r[9] + 0x00000E58u;
|
|
/* 0269B4E0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0269B4E0 */ cpu->r[9] = _t0;
|
|
/* 0269B4E4 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0269B4E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0269B4EC */ cpu->r[12] = cpu->r[12] + 0x00000E5Cu;
|
|
/* 0269B4F0 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269B4F0 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0269B4F0 */ if (_t2) goto L_0269B4F4; else goto L_0269B508;
|
|
L_0269B4F4: ; // 0x269b4f4
|
|
/* 0269B4F4 */ cpu->r[7] = 0x100E0000u;
|
|
/* 0269B4F8 */ cpu->r[0] = 0x00000001u;
|
|
/* 0269B4FC */ cpu->r[7] = cpu->r[7] + 0x00004248u;
|
|
/* 0269B500 */ _t3 = cpu->r[9] + 0x00000000u;
|
|
/* 0269B500 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269B504 */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 0269B504 */ rbrew_write32(cpu->mem, _t4, cpu->r[7]);
|
|
L_0269B508: ; // 0x269b508
|
|
/* 0269B508 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 0269B50C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269B50C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0269B50C */ if (_t6) goto L_0269B510; else goto L_0269B518;
|
|
L_0269B510: ; // 0x269b510
|
|
/* 0269B510 */ cpu->r[3] = 0x00000001u;
|
|
/* 0269B514 */ return;
|
|
L_0269B518: ; // 0x269b518
|
|
/* 0269B518 */ cpu->r[7] = 0x101D0000u;
|
|
/* 0269B51C */ _t7 = cpu->r[7] + 0xFFFFDD74u;
|
|
/* 0269B51C */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269B51C */ cpu->r[7] = _t7;
|
|
/* 0269B520 */ cpu->r[11] = 0x101D0000u;
|
|
/* 0269B524 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0269B528 */ cpu->r[11] = cpu->r[11] + 0xFFFFDD78u;
|
|
/* 0269B52C */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269B52C */ _t9 = _t8 & 0x00000001u;
|
|
/* 0269B52C */ if (_t9) goto L_0269B530; else goto L_0269B544;
|
|
L_0269B530: ; // 0x269b530
|
|
/* 0269B530 */ cpu->r[0] = 0x100E0000u;
|
|
/* 0269B534 */ cpu->r[9] = 0x00000001u;
|
|
/* 0269B538 */ cpu->r[0] = cpu->r[0] + 0x000041D8u;
|
|
/* 0269B53C */ _t10 = cpu->r[7] + 0x00000000u;
|
|
/* 0269B53C */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 0269B540 */ _t11 = cpu->r[11] + 0x00000000u;
|
|
/* 0269B540 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_0269B544: ; // 0x269b544
|
|
/* 0269B544 */ cpu->r[0] = cpu->r[4] ^ cpu->r[11];
|
|
/* 0269B548 */ cpu->r[8] = rbrew_clz32(cpu->r[0]);
|
|
/* 0269B54C */ cpu->r[3] = rbrew_rlwinm(cpu->r[8], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
/* 0269B550 */ return;
|
|
}
|
|
|
|
// fn_0269B554 @ 0x269b554
|
|
void Gambit_fn_0269B554(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0269B554: ; // 0x269b554
|
|
/* 0269B554 */ cpu->r[0] = cpu->lr;
|
|
/* 0269B558 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0269B558 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269B558 */ cpu->r[1] = _t0;
|
|
/* 0269B55C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269B55C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0269B560 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0269B560 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0269B564 */ _t3 = cpu->r[3] + 0x0000000Eu;
|
|
/* 0269B564 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0269B568 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269B56C */ /* nop */
|
|
/* 0269B570 */ Gambit_fn_027FC35C(cpu);
|
|
/* 0269B574 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269B578 */ Gambit_fn_0269B8D4(cpu);
|
|
/* 0269B57C */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0269B57C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269B580 */ cpu->lr = cpu->r[0];
|
|
/* 0269B584 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269B584 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0269B588 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0269B58C */ return;
|
|
}
|
|
|
|
// fn_0269B558 @ 0x269b558
|
|
void Gambit_fn_0269B558(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0269B558: ; // 0x269b558
|
|
/* 0269B558 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0269B558 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269B558 */ cpu->r[1] = _t0;
|
|
/* 0269B55C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269B55C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0269B560 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0269B560 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0269B564 */ _t3 = cpu->r[3] + 0x0000000Eu;
|
|
/* 0269B564 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0269B568 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269B56C */ /* nop */
|
|
/* 0269B570 */ Gambit_fn_027FC35C(cpu);
|
|
/* 0269B574 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269B578 */ Gambit_fn_0269B8D4(cpu);
|
|
/* 0269B57C */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0269B57C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269B580 */ cpu->lr = cpu->r[0];
|
|
/* 0269B584 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269B584 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0269B588 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0269B58C */ return;
|
|
}
|
|
|
|
// fn_0269B590 @ 0x269b590
|
|
void Gambit_fn_0269B590(CPUState* cpu) {
|
|
L_0269B590: ; // 0x269b590
|
|
/* 0269B590 */ return;
|
|
}
|
|
|
|
// fn_0269B59C @ 0x269b59c
|
|
void Gambit_fn_0269B59C(CPUState* cpu) {
|
|
uint32_t _t0, _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_0269B59C: ; // 0x269b59c
|
|
/* 0269B59C */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 0269B59C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269B59C */ cpu->r[1] = _t0;
|
|
/* 0269B5A0 */ /* nop */
|
|
/* 0269B5A4 */ cpu->r[0] = cpu->lr;
|
|
/* 0269B5A8 */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 0269B5A8 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0269B5AC */ cpu->r[29] = cpu->r[6];
|
|
/* 0269B5B0 */ cpu->r[28] = cpu->r[3];
|
|
/* 0269B5B4 */ cpu->r[30] = cpu->r[5];
|
|
/* 0269B5B8 */ _t2 = cpu->r[30] + 0x00000000u;
|
|
/* 0269B5B8 */ cpu->r[27] = rbrew_read8(cpu->mem, _t2);
|
|
/* 0269B5BC */ cpu->r[31] = 0x101D0000u;
|
|
/* 0269B5C0 */ _t3 = cpu->r[28] + 0x0000001Cu;
|
|
/* 0269B5C0 */ rbrew_write32(cpu->mem, _t3, cpu->r[4]);
|
|
/* 0269B5C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0269B5C8 */ _t4 = cpu->r[28] + 0x0000000Fu;
|
|
/* 0269B5C8 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[27]);
|
|
/* 0269B5CC */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269B5CC */ _t6 = _t5 & 0x00000001u;
|
|
/* 0269B5CC */ if (_t6) goto L_0269B610; else goto L_0269B5D0;
|
|
L_0269B5D0: ; // 0x269b5d0
|
|
/* 0269B5D0 */ _t7 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 0269B5D0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269B5D4 */ Gambit_fn_02826F20(cpu);
|
|
/* 0269B5D8 */ _t8 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0269B5D8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0269B5DC */ _t9 = cpu->r[9] + 0x00000034u;
|
|
/* 0269B5DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269B5E0 */ cpu->ctr = cpu->r[0];
|
|
/* 0269B5E4 */ cpu->r[5] = 0x00000004u;
|
|
/* 0269B5E8 */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0269B5EC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0269B5F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0269B5F4 */ cpu->r[0] = cpu->r[27];
|
|
/* 0269B5F8 */ _t10 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0269B5F8 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0269B5F8 */ if (_t11) goto L_0269B600; else goto L_0269B5FC;
|
|
L_0269B5FC: ; // 0x269b5fc
|
|
/* 0269B5FC */ cpu->r[0] = 0x00000001u;
|
|
L_0269B600: ; // 0x269b600
|
|
/* 0269B600 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0269B604 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269B604 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0269B604 */ if (_t13) goto L_0269B610; else goto L_0269B608;
|
|
L_0269B608: ; // 0x269b608
|
|
/* 0269B608 */ _t14 = cpu->r[28] + 0x00000024u;
|
|
/* 0269B608 */ rbrew_write32(cpu->mem, _t14, cpu->r[3]);
|
|
/* 0269B60C */ _t15 = cpu->r[28] + 0x00000020u;
|
|
/* 0269B60C */ rbrew_write32(cpu->mem, _t15, cpu->r[27]);
|
|
L_0269B610: ; // 0x269b610
|
|
/* 0269B610 */ _t16 = cpu->r[28] + 0x00000020u;
|
|
/* 0269B610 */ cpu->r[7] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0269B614 */ cpu->r[0] = 0x00000000u;
|
|
/* 0269B618 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0269B61C */ cpu->r[12] = cpu->r[0];
|
|
/* 0269B620 */ _t17 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0269B620 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0269B620 */ if (_t18) goto L_0269B624; else goto L_0269B648;
|
|
L_0269B624: ; // 0x269b624
|
|
/* 0269B624 */ cpu->ctr = cpu->r[7];
|
|
/* 0269B628 */ cpu->r[10] = 0x00000000u;
|
|
L_0269B62C: ; // 0x269b62c
|
|
/* 0269B62C */ _t19 = cpu->r[28] + 0x00000024u;
|
|
/* 0269B62C */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0269B630 */ _t20 = cpu->r[11] + cpu->r[10];
|
|
/* 0269B630 */ rbrew_write16(cpu->mem, _t20, (uint16_t)cpu->r[0]);
|
|
/* 0269B634 */ cpu->r[8] = cpu->r[11] + cpu->r[10];
|
|
/* 0269B638 */ _t21 = cpu->r[8] + 0x00000004u;
|
|
/* 0269B638 */ rbrew_write32(cpu->mem, _t21, cpu->r[12]);
|
|
/* 0269B63C */ cpu->r[10] = cpu->r[10] + 0x00000008u;
|
|
/* 0269B640 */ _t22 = cpu->r[8] + 0x00000002u;
|
|
/* 0269B640 */ rbrew_write16(cpu->mem, _t22, (uint16_t)cpu->r[0]);
|
|
/* 0269B644 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0269B644 */ _t23 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0269B644 */ _t24 = _t23 >> (0x00000002u & 31u);
|
|
/* 0269B644 */ _t25 = _t24 & 0x00000001u;
|
|
/* 0269B644 */ if (_t25) goto L_0269B62C; else goto L_0269B648;
|
|
L_0269B648: ; // 0x269b648
|
|
/* 0269B648 */ _t26 = cpu->r[28] + 0x0000000Fu;
|
|
/* 0269B648 */ cpu->r[27] = rbrew_read8(cpu->mem, _t26);
|
|
/* 0269B64C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0269B650 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269B650 */ _t28 = _t27 & 0x00000001u;
|
|
/* 0269B650 */ if (_t28) goto L_0269B694; else goto L_0269B654;
|
|
L_0269B654: ; // 0x269b654
|
|
/* 0269B654 */ _t29 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 0269B654 */ cpu->r[3] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0269B658 */ Gambit_fn_02826F20(cpu);
|
|
/* 0269B65C */ _t30 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0269B65C */ cpu->r[12] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0269B660 */ _t31 = cpu->r[12] + 0x00000034u;
|
|
/* 0269B660 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0269B664 */ cpu->ctr = cpu->r[0];
|
|
/* 0269B668 */ cpu->r[5] = 0x00000004u;
|
|
/* 0269B66C */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0269B670 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0269B674 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0269B678 */ cpu->r[11] = cpu->r[27];
|
|
/* 0269B67C */ _t32 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0269B67C */ _t33 = _t32 & 0x00000001u;
|
|
/* 0269B67C */ if (_t33) goto L_0269B684; else goto L_0269B680;
|
|
L_0269B680: ; // 0x269b680
|
|
/* 0269B680 */ cpu->r[11] = 0x00000001u;
|
|
L_0269B684: ; // 0x269b684
|
|
/* 0269B684 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0269B688 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269B688 */ _t35 = _t34 & 0x00000001u;
|
|
/* 0269B688 */ if (_t35) goto L_0269B694; else goto L_0269B68C;
|
|
L_0269B68C: ; // 0x269b68c
|
|
/* 0269B68C */ _t36 = cpu->r[28] + 0x0000002Cu;
|
|
/* 0269B68C */ rbrew_write32(cpu->mem, _t36, cpu->r[3]);
|
|
/* 0269B690 */ _t37 = cpu->r[28] + 0x00000028u;
|
|
/* 0269B690 */ rbrew_write32(cpu->mem, _t37, cpu->r[27]);
|
|
L_0269B694: ; // 0x269b694
|
|
/* 0269B694 */ _t38 = cpu->r[28] + 0x00000028u;
|
|
/* 0269B694 */ cpu->r[6] = rbrew_read32(cpu->mem, _t38);
|
|
/* 0269B698 */ cpu->r[0] = 0x00000000u;
|
|
/* 0269B69C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 0269B6A0 */ cpu->r[12] = cpu->r[0];
|
|
/* 0269B6A4 */ _t39 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0269B6A4 */ _t40 = _t39 & 0x00000001u;
|
|
/* 0269B6A4 */ if (_t40) goto L_0269B6A8; else goto L_0269B6CC;
|
|
L_0269B6A8: ; // 0x269b6a8
|
|
/* 0269B6A8 */ cpu->ctr = cpu->r[6];
|
|
/* 0269B6AC */ cpu->r[9] = 0x00000000u;
|
|
L_0269B6B0: ; // 0x269b6b0
|
|
/* 0269B6B0 */ _t41 = cpu->r[28] + 0x0000002Cu;
|
|
/* 0269B6B0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0269B6B4 */ _t42 = cpu->r[5] + cpu->r[9];
|
|
/* 0269B6B4 */ rbrew_write16(cpu->mem, _t42, (uint16_t)cpu->r[0]);
|
|
/* 0269B6B8 */ cpu->r[7] = cpu->r[5] + cpu->r[9];
|
|
/* 0269B6BC */ _t43 = cpu->r[7] + 0x00000004u;
|
|
/* 0269B6BC */ rbrew_write32(cpu->mem, _t43, cpu->r[12]);
|
|
/* 0269B6C0 */ cpu->r[9] = cpu->r[9] + 0x00000008u;
|
|
/* 0269B6C4 */ _t44 = cpu->r[7] + 0x00000002u;
|
|
/* 0269B6C4 */ rbrew_write16(cpu->mem, _t44, (uint16_t)cpu->r[0]);
|
|
/* 0269B6C8 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0269B6C8 */ _t45 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0269B6C8 */ _t46 = _t45 >> (0x00000002u & 31u);
|
|
/* 0269B6C8 */ _t47 = _t46 & 0x00000001u;
|
|
/* 0269B6C8 */ if (_t47) goto L_0269B6B0; else goto L_0269B6CC;
|
|
L_0269B6CC: ; // 0x269b6cc
|
|
/* 0269B6CC */ _t48 = cpu->r[28] + 0x0000000Fu;
|
|
/* 0269B6CC */ cpu->r[27] = rbrew_read8(cpu->mem, _t48);
|
|
/* 0269B6D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0269B6D4 */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269B6D4 */ _t50 = _t49 & 0x00000001u;
|
|
/* 0269B6D4 */ if (_t50) goto L_0269B718; else goto L_0269B6D8;
|
|
L_0269B6D8: ; // 0x269b6d8
|
|
/* 0269B6D8 */ _t51 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 0269B6D8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t51);
|
|
/* 0269B6DC */ Gambit_fn_02826F20(cpu);
|
|
/* 0269B6E0 */ _t52 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0269B6E0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t52);
|
|
/* 0269B6E4 */ _t53 = cpu->r[6] + 0x00000034u;
|
|
/* 0269B6E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t53);
|
|
/* 0269B6E8 */ cpu->ctr = cpu->r[0];
|
|
/* 0269B6EC */ cpu->r[5] = 0x00000004u;
|
|
/* 0269B6F0 */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0269B6F4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0269B6F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0269B6FC */ cpu->r[10] = cpu->r[27];
|
|
/* 0269B700 */ _t54 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0269B700 */ _t55 = _t54 & 0x00000001u;
|
|
/* 0269B700 */ if (_t55) goto L_0269B708; else goto L_0269B704;
|
|
L_0269B704: ; // 0x269b704
|
|
/* 0269B704 */ cpu->r[10] = 0x00000001u;
|
|
L_0269B708: ; // 0x269b708
|
|
/* 0269B708 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0269B70C */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269B70C */ _t57 = _t56 & 0x00000001u;
|
|
/* 0269B70C */ if (_t57) goto L_0269B718; else goto L_0269B710;
|
|
L_0269B710: ; // 0x269b710
|
|
/* 0269B710 */ _t58 = cpu->r[28] + 0x00000034u;
|
|
/* 0269B710 */ rbrew_write32(cpu->mem, _t58, cpu->r[3]);
|
|
/* 0269B714 */ _t59 = cpu->r[28] + 0x00000030u;
|
|
/* 0269B714 */ rbrew_write32(cpu->mem, _t59, cpu->r[27]);
|
|
L_0269B718: ; // 0x269b718
|
|
/* 0269B718 */ _t60 = cpu->r[28] + 0x00000030u;
|
|
/* 0269B718 */ cpu->r[12] = rbrew_read32(cpu->mem, _t60);
|
|
/* 0269B71C */ cpu->r[0] = 0x00000000u;
|
|
/* 0269B720 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0269B724 */ cpu->r[5] = cpu->r[0];
|
|
/* 0269B728 */ _t61 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0269B728 */ _t62 = _t61 & 0x00000001u;
|
|
/* 0269B728 */ if (_t62) goto L_0269B72C; else goto L_0269B750;
|
|
L_0269B72C: ; // 0x269b72c
|
|
/* 0269B72C */ cpu->ctr = cpu->r[12];
|
|
/* 0269B730 */ cpu->r[8] = 0x00000000u;
|
|
L_0269B734: ; // 0x269b734
|
|
/* 0269B734 */ _t63 = cpu->r[28] + 0x00000034u;
|
|
/* 0269B734 */ cpu->r[9] = rbrew_read32(cpu->mem, _t63);
|
|
/* 0269B738 */ _t64 = cpu->r[9] + cpu->r[8];
|
|
/* 0269B738 */ rbrew_write16(cpu->mem, _t64, (uint16_t)cpu->r[0]);
|
|
/* 0269B73C */ cpu->r[6] = cpu->r[9] + cpu->r[8];
|
|
/* 0269B740 */ _t65 = cpu->r[6] + 0x00000004u;
|
|
/* 0269B740 */ rbrew_write32(cpu->mem, _t65, cpu->r[5]);
|
|
/* 0269B744 */ cpu->r[8] = cpu->r[8] + 0x00000008u;
|
|
/* 0269B748 */ _t66 = cpu->r[6] + 0x00000002u;
|
|
/* 0269B748 */ rbrew_write16(cpu->mem, _t66, (uint16_t)cpu->r[0]);
|
|
/* 0269B74C */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0269B74C */ _t67 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0269B74C */ _t68 = _t67 >> (0x00000002u & 31u);
|
|
/* 0269B74C */ _t69 = _t68 & 0x00000001u;
|
|
/* 0269B74C */ if (_t69) goto L_0269B734; else goto L_0269B750;
|
|
L_0269B750: ; // 0x269b750
|
|
/* 0269B750 */ _t70 = cpu->r[30] + 0x00000000u;
|
|
/* 0269B750 */ cpu->r[25] = rbrew_read8(cpu->mem, _t70);
|
|
/* 0269B754 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 0269B758 */ _t71 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269B758 */ _t72 = _t71 & 0x00000001u;
|
|
/* 0269B758 */ if (_t72) goto L_0269B834; else goto L_0269B75C;
|
|
L_0269B75C: ; // 0x269b75c
|
|
/* 0269B75C */ _t73 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 0269B75C */ cpu->r[3] = rbrew_read32(cpu->mem, _t73);
|
|
/* 0269B760 */ Gambit_fn_02826F20(cpu);
|
|
/* 0269B764 */ _t74 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0269B764 */ cpu->r[10] = rbrew_read32(cpu->mem, _t74);
|
|
/* 0269B768 */ _t75 = cpu->r[10] + 0x00000034u;
|
|
/* 0269B768 */ cpu->r[12] = rbrew_read32(cpu->mem, _t75);
|
|
/* 0269B76C */ cpu->ctr = cpu->r[12];
|
|
/* 0269B770 */ cpu->r[5] = 0x00000004u;
|
|
/* 0269B774 */ cpu->r[4] = (uint32_t)((int32_t)cpu->r[25] * (int32_t)0x00000024u);
|
|
/* 0269B778 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0269B77C */ cpu->r[24] = cpu->r[3];
|
|
/* 0269B780 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 0269B784 */ cpu->r[30] = cpu->r[25];
|
|
/* 0269B788 */ cpu->r[7] = 0x00000000u;
|
|
/* 0269B78C */ _t76 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0269B78C */ _t77 = _t76 & 0x00000001u;
|
|
/* 0269B78C */ if (_t77) goto L_0269B794; else goto L_0269B790;
|
|
L_0269B790: ; // 0x269b790
|
|
/* 0269B790 */ cpu->r[30] = 0x00000001u;
|
|
L_0269B794: ; // 0x269b794
|
|
/* 0269B794 */ cpu->r[31] = 0x10110000u;
|
|
/* 0269B798 */ cpu->r[22] = (uint32_t)((int32_t)cpu->r[7] * (int32_t)0x00000024u);
|
|
/* 0269B79C */ _t78 = cpu->r[31] + 0x00007399u;
|
|
/* 0269B79C */ cpu->r[31] = rbrew_read8(cpu->mem, _t78);
|
|
/* 0269B7A0 */ cpu->r[23] = 0x00000018u;
|
|
L_0269B7A4: ; // 0x269b7a4
|
|
/* 0269B7A4 */ cpu->r[27] = cpu->r[24] + cpu->r[22];
|
|
/* 0269B7A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0269B7A8 */ _t79 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269B7A8 */ _t80 = _t79 & 0x00000001u;
|
|
/* 0269B7A8 */ if (_t80) goto L_0269B818; else goto L_0269B7AC;
|
|
L_0269B7AC: ; // 0x269b7ac
|
|
/* 0269B7AC */ cpu->r[26] = cpu->r[27];
|
|
/* 0269B7AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 0269B7B0 */ _t81 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269B7B0 */ _t82 = _t81 & 0x00000001u;
|
|
/* 0269B7B0 */ if (_t82) goto L_0269B7B4; else goto L_0269B7C4;
|
|
L_0269B7B4: ; // 0x269b7b4
|
|
/* 0269B7B4 */ cpu->r[3] = 0x00000024u;
|
|
/* 0269B7B8 */ Gambit_fn_02801A78(cpu);
|
|
/* 0269B7BC */ cpu->r[26] = cpu->r[3];
|
|
/* 0269B7BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 0269B7C0 */ _t83 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269B7C0 */ _t84 = _t83 & 0x00000001u;
|
|
/* 0269B7C0 */ if (_t84) goto L_0269B80C; else goto L_0269B7C4;
|
|
L_0269B7C4: ; // 0x269b7c4
|
|
/* 0269B7C4 */ cpu->r[11] = cpu->r[26];
|
|
/* 0269B7C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0269B7C8 */ _t85 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269B7C8 */ _t86 = _t85 & 0x00000001u;
|
|
/* 0269B7C8 */ if (_t86) goto L_0269B7CC; else goto L_0269B7DC;
|
|
L_0269B7CC: ; // 0x269b7cc
|
|
/* 0269B7CC */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0269B7D0 */ Gambit_fn_02801A78(cpu);
|
|
/* 0269B7D4 */ cpu->r[11] = cpu->r[3];
|
|
/* 0269B7D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0269B7D8 */ _t87 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269B7D8 */ _t88 = _t87 & 0x00000001u;
|
|
/* 0269B7D8 */ if (_t88) goto L_0269B7F8; else goto L_0269B7DC;
|
|
L_0269B7DC: ; // 0x269b7dc
|
|
/* 0269B7DC */ cpu->r[5] = 0x100E0000u;
|
|
/* 0269B7E0 */ _t89 = cpu->r[11] + 0x00000008u;
|
|
/* 0269B7E0 */ rbrew_write32(cpu->mem, _t89, cpu->r[23]);
|
|
/* 0269B7E4 */ cpu->r[0] = cpu->r[26] + 0x0000000Cu;
|
|
/* 0269B7E8 */ cpu->r[5] = cpu->r[5] + 0x00004200u;
|
|
/* 0269B7EC */ _t90 = cpu->r[11] + 0x00000000u;
|
|
/* 0269B7EC */ rbrew_write32(cpu->mem, _t90, cpu->r[0]);
|
|
/* 0269B7F0 */ _t91 = cpu->r[11] + 0x00000004u;
|
|
/* 0269B7F0 */ rbrew_write32(cpu->mem, _t91, cpu->r[5]);
|
|
/* 0269B7F4 */ _t92 = cpu->r[26] + 0x00000023u;
|
|
/* 0269B7F4 */ rbrew_write8(cpu->mem, _t92, (uint8_t)cpu->r[31]);
|
|
L_0269B7F8: ; // 0x269b7f8
|
|
/* 0269B7F8 */ cpu->r[6] = 0x100E0000u;
|
|
/* 0269B7FC */ _t93 = cpu->r[26] + 0x00000000u;
|
|
/* 0269B7FC */ cpu->r[7] = rbrew_read32(cpu->mem, _t93);
|
|
/* 0269B800 */ cpu->r[6] = cpu->r[6] + 0x00004218u;
|
|
/* 0269B804 */ _t94 = cpu->r[26] + 0x00000004u;
|
|
/* 0269B804 */ rbrew_write32(cpu->mem, _t94, cpu->r[6]);
|
|
/* 0269B808 */ _t95 = cpu->r[7] + 0x00000000u;
|
|
/* 0269B808 */ rbrew_write8(cpu->mem, _t95, (uint8_t)cpu->r[31]);
|
|
L_0269B80C: ; // 0x269b80c
|
|
/* 0269B80C */ cpu->r[0] = 0x100E0000u;
|
|
/* 0269B810 */ cpu->r[0] = cpu->r[0] + 0x00004230u;
|
|
/* 0269B814 */ _t96 = cpu->r[27] + 0x00000004u;
|
|
/* 0269B814 */ rbrew_write32(cpu->mem, _t96, cpu->r[0]);
|
|
L_0269B818: ; // 0x269b818
|
|
/* 0269B818 */ cpu->r[30] = cpu->r[30] + 0xFFFFFFFFu;
|
|
/* 0269B818 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0269B81C */ cpu->r[22] = cpu->r[22] + 0x00000024u;
|
|
/* 0269B820 */ _t97 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269B820 */ _t98 = _t97 & 0x00000001u;
|
|
/* 0269B820 */ if (_t98) goto L_0269B824; else goto L_0269B7A4;
|
|
L_0269B824: ; // 0x269b824
|
|
/* 0269B824 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 0269B828 */ _t99 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269B828 */ _t100 = _t99 & 0x00000001u;
|
|
/* 0269B828 */ if (_t100) goto L_0269B834; else goto L_0269B82C;
|
|
L_0269B82C: ; // 0x269b82c
|
|
/* 0269B82C */ _t101 = cpu->r[28] + 0x00000018u;
|
|
/* 0269B82C */ rbrew_write32(cpu->mem, _t101, cpu->r[24]);
|
|
/* 0269B830 */ _t102 = cpu->r[28] + 0x00000014u;
|
|
/* 0269B830 */ rbrew_write32(cpu->mem, _t102, cpu->r[25]);
|
|
L_0269B834: ; // 0x269b834
|
|
/* 0269B834 */ _t103 = cpu->r[28] + 0x0000000Eu;
|
|
/* 0269B834 */ rbrew_write8(cpu->mem, _t103, (uint8_t)cpu->r[29]);
|
|
/* 0269B838 */ /* nop */
|
|
/* 0269B83C */ _t104 = cpu->r[1] + 0x00000034u;
|
|
/* 0269B83C */ cpu->r[0] = rbrew_read32(cpu->mem, _t104);
|
|
/* 0269B840 */ cpu->lr = cpu->r[0];
|
|
/* 0269B844 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 0269B848 */ return;
|
|
}
|
|
|
|
// fn_0269B84C @ 0x269b84c
|
|
void Gambit_fn_0269B84C(CPUState* cpu) {
|
|
uint32_t _t0, _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_0269B84C: ; // 0x269b84c
|
|
/* 0269B84C */ _t0 = cpu->r[7] + 0x00000000u;
|
|
/* 0269B84C */ cpu->r[8] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0269B850 */ _t1 = cpu->r[3] + 0x00000020u;
|
|
/* 0269B850 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0269B854 */ _t2 = cpu->r[3] + 0x00000024u;
|
|
/* 0269B854 */ cpu->r[11] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0269B858 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[12]);
|
|
/* 0269B85C */ _t3 = cpu->r[4] + 0x00000000u;
|
|
/* 0269B85C */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0269B860 */ _t4 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269B860 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0269B860 */ if (_t5) goto L_0269B864; else goto L_0269B86C;
|
|
L_0269B864: ; // 0x269b864
|
|
/* 0269B864 */ cpu->r[10] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0269B868 */ cpu->r[11] = cpu->r[11] + cpu->r[10];
|
|
L_0269B86C: ; // 0x269b86c
|
|
/* 0269B86C */ _t6 = cpu->r[11] + 0x00000000u;
|
|
/* 0269B86C */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0269B870 */ _t7 = cpu->r[4] + 0x00000004u;
|
|
/* 0269B870 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269B874 */ _t8 = cpu->r[11] + 0x00000004u;
|
|
/* 0269B874 */ rbrew_write32(cpu->mem, _t8, cpu->r[8]);
|
|
/* 0269B878 */ _t9 = cpu->r[7] + 0x00000000u;
|
|
/* 0269B878 */ cpu->r[9] = rbrew_read8(cpu->mem, _t9);
|
|
/* 0269B87C */ _t10 = cpu->r[3] + 0x00000028u;
|
|
/* 0269B87C */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269B880 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[12]);
|
|
/* 0269B884 */ _t11 = cpu->r[3] + 0x0000002Cu;
|
|
/* 0269B884 */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0269B888 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269B888 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0269B888 */ if (_t13) goto L_0269B88C; else goto L_0269B894;
|
|
L_0269B88C: ; // 0x269b88c
|
|
/* 0269B88C */ cpu->r[0] = rbrew_rlwinm(cpu->r[9], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0269B890 */ cpu->r[10] = cpu->r[10] + cpu->r[0];
|
|
L_0269B894: ; // 0x269b894
|
|
/* 0269B894 */ _t14 = cpu->r[5] + 0x00000000u;
|
|
/* 0269B894 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0269B898 */ _t15 = cpu->r[10] + 0x00000000u;
|
|
/* 0269B898 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 0269B89C */ _t16 = cpu->r[5] + 0x00000004u;
|
|
/* 0269B89C */ cpu->r[8] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0269B8A0 */ _t17 = cpu->r[10] + 0x00000004u;
|
|
/* 0269B8A0 */ rbrew_write32(cpu->mem, _t17, cpu->r[8]);
|
|
/* 0269B8A4 */ _t18 = cpu->r[3] + 0x00000030u;
|
|
/* 0269B8A4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0269B8A8 */ _t19 = cpu->r[7] + 0x00000000u;
|
|
/* 0269B8A8 */ cpu->r[11] = rbrew_read8(cpu->mem, _t19);
|
|
/* 0269B8AC */ _t20 = cpu->r[3] + 0x00000034u;
|
|
/* 0269B8AC */ cpu->r[12] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0269B8B0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[9]);
|
|
/* 0269B8B4 */ _t21 = cpu->r[6] + 0x00000000u;
|
|
/* 0269B8B4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0269B8B8 */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269B8B8 */ _t23 = _t22 & 0x00000001u;
|
|
/* 0269B8B8 */ if (_t23) goto L_0269B8BC; else goto L_0269B8C4;
|
|
L_0269B8BC: ; // 0x269b8bc
|
|
/* 0269B8BC */ cpu->r[11] = rbrew_rlwinm(cpu->r[11], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0269B8C0 */ cpu->r[12] = cpu->r[12] + cpu->r[11];
|
|
L_0269B8C4: ; // 0x269b8c4
|
|
/* 0269B8C4 */ _t24 = cpu->r[12] + 0x00000000u;
|
|
/* 0269B8C4 */ rbrew_write32(cpu->mem, _t24, cpu->r[7]);
|
|
/* 0269B8C8 */ _t25 = cpu->r[6] + 0x00000004u;
|
|
/* 0269B8C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0269B8CC */ _t26 = cpu->r[12] + 0x00000004u;
|
|
/* 0269B8CC */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 0269B8D0 */ return;
|
|
}
|
|
|
|
// fn_0269B8D4 @ 0x269b8d4
|
|
void Gambit_fn_0269B8D4(CPUState* 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_0269B8D4: ; // 0x269b8d4
|
|
/* 0269B8D4 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0269B8D4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0269B8D8 */ /* nop */
|
|
/* 0269B8DC */ _t1 = cpu->r[3] + 0x00000020u;
|
|
/* 0269B8DC */ cpu->r[7] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0269B8E0 */ cpu->r[8] = cpu->r[0];
|
|
/* 0269B8E4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[7]);
|
|
/* 0269B8E8 */ _t2 = cpu->r[3] + 0x00000024u;
|
|
/* 0269B8E8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0269B8EC */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269B8EC */ _t4 = _t3 & 0x00000001u;
|
|
/* 0269B8EC */ if (_t4) goto L_0269B8F0; else goto L_0269B908;
|
|
L_0269B8F0: ; // 0x269b8f0
|
|
/* 0269B8F0 */ cpu->r[9] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0269B8F4 */ cpu->r[9] = cpu->r[12] + cpu->r[9];
|
|
/* 0269B8F8 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 0269B8F8 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 0269B8FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0269B900 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269B900 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0269B900 */ if (_t7) goto L_0269B904; else goto L_0269B914;
|
|
L_0269B904: ; // 0x269b904
|
|
/* 0269B904 */ return;
|
|
L_0269B908: ; // 0x269b908
|
|
/* 0269B908 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 0269B908 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 0269B90C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0269B910 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269B910 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0269B910 */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0269B910 */ goto L_0269B914;
|
|
L_0269B914: ; // 0x269b914
|
|
/* 0269B914 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 0269B918 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 0269B918 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0269B91C */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269B91C */ _t13 = _t12 & 0x00000001u;
|
|
/* 0269B91C */ if (_t13) goto L_0269B920; else goto L_0269B928;
|
|
L_0269B920: ; // 0x269b920
|
|
/* 0269B920 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0269B924 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_0269B928: ; // 0x269b928
|
|
/* 0269B928 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 0269B928 */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 0269B92C */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 0269B92C */ cpu->r[8] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 0269B930 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0269B934 */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 0269B934 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0269B938 */ cpu->r[3] = cpu->r[7] + cpu->r[8];
|
|
/* 0269B93C */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269B93C */ _t18 = _t17 & 0x00000001u;
|
|
/* 0269B93C */ if (_t18) goto L_0269B954; else goto L_0269B940;
|
|
L_0269B940: ; // 0x269b940
|
|
/* 0269B940 */ /* nop */
|
|
/* 0269B944 */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 0269B944 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0269B948 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0269B94C */ cpu->r[12] = cpu->r[11] + cpu->r[10];
|
|
/* 0269B950 */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 0269B950 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_0269B954: ; // 0x269b954
|
|
/* 0269B954 */ cpu->ctr = cpu->r[11];
|
|
/* 0269B958 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0269B95C @ 0x269b95c
|
|
void Gambit_fn_0269B95C(CPUState* 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_0269B95C: ; // 0x269b95c
|
|
/* 0269B95C */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0269B95C */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0269B960 */ /* nop */
|
|
/* 0269B964 */ _t1 = cpu->r[3] + 0x00000028u;
|
|
/* 0269B964 */ cpu->r[7] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0269B968 */ cpu->r[8] = cpu->r[0];
|
|
/* 0269B96C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[7]);
|
|
/* 0269B970 */ _t2 = cpu->r[3] + 0x0000002Cu;
|
|
/* 0269B970 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0269B974 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269B974 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0269B974 */ if (_t4) goto L_0269B978; else goto L_0269B990;
|
|
L_0269B978: ; // 0x269b978
|
|
/* 0269B978 */ cpu->r[9] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0269B97C */ cpu->r[9] = cpu->r[12] + cpu->r[9];
|
|
/* 0269B980 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 0269B980 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 0269B984 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0269B988 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269B988 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0269B988 */ if (_t7) goto L_0269B98C; else goto L_0269B99C;
|
|
L_0269B98C: ; // 0x269b98c
|
|
/* 0269B98C */ return;
|
|
L_0269B990: ; // 0x269b990
|
|
/* 0269B990 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 0269B990 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 0269B994 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0269B998 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269B998 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0269B998 */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0269B998 */ goto L_0269B99C;
|
|
L_0269B99C: ; // 0x269b99c
|
|
/* 0269B99C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 0269B9A0 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 0269B9A0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0269B9A4 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269B9A4 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0269B9A4 */ if (_t13) goto L_0269B9A8; else goto L_0269B9B0;
|
|
L_0269B9A8: ; // 0x269b9a8
|
|
/* 0269B9A8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0269B9AC */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_0269B9B0: ; // 0x269b9b0
|
|
/* 0269B9B0 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 0269B9B0 */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 0269B9B4 */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 0269B9B4 */ cpu->r[8] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 0269B9B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0269B9BC */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 0269B9BC */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0269B9C0 */ cpu->r[3] = cpu->r[7] + cpu->r[8];
|
|
/* 0269B9C4 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269B9C4 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0269B9C4 */ if (_t18) goto L_0269B9DC; else goto L_0269B9C8;
|
|
L_0269B9C8: ; // 0x269b9c8
|
|
/* 0269B9C8 */ /* nop */
|
|
/* 0269B9CC */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 0269B9CC */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0269B9D0 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0269B9D4 */ cpu->r[12] = cpu->r[11] + cpu->r[10];
|
|
/* 0269B9D8 */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 0269B9D8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_0269B9DC: ; // 0x269b9dc
|
|
/* 0269B9DC */ cpu->ctr = cpu->r[11];
|
|
/* 0269B9E0 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0269B9E4 @ 0x269b9e4
|
|
void Gambit_fn_0269B9E4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0269B9E4: ; // 0x269b9e4
|
|
/* 0269B9E4 */ cpu->r[0] = cpu->lr;
|
|
/* 0269B9E8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0269B9E8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269B9E8 */ cpu->r[1] = _t0;
|
|
/* 0269B9EC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269B9EC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0269B9F0 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269B9F4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0269B9F4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0269B9F8 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0269B9F8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0269B9FC */ cpu->r[12] = 0x00000000u;
|
|
/* 0269BA00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0269BA04 */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 0269BA04 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 0269BA08 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269BA08 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0269BA08 */ if (_t6) goto L_0269BA30; else goto L_0269BA0C;
|
|
L_0269BA0C: ; // 0x269ba0c
|
|
/* 0269BA0C */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0269BA0C */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 0269BA10 */ /* nop */
|
|
/* 0269BA14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 0269BA18 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269BA18 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0269BA18 */ if (_t9) goto L_0269BA1C; else goto L_0269BA30;
|
|
L_0269BA1C: ; // 0x269ba1c
|
|
/* 0269BA1C */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 0269BA1C */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269BA20 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 0269BA20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0269BA24 */ cpu->ctr = cpu->r[0];
|
|
/* 0269BA28 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269BA2C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0269BA30: ; // 0x269ba30
|
|
/* 0269BA30 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269BA34 */ Gambit_fn_0269B95C(cpu);
|
|
/* 0269BA38 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269BA3C */ Gambit_fn_027FC37C(cpu);
|
|
/* 0269BA40 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0269BA40 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0269BA44 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269BA44 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0269BA48 */ cpu->lr = cpu->r[0];
|
|
/* 0269BA4C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0269BA50 */ return;
|
|
}
|
|
|
|
// fn_0269B9E8 @ 0x269b9e8
|
|
void Gambit_fn_0269B9E8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0269B9E8: ; // 0x269b9e8
|
|
/* 0269B9E8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0269B9E8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269B9E8 */ cpu->r[1] = _t0;
|
|
/* 0269B9EC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269B9EC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0269B9F0 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269B9F4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0269B9F4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0269B9F8 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0269B9F8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0269B9FC */ cpu->r[12] = 0x00000000u;
|
|
/* 0269BA00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0269BA04 */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 0269BA04 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 0269BA08 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269BA08 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0269BA08 */ if (_t6) goto L_0269BA30; else goto L_0269BA0C;
|
|
L_0269BA0C: ; // 0x269ba0c
|
|
/* 0269BA0C */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0269BA0C */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 0269BA10 */ /* nop */
|
|
/* 0269BA14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 0269BA18 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269BA18 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0269BA18 */ if (_t9) goto L_0269BA1C; else goto L_0269BA30;
|
|
L_0269BA1C: ; // 0x269ba1c
|
|
/* 0269BA1C */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 0269BA1C */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269BA20 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 0269BA20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0269BA24 */ cpu->ctr = cpu->r[0];
|
|
/* 0269BA28 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269BA2C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0269BA30: ; // 0x269ba30
|
|
/* 0269BA30 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269BA34 */ Gambit_fn_0269B95C(cpu);
|
|
/* 0269BA38 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269BA3C */ Gambit_fn_027FC37C(cpu);
|
|
/* 0269BA40 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0269BA40 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0269BA44 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269BA44 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0269BA48 */ cpu->lr = cpu->r[0];
|
|
/* 0269BA4C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0269BA50 */ return;
|
|
}
|
|
|
|
// fn_0269BA54 @ 0x269ba54
|
|
void Gambit_fn_0269BA54(CPUState* 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_0269BA54: ; // 0x269ba54
|
|
/* 0269BA54 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0269BA54 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0269BA58 */ /* nop */
|
|
/* 0269BA5C */ _t1 = cpu->r[3] + 0x00000030u;
|
|
/* 0269BA5C */ cpu->r[8] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0269BA60 */ cpu->r[7] = cpu->r[0];
|
|
/* 0269BA64 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[8]);
|
|
/* 0269BA68 */ _t2 = cpu->r[3] + 0x00000034u;
|
|
/* 0269BA68 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0269BA6C */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269BA6C */ _t4 = _t3 & 0x00000001u;
|
|
/* 0269BA6C */ if (_t4) goto L_0269BA70; else goto L_0269BA88;
|
|
L_0269BA70: ; // 0x269ba70
|
|
/* 0269BA70 */ cpu->r[10] = rbrew_rlwinm(cpu->r[7], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0269BA74 */ cpu->r[9] = cpu->r[12] + cpu->r[10];
|
|
/* 0269BA78 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 0269BA78 */ cpu->r[11] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 0269BA7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0269BA80 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269BA80 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0269BA80 */ if (_t7) goto L_0269BA84; else goto L_0269BA94;
|
|
L_0269BA84: ; // 0x269ba84
|
|
/* 0269BA84 */ return;
|
|
L_0269BA88: ; // 0x269ba88
|
|
/* 0269BA88 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 0269BA88 */ cpu->r[11] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 0269BA8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0269BA90 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269BA90 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0269BA90 */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0269BA90 */ goto L_0269BA94;
|
|
L_0269BA94: ; // 0x269ba94
|
|
/* 0269BA94 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[8]);
|
|
/* 0269BA98 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 0269BA98 */ cpu->r[8] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0269BA9C */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269BA9C */ _t13 = _t12 & 0x00000001u;
|
|
/* 0269BA9C */ if (_t13) goto L_0269BAA0; else goto L_0269BAA8;
|
|
L_0269BAA0: ; // 0x269baa0
|
|
/* 0269BAA0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0269BAA4 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_0269BAA8: ; // 0x269baa8
|
|
/* 0269BAA8 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 0269BAA8 */ cpu->r[7] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 0269BAAC */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 0269BAAC */ cpu->r[9] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 0269BAB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0269BAB4 */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 0269BAB4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0269BAB8 */ cpu->r[3] = cpu->r[8] + cpu->r[9];
|
|
/* 0269BABC */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269BABC */ _t18 = _t17 & 0x00000001u;
|
|
/* 0269BABC */ if (_t18) goto L_0269BAD4; else goto L_0269BAC0;
|
|
L_0269BAC0: ; // 0x269bac0
|
|
/* 0269BAC0 */ /* nop */
|
|
/* 0269BAC4 */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 0269BAC4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0269BAC8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[7], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0269BACC */ cpu->r[12] = cpu->r[11] + cpu->r[0];
|
|
/* 0269BAD0 */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 0269BAD0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_0269BAD4: ; // 0x269bad4
|
|
/* 0269BAD4 */ cpu->ctr = cpu->r[11];
|
|
/* 0269BAD8 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0269BADC @ 0x269badc
|
|
void Gambit_fn_0269BADC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0269BADC: ; // 0x269badc
|
|
/* 0269BADC */ cpu->r[0] = cpu->lr;
|
|
/* 0269BAE0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0269BAE0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269BAE0 */ cpu->r[1] = _t0;
|
|
/* 0269BAE4 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0269BAE4 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0269BAE8 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269BAE8 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0269BAEC */ cpu->r[30] = cpu->r[3];
|
|
/* 0269BAF0 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0269BAF0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269BAF4 */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0269BAF4 */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 0269BAF8 */ /* nop */
|
|
/* 0269BAFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 0269BB00 */ cpu->r[31] = cpu->r[4];
|
|
/* 0269BB04 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269BB04 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0269BB04 */ if (_t6) goto L_0269BB08; else goto L_0269BB1C;
|
|
L_0269BB08: ; // 0x269bb08
|
|
/* 0269BB08 */ _t7 = cpu->r[30] + 0x00000004u;
|
|
/* 0269BB08 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269BB0C */ _t8 = cpu->r[11] + 0x00000014u;
|
|
/* 0269BB0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0269BB10 */ cpu->ctr = cpu->r[0];
|
|
/* 0269BB14 */ cpu->r[3] = cpu->r[30];
|
|
/* 0269BB18 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0269BB1C: ; // 0x269bb1c
|
|
/* 0269BB1C */ cpu->r[3] = cpu->r[30];
|
|
/* 0269BB20 */ cpu->r[4] = cpu->r[31];
|
|
/* 0269BB24 */ Gambit_fn_0269BA54(cpu);
|
|
/* 0269BB28 */ cpu->r[3] = cpu->r[30];
|
|
/* 0269BB2C */ /* nop */
|
|
/* 0269BB30 */ Gambit_fn_027FC35C(cpu);
|
|
/* 0269BB34 */ cpu->r[3] = cpu->r[30];
|
|
/* 0269BB38 */ Gambit_fn_0269B8D4(cpu);
|
|
/* 0269BB3C */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0269BB3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269BB40 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 0269BB40 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269BB44 */ cpu->lr = cpu->r[0];
|
|
/* 0269BB48 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269BB48 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0269BB4C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0269BB50 */ return;
|
|
}
|
|
|
|
// fn_0269BAE0 @ 0x269bae0
|
|
void Gambit_fn_0269BAE0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0269BAE0: ; // 0x269bae0
|
|
/* 0269BAE0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0269BAE0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269BAE0 */ cpu->r[1] = _t0;
|
|
/* 0269BAE4 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0269BAE4 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0269BAE8 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269BAE8 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0269BAEC */ cpu->r[30] = cpu->r[3];
|
|
/* 0269BAF0 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0269BAF0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269BAF4 */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0269BAF4 */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 0269BAF8 */ /* nop */
|
|
/* 0269BAFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 0269BB00 */ cpu->r[31] = cpu->r[4];
|
|
/* 0269BB04 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269BB04 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0269BB04 */ if (_t6) goto L_0269BB08; else goto L_0269BB1C;
|
|
L_0269BB08: ; // 0x269bb08
|
|
/* 0269BB08 */ _t7 = cpu->r[30] + 0x00000004u;
|
|
/* 0269BB08 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269BB0C */ _t8 = cpu->r[11] + 0x00000014u;
|
|
/* 0269BB0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0269BB10 */ cpu->ctr = cpu->r[0];
|
|
/* 0269BB14 */ cpu->r[3] = cpu->r[30];
|
|
/* 0269BB18 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0269BB1C: ; // 0x269bb1c
|
|
/* 0269BB1C */ cpu->r[3] = cpu->r[30];
|
|
/* 0269BB20 */ cpu->r[4] = cpu->r[31];
|
|
/* 0269BB24 */ Gambit_fn_0269BA54(cpu);
|
|
/* 0269BB28 */ cpu->r[3] = cpu->r[30];
|
|
/* 0269BB2C */ /* nop */
|
|
/* 0269BB30 */ Gambit_fn_027FC35C(cpu);
|
|
/* 0269BB34 */ cpu->r[3] = cpu->r[30];
|
|
/* 0269BB38 */ Gambit_fn_0269B8D4(cpu);
|
|
/* 0269BB3C */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0269BB3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269BB40 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 0269BB40 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269BB44 */ cpu->lr = cpu->r[0];
|
|
/* 0269BB48 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269BB48 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0269BB4C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0269BB50 */ return;
|
|
}
|
|
|
|
// fn_0269BB54 @ 0x269bb54
|
|
void Gambit_fn_0269BB54(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0269BB54: ; // 0x269bb54
|
|
/* 0269BB54 */ cpu->r[0] = cpu->lr;
|
|
/* 0269BB58 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0269BB58 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269BB58 */ cpu->r[1] = _t0;
|
|
/* 0269BB5C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269BB5C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0269BB60 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0269BB60 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0269BB64 */ cpu->r[30] = cpu->r[3];
|
|
/* 0269BB64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0269BB68 */ cpu->r[31] = cpu->r[4];
|
|
/* 0269BB6C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0269BB6C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269BB70 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269BB70 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0269BB70 */ if (_t5) goto L_0269BBB0; else goto L_0269BB74;
|
|
L_0269BB74: ; // 0x269bb74
|
|
/* 0269BB74 */ cpu->r[0] = 0x100E0000u;
|
|
/* 0269BB78 */ cpu->r[11] = 0x100E0000u;
|
|
/* 0269BB7C */ cpu->r[0] = cpu->r[0] + 0x00004534u;
|
|
/* 0269BB80 */ cpu->r[11] = cpu->r[11] + 0x000046D4u;
|
|
/* 0269BB84 */ _t6 = cpu->r[30] + 0x00000004u;
|
|
/* 0269BB84 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0269BB88 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0269BB8C */ cpu->r[4] = 0x00000000u;
|
|
/* 0269BB90 */ _t7 = cpu->r[30] + 0x00000244u;
|
|
/* 0269BB90 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 0269BB94 */ cpu->r[3] = cpu->r[30];
|
|
/* 0269BB98 */ _t8 = cpu->r[12] + 0xFFFF806Cu;
|
|
/* 0269BB98 */ rbrew_write32(cpu->mem, _t8, cpu->r[4]);
|
|
/* 0269BB9C */ Gambit_fn_023AE47C(cpu);
|
|
/* 0269BBA0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0269BBA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0269BBA4 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269BBA4 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0269BBA4 */ if (_t10) goto L_0269BBB0; else goto L_0269BBA8;
|
|
L_0269BBA8: ; // 0x269bba8
|
|
/* 0269BBA8 */ cpu->r[3] = cpu->r[30];
|
|
/* 0269BBAC */ Gambit_fn_02801BB0(cpu);
|
|
L_0269BBB0: ; // 0x269bbb0
|
|
/* 0269BBB0 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 0269BBB0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0269BBB4 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 0269BBB4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0269BBB8 */ cpu->lr = cpu->r[0];
|
|
/* 0269BBBC */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269BBBC */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0269BBC0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0269BBC4 */ return;
|
|
}
|
|
|
|
// fn_0269BB58 @ 0x269bb58
|
|
void Gambit_fn_0269BB58(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0269BB58: ; // 0x269bb58
|
|
/* 0269BB58 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0269BB58 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269BB58 */ cpu->r[1] = _t0;
|
|
/* 0269BB5C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269BB5C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0269BB60 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0269BB60 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0269BB64 */ cpu->r[30] = cpu->r[3];
|
|
/* 0269BB64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0269BB68 */ cpu->r[31] = cpu->r[4];
|
|
/* 0269BB6C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0269BB6C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269BB70 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269BB70 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0269BB70 */ if (_t5) goto L_0269BBB0; else goto L_0269BB74;
|
|
L_0269BB74: ; // 0x269bb74
|
|
/* 0269BB74 */ cpu->r[0] = 0x100E0000u;
|
|
/* 0269BB78 */ cpu->r[11] = 0x100E0000u;
|
|
/* 0269BB7C */ cpu->r[0] = cpu->r[0] + 0x00004534u;
|
|
/* 0269BB80 */ cpu->r[11] = cpu->r[11] + 0x000046D4u;
|
|
/* 0269BB84 */ _t6 = cpu->r[30] + 0x00000004u;
|
|
/* 0269BB84 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0269BB88 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0269BB8C */ cpu->r[4] = 0x00000000u;
|
|
/* 0269BB90 */ _t7 = cpu->r[30] + 0x00000244u;
|
|
/* 0269BB90 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 0269BB94 */ cpu->r[3] = cpu->r[30];
|
|
/* 0269BB98 */ _t8 = cpu->r[12] + 0xFFFF806Cu;
|
|
/* 0269BB98 */ rbrew_write32(cpu->mem, _t8, cpu->r[4]);
|
|
/* 0269BB9C */ Gambit_fn_023AE47C(cpu);
|
|
/* 0269BBA0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0269BBA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0269BBA4 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269BBA4 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0269BBA4 */ if (_t10) goto L_0269BBB0; else goto L_0269BBA8;
|
|
L_0269BBA8: ; // 0x269bba8
|
|
/* 0269BBA8 */ cpu->r[3] = cpu->r[30];
|
|
/* 0269BBAC */ Gambit_fn_02801BB0(cpu);
|
|
L_0269BBB0: ; // 0x269bbb0
|
|
/* 0269BBB0 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 0269BBB0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0269BBB4 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 0269BBB4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0269BBB8 */ cpu->lr = cpu->r[0];
|
|
/* 0269BBBC */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269BBBC */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0269BBC0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0269BBC4 */ return;
|
|
}
|
|
|
|
// fn_0269BBC8 @ 0x269bbc8
|
|
void Gambit_fn_0269BBC8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0269BB54: ; // 0x269bb54
|
|
/* 0269BB54 */ cpu->r[0] = cpu->lr;
|
|
/* 0269BB58 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0269BB58 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269BB58 */ cpu->r[1] = _t0;
|
|
/* 0269BB5C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269BB5C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0269BB60 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0269BB60 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0269BB64 */ cpu->r[30] = cpu->r[3];
|
|
/* 0269BB64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0269BB68 */ cpu->r[31] = cpu->r[4];
|
|
/* 0269BB6C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0269BB6C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269BB70 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269BB70 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0269BB70 */ if (_t5) goto L_0269BBB0; else goto L_0269BB74;
|
|
L_0269BB74: ; // 0x269bb74
|
|
/* 0269BB74 */ cpu->r[0] = 0x100E0000u;
|
|
/* 0269BB78 */ cpu->r[11] = 0x100E0000u;
|
|
/* 0269BB7C */ cpu->r[0] = cpu->r[0] + 0x00004534u;
|
|
/* 0269BB80 */ cpu->r[11] = cpu->r[11] + 0x000046D4u;
|
|
/* 0269BB84 */ _t6 = cpu->r[30] + 0x00000004u;
|
|
/* 0269BB84 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0269BB88 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0269BB8C */ cpu->r[4] = 0x00000000u;
|
|
/* 0269BB90 */ _t7 = cpu->r[30] + 0x00000244u;
|
|
/* 0269BB90 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 0269BB94 */ cpu->r[3] = cpu->r[30];
|
|
/* 0269BB98 */ _t8 = cpu->r[12] + 0xFFFF806Cu;
|
|
/* 0269BB98 */ rbrew_write32(cpu->mem, _t8, cpu->r[4]);
|
|
/* 0269BB9C */ Gambit_fn_023AE47C(cpu);
|
|
/* 0269BBA0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0269BBA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0269BBA4 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269BBA4 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0269BBA4 */ if (_t10) goto L_0269BBB0; else goto L_0269BBA8;
|
|
L_0269BBA8: ; // 0x269bba8
|
|
/* 0269BBA8 */ cpu->r[3] = cpu->r[30];
|
|
/* 0269BBAC */ Gambit_fn_02801BB0(cpu);
|
|
L_0269BBB0: ; // 0x269bbb0
|
|
/* 0269BBB0 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 0269BBB0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0269BBB4 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 0269BBB4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0269BBB8 */ cpu->lr = cpu->r[0];
|
|
/* 0269BBBC */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269BBBC */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0269BBC0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0269BBC4 */ return;
|
|
L_0269BBC8: ; // 0x269bbc8
|
|
/* 0269BBC8 */ cpu->r[3] = cpu->r[3] + 0xFFFFFDC8u;
|
|
/* 0269BBCC */ goto L_0269BB54;
|
|
}
|
|
|
|
// fn_0269BBD0 @ 0x269bbd0
|
|
void Gambit_fn_0269BBD0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34;
|
|
|
|
L_0269BBD0: ; // 0x269bbd0
|
|
/* 0269BBD0 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 0269BBD0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269BBD0 */ cpu->r[1] = _t0;
|
|
/* 0269BBD4 */ cpu->r[0] = cpu->lr;
|
|
/* 0269BBD8 */ /* nop */
|
|
/* 0269BBDC */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 0269BBDC */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0269BBE0 */ cpu->r[29] = cpu->r[3];
|
|
/* 0269BBE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0269BBE4 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269BBE4 */ _t3 = _t2 & 0x00000001u;
|
|
/* 0269BBE4 */ if (_t3) goto L_0269BBE8; else goto L_0269BBF8;
|
|
L_0269BBE8: ; // 0x269bbe8
|
|
/* 0269BBE8 */ cpu->r[3] = 0x000002E0u;
|
|
/* 0269BBEC */ Gambit_fn_02801A78(cpu);
|
|
/* 0269BBF0 */ cpu->r[29] = cpu->r[3];
|
|
/* 0269BBF0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0269BBF4 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269BBF4 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0269BBF4 */ if (_t5) goto L_0269BCF0; else goto L_0269BBF8;
|
|
L_0269BBF8: ; // 0x269bbf8
|
|
/* 0269BBF8 */ cpu->r[4] = 0x00000001u;
|
|
/* 0269BBFC */ cpu->r[3] = cpu->r[29];
|
|
/* 0269BC00 */ cpu->r[6] = 0x0000000Fu;
|
|
/* 0269BC04 */ cpu->r[5] = cpu->r[4];
|
|
/* 0269BC08 */ Gambit_fn_023AE4E4(cpu);
|
|
/* 0269BC0C */ cpu->r[9] = 0x100E0000u;
|
|
/* 0269BC10 */ cpu->r[10] = 0x100E0000u;
|
|
/* 0269BC14 */ cpu->r[9] = cpu->r[9] + 0x00004534u;
|
|
/* 0269BC18 */ cpu->r[10] = cpu->r[10] + 0x000046D4u;
|
|
/* 0269BC1C */ _t6 = cpu->r[29] + 0x00000004u;
|
|
/* 0269BC1C */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 0269BC20 */ cpu->r[27] = 0x00000000u;
|
|
/* 0269BC24 */ _t7 = cpu->r[29] + 0x00000244u;
|
|
/* 0269BC24 */ rbrew_write32(cpu->mem, _t7, cpu->r[10]);
|
|
/* 0269BC28 */ cpu->r[26] = 0x101C0000u;
|
|
/* 0269BC2C */ _t8 = cpu->r[29] + 0x000002D8u;
|
|
/* 0269BC2C */ rbrew_write32(cpu->mem, _t8, cpu->r[27]);
|
|
/* 0269BC30 */ cpu->r[11] = 0x100E0000u;
|
|
/* 0269BC34 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0269BC38 */ _t9 = cpu->r[29] + 0x000002DCu;
|
|
/* 0269BC38 */ rbrew_write32(cpu->mem, _t9, cpu->r[27]);
|
|
/* 0269BC3C */ _t10 = cpu->r[26] + 0x00001358u;
|
|
/* 0269BC3C */ cpu->r[9] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269BC3C */ cpu->r[26] = _t10;
|
|
/* 0269BC40 */ cpu->r[0] = 0x100E0000u;
|
|
/* 0269BC44 */ cpu->r[11] = cpu->r[11] + 0x00004468u;
|
|
/* 0269BC48 */ _t11 = cpu->r[12] + 0xFFFF806Cu;
|
|
/* 0269BC48 */ rbrew_write32(cpu->mem, _t11, cpu->r[29]);
|
|
/* 0269BC4C */ cpu->r[0] = cpu->r[0] + 0x000044C4u;
|
|
/* 0269BC50 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269BC50 */ rbrew_write32(cpu->mem, _t12, cpu->r[11]);
|
|
/* 0269BC54 */ cpu->r[28] = cpu->r[9] + 0x0000001Cu;
|
|
/* 0269BC58 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0269BC5C */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 0269BC5C */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 0269BC60 */ _t14 = cpu->r[9] + 0x0000001Cu;
|
|
/* 0269BC60 */ cpu->r[25] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0269BC64 */ Gambit_fn_0269C198(cpu);
|
|
/* 0269BC68 */ cpu->r[30] = 0x10110000u;
|
|
/* 0269BC6C */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 0269BC6C */ cpu->r[10] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0269BC70 */ _t16 = cpu->r[30] + 0x00007399u;
|
|
/* 0269BC70 */ cpu->r[30] = rbrew_read8(cpu->mem, _t16);
|
|
/* 0269BC74 */ _t17 = cpu->r[10] + 0x00000000u;
|
|
/* 0269BC74 */ cpu->r[0] = rbrew_read8(cpu->mem, _t17);
|
|
/* 0269BC78 */ cpu->r[31] = cpu->r[27];
|
|
/* 0269BC7C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]);
|
|
/* 0269BC80 */ cpu->r[11] = 0x00080000u;
|
|
/* 0269BC84 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269BC84 */ _t19 = _t18 & 0x00000001u;
|
|
/* 0269BC84 */ if (_t19) goto L_0269BCAC; else goto L_0269BC88;
|
|
L_0269BC88: ; // 0x269bc88
|
|
/* 0269BC88 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 0269BC8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[11]);
|
|
/* 0269BC90 */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 0269BC94 */ _t20 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0269BC94 */ _t21 = _t20 & 0x00000001u;
|
|
/* 0269BC94 */ if (_t21) goto L_0269BCA8; else goto L_0269BC98;
|
|
L_0269BC98: ; // 0x269bc98
|
|
/* 0269BC98 */ _t22 = cpu->r[10] + 0x00000000u;
|
|
/* 0269BC98 */ cpu->r[0] = rbrew_read8(cpu->mem, _t22);
|
|
/* 0269BC9C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]);
|
|
/* 0269BCA0 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269BCA0 */ _t24 = _t23 & 0x00000001u;
|
|
/* 0269BCA0 */ if (_t24) goto L_0269BCA4; else goto L_0269BC88;
|
|
L_0269BCA4: ; // 0x269bca4
|
|
/* 0269BCA4 */ goto L_0269BCAC;
|
|
L_0269BCA8: ; // 0x269bca8
|
|
/* 0269BCA8 */ cpu->r[31] = 0x00000000u;
|
|
L_0269BCAC: ; // 0x269bcac
|
|
/* 0269BCAC */ _t25 = cpu->r[28] + 0x00000008u;
|
|
/* 0269BCAC */ cpu->r[5] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0269BCB0 */ _t26 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269BCB0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0269BCB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[5]);
|
|
/* 0269BCB8 */ _t27 = cpu->r[6] + 0x00000014u;
|
|
/* 0269BCB8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0269BCBC */ _t28 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269BCBC */ _t29 = _t28 & 0x00000001u;
|
|
/* 0269BCBC */ if (_t29) goto L_0269BCC4; else goto L_0269BCC0;
|
|
L_0269BCC0: ; // 0x269bcc0
|
|
/* 0269BCC0 */ cpu->r[31] = cpu->r[5] + 0xFFFFFFFFu;
|
|
L_0269BCC4: ; // 0x269bcc4
|
|
/* 0269BCC4 */ cpu->ctr = cpu->r[0];
|
|
/* 0269BCC8 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0269BCCC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0269BCD0 */ _t30 = cpu->r[1] + 0x00000008u;
|
|
/* 0269BCD0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0269BCD4 */ cpu->r[6] = 0x00000000u;
|
|
/* 0269BCD8 */ cpu->r[5] = cpu->r[31];
|
|
/* 0269BCDC */ cpu->r[3] = cpu->r[25];
|
|
/* 0269BCE0 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0269BCE4 */ _t31 = cpu->r[25] + cpu->r[31];
|
|
/* 0269BCE4 */ rbrew_write8(cpu->mem, _t31, (uint8_t)cpu->r[30]);
|
|
/* 0269BCE8 */ _t32 = cpu->r[26] + 0x00000000u;
|
|
/* 0269BCE8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0269BCEC */ _t33 = cpu->r[7] + 0x0000023Cu;
|
|
/* 0269BCEC */ rbrew_write32(cpu->mem, _t33, cpu->r[27]);
|
|
L_0269BCF0: ; // 0x269bcf0
|
|
/* 0269BCF0 */ cpu->r[3] = cpu->r[29];
|
|
/* 0269BCF4 */ /* nop */
|
|
/* 0269BCF8 */ _t34 = cpu->r[1] + 0x00000034u;
|
|
/* 0269BCF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t34);
|
|
/* 0269BCFC */ cpu->lr = cpu->r[0];
|
|
/* 0269BD00 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 0269BD04 */ return;
|
|
}
|
|
|
|
// fn_0269BD08 @ 0x269bd08
|
|
void Gambit_fn_0269BD08(CPUState* cpu) {
|
|
uint32_t _t0, _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;
|
|
|
|
L_0269BD08: ; // 0x269bd08
|
|
/* 0269BD08 */ cpu->r[0] = cpu->lr;
|
|
/* 0269BD0C */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 0269BD0C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269BD0C */ cpu->r[1] = _t0;
|
|
/* 0269BD10 */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 0269BD10 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0269BD14 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269BD18 */ _t2 = cpu->r[1] + 0x00000030u;
|
|
/* 0269BD18 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0269BD1C */ _t3 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0269BD1C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269BD20 */ Gambit_fn_023AE57C(cpu);
|
|
/* 0269BD24 */ cpu->r[30] = 0x100E0000u;
|
|
/* 0269BD28 */ cpu->r[0] = 0x100E0000u;
|
|
/* 0269BD2C */ _t4 = cpu->r[31] + 0x0000025Cu;
|
|
/* 0269BD2C */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269BD30 */ cpu->r[30] = cpu->r[30] + 0x00004468u;
|
|
/* 0269BD34 */ cpu->r[0] = cpu->r[0] + 0x000044D8u;
|
|
/* 0269BD38 */ _t5 = cpu->r[1] + 0x00000018u;
|
|
/* 0269BD38 */ rbrew_write32(cpu->mem, _t5, cpu->r[30]);
|
|
/* 0269BD3C */ cpu->r[5] = 0x00000001u;
|
|
/* 0269BD40 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 0269BD40 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0269BD44 */ _t7 = cpu->r[12] + 0x00000008u;
|
|
/* 0269BD44 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269BD48 */ cpu->r[6] = 0x00000000u;
|
|
/* 0269BD4C */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 0269BD50 */ Gambit_fn_027E8CA4(cpu);
|
|
/* 0269BD54 */ cpu->r[0] = 0x100E0000u;
|
|
/* 0269BD58 */ cpu->r[3] = 0x101D0000u;
|
|
/* 0269BD5C */ _t8 = cpu->r[1] + 0x00000020u;
|
|
/* 0269BD5C */ rbrew_write32(cpu->mem, _t8, cpu->r[30]);
|
|
/* 0269BD60 */ cpu->r[0] = cpu->r[0] + 0x000044E4u;
|
|
/* 0269BD64 */ _t9 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 0269BD64 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269BD68 */ _t10 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269BD68 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 0269BD6C */ Gambit_fn_02826F20(cpu);
|
|
/* 0269BD70 */ cpu->r[6] = cpu->r[3];
|
|
/* 0269BD74 */ cpu->r[5] = 0x00000000u;
|
|
/* 0269BD78 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269BD7C */ cpu->r[3] = cpu->r[1] + 0x00000024u;
|
|
/* 0269BD80 */ Gambit_fn_027C6980(cpu);
|
|
/* 0269BD84 */ _t11 = cpu->r[1] + 0x00000028u;
|
|
/* 0269BD84 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0269BD88 */ _t12 = cpu->r[12] + 0x0000001Cu;
|
|
/* 0269BD88 */ cpu->r[10] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0269BD8C */ _t13 = cpu->r[10] + 0x00000024u;
|
|
/* 0269BD8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0269BD90 */ cpu->r[3] = 0x00000000u;
|
|
/* 0269BD94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0269BD98 */ cpu->r[11] = cpu->r[10] + 0x00000024u;
|
|
/* 0269BD9C */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269BD9C */ _t15 = _t14 & 0x00000001u;
|
|
/* 0269BD9C */ if (_t15) goto L_0269BDA4; else goto L_0269BDA0;
|
|
L_0269BDA0: ; // 0x269bda0
|
|
/* 0269BDA0 */ cpu->r[3] = cpu->r[11] + cpu->r[0];
|
|
L_0269BDA4: ; // 0x269bda4
|
|
/* 0269BDA4 */ cpu->r[4] = 0x100E0000u;
|
|
/* 0269BDA8 */ cpu->r[4] = cpu->r[4] + 0x000044F4u;
|
|
/* 0269BDAC */ Gambit_fn_02C60464(cpu);
|
|
/* 0269BDB0 */ _t16 = cpu->r[31] + 0x000002DCu;
|
|
/* 0269BDB0 */ rbrew_write32(cpu->mem, _t16, cpu->r[3]);
|
|
/* 0269BDB4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0269BDB8 */ Gambit_fn_024597DC(cpu);
|
|
/* 0269BDBC */ cpu->r[3] = 0x00000000u;
|
|
/* 0269BDC0 */ cpu->r[10] = 0x00000006u;
|
|
/* 0269BDC4 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 0269BDC4 */ rbrew_write32(cpu->mem, _t17, cpu->r[3]);
|
|
/* 0269BDC8 */ cpu->r[11] = 0x00000008u;
|
|
/* 0269BDCC */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269BDCC */ rbrew_write32(cpu->mem, _t18, cpu->r[10]);
|
|
/* 0269BDD0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269BDD4 */ _t19 = cpu->r[1] + 0x00000010u;
|
|
/* 0269BDD4 */ rbrew_write32(cpu->mem, _t19, cpu->r[11]);
|
|
/* 0269BDD8 */ Gambit_fn_024595D4(cpu);
|
|
/* 0269BDDC */ cpu->r[4] = cpu->r[3];
|
|
/* 0269BDDC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 0269BDE0 */ _t20 = cpu->r[31] + 0x00000250u;
|
|
/* 0269BDE0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0269BDE4 */ _t21 = cpu->r[31] + 0x000002D8u;
|
|
/* 0269BDE4 */ rbrew_write32(cpu->mem, _t21, cpu->r[4]);
|
|
/* 0269BDE8 */ _t22 = cpu->r[12] + 0x00000250u;
|
|
/* 0269BDE8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0269BDEC */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269BDEC */ _t24 = _t23 & 0x00000001u;
|
|
/* 0269BDEC */ if (_t24) goto L_0269BDF4; else goto L_0269BDF0;
|
|
L_0269BDF0: ; // 0x269bdf0
|
|
/* 0269BDF0 */ cpu->r[4] = cpu->r[4] + 0x00000010u;
|
|
L_0269BDF4: ; // 0x269bdf4
|
|
/* 0269BDF4 */ cpu->r[5] = 0x00000000u;
|
|
/* 0269BDF8 */ Gambit_fn_027EFC10(cpu);
|
|
/* 0269BDFC */ cpu->r[12] = 0x101C0000u;
|
|
/* 0269BE00 */ _t25 = cpu->r[12] + 0x00001358u;
|
|
/* 0269BE00 */ cpu->r[12] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0269BE04 */ cpu->r[10] = 0x0000000Au;
|
|
/* 0269BE08 */ _t26 = cpu->r[12] + 0x000002E8u;
|
|
/* 0269BE08 */ rbrew_write32(cpu->mem, _t26, cpu->r[10]);
|
|
/* 0269BE0C */ _t27 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0269BE0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0269BE10 */ _t28 = cpu->r[1] + 0x00000030u;
|
|
/* 0269BE10 */ cpu->r[30] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0269BE14 */ cpu->lr = cpu->r[0];
|
|
/* 0269BE18 */ _t29 = cpu->r[1] + 0x00000034u;
|
|
/* 0269BE18 */ cpu->r[31] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0269BE1C */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 0269BE20 */ return;
|
|
}
|
|
|
|
// fn_0269BD0C @ 0x269bd0c
|
|
void Gambit_fn_0269BD0C(CPUState* cpu) {
|
|
uint32_t _t0, _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;
|
|
|
|
L_0269BD0C: ; // 0x269bd0c
|
|
/* 0269BD0C */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 0269BD0C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269BD0C */ cpu->r[1] = _t0;
|
|
/* 0269BD10 */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 0269BD10 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0269BD14 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269BD18 */ _t2 = cpu->r[1] + 0x00000030u;
|
|
/* 0269BD18 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0269BD1C */ _t3 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0269BD1C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269BD20 */ Gambit_fn_023AE57C(cpu);
|
|
/* 0269BD24 */ cpu->r[30] = 0x100E0000u;
|
|
/* 0269BD28 */ cpu->r[0] = 0x100E0000u;
|
|
/* 0269BD2C */ _t4 = cpu->r[31] + 0x0000025Cu;
|
|
/* 0269BD2C */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269BD30 */ cpu->r[30] = cpu->r[30] + 0x00004468u;
|
|
/* 0269BD34 */ cpu->r[0] = cpu->r[0] + 0x000044D8u;
|
|
/* 0269BD38 */ _t5 = cpu->r[1] + 0x00000018u;
|
|
/* 0269BD38 */ rbrew_write32(cpu->mem, _t5, cpu->r[30]);
|
|
/* 0269BD3C */ cpu->r[5] = 0x00000001u;
|
|
/* 0269BD40 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 0269BD40 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0269BD44 */ _t7 = cpu->r[12] + 0x00000008u;
|
|
/* 0269BD44 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269BD48 */ cpu->r[6] = 0x00000000u;
|
|
/* 0269BD4C */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 0269BD50 */ Gambit_fn_027E8CA4(cpu);
|
|
/* 0269BD54 */ cpu->r[0] = 0x100E0000u;
|
|
/* 0269BD58 */ cpu->r[3] = 0x101D0000u;
|
|
/* 0269BD5C */ _t8 = cpu->r[1] + 0x00000020u;
|
|
/* 0269BD5C */ rbrew_write32(cpu->mem, _t8, cpu->r[30]);
|
|
/* 0269BD60 */ cpu->r[0] = cpu->r[0] + 0x000044E4u;
|
|
/* 0269BD64 */ _t9 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 0269BD64 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269BD68 */ _t10 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269BD68 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 0269BD6C */ Gambit_fn_02826F20(cpu);
|
|
/* 0269BD70 */ cpu->r[6] = cpu->r[3];
|
|
/* 0269BD74 */ cpu->r[5] = 0x00000000u;
|
|
/* 0269BD78 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269BD7C */ cpu->r[3] = cpu->r[1] + 0x00000024u;
|
|
/* 0269BD80 */ Gambit_fn_027C6980(cpu);
|
|
/* 0269BD84 */ _t11 = cpu->r[1] + 0x00000028u;
|
|
/* 0269BD84 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0269BD88 */ _t12 = cpu->r[12] + 0x0000001Cu;
|
|
/* 0269BD88 */ cpu->r[10] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0269BD8C */ _t13 = cpu->r[10] + 0x00000024u;
|
|
/* 0269BD8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0269BD90 */ cpu->r[3] = 0x00000000u;
|
|
/* 0269BD94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0269BD98 */ cpu->r[11] = cpu->r[10] + 0x00000024u;
|
|
/* 0269BD9C */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269BD9C */ _t15 = _t14 & 0x00000001u;
|
|
/* 0269BD9C */ if (_t15) goto L_0269BDA4; else goto L_0269BDA0;
|
|
L_0269BDA0: ; // 0x269bda0
|
|
/* 0269BDA0 */ cpu->r[3] = cpu->r[11] + cpu->r[0];
|
|
L_0269BDA4: ; // 0x269bda4
|
|
/* 0269BDA4 */ cpu->r[4] = 0x100E0000u;
|
|
/* 0269BDA8 */ cpu->r[4] = cpu->r[4] + 0x000044F4u;
|
|
/* 0269BDAC */ Gambit_fn_02C60464(cpu);
|
|
/* 0269BDB0 */ _t16 = cpu->r[31] + 0x000002DCu;
|
|
/* 0269BDB0 */ rbrew_write32(cpu->mem, _t16, cpu->r[3]);
|
|
/* 0269BDB4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0269BDB8 */ Gambit_fn_024597DC(cpu);
|
|
/* 0269BDBC */ cpu->r[3] = 0x00000000u;
|
|
/* 0269BDC0 */ cpu->r[10] = 0x00000006u;
|
|
/* 0269BDC4 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 0269BDC4 */ rbrew_write32(cpu->mem, _t17, cpu->r[3]);
|
|
/* 0269BDC8 */ cpu->r[11] = 0x00000008u;
|
|
/* 0269BDCC */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269BDCC */ rbrew_write32(cpu->mem, _t18, cpu->r[10]);
|
|
/* 0269BDD0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269BDD4 */ _t19 = cpu->r[1] + 0x00000010u;
|
|
/* 0269BDD4 */ rbrew_write32(cpu->mem, _t19, cpu->r[11]);
|
|
/* 0269BDD8 */ Gambit_fn_024595D4(cpu);
|
|
/* 0269BDDC */ cpu->r[4] = cpu->r[3];
|
|
/* 0269BDDC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 0269BDE0 */ _t20 = cpu->r[31] + 0x00000250u;
|
|
/* 0269BDE0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0269BDE4 */ _t21 = cpu->r[31] + 0x000002D8u;
|
|
/* 0269BDE4 */ rbrew_write32(cpu->mem, _t21, cpu->r[4]);
|
|
/* 0269BDE8 */ _t22 = cpu->r[12] + 0x00000250u;
|
|
/* 0269BDE8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0269BDEC */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269BDEC */ _t24 = _t23 & 0x00000001u;
|
|
/* 0269BDEC */ if (_t24) goto L_0269BDF4; else goto L_0269BDF0;
|
|
L_0269BDF0: ; // 0x269bdf0
|
|
/* 0269BDF0 */ cpu->r[4] = cpu->r[4] + 0x00000010u;
|
|
L_0269BDF4: ; // 0x269bdf4
|
|
/* 0269BDF4 */ cpu->r[5] = 0x00000000u;
|
|
/* 0269BDF8 */ Gambit_fn_027EFC10(cpu);
|
|
/* 0269BDFC */ cpu->r[12] = 0x101C0000u;
|
|
/* 0269BE00 */ _t25 = cpu->r[12] + 0x00001358u;
|
|
/* 0269BE00 */ cpu->r[12] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0269BE04 */ cpu->r[10] = 0x0000000Au;
|
|
/* 0269BE08 */ _t26 = cpu->r[12] + 0x000002E8u;
|
|
/* 0269BE08 */ rbrew_write32(cpu->mem, _t26, cpu->r[10]);
|
|
/* 0269BE0C */ _t27 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0269BE0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0269BE10 */ _t28 = cpu->r[1] + 0x00000030u;
|
|
/* 0269BE10 */ cpu->r[30] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0269BE14 */ cpu->lr = cpu->r[0];
|
|
/* 0269BE18 */ _t29 = cpu->r[1] + 0x00000034u;
|
|
/* 0269BE18 */ cpu->r[31] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0269BE1C */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 0269BE20 */ return;
|
|
}
|
|
|
|
// fn_0269BE24 @ 0x269be24
|
|
void Gambit_fn_0269BE24(CPUState* cpu) {
|
|
uint32_t _t0, _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;
|
|
|
|
L_0269BE24: ; // 0x269be24
|
|
/* 0269BE24 */ cpu->r[0] = cpu->lr;
|
|
/* 0269BE28 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 0269BE28 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269BE28 */ cpu->r[1] = _t0;
|
|
/* 0269BE2C */ _t1 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269BE2C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0269BE30 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269BE34 */ _t2 = cpu->r[1] + 0x00000018u;
|
|
/* 0269BE34 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0269BE38 */ _t3 = cpu->r[1] + 0x00000024u;
|
|
/* 0269BE38 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269BE3C */ Gambit_fn_023ACDB4(cpu);
|
|
/* 0269BE40 */ cpu->r[30] = 0x100E0000u;
|
|
/* 0269BE44 */ _t4 = cpu->r[31] + 0x0000025Cu;
|
|
/* 0269BE44 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269BE48 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269BE4C */ cpu->r[30] = cpu->r[30] + 0x00004468u;
|
|
/* 0269BE50 */ cpu->r[5] = 0x00000001u;
|
|
/* 0269BE54 */ _t5 = cpu->r[12] + 0x00000008u;
|
|
/* 0269BE54 */ cpu->r[8] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0269BE58 */ cpu->r[9] = 0x100E0000u;
|
|
/* 0269BE5C */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269BE5C */ rbrew_write32(cpu->mem, _t6, cpu->r[30]);
|
|
/* 0269BE60 */ cpu->r[9] = cpu->r[9] + 0x00004514u;
|
|
/* 0269BE64 */ cpu->r[3] = cpu->r[8] + 0x000000C8u;
|
|
/* 0269BE68 */ cpu->r[6] = 0x00000000u;
|
|
/* 0269BE6C */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 0269BE6C */ rbrew_write32(cpu->mem, _t7, cpu->r[9]);
|
|
/* 0269BE70 */ Gambit_fn_029BA484(cpu);
|
|
/* 0269BE74 */ cpu->r[5] = 0x00000000u;
|
|
/* 0269BE78 */ _t8 = cpu->r[31] + 0x0000025Cu;
|
|
/* 0269BE78 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0269BE7C */ cpu->r[6] = 0x00000001u;
|
|
/* 0269BE80 */ cpu->r[10] = 0x100E0000u;
|
|
/* 0269BE84 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269BE88 */ _t9 = cpu->r[12] + 0x00000008u;
|
|
/* 0269BE88 */ cpu->r[8] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269BE8C */ cpu->r[10] = cpu->r[10] + 0x0000450Cu;
|
|
/* 0269BE90 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269BE90 */ rbrew_write32(cpu->mem, _t10, cpu->r[30]);
|
|
/* 0269BE94 */ cpu->r[3] = cpu->r[8] + 0x000000C8u;
|
|
/* 0269BE98 */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 0269BE98 */ rbrew_write32(cpu->mem, _t11, cpu->r[10]);
|
|
/* 0269BE9C */ Gambit_fn_029BA484(cpu);
|
|
/* 0269BEA0 */ _t12 = cpu->r[31] + 0x000002DCu;
|
|
/* 0269BEA0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0269BEA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 0269BEA8 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269BEA8 */ _t14 = _t13 & 0x00000001u;
|
|
/* 0269BEA8 */ if (_t14) goto L_0269BEC0; else goto L_0269BEAC;
|
|
L_0269BEAC: ; // 0x269beac
|
|
/* 0269BEAC */ _t15 = cpu->r[31] + 0x0000025Cu;
|
|
/* 0269BEAC */ cpu->r[9] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0269BEB0 */ _t16 = cpu->r[9] + 0x00000008u;
|
|
/* 0269BEB0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0269BEB4 */ cpu->r[5] = 0x00000000u;
|
|
/* 0269BEB8 */ cpu->r[3] = cpu->r[12] + 0x000000C8u;
|
|
/* 0269BEBC */ Gambit_fn_029BA518(cpu);
|
|
L_0269BEC0: ; // 0x269bec0
|
|
/* 0269BEC0 */ _t17 = cpu->r[31] + 0x0000025Cu;
|
|
/* 0269BEC0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0269BEC4 */ _t18 = cpu->r[11] + 0x00000008u;
|
|
/* 0269BEC4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0269BEC8 */ _t19 = cpu->r[12] + 0x000015D0u;
|
|
/* 0269BEC8 */ cpu->r[0] = rbrew_read16(cpu->mem, _t19);
|
|
/* 0269BECC */ cpu->r[0] = cpu->r[0] | 0x00002000u;
|
|
/* 0269BED0 */ _t20 = cpu->r[12] + 0x000015D0u;
|
|
/* 0269BED0 */ rbrew_write16(cpu->mem, _t20, (uint16_t)cpu->r[0]);
|
|
/* 0269BED4 */ _t21 = cpu->r[31] + 0x0000025Cu;
|
|
/* 0269BED4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0269BED8 */ _t22 = cpu->r[11] + 0x00000008u;
|
|
/* 0269BED8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0269BEDC */ cpu->r[8] = 0x00000800u;
|
|
/* 0269BEE0 */ _t23 = cpu->r[12] + 0x000015F8u;
|
|
/* 0269BEE0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0269BEE4 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 0269BEE8 */ _t24 = cpu->r[1] + 0x00000010u;
|
|
/* 0269BEE8 */ rbrew_write32(cpu->mem, _t24, cpu->r[8]);
|
|
/* 0269BEEC */ cpu->r[3] = cpu->r[9] + 0x0000026Cu;
|
|
/* 0269BEF0 */ _t25 = cpu->r[1] + 0x00000014u;
|
|
/* 0269BEF0 */ rbrew_write32(cpu->mem, _t25, cpu->r[8]);
|
|
/* 0269BEF4 */ Gambit_fn_0293EC20(cpu);
|
|
/* 0269BEF8 */ _t26 = cpu->r[31] + 0x0000025Cu;
|
|
/* 0269BEF8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0269BEFC */ _t27 = cpu->r[11] + 0x00000008u;
|
|
/* 0269BEFC */ cpu->r[12] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0269BF00 */ _t28 = cpu->r[12] + 0x000015F8u;
|
|
/* 0269BF00 */ cpu->r[10] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0269BF04 */ _t29 = cpu->r[10] + 0x00000264u;
|
|
/* 0269BF04 */ cpu->r[0] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0269BF08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 0269BF0C */ _t30 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0269BF0C */ _t31 = _t30 & 0x00000001u;
|
|
/* 0269BF0C */ if (_t31) goto L_0269BF10; else goto L_0269BF14;
|
|
L_0269BF10: ; // 0x269bf10
|
|
/* 0269BF10 */ cpu->r[0] = 0x00000001u;
|
|
L_0269BF14: ; // 0x269bf14
|
|
/* 0269BF14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 0269BF18 */ _t32 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269BF18 */ _t33 = _t32 & 0x00000001u;
|
|
/* 0269BF18 */ if (_t33) goto L_0269BF1C; else goto L_0269BF20;
|
|
L_0269BF1C: ; // 0x269bf1c
|
|
/* 0269BF1C */ cpu->r[0] = 0x00000001u;
|
|
L_0269BF20: ; // 0x269bf20
|
|
/* 0269BF20 */ _t34 = cpu->r[10] + 0x000001D8u;
|
|
/* 0269BF20 */ rbrew_write32(cpu->mem, _t34, cpu->r[0]);
|
|
/* 0269BF24 */ _t35 = cpu->r[31] + 0x0000025Cu;
|
|
/* 0269BF24 */ cpu->r[11] = rbrew_read32(cpu->mem, _t35);
|
|
/* 0269BF28 */ _t36 = cpu->r[11] + 0x00000008u;
|
|
/* 0269BF28 */ cpu->r[12] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0269BF2C */ _t37 = cpu->r[12] + 0x000015F8u;
|
|
/* 0269BF2C */ cpu->r[11] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0269BF30 */ cpu->r[30] = 0x00000001u;
|
|
/* 0269BF34 */ _t38 = cpu->r[11] + 0x000002D8u;
|
|
/* 0269BF34 */ rbrew_write8(cpu->mem, _t38, (uint8_t)cpu->r[30]);
|
|
/* 0269BF38 */ _t39 = cpu->r[31] + 0x0000025Cu;
|
|
/* 0269BF38 */ cpu->r[3] = rbrew_read32(cpu->mem, _t39);
|
|
/* 0269BF3C */ Gambit_fn_023D4A2C(cpu);
|
|
/* 0269BF40 */ _t40 = cpu->r[3] + 0x00000008u;
|
|
/* 0269BF40 */ cpu->r[3] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0269BF44 */ cpu->r[4] = 0x00000000u;
|
|
/* 0269BF48 */ cpu->r[5] = cpu->r[30];
|
|
/* 0269BF4C */ Gambit_fn_020383D4(cpu);
|
|
/* 0269BF50 */ _t41 = cpu->r[31] + 0x0000025Cu;
|
|
/* 0269BF50 */ cpu->r[3] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0269BF54 */ Gambit_fn_023D4A2C(cpu);
|
|
/* 0269BF58 */ cpu->r[10] = 0x100E0000u;
|
|
/* 0269BF5C */ _t42 = cpu->r[3] + 0x00000008u;
|
|
/* 0269BF5C */ cpu->r[3] = rbrew_read32(cpu->mem, _t42);
|
|
/* 0269BF60 */ cpu->r[4] = 0x00000000u;
|
|
/* 0269BF64 */ _t43 = cpu->r[10] + 0x00004504u;
|
|
/* 0269BF64 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 0269BF68 */ cpu->r[5] = cpu->r[4];
|
|
/* 0269BF6C */ Gambit_fn_0203843C(cpu);
|
|
/* 0269BF70 */ _t44 = cpu->r[31] + 0x0000025Cu;
|
|
/* 0269BF70 */ cpu->r[3] = rbrew_read32(cpu->mem, _t44);
|
|
/* 0269BF74 */ Gambit_fn_023D4A2C(cpu);
|
|
/* 0269BF78 */ cpu->r[12] = 0x100E0000u;
|
|
/* 0269BF7C */ _t45 = cpu->r[3] + 0x00000008u;
|
|
/* 0269BF7C */ cpu->r[3] = rbrew_read32(cpu->mem, _t45);
|
|
/* 0269BF80 */ cpu->r[5] = cpu->r[30];
|
|
/* 0269BF84 */ _t46 = cpu->r[12] + 0x00004508u;
|
|
/* 0269BF84 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 0269BF88 */ cpu->r[4] = 0x00000000u;
|
|
/* 0269BF8C */ Gambit_fn_0203843C(cpu);
|
|
/* 0269BF90 */ _t47 = cpu->r[1] + 0x00000024u;
|
|
/* 0269BF90 */ cpu->r[0] = rbrew_read32(cpu->mem, _t47);
|
|
/* 0269BF94 */ _t48 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269BF94 */ cpu->r[31] = rbrew_read32(cpu->mem, _t48);
|
|
/* 0269BF98 */ cpu->lr = cpu->r[0];
|
|
/* 0269BF9C */ _t49 = cpu->r[1] + 0x00000018u;
|
|
/* 0269BF9C */ cpu->r[30] = rbrew_read32(cpu->mem, _t49);
|
|
/* 0269BFA0 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 0269BFA4 */ return;
|
|
}
|
|
|
|
// fn_0269BE28 @ 0x269be28
|
|
void Gambit_fn_0269BE28(CPUState* cpu) {
|
|
uint32_t _t0, _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;
|
|
|
|
L_0269BE28: ; // 0x269be28
|
|
/* 0269BE28 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 0269BE28 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269BE28 */ cpu->r[1] = _t0;
|
|
/* 0269BE2C */ _t1 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269BE2C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0269BE30 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269BE34 */ _t2 = cpu->r[1] + 0x00000018u;
|
|
/* 0269BE34 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0269BE38 */ _t3 = cpu->r[1] + 0x00000024u;
|
|
/* 0269BE38 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269BE3C */ Gambit_fn_023ACDB4(cpu);
|
|
/* 0269BE40 */ cpu->r[30] = 0x100E0000u;
|
|
/* 0269BE44 */ _t4 = cpu->r[31] + 0x0000025Cu;
|
|
/* 0269BE44 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269BE48 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269BE4C */ cpu->r[30] = cpu->r[30] + 0x00004468u;
|
|
/* 0269BE50 */ cpu->r[5] = 0x00000001u;
|
|
/* 0269BE54 */ _t5 = cpu->r[12] + 0x00000008u;
|
|
/* 0269BE54 */ cpu->r[8] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0269BE58 */ cpu->r[9] = 0x100E0000u;
|
|
/* 0269BE5C */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269BE5C */ rbrew_write32(cpu->mem, _t6, cpu->r[30]);
|
|
/* 0269BE60 */ cpu->r[9] = cpu->r[9] + 0x00004514u;
|
|
/* 0269BE64 */ cpu->r[3] = cpu->r[8] + 0x000000C8u;
|
|
/* 0269BE68 */ cpu->r[6] = 0x00000000u;
|
|
/* 0269BE6C */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 0269BE6C */ rbrew_write32(cpu->mem, _t7, cpu->r[9]);
|
|
/* 0269BE70 */ Gambit_fn_029BA484(cpu);
|
|
/* 0269BE74 */ cpu->r[5] = 0x00000000u;
|
|
/* 0269BE78 */ _t8 = cpu->r[31] + 0x0000025Cu;
|
|
/* 0269BE78 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0269BE7C */ cpu->r[6] = 0x00000001u;
|
|
/* 0269BE80 */ cpu->r[10] = 0x100E0000u;
|
|
/* 0269BE84 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269BE88 */ _t9 = cpu->r[12] + 0x00000008u;
|
|
/* 0269BE88 */ cpu->r[8] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269BE8C */ cpu->r[10] = cpu->r[10] + 0x0000450Cu;
|
|
/* 0269BE90 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269BE90 */ rbrew_write32(cpu->mem, _t10, cpu->r[30]);
|
|
/* 0269BE94 */ cpu->r[3] = cpu->r[8] + 0x000000C8u;
|
|
/* 0269BE98 */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 0269BE98 */ rbrew_write32(cpu->mem, _t11, cpu->r[10]);
|
|
/* 0269BE9C */ Gambit_fn_029BA484(cpu);
|
|
/* 0269BEA0 */ _t12 = cpu->r[31] + 0x000002DCu;
|
|
/* 0269BEA0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0269BEA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 0269BEA8 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269BEA8 */ _t14 = _t13 & 0x00000001u;
|
|
/* 0269BEA8 */ if (_t14) goto L_0269BEC0; else goto L_0269BEAC;
|
|
L_0269BEAC: ; // 0x269beac
|
|
/* 0269BEAC */ _t15 = cpu->r[31] + 0x0000025Cu;
|
|
/* 0269BEAC */ cpu->r[9] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0269BEB0 */ _t16 = cpu->r[9] + 0x00000008u;
|
|
/* 0269BEB0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0269BEB4 */ cpu->r[5] = 0x00000000u;
|
|
/* 0269BEB8 */ cpu->r[3] = cpu->r[12] + 0x000000C8u;
|
|
/* 0269BEBC */ Gambit_fn_029BA518(cpu);
|
|
L_0269BEC0: ; // 0x269bec0
|
|
/* 0269BEC0 */ _t17 = cpu->r[31] + 0x0000025Cu;
|
|
/* 0269BEC0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0269BEC4 */ _t18 = cpu->r[11] + 0x00000008u;
|
|
/* 0269BEC4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0269BEC8 */ _t19 = cpu->r[12] + 0x000015D0u;
|
|
/* 0269BEC8 */ cpu->r[0] = rbrew_read16(cpu->mem, _t19);
|
|
/* 0269BECC */ cpu->r[0] = cpu->r[0] | 0x00002000u;
|
|
/* 0269BED0 */ _t20 = cpu->r[12] + 0x000015D0u;
|
|
/* 0269BED0 */ rbrew_write16(cpu->mem, _t20, (uint16_t)cpu->r[0]);
|
|
/* 0269BED4 */ _t21 = cpu->r[31] + 0x0000025Cu;
|
|
/* 0269BED4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0269BED8 */ _t22 = cpu->r[11] + 0x00000008u;
|
|
/* 0269BED8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0269BEDC */ cpu->r[8] = 0x00000800u;
|
|
/* 0269BEE0 */ _t23 = cpu->r[12] + 0x000015F8u;
|
|
/* 0269BEE0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0269BEE4 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 0269BEE8 */ _t24 = cpu->r[1] + 0x00000010u;
|
|
/* 0269BEE8 */ rbrew_write32(cpu->mem, _t24, cpu->r[8]);
|
|
/* 0269BEEC */ cpu->r[3] = cpu->r[9] + 0x0000026Cu;
|
|
/* 0269BEF0 */ _t25 = cpu->r[1] + 0x00000014u;
|
|
/* 0269BEF0 */ rbrew_write32(cpu->mem, _t25, cpu->r[8]);
|
|
/* 0269BEF4 */ Gambit_fn_0293EC20(cpu);
|
|
/* 0269BEF8 */ _t26 = cpu->r[31] + 0x0000025Cu;
|
|
/* 0269BEF8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0269BEFC */ _t27 = cpu->r[11] + 0x00000008u;
|
|
/* 0269BEFC */ cpu->r[12] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0269BF00 */ _t28 = cpu->r[12] + 0x000015F8u;
|
|
/* 0269BF00 */ cpu->r[10] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0269BF04 */ _t29 = cpu->r[10] + 0x00000264u;
|
|
/* 0269BF04 */ cpu->r[0] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0269BF08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 0269BF0C */ _t30 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0269BF0C */ _t31 = _t30 & 0x00000001u;
|
|
/* 0269BF0C */ if (_t31) goto L_0269BF10; else goto L_0269BF14;
|
|
L_0269BF10: ; // 0x269bf10
|
|
/* 0269BF10 */ cpu->r[0] = 0x00000001u;
|
|
L_0269BF14: ; // 0x269bf14
|
|
/* 0269BF14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 0269BF18 */ _t32 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269BF18 */ _t33 = _t32 & 0x00000001u;
|
|
/* 0269BF18 */ if (_t33) goto L_0269BF1C; else goto L_0269BF20;
|
|
L_0269BF1C: ; // 0x269bf1c
|
|
/* 0269BF1C */ cpu->r[0] = 0x00000001u;
|
|
L_0269BF20: ; // 0x269bf20
|
|
/* 0269BF20 */ _t34 = cpu->r[10] + 0x000001D8u;
|
|
/* 0269BF20 */ rbrew_write32(cpu->mem, _t34, cpu->r[0]);
|
|
/* 0269BF24 */ _t35 = cpu->r[31] + 0x0000025Cu;
|
|
/* 0269BF24 */ cpu->r[11] = rbrew_read32(cpu->mem, _t35);
|
|
/* 0269BF28 */ _t36 = cpu->r[11] + 0x00000008u;
|
|
/* 0269BF28 */ cpu->r[12] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0269BF2C */ _t37 = cpu->r[12] + 0x000015F8u;
|
|
/* 0269BF2C */ cpu->r[11] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0269BF30 */ cpu->r[30] = 0x00000001u;
|
|
/* 0269BF34 */ _t38 = cpu->r[11] + 0x000002D8u;
|
|
/* 0269BF34 */ rbrew_write8(cpu->mem, _t38, (uint8_t)cpu->r[30]);
|
|
/* 0269BF38 */ _t39 = cpu->r[31] + 0x0000025Cu;
|
|
/* 0269BF38 */ cpu->r[3] = rbrew_read32(cpu->mem, _t39);
|
|
/* 0269BF3C */ Gambit_fn_023D4A2C(cpu);
|
|
/* 0269BF40 */ _t40 = cpu->r[3] + 0x00000008u;
|
|
/* 0269BF40 */ cpu->r[3] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0269BF44 */ cpu->r[4] = 0x00000000u;
|
|
/* 0269BF48 */ cpu->r[5] = cpu->r[30];
|
|
/* 0269BF4C */ Gambit_fn_020383D4(cpu);
|
|
/* 0269BF50 */ _t41 = cpu->r[31] + 0x0000025Cu;
|
|
/* 0269BF50 */ cpu->r[3] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0269BF54 */ Gambit_fn_023D4A2C(cpu);
|
|
/* 0269BF58 */ cpu->r[10] = 0x100E0000u;
|
|
/* 0269BF5C */ _t42 = cpu->r[3] + 0x00000008u;
|
|
/* 0269BF5C */ cpu->r[3] = rbrew_read32(cpu->mem, _t42);
|
|
/* 0269BF60 */ cpu->r[4] = 0x00000000u;
|
|
/* 0269BF64 */ _t43 = cpu->r[10] + 0x00004504u;
|
|
/* 0269BF64 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 0269BF68 */ cpu->r[5] = cpu->r[4];
|
|
/* 0269BF6C */ Gambit_fn_0203843C(cpu);
|
|
/* 0269BF70 */ _t44 = cpu->r[31] + 0x0000025Cu;
|
|
/* 0269BF70 */ cpu->r[3] = rbrew_read32(cpu->mem, _t44);
|
|
/* 0269BF74 */ Gambit_fn_023D4A2C(cpu);
|
|
/* 0269BF78 */ cpu->r[12] = 0x100E0000u;
|
|
/* 0269BF7C */ _t45 = cpu->r[3] + 0x00000008u;
|
|
/* 0269BF7C */ cpu->r[3] = rbrew_read32(cpu->mem, _t45);
|
|
/* 0269BF80 */ cpu->r[5] = cpu->r[30];
|
|
/* 0269BF84 */ _t46 = cpu->r[12] + 0x00004508u;
|
|
/* 0269BF84 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 0269BF88 */ cpu->r[4] = 0x00000000u;
|
|
/* 0269BF8C */ Gambit_fn_0203843C(cpu);
|
|
/* 0269BF90 */ _t47 = cpu->r[1] + 0x00000024u;
|
|
/* 0269BF90 */ cpu->r[0] = rbrew_read32(cpu->mem, _t47);
|
|
/* 0269BF94 */ _t48 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269BF94 */ cpu->r[31] = rbrew_read32(cpu->mem, _t48);
|
|
/* 0269BF98 */ cpu->lr = cpu->r[0];
|
|
/* 0269BF9C */ _t49 = cpu->r[1] + 0x00000018u;
|
|
/* 0269BF9C */ cpu->r[30] = rbrew_read32(cpu->mem, _t49);
|
|
/* 0269BFA0 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 0269BFA4 */ return;
|
|
}
|
|
|
|
// fn_0269BFA8 @ 0x269bfa8
|
|
void Gambit_fn_0269BFA8(CPUState* cpu) {
|
|
uint32_t _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_0269BFA8: ; // 0x269bfa8
|
|
/* 0269BFA8 */ cpu->r[0] = cpu->lr;
|
|
/* 0269BFAC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0269BFAC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269BFAC */ cpu->r[1] = _t0;
|
|
/* 0269BFB0 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 0269BFB0 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0269BFB4 */ cpu->r[30] = cpu->r[3];
|
|
/* 0269BFB8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0269BFB8 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0269BFBC */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269BFBC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269BFC0 */ Gambit_fn_023AE5D8(cpu);
|
|
/* 0269BFC4 */ cpu->r[9] = 0x101D0000u;
|
|
/* 0269BFC8 */ _t4 = cpu->r[9] + 0x00000E60u;
|
|
/* 0269BFC8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269BFC8 */ cpu->r[9] = _t4;
|
|
/* 0269BFCC */ cpu->r[4] = 0x101D0000u;
|
|
/* 0269BFD0 */ _t5 = cpu->r[30] + 0x000002A4u;
|
|
/* 0269BFD0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0269BFD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0269BFD8 */ cpu->r[4] = cpu->r[4] + 0x00000E64u;
|
|
/* 0269BFDC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269BFDC */ _t7 = _t6 & 0x00000001u;
|
|
/* 0269BFDC */ if (_t7) goto L_0269BFE0; else goto L_0269BFF4;
|
|
L_0269BFE0: ; // 0x269bfe0
|
|
/* 0269BFE0 */ cpu->r[0] = 0x100E0000u;
|
|
/* 0269BFE4 */ cpu->r[12] = 0x00000001u;
|
|
/* 0269BFE8 */ cpu->r[0] = cpu->r[0] + 0x000044A0u;
|
|
/* 0269BFEC */ _t8 = cpu->r[9] + 0x00000000u;
|
|
/* 0269BFEC */ rbrew_write32(cpu->mem, _t8, cpu->r[12]);
|
|
/* 0269BFF0 */ _t9 = cpu->r[4] + 0x00000000u;
|
|
/* 0269BFF0 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
L_0269BFF4: ; // 0x269bff4
|
|
/* 0269BFF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0269BFF8 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269BFF8 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0269BFF8 */ if (_t11) goto L_0269C018; else goto L_0269BFFC;
|
|
L_0269BFFC: ; // 0x269bffc
|
|
/* 0269BFFC */ _t12 = cpu->r[31] + 0x00000004u;
|
|
/* 0269BFFC */ cpu->r[11] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0269C000 */ _t13 = cpu->r[11] + 0x00000014u;
|
|
/* 0269C000 */ cpu->r[7] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0269C004 */ cpu->ctr = cpu->r[7];
|
|
/* 0269C008 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269C00C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0269C010 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0269C014 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269C014 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0269C014 */ if (_t15) goto L_0269C018; else goto L_0269C01C;
|
|
L_0269C018: ; // 0x269c018
|
|
/* 0269C018 */ cpu->r[31] = 0x00000000u;
|
|
L_0269C01C: ; // 0x269c01c
|
|
/* 0269C01C */ cpu->r[3] = cpu->r[31];
|
|
/* 0269C020 */ Gambit_fn_0269CEB8(cpu);
|
|
/* 0269C024 */ _t16 = cpu->r[30] + 0x00000250u;
|
|
/* 0269C024 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0269C028 */ _t17 = cpu->r[12] + 0x00000250u;
|
|
/* 0269C028 */ cpu->r[6] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0269C02C */ _t18 = cpu->r[6] + 0x000000B0u;
|
|
/* 0269C02C */ cpu->r[3] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0269C030 */ cpu->r[8] = 0x00000001u;
|
|
/* 0269C034 */ _t19 = cpu->r[3] + 0x00000070u;
|
|
/* 0269C034 */ rbrew_write8(cpu->mem, _t19, (uint8_t)cpu->r[8]);
|
|
/* 0269C038 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269C03C */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 0269C03C */ rbrew_write32(cpu->mem, _t20, cpu->r[8]);
|
|
/* 0269C040 */ Gambit_fn_020709EC(cpu);
|
|
/* 0269C044 */ _t21 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269C044 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0269C048 */ _t22 = cpu->r[1] + 0x00000010u;
|
|
/* 0269C048 */ cpu->r[30] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0269C04C */ cpu->lr = cpu->r[0];
|
|
/* 0269C050 */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 0269C050 */ cpu->r[31] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0269C054 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269C058 */ return;
|
|
}
|
|
|
|
// fn_0269BFAC @ 0x269bfac
|
|
void Gambit_fn_0269BFAC(CPUState* cpu) {
|
|
uint32_t _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_0269BFAC: ; // 0x269bfac
|
|
/* 0269BFAC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0269BFAC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269BFAC */ cpu->r[1] = _t0;
|
|
/* 0269BFB0 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 0269BFB0 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0269BFB4 */ cpu->r[30] = cpu->r[3];
|
|
/* 0269BFB8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0269BFB8 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0269BFBC */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269BFBC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269BFC0 */ Gambit_fn_023AE5D8(cpu);
|
|
/* 0269BFC4 */ cpu->r[9] = 0x101D0000u;
|
|
/* 0269BFC8 */ _t4 = cpu->r[9] + 0x00000E60u;
|
|
/* 0269BFC8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269BFC8 */ cpu->r[9] = _t4;
|
|
/* 0269BFCC */ cpu->r[4] = 0x101D0000u;
|
|
/* 0269BFD0 */ _t5 = cpu->r[30] + 0x000002A4u;
|
|
/* 0269BFD0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0269BFD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0269BFD8 */ cpu->r[4] = cpu->r[4] + 0x00000E64u;
|
|
/* 0269BFDC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269BFDC */ _t7 = _t6 & 0x00000001u;
|
|
/* 0269BFDC */ if (_t7) goto L_0269BFE0; else goto L_0269BFF4;
|
|
L_0269BFE0: ; // 0x269bfe0
|
|
/* 0269BFE0 */ cpu->r[0] = 0x100E0000u;
|
|
/* 0269BFE4 */ cpu->r[12] = 0x00000001u;
|
|
/* 0269BFE8 */ cpu->r[0] = cpu->r[0] + 0x000044A0u;
|
|
/* 0269BFEC */ _t8 = cpu->r[9] + 0x00000000u;
|
|
/* 0269BFEC */ rbrew_write32(cpu->mem, _t8, cpu->r[12]);
|
|
/* 0269BFF0 */ _t9 = cpu->r[4] + 0x00000000u;
|
|
/* 0269BFF0 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
L_0269BFF4: ; // 0x269bff4
|
|
/* 0269BFF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0269BFF8 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269BFF8 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0269BFF8 */ if (_t11) goto L_0269C018; else goto L_0269BFFC;
|
|
L_0269BFFC: ; // 0x269bffc
|
|
/* 0269BFFC */ _t12 = cpu->r[31] + 0x00000004u;
|
|
/* 0269BFFC */ cpu->r[11] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0269C000 */ _t13 = cpu->r[11] + 0x00000014u;
|
|
/* 0269C000 */ cpu->r[7] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0269C004 */ cpu->ctr = cpu->r[7];
|
|
/* 0269C008 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269C00C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0269C010 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0269C014 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269C014 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0269C014 */ if (_t15) goto L_0269C018; else goto L_0269C01C;
|
|
L_0269C018: ; // 0x269c018
|
|
/* 0269C018 */ cpu->r[31] = 0x00000000u;
|
|
L_0269C01C: ; // 0x269c01c
|
|
/* 0269C01C */ cpu->r[3] = cpu->r[31];
|
|
/* 0269C020 */ Gambit_fn_0269CEB8(cpu);
|
|
/* 0269C024 */ _t16 = cpu->r[30] + 0x00000250u;
|
|
/* 0269C024 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0269C028 */ _t17 = cpu->r[12] + 0x00000250u;
|
|
/* 0269C028 */ cpu->r[6] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0269C02C */ _t18 = cpu->r[6] + 0x000000B0u;
|
|
/* 0269C02C */ cpu->r[3] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0269C030 */ cpu->r[8] = 0x00000001u;
|
|
/* 0269C034 */ _t19 = cpu->r[3] + 0x00000070u;
|
|
/* 0269C034 */ rbrew_write8(cpu->mem, _t19, (uint8_t)cpu->r[8]);
|
|
/* 0269C038 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269C03C */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 0269C03C */ rbrew_write32(cpu->mem, _t20, cpu->r[8]);
|
|
/* 0269C040 */ Gambit_fn_020709EC(cpu);
|
|
/* 0269C044 */ _t21 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269C044 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0269C048 */ _t22 = cpu->r[1] + 0x00000010u;
|
|
/* 0269C048 */ cpu->r[30] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0269C04C */ cpu->lr = cpu->r[0];
|
|
/* 0269C050 */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 0269C050 */ cpu->r[31] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0269C054 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269C058 */ return;
|
|
}
|
|
|
|
// fn_0269C05C @ 0x269c05c
|
|
void Gambit_fn_0269C05C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_0269C05C: ; // 0x269c05c
|
|
/* 0269C05C */ cpu->r[0] = cpu->lr;
|
|
/* 0269C060 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0269C060 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269C060 */ cpu->r[1] = _t0;
|
|
/* 0269C064 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0269C064 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0269C068 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269C06C */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269C06C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0269C070 */ Gambit_fn_023AD3A8(cpu);
|
|
/* 0269C074 */ _t3 = cpu->r[31] + 0x00000004u;
|
|
/* 0269C074 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0269C078 */ _t4 = cpu->r[11] + 0x0000012Cu;
|
|
/* 0269C078 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269C07C */ cpu->ctr = cpu->r[12];
|
|
/* 0269C080 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269C084 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0269C088 */ cpu->r[0] = 0x05B00000u;
|
|
/* 0269C08C */ cpu->r[10] = rbrew_rlwinm(cpu->r[3], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 0269C090 */ cpu->r[0] = cpu->r[0] | 0x00005B06u;
|
|
/* 0269C094 */ cpu->r[12] = 0x100E0000u;
|
|
/* 0269C098 */ /* nop */
|
|
/* 0269C09C */ _t5 = cpu->r[12] + 0x00004528u;
|
|
/* 0269C09C */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t5);
|
|
/* 0269C0A0 */ cpu->r[10] = (uint32_t)((int32_t)cpu->r[10] * (int32_t)0x000005A0u);
|
|
/* 0269C0A4 */ cpu->r[0] = 0x43300000u;
|
|
/* 0269C0A8 */ _t6 = cpu->r[31] + 0x0000025Cu;
|
|
/* 0269C0A8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0269C0AC */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 0269C0AC */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 0269C0B0 */ cpu->r[0] = cpu->r[3] - cpu->r[10];
|
|
/* 0269C0B4 */ _t8 = cpu->r[12] + 0x00000008u;
|
|
/* 0269C0B4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0269C0B8 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269C0B8 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 0269C0BC */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 0269C0BC */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t10);
|
|
/* 0269C0C0 */ cpu->f[13] = cpu->f[13] - cpu->f[0];
|
|
/* 0269C0C4 */ _t11 = cpu->r[11] + 0x00002900u;
|
|
/* 0269C0C4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0269C0C8 */ cpu->r[11] = 0x100E0000u;
|
|
/* 0269C0CC */ cpu->f[0] = (double)(float)cpu->f[13];
|
|
/* 0269C0D0 */ _t12 = cpu->r[11] + 0x00004530u;
|
|
/* 0269C0D0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 0269C0D4 */ cpu->r[12] = 0x100E0000u;
|
|
/* 0269C0D8 */ cpu->f[13] = cpu->f[0] / cpu->f[13];
|
|
/* 0269C0DC */ _t13 = cpu->r[12] + 0x00004520u;
|
|
/* 0269C0DC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 0269C0E0 */ cpu->f[1] = cpu->f[0] * cpu->f[13];
|
|
/* 0269C0E4 */ Gambit_fn_0293D468(cpu);
|
|
/* 0269C0E8 */ _t14 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269C0E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0269C0EC */ cpu->lr = cpu->r[0];
|
|
/* 0269C0F0 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 0269C0F0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0269C0F4 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269C0F8 */ return;
|
|
}
|
|
|
|
// fn_0269C060 @ 0x269c060
|
|
void Gambit_fn_0269C060(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_0269C060: ; // 0x269c060
|
|
/* 0269C060 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0269C060 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269C060 */ cpu->r[1] = _t0;
|
|
/* 0269C064 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0269C064 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0269C068 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269C06C */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269C06C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0269C070 */ Gambit_fn_023AD3A8(cpu);
|
|
/* 0269C074 */ _t3 = cpu->r[31] + 0x00000004u;
|
|
/* 0269C074 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0269C078 */ _t4 = cpu->r[11] + 0x0000012Cu;
|
|
/* 0269C078 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269C07C */ cpu->ctr = cpu->r[12];
|
|
/* 0269C080 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269C084 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0269C088 */ cpu->r[0] = 0x05B00000u;
|
|
/* 0269C08C */ cpu->r[10] = rbrew_rlwinm(cpu->r[3], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 0269C090 */ cpu->r[0] = cpu->r[0] | 0x00005B06u;
|
|
/* 0269C094 */ cpu->r[12] = 0x100E0000u;
|
|
/* 0269C098 */ /* nop */
|
|
/* 0269C09C */ _t5 = cpu->r[12] + 0x00004528u;
|
|
/* 0269C09C */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t5);
|
|
/* 0269C0A0 */ cpu->r[10] = (uint32_t)((int32_t)cpu->r[10] * (int32_t)0x000005A0u);
|
|
/* 0269C0A4 */ cpu->r[0] = 0x43300000u;
|
|
/* 0269C0A8 */ _t6 = cpu->r[31] + 0x0000025Cu;
|
|
/* 0269C0A8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0269C0AC */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 0269C0AC */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 0269C0B0 */ cpu->r[0] = cpu->r[3] - cpu->r[10];
|
|
/* 0269C0B4 */ _t8 = cpu->r[12] + 0x00000008u;
|
|
/* 0269C0B4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0269C0B8 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269C0B8 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 0269C0BC */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 0269C0BC */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t10);
|
|
/* 0269C0C0 */ cpu->f[13] = cpu->f[13] - cpu->f[0];
|
|
/* 0269C0C4 */ _t11 = cpu->r[11] + 0x00002900u;
|
|
/* 0269C0C4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0269C0C8 */ cpu->r[11] = 0x100E0000u;
|
|
/* 0269C0CC */ cpu->f[0] = (double)(float)cpu->f[13];
|
|
/* 0269C0D0 */ _t12 = cpu->r[11] + 0x00004530u;
|
|
/* 0269C0D0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 0269C0D4 */ cpu->r[12] = 0x100E0000u;
|
|
/* 0269C0D8 */ cpu->f[13] = cpu->f[0] / cpu->f[13];
|
|
/* 0269C0DC */ _t13 = cpu->r[12] + 0x00004520u;
|
|
/* 0269C0DC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 0269C0E0 */ cpu->f[1] = cpu->f[0] * cpu->f[13];
|
|
/* 0269C0E4 */ Gambit_fn_0293D468(cpu);
|
|
/* 0269C0E8 */ _t14 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269C0E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0269C0EC */ cpu->lr = cpu->r[0];
|
|
/* 0269C0F0 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 0269C0F0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0269C0F4 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269C0F8 */ return;
|
|
}
|
|
|
|
// fn_0269C0FC @ 0x269c0fc
|
|
void Gambit_fn_0269C0FC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_0269C0FC: ; // 0x269c0fc
|
|
/* 0269C0FC */ _t0 = cpu->r[3] + 0x00000250u;
|
|
/* 0269C0FC */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0269C100 */ _t1 = cpu->r[12] + 0x00000250u;
|
|
/* 0269C100 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0269C104 */ _t2 = cpu->r[12] + 0x000000ACu;
|
|
/* 0269C104 */ cpu->r[3] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0269C108 */ return;
|
|
}
|
|
|
|
// fn_0269C10C @ 0x269c10c
|
|
void Gambit_fn_0269C10C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0269C10C: ; // 0x269c10c
|
|
/* 0269C10C */ cpu->r[5] = 0x00000001u;
|
|
/* 0269C110 */ cpu->r[4] = 0x00000000u;
|
|
/* 0269C114 */ goto L_0269C4F4;
|
|
L_0269C4F4: ; // 0x269c4f4
|
|
/* 0269C4F4 */ cpu->r[0] = cpu->lr;
|
|
/* 0269C4F8 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0269C4FC */ cpu->r[7] = 0x026A0000u;
|
|
/* 0269C500 */ cpu->r[6] = 0x026A0000u;
|
|
/* 0269C504 */ cpu->r[10] = 0x101D0000u;
|
|
/* 0269C508 */ cpu->r[7] = cpu->r[7] + 0xFFFFC4C0u;
|
|
/* 0269C50C */ cpu->r[6] = cpu->r[6] + 0xFFFFC4C0u;
|
|
/* 0269C510 */ cpu->r[10] = cpu->r[10] + 0xFFFF807Cu;
|
|
/* 0269C514 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 0269C514 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 0269C518 */ cpu->r[0] = 0x101D0000u;
|
|
/* 0269C51C */ _t1 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0269C51C */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 0269C51C */ cpu->r[1] = _t1;
|
|
/* 0269C520 */ cpu->r[0] = cpu->r[0] + 0xFFFF8078u;
|
|
/* 0269C524 */ _t2 = cpu->r[12] + 0xFFFF9034u;
|
|
/* 0269C524 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0269C528 */ cpu->r[8] = 0x00000000u;
|
|
/* 0269C52C */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 0269C52C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269C530 */ cpu->r[9] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269C534 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269C534 */ rbrew_write32(cpu->mem, _t4, cpu->r[12]);
|
|
/* 0269C538 */ Gambit_fn_02791B10(cpu);
|
|
/* 0269C53C */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 0269C53C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0269C540 */ cpu->lr = cpu->r[0];
|
|
/* 0269C544 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0269C548 */ return;
|
|
}
|
|
|
|
// fn_0269C118 @ 0x269c118
|
|
void Gambit_fn_0269C118(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0269C118: ; // 0x269c118
|
|
/* 0269C118 */ cpu->r[5] = 0xFFFFFFFDu;
|
|
/* 0269C11C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0269C11C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269C11C */ cpu->r[1] = _t0;
|
|
/* 0269C120 */ cpu->r[10] = 0x101F0000u;
|
|
/* 0269C124 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 0269C128 */ _t1 = cpu->r[10] + 0xFFFFD9E0u;
|
|
/* 0269C128 */ rbrew_write32(cpu->mem, _t1, cpu->r[5]);
|
|
/* 0269C128 */ cpu->r[10] = _t1;
|
|
/* 0269C12C */ cpu->r[7] = 0x101F0000u;
|
|
/* 0269C130 */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 0269C130 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 0269C134 */ cpu->r[9] = 0xFFFFFFFEu;
|
|
/* 0269C138 */ cpu->r[8] = 0x101F0000u;
|
|
/* 0269C13C */ _t3 = cpu->r[7] + 0xFFFFD9F0u;
|
|
/* 0269C13C */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 0269C13C */ cpu->r[7] = _t3;
|
|
/* 0269C140 */ _t4 = cpu->r[8] + 0xFFFFD9E8u;
|
|
/* 0269C140 */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
/* 0269C140 */ cpu->r[8] = _t4;
|
|
/* 0269C144 */ cpu->r[0] = 0x00000002u;
|
|
/* 0269C148 */ _t5 = cpu->r[8] + 0x00000004u;
|
|
/* 0269C148 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 0269C14C */ cpu->r[8] = 0x101F0000u;
|
|
/* 0269C150 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 0269C150 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0269C154 */ cpu->r[12] = 0x101F0000u;
|
|
/* 0269C158 */ _t7 = cpu->r[7] + 0x00000004u;
|
|
/* 0269C158 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 0269C15C */ _t8 = cpu->r[8] + 0xFFFFDA00u;
|
|
/* 0269C15C */ rbrew_write32(cpu->mem, _t8, cpu->r[5]);
|
|
/* 0269C15C */ cpu->r[8] = _t8;
|
|
/* 0269C160 */ _t9 = cpu->r[12] + 0xFFFFD9F8u;
|
|
/* 0269C160 */ rbrew_write32(cpu->mem, _t9, cpu->r[5]);
|
|
/* 0269C160 */ cpu->r[12] = _t9;
|
|
/* 0269C164 */ _t10 = cpu->r[12] + 0x00000004u;
|
|
/* 0269C164 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 0269C168 */ cpu->r[0] = 0x00000004u;
|
|
/* 0269C16C */ _t11 = cpu->r[8] + 0x00000004u;
|
|
/* 0269C16C */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 0269C170 */ cpu->r[11] = 0x101F0000u;
|
|
/* 0269C174 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 0269C174 */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0269C178 */ _t13 = cpu->r[11] + 0xFFFFDA08u;
|
|
/* 0269C178 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 0269C17C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269C180 */ return;
|
|
}
|
|
|
|
// fn_0269C11C @ 0x269c11c
|
|
void Gambit_fn_0269C11C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0269C11C: ; // 0x269c11c
|
|
/* 0269C11C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0269C11C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269C11C */ cpu->r[1] = _t0;
|
|
/* 0269C120 */ cpu->r[10] = 0x101F0000u;
|
|
/* 0269C124 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 0269C128 */ _t1 = cpu->r[10] + 0xFFFFD9E0u;
|
|
/* 0269C128 */ rbrew_write32(cpu->mem, _t1, cpu->r[5]);
|
|
/* 0269C128 */ cpu->r[10] = _t1;
|
|
/* 0269C12C */ cpu->r[7] = 0x101F0000u;
|
|
/* 0269C130 */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 0269C130 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 0269C134 */ cpu->r[9] = 0xFFFFFFFEu;
|
|
/* 0269C138 */ cpu->r[8] = 0x101F0000u;
|
|
/* 0269C13C */ _t3 = cpu->r[7] + 0xFFFFD9F0u;
|
|
/* 0269C13C */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 0269C13C */ cpu->r[7] = _t3;
|
|
/* 0269C140 */ _t4 = cpu->r[8] + 0xFFFFD9E8u;
|
|
/* 0269C140 */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
/* 0269C140 */ cpu->r[8] = _t4;
|
|
/* 0269C144 */ cpu->r[0] = 0x00000002u;
|
|
/* 0269C148 */ _t5 = cpu->r[8] + 0x00000004u;
|
|
/* 0269C148 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 0269C14C */ cpu->r[8] = 0x101F0000u;
|
|
/* 0269C150 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 0269C150 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0269C154 */ cpu->r[12] = 0x101F0000u;
|
|
/* 0269C158 */ _t7 = cpu->r[7] + 0x00000004u;
|
|
/* 0269C158 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 0269C15C */ _t8 = cpu->r[8] + 0xFFFFDA00u;
|
|
/* 0269C15C */ rbrew_write32(cpu->mem, _t8, cpu->r[5]);
|
|
/* 0269C15C */ cpu->r[8] = _t8;
|
|
/* 0269C160 */ _t9 = cpu->r[12] + 0xFFFFD9F8u;
|
|
/* 0269C160 */ rbrew_write32(cpu->mem, _t9, cpu->r[5]);
|
|
/* 0269C160 */ cpu->r[12] = _t9;
|
|
/* 0269C164 */ _t10 = cpu->r[12] + 0x00000004u;
|
|
/* 0269C164 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 0269C168 */ cpu->r[0] = 0x00000004u;
|
|
/* 0269C16C */ _t11 = cpu->r[8] + 0x00000004u;
|
|
/* 0269C16C */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 0269C170 */ cpu->r[11] = 0x101F0000u;
|
|
/* 0269C174 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 0269C174 */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0269C178 */ _t13 = cpu->r[11] + 0xFFFFDA08u;
|
|
/* 0269C178 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 0269C17C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269C180 */ return;
|
|
}
|
|
|
|
// fn_0269C184 @ 0x269c184
|
|
void Gambit_fn_0269C184(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_0269C184: ; // 0x269c184
|
|
/* 0269C184 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0269C188 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269C188 */ _t1 = _t0 & 0x00000001u;
|
|
/* 0269C188 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0269C188 */ goto L_0269C18C;
|
|
L_0269C18C: ; // 0x269c18c
|
|
/* 0269C18C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0269C18C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0269C190 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269C190 */ _t3 = _t2 & 0x00000001u;
|
|
/* 0269C190 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0269C190 */ goto L_0269C194;
|
|
L_0269C194: ; // 0x269c194
|
|
/* 0269C194 */ 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_0269C198 @ 0x269c198
|
|
void Gambit_fn_0269C198(CPUState* cpu) {
|
|
L_0269C198: ; // 0x269c198
|
|
/* 0269C198 */ return;
|
|
}
|
|
|
|
// fn_0269C19C @ 0x269c19c
|
|
void Gambit_fn_0269C19C(CPUState* cpu) {
|
|
L_0269C19C: ; // 0x269c19c
|
|
/* 0269C19C */ return;
|
|
}
|
|
|
|
// fn_0269C1A0 @ 0x269c1a0
|
|
void Gambit_fn_0269C1A0(CPUState* cpu) {
|
|
L_0269C1A0: ; // 0x269c1a0
|
|
/* 0269C1A0 */ return;
|
|
}
|
|
|
|
// fn_0269C1A4 @ 0x269c1a4
|
|
void Gambit_fn_0269C1A4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_0269C1A4: ; // 0x269c1a4
|
|
/* 0269C1A4 */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 0269C1A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0269C1A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0269C1AC */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269C1AC */ _t2 = _t1 & 0x00000001u;
|
|
/* 0269C1AC */ if (_t2) goto L_0269C1B8; else goto L_0269C1B0;
|
|
L_0269C1B0: ; // 0x269c1b0
|
|
/* 0269C1B0 */ cpu->r[3] = cpu->r[12] + 0x00000034u;
|
|
/* 0269C1B4 */ return;
|
|
L_0269C1B8: ; // 0x269c1b8
|
|
/* 0269C1B8 */ cpu->r[3] = 0x00000000u;
|
|
/* 0269C1BC */ return;
|
|
}
|
|
|
|
// fn_0269C1C0 @ 0x269c1c0
|
|
void Gambit_fn_0269C1C0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_0269C1C0: ; // 0x269c1c0
|
|
/* 0269C1C0 */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 0269C1C0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0269C1C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0269C1C8 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269C1C8 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0269C1C8 */ if (_t2) goto L_0269C1D4; else goto L_0269C1CC;
|
|
L_0269C1CC: ; // 0x269c1cc
|
|
/* 0269C1CC */ cpu->r[3] = cpu->r[12] + 0x00000064u;
|
|
/* 0269C1D0 */ return;
|
|
L_0269C1D4: ; // 0x269c1d4
|
|
/* 0269C1D4 */ cpu->r[3] = 0x00000000u;
|
|
/* 0269C1D8 */ return;
|
|
}
|
|
|
|
// fn_0269C1DC @ 0x269c1dc
|
|
void Gambit_fn_0269C1DC(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0269C1DC: ; // 0x269c1dc
|
|
/* 0269C1DC */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0269C1DC */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0269C1E0 */ _t1 = cpu->r[12] + 0x00000114u;
|
|
/* 0269C1E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0269C1E4 */ cpu->ctr = cpu->r[0];
|
|
/* 0269C1E8 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0269C1EC @ 0x269c1ec
|
|
void Gambit_fn_0269C1EC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0269C1EC: ; // 0x269c1ec
|
|
/* 0269C1EC */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0269C1EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0269C1F0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0269C1F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0269C1F4 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269C1F4 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0269C1F4 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0269C1F4 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0269C1F4 */ goto L_0269C1F8;
|
|
L_0269C1F8: ; // 0x269c1f8
|
|
/* 0269C1F8 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0269C1F8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269C1FC */ _t5 = cpu->r[12] + 0x00000044u;
|
|
/* 0269C1FC */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0269C200 */ cpu->ctr = cpu->r[12];
|
|
/* 0269C204 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0269C208 @ 0x269c208
|
|
void Gambit_fn_0269C208(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0269C208: ; // 0x269c208
|
|
/* 0269C208 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0269C208 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0269C20C */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0269C20C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0269C210 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269C210 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0269C210 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0269C210 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0269C210 */ goto L_0269C214;
|
|
L_0269C214: ; // 0x269c214
|
|
/* 0269C214 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0269C214 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269C218 */ _t5 = cpu->r[12] + 0x0000004Cu;
|
|
/* 0269C218 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0269C21C */ cpu->ctr = cpu->r[0];
|
|
/* 0269C220 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0269C224 @ 0x269c224
|
|
void Gambit_fn_0269C224(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0269C224: ; // 0x269c224
|
|
/* 0269C224 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0269C224 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0269C228 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Eu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0269C228 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0269C22C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269C22C */ _t2 = _t1 & 0x00000001u;
|
|
/* 0269C22C */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0269C22C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0269C22C */ goto L_0269C230;
|
|
L_0269C230: ; // 0x269c230
|
|
/* 0269C230 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0269C230 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269C234 */ _t5 = cpu->r[12] + 0x00000054u;
|
|
/* 0269C234 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0269C238 */ cpu->ctr = cpu->r[0];
|
|
/* 0269C23C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0269C240 @ 0x269c240
|
|
void Gambit_fn_0269C240(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0269C240: ; // 0x269c240
|
|
/* 0269C240 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0269C240 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0269C244 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Du, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0269C244 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0269C248 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269C248 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0269C248 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0269C248 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0269C248 */ goto L_0269C24C;
|
|
L_0269C24C: ; // 0x269c24c
|
|
/* 0269C24C */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0269C24C */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269C250 */ _t5 = cpu->r[12] + 0x0000005Cu;
|
|
/* 0269C250 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0269C254 */ cpu->ctr = cpu->r[0];
|
|
/* 0269C258 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0269C25C @ 0x269c25c
|
|
void Gambit_fn_0269C25C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0269C25C: ; // 0x269c25c
|
|
/* 0269C25C */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0269C25C */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0269C260 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Cu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0269C260 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0269C264 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269C264 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0269C264 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0269C264 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0269C264 */ goto L_0269C268;
|
|
L_0269C268: ; // 0x269c268
|
|
/* 0269C268 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0269C268 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269C26C */ _t5 = cpu->r[12] + 0x00000064u;
|
|
/* 0269C26C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0269C270 */ cpu->ctr = cpu->r[0];
|
|
/* 0269C274 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0269C278 @ 0x269c278
|
|
void Gambit_fn_0269C278(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0269C278: ; // 0x269c278
|
|
/* 0269C278 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0269C278 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0269C27C */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0269C27C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0269C280 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269C280 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0269C280 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0269C280 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0269C280 */ goto L_0269C284;
|
|
L_0269C284: ; // 0x269c284
|
|
/* 0269C284 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0269C284 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269C288 */ _t5 = cpu->r[11] + 0x0000006Cu;
|
|
/* 0269C288 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0269C28C */ cpu->ctr = cpu->r[0];
|
|
/* 0269C290 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0269C294 @ 0x269c294
|
|
void Gambit_fn_0269C294(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0269C294: ; // 0x269c294
|
|
/* 0269C294 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0269C294 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0269C298 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Au, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0269C298 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0269C29C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269C29C */ _t2 = _t1 & 0x00000001u;
|
|
/* 0269C29C */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0269C29C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0269C29C */ goto L_0269C2A0;
|
|
L_0269C2A0: ; // 0x269c2a0
|
|
/* 0269C2A0 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0269C2A0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269C2A4 */ _t5 = cpu->r[11] + 0x00000074u;
|
|
/* 0269C2A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0269C2A8 */ cpu->ctr = cpu->r[0];
|
|
/* 0269C2AC */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0269C2B0 @ 0x269c2b0
|
|
void Gambit_fn_0269C2B0(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0269C2B0: ; // 0x269c2b0
|
|
/* 0269C2B0 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0269C2B0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0269C2B4 */ _t1 = cpu->r[12] + 0x00000024u;
|
|
/* 0269C2B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0269C2B8 */ cpu->ctr = cpu->r[0];
|
|
/* 0269C2BC */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0269C2C0 @ 0x269c2c0
|
|
void Gambit_fn_0269C2C0(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0269C2C0: ; // 0x269c2c0
|
|
/* 0269C2C0 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0269C2C0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0269C2C4 */ _t1 = cpu->r[12] + 0x0000002Cu;
|
|
/* 0269C2C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0269C2C8 */ cpu->ctr = cpu->r[0];
|
|
/* 0269C2CC */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0269C2D0 @ 0x269c2d0
|
|
void Gambit_fn_0269C2D0(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0269C2D0: ; // 0x269c2d0
|
|
/* 0269C2D0 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0269C2D0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0269C2D4 */ _t1 = cpu->r[12] + 0x00000034u;
|
|
/* 0269C2D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0269C2D8 */ cpu->ctr = cpu->r[0];
|
|
/* 0269C2DC */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0269C2E0 @ 0x269c2e0
|
|
void Gambit_fn_0269C2E0(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0269C2E0: ; // 0x269c2e0
|
|
/* 0269C2E0 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0269C2E0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0269C2E4 */ _t1 = cpu->r[12] + 0x0000003Cu;
|
|
/* 0269C2E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0269C2E8 */ cpu->ctr = cpu->r[0];
|
|
/* 0269C2EC */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0269C2F0 @ 0x269c2f0
|
|
void Gambit_fn_0269C2F0(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0269C2F0: ; // 0x269c2f0
|
|
/* 0269C2F0 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0269C2F0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0269C2F4 */ _t1 = cpu->r[12] + 0x0000007Cu;
|
|
/* 0269C2F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0269C2F8 */ cpu->ctr = cpu->r[0];
|
|
/* 0269C2FC */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0269C300 @ 0x269c300
|
|
void Gambit_fn_0269C300(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0269C300: ; // 0x269c300
|
|
/* 0269C300 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0269C300 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0269C304 */ _t1 = cpu->r[12] + 0x00000084u;
|
|
/* 0269C304 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0269C308 */ cpu->ctr = cpu->r[0];
|
|
/* 0269C30C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0269C310 @ 0x269c310
|
|
void Gambit_fn_0269C310(CPUState* cpu) {
|
|
L_0269C310: ; // 0x269c310
|
|
/* 0269C310 */ return;
|
|
}
|
|
|
|
// fn_0269C314 @ 0x269c314
|
|
void Gambit_fn_0269C314(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0269C314: ; // 0x269c314
|
|
/* 0269C314 */ cpu->r[9] = 0x101D0000u;
|
|
/* 0269C318 */ _t0 = cpu->r[9] + 0xFFFFD9BCu;
|
|
/* 0269C318 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0269C318 */ cpu->r[9] = _t0;
|
|
/* 0269C31C */ cpu->r[12] = 0x101D0000u;
|
|
/* 0269C320 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0269C324 */ cpu->r[12] = cpu->r[12] + 0xFFFFDB18u;
|
|
/* 0269C328 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269C328 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0269C328 */ if (_t2) goto L_0269C32C; else goto L_0269C340;
|
|
L_0269C32C: ; // 0x269c32c
|
|
/* 0269C32C */ cpu->r[7] = 0x100E0000u;
|
|
/* 0269C330 */ cpu->r[0] = 0x00000001u;
|
|
/* 0269C334 */ cpu->r[7] = cpu->r[7] + 0x00004480u;
|
|
/* 0269C338 */ _t3 = cpu->r[9] + 0x00000000u;
|
|
/* 0269C338 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269C33C */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 0269C33C */ rbrew_write32(cpu->mem, _t4, cpu->r[7]);
|
|
L_0269C340: ; // 0x269c340
|
|
/* 0269C340 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 0269C344 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269C344 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0269C344 */ if (_t6) goto L_0269C348; else goto L_0269C350;
|
|
L_0269C348: ; // 0x269c348
|
|
/* 0269C348 */ cpu->r[3] = 0x00000001u;
|
|
/* 0269C34C */ return;
|
|
L_0269C350: ; // 0x269c350
|
|
/* 0269C350 */ cpu->r[7] = 0x101D0000u;
|
|
/* 0269C354 */ _t7 = cpu->r[7] + 0xFFFFD4E0u;
|
|
/* 0269C354 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269C354 */ cpu->r[7] = _t7;
|
|
/* 0269C358 */ cpu->r[11] = 0x101D0000u;
|
|
/* 0269C35C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0269C360 */ cpu->r[11] = cpu->r[11] + 0xFFFFD4E4u;
|
|
/* 0269C364 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269C364 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0269C364 */ if (_t9) goto L_0269C368; else goto L_0269C37C;
|
|
L_0269C368: ; // 0x269c368
|
|
/* 0269C368 */ cpu->r[0] = 0x100E0000u;
|
|
/* 0269C36C */ cpu->r[9] = 0x00000001u;
|
|
/* 0269C370 */ cpu->r[0] = cpu->r[0] + 0x00004458u;
|
|
/* 0269C374 */ _t10 = cpu->r[7] + 0x00000000u;
|
|
/* 0269C374 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 0269C378 */ _t11 = cpu->r[11] + 0x00000000u;
|
|
/* 0269C378 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_0269C37C: ; // 0x269c37c
|
|
/* 0269C37C */ cpu->r[0] = cpu->r[4] ^ cpu->r[11];
|
|
/* 0269C380 */ cpu->r[8] = rbrew_clz32(cpu->r[0]);
|
|
/* 0269C384 */ cpu->r[3] = rbrew_rlwinm(cpu->r[8], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
/* 0269C388 */ return;
|
|
}
|
|
|
|
// fn_0269C38C @ 0x269c38c
|
|
void Gambit_fn_0269C38C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0269C38C: ; // 0x269c38c
|
|
/* 0269C38C */ cpu->r[0] = cpu->lr;
|
|
/* 0269C390 */ cpu->r[12] = 0x100E0000u;
|
|
/* 0269C394 */ cpu->r[10] = 0x00000007u;
|
|
/* 0269C398 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0269C398 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269C398 */ cpu->r[1] = _t0;
|
|
/* 0269C39C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0269C39C */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 0269C3A0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0269C3A0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0269C3A4 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269C3A8 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269C3A8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269C3AC */ cpu->r[0] = 0x00000004u;
|
|
/* 0269C3B0 */ _t4 = cpu->r[12] + 0x00004440u;
|
|
/* 0269C3B0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269C3B4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269C3B8 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0269C3B8 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0269C3BC */ cpu->r[31] = cpu->r[3];
|
|
/* 0269C3C0 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269C3C0 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 0269C3C4 */ Gambit_fn_02791888(cpu);
|
|
/* 0269C3C8 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 0269C3C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269C3CC */ cpu->r[0] = cpu->r[0] | 0x00000080u;
|
|
/* 0269C3D0 */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0269C3D0 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0269C3D4 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269C3D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269C3D8 */ cpu->lr = cpu->r[0];
|
|
/* 0269C3DC */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0269C3DC */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269C3E0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269C3E4 */ return;
|
|
}
|
|
|
|
// fn_0269C398 @ 0x269c398
|
|
void Gambit_fn_0269C398(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0269C398: ; // 0x269c398
|
|
/* 0269C398 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0269C398 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269C398 */ cpu->r[1] = _t0;
|
|
/* 0269C39C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0269C39C */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 0269C3A0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0269C3A0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0269C3A4 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269C3A8 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269C3A8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269C3AC */ cpu->r[0] = 0x00000004u;
|
|
/* 0269C3B0 */ _t4 = cpu->r[12] + 0x00004440u;
|
|
/* 0269C3B0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269C3B4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269C3B8 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0269C3B8 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0269C3BC */ cpu->r[31] = cpu->r[3];
|
|
/* 0269C3C0 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269C3C0 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 0269C3C4 */ Gambit_fn_02791888(cpu);
|
|
/* 0269C3C8 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 0269C3C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269C3CC */ cpu->r[0] = cpu->r[0] | 0x00000080u;
|
|
/* 0269C3D0 */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0269C3D0 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0269C3D4 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269C3D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269C3D8 */ cpu->lr = cpu->r[0];
|
|
/* 0269C3DC */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0269C3DC */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269C3E0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269C3E4 */ return;
|
|
}
|
|
|
|
// fn_0269C3E8 @ 0x269c3e8
|
|
void Gambit_fn_0269C3E8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0269C3E8: ; // 0x269c3e8
|
|
/* 0269C3E8 */ cpu->r[0] = cpu->lr;
|
|
/* 0269C3EC */ cpu->r[12] = 0x100E0000u;
|
|
/* 0269C3F0 */ cpu->r[10] = 0x00000009u;
|
|
/* 0269C3F4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0269C3F4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269C3F4 */ cpu->r[1] = _t0;
|
|
/* 0269C3F8 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0269C3F8 */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 0269C3FC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0269C3FC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0269C400 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269C404 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269C404 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269C408 */ cpu->r[0] = 0x00000004u;
|
|
/* 0269C40C */ _t4 = cpu->r[12] + 0x00004448u;
|
|
/* 0269C40C */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269C410 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269C414 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0269C414 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0269C418 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269C41C */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269C41C */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 0269C420 */ Gambit_fn_02791888(cpu);
|
|
/* 0269C424 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 0269C424 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269C428 */ cpu->r[0] = cpu->r[0] | 0x00000200u;
|
|
/* 0269C42C */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0269C42C */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0269C430 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269C430 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269C434 */ cpu->lr = cpu->r[0];
|
|
/* 0269C438 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0269C438 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269C43C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269C440 */ return;
|
|
}
|
|
|
|
// fn_0269C3F4 @ 0x269c3f4
|
|
void Gambit_fn_0269C3F4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0269C3F4: ; // 0x269c3f4
|
|
/* 0269C3F4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0269C3F4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269C3F4 */ cpu->r[1] = _t0;
|
|
/* 0269C3F8 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0269C3F8 */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 0269C3FC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0269C3FC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0269C400 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269C404 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269C404 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269C408 */ cpu->r[0] = 0x00000004u;
|
|
/* 0269C40C */ _t4 = cpu->r[12] + 0x00004448u;
|
|
/* 0269C40C */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269C410 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269C414 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0269C414 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0269C418 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269C41C */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269C41C */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 0269C420 */ Gambit_fn_02791888(cpu);
|
|
/* 0269C424 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 0269C424 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269C428 */ cpu->r[0] = cpu->r[0] | 0x00000200u;
|
|
/* 0269C42C */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0269C42C */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0269C430 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269C430 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269C434 */ cpu->lr = cpu->r[0];
|
|
/* 0269C438 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0269C438 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269C43C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269C440 */ return;
|
|
}
|
|
|
|
// fn_0269C444 @ 0x269c444
|
|
void Gambit_fn_0269C444(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_0269C444: ; // 0x269c444
|
|
/* 0269C444 */ cpu->r[0] = cpu->lr;
|
|
/* 0269C448 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0269C448 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269C448 */ cpu->r[1] = _t0;
|
|
/* 0269C44C */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0269C44C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0269C450 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269C454 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269C454 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0269C458 */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0269C458 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0269C45C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000003u);
|
|
/* 0269C460 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269C460 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0269C460 */ if (_t5) goto L_0269C464; else goto L_0269C480;
|
|
L_0269C464: ; // 0x269c464
|
|
/* 0269C464 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 0269C464 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0269C468 */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 0269C468 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269C46C */ cpu->ctr = cpu->r[0];
|
|
/* 0269C470 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269C474 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0269C478 */ cpu->r[10] = 0x00000002u;
|
|
/* 0269C47C */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0269C47C */ rbrew_write32(cpu->mem, _t8, cpu->r[10]);
|
|
L_0269C480: ; // 0x269c480
|
|
/* 0269C480 */ cpu->r[0] = 0x00000005u;
|
|
/* 0269C484 */ cpu->r[12] = 0x100E0000u;
|
|
/* 0269C488 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 0269C488 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 0269C48C */ _t10 = cpu->r[12] + 0x00004450u;
|
|
/* 0269C48C */ cpu->r[11] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269C48C */ cpu->r[12] = _t10;
|
|
/* 0269C490 */ _t11 = cpu->r[12] + 0x00000004u;
|
|
/* 0269C490 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0269C494 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269C498 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269C498 */ rbrew_write32(cpu->mem, _t12, cpu->r[11]);
|
|
/* 0269C49C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269C4A0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269C4A4 */ _t13 = cpu->r[1] + 0x00000010u;
|
|
/* 0269C4A4 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 0269C4A8 */ Gambit_fn_02791888(cpu);
|
|
/* 0269C4AC */ _t14 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269C4AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0269C4B0 */ cpu->lr = cpu->r[0];
|
|
/* 0269C4B4 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 0269C4B4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0269C4B8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269C4BC */ return;
|
|
}
|
|
|
|
// fn_0269C448 @ 0x269c448
|
|
void Gambit_fn_0269C448(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_0269C448: ; // 0x269c448
|
|
/* 0269C448 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0269C448 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269C448 */ cpu->r[1] = _t0;
|
|
/* 0269C44C */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0269C44C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0269C450 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269C454 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269C454 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0269C458 */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0269C458 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0269C45C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000003u);
|
|
/* 0269C460 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269C460 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0269C460 */ if (_t5) goto L_0269C464; else goto L_0269C480;
|
|
L_0269C464: ; // 0x269c464
|
|
/* 0269C464 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 0269C464 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0269C468 */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 0269C468 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269C46C */ cpu->ctr = cpu->r[0];
|
|
/* 0269C470 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269C474 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0269C478 */ cpu->r[10] = 0x00000002u;
|
|
/* 0269C47C */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0269C47C */ rbrew_write32(cpu->mem, _t8, cpu->r[10]);
|
|
L_0269C480: ; // 0x269c480
|
|
/* 0269C480 */ cpu->r[0] = 0x00000005u;
|
|
/* 0269C484 */ cpu->r[12] = 0x100E0000u;
|
|
/* 0269C488 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 0269C488 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 0269C48C */ _t10 = cpu->r[12] + 0x00004450u;
|
|
/* 0269C48C */ cpu->r[11] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269C48C */ cpu->r[12] = _t10;
|
|
/* 0269C490 */ _t11 = cpu->r[12] + 0x00000004u;
|
|
/* 0269C490 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0269C494 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269C498 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269C498 */ rbrew_write32(cpu->mem, _t12, cpu->r[11]);
|
|
/* 0269C49C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269C4A0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269C4A4 */ _t13 = cpu->r[1] + 0x00000010u;
|
|
/* 0269C4A4 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 0269C4A8 */ Gambit_fn_02791888(cpu);
|
|
/* 0269C4AC */ _t14 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269C4AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0269C4B0 */ cpu->lr = cpu->r[0];
|
|
/* 0269C4B4 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 0269C4B4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0269C4B8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269C4BC */ return;
|
|
}
|
|
|
|
// fn_0269C4C8 @ 0x269c4c8
|
|
void Gambit_fn_0269C4C8(CPUState* cpu) {
|
|
L_0269C4C8: ; // 0x269c4c8
|
|
/* 0269C4C8 */ cpu->r[3] = 0x100E0000u;
|
|
/* 0269C4CC */ cpu->r[3] = cpu->r[3] + 0x000044B0u;
|
|
/* 0269C4D0 */ return;
|
|
}
|
|
|
|
// fn_0269C4D4 @ 0x269c4d4
|
|
void Gambit_fn_0269C4D4(CPUState* cpu) {
|
|
L_0269C4D4: ; // 0x269c4d4
|
|
/* 0269C4D4 */ cpu->r[3] = 0xFFFFFFFFu;
|
|
/* 0269C4D8 */ return;
|
|
}
|
|
|
|
// fn_0269C4DC @ 0x269c4dc
|
|
void Gambit_fn_0269C4DC(CPUState* cpu) {
|
|
L_0269C4DC: ; // 0x269c4dc
|
|
/* 0269C4DC */ cpu->r[3] = 0xFFFFFFFFu;
|
|
/* 0269C4E0 */ return;
|
|
}
|
|
|
|
// fn_0269C4E4 @ 0x269c4e4
|
|
void Gambit_fn_0269C4E4(CPUState* cpu) {
|
|
L_0269C4E4: ; // 0x269c4e4
|
|
/* 0269C4E4 */ cpu->r[3] = 0x00000007u;
|
|
/* 0269C4E8 */ return;
|
|
}
|
|
|
|
// fn_0269C4EC @ 0x269c4ec
|
|
void Gambit_fn_0269C4EC(CPUState* cpu) {
|
|
L_0269C4EC: ; // 0x269c4ec
|
|
/* 0269C4EC */ cpu->r[3] = 0x00000007u;
|
|
/* 0269C4F0 */ return;
|
|
}
|
|
|
|
// fn_0269C51C @ 0x269c51c
|
|
void Gambit_fn_0269C51C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_0269C51C: ; // 0x269c51c
|
|
/* 0269C51C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0269C51C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269C51C */ cpu->r[1] = _t0;
|
|
/* 0269C520 */ cpu->r[0] = cpu->r[0] + 0xFFFF8078u;
|
|
/* 0269C524 */ _t1 = cpu->r[12] + 0xFFFF9034u;
|
|
/* 0269C524 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0269C528 */ cpu->r[8] = 0x00000000u;
|
|
/* 0269C52C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0269C52C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0269C530 */ cpu->r[9] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269C534 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269C534 */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 0269C538 */ Gambit_fn_02791B10(cpu);
|
|
/* 0269C53C */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0269C53C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269C540 */ cpu->lr = cpu->r[0];
|
|
/* 0269C544 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0269C548 */ return;
|
|
}
|
|
|
|
// fn_0269C54C @ 0x269c54c
|
|
void Gambit_fn_0269C54C(CPUState* cpu) {
|
|
uint32_t _t0, _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_0269C54C: ; // 0x269c54c
|
|
/* 0269C54C */ _t0 = cpu->r[1] + 0xFFFFFFB8u;
|
|
/* 0269C54C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269C54C */ cpu->r[1] = _t0;
|
|
/* 0269C550 */ /* nop */
|
|
/* 0269C554 */ cpu->r[0] = cpu->lr;
|
|
/* 0269C558 */ _t1 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0269C558 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0269C55C */ cpu->r[30] = 0x00000000u;
|
|
/* 0269C560 */ cpu->r[27] = 0x00000003u;
|
|
/* 0269C564 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0269C568 */ cpu->r[22] = 0x101D0000u;
|
|
/* 0269C56C */ cpu->r[24] = 0x100E0000u;
|
|
/* 0269C570 */ _t2 = cpu->r[12] + 0x00001344u;
|
|
/* 0269C570 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0269C574 */ cpu->r[31] = cpu->r[1] + 0x00000014u;
|
|
/* 0269C578 */ cpu->r[21] = cpu->r[3] + 0x0000028Cu;
|
|
/* 0269C57C */ cpu->r[22] = cpu->r[22] + 0xFFFF8070u;
|
|
/* 0269C580 */ _t3 = cpu->r[12] + 0x00000014u;
|
|
/* 0269C580 */ cpu->r[23] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0269C584 */ cpu->r[24] = cpu->r[24] + 0x0000475Cu;
|
|
L_0269C588: ; // 0x269c588
|
|
/* 0269C588 */ cpu->r[25] = 0x00000000u;
|
|
/* 0269C58C */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0269C58C */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 0269C590 */ cpu->r[26] = 0x00000002u;
|
|
/* 0269C594 */ cpu->r[28] = cpu->r[25];
|
|
/* 0269C598 */ cpu->r[29] = cpu->r[22] + 0xFFFFFFFCu;
|
|
L_0269C59C: ; // 0x269c59c
|
|
/* 0269C59C */ _t5 = cpu->r[31] + 0x00000000u;
|
|
/* 0269C59C */ cpu->r[8] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0269C5A0 */ cpu->r[3] = cpu->r[23];
|
|
/* 0269C5A4 */ _t6 = cpu->r[1] + 0x00000010u;
|
|
/* 0269C5A4 */ rbrew_write32(cpu->mem, _t6, cpu->r[24]);
|
|
/* 0269C5A8 */ _t7 = cpu->r[29] + 0x00000004u;
|
|
/* 0269C5A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269C5A8 */ cpu->r[29] = _t7;
|
|
/* 0269C5AC */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 0269C5AC */ rbrew_write32(cpu->mem, _t8, cpu->r[8]);
|
|
/* 0269C5B0 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269C5B4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269C5B8 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269C5B8 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 0269C5BC */ Gambit_fn_0201DB44(cpu);
|
|
/* 0269C5C0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], 0x00000003u);
|
|
/* 0269C5C4 */ cpu->r[9] = cpu->r[3];
|
|
/* 0269C5C8 */ _t10 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269C5C8 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0269C5C8 */ if (_t11) goto L_0269C5CC; else goto L_0269C5E4;
|
|
L_0269C5CC: ; // 0x269c5cc
|
|
/* 0269C5CC */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[30] * (int32_t)0x00000038u);
|
|
/* 0269C5D0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], 0x00000002u);
|
|
/* 0269C5D4 */ cpu->r[3] = cpu->r[21] + cpu->r[0];
|
|
/* 0269C5D8 */ _t12 = cpu->r[31] + 0x00000000u;
|
|
/* 0269C5D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0269C5DC */ _t13 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269C5DC */ _t14 = _t13 & 0x00000001u;
|
|
/* 0269C5DC */ if (_t14) goto L_0269C5F4; else goto L_0269C5E0;
|
|
L_0269C5E0: ; // 0x269c5e0
|
|
/* 0269C5E0 */ goto L_0269C5F8;
|
|
L_0269C5E4: ; // 0x269c5e4
|
|
/* 0269C5E4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], 0x00000002u);
|
|
/* 0269C5E8 */ _t15 = cpu->r[31] + 0x00000000u;
|
|
/* 0269C5E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0269C5EC */ cpu->r[3] = cpu->r[21];
|
|
/* 0269C5F0 */ _t16 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269C5F0 */ _t17 = _t16 & 0x00000001u;
|
|
/* 0269C5F0 */ if (_t17) goto L_0269C5F4; else goto L_0269C5E0;
|
|
L_0269C5F4: ; // 0x269c5f4
|
|
/* 0269C5F4 */ cpu->r[3] = cpu->r[3] + cpu->r[28];
|
|
L_0269C5F8: ; // 0x269c5f8
|
|
/* 0269C5F8 */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 0269C5F8 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
/* 0269C5FC */ _t19 = cpu->r[9] + 0x00000000u;
|
|
/* 0269C5FC */ cpu->r[5] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0269C600 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269C604 */ Gambit_fn_02171678(cpu);
|
|
/* 0269C608 */ cpu->r[26] = cpu->r[26] + 0xFFFFFFFFu;
|
|
/* 0269C608 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 0269C60C */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 0269C610 */ cpu->r[28] = cpu->r[28] + 0x0000001Cu;
|
|
/* 0269C614 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269C614 */ _t21 = _t20 & 0x00000001u;
|
|
/* 0269C614 */ if (_t21) goto L_0269C618; else goto L_0269C59C;
|
|
L_0269C618: ; // 0x269c618
|
|
/* 0269C618 */ cpu->r[27] = cpu->r[27] + 0xFFFFFFFFu;
|
|
/* 0269C618 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0269C61C */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 0269C620 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269C620 */ _t23 = _t22 & 0x00000001u;
|
|
/* 0269C620 */ if (_t23) goto L_0269C624; else goto L_0269C588;
|
|
L_0269C624: ; // 0x269c624
|
|
/* 0269C624 */ /* nop */
|
|
/* 0269C628 */ _t24 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0269C628 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0269C62C */ cpu->lr = cpu->r[0];
|
|
/* 0269C630 */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 0269C634 */ return;
|
|
}
|
|
|
|
// fn_0269C638 @ 0x269c638
|
|
void Gambit_fn_0269C638(CPUState* cpu) {
|
|
uint32_t _t0, _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;
|
|
|
|
L_0269C638: ; // 0x269c638
|
|
/* 0269C638 */ _t0 = cpu->r[1] + 0xFFFFFFA8u;
|
|
/* 0269C638 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269C638 */ cpu->r[1] = _t0;
|
|
/* 0269C63C */ cpu->r[0] = cpu->lr;
|
|
/* 0269C640 */ /* nop */
|
|
/* 0269C644 */ cpu->r[27] = cpu->r[3];
|
|
/* 0269C644 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0269C648 */ _t1 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0269C648 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0269C64C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269C64C */ _t3 = _t2 & 0x00000001u;
|
|
/* 0269C64C */ if (_t3) goto L_0269C650; else goto L_0269C660;
|
|
L_0269C650: ; // 0x269c650
|
|
/* 0269C650 */ cpu->r[3] = 0x00000334u;
|
|
/* 0269C654 */ Gambit_fn_02801A78(cpu);
|
|
/* 0269C658 */ cpu->r[27] = cpu->r[3];
|
|
/* 0269C658 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0269C65C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269C65C */ _t5 = _t4 & 0x00000001u;
|
|
/* 0269C65C */ if (_t5) goto L_0269CC70; else goto L_0269C660;
|
|
L_0269C660: ; // 0x269c660
|
|
/* 0269C660 */ cpu->r[3] = cpu->r[27];
|
|
/* 0269C664 */ Gambit_fn_023B3EE0(cpu);
|
|
/* 0269C668 */ cpu->r[9] = 0x100E0000u;
|
|
/* 0269C66C */ cpu->r[31] = cpu->r[27] + 0x00000248u;
|
|
/* 0269C66C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0269C670 */ cpu->r[9] = cpu->r[9] + 0x000048C0u;
|
|
/* 0269C674 */ cpu->r[26] = 0x00000000u;
|
|
/* 0269C678 */ _t6 = cpu->r[27] + 0x00000004u;
|
|
/* 0269C678 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 0269C67C */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269C67C */ _t8 = _t7 & 0x00000001u;
|
|
/* 0269C67C */ if (_t8) goto L_0269C680; else goto L_0269C690;
|
|
L_0269C680: ; // 0x269c680
|
|
/* 0269C680 */ cpu->r[3] = 0x00000038u;
|
|
/* 0269C684 */ Gambit_fn_02801A78(cpu);
|
|
/* 0269C688 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269C688 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0269C68C */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269C68C */ _t10 = _t9 & 0x00000001u;
|
|
/* 0269C68C */ if (_t10) goto L_0269C6C0; else goto L_0269C690;
|
|
L_0269C690: ; // 0x269c690
|
|
/* 0269C690 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269C694 */ Gambit_fn_027FC29C(cpu);
|
|
/* 0269C698 */ cpu->r[0] = 0x100E0000u;
|
|
/* 0269C69C */ _t11 = cpu->r[31] + 0x00000030u;
|
|
/* 0269C69C */ rbrew_write32(cpu->mem, _t11, cpu->r[26]);
|
|
/* 0269C6A0 */ cpu->r[0] = cpu->r[0] + 0x000049E8u;
|
|
/* 0269C6A4 */ _t12 = cpu->r[31] + 0x00000034u;
|
|
/* 0269C6A4 */ rbrew_write32(cpu->mem, _t12, cpu->r[26]);
|
|
/* 0269C6A8 */ _t13 = cpu->r[31] + 0x00000004u;
|
|
/* 0269C6A8 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 0269C6AC */ _t14 = cpu->r[31] + 0x00000024u;
|
|
/* 0269C6AC */ rbrew_write32(cpu->mem, _t14, cpu->r[26]);
|
|
/* 0269C6B0 */ _t15 = cpu->r[31] + 0x00000028u;
|
|
/* 0269C6B0 */ rbrew_write32(cpu->mem, _t15, cpu->r[26]);
|
|
/* 0269C6B4 */ _t16 = cpu->r[31] + 0x0000002Cu;
|
|
/* 0269C6B4 */ rbrew_write32(cpu->mem, _t16, cpu->r[26]);
|
|
/* 0269C6B8 */ _t17 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0269C6B8 */ rbrew_write32(cpu->mem, _t17, cpu->r[26]);
|
|
/* 0269C6BC */ _t18 = cpu->r[31] + 0x00000020u;
|
|
/* 0269C6BC */ rbrew_write32(cpu->mem, _t18, cpu->r[26]);
|
|
L_0269C6C0: ; // 0x269c6c0
|
|
/* 0269C6C0 */ _t19 = cpu->r[27] + 0x00000280u;
|
|
/* 0269C6C0 */ rbrew_write32(cpu->mem, _t19, cpu->r[26]);
|
|
/* 0269C6C4 */ cpu->r[6] = 0x026A0000u;
|
|
/* 0269C6C8 */ cpu->r[3] = cpu->r[27] + 0x0000028Cu;
|
|
/* 0269C6CC */ cpu->r[4] = 0x00000003u;
|
|
/* 0269C6D0 */ _t20 = cpu->r[27] + 0x00000284u;
|
|
/* 0269C6D0 */ rbrew_write32(cpu->mem, _t20, cpu->r[26]);
|
|
/* 0269C6D4 */ cpu->r[5] = 0x00000038u;
|
|
/* 0269C6D8 */ cpu->r[6] = cpu->r[6] + 0xFFFFDCC0u;
|
|
/* 0269C6DC */ _t21 = cpu->r[27] + 0x00000288u;
|
|
/* 0269C6DC */ rbrew_write8(cpu->mem, _t21, (uint8_t)cpu->r[26]);
|
|
/* 0269C6E0 */ Gambit_fn_02C82E00(cpu);
|
|
/* 0269C6E4 */ cpu->r[12] = 0x00000005u;
|
|
/* 0269C6E8 */ cpu->r[3] = cpu->r[27] + 0x00000248u;
|
|
/* 0269C6EC */ cpu->r[4] = cpu->r[27];
|
|
/* 0269C6F0 */ cpu->r[6] = 0x00000000u;
|
|
/* 0269C6F4 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0269C6F8 */ _t22 = cpu->r[1] + 0x00000008u;
|
|
/* 0269C6F8 */ rbrew_write8(cpu->mem, _t22, (uint8_t)cpu->r[12]);
|
|
/* 0269C6FC */ Gambit_fn_0269DDAC(cpu);
|
|
/* 0269C700 */ cpu->r[7] = 0x100E0000u;
|
|
/* 0269C704 */ cpu->r[25] = 0x026A0000u;
|
|
/* 0269C708 */ cpu->r[7] = cpu->r[7] + 0x0000480Cu;
|
|
/* 0269C70C */ cpu->r[28] = 0x100E0000u;
|
|
/* 0269C710 */ cpu->r[25] = cpu->r[25] + 0xFFFFD6D4u;
|
|
/* 0269C714 */ _t23 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269C714 */ rbrew_write32(cpu->mem, _t23, cpu->r[7]);
|
|
/* 0269C718 */ cpu->r[28] = cpu->r[28] + 0x0000475Cu;
|
|
/* 0269C71C */ cpu->ctr = cpu->r[25];
|
|
/* 0269C720 */ _t24 = cpu->r[1] + 0x00000010u;
|
|
/* 0269C720 */ rbrew_write32(cpu->mem, _t24, cpu->r[28]);
|
|
/* 0269C724 */ _t25 = cpu->r[27] + 0x00000260u;
|
|
/* 0269C724 */ cpu->r[24] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0269C728 */ _t26 = cpu->r[24] + 0x00000000u;
|
|
/* 0269C728 */ cpu->r[29] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0269C72C */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269C730 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0269C734 */ cpu->r[31] = 0x10110000u;
|
|
/* 0269C738 */ _t27 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269C738 */ cpu->r[12] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0269C73C */ _t28 = cpu->r[31] + 0x00007399u;
|
|
/* 0269C73C */ cpu->r[31] = rbrew_read8(cpu->mem, _t28);
|
|
/* 0269C740 */ _t29 = cpu->r[12] + 0x00000000u;
|
|
/* 0269C740 */ cpu->r[0] = rbrew_read8(cpu->mem, _t29);
|
|
/* 0269C744 */ cpu->r[30] = 0x00000000u;
|
|
/* 0269C748 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 0269C74C */ cpu->r[6] = 0x00080000u;
|
|
/* 0269C750 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269C750 */ _t31 = _t30 & 0x00000001u;
|
|
/* 0269C750 */ if (_t31) goto L_0269C778; else goto L_0269C754;
|
|
L_0269C754: ; // 0x269c754
|
|
/* 0269C754 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 0269C758 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[6]);
|
|
/* 0269C75C */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 0269C760 */ _t32 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0269C760 */ _t33 = _t32 & 0x00000001u;
|
|
/* 0269C760 */ if (_t33) goto L_0269C774; else goto L_0269C764;
|
|
L_0269C764: ; // 0x269c764
|
|
/* 0269C764 */ _t34 = cpu->r[12] + 0x00000000u;
|
|
/* 0269C764 */ cpu->r[9] = rbrew_read8(cpu->mem, _t34);
|
|
/* 0269C768 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[31]);
|
|
/* 0269C76C */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269C76C */ _t36 = _t35 & 0x00000001u;
|
|
/* 0269C76C */ if (_t36) goto L_0269C770; else goto L_0269C754;
|
|
L_0269C770: ; // 0x269c770
|
|
/* 0269C770 */ goto L_0269C778;
|
|
L_0269C774: ; // 0x269c774
|
|
/* 0269C774 */ cpu->r[30] = 0x00000000u;
|
|
L_0269C778: ; // 0x269c778
|
|
/* 0269C778 */ _t37 = cpu->r[24] + 0x00000008u;
|
|
/* 0269C778 */ cpu->r[10] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0269C77C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[10]);
|
|
/* 0269C780 */ _t38 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269C780 */ _t39 = _t38 & 0x00000001u;
|
|
/* 0269C780 */ if (_t39) goto L_0269C788; else goto L_0269C784;
|
|
L_0269C784: ; // 0x269c784
|
|
/* 0269C784 */ cpu->r[30] = cpu->r[10] + 0xFFFFFFFFu;
|
|
L_0269C788: ; // 0x269c788
|
|
/* 0269C788 */ _t40 = cpu->r[1] + 0x00000010u;
|
|
/* 0269C788 */ cpu->r[10] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0269C78C */ _t41 = cpu->r[10] + 0x00000014u;
|
|
/* 0269C78C */ cpu->r[11] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0269C790 */ cpu->ctr = cpu->r[11];
|
|
/* 0269C794 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269C798 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0269C79C */ _t42 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269C79C */ cpu->r[4] = rbrew_read32(cpu->mem, _t42);
|
|
/* 0269C7A0 */ cpu->r[6] = 0x00000000u;
|
|
/* 0269C7A4 */ cpu->r[5] = cpu->r[30];
|
|
/* 0269C7A8 */ cpu->r[3] = cpu->r[29];
|
|
/* 0269C7AC */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0269C7B0 */ _t43 = cpu->r[29] + cpu->r[30];
|
|
/* 0269C7B0 */ rbrew_write8(cpu->mem, _t43, (uint8_t)cpu->r[31]);
|
|
/* 0269C7B4 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 0269C7B8 */ _t44 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269C7B8 */ rbrew_write16(cpu->mem, _t44, (uint16_t)cpu->r[26]);
|
|
/* 0269C7BC */ cpu->r[12] = 0x026A0000u;
|
|
/* 0269C7C0 */ _t45 = cpu->r[1] + 0x0000001Eu;
|
|
/* 0269C7C0 */ rbrew_write16(cpu->mem, _t45, (uint16_t)cpu->r[0]);
|
|
/* 0269C7C4 */ cpu->r[12] = cpu->r[12] + 0xFFFFD10Cu;
|
|
/* 0269C7C8 */ _t46 = cpu->r[1] + 0x00000016u;
|
|
/* 0269C7C8 */ rbrew_write16(cpu->mem, _t46, (uint16_t)cpu->r[26]);
|
|
/* 0269C7CC */ cpu->r[0] = 0x00000000u;
|
|
/* 0269C7D0 */ _t47 = cpu->r[1] + 0x00000018u;
|
|
/* 0269C7D0 */ rbrew_write32(cpu->mem, _t47, cpu->r[26]);
|
|
/* 0269C7D4 */ cpu->r[5] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269C7D8 */ _t48 = cpu->r[1] + 0x00000028u;
|
|
/* 0269C7D8 */ rbrew_write32(cpu->mem, _t48, cpu->r[26]);
|
|
/* 0269C7DC */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 0269C7E0 */ _t49 = cpu->r[1] + 0x00000014u;
|
|
/* 0269C7E0 */ rbrew_write16(cpu->mem, _t49, (uint16_t)cpu->r[26]);
|
|
/* 0269C7E4 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 0269C7E8 */ _t50 = cpu->r[1] + 0x00000020u;
|
|
/* 0269C7E8 */ rbrew_write32(cpu->mem, _t50, cpu->r[12]);
|
|
/* 0269C7EC */ cpu->r[3] = cpu->r[27] + 0x00000248u;
|
|
/* 0269C7F0 */ _t51 = cpu->r[1] + 0x00000008u;
|
|
/* 0269C7F0 */ rbrew_write8(cpu->mem, _t51, (uint8_t)cpu->r[0]);
|
|
/* 0269C7F4 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 0269C7F8 */ _t52 = cpu->r[1] + 0x00000024u;
|
|
/* 0269C7F8 */ rbrew_write16(cpu->mem, _t52, (uint16_t)cpu->r[26]);
|
|
/* 0269C7FC */ _t53 = cpu->r[1] + 0x00000026u;
|
|
/* 0269C7FC */ rbrew_write16(cpu->mem, _t53, (uint16_t)cpu->r[26]);
|
|
/* 0269C800 */ Gambit_fn_0269E05C(cpu);
|
|
/* 0269C804 */ cpu->r[0] = 0x100E0000u;
|
|
/* 0269C808 */ _t54 = cpu->r[1] + 0x00000010u;
|
|
/* 0269C808 */ rbrew_write32(cpu->mem, _t54, cpu->r[28]);
|
|
/* 0269C80C */ cpu->r[0] = cpu->r[0] + 0x00004868u;
|
|
/* 0269C810 */ _t55 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269C810 */ rbrew_write32(cpu->mem, _t55, cpu->r[0]);
|
|
/* 0269C814 */ _t56 = cpu->r[27] + 0x0000025Cu;
|
|
/* 0269C814 */ cpu->r[5] = rbrew_read32(cpu->mem, _t56);
|
|
/* 0269C818 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], 0x00000001u);
|
|
/* 0269C81C */ _t57 = cpu->r[27] + 0x00000260u;
|
|
/* 0269C81C */ cpu->r[29] = rbrew_read32(cpu->mem, _t57);
|
|
/* 0269C820 */ _t58 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0269C820 */ _t59 = _t58 & 0x00000001u;
|
|
/* 0269C820 */ if (_t59) goto L_0269C824; else goto L_0269C828;
|
|
L_0269C824: ; // 0x269c824
|
|
/* 0269C824 */ cpu->r[29] = cpu->r[29] + 0x00000024u;
|
|
L_0269C828: ; // 0x269c828
|
|
/* 0269C828 */ cpu->ctr = cpu->r[25];
|
|
/* 0269C82C */ _t60 = cpu->r[29] + 0x00000000u;
|
|
/* 0269C82C */ cpu->r[24] = rbrew_read32(cpu->mem, _t60);
|
|
/* 0269C830 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269C834 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0269C838 */ _t61 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269C838 */ cpu->r[8] = rbrew_read32(cpu->mem, _t61);
|
|
/* 0269C83C */ _t62 = cpu->r[8] + 0x00000000u;
|
|
/* 0269C83C */ cpu->r[0] = rbrew_read8(cpu->mem, _t62);
|
|
/* 0269C840 */ cpu->r[30] = 0x00000000u;
|
|
/* 0269C844 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 0269C848 */ cpu->r[10] = 0x00080000u;
|
|
/* 0269C84C */ _t63 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269C84C */ _t64 = _t63 & 0x00000001u;
|
|
/* 0269C84C */ if (_t64) goto L_0269C874; else goto L_0269C850;
|
|
L_0269C850: ; // 0x269c850
|
|
/* 0269C850 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 0269C854 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[10]);
|
|
/* 0269C858 */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 0269C85C */ _t65 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0269C85C */ _t66 = _t65 & 0x00000001u;
|
|
/* 0269C85C */ if (_t66) goto L_0269C870; else goto L_0269C860;
|
|
L_0269C860: ; // 0x269c860
|
|
/* 0269C860 */ _t67 = cpu->r[8] + 0x00000000u;
|
|
/* 0269C860 */ cpu->r[7] = rbrew_read8(cpu->mem, _t67);
|
|
/* 0269C864 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[31]);
|
|
/* 0269C868 */ _t68 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269C868 */ _t69 = _t68 & 0x00000001u;
|
|
/* 0269C868 */ if (_t69) goto L_0269C86C; else goto L_0269C850;
|
|
L_0269C86C: ; // 0x269c86c
|
|
/* 0269C86C */ goto L_0269C874;
|
|
L_0269C870: ; // 0x269c870
|
|
/* 0269C870 */ cpu->r[30] = 0x00000000u;
|
|
L_0269C874: ; // 0x269c874
|
|
/* 0269C874 */ _t70 = cpu->r[29] + 0x00000008u;
|
|
/* 0269C874 */ cpu->r[12] = rbrew_read32(cpu->mem, _t70);
|
|
/* 0269C878 */ _t71 = cpu->r[1] + 0x00000010u;
|
|
/* 0269C878 */ cpu->r[8] = rbrew_read32(cpu->mem, _t71);
|
|
/* 0269C87C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[12]);
|
|
/* 0269C880 */ _t72 = cpu->r[8] + 0x00000014u;
|
|
/* 0269C880 */ cpu->r[9] = rbrew_read32(cpu->mem, _t72);
|
|
/* 0269C884 */ _t73 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269C884 */ _t74 = _t73 & 0x00000001u;
|
|
/* 0269C884 */ if (_t74) goto L_0269C88C; else goto L_0269C888;
|
|
L_0269C888: ; // 0x269c888
|
|
/* 0269C888 */ cpu->r[30] = cpu->r[12] + 0xFFFFFFFFu;
|
|
L_0269C88C: ; // 0x269c88c
|
|
/* 0269C88C */ cpu->ctr = cpu->r[9];
|
|
/* 0269C890 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269C894 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0269C898 */ _t75 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269C898 */ cpu->r[4] = rbrew_read32(cpu->mem, _t75);
|
|
/* 0269C89C */ cpu->r[3] = cpu->r[24];
|
|
/* 0269C8A0 */ cpu->r[5] = cpu->r[30];
|
|
/* 0269C8A4 */ cpu->r[6] = 0x00000000u;
|
|
/* 0269C8A8 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0269C8AC */ _t76 = cpu->r[24] + cpu->r[30];
|
|
/* 0269C8AC */ rbrew_write8(cpu->mem, _t76, (uint8_t)cpu->r[31]);
|
|
/* 0269C8B0 */ cpu->r[0] = 0x00000001u;
|
|
/* 0269C8B4 */ _t77 = cpu->r[1] + 0x0000001Eu;
|
|
/* 0269C8B4 */ rbrew_write16(cpu->mem, _t77, (uint16_t)cpu->r[26]);
|
|
/* 0269C8B8 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 0269C8BC */ _t78 = cpu->r[1] + 0x00000024u;
|
|
/* 0269C8BC */ rbrew_write16(cpu->mem, _t78, (uint16_t)cpu->r[26]);
|
|
/* 0269C8C0 */ cpu->r[10] = 0x026A0000u;
|
|
/* 0269C8C4 */ _t79 = cpu->r[1] + 0x00000016u;
|
|
/* 0269C8C4 */ rbrew_write16(cpu->mem, _t79, (uint16_t)cpu->r[11]);
|
|
/* 0269C8C8 */ cpu->r[10] = cpu->r[10] + 0xFFFFD2C4u;
|
|
/* 0269C8CC */ _t80 = cpu->r[1] + 0x00000020u;
|
|
/* 0269C8CC */ rbrew_write32(cpu->mem, _t80, cpu->r[26]);
|
|
/* 0269C8D0 */ _t81 = cpu->r[1] + 0x00000014u;
|
|
/* 0269C8D0 */ rbrew_write16(cpu->mem, _t81, (uint16_t)cpu->r[26]);
|
|
/* 0269C8D4 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 0269C8D8 */ _t82 = cpu->r[1] + 0x00000008u;
|
|
/* 0269C8D8 */ rbrew_write8(cpu->mem, _t82, (uint8_t)cpu->r[0]);
|
|
/* 0269C8DC */ cpu->r[3] = cpu->r[27] + 0x00000248u;
|
|
/* 0269C8E0 */ _t83 = cpu->r[1] + 0x00000028u;
|
|
/* 0269C8E0 */ rbrew_write32(cpu->mem, _t83, cpu->r[26]);
|
|
/* 0269C8E4 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 0269C8E8 */ _t84 = cpu->r[1] + 0x00000026u;
|
|
/* 0269C8E8 */ rbrew_write16(cpu->mem, _t84, (uint16_t)cpu->r[26]);
|
|
/* 0269C8EC */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269C8F0 */ _t85 = cpu->r[1] + 0x00000018u;
|
|
/* 0269C8F0 */ rbrew_write32(cpu->mem, _t85, cpu->r[10]);
|
|
/* 0269C8F4 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 0269C8F8 */ _t86 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269C8F8 */ rbrew_write16(cpu->mem, _t86, (uint16_t)cpu->r[26]);
|
|
/* 0269C8FC */ Gambit_fn_0269E05C(cpu);
|
|
/* 0269C900 */ cpu->r[0] = 0x100E0000u;
|
|
/* 0269C904 */ _t87 = cpu->r[1] + 0x00000010u;
|
|
/* 0269C904 */ rbrew_write32(cpu->mem, _t87, cpu->r[28]);
|
|
/* 0269C908 */ cpu->r[0] = cpu->r[0] + 0x00004820u;
|
|
/* 0269C90C */ _t88 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269C90C */ rbrew_write32(cpu->mem, _t88, cpu->r[0]);
|
|
/* 0269C910 */ _t89 = cpu->r[27] + 0x0000025Cu;
|
|
/* 0269C910 */ cpu->r[5] = rbrew_read32(cpu->mem, _t89);
|
|
/* 0269C914 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], 0x00000002u);
|
|
/* 0269C918 */ _t90 = cpu->r[27] + 0x00000260u;
|
|
/* 0269C918 */ cpu->r[29] = rbrew_read32(cpu->mem, _t90);
|
|
/* 0269C91C */ _t91 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0269C91C */ _t92 = _t91 & 0x00000001u;
|
|
/* 0269C91C */ if (_t92) goto L_0269C920; else goto L_0269C924;
|
|
L_0269C920: ; // 0x269c920
|
|
/* 0269C920 */ cpu->r[29] = cpu->r[29] + 0x00000048u;
|
|
L_0269C924: ; // 0x269c924
|
|
/* 0269C924 */ cpu->ctr = cpu->r[25];
|
|
/* 0269C928 */ _t93 = cpu->r[29] + 0x00000000u;
|
|
/* 0269C928 */ cpu->r[24] = rbrew_read32(cpu->mem, _t93);
|
|
/* 0269C92C */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269C930 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0269C934 */ _t94 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269C934 */ cpu->r[12] = rbrew_read32(cpu->mem, _t94);
|
|
/* 0269C938 */ _t95 = cpu->r[12] + 0x00000000u;
|
|
/* 0269C938 */ cpu->r[10] = rbrew_read8(cpu->mem, _t95);
|
|
/* 0269C93C */ cpu->r[30] = 0x00000000u;
|
|
/* 0269C940 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[31]);
|
|
/* 0269C944 */ cpu->r[6] = 0x00080000u;
|
|
/* 0269C948 */ _t96 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269C948 */ _t97 = _t96 & 0x00000001u;
|
|
/* 0269C948 */ if (_t97) goto L_0269C970; else goto L_0269C94C;
|
|
L_0269C94C: ; // 0x269c94c
|
|
/* 0269C94C */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 0269C950 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[6]);
|
|
/* 0269C954 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 0269C958 */ _t98 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0269C958 */ _t99 = _t98 & 0x00000001u;
|
|
/* 0269C958 */ if (_t99) goto L_0269C96C; else goto L_0269C95C;
|
|
L_0269C95C: ; // 0x269c95c
|
|
/* 0269C95C */ _t100 = cpu->r[12] + 0x00000000u;
|
|
/* 0269C95C */ cpu->r[0] = rbrew_read8(cpu->mem, _t100);
|
|
/* 0269C960 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 0269C964 */ _t101 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269C964 */ _t102 = _t101 & 0x00000001u;
|
|
/* 0269C964 */ if (_t102) goto L_0269C968; else goto L_0269C94C;
|
|
L_0269C968: ; // 0x269c968
|
|
/* 0269C968 */ goto L_0269C970;
|
|
L_0269C96C: ; // 0x269c96c
|
|
/* 0269C96C */ cpu->r[30] = 0x00000000u;
|
|
L_0269C970: ; // 0x269c970
|
|
/* 0269C970 */ _t103 = cpu->r[29] + 0x00000008u;
|
|
/* 0269C970 */ cpu->r[5] = rbrew_read32(cpu->mem, _t103);
|
|
/* 0269C974 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[5]);
|
|
/* 0269C978 */ _t104 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269C978 */ _t105 = _t104 & 0x00000001u;
|
|
/* 0269C978 */ if (_t105) goto L_0269C980; else goto L_0269C97C;
|
|
L_0269C97C: ; // 0x269c97c
|
|
/* 0269C97C */ cpu->r[30] = cpu->r[5] + 0xFFFFFFFFu;
|
|
L_0269C980: ; // 0x269c980
|
|
/* 0269C980 */ _t106 = cpu->r[1] + 0x00000010u;
|
|
/* 0269C980 */ cpu->r[5] = rbrew_read32(cpu->mem, _t106);
|
|
/* 0269C984 */ _t107 = cpu->r[5] + 0x00000014u;
|
|
/* 0269C984 */ cpu->r[7] = rbrew_read32(cpu->mem, _t107);
|
|
/* 0269C988 */ cpu->ctr = cpu->r[7];
|
|
/* 0269C98C */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269C990 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0269C994 */ _t108 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269C994 */ cpu->r[4] = rbrew_read32(cpu->mem, _t108);
|
|
/* 0269C998 */ cpu->r[3] = cpu->r[24];
|
|
/* 0269C99C */ cpu->r[5] = cpu->r[30];
|
|
/* 0269C9A0 */ cpu->r[6] = 0x00000000u;
|
|
/* 0269C9A4 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0269C9A8 */ _t109 = cpu->r[24] + cpu->r[30];
|
|
/* 0269C9A8 */ rbrew_write8(cpu->mem, _t109, (uint8_t)cpu->r[31]);
|
|
/* 0269C9AC */ cpu->r[8] = 0x00000002u;
|
|
/* 0269C9B0 */ _t110 = cpu->r[1] + 0x0000001Eu;
|
|
/* 0269C9B0 */ rbrew_write16(cpu->mem, _t110, (uint16_t)cpu->r[26]);
|
|
/* 0269C9B4 */ cpu->r[9] = 0xFFFFFFFFu;
|
|
/* 0269C9B8 */ _t111 = cpu->r[1] + 0x00000024u;
|
|
/* 0269C9B8 */ rbrew_write16(cpu->mem, _t111, (uint16_t)cpu->r[26]);
|
|
/* 0269C9BC */ cpu->r[0] = 0x026A0000u;
|
|
/* 0269C9C0 */ _t112 = cpu->r[1] + 0x00000016u;
|
|
/* 0269C9C0 */ rbrew_write16(cpu->mem, _t112, (uint16_t)cpu->r[9]);
|
|
/* 0269C9C4 */ cpu->r[0] = cpu->r[0] + 0xFFFFD3D8u;
|
|
/* 0269C9C8 */ _t113 = cpu->r[1] + 0x00000014u;
|
|
/* 0269C9C8 */ rbrew_write16(cpu->mem, _t113, (uint16_t)cpu->r[26]);
|
|
/* 0269C9CC */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 0269C9D0 */ _t114 = cpu->r[1] + 0x00000008u;
|
|
/* 0269C9D0 */ rbrew_write8(cpu->mem, _t114, (uint8_t)cpu->r[8]);
|
|
/* 0269C9D4 */ cpu->r[3] = cpu->r[27] + 0x00000248u;
|
|
/* 0269C9D8 */ _t115 = cpu->r[1] + 0x00000018u;
|
|
/* 0269C9D8 */ rbrew_write32(cpu->mem, _t115, cpu->r[0]);
|
|
/* 0269C9DC */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 0269C9E0 */ _t116 = cpu->r[1] + 0x00000028u;
|
|
/* 0269C9E0 */ rbrew_write32(cpu->mem, _t116, cpu->r[26]);
|
|
/* 0269C9E4 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269C9E8 */ _t117 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269C9E8 */ rbrew_write16(cpu->mem, _t117, (uint16_t)cpu->r[26]);
|
|
/* 0269C9EC */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 0269C9F0 */ _t118 = cpu->r[1] + 0x00000026u;
|
|
/* 0269C9F0 */ rbrew_write16(cpu->mem, _t118, (uint16_t)cpu->r[26]);
|
|
/* 0269C9F4 */ _t119 = cpu->r[1] + 0x00000020u;
|
|
/* 0269C9F4 */ rbrew_write32(cpu->mem, _t119, cpu->r[26]);
|
|
/* 0269C9F8 */ Gambit_fn_0269E05C(cpu);
|
|
/* 0269C9FC */ cpu->r[0] = 0x100E0000u;
|
|
/* 0269CA00 */ _t120 = cpu->r[1] + 0x00000010u;
|
|
/* 0269CA00 */ rbrew_write32(cpu->mem, _t120, cpu->r[28]);
|
|
/* 0269CA04 */ cpu->r[0] = cpu->r[0] + 0x00004834u;
|
|
/* 0269CA08 */ _t121 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269CA08 */ rbrew_write32(cpu->mem, _t121, cpu->r[0]);
|
|
/* 0269CA0C */ _t122 = cpu->r[27] + 0x0000025Cu;
|
|
/* 0269CA0C */ cpu->r[5] = rbrew_read32(cpu->mem, _t122);
|
|
/* 0269CA10 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], 0x00000003u);
|
|
/* 0269CA14 */ _t123 = cpu->r[27] + 0x00000260u;
|
|
/* 0269CA14 */ cpu->r[30] = rbrew_read32(cpu->mem, _t123);
|
|
/* 0269CA18 */ _t124 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0269CA18 */ _t125 = _t124 & 0x00000001u;
|
|
/* 0269CA18 */ if (_t125) goto L_0269CA1C; else goto L_0269CA20;
|
|
L_0269CA1C: ; // 0x269ca1c
|
|
/* 0269CA1C */ cpu->r[30] = cpu->r[30] + 0x0000006Cu;
|
|
L_0269CA20: ; // 0x269ca20
|
|
/* 0269CA20 */ cpu->ctr = cpu->r[25];
|
|
/* 0269CA24 */ _t126 = cpu->r[30] + 0x00000000u;
|
|
/* 0269CA24 */ cpu->r[24] = rbrew_read32(cpu->mem, _t126);
|
|
/* 0269CA28 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269CA2C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0269CA30 */ _t127 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269CA30 */ cpu->r[6] = rbrew_read32(cpu->mem, _t127);
|
|
/* 0269CA34 */ _t128 = cpu->r[6] + 0x00000000u;
|
|
/* 0269CA34 */ cpu->r[7] = rbrew_read8(cpu->mem, _t128);
|
|
/* 0269CA38 */ cpu->r[9] = 0x00080000u;
|
|
/* 0269CA3C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[31]);
|
|
/* 0269CA40 */ cpu->r[29] = 0x00000000u;
|
|
/* 0269CA44 */ _t129 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269CA44 */ _t130 = _t129 & 0x00000001u;
|
|
/* 0269CA44 */ if (_t130) goto L_0269CA6C; else goto L_0269CA48;
|
|
L_0269CA48: ; // 0x269ca48
|
|
/* 0269CA48 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 0269CA4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[9]);
|
|
/* 0269CA50 */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 0269CA54 */ _t131 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0269CA54 */ _t132 = _t131 & 0x00000001u;
|
|
/* 0269CA54 */ if (_t132) goto L_0269CA68; else goto L_0269CA58;
|
|
L_0269CA58: ; // 0x269ca58
|
|
/* 0269CA58 */ _t133 = cpu->r[6] + 0x00000000u;
|
|
/* 0269CA58 */ cpu->r[8] = rbrew_read8(cpu->mem, _t133);
|
|
/* 0269CA5C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[31]);
|
|
/* 0269CA60 */ _t134 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269CA60 */ _t135 = _t134 & 0x00000001u;
|
|
/* 0269CA60 */ if (_t135) goto L_0269CA64; else goto L_0269CA48;
|
|
L_0269CA64: ; // 0x269ca64
|
|
/* 0269CA64 */ goto L_0269CA6C;
|
|
L_0269CA68: ; // 0x269ca68
|
|
/* 0269CA68 */ cpu->r[29] = 0x00000000u;
|
|
L_0269CA6C: ; // 0x269ca6c
|
|
/* 0269CA6C */ _t136 = cpu->r[30] + 0x00000008u;
|
|
/* 0269CA6C */ cpu->r[8] = rbrew_read32(cpu->mem, _t136);
|
|
/* 0269CA70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[8]);
|
|
/* 0269CA74 */ _t137 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269CA74 */ _t138 = _t137 & 0x00000001u;
|
|
/* 0269CA74 */ if (_t138) goto L_0269CA7C; else goto L_0269CA78;
|
|
L_0269CA78: ; // 0x269ca78
|
|
/* 0269CA78 */ cpu->r[29] = cpu->r[8] + 0xFFFFFFFFu;
|
|
L_0269CA7C: ; // 0x269ca7c
|
|
/* 0269CA7C */ _t139 = cpu->r[1] + 0x00000010u;
|
|
/* 0269CA7C */ cpu->r[9] = rbrew_read32(cpu->mem, _t139);
|
|
/* 0269CA80 */ _t140 = cpu->r[9] + 0x00000014u;
|
|
/* 0269CA80 */ cpu->r[0] = rbrew_read32(cpu->mem, _t140);
|
|
/* 0269CA84 */ cpu->ctr = cpu->r[0];
|
|
/* 0269CA88 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269CA8C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0269CA90 */ _t141 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269CA90 */ cpu->r[4] = rbrew_read32(cpu->mem, _t141);
|
|
/* 0269CA94 */ cpu->r[6] = 0x00000000u;
|
|
/* 0269CA98 */ cpu->r[5] = cpu->r[29];
|
|
/* 0269CA9C */ cpu->r[3] = cpu->r[24];
|
|
/* 0269CAA0 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0269CAA4 */ _t142 = cpu->r[24] + cpu->r[29];
|
|
/* 0269CAA4 */ rbrew_write8(cpu->mem, _t142, (uint8_t)cpu->r[31]);
|
|
/* 0269CAA8 */ cpu->r[6] = 0x026A0000u;
|
|
/* 0269CAAC */ _t143 = cpu->r[1] + 0x00000028u;
|
|
/* 0269CAAC */ rbrew_write32(cpu->mem, _t143, cpu->r[26]);
|
|
/* 0269CAB0 */ cpu->r[6] = cpu->r[6] + 0xFFFFD4D8u;
|
|
/* 0269CAB4 */ _t144 = cpu->r[1] + 0x00000020u;
|
|
/* 0269CAB4 */ rbrew_write32(cpu->mem, _t144, cpu->r[26]);
|
|
/* 0269CAB8 */ cpu->r[0] = 0x00000003u;
|
|
/* 0269CABC */ _t145 = cpu->r[1] + 0x00000026u;
|
|
/* 0269CABC */ rbrew_write16(cpu->mem, _t145, (uint16_t)cpu->r[26]);
|
|
/* 0269CAC0 */ cpu->r[7] = 0xFFFFFFFFu;
|
|
/* 0269CAC4 */ _t146 = cpu->r[1] + 0x00000018u;
|
|
/* 0269CAC4 */ rbrew_write32(cpu->mem, _t146, cpu->r[6]);
|
|
/* 0269CAC8 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 0269CACC */ _t147 = cpu->r[1] + 0x00000016u;
|
|
/* 0269CACC */ rbrew_write16(cpu->mem, _t147, (uint16_t)cpu->r[7]);
|
|
/* 0269CAD0 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269CAD4 */ _t148 = cpu->r[1] + 0x0000001Eu;
|
|
/* 0269CAD4 */ rbrew_write16(cpu->mem, _t148, (uint16_t)cpu->r[26]);
|
|
/* 0269CAD8 */ _t149 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269CAD8 */ rbrew_write16(cpu->mem, _t149, (uint16_t)cpu->r[26]);
|
|
/* 0269CADC */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 0269CAE0 */ _t150 = cpu->r[1] + 0x00000008u;
|
|
/* 0269CAE0 */ rbrew_write8(cpu->mem, _t150, (uint8_t)cpu->r[0]);
|
|
/* 0269CAE4 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 0269CAE8 */ _t151 = cpu->r[1] + 0x00000014u;
|
|
/* 0269CAE8 */ rbrew_write16(cpu->mem, _t151, (uint16_t)cpu->r[26]);
|
|
/* 0269CAEC */ cpu->r[3] = cpu->r[27] + 0x00000248u;
|
|
/* 0269CAF0 */ _t152 = cpu->r[1] + 0x00000024u;
|
|
/* 0269CAF0 */ rbrew_write16(cpu->mem, _t152, (uint16_t)cpu->r[26]);
|
|
/* 0269CAF4 */ Gambit_fn_0269E05C(cpu);
|
|
/* 0269CAF8 */ cpu->r[0] = 0x100E0000u;
|
|
/* 0269CAFC */ _t153 = cpu->r[1] + 0x00000010u;
|
|
/* 0269CAFC */ rbrew_write32(cpu->mem, _t153, cpu->r[28]);
|
|
/* 0269CB00 */ cpu->r[0] = cpu->r[0] + 0x00004848u;
|
|
/* 0269CB04 */ _t154 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269CB04 */ rbrew_write32(cpu->mem, _t154, cpu->r[0]);
|
|
/* 0269CB08 */ _t155 = cpu->r[27] + 0x0000025Cu;
|
|
/* 0269CB08 */ cpu->r[0] = rbrew_read32(cpu->mem, _t155);
|
|
/* 0269CB0C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000004u);
|
|
/* 0269CB10 */ _t156 = cpu->r[27] + 0x00000260u;
|
|
/* 0269CB10 */ cpu->r[29] = rbrew_read32(cpu->mem, _t156);
|
|
/* 0269CB14 */ _t157 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0269CB14 */ _t158 = _t157 & 0x00000001u;
|
|
/* 0269CB14 */ if (_t158) goto L_0269CB18; else goto L_0269CB1C;
|
|
L_0269CB18: ; // 0x269cb18
|
|
/* 0269CB18 */ cpu->r[29] = cpu->r[29] + 0x00000090u;
|
|
L_0269CB1C: ; // 0x269cb1c
|
|
/* 0269CB1C */ cpu->ctr = cpu->r[25];
|
|
/* 0269CB20 */ _t159 = cpu->r[29] + 0x00000000u;
|
|
/* 0269CB20 */ cpu->r[24] = rbrew_read32(cpu->mem, _t159);
|
|
/* 0269CB24 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269CB28 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0269CB2C */ _t160 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269CB2C */ cpu->r[11] = rbrew_read32(cpu->mem, _t160);
|
|
/* 0269CB30 */ _t161 = cpu->r[11] + 0x00000000u;
|
|
/* 0269CB30 */ cpu->r[0] = rbrew_read8(cpu->mem, _t161);
|
|
/* 0269CB34 */ cpu->r[30] = 0x00000000u;
|
|
/* 0269CB38 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 0269CB3C */ cpu->r[12] = 0x00080000u;
|
|
/* 0269CB40 */ _t162 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269CB40 */ _t163 = _t162 & 0x00000001u;
|
|
/* 0269CB40 */ if (_t163) goto L_0269CB68; else goto L_0269CB44;
|
|
L_0269CB44: ; // 0x269cb44
|
|
/* 0269CB44 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 0269CB48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[12]);
|
|
/* 0269CB4C */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 0269CB50 */ _t164 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0269CB50 */ _t165 = _t164 & 0x00000001u;
|
|
/* 0269CB50 */ if (_t165) goto L_0269CB64; else goto L_0269CB54;
|
|
L_0269CB54: ; // 0x269cb54
|
|
/* 0269CB54 */ _t166 = cpu->r[11] + 0x00000000u;
|
|
/* 0269CB54 */ cpu->r[6] = rbrew_read8(cpu->mem, _t166);
|
|
/* 0269CB58 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[31]);
|
|
/* 0269CB5C */ _t167 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269CB5C */ _t168 = _t167 & 0x00000001u;
|
|
/* 0269CB5C */ if (_t168) goto L_0269CB60; else goto L_0269CB44;
|
|
L_0269CB60: ; // 0x269cb60
|
|
/* 0269CB60 */ goto L_0269CB68;
|
|
L_0269CB64: ; // 0x269cb64
|
|
/* 0269CB64 */ cpu->r[30] = 0x00000000u;
|
|
L_0269CB68: ; // 0x269cb68
|
|
/* 0269CB68 */ _t169 = cpu->r[29] + 0x00000008u;
|
|
/* 0269CB68 */ cpu->r[9] = rbrew_read32(cpu->mem, _t169);
|
|
/* 0269CB6C */ _t170 = cpu->r[1] + 0x00000010u;
|
|
/* 0269CB6C */ cpu->r[7] = rbrew_read32(cpu->mem, _t170);
|
|
/* 0269CB70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[9]);
|
|
/* 0269CB74 */ _t171 = cpu->r[7] + 0x00000014u;
|
|
/* 0269CB74 */ cpu->r[8] = rbrew_read32(cpu->mem, _t171);
|
|
/* 0269CB78 */ _t172 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269CB78 */ _t173 = _t172 & 0x00000001u;
|
|
/* 0269CB78 */ if (_t173) goto L_0269CB80; else goto L_0269CB7C;
|
|
L_0269CB7C: ; // 0x269cb7c
|
|
/* 0269CB7C */ cpu->r[30] = cpu->r[9] + 0xFFFFFFFFu;
|
|
L_0269CB80: ; // 0x269cb80
|
|
/* 0269CB80 */ cpu->ctr = cpu->r[8];
|
|
/* 0269CB84 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269CB88 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0269CB8C */ _t174 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269CB8C */ cpu->r[4] = rbrew_read32(cpu->mem, _t174);
|
|
/* 0269CB90 */ cpu->r[6] = 0x00000000u;
|
|
/* 0269CB94 */ cpu->r[5] = cpu->r[30];
|
|
/* 0269CB98 */ cpu->r[3] = cpu->r[24];
|
|
/* 0269CB9C */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0269CBA0 */ _t175 = cpu->r[24] + cpu->r[30];
|
|
/* 0269CBA0 */ rbrew_write8(cpu->mem, _t175, (uint8_t)cpu->r[31]);
|
|
/* 0269CBA4 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 0269CBA8 */ _t176 = cpu->r[1] + 0x00000026u;
|
|
/* 0269CBA8 */ rbrew_write16(cpu->mem, _t176, (uint16_t)cpu->r[26]);
|
|
/* 0269CBAC */ cpu->r[10] = 0x026A0000u;
|
|
/* 0269CBB0 */ _t177 = cpu->r[1] + 0x0000001Eu;
|
|
/* 0269CBB0 */ rbrew_write16(cpu->mem, _t177, (uint16_t)cpu->r[26]);
|
|
/* 0269CBB4 */ cpu->r[0] = 0x00000004u;
|
|
/* 0269CBB8 */ _t178 = cpu->r[1] + 0x00000016u;
|
|
/* 0269CBB8 */ rbrew_write16(cpu->mem, _t178, (uint16_t)cpu->r[11]);
|
|
/* 0269CBBC */ cpu->r[10] = cpu->r[10] + 0xFFFFD5C0u;
|
|
/* 0269CBC0 */ _t179 = cpu->r[1] + 0x00000020u;
|
|
/* 0269CBC0 */ rbrew_write32(cpu->mem, _t179, cpu->r[26]);
|
|
/* 0269CBC4 */ _t180 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269CBC4 */ rbrew_write16(cpu->mem, _t180, (uint16_t)cpu->r[26]);
|
|
/* 0269CBC8 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269CBCC */ _t181 = cpu->r[1] + 0x00000028u;
|
|
/* 0269CBCC */ rbrew_write32(cpu->mem, _t181, cpu->r[26]);
|
|
/* 0269CBD0 */ cpu->r[3] = cpu->r[27] + 0x00000248u;
|
|
/* 0269CBD4 */ _t182 = cpu->r[1] + 0x00000008u;
|
|
/* 0269CBD4 */ rbrew_write8(cpu->mem, _t182, (uint8_t)cpu->r[0]);
|
|
/* 0269CBD8 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 0269CBDC */ _t183 = cpu->r[1] + 0x00000014u;
|
|
/* 0269CBDC */ rbrew_write16(cpu->mem, _t183, (uint16_t)cpu->r[26]);
|
|
/* 0269CBE0 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 0269CBE4 */ _t184 = cpu->r[1] + 0x00000018u;
|
|
/* 0269CBE4 */ rbrew_write32(cpu->mem, _t184, cpu->r[10]);
|
|
/* 0269CBE8 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 0269CBEC */ _t185 = cpu->r[1] + 0x00000024u;
|
|
/* 0269CBEC */ rbrew_write16(cpu->mem, _t185, (uint16_t)cpu->r[26]);
|
|
/* 0269CBF0 */ Gambit_fn_0269E05C(cpu);
|
|
/* 0269CBF4 */ _t186 = cpu->r[27] + 0x00000256u;
|
|
/* 0269CBF4 */ cpu->r[4] = rbrew_read8(cpu->mem, _t186);
|
|
/* 0269CBF8 */ cpu->r[3] = cpu->r[27] + 0x00000248u;
|
|
/* 0269CBFC */ /* nop */
|
|
/* 0269CC00 */ Gambit_fn_027FC35C(cpu);
|
|
/* 0269CC04 */ cpu->r[3] = cpu->r[27] + 0x00000248u;
|
|
/* 0269CC08 */ Gambit_fn_0269E0E4(cpu);
|
|
/* 0269CC0C */ _t187 = cpu->r[1] + 0x00000010u;
|
|
/* 0269CC0C */ rbrew_write32(cpu->mem, _t187, cpu->r[28]);
|
|
/* 0269CC10 */ cpu->r[12] = 0x100E0000u;
|
|
/* 0269CC14 */ cpu->r[0] = 0x100E0000u;
|
|
/* 0269CC18 */ _t188 = cpu->r[1] + 0x00000030u;
|
|
/* 0269CC18 */ rbrew_write32(cpu->mem, _t188, cpu->r[28]);
|
|
/* 0269CC1C */ cpu->r[12] = cpu->r[12] + 0x0000487Cu;
|
|
/* 0269CC20 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269CC24 */ cpu->r[0] = cpu->r[0] + 0x0000485Cu;
|
|
/* 0269CC28 */ _t189 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269CC28 */ rbrew_write32(cpu->mem, _t189, cpu->r[12]);
|
|
/* 0269CC2C */ cpu->r[5] = cpu->r[1] + 0x0000002Cu;
|
|
/* 0269CC30 */ cpu->r[3] = 0x00000000u;
|
|
/* 0269CC34 */ _t190 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0269CC34 */ rbrew_write32(cpu->mem, _t190, cpu->r[0]);
|
|
/* 0269CC38 */ Gambit_fn_020176C8(cpu);
|
|
/* 0269CC3C */ cpu->r[5] = 0x00000001u;
|
|
/* 0269CC40 */ _t191 = cpu->r[27] + 0x00000280u;
|
|
/* 0269CC40 */ rbrew_write32(cpu->mem, _t191, cpu->r[3]);
|
|
/* 0269CC44 */ cpu->r[4] = 0x00000000u;
|
|
/* 0269CC48 */ cpu->r[3] = cpu->r[27];
|
|
/* 0269CC4C */ Gambit_fn_0269DD54(cpu);
|
|
/* 0269CC50 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0269CC54 */ _t192 = cpu->r[12] + 0xFFFF8080u;
|
|
/* 0269CC54 */ cpu->r[12] = rbrew_read32(cpu->mem, _t192);
|
|
/* 0269CC58 */ cpu->r[5] = cpu->r[27] + cpu->r[12];
|
|
/* 0269CC5C */ _t193 = cpu->r[5] + 0x00000104u;
|
|
/* 0269CC5C */ cpu->r[4] = rbrew_read8(cpu->mem, _t193);
|
|
/* 0269CC60 */ cpu->r[3] = cpu->r[27];
|
|
/* 0269CC64 */ Gambit_fn_027910F0(cpu);
|
|
/* 0269CC68 */ cpu->r[3] = cpu->r[27];
|
|
/* 0269CC6C */ Gambit_fn_0269C54C(cpu);
|
|
L_0269CC70: ; // 0x269cc70
|
|
/* 0269CC70 */ cpu->r[3] = cpu->r[27];
|
|
/* 0269CC74 */ /* nop */
|
|
/* 0269CC78 */ _t194 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0269CC78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t194);
|
|
/* 0269CC7C */ cpu->lr = cpu->r[0];
|
|
/* 0269CC80 */ cpu->r[1] = cpu->r[1] + 0x00000058u;
|
|
/* 0269CC84 */ return;
|
|
}
|
|
|
|
// fn_0269CC88 @ 0x269cc88
|
|
void Gambit_fn_0269CC88(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34;
|
|
|
|
L_0269CC88: ; // 0x269cc88
|
|
/* 0269CC88 */ cpu->r[0] = cpu->lr;
|
|
/* 0269CC8C */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 0269CC8C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269CC8C */ cpu->r[1] = _t0;
|
|
/* 0269CC90 */ _t1 = cpu->r[1] + 0x00000018u;
|
|
/* 0269CC90 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0269CC94 */ cpu->r[30] = cpu->r[3];
|
|
/* 0269CC98 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269CC98 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0269CC9C */ _t3 = cpu->r[1] + 0x00000024u;
|
|
/* 0269CC9C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269CCA0 */ Gambit_fn_027FAD44(cpu);
|
|
/* 0269CCA4 */ cpu->r[10] = 0x100E0000u;
|
|
/* 0269CCA8 */ cpu->r[0] = 0x100E0000u;
|
|
/* 0269CCAC */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 0269CCAC */ rbrew_write32(cpu->mem, _t4, cpu->r[3]);
|
|
/* 0269CCB0 */ cpu->r[10] = cpu->r[10] + 0x0000475Cu;
|
|
/* 0269CCB4 */ cpu->r[0] = cpu->r[0] + 0x00004894u;
|
|
/* 0269CCB8 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 0269CCB8 */ rbrew_write32(cpu->mem, _t5, cpu->r[10]);
|
|
/* 0269CCBC */ _t6 = cpu->r[1] + 0x00000010u;
|
|
/* 0269CCBC */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0269CCC0 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0269CCC4 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269CCC4 */ rbrew_write32(cpu->mem, _t7, cpu->r[10]);
|
|
/* 0269CCC8 */ Gambit_fn_0269D6D4(cpu);
|
|
/* 0269CCCC */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269CCCC */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0269CCD0 */ _t9 = cpu->r[12] + 0x00000014u;
|
|
/* 0269CCD0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269CCD4 */ cpu->ctr = cpu->r[9];
|
|
/* 0269CCD8 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0269CCDC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0269CCE0 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0269CCE0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269CCE4 */ _t11 = cpu->r[10] + 0x00000014u;
|
|
/* 0269CCE4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0269CCE8 */ cpu->ctr = cpu->r[11];
|
|
/* 0269CCEC */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 0269CCEC */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0269CCF0 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 0269CCF4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0269CCF8 */ _t13 = cpu->r[1] + 0x00000010u;
|
|
/* 0269CCF8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0269CCFC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[12]);
|
|
/* 0269CD00 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269CD00 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0269CD00 */ if (_t15) goto L_0269CD5C; else goto L_0269CD04;
|
|
L_0269CD04: ; // 0x269cd04
|
|
/* 0269CD04 */ cpu->r[0] = 0x00080000u;
|
|
/* 0269CD08 */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 0269CD08 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0269CD0C */ cpu->r[0] = cpu->r[0] | 0x00000001u;
|
|
/* 0269CD10 */ _t17 = cpu->r[1] + 0x00000010u;
|
|
/* 0269CD10 */ cpu->r[10] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0269CD14 */ cpu->r[12] = 0x10110000u;
|
|
/* 0269CD18 */ cpu->ctr = cpu->r[0];
|
|
/* 0269CD1C */ _t18 = cpu->r[12] + 0x00007399u;
|
|
/* 0269CD1C */ cpu->r[12] = rbrew_read8(cpu->mem, _t18);
|
|
/* 0269CD20 */ cpu->r[10] = cpu->r[10] + 0xFFFFFFFFu;
|
|
L_0269CD24: ; // 0x269cd24
|
|
/* 0269CD24 */ _t19 = cpu->r[11] + 0x00000000u;
|
|
/* 0269CD24 */ cpu->r[0] = rbrew_read8(cpu->mem, _t19);
|
|
/* 0269CD28 */ _t20 = cpu->r[10] + 0x00000001u;
|
|
/* 0269CD28 */ cpu->r[9] = rbrew_read8(cpu->mem, _t20);
|
|
/* 0269CD28 */ cpu->r[10] = _t20;
|
|
/* 0269CD2C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[9]);
|
|
/* 0269CD30 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269CD30 */ _t22 = _t21 & 0x00000001u;
|
|
/* 0269CD30 */ if (_t22) goto L_0269CD34; else goto L_0269CD64;
|
|
L_0269CD34: ; // 0x269cd34
|
|
/* 0269CD34 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[12]);
|
|
/* 0269CD38 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269CD38 */ _t24 = _t23 & 0x00000001u;
|
|
/* 0269CD38 */ if (_t24) goto L_0269CD5C; else goto L_0269CD3C;
|
|
L_0269CD3C: ; // 0x269cd3c
|
|
/* 0269CD3C */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 0269CD40 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0269CD40 */ _t25 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0269CD40 */ _t26 = _t25 >> (0x00000002u & 31u);
|
|
/* 0269CD40 */ _t27 = _t26 & 0x00000001u;
|
|
/* 0269CD40 */ if (_t27) goto L_0269CD24; else goto L_0269CD44;
|
|
L_0269CD44: ; // 0x269cd44
|
|
/* 0269CD44 */ _t28 = cpu->r[1] + 0x00000024u;
|
|
/* 0269CD44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0269CD48 */ _t29 = cpu->r[1] + 0x00000018u;
|
|
/* 0269CD48 */ cpu->r[30] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0269CD4C */ cpu->lr = cpu->r[0];
|
|
/* 0269CD50 */ _t30 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269CD50 */ cpu->r[31] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0269CD54 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 0269CD58 */ return;
|
|
L_0269CD5C: ; // 0x269cd5c
|
|
/* 0269CD5C */ cpu->r[9] = 0x00000001u;
|
|
/* 0269CD60 */ _t31 = cpu->r[30] + 0x00000288u;
|
|
/* 0269CD60 */ rbrew_write8(cpu->mem, _t31, (uint8_t)cpu->r[9]);
|
|
L_0269CD64: ; // 0x269cd64
|
|
/* 0269CD64 */ _t32 = cpu->r[1] + 0x00000024u;
|
|
/* 0269CD64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0269CD68 */ _t33 = cpu->r[1] + 0x00000018u;
|
|
/* 0269CD68 */ cpu->r[30] = rbrew_read32(cpu->mem, _t33);
|
|
/* 0269CD6C */ cpu->lr = cpu->r[0];
|
|
/* 0269CD70 */ _t34 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269CD70 */ cpu->r[31] = rbrew_read32(cpu->mem, _t34);
|
|
/* 0269CD74 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 0269CD78 */ return;
|
|
}
|
|
|
|
// fn_0269CC8C @ 0x269cc8c
|
|
void Gambit_fn_0269CC8C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34;
|
|
|
|
L_0269CC8C: ; // 0x269cc8c
|
|
/* 0269CC8C */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 0269CC8C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269CC8C */ cpu->r[1] = _t0;
|
|
/* 0269CC90 */ _t1 = cpu->r[1] + 0x00000018u;
|
|
/* 0269CC90 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0269CC94 */ cpu->r[30] = cpu->r[3];
|
|
/* 0269CC98 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269CC98 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0269CC9C */ _t3 = cpu->r[1] + 0x00000024u;
|
|
/* 0269CC9C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269CCA0 */ Gambit_fn_027FAD44(cpu);
|
|
/* 0269CCA4 */ cpu->r[10] = 0x100E0000u;
|
|
/* 0269CCA8 */ cpu->r[0] = 0x100E0000u;
|
|
/* 0269CCAC */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 0269CCAC */ rbrew_write32(cpu->mem, _t4, cpu->r[3]);
|
|
/* 0269CCB0 */ cpu->r[10] = cpu->r[10] + 0x0000475Cu;
|
|
/* 0269CCB4 */ cpu->r[0] = cpu->r[0] + 0x00004894u;
|
|
/* 0269CCB8 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 0269CCB8 */ rbrew_write32(cpu->mem, _t5, cpu->r[10]);
|
|
/* 0269CCBC */ _t6 = cpu->r[1] + 0x00000010u;
|
|
/* 0269CCBC */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0269CCC0 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0269CCC4 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269CCC4 */ rbrew_write32(cpu->mem, _t7, cpu->r[10]);
|
|
/* 0269CCC8 */ Gambit_fn_0269D6D4(cpu);
|
|
/* 0269CCCC */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269CCCC */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0269CCD0 */ _t9 = cpu->r[12] + 0x00000014u;
|
|
/* 0269CCD0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269CCD4 */ cpu->ctr = cpu->r[9];
|
|
/* 0269CCD8 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0269CCDC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0269CCE0 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0269CCE0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269CCE4 */ _t11 = cpu->r[10] + 0x00000014u;
|
|
/* 0269CCE4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0269CCE8 */ cpu->ctr = cpu->r[11];
|
|
/* 0269CCEC */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 0269CCEC */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0269CCF0 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 0269CCF4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0269CCF8 */ _t13 = cpu->r[1] + 0x00000010u;
|
|
/* 0269CCF8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0269CCFC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[12]);
|
|
/* 0269CD00 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269CD00 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0269CD00 */ if (_t15) goto L_0269CD5C; else goto L_0269CD04;
|
|
L_0269CD04: ; // 0x269cd04
|
|
/* 0269CD04 */ cpu->r[0] = 0x00080000u;
|
|
/* 0269CD08 */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 0269CD08 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0269CD0C */ cpu->r[0] = cpu->r[0] | 0x00000001u;
|
|
/* 0269CD10 */ _t17 = cpu->r[1] + 0x00000010u;
|
|
/* 0269CD10 */ cpu->r[10] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0269CD14 */ cpu->r[12] = 0x10110000u;
|
|
/* 0269CD18 */ cpu->ctr = cpu->r[0];
|
|
/* 0269CD1C */ _t18 = cpu->r[12] + 0x00007399u;
|
|
/* 0269CD1C */ cpu->r[12] = rbrew_read8(cpu->mem, _t18);
|
|
/* 0269CD20 */ cpu->r[10] = cpu->r[10] + 0xFFFFFFFFu;
|
|
L_0269CD24: ; // 0x269cd24
|
|
/* 0269CD24 */ _t19 = cpu->r[11] + 0x00000000u;
|
|
/* 0269CD24 */ cpu->r[0] = rbrew_read8(cpu->mem, _t19);
|
|
/* 0269CD28 */ _t20 = cpu->r[10] + 0x00000001u;
|
|
/* 0269CD28 */ cpu->r[9] = rbrew_read8(cpu->mem, _t20);
|
|
/* 0269CD28 */ cpu->r[10] = _t20;
|
|
/* 0269CD2C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[9]);
|
|
/* 0269CD30 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269CD30 */ _t22 = _t21 & 0x00000001u;
|
|
/* 0269CD30 */ if (_t22) goto L_0269CD34; else goto L_0269CD64;
|
|
L_0269CD34: ; // 0x269cd34
|
|
/* 0269CD34 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[12]);
|
|
/* 0269CD38 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269CD38 */ _t24 = _t23 & 0x00000001u;
|
|
/* 0269CD38 */ if (_t24) goto L_0269CD5C; else goto L_0269CD3C;
|
|
L_0269CD3C: ; // 0x269cd3c
|
|
/* 0269CD3C */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 0269CD40 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0269CD40 */ _t25 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0269CD40 */ _t26 = _t25 >> (0x00000002u & 31u);
|
|
/* 0269CD40 */ _t27 = _t26 & 0x00000001u;
|
|
/* 0269CD40 */ if (_t27) goto L_0269CD24; else goto L_0269CD44;
|
|
L_0269CD44: ; // 0x269cd44
|
|
/* 0269CD44 */ _t28 = cpu->r[1] + 0x00000024u;
|
|
/* 0269CD44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0269CD48 */ _t29 = cpu->r[1] + 0x00000018u;
|
|
/* 0269CD48 */ cpu->r[30] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0269CD4C */ cpu->lr = cpu->r[0];
|
|
/* 0269CD50 */ _t30 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269CD50 */ cpu->r[31] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0269CD54 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 0269CD58 */ return;
|
|
L_0269CD5C: ; // 0x269cd5c
|
|
/* 0269CD5C */ cpu->r[9] = 0x00000001u;
|
|
/* 0269CD60 */ _t31 = cpu->r[30] + 0x00000288u;
|
|
/* 0269CD60 */ rbrew_write8(cpu->mem, _t31, (uint8_t)cpu->r[9]);
|
|
L_0269CD64: ; // 0x269cd64
|
|
/* 0269CD64 */ _t32 = cpu->r[1] + 0x00000024u;
|
|
/* 0269CD64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0269CD68 */ _t33 = cpu->r[1] + 0x00000018u;
|
|
/* 0269CD68 */ cpu->r[30] = rbrew_read32(cpu->mem, _t33);
|
|
/* 0269CD6C */ cpu->lr = cpu->r[0];
|
|
/* 0269CD70 */ _t34 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269CD70 */ cpu->r[31] = rbrew_read32(cpu->mem, _t34);
|
|
/* 0269CD74 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 0269CD78 */ return;
|
|
}
|
|
|
|
// fn_0269CD7C @ 0x269cd7c
|
|
void Gambit_fn_0269CD7C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_0269CD7C: ; // 0x269cd7c
|
|
/* 0269CD7C */ cpu->r[0] = cpu->lr;
|
|
/* 0269CD80 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 0269CD80 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269CD80 */ cpu->r[1] = _t0;
|
|
/* 0269CD84 */ _t1 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269CD84 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0269CD88 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269CD8C */ _t2 = cpu->r[1] + 0x00000018u;
|
|
/* 0269CD8C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0269CD90 */ cpu->r[4] = 0x00000000u;
|
|
/* 0269CD94 */ _t3 = cpu->r[1] + 0x00000024u;
|
|
/* 0269CD94 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269CD98 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0269CD9C */ _t4 = cpu->r[31] + 0x00000284u;
|
|
/* 0269CD9C */ rbrew_write32(cpu->mem, _t4, cpu->r[4]);
|
|
/* 0269CDA0 */ _t5 = cpu->r[3] + 0x00000E14u;
|
|
/* 0269CDA0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0269CDA4 */ Gambit_fn_0200CBD8(cpu);
|
|
/* 0269CDA8 */ cpu->r[4] = 0x00000000u;
|
|
/* 0269CDAC */ cpu->r[5] = cpu->r[4];
|
|
/* 0269CDB0 */ Gambit_fn_02014758(cpu);
|
|
/* 0269CDB4 */ cpu->r[9] = 0x100E0000u;
|
|
/* 0269CDB8 */ cpu->r[0] = 0x00000002u;
|
|
/* 0269CDBC */ _t6 = cpu->r[9] + 0x000046ECu;
|
|
/* 0269CDBC */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0269CDC0 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269CDC4 */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 0269CDC4 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 0269CDC8 */ cpu->r[0] = 0x00000004u;
|
|
/* 0269CDCC */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269CDCC */ rbrew_write32(cpu->mem, _t8, cpu->r[12]);
|
|
/* 0269CDD0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269CDD4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269CDD8 */ _t9 = cpu->r[1] + 0x00000010u;
|
|
/* 0269CDD8 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 0269CDDC */ Gambit_fn_02791774(cpu);
|
|
/* 0269CDE0 */ _t10 = cpu->r[31] + 0x00000230u;
|
|
/* 0269CDE0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269CDE4 */ cpu->r[10] = cpu->r[10] | 0x00000004u;
|
|
/* 0269CDE8 */ _t11 = cpu->r[31] + 0x00000230u;
|
|
/* 0269CDE8 */ rbrew_write32(cpu->mem, _t11, cpu->r[10]);
|
|
/* 0269CDEC */ _t12 = cpu->r[1] + 0x00000024u;
|
|
/* 0269CDEC */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0269CDF0 */ _t13 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269CDF0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0269CDF4 */ cpu->lr = cpu->r[0];
|
|
/* 0269CDF8 */ _t14 = cpu->r[1] + 0x00000018u;
|
|
/* 0269CDF8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0269CDFC */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 0269CE00 */ return;
|
|
}
|
|
|
|
// fn_0269CD80 @ 0x269cd80
|
|
void Gambit_fn_0269CD80(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_0269CD80: ; // 0x269cd80
|
|
/* 0269CD80 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 0269CD80 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269CD80 */ cpu->r[1] = _t0;
|
|
/* 0269CD84 */ _t1 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269CD84 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0269CD88 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269CD8C */ _t2 = cpu->r[1] + 0x00000018u;
|
|
/* 0269CD8C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0269CD90 */ cpu->r[4] = 0x00000000u;
|
|
/* 0269CD94 */ _t3 = cpu->r[1] + 0x00000024u;
|
|
/* 0269CD94 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269CD98 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0269CD9C */ _t4 = cpu->r[31] + 0x00000284u;
|
|
/* 0269CD9C */ rbrew_write32(cpu->mem, _t4, cpu->r[4]);
|
|
/* 0269CDA0 */ _t5 = cpu->r[3] + 0x00000E14u;
|
|
/* 0269CDA0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0269CDA4 */ Gambit_fn_0200CBD8(cpu);
|
|
/* 0269CDA8 */ cpu->r[4] = 0x00000000u;
|
|
/* 0269CDAC */ cpu->r[5] = cpu->r[4];
|
|
/* 0269CDB0 */ Gambit_fn_02014758(cpu);
|
|
/* 0269CDB4 */ cpu->r[9] = 0x100E0000u;
|
|
/* 0269CDB8 */ cpu->r[0] = 0x00000002u;
|
|
/* 0269CDBC */ _t6 = cpu->r[9] + 0x000046ECu;
|
|
/* 0269CDBC */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0269CDC0 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269CDC4 */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 0269CDC4 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 0269CDC8 */ cpu->r[0] = 0x00000004u;
|
|
/* 0269CDCC */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269CDCC */ rbrew_write32(cpu->mem, _t8, cpu->r[12]);
|
|
/* 0269CDD0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269CDD4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269CDD8 */ _t9 = cpu->r[1] + 0x00000010u;
|
|
/* 0269CDD8 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 0269CDDC */ Gambit_fn_02791774(cpu);
|
|
/* 0269CDE0 */ _t10 = cpu->r[31] + 0x00000230u;
|
|
/* 0269CDE0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269CDE4 */ cpu->r[10] = cpu->r[10] | 0x00000004u;
|
|
/* 0269CDE8 */ _t11 = cpu->r[31] + 0x00000230u;
|
|
/* 0269CDE8 */ rbrew_write32(cpu->mem, _t11, cpu->r[10]);
|
|
/* 0269CDEC */ _t12 = cpu->r[1] + 0x00000024u;
|
|
/* 0269CDEC */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0269CDF0 */ _t13 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269CDF0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0269CDF4 */ cpu->lr = cpu->r[0];
|
|
/* 0269CDF8 */ _t14 = cpu->r[1] + 0x00000018u;
|
|
/* 0269CDF8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0269CDFC */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 0269CE00 */ return;
|
|
}
|
|
|
|
// fn_0269CE04 @ 0x269ce04
|
|
void Gambit_fn_0269CE04(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0269CE04: ; // 0x269ce04
|
|
/* 0269CE04 */ cpu->r[0] = cpu->lr;
|
|
/* 0269CE08 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0269CE08 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269CE08 */ cpu->r[1] = _t0;
|
|
/* 0269CE0C */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0269CE0C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0269CE10 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269CE14 */ cpu->r[3] = cpu->r[31] + 0x00000248u;
|
|
/* 0269CE18 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269CE18 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0269CE1C */ Gambit_fn_0269E1F4(cpu);
|
|
/* 0269CE20 */ cpu->r[10] = 0x100E0000u;
|
|
/* 0269CE24 */ cpu->r[9] = 0x00000006u;
|
|
/* 0269CE28 */ _t3 = cpu->r[10] + 0x000046FCu;
|
|
/* 0269CE28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0269CE2C */ cpu->r[12] = 0x00000004u;
|
|
/* 0269CE30 */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 0269CE30 */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
/* 0269CE34 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269CE38 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0269CE38 */ rbrew_write32(cpu->mem, _t5, cpu->r[12]);
|
|
/* 0269CE3C */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269CE40 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269CE44 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269CE44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0269CE48 */ Gambit_fn_02791888(cpu);
|
|
/* 0269CE4C */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 0269CE4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269CE50 */ cpu->r[0] = cpu->r[0] | 0x00000040u;
|
|
/* 0269CE54 */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0269CE54 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0269CE58 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269CE58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269CE5C */ cpu->lr = cpu->r[0];
|
|
/* 0269CE60 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0269CE60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269CE64 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269CE68 */ return;
|
|
}
|
|
|
|
// fn_0269CE08 @ 0x269ce08
|
|
void Gambit_fn_0269CE08(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0269CE08: ; // 0x269ce08
|
|
/* 0269CE08 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0269CE08 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269CE08 */ cpu->r[1] = _t0;
|
|
/* 0269CE0C */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0269CE0C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0269CE10 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269CE14 */ cpu->r[3] = cpu->r[31] + 0x00000248u;
|
|
/* 0269CE18 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269CE18 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0269CE1C */ Gambit_fn_0269E1F4(cpu);
|
|
/* 0269CE20 */ cpu->r[10] = 0x100E0000u;
|
|
/* 0269CE24 */ cpu->r[9] = 0x00000006u;
|
|
/* 0269CE28 */ _t3 = cpu->r[10] + 0x000046FCu;
|
|
/* 0269CE28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0269CE2C */ cpu->r[12] = 0x00000004u;
|
|
/* 0269CE30 */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 0269CE30 */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
/* 0269CE34 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269CE38 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0269CE38 */ rbrew_write32(cpu->mem, _t5, cpu->r[12]);
|
|
/* 0269CE3C */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269CE40 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269CE44 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269CE44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0269CE48 */ Gambit_fn_02791888(cpu);
|
|
/* 0269CE4C */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 0269CE4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269CE50 */ cpu->r[0] = cpu->r[0] | 0x00000040u;
|
|
/* 0269CE54 */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0269CE54 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0269CE58 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269CE58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269CE5C */ cpu->lr = cpu->r[0];
|
|
/* 0269CE60 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0269CE60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269CE64 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269CE68 */ return;
|
|
}
|
|
|
|
// fn_0269CE6C @ 0x269ce6c
|
|
void Gambit_fn_0269CE6C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_0269CE6C: ; // 0x269ce6c
|
|
/* 0269CE6C */ cpu->r[0] = cpu->lr;
|
|
/* 0269CE70 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0269CE70 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269CE70 */ cpu->r[1] = _t0;
|
|
/* 0269CE74 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269CE74 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0269CE78 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269CE7C */ cpu->r[3] = 0x101D0000u;
|
|
/* 0269CE80 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0269CE80 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0269CE84 */ _t3 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 0269CE84 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0269CE88 */ Gambit_fn_02826F20(cpu);
|
|
/* 0269CE8C */ cpu->r[12] = 0x101C0000u;
|
|
/* 0269CE90 */ _t4 = cpu->r[12] + 0x000044E4u;
|
|
/* 0269CE90 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269CE94 */ cpu->r[5] = cpu->r[3];
|
|
/* 0269CE98 */ _t5 = cpu->r[12] + 0x00000254u;
|
|
/* 0269CE98 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0269CE9C */ cpu->r[4] = cpu->r[31] + 0x00000248u;
|
|
/* 0269CEA0 */ Gambit_fn_027B8F9C(cpu);
|
|
/* 0269CEA4 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 0269CEA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0269CEA8 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269CEA8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269CEAC */ cpu->lr = cpu->r[0];
|
|
/* 0269CEB0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0269CEB4 */ return;
|
|
}
|
|
|
|
// fn_0269CE70 @ 0x269ce70
|
|
void Gambit_fn_0269CE70(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_0269CE70: ; // 0x269ce70
|
|
/* 0269CE70 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0269CE70 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269CE70 */ cpu->r[1] = _t0;
|
|
/* 0269CE74 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269CE74 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0269CE78 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269CE7C */ cpu->r[3] = 0x101D0000u;
|
|
/* 0269CE80 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0269CE80 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0269CE84 */ _t3 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 0269CE84 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0269CE88 */ Gambit_fn_02826F20(cpu);
|
|
/* 0269CE8C */ cpu->r[12] = 0x101C0000u;
|
|
/* 0269CE90 */ _t4 = cpu->r[12] + 0x000044E4u;
|
|
/* 0269CE90 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269CE94 */ cpu->r[5] = cpu->r[3];
|
|
/* 0269CE98 */ _t5 = cpu->r[12] + 0x00000254u;
|
|
/* 0269CE98 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0269CE9C */ cpu->r[4] = cpu->r[31] + 0x00000248u;
|
|
/* 0269CEA0 */ Gambit_fn_027B8F9C(cpu);
|
|
/* 0269CEA4 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 0269CEA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0269CEA8 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269CEA8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269CEAC */ cpu->lr = cpu->r[0];
|
|
/* 0269CEB0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0269CEB4 */ return;
|
|
}
|
|
|
|
// fn_0269CEB8 @ 0x269ceb8
|
|
void Gambit_fn_0269CEB8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_0200EC2C: ; // 0x200ec2c
|
|
/* 0200EC2C */ cpu->r[0] = cpu->lr;
|
|
/* 0200EC30 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0200EC30 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0200EC30 */ cpu->r[1] = _t0;
|
|
/* 0200EC34 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0200EC34 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0200EC38 */ cpu->r[31] = cpu->r[3];
|
|
/* 0200EC3C */ cpu->r[3] = 0x101C0000u;
|
|
/* 0200EC40 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0200EC40 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0200EC44 */ _t3 = cpu->r[3] + 0x00000E14u;
|
|
/* 0200EC44 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0200EC48 */ Gambit_fn_0200CBD8(cpu);
|
|
/* 0200EC4C */ cpu->r[4] = cpu->r[3];
|
|
/* 0200EC50 */ cpu->r[3] = cpu->r[31];
|
|
/* 0200EC54 */ Gambit_fn_0200EBDC(cpu);
|
|
/* 0200EC58 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0200EC58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0200EC5C */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0200EC5C */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0200EC60 */ cpu->lr = cpu->r[0];
|
|
/* 0200EC64 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0200EC68 */ return;
|
|
L_0269CEB8: ; // 0x269ceb8
|
|
/* 0269CEB8 */ _t6 = cpu->r[3] + 0x00000280u;
|
|
/* 0269CEB8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0269CEBC */ cpu->r[4] = 0x00000000u;
|
|
/* 0269CEC0 */ goto L_0200EC2C;
|
|
}
|
|
|
|
// fn_0269CEC4 @ 0x269cec4
|
|
void Gambit_fn_0269CEC4(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_0269CEC4: ; // 0x269cec4
|
|
/* 0269CEC4 */ cpu->r[0] = cpu->lr;
|
|
/* 0269CEC8 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 0269CEC8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269CEC8 */ cpu->r[1] = _t0;
|
|
/* 0269CECC */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0269CECC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0269CED0 */ cpu->r[3] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269CED4 */ _t2 = cpu->r[1] + 0x00000034u;
|
|
/* 0269CED4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0269CED8 */ Gambit_fn_02175308(cpu);
|
|
/* 0269CEDC */ cpu->r[11] = 0x101C0000u;
|
|
/* 0269CEE0 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0269CEE4 */ _t3 = cpu->r[11] + 0x00001344u;
|
|
/* 0269CEE4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0269CEE8 */ cpu->r[10] = 0x00000002u;
|
|
/* 0269CEEC */ _t4 = cpu->r[12] + 0xFFFF8070u;
|
|
/* 0269CEEC */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269CEF0 */ cpu->r[0] = 0x100E0000u;
|
|
/* 0269CEF4 */ _t5 = cpu->r[11] + 0x00000014u;
|
|
/* 0269CEF4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0269CEF8 */ cpu->r[0] = cpu->r[0] + 0x0000475Cu;
|
|
/* 0269CEFC */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 0269CEFC */ rbrew_write32(cpu->mem, _t6, cpu->r[10]);
|
|
/* 0269CF00 */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 0269CF00 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269CF04 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269CF08 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 0269CF08 */ rbrew_write32(cpu->mem, _t8, cpu->r[12]);
|
|
/* 0269CF0C */ _t9 = cpu->r[1] + 0x00000018u;
|
|
/* 0269CF0C */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 0269CF10 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 0269CF14 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269CF14 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 0269CF18 */ Gambit_fn_0201DB44(cpu);
|
|
/* 0269CF1C */ cpu->r[12] = cpu->r[3];
|
|
/* 0269CF1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0269CF20 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269CF20 */ _t12 = _t11 & 0x00000001u;
|
|
/* 0269CF20 */ if (_t12) goto L_0269CF64; else goto L_0269CF24;
|
|
L_0269CF24: ; // 0x269cf24
|
|
/* 0269CF24 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 0269CF24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0269CF28 */ cpu->r[3] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269CF2C */ _t14 = cpu->r[1] + 0x00000010u;
|
|
/* 0269CF2C */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
/* 0269CF30 */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 0269CF30 */ cpu->r[5] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0269CF34 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 0269CF38 */ Gambit_fn_0217575C(cpu);
|
|
/* 0269CF3C */ cpu->r[31] = cpu->r[3];
|
|
/* 0269CF40 */ cpu->r[4] = 0x00000002u;
|
|
/* 0269CF44 */ cpu->r[3] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269CF48 */ Gambit_fn_021753A0(cpu);
|
|
/* 0269CF4C */ _t16 = cpu->r[1] + 0x00000034u;
|
|
/* 0269CF4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0269CF50 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269CF54 */ _t17 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0269CF54 */ cpu->r[31] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0269CF58 */ cpu->lr = cpu->r[0];
|
|
/* 0269CF5C */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 0269CF60 */ return;
|
|
L_0269CF64: ; // 0x269cf64
|
|
/* 0269CF64 */ cpu->r[3] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269CF68 */ cpu->r[4] = 0x00000002u;
|
|
/* 0269CF6C */ Gambit_fn_021753A0(cpu);
|
|
/* 0269CF70 */ _t18 = cpu->r[1] + 0x00000034u;
|
|
/* 0269CF70 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0269CF74 */ _t19 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0269CF74 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0269CF78 */ cpu->lr = cpu->r[0];
|
|
/* 0269CF7C */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 0269CF80 */ cpu->r[3] = 0x00000000u;
|
|
/* 0269CF84 */ return;
|
|
}
|
|
|
|
// fn_0269CEC8 @ 0x269cec8
|
|
void Gambit_fn_0269CEC8(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_0269CEC8: ; // 0x269cec8
|
|
/* 0269CEC8 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 0269CEC8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269CEC8 */ cpu->r[1] = _t0;
|
|
/* 0269CECC */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0269CECC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0269CED0 */ cpu->r[3] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269CED4 */ _t2 = cpu->r[1] + 0x00000034u;
|
|
/* 0269CED4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0269CED8 */ Gambit_fn_02175308(cpu);
|
|
/* 0269CEDC */ cpu->r[11] = 0x101C0000u;
|
|
/* 0269CEE0 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0269CEE4 */ _t3 = cpu->r[11] + 0x00001344u;
|
|
/* 0269CEE4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0269CEE8 */ cpu->r[10] = 0x00000002u;
|
|
/* 0269CEEC */ _t4 = cpu->r[12] + 0xFFFF8070u;
|
|
/* 0269CEEC */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269CEF0 */ cpu->r[0] = 0x100E0000u;
|
|
/* 0269CEF4 */ _t5 = cpu->r[11] + 0x00000014u;
|
|
/* 0269CEF4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0269CEF8 */ cpu->r[0] = cpu->r[0] + 0x0000475Cu;
|
|
/* 0269CEFC */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 0269CEFC */ rbrew_write32(cpu->mem, _t6, cpu->r[10]);
|
|
/* 0269CF00 */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 0269CF00 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269CF04 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269CF08 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 0269CF08 */ rbrew_write32(cpu->mem, _t8, cpu->r[12]);
|
|
/* 0269CF0C */ _t9 = cpu->r[1] + 0x00000018u;
|
|
/* 0269CF0C */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 0269CF10 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 0269CF14 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269CF14 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 0269CF18 */ Gambit_fn_0201DB44(cpu);
|
|
/* 0269CF1C */ cpu->r[12] = cpu->r[3];
|
|
/* 0269CF1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0269CF20 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269CF20 */ _t12 = _t11 & 0x00000001u;
|
|
/* 0269CF20 */ if (_t12) goto L_0269CF64; else goto L_0269CF24;
|
|
L_0269CF24: ; // 0x269cf24
|
|
/* 0269CF24 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 0269CF24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0269CF28 */ cpu->r[3] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269CF2C */ _t14 = cpu->r[1] + 0x00000010u;
|
|
/* 0269CF2C */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
/* 0269CF30 */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 0269CF30 */ cpu->r[5] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0269CF34 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 0269CF38 */ Gambit_fn_0217575C(cpu);
|
|
/* 0269CF3C */ cpu->r[31] = cpu->r[3];
|
|
/* 0269CF40 */ cpu->r[4] = 0x00000002u;
|
|
/* 0269CF44 */ cpu->r[3] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269CF48 */ Gambit_fn_021753A0(cpu);
|
|
/* 0269CF4C */ _t16 = cpu->r[1] + 0x00000034u;
|
|
/* 0269CF4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0269CF50 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269CF54 */ _t17 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0269CF54 */ cpu->r[31] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0269CF58 */ cpu->lr = cpu->r[0];
|
|
/* 0269CF5C */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 0269CF60 */ return;
|
|
L_0269CF64: ; // 0x269cf64
|
|
/* 0269CF64 */ cpu->r[3] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269CF68 */ cpu->r[4] = 0x00000002u;
|
|
/* 0269CF6C */ Gambit_fn_021753A0(cpu);
|
|
/* 0269CF70 */ _t18 = cpu->r[1] + 0x00000034u;
|
|
/* 0269CF70 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0269CF74 */ _t19 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0269CF74 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0269CF78 */ cpu->lr = cpu->r[0];
|
|
/* 0269CF7C */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 0269CF80 */ cpu->r[3] = 0x00000000u;
|
|
/* 0269CF84 */ return;
|
|
}
|
|
|
|
// fn_0269CF88 @ 0x269cf88
|
|
void Gambit_fn_0269CF88(CPUState* cpu) {
|
|
uint32_t _t0, _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_0269CF88: ; // 0x269cf88
|
|
/* 0269CF88 */ cpu->r[12] = 0xFFFF0000u;
|
|
/* 0269CF8C */ cpu->r[12] = cpu->r[12] + 0x00005A58u;
|
|
/* 0269CF90 */ _t0 = cpu->r[1] + cpu->r[12];
|
|
/* 0269CF90 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269CF90 */ cpu->r[1] = _t0;
|
|
/* 0269CF94 */ cpu->r[12] = cpu->r[1] + 0x00010000u;
|
|
/* 0269CF98 */ /* nop */
|
|
/* 0269CF9C */ cpu->r[0] = cpu->lr;
|
|
/* 0269CFA0 */ _t1 = cpu->r[12] + 0xFFFFA5ACu;
|
|
/* 0269CFA0 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0269CFA4 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0269CFA8 */ cpu->r[30] = cpu->r[3];
|
|
/* 0269CFAC */ _t2 = cpu->r[12] + 0x00001344u;
|
|
/* 0269CFAC */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0269CFB0 */ cpu->r[3] = cpu->r[1] + 0x00000028u;
|
|
/* 0269CFB4 */ _t3 = cpu->r[12] + 0x00000014u;
|
|
/* 0269CFB4 */ cpu->r[20] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0269CFB8 */ Gambit_fn_02176834(cpu);
|
|
/* 0269CFBC */ cpu->r[28] = 0x101D0000u;
|
|
/* 0269CFC0 */ cpu->r[29] = 0x100E0000u;
|
|
/* 0269CFC4 */ cpu->r[28] = cpu->r[28] + 0xFFFF8070u;
|
|
/* 0269CFC8 */ cpu->r[29] = cpu->r[29] + 0x0000475Cu;
|
|
/* 0269CFCC */ cpu->r[22] = 0x00000003u;
|
|
/* 0269CFD0 */ cpu->r[31] = 0x00000000u;
|
|
L_0269CFD4: ; // 0x269cfd4
|
|
/* 0269CFD4 */ cpu->r[26] = 0x00000000u;
|
|
/* 0269CFD8 */ cpu->r[24] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269CFDC */ cpu->r[21] = 0x00000002u;
|
|
/* 0269CFE0 */ cpu->r[27] = cpu->r[26];
|
|
/* 0269CFE4 */ cpu->r[25] = cpu->r[28] + 0xFFFFFFFCu;
|
|
/* 0269CFE8 */ cpu->r[23] = cpu->r[26];
|
|
/* 0269CFEC */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269CFEC */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
L_0269CFF0: ; // 0x269cff0
|
|
/* 0269CFF0 */ _t5 = cpu->r[24] + 0x00000000u;
|
|
/* 0269CFF0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0269CFF4 */ cpu->r[3] = cpu->r[20];
|
|
/* 0269CFF8 */ _t6 = cpu->r[1] + 0x00000010u;
|
|
/* 0269CFF8 */ rbrew_write32(cpu->mem, _t6, cpu->r[29]);
|
|
/* 0269CFFC */ _t7 = cpu->r[25] + 0x00000004u;
|
|
/* 0269CFFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269CFFC */ cpu->r[25] = _t7;
|
|
/* 0269D000 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 0269D000 */ rbrew_write32(cpu->mem, _t8, cpu->r[12]);
|
|
/* 0269D004 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269D008 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 0269D00C */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269D00C */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 0269D010 */ Gambit_fn_0201DB44(cpu);
|
|
/* 0269D014 */ cpu->r[19] = cpu->r[3];
|
|
/* 0269D014 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[19], 0x00000000u);
|
|
/* 0269D018 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269D018 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0269D018 */ if (_t11) goto L_0269D0C4; else goto L_0269D01C;
|
|
L_0269D01C: ; // 0x269d01c
|
|
/* 0269D01C */ _t12 = cpu->r[24] + 0x00000000u;
|
|
/* 0269D01C */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0269D020 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269D024 */ cpu->r[3] = cpu->r[1] + 0x00000028u;
|
|
/* 0269D028 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 0269D028 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 0269D02C */ _t14 = cpu->r[19] + 0x00000000u;
|
|
/* 0269D02C */ cpu->r[5] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0269D030 */ cpu->r[6] = 0x00000001u;
|
|
/* 0269D034 */ Gambit_fn_02175F78(cpu);
|
|
/* 0269D038 */ _t15 = cpu->r[24] + 0x00000000u;
|
|
/* 0269D038 */ cpu->r[7] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0269D03C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269D040 */ _t16 = cpu->r[1] + 0x00000018u;
|
|
/* 0269D040 */ rbrew_write32(cpu->mem, _t16, cpu->r[27]);
|
|
/* 0269D044 */ cpu->r[3] = cpu->r[1] + 0x00000028u;
|
|
/* 0269D048 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 0269D048 */ rbrew_write32(cpu->mem, _t17, cpu->r[7]);
|
|
/* 0269D04C */ _t18 = cpu->r[19] + 0x00000000u;
|
|
/* 0269D04C */ cpu->r[5] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0269D050 */ cpu->r[7] = 0x00000000u;
|
|
/* 0269D054 */ cpu->r[6] = cpu->r[1] + 0x00000018u;
|
|
/* 0269D058 */ Gambit_fn_02176BAC(cpu);
|
|
/* 0269D05C */ cpu->r[6] = 0x00000000u;
|
|
/* 0269D060 */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 0269D064 */ cpu->r[5] = cpu->r[6];
|
|
/* 0269D068 */ Gambit_fn_02838654(cpu);
|
|
/* 0269D06C */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 0269D070 */ Gambit_fn_02838564(cpu);
|
|
/* 0269D074 */ _t19 = cpu->r[24] + 0x00000000u;
|
|
/* 0269D074 */ cpu->r[5] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0269D078 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269D07C */ cpu->r[3] = cpu->r[1] + 0x00000028u;
|
|
/* 0269D080 */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 0269D080 */ rbrew_write32(cpu->mem, _t20, cpu->r[5]);
|
|
/* 0269D084 */ _t21 = cpu->r[19] + 0x00000000u;
|
|
/* 0269D084 */ cpu->r[5] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0269D088 */ cpu->r[6] = cpu->r[1] + 0x00000020u;
|
|
/* 0269D08C */ Gambit_fn_02176B5C(cpu);
|
|
/* 0269D090 */ _t22 = cpu->r[24] + 0x00000000u;
|
|
/* 0269D090 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0269D094 */ cpu->r[5] = cpu->r[30] + 0x0000028Cu;
|
|
/* 0269D098 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], 0x00000003u);
|
|
/* 0269D09C */ _t23 = cpu->r[1] + 0x00000008u;
|
|
/* 0269D09C */ rbrew_write32(cpu->mem, _t23, cpu->r[0]);
|
|
/* 0269D0A0 */ _t24 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269D0A0 */ _t25 = _t24 & 0x00000001u;
|
|
/* 0269D0A0 */ if (_t25) goto L_0269D0A4; else goto L_0269D0AC;
|
|
L_0269D0A4: ; // 0x269d0a4
|
|
/* 0269D0A4 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[31] * (int32_t)0x00000038u);
|
|
/* 0269D0A8 */ cpu->r[5] = cpu->r[5] + cpu->r[0];
|
|
L_0269D0AC: ; // 0x269d0ac
|
|
/* 0269D0AC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], 0x00000002u);
|
|
/* 0269D0B0 */ _t26 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269D0B0 */ _t27 = _t26 & 0x00000001u;
|
|
/* 0269D0B0 */ if (_t27) goto L_0269D0B4; else goto L_0269D0B8;
|
|
L_0269D0B4: ; // 0x269d0b4
|
|
/* 0269D0B4 */ cpu->r[5] = cpu->r[5] + cpu->r[23];
|
|
L_0269D0B8: ; // 0x269d0b8
|
|
/* 0269D0B8 */ cpu->r[3] = cpu->r[1] + 0x00000028u;
|
|
/* 0269D0BC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269D0C0 */ Gambit_fn_02176CD0(cpu);
|
|
L_0269D0C4: ; // 0x269d0c4
|
|
/* 0269D0C4 */ cpu->r[21] = cpu->r[21] + 0xFFFFFFFFu;
|
|
/* 0269D0C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], 0x00000000u);
|
|
/* 0269D0C8 */ cpu->r[26] = cpu->r[26] + 0x00000001u;
|
|
/* 0269D0CC */ cpu->r[23] = cpu->r[23] + 0x0000001Cu;
|
|
/* 0269D0D0 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269D0D0 */ _t29 = _t28 & 0x00000001u;
|
|
/* 0269D0D0 */ if (_t29) goto L_0269D0D4; else goto L_0269CFF0;
|
|
L_0269D0D4: ; // 0x269d0d4
|
|
/* 0269D0D4 */ cpu->r[22] = cpu->r[22] + 0xFFFFFFFFu;
|
|
/* 0269D0D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[22], 0x00000000u);
|
|
/* 0269D0D8 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 0269D0DC */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269D0DC */ _t31 = _t30 & 0x00000001u;
|
|
/* 0269D0DC */ if (_t31) goto L_0269D0E0; else goto L_0269CFD4;
|
|
L_0269D0E0: ; // 0x269d0e0
|
|
/* 0269D0E0 */ cpu->r[3] = cpu->r[1] + 0x00000028u;
|
|
/* 0269D0E4 */ Gambit_fn_02176920(cpu);
|
|
/* 0269D0E8 */ cpu->r[3] = cpu->r[1] + 0x00000028u;
|
|
/* 0269D0EC */ cpu->r[4] = 0x00000002u;
|
|
/* 0269D0F0 */ Gambit_fn_0217690C(cpu);
|
|
/* 0269D0F4 */ cpu->r[12] = cpu->r[1] + 0x00010000u;
|
|
/* 0269D0F8 */ /* nop */
|
|
/* 0269D0FC */ _t32 = cpu->r[12] + 0xFFFFA5ACu;
|
|
/* 0269D0FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0269D100 */ cpu->lr = cpu->r[0];
|
|
/* 0269D104 */ _t33 = cpu->r[1] + 0x00000000u;
|
|
/* 0269D104 */ cpu->r[1] = rbrew_read32(cpu->mem, _t33);
|
|
/* 0269D108 */ return;
|
|
}
|
|
|
|
// fn_0269D10C @ 0x269d10c
|
|
void Gambit_fn_0269D10C(CPUState* cpu) {
|
|
uint32_t _t0, _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_0269D10C: ; // 0x269d10c
|
|
/* 0269D10C */ _t0 = cpu->r[1] + 0xFFFFFF88u;
|
|
/* 0269D10C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269D10C */ cpu->r[1] = _t0;
|
|
/* 0269D110 */ /* nop */
|
|
/* 0269D114 */ cpu->r[0] = cpu->lr;
|
|
/* 0269D118 */ _t1 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0269D118 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0269D11C */ cpu->r[29] = cpu->r[3];
|
|
/* 0269D120 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0269D124 */ _t2 = cpu->r[29] + 0x00000250u;
|
|
/* 0269D124 */ cpu->r[9] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0269D128 */ _t3 = cpu->r[12] + 0xFFFF806Cu;
|
|
/* 0269D128 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0269D12C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0269D130 */ _t4 = cpu->r[12] + 0x000002D8u;
|
|
/* 0269D130 */ cpu->r[28] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269D134 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269D134 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0269D134 */ if (_t6) goto L_0269D138; else goto L_0269D140;
|
|
L_0269D138: ; // 0x269d138
|
|
/* 0269D138 */ cpu->r[3] = cpu->r[28];
|
|
/* 0269D13C */ Gambit_fn_024596D0(cpu);
|
|
L_0269D140: ; // 0x269d140
|
|
/* 0269D140 */ cpu->r[11] = 0x101C0000u;
|
|
/* 0269D144 */ cpu->r[10] = 0x101C0000u;
|
|
/* 0269D148 */ _t7 = cpu->r[11] + 0x00006000u;
|
|
/* 0269D148 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269D14C */ _t8 = cpu->r[10] + 0x0000660Cu;
|
|
/* 0269D14C */ cpu->r[10] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0269D150 */ _t9 = cpu->r[11] + 0x00000264u;
|
|
/* 0269D150 */ cpu->r[11] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269D154 */ cpu->r[12] = cpu->r[11] + cpu->r[10];
|
|
/* 0269D158 */ _t10 = cpu->r[12] + 0x00000104u;
|
|
/* 0269D158 */ cpu->r[7] = rbrew_read8(cpu->mem, _t10);
|
|
/* 0269D15C */ _t11 = cpu->r[11] + 0x00000030u;
|
|
/* 0269D15C */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0269D160 */ cpu->r[9] = rbrew_rlwinm(cpu->r[7], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0269D164 */ _t12 = cpu->r[9] + cpu->r[0];
|
|
/* 0269D164 */ cpu->r[11] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0269D168 */ _t13 = cpu->r[11] + 0x00000004u;
|
|
/* 0269D168 */ cpu->r[12] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0269D16C */ _t14 = cpu->r[12] + 0x00000000u;
|
|
/* 0269D16C */ cpu->r[27] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0269D170 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0269D174 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269D174 */ _t16 = _t15 & 0x00000001u;
|
|
/* 0269D174 */ if (_t16) goto L_0269D238; else goto L_0269D178;
|
|
L_0269D178: ; // 0x269d178
|
|
/* 0269D178 */ _t17 = cpu->r[29] + 0x00000284u;
|
|
/* 0269D178 */ cpu->r[4] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0269D17C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000017u);
|
|
/* 0269D180 */ _t18 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269D180 */ _t19 = _t18 & 0x00000001u;
|
|
/* 0269D180 */ if (_t19) goto L_0269D184; else goto L_0269D238;
|
|
L_0269D184: ; // 0x269d184
|
|
/* 0269D184 */ cpu->r[30] = 0x10110000u;
|
|
/* 0269D188 */ cpu->r[31] = cpu->r[1] + 0x00000014u;
|
|
/* 0269D18C */ _t20 = cpu->r[30] + 0x00007399u;
|
|
/* 0269D18C */ cpu->r[30] = rbrew_read8(cpu->mem, _t20);
|
|
/* 0269D190 */ cpu->r[26] = 0x00000040u;
|
|
L_0269D194: ; // 0x269d194
|
|
/* 0269D194 */ cpu->r[3] = cpu->r[28];
|
|
/* 0269D198 */ Gambit_fn_024596E8(cpu);
|
|
/* 0269D19C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0269D1A0 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269D1A0 */ _t22 = _t21 & 0x00000001u;
|
|
/* 0269D1A0 */ if (_t22) goto L_0269D238; else goto L_0269D1A4;
|
|
L_0269D1A4: ; // 0x269d1a4
|
|
/* 0269D1A4 */ _t23 = cpu->r[31] + 0x0000003Fu;
|
|
/* 0269D1A4 */ rbrew_write8(cpu->mem, _t23, (uint8_t)cpu->r[30]);
|
|
/* 0269D1A8 */ cpu->r[7] = 0x100E0000u;
|
|
/* 0269D1AC */ _t24 = cpu->r[1] + 0x00000010u;
|
|
/* 0269D1AC */ rbrew_write32(cpu->mem, _t24, cpu->r[26]);
|
|
/* 0269D1B0 */ cpu->r[7] = cpu->r[7] + 0x000047A4u;
|
|
/* 0269D1B4 */ _t25 = cpu->r[29] + 0x00000284u;
|
|
/* 0269D1B4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0269D1B8 */ cpu->r[4] = 0x100E0000u;
|
|
/* 0269D1BC */ _t26 = cpu->r[31] + 0x00000000u;
|
|
/* 0269D1BC */ rbrew_write8(cpu->mem, _t26, (uint8_t)cpu->r[30]);
|
|
/* 0269D1C0 */ cpu->r[4] = cpu->r[4] + 0x000048A4u;
|
|
/* 0269D1C4 */ _t27 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269D1C4 */ rbrew_write32(cpu->mem, _t27, cpu->r[7]);
|
|
/* 0269D1C8 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0269D1CC */ _t28 = cpu->r[1] + 0x00000008u;
|
|
/* 0269D1CC */ rbrew_write32(cpu->mem, _t28, cpu->r[31]);
|
|
/* 0269D1D0 */ _t29 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 0269D1D0 */ _t30 = _t29 & 0x00000001u;
|
|
/* 0269D1D0 */ if (_t30) goto L_0269D1D4; // else: addr-0 trap, fall-through
|
|
L_0269D1D4: ; // 0x269d1d4
|
|
/* 0269D1D4 */ Gambit_fn_0282A5F4(cpu);
|
|
/* 0269D1D8 */ _t31 = cpu->r[27] + 0x00000008u;
|
|
/* 0269D1D8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0269D1DC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269D1E0 */ Gambit_fn_02980A18(cpu);
|
|
/* 0269D1E4 */ cpu->r[0] = cpu->r[3];
|
|
/* 0269D1E8 */ /* nop */
|
|
/* 0269D1EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0xFFFFFFFFu);
|
|
/* 0269D1F0 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269D1F0 */ _t33 = _t32 & 0x00000001u;
|
|
/* 0269D1F0 */ if (_t33) goto L_0269D220; else goto L_0269D1F4;
|
|
L_0269D1F4: ; // 0x269d1f4
|
|
/* 0269D1F4 */ /* nop */
|
|
/* 0269D1F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 0269D1FC */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269D1FC */ _t35 = _t34 & 0x00000001u;
|
|
/* 0269D1FC */ if (_t35) goto L_0269D220; else goto L_0269D200;
|
|
L_0269D200: ; // 0x269d200
|
|
/* 0269D200 */ _t36 = cpu->r[29] + 0x00000284u;
|
|
/* 0269D200 */ cpu->r[4] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0269D204 */ cpu->r[3] = cpu->r[28];
|
|
/* 0269D208 */ Gambit_fn_02459700(cpu);
|
|
/* 0269D20C */ cpu->r[6] = cpu->r[3];
|
|
/* 0269D210 */ _t37 = cpu->r[27] + 0x00000008u;
|
|
/* 0269D210 */ cpu->r[3] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0269D214 */ cpu->r[5] = 0x00000000u;
|
|
/* 0269D218 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269D21C */ Gambit_fn_02800960(cpu);
|
|
L_0269D220: ; // 0x269d220
|
|
/* 0269D220 */ _t38 = cpu->r[29] + 0x00000284u;
|
|
/* 0269D220 */ cpu->r[10] = rbrew_read32(cpu->mem, _t38);
|
|
/* 0269D224 */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 0269D228 */ _t39 = cpu->r[29] + 0x00000284u;
|
|
/* 0269D228 */ rbrew_write32(cpu->mem, _t39, cpu->r[10]);
|
|
/* 0269D22C */ _t40 = cpu->r[29] + 0x00000284u;
|
|
/* 0269D22C */ cpu->r[4] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0269D230 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000017u);
|
|
/* 0269D234 */ _t41 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269D234 */ _t42 = _t41 & 0x00000001u;
|
|
/* 0269D234 */ if (_t42) goto L_0269D194; else goto L_0269D238;
|
|
L_0269D238: ; // 0x269d238
|
|
/* 0269D238 */ _t43 = cpu->r[29] + 0x00000250u;
|
|
/* 0269D238 */ cpu->r[0] = rbrew_read32(cpu->mem, _t43);
|
|
/* 0269D23C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x000025BCu);
|
|
/* 0269D240 */ _t44 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269D240 */ _t45 = _t44 & 0x00000001u;
|
|
/* 0269D240 */ if (_t45) goto L_0269D264; else goto L_0269D244;
|
|
L_0269D244: ; // 0x269d244
|
|
/* 0269D244 */ cpu->r[3] = cpu->r[29] + 0x00000248u;
|
|
/* 0269D248 */ cpu->r[4] = 0x00000001u;
|
|
/* 0269D24C */ Gambit_fn_0269E2EC(cpu);
|
|
/* 0269D250 */ /* nop */
|
|
/* 0269D254 */ _t46 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0269D254 */ cpu->r[0] = rbrew_read32(cpu->mem, _t46);
|
|
/* 0269D258 */ cpu->lr = cpu->r[0];
|
|
/* 0269D25C */ cpu->r[1] = cpu->r[1] + 0x00000078u;
|
|
/* 0269D260 */ return;
|
|
L_0269D264: ; // 0x269d264
|
|
/* 0269D264 */ _t47 = cpu->r[29] + 0x00000288u;
|
|
/* 0269D264 */ cpu->r[8] = rbrew_read8(cpu->mem, _t47);
|
|
/* 0269D268 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0269D26C */ _t48 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269D26C */ _t49 = _t48 & 0x00000001u;
|
|
/* 0269D26C */ if (_t49) goto L_0269D2B0; else goto L_0269D270;
|
|
L_0269D270: ; // 0x269d270
|
|
/* 0269D270 */ Gambit_fn_027DF9A0(cpu);
|
|
/* 0269D274 */ _t50 = cpu->r[3] + 0x0000008Cu;
|
|
/* 0269D274 */ cpu->r[0] = rbrew_read32(cpu->mem, _t50);
|
|
/* 0269D278 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000015u, 0x00000015u);
|
|
/* 0269D278 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0269D27C */ _t51 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269D27C */ _t52 = _t51 & 0x00000001u;
|
|
/* 0269D27C */ if (_t52) goto L_0269D2B0; else goto L_0269D280;
|
|
L_0269D280: ; // 0x269d280
|
|
/* 0269D280 */ cpu->r[3] = cpu->r[29];
|
|
/* 0269D284 */ Gambit_fn_0269CEC4(cpu);
|
|
/* 0269D288 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0269D28C */ _t53 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269D28C */ _t54 = _t53 & 0x00000001u;
|
|
/* 0269D28C */ if (_t54) goto L_0269D2B0; else goto L_0269D290;
|
|
L_0269D290: ; // 0x269d290
|
|
/* 0269D290 */ cpu->r[7] = 0x100E0000u;
|
|
/* 0269D294 */ cpu->r[8] = 0x100E0000u;
|
|
/* 0269D298 */ cpu->r[7] = cpu->r[7] + 0x0000475Cu;
|
|
/* 0269D29C */ cpu->r[8] = cpu->r[8] + 0x0000489Cu;
|
|
/* 0269D2A0 */ _t55 = cpu->r[1] + 0x00000058u;
|
|
/* 0269D2A0 */ rbrew_write32(cpu->mem, _t55, cpu->r[7]);
|
|
/* 0269D2A4 */ cpu->r[3] = cpu->r[1] + 0x00000054u;
|
|
/* 0269D2A8 */ _t56 = cpu->r[1] + 0x00000054u;
|
|
/* 0269D2A8 */ rbrew_write32(cpu->mem, _t56, cpu->r[8]);
|
|
/* 0269D2AC */ Gambit_fn_027FAB30(cpu);
|
|
L_0269D2B0: ; // 0x269d2b0
|
|
/* 0269D2B0 */ /* nop */
|
|
/* 0269D2B4 */ _t57 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0269D2B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t57);
|
|
/* 0269D2B8 */ cpu->lr = cpu->r[0];
|
|
/* 0269D2BC */ cpu->r[1] = cpu->r[1] + 0x00000078u;
|
|
/* 0269D2C0 */ return;
|
|
}
|
|
|
|
// fn_0269D2C8 @ 0x269d2c8
|
|
void Gambit_fn_0269D2C8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30;
|
|
|
|
L_0269D2C8: ; // 0x269d2c8
|
|
/* 0269D2C8 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0269D2C8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269D2C8 */ cpu->r[1] = _t0;
|
|
/* 0269D2CC */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 0269D2CC */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0269D2D0 */ cpu->r[30] = cpu->r[3];
|
|
/* 0269D2D4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0269D2D4 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0269D2D8 */ cpu->r[3] = 0x101D0000u;
|
|
/* 0269D2DC */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269D2DC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269D2E0 */ _t4 = cpu->r[3] + 0xFFFF806Cu;
|
|
/* 0269D2E0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269D2E4 */ Gambit_fn_0269C0FC(cpu);
|
|
/* 0269D2E8 */ _t5 = cpu->r[30] + 0x00000250u;
|
|
/* 0269D2E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0269D2EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0269D2F0 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269D2F4 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269D2F4 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0269D2F4 */ if (_t7) goto L_0269D2F8; else goto L_0269D300;
|
|
L_0269D2F8: ; // 0x269d2f8
|
|
/* 0269D2F8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269D2FC */ Gambit_fn_0209A920(cpu);
|
|
L_0269D300: ; // 0x269d300
|
|
/* 0269D300 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269D304 */ Gambit_fn_0209A908(cpu);
|
|
/* 0269D308 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0269D30C */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269D30C */ _t9 = _t8 & 0x00000001u;
|
|
/* 0269D30C */ if (_t9) goto L_0269D3A8; else goto L_0269D310;
|
|
L_0269D310: ; // 0x269d310
|
|
/* 0269D310 */ cpu->r[3] = cpu->r[30];
|
|
/* 0269D314 */ Gambit_fn_0269CEC4(cpu);
|
|
/* 0269D318 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0269D31C */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269D31C */ _t11 = _t10 & 0x00000001u;
|
|
/* 0269D31C */ if (_t11) goto L_0269D320; else goto L_0269D344;
|
|
L_0269D320: ; // 0x269d320
|
|
/* 0269D320 */ cpu->r[3] = cpu->r[30] + 0x00000248u;
|
|
/* 0269D324 */ cpu->r[4] = 0x00000002u;
|
|
/* 0269D328 */ Gambit_fn_0269E2EC(cpu);
|
|
/* 0269D32C */ _t12 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269D32C */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0269D330 */ _t13 = cpu->r[1] + 0x00000010u;
|
|
/* 0269D330 */ cpu->r[30] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0269D334 */ cpu->lr = cpu->r[0];
|
|
/* 0269D338 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 0269D338 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0269D33C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269D340 */ return;
|
|
L_0269D344: ; // 0x269d344
|
|
/* 0269D344 */ _t15 = cpu->r[30] + 0x00000288u;
|
|
/* 0269D344 */ cpu->r[10] = rbrew_read8(cpu->mem, _t15);
|
|
/* 0269D348 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0269D34C */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269D34C */ _t17 = _t16 & 0x00000001u;
|
|
/* 0269D34C */ if (_t17) goto L_0269D388; else goto L_0269D350;
|
|
L_0269D350: ; // 0x269d350
|
|
/* 0269D350 */ cpu->r[11] = 0x100E0000u;
|
|
/* 0269D354 */ cpu->r[12] = 0x100E0000u;
|
|
/* 0269D358 */ cpu->r[11] = cpu->r[11] + 0x0000475Cu;
|
|
/* 0269D35C */ cpu->r[12] = cpu->r[12] + 0x000048B0u;
|
|
/* 0269D360 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269D360 */ rbrew_write32(cpu->mem, _t18, cpu->r[11]);
|
|
/* 0269D364 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0269D368 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 0269D368 */ rbrew_write32(cpu->mem, _t19, cpu->r[12]);
|
|
/* 0269D36C */ Gambit_fn_027FAB30(cpu);
|
|
/* 0269D370 */ _t20 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269D370 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0269D374 */ _t21 = cpu->r[1] + 0x00000014u;
|
|
/* 0269D374 */ cpu->r[31] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0269D378 */ cpu->lr = cpu->r[0];
|
|
/* 0269D37C */ _t22 = cpu->r[1] + 0x00000010u;
|
|
/* 0269D37C */ cpu->r[30] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0269D380 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269D384 */ return;
|
|
L_0269D388: ; // 0x269d388
|
|
/* 0269D388 */ cpu->r[3] = 0x00000000u;
|
|
/* 0269D38C */ Gambit_fn_027F7178(cpu);
|
|
/* 0269D390 */ _t23 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269D390 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0269D394 */ _t24 = cpu->r[1] + 0x00000010u;
|
|
/* 0269D394 */ cpu->r[30] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0269D398 */ cpu->lr = cpu->r[0];
|
|
/* 0269D39C */ _t25 = cpu->r[1] + 0x00000014u;
|
|
/* 0269D39C */ cpu->r[31] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0269D3A0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269D3A4 */ return;
|
|
L_0269D3A8: ; // 0x269d3a8
|
|
/* 0269D3A8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269D3AC */ Gambit_fn_0209A9C8(cpu);
|
|
/* 0269D3B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0269D3B4 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269D3B4 */ _t27 = _t26 & 0x00000001u;
|
|
/* 0269D3B4 */ if (_t27) goto L_0269D3C0; else goto L_0269D3B8;
|
|
L_0269D3B8: ; // 0x269d3b8
|
|
/* 0269D3B8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269D3BC */ Gambit_fn_0209A978(cpu);
|
|
L_0269D3C0: ; // 0x269d3c0
|
|
/* 0269D3C0 */ _t28 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269D3C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0269D3C4 */ _t29 = cpu->r[1] + 0x00000010u;
|
|
/* 0269D3C4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0269D3C8 */ cpu->lr = cpu->r[0];
|
|
/* 0269D3CC */ _t30 = cpu->r[1] + 0x00000014u;
|
|
/* 0269D3CC */ cpu->r[31] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0269D3D0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269D3D4 */ return;
|
|
}
|
|
|
|
// fn_0269D3D8 @ 0x269d3d8
|
|
void Gambit_fn_0269D3D8(CPUState* cpu) {
|
|
uint32_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_0269D3D8: ; // 0x269d3d8
|
|
/* 0269D3D8 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 0269D3D8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269D3D8 */ cpu->r[1] = _t0;
|
|
/* 0269D3DC */ /* nop */
|
|
/* 0269D3E0 */ cpu->r[0] = cpu->lr;
|
|
/* 0269D3E4 */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 0269D3E4 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0269D3E8 */ cpu->r[30] = cpu->r[3];
|
|
/* 0269D3EC */ cpu->r[12] = 0x101D0000u;
|
|
/* 0269D3F0 */ _t2 = cpu->r[30] + 0x00000250u;
|
|
/* 0269D3F0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0269D3F4 */ _t3 = cpu->r[12] + 0xFFFF806Cu;
|
|
/* 0269D3F4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0269D3F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0269D3FC */ _t4 = cpu->r[12] + 0x000002D8u;
|
|
/* 0269D3FC */ cpu->r[26] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269D400 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269D400 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0269D400 */ if (_t6) goto L_0269D404; else goto L_0269D47C;
|
|
L_0269D404: ; // 0x269d404
|
|
/* 0269D404 */ cpu->r[29] = cpu->r[30] + 0x0000028Cu;
|
|
/* 0269D408 */ cpu->r[28] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269D40C */ cpu->r[27] = 0x00000003u;
|
|
/* 0269D410 */ cpu->r[31] = 0x00000000u;
|
|
L_0269D414: ; // 0x269d414
|
|
/* 0269D414 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269D414 */ rbrew_write32(cpu->mem, _t7, cpu->r[31]);
|
|
/* 0269D418 */ _t8 = cpu->r[28] + 0x00000000u;
|
|
/* 0269D418 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0269D41C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], 0x00000003u);
|
|
/* 0269D420 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 0269D420 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 0269D424 */ _t10 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269D424 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0269D424 */ if (_t11) goto L_0269D428; else goto L_0269D44C;
|
|
L_0269D428: ; // 0x269d428
|
|
/* 0269D428 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[31] * (int32_t)0x00000038u);
|
|
/* 0269D42C */ cpu->r[3] = cpu->r[26];
|
|
/* 0269D430 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269D434 */ cpu->r[5] = cpu->r[29] + cpu->r[0];
|
|
/* 0269D438 */ Gambit_fn_024597AC(cpu);
|
|
/* 0269D43C */ cpu->r[27] = cpu->r[27] + 0xFFFFFFFFu;
|
|
/* 0269D43C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0269D440 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 0269D444 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269D444 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0269D444 */ if (_t13) goto L_0269D448; else goto L_0269D414;
|
|
L_0269D448: ; // 0x269d448
|
|
/* 0269D448 */ goto L_0269D468;
|
|
L_0269D44C: ; // 0x269d44c
|
|
/* 0269D44C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269D450 */ cpu->r[3] = cpu->r[26];
|
|
/* 0269D454 */ cpu->r[5] = cpu->r[29];
|
|
/* 0269D458 */ Gambit_fn_024597AC(cpu);
|
|
/* 0269D45C */ cpu->r[27] = cpu->r[27] + 0xFFFFFFFFu;
|
|
/* 0269D45C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0269D460 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 0269D464 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269D464 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0269D464 */ if (_t15) goto L_0269D468; else goto L_0269D414;
|
|
L_0269D468: ; // 0x269d468
|
|
/* 0269D468 */ cpu->r[0] = 0x00000000u;
|
|
/* 0269D46C */ cpu->r[3] = cpu->r[26];
|
|
/* 0269D470 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 0269D474 */ _t16 = cpu->r[1] + 0x00000010u;
|
|
/* 0269D474 */ rbrew_write32(cpu->mem, _t16, cpu->r[0]);
|
|
/* 0269D478 */ Gambit_fn_0245971C(cpu);
|
|
L_0269D47C: ; // 0x269d47c
|
|
/* 0269D47C */ cpu->r[3] = cpu->r[26];
|
|
/* 0269D480 */ Gambit_fn_02459780(cpu);
|
|
/* 0269D484 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0269D488 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269D488 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0269D488 */ if (_t18) goto L_0269D4AC; else goto L_0269D48C;
|
|
L_0269D48C: ; // 0x269d48c
|
|
/* 0269D48C */ cpu->r[3] = cpu->r[30] + 0x00000248u;
|
|
/* 0269D490 */ cpu->r[4] = 0x00000003u;
|
|
/* 0269D494 */ Gambit_fn_0269E2EC(cpu);
|
|
/* 0269D498 */ /* nop */
|
|
/* 0269D49C */ _t19 = cpu->r[1] + 0x00000034u;
|
|
/* 0269D49C */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0269D4A0 */ cpu->lr = cpu->r[0];
|
|
/* 0269D4A4 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 0269D4A8 */ return;
|
|
L_0269D4AC: ; // 0x269d4ac
|
|
/* 0269D4AC */ cpu->r[3] = cpu->r[26];
|
|
/* 0269D4B0 */ Gambit_fn_02459798(cpu);
|
|
/* 0269D4B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0269D4B8 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269D4B8 */ _t21 = _t20 & 0x00000001u;
|
|
/* 0269D4B8 */ if (_t21) goto L_0269D4C4; else goto L_0269D4BC;
|
|
L_0269D4BC: ; // 0x269d4bc
|
|
/* 0269D4BC */ cpu->r[3] = cpu->r[26];
|
|
/* 0269D4C0 */ Gambit_fn_0245976C(cpu);
|
|
L_0269D4C4: ; // 0x269d4c4
|
|
/* 0269D4C4 */ /* nop */
|
|
/* 0269D4C8 */ _t22 = cpu->r[1] + 0x00000034u;
|
|
/* 0269D4C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0269D4CC */ cpu->lr = cpu->r[0];
|
|
/* 0269D4D0 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 0269D4D4 */ return;
|
|
}
|
|
|
|
// fn_0269D4D8 @ 0x269d4d8
|
|
void Gambit_fn_0269D4D8(CPUState* cpu) {
|
|
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_0269D4D8: ; // 0x269d4d8
|
|
/* 0269D4D8 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 0269D4D8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269D4D8 */ cpu->r[1] = _t0;
|
|
/* 0269D4DC */ /* nop */
|
|
/* 0269D4E0 */ cpu->r[0] = cpu->lr;
|
|
/* 0269D4E4 */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 0269D4E4 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0269D4E8 */ cpu->r[30] = cpu->r[3];
|
|
/* 0269D4EC */ cpu->r[12] = 0x101D0000u;
|
|
/* 0269D4F0 */ _t2 = cpu->r[30] + 0x00000250u;
|
|
/* 0269D4F0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0269D4F4 */ _t3 = cpu->r[12] + 0xFFFF806Cu;
|
|
/* 0269D4F4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0269D4F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0269D4FC */ _t4 = cpu->r[12] + 0x000002D8u;
|
|
/* 0269D4FC */ cpu->r[26] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269D500 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269D500 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0269D500 */ if (_t6) goto L_0269D504; else goto L_0269D580;
|
|
L_0269D504: ; // 0x269d504
|
|
/* 0269D504 */ cpu->r[29] = cpu->r[30] + 0x0000028Cu;
|
|
/* 0269D508 */ cpu->r[28] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269D50C */ cpu->r[27] = 0x00000003u;
|
|
/* 0269D510 */ cpu->r[31] = 0x00000000u;
|
|
L_0269D514: ; // 0x269d514
|
|
/* 0269D514 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269D514 */ rbrew_write32(cpu->mem, _t7, cpu->r[31]);
|
|
/* 0269D518 */ _t8 = cpu->r[28] + 0x00000000u;
|
|
/* 0269D518 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0269D51C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], 0x00000003u);
|
|
/* 0269D520 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 0269D520 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 0269D524 */ _t10 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269D524 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0269D524 */ if (_t11) goto L_0269D528; else goto L_0269D550;
|
|
L_0269D528: ; // 0x269d528
|
|
/* 0269D528 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[31] * (int32_t)0x00000038u);
|
|
/* 0269D52C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269D530 */ cpu->r[9] = cpu->r[29] + cpu->r[0];
|
|
/* 0269D534 */ cpu->r[3] = cpu->r[26];
|
|
/* 0269D538 */ cpu->r[5] = cpu->r[9] + 0x0000001Cu;
|
|
/* 0269D53C */ Gambit_fn_024597AC(cpu);
|
|
/* 0269D540 */ cpu->r[27] = cpu->r[27] + 0xFFFFFFFFu;
|
|
/* 0269D540 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0269D544 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 0269D548 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269D548 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0269D548 */ if (_t13) goto L_0269D54C; else goto L_0269D514;
|
|
L_0269D54C: ; // 0x269d54c
|
|
/* 0269D54C */ goto L_0269D56C;
|
|
L_0269D550: ; // 0x269d550
|
|
/* 0269D550 */ cpu->r[5] = cpu->r[29] + 0x0000001Cu;
|
|
/* 0269D554 */ cpu->r[3] = cpu->r[26];
|
|
/* 0269D558 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269D55C */ Gambit_fn_024597AC(cpu);
|
|
/* 0269D560 */ cpu->r[27] = cpu->r[27] + 0xFFFFFFFFu;
|
|
/* 0269D560 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0269D564 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 0269D568 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269D568 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0269D568 */ if (_t15) goto L_0269D56C; else goto L_0269D514;
|
|
L_0269D56C: ; // 0x269d56c
|
|
/* 0269D56C */ cpu->r[0] = 0x00000001u;
|
|
/* 0269D570 */ cpu->r[3] = cpu->r[26];
|
|
/* 0269D574 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 0269D578 */ _t16 = cpu->r[1] + 0x00000010u;
|
|
/* 0269D578 */ rbrew_write32(cpu->mem, _t16, cpu->r[0]);
|
|
/* 0269D57C */ Gambit_fn_0245971C(cpu);
|
|
L_0269D580: ; // 0x269d580
|
|
/* 0269D580 */ cpu->r[3] = cpu->r[26];
|
|
/* 0269D584 */ Gambit_fn_02459780(cpu);
|
|
/* 0269D588 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0269D58C */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269D58C */ _t18 = _t17 & 0x00000001u;
|
|
/* 0269D58C */ if (_t18) goto L_0269D590; else goto L_0269D5AC;
|
|
L_0269D590: ; // 0x269d590
|
|
/* 0269D590 */ cpu->r[3] = cpu->r[26];
|
|
/* 0269D594 */ Gambit_fn_02459798(cpu);
|
|
/* 0269D598 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0269D59C */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269D59C */ _t20 = _t19 & 0x00000001u;
|
|
/* 0269D59C */ if (_t20) goto L_0269D5AC; else goto L_0269D5A0;
|
|
L_0269D5A0: ; // 0x269d5a0
|
|
/* 0269D5A0 */ cpu->r[3] = cpu->r[30] + 0x00000248u;
|
|
/* 0269D5A4 */ cpu->r[4] = 0x00000004u;
|
|
/* 0269D5A8 */ Gambit_fn_0269E2EC(cpu);
|
|
L_0269D5AC: ; // 0x269d5ac
|
|
/* 0269D5AC */ /* nop */
|
|
/* 0269D5B0 */ _t21 = cpu->r[1] + 0x00000034u;
|
|
/* 0269D5B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0269D5B4 */ cpu->lr = cpu->r[0];
|
|
/* 0269D5B8 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 0269D5BC */ return;
|
|
}
|
|
|
|
// fn_0269D5C4 @ 0x269d5c4
|
|
void Gambit_fn_0269D5C4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_0269D5C4: ; // 0x269d5c4
|
|
/* 0269D5C4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0269D5C4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269D5C4 */ cpu->r[1] = _t0;
|
|
/* 0269D5C8 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0269D5C8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0269D5CC */ cpu->r[31] = cpu->r[3];
|
|
/* 0269D5D0 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269D5D0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0269D5D4 */ _t3 = cpu->r[31] + 0x00000250u;
|
|
/* 0269D5D4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0269D5D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0269D5DC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269D5DC */ _t5 = _t4 & 0x00000001u;
|
|
/* 0269D5DC */ if (_t5) goto L_0269D5E0; else goto L_0269D640;
|
|
L_0269D5E0: ; // 0x269d5e0
|
|
/* 0269D5E0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269D5E4 */ Gambit_fn_0269CF88(cpu);
|
|
/* 0269D5E8 */ cpu->r[3] = 0x101D0000u;
|
|
/* 0269D5EC */ _t6 = cpu->r[3] + 0xFFFF9568u;
|
|
/* 0269D5EC */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0269D5F0 */ cpu->r[4] = 0x00000002u;
|
|
/* 0269D5F4 */ Gambit_fn_027D3834(cpu);
|
|
/* 0269D5F8 */ _t7 = cpu->r[31] + 0x00000288u;
|
|
/* 0269D5F8 */ cpu->r[12] = rbrew_read8(cpu->mem, _t7);
|
|
/* 0269D5FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0269D600 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269D600 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0269D600 */ if (_t9) goto L_0269D638; else goto L_0269D604;
|
|
L_0269D604: ; // 0x269d604
|
|
/* 0269D604 */ cpu->r[0] = 0x100E0000u;
|
|
/* 0269D608 */ cpu->r[12] = 0x100E0000u;
|
|
/* 0269D60C */ cpu->r[0] = cpu->r[0] + 0x0000475Cu;
|
|
/* 0269D610 */ cpu->r[12] = cpu->r[12] + 0x000048B8u;
|
|
/* 0269D614 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269D614 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 0269D618 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0269D61C */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 0269D61C */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
/* 0269D620 */ Gambit_fn_027FAB30(cpu);
|
|
/* 0269D624 */ _t12 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269D624 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0269D628 */ cpu->lr = cpu->r[0];
|
|
/* 0269D62C */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 0269D62C */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0269D630 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269D634 */ return;
|
|
L_0269D638: ; // 0x269d638
|
|
/* 0269D638 */ cpu->r[3] = 0x00000000u;
|
|
/* 0269D63C */ Gambit_fn_027F7178(cpu);
|
|
L_0269D640: ; // 0x269d640
|
|
/* 0269D640 */ _t14 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269D640 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0269D644 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 0269D644 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0269D648 */ cpu->lr = cpu->r[0];
|
|
/* 0269D64C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269D650 */ return;
|
|
}
|
|
|
|
// fn_0269D654 @ 0x269d654
|
|
void Gambit_fn_0269D654(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0269D654: ; // 0x269d654
|
|
/* 0269D654 */ cpu->r[5] = 0xFFFFFFFDu;
|
|
/* 0269D658 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0269D658 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269D658 */ cpu->r[1] = _t0;
|
|
/* 0269D65C */ cpu->r[10] = 0x101F0000u;
|
|
/* 0269D660 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 0269D664 */ _t1 = cpu->r[10] + 0xFFFFDA0Cu;
|
|
/* 0269D664 */ rbrew_write32(cpu->mem, _t1, cpu->r[5]);
|
|
/* 0269D664 */ cpu->r[10] = _t1;
|
|
/* 0269D668 */ cpu->r[7] = 0x101F0000u;
|
|
/* 0269D66C */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 0269D66C */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 0269D670 */ cpu->r[9] = 0xFFFFFFFEu;
|
|
/* 0269D674 */ cpu->r[8] = 0x101F0000u;
|
|
/* 0269D678 */ _t3 = cpu->r[7] + 0xFFFFDA1Cu;
|
|
/* 0269D678 */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 0269D678 */ cpu->r[7] = _t3;
|
|
/* 0269D67C */ _t4 = cpu->r[8] + 0xFFFFDA14u;
|
|
/* 0269D67C */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
/* 0269D67C */ cpu->r[8] = _t4;
|
|
/* 0269D680 */ cpu->r[0] = 0x00000002u;
|
|
/* 0269D684 */ _t5 = cpu->r[8] + 0x00000004u;
|
|
/* 0269D684 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 0269D688 */ cpu->r[8] = 0x101F0000u;
|
|
/* 0269D68C */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 0269D68C */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0269D690 */ cpu->r[12] = 0x101F0000u;
|
|
/* 0269D694 */ _t7 = cpu->r[7] + 0x00000004u;
|
|
/* 0269D694 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 0269D698 */ _t8 = cpu->r[8] + 0xFFFFDA2Cu;
|
|
/* 0269D698 */ rbrew_write32(cpu->mem, _t8, cpu->r[5]);
|
|
/* 0269D698 */ cpu->r[8] = _t8;
|
|
/* 0269D69C */ _t9 = cpu->r[12] + 0xFFFFDA24u;
|
|
/* 0269D69C */ rbrew_write32(cpu->mem, _t9, cpu->r[5]);
|
|
/* 0269D69C */ cpu->r[12] = _t9;
|
|
/* 0269D6A0 */ _t10 = cpu->r[12] + 0x00000004u;
|
|
/* 0269D6A0 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 0269D6A4 */ cpu->r[0] = 0x00000004u;
|
|
/* 0269D6A8 */ _t11 = cpu->r[8] + 0x00000004u;
|
|
/* 0269D6A8 */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 0269D6AC */ cpu->r[11] = 0x101F0000u;
|
|
/* 0269D6B0 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 0269D6B0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0269D6B4 */ _t13 = cpu->r[11] + 0xFFFFDA34u;
|
|
/* 0269D6B4 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 0269D6B8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269D6BC */ return;
|
|
}
|
|
|
|
// fn_0269D658 @ 0x269d658
|
|
void Gambit_fn_0269D658(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0269D658: ; // 0x269d658
|
|
/* 0269D658 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0269D658 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269D658 */ cpu->r[1] = _t0;
|
|
/* 0269D65C */ cpu->r[10] = 0x101F0000u;
|
|
/* 0269D660 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 0269D664 */ _t1 = cpu->r[10] + 0xFFFFDA0Cu;
|
|
/* 0269D664 */ rbrew_write32(cpu->mem, _t1, cpu->r[5]);
|
|
/* 0269D664 */ cpu->r[10] = _t1;
|
|
/* 0269D668 */ cpu->r[7] = 0x101F0000u;
|
|
/* 0269D66C */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 0269D66C */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 0269D670 */ cpu->r[9] = 0xFFFFFFFEu;
|
|
/* 0269D674 */ cpu->r[8] = 0x101F0000u;
|
|
/* 0269D678 */ _t3 = cpu->r[7] + 0xFFFFDA1Cu;
|
|
/* 0269D678 */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 0269D678 */ cpu->r[7] = _t3;
|
|
/* 0269D67C */ _t4 = cpu->r[8] + 0xFFFFDA14u;
|
|
/* 0269D67C */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
/* 0269D67C */ cpu->r[8] = _t4;
|
|
/* 0269D680 */ cpu->r[0] = 0x00000002u;
|
|
/* 0269D684 */ _t5 = cpu->r[8] + 0x00000004u;
|
|
/* 0269D684 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 0269D688 */ cpu->r[8] = 0x101F0000u;
|
|
/* 0269D68C */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 0269D68C */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0269D690 */ cpu->r[12] = 0x101F0000u;
|
|
/* 0269D694 */ _t7 = cpu->r[7] + 0x00000004u;
|
|
/* 0269D694 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 0269D698 */ _t8 = cpu->r[8] + 0xFFFFDA2Cu;
|
|
/* 0269D698 */ rbrew_write32(cpu->mem, _t8, cpu->r[5]);
|
|
/* 0269D698 */ cpu->r[8] = _t8;
|
|
/* 0269D69C */ _t9 = cpu->r[12] + 0xFFFFDA24u;
|
|
/* 0269D69C */ rbrew_write32(cpu->mem, _t9, cpu->r[5]);
|
|
/* 0269D69C */ cpu->r[12] = _t9;
|
|
/* 0269D6A0 */ _t10 = cpu->r[12] + 0x00000004u;
|
|
/* 0269D6A0 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 0269D6A4 */ cpu->r[0] = 0x00000004u;
|
|
/* 0269D6A8 */ _t11 = cpu->r[8] + 0x00000004u;
|
|
/* 0269D6A8 */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 0269D6AC */ cpu->r[11] = 0x101F0000u;
|
|
/* 0269D6B0 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 0269D6B0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0269D6B4 */ _t13 = cpu->r[11] + 0xFFFFDA34u;
|
|
/* 0269D6B4 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 0269D6B8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269D6BC */ return;
|
|
}
|
|
|
|
// fn_0269D6C0 @ 0x269d6c0
|
|
void Gambit_fn_0269D6C0(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_0269D6C0: ; // 0x269d6c0
|
|
/* 0269D6C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0269D6C4 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269D6C4 */ _t1 = _t0 & 0x00000001u;
|
|
/* 0269D6C4 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0269D6C4 */ goto L_0269D6C8;
|
|
L_0269D6C8: ; // 0x269d6c8
|
|
/* 0269D6C8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0269D6C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0269D6CC */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269D6CC */ _t3 = _t2 & 0x00000001u;
|
|
/* 0269D6CC */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0269D6CC */ goto L_0269D6D0;
|
|
L_0269D6D0: ; // 0x269d6d0
|
|
/* 0269D6D0 */ 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_0269D6D4 @ 0x269d6d4
|
|
void Gambit_fn_0269D6D4(CPUState* cpu) {
|
|
L_0269D6D4: ; // 0x269d6d4
|
|
/* 0269D6D4 */ return;
|
|
}
|
|
|
|
// fn_0269D6D8 @ 0x269d6d8
|
|
void Gambit_fn_0269D6D8(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_0269D6D8: ; // 0x269d6d8
|
|
/* 0269D6D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0269D6DC */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269D6DC */ _t1 = _t0 & 0x00000001u;
|
|
/* 0269D6DC */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0269D6DC */ goto L_0269D6E0;
|
|
L_0269D6E0: ; // 0x269d6e0
|
|
/* 0269D6E0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0269D6E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0269D6E4 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269D6E4 */ _t3 = _t2 & 0x00000001u;
|
|
/* 0269D6E4 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0269D6E4 */ goto L_0269D6E8;
|
|
L_0269D6E8: ; // 0x269d6e8
|
|
/* 0269D6E8 */ 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_0269D6EC @ 0x269d6ec
|
|
void Gambit_fn_0269D6EC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_0269D6EC: ; // 0x269d6ec
|
|
/* 0269D6EC */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 0269D6EC */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0269D6F0 */ _t1 = cpu->r[3] + 0x00000008u;
|
|
/* 0269D6F0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0269D6F4 */ cpu->r[12] = cpu->r[11] + cpu->r[12];
|
|
/* 0269D6F8 */ cpu->r[11] = 0x10110000u;
|
|
/* 0269D6FC */ _t2 = cpu->r[11] + 0x00007399u;
|
|
/* 0269D6FC */ cpu->r[0] = rbrew_read8(cpu->mem, _t2);
|
|
/* 0269D700 */ _t3 = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 0269D700 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]);
|
|
/* 0269D704 */ return;
|
|
}
|
|
|
|
// fn_0269D708 @ 0x269d708
|
|
void Gambit_fn_0269D708(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_0269D708: ; // 0x269d708
|
|
/* 0269D708 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0269D70C */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269D70C */ _t1 = _t0 & 0x00000001u;
|
|
/* 0269D70C */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0269D70C */ goto L_0269D710;
|
|
L_0269D710: ; // 0x269d710
|
|
/* 0269D710 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0269D710 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0269D714 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269D714 */ _t3 = _t2 & 0x00000001u;
|
|
/* 0269D714 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0269D714 */ goto L_0269D718;
|
|
L_0269D718: ; // 0x269d718
|
|
/* 0269D718 */ 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_0269D71C @ 0x269d71c
|
|
void Gambit_fn_0269D71C(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_0269D71C: ; // 0x269d71c
|
|
/* 0269D71C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0269D720 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269D720 */ _t1 = _t0 & 0x00000001u;
|
|
/* 0269D720 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0269D720 */ goto L_0269D724;
|
|
L_0269D724: ; // 0x269d724
|
|
/* 0269D724 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0269D724 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0269D728 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269D728 */ _t3 = _t2 & 0x00000001u;
|
|
/* 0269D728 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0269D728 */ goto L_0269D72C;
|
|
L_0269D72C: ; // 0x269d72c
|
|
/* 0269D72C */ 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_0269D730 @ 0x269d730
|
|
void Gambit_fn_0269D730(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_0269D730: ; // 0x269d730
|
|
/* 0269D730 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0269D734 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269D734 */ _t1 = _t0 & 0x00000001u;
|
|
/* 0269D734 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0269D734 */ goto L_0269D738;
|
|
L_0269D738: ; // 0x269d738
|
|
/* 0269D738 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0269D738 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0269D73C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269D73C */ _t3 = _t2 & 0x00000001u;
|
|
/* 0269D73C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0269D73C */ goto L_0269D740;
|
|
L_0269D740: ; // 0x269d740
|
|
/* 0269D740 */ 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_0269D744 @ 0x269d744
|
|
void Gambit_fn_0269D744(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_0269D744: ; // 0x269d744
|
|
/* 0269D744 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0269D748 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269D748 */ _t1 = _t0 & 0x00000001u;
|
|
/* 0269D748 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0269D748 */ goto L_0269D74C;
|
|
L_0269D74C: ; // 0x269d74c
|
|
/* 0269D74C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0269D74C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0269D750 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269D750 */ _t3 = _t2 & 0x00000001u;
|
|
/* 0269D750 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0269D750 */ goto L_0269D754;
|
|
L_0269D754: ; // 0x269d754
|
|
/* 0269D754 */ 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_0269D758 @ 0x269d758
|
|
void Gambit_fn_0269D758(CPUState* cpu) {
|
|
L_0269D758: ; // 0x269d758
|
|
/* 0269D758 */ return;
|
|
}
|
|
|
|
// fn_0269D75C @ 0x269d75c
|
|
void Gambit_fn_0269D75C(CPUState* cpu) {
|
|
L_0269D75C: ; // 0x269d75c
|
|
/* 0269D75C */ return;
|
|
}
|
|
|
|
// fn_0269D760 @ 0x269d760
|
|
void Gambit_fn_0269D760(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_0269D760: ; // 0x269d760
|
|
/* 0269D760 */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 0269D760 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0269D764 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0269D768 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269D768 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0269D768 */ if (_t2) goto L_0269D774; else goto L_0269D76C;
|
|
L_0269D76C: ; // 0x269d76c
|
|
/* 0269D76C */ cpu->r[3] = cpu->r[12] + 0x00000034u;
|
|
/* 0269D770 */ return;
|
|
L_0269D774: ; // 0x269d774
|
|
/* 0269D774 */ cpu->r[3] = 0x00000000u;
|
|
/* 0269D778 */ return;
|
|
}
|
|
|
|
// fn_0269D77C @ 0x269d77c
|
|
void Gambit_fn_0269D77C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_0269D77C: ; // 0x269d77c
|
|
/* 0269D77C */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 0269D77C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0269D780 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0269D784 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269D784 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0269D784 */ if (_t2) goto L_0269D790; else goto L_0269D788;
|
|
L_0269D788: ; // 0x269d788
|
|
/* 0269D788 */ cpu->r[3] = cpu->r[12] + 0x00000064u;
|
|
/* 0269D78C */ return;
|
|
L_0269D790: ; // 0x269d790
|
|
/* 0269D790 */ cpu->r[3] = 0x00000000u;
|
|
/* 0269D794 */ return;
|
|
}
|
|
|
|
// fn_0269D798 @ 0x269d798
|
|
void Gambit_fn_0269D798(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0269D798: ; // 0x269d798
|
|
/* 0269D798 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0269D798 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0269D79C */ _t1 = cpu->r[12] + 0x00000114u;
|
|
/* 0269D79C */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0269D7A0 */ cpu->ctr = cpu->r[0];
|
|
/* 0269D7A4 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0269D7A8 @ 0x269d7a8
|
|
void Gambit_fn_0269D7A8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0269D7A8: ; // 0x269d7a8
|
|
/* 0269D7A8 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0269D7A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0269D7AC */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0269D7AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0269D7B0 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269D7B0 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0269D7B0 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0269D7B0 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0269D7B0 */ goto L_0269D7B4;
|
|
L_0269D7B4: ; // 0x269d7b4
|
|
/* 0269D7B4 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0269D7B4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269D7B8 */ _t5 = cpu->r[12] + 0x00000044u;
|
|
/* 0269D7B8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0269D7BC */ cpu->ctr = cpu->r[12];
|
|
/* 0269D7C0 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0269D7C4 @ 0x269d7c4
|
|
void Gambit_fn_0269D7C4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0269D7C4: ; // 0x269d7c4
|
|
/* 0269D7C4 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0269D7C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0269D7C8 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0269D7C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0269D7CC */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269D7CC */ _t2 = _t1 & 0x00000001u;
|
|
/* 0269D7CC */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0269D7CC */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0269D7CC */ goto L_0269D7D0;
|
|
L_0269D7D0: ; // 0x269d7d0
|
|
/* 0269D7D0 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0269D7D0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269D7D4 */ _t5 = cpu->r[12] + 0x0000004Cu;
|
|
/* 0269D7D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0269D7D8 */ cpu->ctr = cpu->r[0];
|
|
/* 0269D7DC */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0269D7E0 @ 0x269d7e0
|
|
void Gambit_fn_0269D7E0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0269D7E0: ; // 0x269d7e0
|
|
/* 0269D7E0 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0269D7E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0269D7E4 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Eu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0269D7E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0269D7E8 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269D7E8 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0269D7E8 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0269D7E8 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0269D7E8 */ goto L_0269D7EC;
|
|
L_0269D7EC: ; // 0x269d7ec
|
|
/* 0269D7EC */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0269D7EC */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269D7F0 */ _t5 = cpu->r[12] + 0x00000054u;
|
|
/* 0269D7F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0269D7F4 */ cpu->ctr = cpu->r[0];
|
|
/* 0269D7F8 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0269D7FC @ 0x269d7fc
|
|
void Gambit_fn_0269D7FC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0269D7FC: ; // 0x269d7fc
|
|
/* 0269D7FC */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0269D7FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0269D800 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Du, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0269D800 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0269D804 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269D804 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0269D804 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0269D804 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0269D804 */ goto L_0269D808;
|
|
L_0269D808: ; // 0x269d808
|
|
/* 0269D808 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0269D808 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269D80C */ _t5 = cpu->r[12] + 0x0000005Cu;
|
|
/* 0269D80C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0269D810 */ cpu->ctr = cpu->r[0];
|
|
/* 0269D814 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0269D818 @ 0x269d818
|
|
void Gambit_fn_0269D818(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0269D818: ; // 0x269d818
|
|
/* 0269D818 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0269D818 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0269D81C */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Cu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0269D81C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0269D820 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269D820 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0269D820 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0269D820 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0269D820 */ goto L_0269D824;
|
|
L_0269D824: ; // 0x269d824
|
|
/* 0269D824 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0269D824 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269D828 */ _t5 = cpu->r[12] + 0x00000064u;
|
|
/* 0269D828 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0269D82C */ cpu->ctr = cpu->r[0];
|
|
/* 0269D830 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0269D834 @ 0x269d834
|
|
void Gambit_fn_0269D834(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0269D834: ; // 0x269d834
|
|
/* 0269D834 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0269D834 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0269D838 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0269D838 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0269D83C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269D83C */ _t2 = _t1 & 0x00000001u;
|
|
/* 0269D83C */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0269D83C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0269D83C */ goto L_0269D840;
|
|
L_0269D840: ; // 0x269d840
|
|
/* 0269D840 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0269D840 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269D844 */ _t5 = cpu->r[11] + 0x0000006Cu;
|
|
/* 0269D844 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0269D848 */ cpu->ctr = cpu->r[0];
|
|
/* 0269D84C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0269D850 @ 0x269d850
|
|
void Gambit_fn_0269D850(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0269D850: ; // 0x269d850
|
|
/* 0269D850 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0269D850 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0269D854 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Au, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0269D854 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0269D858 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269D858 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0269D858 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0269D858 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0269D858 */ goto L_0269D85C;
|
|
L_0269D85C: ; // 0x269d85c
|
|
/* 0269D85C */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0269D85C */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269D860 */ _t5 = cpu->r[11] + 0x00000074u;
|
|
/* 0269D860 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0269D864 */ cpu->ctr = cpu->r[0];
|
|
/* 0269D868 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0269D86C @ 0x269d86c
|
|
void Gambit_fn_0269D86C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0269D86C: ; // 0x269d86c
|
|
/* 0269D86C */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0269D86C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0269D870 */ _t1 = cpu->r[12] + 0x00000024u;
|
|
/* 0269D870 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0269D874 */ cpu->ctr = cpu->r[0];
|
|
/* 0269D878 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0269D87C @ 0x269d87c
|
|
void Gambit_fn_0269D87C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0269D87C: ; // 0x269d87c
|
|
/* 0269D87C */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0269D87C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0269D880 */ _t1 = cpu->r[12] + 0x0000002Cu;
|
|
/* 0269D880 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0269D884 */ cpu->ctr = cpu->r[0];
|
|
/* 0269D888 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0269D88C @ 0x269d88c
|
|
void Gambit_fn_0269D88C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0269D88C: ; // 0x269d88c
|
|
/* 0269D88C */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0269D88C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0269D890 */ _t1 = cpu->r[12] + 0x00000034u;
|
|
/* 0269D890 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0269D894 */ cpu->ctr = cpu->r[0];
|
|
/* 0269D898 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0269D89C @ 0x269d89c
|
|
void Gambit_fn_0269D89C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0269D89C: ; // 0x269d89c
|
|
/* 0269D89C */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0269D89C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0269D8A0 */ _t1 = cpu->r[12] + 0x0000003Cu;
|
|
/* 0269D8A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0269D8A4 */ cpu->ctr = cpu->r[0];
|
|
/* 0269D8A8 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0269D8AC @ 0x269d8ac
|
|
void Gambit_fn_0269D8AC(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0269D8AC: ; // 0x269d8ac
|
|
/* 0269D8AC */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0269D8AC */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0269D8B0 */ _t1 = cpu->r[12] + 0x0000007Cu;
|
|
/* 0269D8B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0269D8B4 */ cpu->ctr = cpu->r[0];
|
|
/* 0269D8B8 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0269D8BC @ 0x269d8bc
|
|
void Gambit_fn_0269D8BC(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0269D8BC: ; // 0x269d8bc
|
|
/* 0269D8BC */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0269D8BC */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0269D8C0 */ _t1 = cpu->r[12] + 0x00000084u;
|
|
/* 0269D8C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0269D8C4 */ cpu->ctr = cpu->r[0];
|
|
/* 0269D8C8 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0269D8CC @ 0x269d8cc
|
|
void Gambit_fn_0269D8CC(CPUState* cpu) {
|
|
L_0269D8CC: ; // 0x269d8cc
|
|
/* 0269D8CC */ return;
|
|
}
|
|
|
|
// fn_0269D8D0 @ 0x269d8d0
|
|
void Gambit_fn_0269D8D0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0269D8D0: ; // 0x269d8d0
|
|
/* 0269D8D0 */ cpu->r[0] = cpu->lr;
|
|
/* 0269D8D4 */ cpu->r[12] = 0x100E0000u;
|
|
/* 0269D8D8 */ cpu->r[10] = 0x00000000u;
|
|
/* 0269D8DC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0269D8DC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269D8DC */ cpu->r[1] = _t0;
|
|
/* 0269D8E0 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0269D8E0 */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 0269D8E4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0269D8E4 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0269D8E8 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269D8EC */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269D8EC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269D8F0 */ cpu->r[0] = 0x00000004u;
|
|
/* 0269D8F4 */ _t4 = cpu->r[12] + 0x000046E4u;
|
|
/* 0269D8F4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269D8F8 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269D8FC */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0269D8FC */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0269D900 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269D904 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269D904 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 0269D908 */ Gambit_fn_02791774(cpu);
|
|
/* 0269D90C */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 0269D90C */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269D910 */ cpu->r[0] = cpu->r[0] | 0x00000001u;
|
|
/* 0269D914 */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0269D914 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0269D918 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269D918 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269D91C */ cpu->lr = cpu->r[0];
|
|
/* 0269D920 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0269D920 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269D924 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269D928 */ return;
|
|
}
|
|
|
|
// fn_0269D8DC @ 0x269d8dc
|
|
void Gambit_fn_0269D8DC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0269D8DC: ; // 0x269d8dc
|
|
/* 0269D8DC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0269D8DC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269D8DC */ cpu->r[1] = _t0;
|
|
/* 0269D8E0 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0269D8E0 */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 0269D8E4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0269D8E4 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0269D8E8 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269D8EC */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269D8EC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269D8F0 */ cpu->r[0] = 0x00000004u;
|
|
/* 0269D8F4 */ _t4 = cpu->r[12] + 0x000046E4u;
|
|
/* 0269D8F4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269D8F8 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269D8FC */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0269D8FC */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0269D900 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269D904 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269D904 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 0269D908 */ Gambit_fn_02791774(cpu);
|
|
/* 0269D90C */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 0269D90C */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269D910 */ cpu->r[0] = cpu->r[0] | 0x00000001u;
|
|
/* 0269D914 */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0269D914 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0269D918 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269D918 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269D91C */ cpu->lr = cpu->r[0];
|
|
/* 0269D920 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0269D920 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269D924 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269D928 */ return;
|
|
}
|
|
|
|
// fn_0269D92C @ 0x269d92c
|
|
void Gambit_fn_0269D92C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0269D92C: ; // 0x269d92c
|
|
/* 0269D92C */ cpu->r[0] = cpu->lr;
|
|
/* 0269D930 */ cpu->r[12] = 0x100E0000u;
|
|
/* 0269D934 */ cpu->r[10] = 0x00000003u;
|
|
/* 0269D938 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0269D938 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269D938 */ cpu->r[1] = _t0;
|
|
/* 0269D93C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0269D93C */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 0269D940 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0269D940 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0269D944 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269D948 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269D948 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269D94C */ cpu->r[0] = 0x00000004u;
|
|
/* 0269D950 */ _t4 = cpu->r[12] + 0x000046F4u;
|
|
/* 0269D950 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269D954 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269D958 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0269D958 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0269D95C */ cpu->r[31] = cpu->r[3];
|
|
/* 0269D960 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269D960 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 0269D964 */ Gambit_fn_02791774(cpu);
|
|
/* 0269D968 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 0269D968 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269D96C */ cpu->r[0] = cpu->r[0] | 0x00000008u;
|
|
/* 0269D970 */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0269D970 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0269D974 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269D974 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269D978 */ cpu->lr = cpu->r[0];
|
|
/* 0269D97C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0269D97C */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269D980 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269D984 */ return;
|
|
}
|
|
|
|
// fn_0269D938 @ 0x269d938
|
|
void Gambit_fn_0269D938(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0269D938: ; // 0x269d938
|
|
/* 0269D938 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0269D938 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269D938 */ cpu->r[1] = _t0;
|
|
/* 0269D93C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0269D93C */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 0269D940 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0269D940 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0269D944 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269D948 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269D948 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269D94C */ cpu->r[0] = 0x00000004u;
|
|
/* 0269D950 */ _t4 = cpu->r[12] + 0x000046F4u;
|
|
/* 0269D950 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269D954 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269D958 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0269D958 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0269D95C */ cpu->r[31] = cpu->r[3];
|
|
/* 0269D960 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269D960 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 0269D964 */ Gambit_fn_02791774(cpu);
|
|
/* 0269D968 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 0269D968 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269D96C */ cpu->r[0] = cpu->r[0] | 0x00000008u;
|
|
/* 0269D970 */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0269D970 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0269D974 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269D974 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269D978 */ cpu->lr = cpu->r[0];
|
|
/* 0269D97C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0269D97C */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269D980 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269D984 */ return;
|
|
}
|
|
|
|
// fn_0269D988 @ 0x269d988
|
|
void Gambit_fn_0269D988(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0269D988: ; // 0x269d988
|
|
/* 0269D988 */ cpu->r[0] = cpu->lr;
|
|
/* 0269D98C */ cpu->r[12] = 0x100E0000u;
|
|
/* 0269D990 */ cpu->r[10] = 0x00000007u;
|
|
/* 0269D994 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0269D994 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269D994 */ cpu->r[1] = _t0;
|
|
/* 0269D998 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0269D998 */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 0269D99C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0269D99C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0269D9A0 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269D9A4 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269D9A4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269D9A8 */ cpu->r[0] = 0x00000004u;
|
|
/* 0269D9AC */ _t4 = cpu->r[12] + 0x00004704u;
|
|
/* 0269D9AC */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269D9B0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269D9B4 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0269D9B4 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0269D9B8 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269D9BC */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269D9BC */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 0269D9C0 */ Gambit_fn_02791888(cpu);
|
|
/* 0269D9C4 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 0269D9C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269D9C8 */ cpu->r[0] = cpu->r[0] | 0x00000080u;
|
|
/* 0269D9CC */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0269D9CC */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0269D9D0 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269D9D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269D9D4 */ cpu->lr = cpu->r[0];
|
|
/* 0269D9D8 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0269D9D8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269D9DC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269D9E0 */ return;
|
|
}
|
|
|
|
// fn_0269D994 @ 0x269d994
|
|
void Gambit_fn_0269D994(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0269D994: ; // 0x269d994
|
|
/* 0269D994 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0269D994 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269D994 */ cpu->r[1] = _t0;
|
|
/* 0269D998 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0269D998 */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 0269D99C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0269D99C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0269D9A0 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269D9A4 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269D9A4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269D9A8 */ cpu->r[0] = 0x00000004u;
|
|
/* 0269D9AC */ _t4 = cpu->r[12] + 0x00004704u;
|
|
/* 0269D9AC */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269D9B0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269D9B4 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0269D9B4 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0269D9B8 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269D9BC */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269D9BC */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 0269D9C0 */ Gambit_fn_02791888(cpu);
|
|
/* 0269D9C4 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 0269D9C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269D9C8 */ cpu->r[0] = cpu->r[0] | 0x00000080u;
|
|
/* 0269D9CC */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0269D9CC */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0269D9D0 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269D9D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269D9D4 */ cpu->lr = cpu->r[0];
|
|
/* 0269D9D8 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0269D9D8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269D9DC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269D9E0 */ return;
|
|
}
|
|
|
|
// fn_0269D9E4 @ 0x269d9e4
|
|
void Gambit_fn_0269D9E4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0269D9E4: ; // 0x269d9e4
|
|
/* 0269D9E4 */ cpu->r[0] = cpu->lr;
|
|
/* 0269D9E8 */ cpu->r[12] = 0x100E0000u;
|
|
/* 0269D9EC */ cpu->r[10] = 0x00000008u;
|
|
/* 0269D9F0 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0269D9F0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269D9F0 */ cpu->r[1] = _t0;
|
|
/* 0269D9F4 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0269D9F4 */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 0269D9F8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0269D9F8 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0269D9FC */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269DA00 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269DA00 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269DA04 */ cpu->r[0] = 0x00000004u;
|
|
/* 0269DA08 */ _t4 = cpu->r[12] + 0x0000470Cu;
|
|
/* 0269DA08 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269DA0C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269DA10 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0269DA10 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0269DA14 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269DA18 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269DA18 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 0269DA1C */ Gambit_fn_02791888(cpu);
|
|
/* 0269DA20 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 0269DA20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269DA24 */ cpu->r[0] = cpu->r[0] | 0x00000100u;
|
|
/* 0269DA28 */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0269DA28 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0269DA2C */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269DA2C */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269DA30 */ cpu->lr = cpu->r[0];
|
|
/* 0269DA34 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0269DA34 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269DA38 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269DA3C */ return;
|
|
}
|
|
|
|
// fn_0269D9F0 @ 0x269d9f0
|
|
void Gambit_fn_0269D9F0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0269D9F0: ; // 0x269d9f0
|
|
/* 0269D9F0 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0269D9F0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269D9F0 */ cpu->r[1] = _t0;
|
|
/* 0269D9F4 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0269D9F4 */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 0269D9F8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0269D9F8 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0269D9FC */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269DA00 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269DA00 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269DA04 */ cpu->r[0] = 0x00000004u;
|
|
/* 0269DA08 */ _t4 = cpu->r[12] + 0x0000470Cu;
|
|
/* 0269DA08 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269DA0C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269DA10 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0269DA10 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0269DA14 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269DA18 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269DA18 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 0269DA1C */ Gambit_fn_02791888(cpu);
|
|
/* 0269DA20 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 0269DA20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269DA24 */ cpu->r[0] = cpu->r[0] | 0x00000100u;
|
|
/* 0269DA28 */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0269DA28 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0269DA2C */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269DA2C */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269DA30 */ cpu->lr = cpu->r[0];
|
|
/* 0269DA34 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0269DA34 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269DA38 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269DA3C */ return;
|
|
}
|
|
|
|
// fn_0269DA40 @ 0x269da40
|
|
void Gambit_fn_0269DA40(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0269DA40: ; // 0x269da40
|
|
/* 0269DA40 */ cpu->r[0] = cpu->lr;
|
|
/* 0269DA44 */ cpu->r[12] = 0x100E0000u;
|
|
/* 0269DA48 */ cpu->r[10] = 0x00000009u;
|
|
/* 0269DA4C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0269DA4C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269DA4C */ cpu->r[1] = _t0;
|
|
/* 0269DA50 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0269DA50 */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 0269DA54 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0269DA54 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0269DA58 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269DA5C */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269DA5C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269DA60 */ cpu->r[0] = 0x00000004u;
|
|
/* 0269DA64 */ _t4 = cpu->r[12] + 0x00004714u;
|
|
/* 0269DA64 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269DA68 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269DA6C */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0269DA6C */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0269DA70 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269DA74 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269DA74 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 0269DA78 */ Gambit_fn_02791888(cpu);
|
|
/* 0269DA7C */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 0269DA7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269DA80 */ cpu->r[0] = cpu->r[0] | 0x00000200u;
|
|
/* 0269DA84 */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0269DA84 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0269DA88 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269DA88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269DA8C */ cpu->lr = cpu->r[0];
|
|
/* 0269DA90 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0269DA90 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269DA94 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269DA98 */ return;
|
|
}
|
|
|
|
// fn_0269DA4C @ 0x269da4c
|
|
void Gambit_fn_0269DA4C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0269DA4C: ; // 0x269da4c
|
|
/* 0269DA4C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0269DA4C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269DA4C */ cpu->r[1] = _t0;
|
|
/* 0269DA50 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0269DA50 */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 0269DA54 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0269DA54 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0269DA58 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269DA5C */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269DA5C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269DA60 */ cpu->r[0] = 0x00000004u;
|
|
/* 0269DA64 */ _t4 = cpu->r[12] + 0x00004714u;
|
|
/* 0269DA64 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269DA68 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269DA6C */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0269DA6C */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0269DA70 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269DA74 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269DA74 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 0269DA78 */ Gambit_fn_02791888(cpu);
|
|
/* 0269DA7C */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 0269DA7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269DA80 */ cpu->r[0] = cpu->r[0] | 0x00000200u;
|
|
/* 0269DA84 */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0269DA84 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0269DA88 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269DA88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269DA8C */ cpu->lr = cpu->r[0];
|
|
/* 0269DA90 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0269DA90 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269DA94 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269DA98 */ return;
|
|
}
|
|
|
|
// fn_0269DA9C @ 0x269da9c
|
|
void Gambit_fn_0269DA9C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0269DA9C: ; // 0x269da9c
|
|
/* 0269DA9C */ cpu->r[0] = cpu->lr;
|
|
/* 0269DAA0 */ cpu->r[12] = 0x100E0000u;
|
|
/* 0269DAA4 */ cpu->r[10] = 0x0000000Au;
|
|
/* 0269DAA8 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0269DAA8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269DAA8 */ cpu->r[1] = _t0;
|
|
/* 0269DAAC */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0269DAAC */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 0269DAB0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0269DAB0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0269DAB4 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269DAB8 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269DAB8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269DABC */ cpu->r[0] = 0x00000004u;
|
|
/* 0269DAC0 */ _t4 = cpu->r[12] + 0x0000471Cu;
|
|
/* 0269DAC0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269DAC4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269DAC8 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0269DAC8 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0269DACC */ cpu->r[31] = cpu->r[3];
|
|
/* 0269DAD0 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269DAD0 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 0269DAD4 */ Gambit_fn_02791888(cpu);
|
|
/* 0269DAD8 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 0269DAD8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269DADC */ cpu->r[0] = cpu->r[0] | 0x00000400u;
|
|
/* 0269DAE0 */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0269DAE0 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0269DAE4 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269DAE4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269DAE8 */ cpu->lr = cpu->r[0];
|
|
/* 0269DAEC */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0269DAEC */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269DAF0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269DAF4 */ return;
|
|
}
|
|
|
|
// fn_0269DAA8 @ 0x269daa8
|
|
void Gambit_fn_0269DAA8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0269DAA8: ; // 0x269daa8
|
|
/* 0269DAA8 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0269DAA8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269DAA8 */ cpu->r[1] = _t0;
|
|
/* 0269DAAC */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0269DAAC */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 0269DAB0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0269DAB0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0269DAB4 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269DAB8 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269DAB8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269DABC */ cpu->r[0] = 0x00000004u;
|
|
/* 0269DAC0 */ _t4 = cpu->r[12] + 0x0000471Cu;
|
|
/* 0269DAC0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269DAC4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269DAC8 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0269DAC8 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0269DACC */ cpu->r[31] = cpu->r[3];
|
|
/* 0269DAD0 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269DAD0 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 0269DAD4 */ Gambit_fn_02791888(cpu);
|
|
/* 0269DAD8 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 0269DAD8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269DADC */ cpu->r[0] = cpu->r[0] | 0x00000400u;
|
|
/* 0269DAE0 */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0269DAE0 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0269DAE4 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269DAE4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269DAE8 */ cpu->lr = cpu->r[0];
|
|
/* 0269DAEC */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0269DAEC */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269DAF0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269DAF4 */ return;
|
|
}
|
|
|
|
// fn_0269DAF8 @ 0x269daf8
|
|
void Gambit_fn_0269DAF8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0269DAF8: ; // 0x269daf8
|
|
/* 0269DAF8 */ cpu->r[0] = cpu->lr;
|
|
/* 0269DAFC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0269DAFC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269DAFC */ cpu->r[1] = _t0;
|
|
/* 0269DB00 */ cpu->r[8] = 0x100E0000u;
|
|
/* 0269DB04 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0269DB04 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0269DB08 */ cpu->r[12] = 0x0000000Bu;
|
|
/* 0269DB0C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0269DB0C */ rbrew_write32(cpu->mem, _t2, cpu->r[12]);
|
|
/* 0269DB10 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269DB14 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269DB18 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269DB18 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269DB1C */ cpu->r[0] = 0x00000004u;
|
|
/* 0269DB20 */ _t4 = cpu->r[8] + 0x00004724u;
|
|
/* 0269DB20 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269DB24 */ cpu->r[6] = cpu->r[4];
|
|
/* 0269DB28 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0269DB28 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0269DB2C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269DB30 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269DB30 */ rbrew_write32(cpu->mem, _t6, cpu->r[11]);
|
|
/* 0269DB34 */ Gambit_fn_027919C4(cpu);
|
|
/* 0269DB38 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 0269DB38 */ cpu->r[10] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269DB3C */ cpu->r[10] = cpu->r[10] | 0x00000800u;
|
|
/* 0269DB40 */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0269DB40 */ rbrew_write32(cpu->mem, _t8, cpu->r[10]);
|
|
/* 0269DB44 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269DB44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269DB48 */ cpu->lr = cpu->r[0];
|
|
/* 0269DB4C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0269DB4C */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269DB50 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269DB54 */ return;
|
|
}
|
|
|
|
// fn_0269DAFC @ 0x269dafc
|
|
void Gambit_fn_0269DAFC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0269DAFC: ; // 0x269dafc
|
|
/* 0269DAFC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0269DAFC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269DAFC */ cpu->r[1] = _t0;
|
|
/* 0269DB00 */ cpu->r[8] = 0x100E0000u;
|
|
/* 0269DB04 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0269DB04 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0269DB08 */ cpu->r[12] = 0x0000000Bu;
|
|
/* 0269DB0C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0269DB0C */ rbrew_write32(cpu->mem, _t2, cpu->r[12]);
|
|
/* 0269DB10 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269DB14 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269DB18 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269DB18 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269DB1C */ cpu->r[0] = 0x00000004u;
|
|
/* 0269DB20 */ _t4 = cpu->r[8] + 0x00004724u;
|
|
/* 0269DB20 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269DB24 */ cpu->r[6] = cpu->r[4];
|
|
/* 0269DB28 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0269DB28 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0269DB2C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269DB30 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269DB30 */ rbrew_write32(cpu->mem, _t6, cpu->r[11]);
|
|
/* 0269DB34 */ Gambit_fn_027919C4(cpu);
|
|
/* 0269DB38 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 0269DB38 */ cpu->r[10] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269DB3C */ cpu->r[10] = cpu->r[10] | 0x00000800u;
|
|
/* 0269DB40 */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0269DB40 */ rbrew_write32(cpu->mem, _t8, cpu->r[10]);
|
|
/* 0269DB44 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269DB44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269DB48 */ cpu->lr = cpu->r[0];
|
|
/* 0269DB4C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0269DB4C */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269DB50 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269DB54 */ return;
|
|
}
|
|
|
|
// fn_0269DB58 @ 0x269db58
|
|
void Gambit_fn_0269DB58(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0269DB58: ; // 0x269db58
|
|
/* 0269DB58 */ cpu->r[0] = cpu->lr;
|
|
/* 0269DB5C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0269DB5C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269DB5C */ cpu->r[1] = _t0;
|
|
/* 0269DB60 */ cpu->r[8] = 0x100E0000u;
|
|
/* 0269DB64 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0269DB64 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0269DB68 */ cpu->r[12] = 0x0000000Cu;
|
|
/* 0269DB6C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0269DB6C */ rbrew_write32(cpu->mem, _t2, cpu->r[12]);
|
|
/* 0269DB70 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269DB74 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269DB78 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269DB78 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269DB7C */ cpu->r[0] = 0x00000004u;
|
|
/* 0269DB80 */ _t4 = cpu->r[8] + 0x0000472Cu;
|
|
/* 0269DB80 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269DB84 */ cpu->r[6] = cpu->r[4];
|
|
/* 0269DB88 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0269DB88 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0269DB8C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269DB90 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269DB90 */ rbrew_write32(cpu->mem, _t6, cpu->r[11]);
|
|
/* 0269DB94 */ Gambit_fn_027919C4(cpu);
|
|
/* 0269DB98 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 0269DB98 */ cpu->r[10] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269DB9C */ cpu->r[10] = cpu->r[10] | 0x00001000u;
|
|
/* 0269DBA0 */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0269DBA0 */ rbrew_write32(cpu->mem, _t8, cpu->r[10]);
|
|
/* 0269DBA4 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269DBA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269DBA8 */ cpu->lr = cpu->r[0];
|
|
/* 0269DBAC */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0269DBAC */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269DBB0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269DBB4 */ return;
|
|
}
|
|
|
|
// fn_0269DB5C @ 0x269db5c
|
|
void Gambit_fn_0269DB5C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0269DB5C: ; // 0x269db5c
|
|
/* 0269DB5C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0269DB5C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269DB5C */ cpu->r[1] = _t0;
|
|
/* 0269DB60 */ cpu->r[8] = 0x100E0000u;
|
|
/* 0269DB64 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0269DB64 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0269DB68 */ cpu->r[12] = 0x0000000Cu;
|
|
/* 0269DB6C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0269DB6C */ rbrew_write32(cpu->mem, _t2, cpu->r[12]);
|
|
/* 0269DB70 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269DB74 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269DB78 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269DB78 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269DB7C */ cpu->r[0] = 0x00000004u;
|
|
/* 0269DB80 */ _t4 = cpu->r[8] + 0x0000472Cu;
|
|
/* 0269DB80 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269DB84 */ cpu->r[6] = cpu->r[4];
|
|
/* 0269DB88 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0269DB88 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0269DB8C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269DB90 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269DB90 */ rbrew_write32(cpu->mem, _t6, cpu->r[11]);
|
|
/* 0269DB94 */ Gambit_fn_027919C4(cpu);
|
|
/* 0269DB98 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 0269DB98 */ cpu->r[10] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269DB9C */ cpu->r[10] = cpu->r[10] | 0x00001000u;
|
|
/* 0269DBA0 */ _t8 = cpu->r[31] + 0x00000230u;
|
|
/* 0269DBA0 */ rbrew_write32(cpu->mem, _t8, cpu->r[10]);
|
|
/* 0269DBA4 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269DBA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269DBA8 */ cpu->lr = cpu->r[0];
|
|
/* 0269DBAC */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0269DBAC */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269DBB0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269DBB4 */ return;
|
|
}
|
|
|
|
// fn_0269DBB8 @ 0x269dbb8
|
|
void Gambit_fn_0269DBB8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_0269DBB8: ; // 0x269dbb8
|
|
/* 0269DBB8 */ cpu->r[0] = cpu->lr;
|
|
/* 0269DBBC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0269DBBC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269DBBC */ cpu->r[1] = _t0;
|
|
/* 0269DBC0 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0269DBC0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0269DBC4 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269DBC8 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269DBC8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0269DBCC */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0269DBCC */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0269DBD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000003u);
|
|
/* 0269DBD4 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269DBD4 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0269DBD4 */ if (_t5) goto L_0269DBD8; else goto L_0269DBF4;
|
|
L_0269DBD8: ; // 0x269dbd8
|
|
/* 0269DBD8 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 0269DBD8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0269DBDC */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 0269DBDC */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269DBE0 */ cpu->ctr = cpu->r[0];
|
|
/* 0269DBE4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269DBE8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0269DBEC */ cpu->r[10] = 0x00000002u;
|
|
/* 0269DBF0 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0269DBF0 */ rbrew_write32(cpu->mem, _t8, cpu->r[10]);
|
|
L_0269DBF4: ; // 0x269dbf4
|
|
/* 0269DBF4 */ cpu->r[0] = 0x00000005u;
|
|
/* 0269DBF8 */ cpu->r[12] = 0x100E0000u;
|
|
/* 0269DBFC */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 0269DBFC */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 0269DC00 */ _t10 = cpu->r[12] + 0x00004734u;
|
|
/* 0269DC00 */ cpu->r[11] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269DC00 */ cpu->r[12] = _t10;
|
|
/* 0269DC04 */ _t11 = cpu->r[12] + 0x00000004u;
|
|
/* 0269DC04 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0269DC08 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269DC0C */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269DC0C */ rbrew_write32(cpu->mem, _t12, cpu->r[11]);
|
|
/* 0269DC10 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269DC14 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269DC18 */ _t13 = cpu->r[1] + 0x00000010u;
|
|
/* 0269DC18 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 0269DC1C */ Gambit_fn_02791888(cpu);
|
|
/* 0269DC20 */ _t14 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269DC20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0269DC24 */ cpu->lr = cpu->r[0];
|
|
/* 0269DC28 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 0269DC28 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0269DC2C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269DC30 */ return;
|
|
}
|
|
|
|
// fn_0269DBBC @ 0x269dbbc
|
|
void Gambit_fn_0269DBBC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_0269DBBC: ; // 0x269dbbc
|
|
/* 0269DBBC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0269DBBC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269DBBC */ cpu->r[1] = _t0;
|
|
/* 0269DBC0 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0269DBC0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0269DBC4 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269DBC8 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269DBC8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0269DBCC */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0269DBCC */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0269DBD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000003u);
|
|
/* 0269DBD4 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269DBD4 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0269DBD4 */ if (_t5) goto L_0269DBD8; else goto L_0269DBF4;
|
|
L_0269DBD8: ; // 0x269dbd8
|
|
/* 0269DBD8 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 0269DBD8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0269DBDC */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 0269DBDC */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269DBE0 */ cpu->ctr = cpu->r[0];
|
|
/* 0269DBE4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269DBE8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0269DBEC */ cpu->r[10] = 0x00000002u;
|
|
/* 0269DBF0 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0269DBF0 */ rbrew_write32(cpu->mem, _t8, cpu->r[10]);
|
|
L_0269DBF4: ; // 0x269dbf4
|
|
/* 0269DBF4 */ cpu->r[0] = 0x00000005u;
|
|
/* 0269DBF8 */ cpu->r[12] = 0x100E0000u;
|
|
/* 0269DBFC */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 0269DBFC */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 0269DC00 */ _t10 = cpu->r[12] + 0x00004734u;
|
|
/* 0269DC00 */ cpu->r[11] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269DC00 */ cpu->r[12] = _t10;
|
|
/* 0269DC04 */ _t11 = cpu->r[12] + 0x00000004u;
|
|
/* 0269DC04 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0269DC08 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269DC0C */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269DC0C */ rbrew_write32(cpu->mem, _t12, cpu->r[11]);
|
|
/* 0269DC10 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269DC14 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269DC18 */ _t13 = cpu->r[1] + 0x00000010u;
|
|
/* 0269DC18 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 0269DC1C */ Gambit_fn_02791888(cpu);
|
|
/* 0269DC20 */ _t14 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269DC20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0269DC24 */ cpu->lr = cpu->r[0];
|
|
/* 0269DC28 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 0269DC28 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0269DC2C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0269DC30 */ return;
|
|
}
|
|
|
|
// fn_0269DC3C @ 0x269dc3c
|
|
void Gambit_fn_0269DC3C(CPUState* cpu) {
|
|
L_0269DC3C: ; // 0x269dc3c
|
|
/* 0269DC3C */ cpu->r[3] = 0x100E0000u;
|
|
/* 0269DC40 */ cpu->r[3] = cpu->r[3] + 0x000047FCu;
|
|
/* 0269DC44 */ return;
|
|
}
|
|
|
|
// fn_0269DC48 @ 0x269dc48
|
|
void Gambit_fn_0269DC48(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0269DC48: ; // 0x269dc48
|
|
/* 0269DC48 */ cpu->r[9] = 0x101D0000u;
|
|
/* 0269DC4C */ _t0 = cpu->r[9] + 0x00000E60u;
|
|
/* 0269DC4C */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0269DC4C */ cpu->r[9] = _t0;
|
|
/* 0269DC50 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0269DC54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0269DC58 */ cpu->r[12] = cpu->r[12] + 0x00000E64u;
|
|
/* 0269DC5C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269DC5C */ _t2 = _t1 & 0x00000001u;
|
|
/* 0269DC5C */ if (_t2) goto L_0269DC60; else goto L_0269DC74;
|
|
L_0269DC60: ; // 0x269dc60
|
|
/* 0269DC60 */ cpu->r[7] = 0x100E0000u;
|
|
/* 0269DC64 */ cpu->r[0] = 0x00000001u;
|
|
/* 0269DC68 */ cpu->r[7] = cpu->r[7] + 0x000047ECu;
|
|
/* 0269DC6C */ _t3 = cpu->r[9] + 0x00000000u;
|
|
/* 0269DC6C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269DC70 */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 0269DC70 */ rbrew_write32(cpu->mem, _t4, cpu->r[7]);
|
|
L_0269DC74: ; // 0x269dc74
|
|
/* 0269DC74 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 0269DC78 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269DC78 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0269DC78 */ if (_t6) goto L_0269DC7C; else goto L_0269DC84;
|
|
L_0269DC7C: ; // 0x269dc7c
|
|
/* 0269DC7C */ cpu->r[3] = 0x00000001u;
|
|
/* 0269DC80 */ return;
|
|
L_0269DC84: ; // 0x269dc84
|
|
/* 0269DC84 */ cpu->r[7] = 0x101D0000u;
|
|
/* 0269DC88 */ _t7 = cpu->r[7] + 0xFFFFDD74u;
|
|
/* 0269DC88 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269DC88 */ cpu->r[7] = _t7;
|
|
/* 0269DC8C */ cpu->r[11] = 0x101D0000u;
|
|
/* 0269DC90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0269DC94 */ cpu->r[11] = cpu->r[11] + 0xFFFFDD78u;
|
|
/* 0269DC98 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269DC98 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0269DC98 */ if (_t9) goto L_0269DC9C; else goto L_0269DCB0;
|
|
L_0269DC9C: ; // 0x269dc9c
|
|
/* 0269DC9C */ cpu->r[0] = 0x100E0000u;
|
|
/* 0269DCA0 */ cpu->r[9] = 0x00000001u;
|
|
/* 0269DCA4 */ cpu->r[0] = cpu->r[0] + 0x0000474Cu;
|
|
/* 0269DCA8 */ _t10 = cpu->r[7] + 0x00000000u;
|
|
/* 0269DCA8 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 0269DCAC */ _t11 = cpu->r[11] + 0x00000000u;
|
|
/* 0269DCAC */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_0269DCB0: ; // 0x269dcb0
|
|
/* 0269DCB0 */ cpu->r[0] = cpu->r[4] ^ cpu->r[11];
|
|
/* 0269DCB4 */ cpu->r[8] = rbrew_clz32(cpu->r[0]);
|
|
/* 0269DCB8 */ cpu->r[3] = rbrew_rlwinm(cpu->r[8], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
/* 0269DCBC */ return;
|
|
}
|
|
|
|
// fn_0269DCC4 @ 0x269dcc4
|
|
void Gambit_fn_0269DCC4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_0269DCC4: ; // 0x269dcc4
|
|
/* 0269DCC4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0269DCC4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269DCC4 */ cpu->r[1] = _t0;
|
|
/* 0269DCC8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269DCC8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0269DCCC */ cpu->r[31] = cpu->r[3];
|
|
/* 0269DCCC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0269DCD0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0269DCD0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0269DCD4 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269DCD4 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0269DCD4 */ if (_t4) goto L_0269DCD8; else goto L_0269DCE8;
|
|
L_0269DCD8: ; // 0x269dcd8
|
|
/* 0269DCD8 */ cpu->r[3] = 0x00000038u;
|
|
/* 0269DCDC */ Gambit_fn_02801A78(cpu);
|
|
/* 0269DCE0 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269DCE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0269DCE4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269DCE4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0269DCE4 */ if (_t6) goto L_0269DD00; else goto L_0269DCE8;
|
|
L_0269DCE8: ; // 0x269dce8
|
|
/* 0269DCE8 */ cpu->r[6] = 0x02170000u;
|
|
/* 0269DCEC */ cpu->r[3] = cpu->r[31];
|
|
/* 0269DCF0 */ cpu->r[4] = 0x00000002u;
|
|
/* 0269DCF4 */ cpu->r[6] = cpu->r[6] + 0x00001490u;
|
|
/* 0269DCF8 */ cpu->r[5] = 0x0000001Cu;
|
|
/* 0269DCFC */ Gambit_fn_02C82E00(cpu);
|
|
L_0269DD00: ; // 0x269dd00
|
|
/* 0269DD00 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 0269DD00 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269DD04 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269DD08 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269DD08 */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0269DD0C */ cpu->lr = cpu->r[0];
|
|
/* 0269DD10 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0269DD14 */ return;
|
|
}
|
|
|
|
// fn_0269DD18 @ 0x269dd18
|
|
void Gambit_fn_0269DD18(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0269DD18: ; // 0x269dd18
|
|
/* 0269DD18 */ cpu->r[0] = cpu->lr;
|
|
/* 0269DD1C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0269DD1C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269DD1C */ cpu->r[1] = _t0;
|
|
/* 0269DD20 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269DD20 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0269DD24 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0269DD24 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0269DD28 */ _t3 = cpu->r[3] + 0x0000000Eu;
|
|
/* 0269DD28 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0269DD2C */ cpu->r[31] = cpu->r[3];
|
|
/* 0269DD30 */ /* nop */
|
|
/* 0269DD34 */ Gambit_fn_027FC35C(cpu);
|
|
/* 0269DD38 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269DD3C */ Gambit_fn_0269E0E4(cpu);
|
|
/* 0269DD40 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0269DD40 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269DD44 */ cpu->lr = cpu->r[0];
|
|
/* 0269DD48 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269DD48 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0269DD4C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0269DD50 */ return;
|
|
}
|
|
|
|
// fn_0269DD1C @ 0x269dd1c
|
|
void Gambit_fn_0269DD1C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0269DD1C: ; // 0x269dd1c
|
|
/* 0269DD1C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0269DD1C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269DD1C */ cpu->r[1] = _t0;
|
|
/* 0269DD20 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269DD20 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0269DD24 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0269DD24 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0269DD28 */ _t3 = cpu->r[3] + 0x0000000Eu;
|
|
/* 0269DD28 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0269DD2C */ cpu->r[31] = cpu->r[3];
|
|
/* 0269DD30 */ /* nop */
|
|
/* 0269DD34 */ Gambit_fn_027FC35C(cpu);
|
|
/* 0269DD38 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269DD3C */ Gambit_fn_0269E0E4(cpu);
|
|
/* 0269DD40 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0269DD40 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269DD44 */ cpu->lr = cpu->r[0];
|
|
/* 0269DD48 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269DD48 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0269DD4C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0269DD50 */ return;
|
|
}
|
|
|
|
// fn_0269DD54 @ 0x269dd54
|
|
void Gambit_fn_0269DD54(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0269DD54: ; // 0x269dd54
|
|
/* 0269DD54 */ cpu->r[0] = cpu->lr;
|
|
/* 0269DD58 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0269DD5C */ cpu->r[7] = 0x026A0000u;
|
|
/* 0269DD60 */ cpu->r[6] = 0x026A0000u;
|
|
/* 0269DD64 */ cpu->r[10] = 0x101D0000u;
|
|
/* 0269DD68 */ cpu->r[7] = cpu->r[7] + 0xFFFFDC34u;
|
|
/* 0269DD6C */ cpu->r[6] = cpu->r[6] + 0xFFFFDC34u;
|
|
/* 0269DD70 */ cpu->r[10] = cpu->r[10] + 0xFFFF8084u;
|
|
/* 0269DD74 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 0269DD74 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 0269DD78 */ cpu->r[0] = 0x101D0000u;
|
|
/* 0269DD7C */ _t1 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0269DD7C */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 0269DD7C */ cpu->r[1] = _t1;
|
|
/* 0269DD80 */ cpu->r[0] = cpu->r[0] + 0xFFFF8080u;
|
|
/* 0269DD84 */ _t2 = cpu->r[12] + 0xFFFF9034u;
|
|
/* 0269DD84 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0269DD88 */ cpu->r[8] = 0x00000000u;
|
|
/* 0269DD8C */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 0269DD8C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269DD90 */ cpu->r[9] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269DD94 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269DD94 */ rbrew_write32(cpu->mem, _t4, cpu->r[12]);
|
|
/* 0269DD98 */ Gambit_fn_02791B10(cpu);
|
|
/* 0269DD9C */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 0269DD9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0269DDA0 */ cpu->lr = cpu->r[0];
|
|
/* 0269DDA4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0269DDA8 */ return;
|
|
}
|
|
|
|
// fn_0269DD7C @ 0x269dd7c
|
|
void Gambit_fn_0269DD7C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_0269DD7C: ; // 0x269dd7c
|
|
/* 0269DD7C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0269DD7C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269DD7C */ cpu->r[1] = _t0;
|
|
/* 0269DD80 */ cpu->r[0] = cpu->r[0] + 0xFFFF8080u;
|
|
/* 0269DD84 */ _t1 = cpu->r[12] + 0xFFFF9034u;
|
|
/* 0269DD84 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0269DD88 */ cpu->r[8] = 0x00000000u;
|
|
/* 0269DD8C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0269DD8C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0269DD90 */ cpu->r[9] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269DD94 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269DD94 */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 0269DD98 */ Gambit_fn_02791B10(cpu);
|
|
/* 0269DD9C */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0269DD9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269DDA0 */ cpu->lr = cpu->r[0];
|
|
/* 0269DDA4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0269DDA8 */ return;
|
|
}
|
|
|
|
// fn_0269DDAC @ 0x269ddac
|
|
void Gambit_fn_0269DDAC(CPUState* cpu) {
|
|
uint32_t _t0, _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_0269DDAC: ; // 0x269ddac
|
|
/* 0269DDAC */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 0269DDAC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269DDAC */ cpu->r[1] = _t0;
|
|
/* 0269DDB0 */ /* nop */
|
|
/* 0269DDB4 */ cpu->r[0] = cpu->lr;
|
|
/* 0269DDB8 */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 0269DDB8 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0269DDBC */ cpu->r[29] = cpu->r[6];
|
|
/* 0269DDC0 */ cpu->r[28] = cpu->r[3];
|
|
/* 0269DDC4 */ cpu->r[30] = cpu->r[5];
|
|
/* 0269DDC8 */ _t2 = cpu->r[30] + 0x00000000u;
|
|
/* 0269DDC8 */ cpu->r[27] = rbrew_read8(cpu->mem, _t2);
|
|
/* 0269DDCC */ cpu->r[31] = 0x101D0000u;
|
|
/* 0269DDD0 */ _t3 = cpu->r[28] + 0x0000001Cu;
|
|
/* 0269DDD0 */ rbrew_write32(cpu->mem, _t3, cpu->r[4]);
|
|
/* 0269DDD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0269DDD8 */ _t4 = cpu->r[28] + 0x0000000Fu;
|
|
/* 0269DDD8 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[27]);
|
|
/* 0269DDDC */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269DDDC */ _t6 = _t5 & 0x00000001u;
|
|
/* 0269DDDC */ if (_t6) goto L_0269DE20; else goto L_0269DDE0;
|
|
L_0269DDE0: ; // 0x269dde0
|
|
/* 0269DDE0 */ _t7 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 0269DDE0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269DDE4 */ Gambit_fn_02826F20(cpu);
|
|
/* 0269DDE8 */ _t8 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0269DDE8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0269DDEC */ _t9 = cpu->r[9] + 0x00000034u;
|
|
/* 0269DDEC */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269DDF0 */ cpu->ctr = cpu->r[0];
|
|
/* 0269DDF4 */ cpu->r[5] = 0x00000004u;
|
|
/* 0269DDF8 */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0269DDFC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0269DE00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0269DE04 */ cpu->r[0] = cpu->r[27];
|
|
/* 0269DE08 */ _t10 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0269DE08 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0269DE08 */ if (_t11) goto L_0269DE10; else goto L_0269DE0C;
|
|
L_0269DE0C: ; // 0x269de0c
|
|
/* 0269DE0C */ cpu->r[0] = 0x00000001u;
|
|
L_0269DE10: ; // 0x269de10
|
|
/* 0269DE10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0269DE14 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269DE14 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0269DE14 */ if (_t13) goto L_0269DE20; else goto L_0269DE18;
|
|
L_0269DE18: ; // 0x269de18
|
|
/* 0269DE18 */ _t14 = cpu->r[28] + 0x00000024u;
|
|
/* 0269DE18 */ rbrew_write32(cpu->mem, _t14, cpu->r[3]);
|
|
/* 0269DE1C */ _t15 = cpu->r[28] + 0x00000020u;
|
|
/* 0269DE1C */ rbrew_write32(cpu->mem, _t15, cpu->r[27]);
|
|
L_0269DE20: ; // 0x269de20
|
|
/* 0269DE20 */ _t16 = cpu->r[28] + 0x00000020u;
|
|
/* 0269DE20 */ cpu->r[7] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0269DE24 */ cpu->r[0] = 0x00000000u;
|
|
/* 0269DE28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0269DE2C */ cpu->r[12] = cpu->r[0];
|
|
/* 0269DE30 */ _t17 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0269DE30 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0269DE30 */ if (_t18) goto L_0269DE34; else goto L_0269DE58;
|
|
L_0269DE34: ; // 0x269de34
|
|
/* 0269DE34 */ cpu->ctr = cpu->r[7];
|
|
/* 0269DE38 */ cpu->r[10] = 0x00000000u;
|
|
L_0269DE3C: ; // 0x269de3c
|
|
/* 0269DE3C */ _t19 = cpu->r[28] + 0x00000024u;
|
|
/* 0269DE3C */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0269DE40 */ _t20 = cpu->r[11] + cpu->r[10];
|
|
/* 0269DE40 */ rbrew_write16(cpu->mem, _t20, (uint16_t)cpu->r[0]);
|
|
/* 0269DE44 */ cpu->r[8] = cpu->r[11] + cpu->r[10];
|
|
/* 0269DE48 */ _t21 = cpu->r[8] + 0x00000004u;
|
|
/* 0269DE48 */ rbrew_write32(cpu->mem, _t21, cpu->r[12]);
|
|
/* 0269DE4C */ cpu->r[10] = cpu->r[10] + 0x00000008u;
|
|
/* 0269DE50 */ _t22 = cpu->r[8] + 0x00000002u;
|
|
/* 0269DE50 */ rbrew_write16(cpu->mem, _t22, (uint16_t)cpu->r[0]);
|
|
/* 0269DE54 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0269DE54 */ _t23 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0269DE54 */ _t24 = _t23 >> (0x00000002u & 31u);
|
|
/* 0269DE54 */ _t25 = _t24 & 0x00000001u;
|
|
/* 0269DE54 */ if (_t25) goto L_0269DE3C; else goto L_0269DE58;
|
|
L_0269DE58: ; // 0x269de58
|
|
/* 0269DE58 */ _t26 = cpu->r[28] + 0x0000000Fu;
|
|
/* 0269DE58 */ cpu->r[27] = rbrew_read8(cpu->mem, _t26);
|
|
/* 0269DE5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0269DE60 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269DE60 */ _t28 = _t27 & 0x00000001u;
|
|
/* 0269DE60 */ if (_t28) goto L_0269DEA4; else goto L_0269DE64;
|
|
L_0269DE64: ; // 0x269de64
|
|
/* 0269DE64 */ _t29 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 0269DE64 */ cpu->r[3] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0269DE68 */ Gambit_fn_02826F20(cpu);
|
|
/* 0269DE6C */ _t30 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0269DE6C */ cpu->r[12] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0269DE70 */ _t31 = cpu->r[12] + 0x00000034u;
|
|
/* 0269DE70 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0269DE74 */ cpu->ctr = cpu->r[0];
|
|
/* 0269DE78 */ cpu->r[5] = 0x00000004u;
|
|
/* 0269DE7C */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0269DE80 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0269DE84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0269DE88 */ cpu->r[11] = cpu->r[27];
|
|
/* 0269DE8C */ _t32 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0269DE8C */ _t33 = _t32 & 0x00000001u;
|
|
/* 0269DE8C */ if (_t33) goto L_0269DE94; else goto L_0269DE90;
|
|
L_0269DE90: ; // 0x269de90
|
|
/* 0269DE90 */ cpu->r[11] = 0x00000001u;
|
|
L_0269DE94: ; // 0x269de94
|
|
/* 0269DE94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0269DE98 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269DE98 */ _t35 = _t34 & 0x00000001u;
|
|
/* 0269DE98 */ if (_t35) goto L_0269DEA4; else goto L_0269DE9C;
|
|
L_0269DE9C: ; // 0x269de9c
|
|
/* 0269DE9C */ _t36 = cpu->r[28] + 0x0000002Cu;
|
|
/* 0269DE9C */ rbrew_write32(cpu->mem, _t36, cpu->r[3]);
|
|
/* 0269DEA0 */ _t37 = cpu->r[28] + 0x00000028u;
|
|
/* 0269DEA0 */ rbrew_write32(cpu->mem, _t37, cpu->r[27]);
|
|
L_0269DEA4: ; // 0x269dea4
|
|
/* 0269DEA4 */ _t38 = cpu->r[28] + 0x00000028u;
|
|
/* 0269DEA4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t38);
|
|
/* 0269DEA8 */ cpu->r[0] = 0x00000000u;
|
|
/* 0269DEAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 0269DEB0 */ cpu->r[12] = cpu->r[0];
|
|
/* 0269DEB4 */ _t39 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0269DEB4 */ _t40 = _t39 & 0x00000001u;
|
|
/* 0269DEB4 */ if (_t40) goto L_0269DEB8; else goto L_0269DEDC;
|
|
L_0269DEB8: ; // 0x269deb8
|
|
/* 0269DEB8 */ cpu->ctr = cpu->r[6];
|
|
/* 0269DEBC */ cpu->r[9] = 0x00000000u;
|
|
L_0269DEC0: ; // 0x269dec0
|
|
/* 0269DEC0 */ _t41 = cpu->r[28] + 0x0000002Cu;
|
|
/* 0269DEC0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0269DEC4 */ _t42 = cpu->r[5] + cpu->r[9];
|
|
/* 0269DEC4 */ rbrew_write16(cpu->mem, _t42, (uint16_t)cpu->r[0]);
|
|
/* 0269DEC8 */ cpu->r[7] = cpu->r[5] + cpu->r[9];
|
|
/* 0269DECC */ _t43 = cpu->r[7] + 0x00000004u;
|
|
/* 0269DECC */ rbrew_write32(cpu->mem, _t43, cpu->r[12]);
|
|
/* 0269DED0 */ cpu->r[9] = cpu->r[9] + 0x00000008u;
|
|
/* 0269DED4 */ _t44 = cpu->r[7] + 0x00000002u;
|
|
/* 0269DED4 */ rbrew_write16(cpu->mem, _t44, (uint16_t)cpu->r[0]);
|
|
/* 0269DED8 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0269DED8 */ _t45 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0269DED8 */ _t46 = _t45 >> (0x00000002u & 31u);
|
|
/* 0269DED8 */ _t47 = _t46 & 0x00000001u;
|
|
/* 0269DED8 */ if (_t47) goto L_0269DEC0; else goto L_0269DEDC;
|
|
L_0269DEDC: ; // 0x269dedc
|
|
/* 0269DEDC */ _t48 = cpu->r[28] + 0x0000000Fu;
|
|
/* 0269DEDC */ cpu->r[27] = rbrew_read8(cpu->mem, _t48);
|
|
/* 0269DEE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0269DEE4 */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269DEE4 */ _t50 = _t49 & 0x00000001u;
|
|
/* 0269DEE4 */ if (_t50) goto L_0269DF28; else goto L_0269DEE8;
|
|
L_0269DEE8: ; // 0x269dee8
|
|
/* 0269DEE8 */ _t51 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 0269DEE8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t51);
|
|
/* 0269DEEC */ Gambit_fn_02826F20(cpu);
|
|
/* 0269DEF0 */ _t52 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0269DEF0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t52);
|
|
/* 0269DEF4 */ _t53 = cpu->r[6] + 0x00000034u;
|
|
/* 0269DEF4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t53);
|
|
/* 0269DEF8 */ cpu->ctr = cpu->r[0];
|
|
/* 0269DEFC */ cpu->r[5] = 0x00000004u;
|
|
/* 0269DF00 */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0269DF04 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0269DF08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0269DF0C */ cpu->r[10] = cpu->r[27];
|
|
/* 0269DF10 */ _t54 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0269DF10 */ _t55 = _t54 & 0x00000001u;
|
|
/* 0269DF10 */ if (_t55) goto L_0269DF18; else goto L_0269DF14;
|
|
L_0269DF14: ; // 0x269df14
|
|
/* 0269DF14 */ cpu->r[10] = 0x00000001u;
|
|
L_0269DF18: ; // 0x269df18
|
|
/* 0269DF18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0269DF1C */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269DF1C */ _t57 = _t56 & 0x00000001u;
|
|
/* 0269DF1C */ if (_t57) goto L_0269DF28; else goto L_0269DF20;
|
|
L_0269DF20: ; // 0x269df20
|
|
/* 0269DF20 */ _t58 = cpu->r[28] + 0x00000034u;
|
|
/* 0269DF20 */ rbrew_write32(cpu->mem, _t58, cpu->r[3]);
|
|
/* 0269DF24 */ _t59 = cpu->r[28] + 0x00000030u;
|
|
/* 0269DF24 */ rbrew_write32(cpu->mem, _t59, cpu->r[27]);
|
|
L_0269DF28: ; // 0x269df28
|
|
/* 0269DF28 */ _t60 = cpu->r[28] + 0x00000030u;
|
|
/* 0269DF28 */ cpu->r[12] = rbrew_read32(cpu->mem, _t60);
|
|
/* 0269DF2C */ cpu->r[0] = 0x00000000u;
|
|
/* 0269DF30 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0269DF34 */ cpu->r[5] = cpu->r[0];
|
|
/* 0269DF38 */ _t61 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0269DF38 */ _t62 = _t61 & 0x00000001u;
|
|
/* 0269DF38 */ if (_t62) goto L_0269DF3C; else goto L_0269DF60;
|
|
L_0269DF3C: ; // 0x269df3c
|
|
/* 0269DF3C */ cpu->ctr = cpu->r[12];
|
|
/* 0269DF40 */ cpu->r[8] = 0x00000000u;
|
|
L_0269DF44: ; // 0x269df44
|
|
/* 0269DF44 */ _t63 = cpu->r[28] + 0x00000034u;
|
|
/* 0269DF44 */ cpu->r[9] = rbrew_read32(cpu->mem, _t63);
|
|
/* 0269DF48 */ _t64 = cpu->r[9] + cpu->r[8];
|
|
/* 0269DF48 */ rbrew_write16(cpu->mem, _t64, (uint16_t)cpu->r[0]);
|
|
/* 0269DF4C */ cpu->r[6] = cpu->r[9] + cpu->r[8];
|
|
/* 0269DF50 */ _t65 = cpu->r[6] + 0x00000004u;
|
|
/* 0269DF50 */ rbrew_write32(cpu->mem, _t65, cpu->r[5]);
|
|
/* 0269DF54 */ cpu->r[8] = cpu->r[8] + 0x00000008u;
|
|
/* 0269DF58 */ _t66 = cpu->r[6] + 0x00000002u;
|
|
/* 0269DF58 */ rbrew_write16(cpu->mem, _t66, (uint16_t)cpu->r[0]);
|
|
/* 0269DF5C */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0269DF5C */ _t67 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0269DF5C */ _t68 = _t67 >> (0x00000002u & 31u);
|
|
/* 0269DF5C */ _t69 = _t68 & 0x00000001u;
|
|
/* 0269DF5C */ if (_t69) goto L_0269DF44; else goto L_0269DF60;
|
|
L_0269DF60: ; // 0x269df60
|
|
/* 0269DF60 */ _t70 = cpu->r[30] + 0x00000000u;
|
|
/* 0269DF60 */ cpu->r[25] = rbrew_read8(cpu->mem, _t70);
|
|
/* 0269DF64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 0269DF68 */ _t71 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269DF68 */ _t72 = _t71 & 0x00000001u;
|
|
/* 0269DF68 */ if (_t72) goto L_0269E044; else goto L_0269DF6C;
|
|
L_0269DF6C: ; // 0x269df6c
|
|
/* 0269DF6C */ _t73 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 0269DF6C */ cpu->r[3] = rbrew_read32(cpu->mem, _t73);
|
|
/* 0269DF70 */ Gambit_fn_02826F20(cpu);
|
|
/* 0269DF74 */ _t74 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0269DF74 */ cpu->r[10] = rbrew_read32(cpu->mem, _t74);
|
|
/* 0269DF78 */ _t75 = cpu->r[10] + 0x00000034u;
|
|
/* 0269DF78 */ cpu->r[12] = rbrew_read32(cpu->mem, _t75);
|
|
/* 0269DF7C */ cpu->ctr = cpu->r[12];
|
|
/* 0269DF80 */ cpu->r[5] = 0x00000004u;
|
|
/* 0269DF84 */ cpu->r[4] = (uint32_t)((int32_t)cpu->r[25] * (int32_t)0x00000024u);
|
|
/* 0269DF88 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0269DF8C */ cpu->r[24] = cpu->r[3];
|
|
/* 0269DF90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 0269DF94 */ cpu->r[30] = cpu->r[25];
|
|
/* 0269DF98 */ cpu->r[7] = 0x00000000u;
|
|
/* 0269DF9C */ _t76 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0269DF9C */ _t77 = _t76 & 0x00000001u;
|
|
/* 0269DF9C */ if (_t77) goto L_0269DFA4; else goto L_0269DFA0;
|
|
L_0269DFA0: ; // 0x269dfa0
|
|
/* 0269DFA0 */ cpu->r[30] = 0x00000001u;
|
|
L_0269DFA4: ; // 0x269dfa4
|
|
/* 0269DFA4 */ cpu->r[31] = 0x10110000u;
|
|
/* 0269DFA8 */ cpu->r[22] = (uint32_t)((int32_t)cpu->r[7] * (int32_t)0x00000024u);
|
|
/* 0269DFAC */ _t78 = cpu->r[31] + 0x00007399u;
|
|
/* 0269DFAC */ cpu->r[31] = rbrew_read8(cpu->mem, _t78);
|
|
/* 0269DFB0 */ cpu->r[23] = 0x00000018u;
|
|
L_0269DFB4: ; // 0x269dfb4
|
|
/* 0269DFB4 */ cpu->r[27] = cpu->r[24] + cpu->r[22];
|
|
/* 0269DFB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0269DFB8 */ _t79 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269DFB8 */ _t80 = _t79 & 0x00000001u;
|
|
/* 0269DFB8 */ if (_t80) goto L_0269E028; else goto L_0269DFBC;
|
|
L_0269DFBC: ; // 0x269dfbc
|
|
/* 0269DFBC */ cpu->r[26] = cpu->r[27];
|
|
/* 0269DFBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 0269DFC0 */ _t81 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269DFC0 */ _t82 = _t81 & 0x00000001u;
|
|
/* 0269DFC0 */ if (_t82) goto L_0269DFC4; else goto L_0269DFD4;
|
|
L_0269DFC4: ; // 0x269dfc4
|
|
/* 0269DFC4 */ cpu->r[3] = 0x00000024u;
|
|
/* 0269DFC8 */ Gambit_fn_02801A78(cpu);
|
|
/* 0269DFCC */ cpu->r[26] = cpu->r[3];
|
|
/* 0269DFCC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 0269DFD0 */ _t83 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269DFD0 */ _t84 = _t83 & 0x00000001u;
|
|
/* 0269DFD0 */ if (_t84) goto L_0269E01C; else goto L_0269DFD4;
|
|
L_0269DFD4: ; // 0x269dfd4
|
|
/* 0269DFD4 */ cpu->r[11] = cpu->r[26];
|
|
/* 0269DFD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0269DFD8 */ _t85 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269DFD8 */ _t86 = _t85 & 0x00000001u;
|
|
/* 0269DFD8 */ if (_t86) goto L_0269DFDC; else goto L_0269DFEC;
|
|
L_0269DFDC: ; // 0x269dfdc
|
|
/* 0269DFDC */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0269DFE0 */ Gambit_fn_02801A78(cpu);
|
|
/* 0269DFE4 */ cpu->r[11] = cpu->r[3];
|
|
/* 0269DFE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0269DFE8 */ _t87 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269DFE8 */ _t88 = _t87 & 0x00000001u;
|
|
/* 0269DFE8 */ if (_t88) goto L_0269E008; else goto L_0269DFEC;
|
|
L_0269DFEC: ; // 0x269dfec
|
|
/* 0269DFEC */ cpu->r[5] = 0x100E0000u;
|
|
/* 0269DFF0 */ _t89 = cpu->r[11] + 0x00000008u;
|
|
/* 0269DFF0 */ rbrew_write32(cpu->mem, _t89, cpu->r[23]);
|
|
/* 0269DFF4 */ cpu->r[0] = cpu->r[26] + 0x0000000Cu;
|
|
/* 0269DFF8 */ cpu->r[5] = cpu->r[5] + 0x00004774u;
|
|
/* 0269DFFC */ _t90 = cpu->r[11] + 0x00000000u;
|
|
/* 0269DFFC */ rbrew_write32(cpu->mem, _t90, cpu->r[0]);
|
|
/* 0269E000 */ _t91 = cpu->r[11] + 0x00000004u;
|
|
/* 0269E000 */ rbrew_write32(cpu->mem, _t91, cpu->r[5]);
|
|
/* 0269E004 */ _t92 = cpu->r[26] + 0x00000023u;
|
|
/* 0269E004 */ rbrew_write8(cpu->mem, _t92, (uint8_t)cpu->r[31]);
|
|
L_0269E008: ; // 0x269e008
|
|
/* 0269E008 */ cpu->r[6] = 0x100E0000u;
|
|
/* 0269E00C */ _t93 = cpu->r[26] + 0x00000000u;
|
|
/* 0269E00C */ cpu->r[7] = rbrew_read32(cpu->mem, _t93);
|
|
/* 0269E010 */ cpu->r[6] = cpu->r[6] + 0x000047BCu;
|
|
/* 0269E014 */ _t94 = cpu->r[26] + 0x00000004u;
|
|
/* 0269E014 */ rbrew_write32(cpu->mem, _t94, cpu->r[6]);
|
|
/* 0269E018 */ _t95 = cpu->r[7] + 0x00000000u;
|
|
/* 0269E018 */ rbrew_write8(cpu->mem, _t95, (uint8_t)cpu->r[31]);
|
|
L_0269E01C: ; // 0x269e01c
|
|
/* 0269E01C */ cpu->r[0] = 0x100E0000u;
|
|
/* 0269E020 */ cpu->r[0] = cpu->r[0] + 0x000047D4u;
|
|
/* 0269E024 */ _t96 = cpu->r[27] + 0x00000004u;
|
|
/* 0269E024 */ rbrew_write32(cpu->mem, _t96, cpu->r[0]);
|
|
L_0269E028: ; // 0x269e028
|
|
/* 0269E028 */ cpu->r[30] = cpu->r[30] + 0xFFFFFFFFu;
|
|
/* 0269E028 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0269E02C */ cpu->r[22] = cpu->r[22] + 0x00000024u;
|
|
/* 0269E030 */ _t97 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269E030 */ _t98 = _t97 & 0x00000001u;
|
|
/* 0269E030 */ if (_t98) goto L_0269E034; else goto L_0269DFB4;
|
|
L_0269E034: ; // 0x269e034
|
|
/* 0269E034 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 0269E038 */ _t99 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269E038 */ _t100 = _t99 & 0x00000001u;
|
|
/* 0269E038 */ if (_t100) goto L_0269E044; else goto L_0269E03C;
|
|
L_0269E03C: ; // 0x269e03c
|
|
/* 0269E03C */ _t101 = cpu->r[28] + 0x00000018u;
|
|
/* 0269E03C */ rbrew_write32(cpu->mem, _t101, cpu->r[24]);
|
|
/* 0269E040 */ _t102 = cpu->r[28] + 0x00000014u;
|
|
/* 0269E040 */ rbrew_write32(cpu->mem, _t102, cpu->r[25]);
|
|
L_0269E044: ; // 0x269e044
|
|
/* 0269E044 */ _t103 = cpu->r[28] + 0x0000000Eu;
|
|
/* 0269E044 */ rbrew_write8(cpu->mem, _t103, (uint8_t)cpu->r[29]);
|
|
/* 0269E048 */ /* nop */
|
|
/* 0269E04C */ _t104 = cpu->r[1] + 0x00000034u;
|
|
/* 0269E04C */ cpu->r[0] = rbrew_read32(cpu->mem, _t104);
|
|
/* 0269E050 */ cpu->lr = cpu->r[0];
|
|
/* 0269E054 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 0269E058 */ return;
|
|
}
|
|
|
|
// fn_0269E05C @ 0x269e05c
|
|
void Gambit_fn_0269E05C(CPUState* cpu) {
|
|
uint32_t _t0, _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_0269E05C: ; // 0x269e05c
|
|
/* 0269E05C */ _t0 = cpu->r[7] + 0x00000000u;
|
|
/* 0269E05C */ cpu->r[8] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0269E060 */ _t1 = cpu->r[3] + 0x00000020u;
|
|
/* 0269E060 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0269E064 */ _t2 = cpu->r[3] + 0x00000024u;
|
|
/* 0269E064 */ cpu->r[11] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0269E068 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[12]);
|
|
/* 0269E06C */ _t3 = cpu->r[4] + 0x00000000u;
|
|
/* 0269E06C */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0269E070 */ _t4 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269E070 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0269E070 */ if (_t5) goto L_0269E074; else goto L_0269E07C;
|
|
L_0269E074: ; // 0x269e074
|
|
/* 0269E074 */ cpu->r[10] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0269E078 */ cpu->r[11] = cpu->r[11] + cpu->r[10];
|
|
L_0269E07C: ; // 0x269e07c
|
|
/* 0269E07C */ _t6 = cpu->r[11] + 0x00000000u;
|
|
/* 0269E07C */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0269E080 */ _t7 = cpu->r[4] + 0x00000004u;
|
|
/* 0269E080 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269E084 */ _t8 = cpu->r[11] + 0x00000004u;
|
|
/* 0269E084 */ rbrew_write32(cpu->mem, _t8, cpu->r[8]);
|
|
/* 0269E088 */ _t9 = cpu->r[7] + 0x00000000u;
|
|
/* 0269E088 */ cpu->r[9] = rbrew_read8(cpu->mem, _t9);
|
|
/* 0269E08C */ _t10 = cpu->r[3] + 0x00000028u;
|
|
/* 0269E08C */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269E090 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[12]);
|
|
/* 0269E094 */ _t11 = cpu->r[3] + 0x0000002Cu;
|
|
/* 0269E094 */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0269E098 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269E098 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0269E098 */ if (_t13) goto L_0269E09C; else goto L_0269E0A4;
|
|
L_0269E09C: ; // 0x269e09c
|
|
/* 0269E09C */ cpu->r[0] = rbrew_rlwinm(cpu->r[9], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0269E0A0 */ cpu->r[10] = cpu->r[10] + cpu->r[0];
|
|
L_0269E0A4: ; // 0x269e0a4
|
|
/* 0269E0A4 */ _t14 = cpu->r[5] + 0x00000000u;
|
|
/* 0269E0A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0269E0A8 */ _t15 = cpu->r[10] + 0x00000000u;
|
|
/* 0269E0A8 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 0269E0AC */ _t16 = cpu->r[5] + 0x00000004u;
|
|
/* 0269E0AC */ cpu->r[8] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0269E0B0 */ _t17 = cpu->r[10] + 0x00000004u;
|
|
/* 0269E0B0 */ rbrew_write32(cpu->mem, _t17, cpu->r[8]);
|
|
/* 0269E0B4 */ _t18 = cpu->r[3] + 0x00000030u;
|
|
/* 0269E0B4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0269E0B8 */ _t19 = cpu->r[7] + 0x00000000u;
|
|
/* 0269E0B8 */ cpu->r[11] = rbrew_read8(cpu->mem, _t19);
|
|
/* 0269E0BC */ _t20 = cpu->r[3] + 0x00000034u;
|
|
/* 0269E0BC */ cpu->r[12] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0269E0C0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[9]);
|
|
/* 0269E0C4 */ _t21 = cpu->r[6] + 0x00000000u;
|
|
/* 0269E0C4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0269E0C8 */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269E0C8 */ _t23 = _t22 & 0x00000001u;
|
|
/* 0269E0C8 */ if (_t23) goto L_0269E0CC; else goto L_0269E0D4;
|
|
L_0269E0CC: ; // 0x269e0cc
|
|
/* 0269E0CC */ cpu->r[11] = rbrew_rlwinm(cpu->r[11], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0269E0D0 */ cpu->r[12] = cpu->r[12] + cpu->r[11];
|
|
L_0269E0D4: ; // 0x269e0d4
|
|
/* 0269E0D4 */ _t24 = cpu->r[12] + 0x00000000u;
|
|
/* 0269E0D4 */ rbrew_write32(cpu->mem, _t24, cpu->r[7]);
|
|
/* 0269E0D8 */ _t25 = cpu->r[6] + 0x00000004u;
|
|
/* 0269E0D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0269E0DC */ _t26 = cpu->r[12] + 0x00000004u;
|
|
/* 0269E0DC */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 0269E0E0 */ return;
|
|
}
|
|
|
|
// fn_0269E0E4 @ 0x269e0e4
|
|
void Gambit_fn_0269E0E4(CPUState* 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_0269E0E4: ; // 0x269e0e4
|
|
/* 0269E0E4 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0269E0E4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0269E0E8 */ /* nop */
|
|
/* 0269E0EC */ _t1 = cpu->r[3] + 0x00000020u;
|
|
/* 0269E0EC */ cpu->r[7] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0269E0F0 */ cpu->r[8] = cpu->r[0];
|
|
/* 0269E0F4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[7]);
|
|
/* 0269E0F8 */ _t2 = cpu->r[3] + 0x00000024u;
|
|
/* 0269E0F8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0269E0FC */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269E0FC */ _t4 = _t3 & 0x00000001u;
|
|
/* 0269E0FC */ if (_t4) goto L_0269E100; else goto L_0269E118;
|
|
L_0269E100: ; // 0x269e100
|
|
/* 0269E100 */ cpu->r[9] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0269E104 */ cpu->r[9] = cpu->r[12] + cpu->r[9];
|
|
/* 0269E108 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 0269E108 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 0269E10C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0269E110 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269E110 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0269E110 */ if (_t7) goto L_0269E114; else goto L_0269E124;
|
|
L_0269E114: ; // 0x269e114
|
|
/* 0269E114 */ return;
|
|
L_0269E118: ; // 0x269e118
|
|
/* 0269E118 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 0269E118 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 0269E11C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0269E120 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269E120 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0269E120 */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0269E120 */ goto L_0269E124;
|
|
L_0269E124: ; // 0x269e124
|
|
/* 0269E124 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 0269E128 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 0269E128 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0269E12C */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269E12C */ _t13 = _t12 & 0x00000001u;
|
|
/* 0269E12C */ if (_t13) goto L_0269E130; else goto L_0269E138;
|
|
L_0269E130: ; // 0x269e130
|
|
/* 0269E130 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0269E134 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_0269E138: ; // 0x269e138
|
|
/* 0269E138 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 0269E138 */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 0269E13C */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 0269E13C */ cpu->r[8] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 0269E140 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0269E144 */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 0269E144 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0269E148 */ cpu->r[3] = cpu->r[7] + cpu->r[8];
|
|
/* 0269E14C */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269E14C */ _t18 = _t17 & 0x00000001u;
|
|
/* 0269E14C */ if (_t18) goto L_0269E164; else goto L_0269E150;
|
|
L_0269E150: ; // 0x269e150
|
|
/* 0269E150 */ /* nop */
|
|
/* 0269E154 */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 0269E154 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0269E158 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0269E15C */ cpu->r[12] = cpu->r[11] + cpu->r[10];
|
|
/* 0269E160 */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 0269E160 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_0269E164: ; // 0x269e164
|
|
/* 0269E164 */ cpu->ctr = cpu->r[11];
|
|
/* 0269E168 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0269E16C @ 0x269e16c
|
|
void Gambit_fn_0269E16C(CPUState* 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_0269E16C: ; // 0x269e16c
|
|
/* 0269E16C */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0269E16C */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0269E170 */ /* nop */
|
|
/* 0269E174 */ _t1 = cpu->r[3] + 0x00000028u;
|
|
/* 0269E174 */ cpu->r[7] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0269E178 */ cpu->r[8] = cpu->r[0];
|
|
/* 0269E17C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[7]);
|
|
/* 0269E180 */ _t2 = cpu->r[3] + 0x0000002Cu;
|
|
/* 0269E180 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0269E184 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269E184 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0269E184 */ if (_t4) goto L_0269E188; else goto L_0269E1A0;
|
|
L_0269E188: ; // 0x269e188
|
|
/* 0269E188 */ cpu->r[9] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0269E18C */ cpu->r[9] = cpu->r[12] + cpu->r[9];
|
|
/* 0269E190 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 0269E190 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 0269E194 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0269E198 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269E198 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0269E198 */ if (_t7) goto L_0269E19C; else goto L_0269E1AC;
|
|
L_0269E19C: ; // 0x269e19c
|
|
/* 0269E19C */ return;
|
|
L_0269E1A0: ; // 0x269e1a0
|
|
/* 0269E1A0 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 0269E1A0 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 0269E1A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0269E1A8 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269E1A8 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0269E1A8 */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0269E1A8 */ goto L_0269E1AC;
|
|
L_0269E1AC: ; // 0x269e1ac
|
|
/* 0269E1AC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 0269E1B0 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 0269E1B0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0269E1B4 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269E1B4 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0269E1B4 */ if (_t13) goto L_0269E1B8; else goto L_0269E1C0;
|
|
L_0269E1B8: ; // 0x269e1b8
|
|
/* 0269E1B8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0269E1BC */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_0269E1C0: ; // 0x269e1c0
|
|
/* 0269E1C0 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 0269E1C0 */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 0269E1C4 */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 0269E1C4 */ cpu->r[8] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 0269E1C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0269E1CC */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 0269E1CC */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0269E1D0 */ cpu->r[3] = cpu->r[7] + cpu->r[8];
|
|
/* 0269E1D4 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269E1D4 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0269E1D4 */ if (_t18) goto L_0269E1EC; else goto L_0269E1D8;
|
|
L_0269E1D8: ; // 0x269e1d8
|
|
/* 0269E1D8 */ /* nop */
|
|
/* 0269E1DC */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 0269E1DC */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0269E1E0 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0269E1E4 */ cpu->r[12] = cpu->r[11] + cpu->r[10];
|
|
/* 0269E1E8 */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 0269E1E8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_0269E1EC: ; // 0x269e1ec
|
|
/* 0269E1EC */ cpu->ctr = cpu->r[11];
|
|
/* 0269E1F0 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0269E1F4 @ 0x269e1f4
|
|
void Gambit_fn_0269E1F4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0269E1F4: ; // 0x269e1f4
|
|
/* 0269E1F4 */ cpu->r[0] = cpu->lr;
|
|
/* 0269E1F8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0269E1F8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269E1F8 */ cpu->r[1] = _t0;
|
|
/* 0269E1FC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269E1FC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0269E200 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269E204 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0269E204 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0269E208 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0269E208 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0269E20C */ cpu->r[12] = 0x00000000u;
|
|
/* 0269E210 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0269E214 */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 0269E214 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 0269E218 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269E218 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0269E218 */ if (_t6) goto L_0269E240; else goto L_0269E21C;
|
|
L_0269E21C: ; // 0x269e21c
|
|
/* 0269E21C */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0269E21C */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 0269E220 */ /* nop */
|
|
/* 0269E224 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 0269E228 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269E228 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0269E228 */ if (_t9) goto L_0269E22C; else goto L_0269E240;
|
|
L_0269E22C: ; // 0x269e22c
|
|
/* 0269E22C */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 0269E22C */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269E230 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 0269E230 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0269E234 */ cpu->ctr = cpu->r[0];
|
|
/* 0269E238 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269E23C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0269E240: ; // 0x269e240
|
|
/* 0269E240 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269E244 */ Gambit_fn_0269E16C(cpu);
|
|
/* 0269E248 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269E24C */ Gambit_fn_027FC37C(cpu);
|
|
/* 0269E250 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0269E250 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0269E254 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269E254 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0269E258 */ cpu->lr = cpu->r[0];
|
|
/* 0269E25C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0269E260 */ return;
|
|
}
|
|
|
|
// fn_0269E1F8 @ 0x269e1f8
|
|
void Gambit_fn_0269E1F8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0269E1F8: ; // 0x269e1f8
|
|
/* 0269E1F8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0269E1F8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269E1F8 */ cpu->r[1] = _t0;
|
|
/* 0269E1FC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269E1FC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0269E200 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269E204 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0269E204 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0269E208 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0269E208 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0269E20C */ cpu->r[12] = 0x00000000u;
|
|
/* 0269E210 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0269E214 */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 0269E214 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 0269E218 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269E218 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0269E218 */ if (_t6) goto L_0269E240; else goto L_0269E21C;
|
|
L_0269E21C: ; // 0x269e21c
|
|
/* 0269E21C */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0269E21C */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 0269E220 */ /* nop */
|
|
/* 0269E224 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 0269E228 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269E228 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0269E228 */ if (_t9) goto L_0269E22C; else goto L_0269E240;
|
|
L_0269E22C: ; // 0x269e22c
|
|
/* 0269E22C */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 0269E22C */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269E230 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 0269E230 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0269E234 */ cpu->ctr = cpu->r[0];
|
|
/* 0269E238 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269E23C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0269E240: ; // 0x269e240
|
|
/* 0269E240 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269E244 */ Gambit_fn_0269E16C(cpu);
|
|
/* 0269E248 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269E24C */ Gambit_fn_027FC37C(cpu);
|
|
/* 0269E250 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0269E250 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0269E254 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269E254 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0269E258 */ cpu->lr = cpu->r[0];
|
|
/* 0269E25C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0269E260 */ return;
|
|
}
|
|
|
|
// fn_0269E264 @ 0x269e264
|
|
void Gambit_fn_0269E264(CPUState* 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_0269E264: ; // 0x269e264
|
|
/* 0269E264 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0269E264 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0269E268 */ /* nop */
|
|
/* 0269E26C */ _t1 = cpu->r[3] + 0x00000030u;
|
|
/* 0269E26C */ cpu->r[8] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0269E270 */ cpu->r[7] = cpu->r[0];
|
|
/* 0269E274 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[8]);
|
|
/* 0269E278 */ _t2 = cpu->r[3] + 0x00000034u;
|
|
/* 0269E278 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0269E27C */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269E27C */ _t4 = _t3 & 0x00000001u;
|
|
/* 0269E27C */ if (_t4) goto L_0269E280; else goto L_0269E298;
|
|
L_0269E280: ; // 0x269e280
|
|
/* 0269E280 */ cpu->r[10] = rbrew_rlwinm(cpu->r[7], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0269E284 */ cpu->r[9] = cpu->r[12] + cpu->r[10];
|
|
/* 0269E288 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 0269E288 */ cpu->r[11] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 0269E28C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0269E290 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269E290 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0269E290 */ if (_t7) goto L_0269E294; else goto L_0269E2A4;
|
|
L_0269E294: ; // 0x269e294
|
|
/* 0269E294 */ return;
|
|
L_0269E298: ; // 0x269e298
|
|
/* 0269E298 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 0269E298 */ cpu->r[11] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 0269E29C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0269E2A0 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269E2A0 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0269E2A0 */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0269E2A0 */ goto L_0269E2A4;
|
|
L_0269E2A4: ; // 0x269e2a4
|
|
/* 0269E2A4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[8]);
|
|
/* 0269E2A8 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 0269E2A8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0269E2AC */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269E2AC */ _t13 = _t12 & 0x00000001u;
|
|
/* 0269E2AC */ if (_t13) goto L_0269E2B0; else goto L_0269E2B8;
|
|
L_0269E2B0: ; // 0x269e2b0
|
|
/* 0269E2B0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0269E2B4 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_0269E2B8: ; // 0x269e2b8
|
|
/* 0269E2B8 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 0269E2B8 */ cpu->r[7] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 0269E2BC */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 0269E2BC */ cpu->r[9] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 0269E2C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0269E2C4 */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 0269E2C4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0269E2C8 */ cpu->r[3] = cpu->r[8] + cpu->r[9];
|
|
/* 0269E2CC */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269E2CC */ _t18 = _t17 & 0x00000001u;
|
|
/* 0269E2CC */ if (_t18) goto L_0269E2E4; else goto L_0269E2D0;
|
|
L_0269E2D0: ; // 0x269e2d0
|
|
/* 0269E2D0 */ /* nop */
|
|
/* 0269E2D4 */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 0269E2D4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0269E2D8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[7], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0269E2DC */ cpu->r[12] = cpu->r[11] + cpu->r[0];
|
|
/* 0269E2E0 */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 0269E2E0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_0269E2E4: ; // 0x269e2e4
|
|
/* 0269E2E4 */ cpu->ctr = cpu->r[11];
|
|
/* 0269E2E8 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0269E2EC @ 0x269e2ec
|
|
void Gambit_fn_0269E2EC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0269E2EC: ; // 0x269e2ec
|
|
/* 0269E2EC */ cpu->r[0] = cpu->lr;
|
|
/* 0269E2F0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0269E2F0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269E2F0 */ cpu->r[1] = _t0;
|
|
/* 0269E2F4 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0269E2F4 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0269E2F8 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269E2F8 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0269E2FC */ cpu->r[30] = cpu->r[3];
|
|
/* 0269E300 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0269E300 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269E304 */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0269E304 */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 0269E308 */ /* nop */
|
|
/* 0269E30C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 0269E310 */ cpu->r[31] = cpu->r[4];
|
|
/* 0269E314 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269E314 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0269E314 */ if (_t6) goto L_0269E318; else goto L_0269E32C;
|
|
L_0269E318: ; // 0x269e318
|
|
/* 0269E318 */ _t7 = cpu->r[30] + 0x00000004u;
|
|
/* 0269E318 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269E31C */ _t8 = cpu->r[11] + 0x00000014u;
|
|
/* 0269E31C */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0269E320 */ cpu->ctr = cpu->r[0];
|
|
/* 0269E324 */ cpu->r[3] = cpu->r[30];
|
|
/* 0269E328 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0269E32C: ; // 0x269e32c
|
|
/* 0269E32C */ cpu->r[3] = cpu->r[30];
|
|
/* 0269E330 */ cpu->r[4] = cpu->r[31];
|
|
/* 0269E334 */ Gambit_fn_0269E264(cpu);
|
|
/* 0269E338 */ cpu->r[3] = cpu->r[30];
|
|
/* 0269E33C */ /* nop */
|
|
/* 0269E340 */ Gambit_fn_027FC35C(cpu);
|
|
/* 0269E344 */ cpu->r[3] = cpu->r[30];
|
|
/* 0269E348 */ Gambit_fn_0269E0E4(cpu);
|
|
/* 0269E34C */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0269E34C */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269E350 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 0269E350 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269E354 */ cpu->lr = cpu->r[0];
|
|
/* 0269E358 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269E358 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0269E35C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0269E360 */ return;
|
|
}
|
|
|
|
// fn_0269E2F0 @ 0x269e2f0
|
|
void Gambit_fn_0269E2F0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0269E2F0: ; // 0x269e2f0
|
|
/* 0269E2F0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0269E2F0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269E2F0 */ cpu->r[1] = _t0;
|
|
/* 0269E2F4 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0269E2F4 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0269E2F8 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269E2F8 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0269E2FC */ cpu->r[30] = cpu->r[3];
|
|
/* 0269E300 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0269E300 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269E304 */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0269E304 */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 0269E308 */ /* nop */
|
|
/* 0269E30C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 0269E310 */ cpu->r[31] = cpu->r[4];
|
|
/* 0269E314 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269E314 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0269E314 */ if (_t6) goto L_0269E318; else goto L_0269E32C;
|
|
L_0269E318: ; // 0x269e318
|
|
/* 0269E318 */ _t7 = cpu->r[30] + 0x00000004u;
|
|
/* 0269E318 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269E31C */ _t8 = cpu->r[11] + 0x00000014u;
|
|
/* 0269E31C */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0269E320 */ cpu->ctr = cpu->r[0];
|
|
/* 0269E324 */ cpu->r[3] = cpu->r[30];
|
|
/* 0269E328 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0269E32C: ; // 0x269e32c
|
|
/* 0269E32C */ cpu->r[3] = cpu->r[30];
|
|
/* 0269E330 */ cpu->r[4] = cpu->r[31];
|
|
/* 0269E334 */ Gambit_fn_0269E264(cpu);
|
|
/* 0269E338 */ cpu->r[3] = cpu->r[30];
|
|
/* 0269E33C */ /* nop */
|
|
/* 0269E340 */ Gambit_fn_027FC35C(cpu);
|
|
/* 0269E344 */ cpu->r[3] = cpu->r[30];
|
|
/* 0269E348 */ Gambit_fn_0269E0E4(cpu);
|
|
/* 0269E34C */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0269E34C */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269E350 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 0269E350 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269E354 */ cpu->lr = cpu->r[0];
|
|
/* 0269E358 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269E358 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0269E35C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0269E360 */ return;
|
|
}
|
|
|
|
// fn_0269E368 @ 0x269e368
|
|
void Gambit_fn_0269E368(CPUState* cpu) {
|
|
uint32_t _t0, _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_0269E368: ; // 0x269e368
|
|
/* 0269E368 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0269E368 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269E368 */ cpu->r[1] = _t0;
|
|
/* 0269E36C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269E36C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0269E370 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269E370 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0269E374 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0269E374 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0269E378 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269E378 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0269E378 */ if (_t4) goto L_0269E37C; else goto L_0269E38C;
|
|
L_0269E37C: ; // 0x269e37c
|
|
/* 0269E37C */ cpu->r[3] = 0x000000A8u;
|
|
/* 0269E380 */ Gambit_fn_02801A78(cpu);
|
|
/* 0269E384 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269E384 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0269E388 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269E388 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0269E388 */ if (_t6) goto L_0269E438; else goto L_0269E38C;
|
|
L_0269E38C: ; // 0x269e38c
|
|
/* 0269E38C */ cpu->r[3] = cpu->r[31];
|
|
/* 0269E390 */ Gambit_fn_02000020(cpu);
|
|
/* 0269E394 */ cpu->r[0] = 0x100E0000u;
|
|
/* 0269E398 */ cpu->r[0] = cpu->r[0] + 0x00004AA8u;
|
|
/* 0269E39C */ cpu->r[11] = 0x101F0000u;
|
|
/* 0269E3A0 */ _t7 = cpu->r[31] + 0x00000004u;
|
|
/* 0269E3A0 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 0269E3A4 */ _t8 = cpu->r[11] + 0x00006318u;
|
|
/* 0269E3A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0269E3A4 */ cpu->r[11] = _t8;
|
|
/* 0269E3A8 */ _t9 = cpu->r[31] + 0x00000050u;
|
|
/* 0269E3A8 */ rbrew_write32(cpu->mem, _t9, cpu->r[12]);
|
|
/* 0269E3AC */ _t10 = cpu->r[11] + 0x00000004u;
|
|
/* 0269E3AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269E3B0 */ cpu->r[9] = cpu->r[31] + 0x00000058u;
|
|
/* 0269E3B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0269E3B4 */ _t11 = cpu->r[31] + 0x00000054u;
|
|
/* 0269E3B4 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 0269E3B8 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269E3B8 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0269E3B8 */ if (_t13) goto L_0269E3BC; else goto L_0269E3C4;
|
|
L_0269E3BC: ; // 0x269e3bc
|
|
/* 0269E3BC */ cpu->r[3] = 0x00000030u;
|
|
/* 0269E3C0 */ Gambit_fn_02801A78(cpu);
|
|
L_0269E3C4: ; // 0x269e3c4
|
|
/* 0269E3C4 */ cpu->r[0] = cpu->r[31] + 0x00000088u;
|
|
/* 0269E3C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0269E3C8 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269E3C8 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0269E3C8 */ if (_t15) goto L_0269E3CC; else goto L_0269E3D4;
|
|
L_0269E3CC: ; // 0x269e3cc
|
|
/* 0269E3CC */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0269E3D0 */ Gambit_fn_02801A78(cpu);
|
|
L_0269E3D4: ; // 0x269e3d4
|
|
/* 0269E3D4 */ cpu->r[11] = 0x101F0000u;
|
|
/* 0269E3D8 */ _t16 = cpu->r[11] + 0x00006368u;
|
|
/* 0269E3D8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0269E3D8 */ cpu->r[11] = _t16;
|
|
/* 0269E3DC */ _t17 = cpu->r[31] + 0x00000094u;
|
|
/* 0269E3DC */ rbrew_write32(cpu->mem, _t17, cpu->r[9]);
|
|
/* 0269E3E0 */ _t18 = cpu->r[11] + 0x00000004u;
|
|
/* 0269E3E0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0269E3E4 */ cpu->r[12] = 0x00000000u;
|
|
/* 0269E3E8 */ _t19 = cpu->r[31] + 0x00000098u;
|
|
/* 0269E3E8 */ rbrew_write32(cpu->mem, _t19, cpu->r[10]);
|
|
/* 0269E3EC */ _t20 = cpu->r[11] + 0x00000008u;
|
|
/* 0269E3EC */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0269E3F0 */ cpu->r[10] = 0x100E0000u;
|
|
/* 0269E3F4 */ _t21 = cpu->r[31] + 0x000000A0u;
|
|
/* 0269E3F4 */ rbrew_write32(cpu->mem, _t21, cpu->r[12]);
|
|
/* 0269E3F8 */ cpu->r[10] = cpu->r[10] + 0x00004A20u;
|
|
/* 0269E3FC */ _t22 = cpu->r[31] + 0x000000A4u;
|
|
/* 0269E3FC */ rbrew_write32(cpu->mem, _t22, cpu->r[12]);
|
|
/* 0269E400 */ cpu->r[12] = 0x100E0000u;
|
|
/* 0269E404 */ _t23 = cpu->r[31] + 0x0000009Cu;
|
|
/* 0269E404 */ rbrew_write32(cpu->mem, _t23, cpu->r[11]);
|
|
/* 0269E408 */ /* nop */
|
|
/* 0269E40C */ cpu->r[12] = cpu->r[12] + 0x00004A18u;
|
|
/* 0269E410 */ /* nop */
|
|
/* 0269E414 */ cpu->r[11] = 0x100E0000u;
|
|
/* 0269E418 */ /* nop */
|
|
/* 0269E41C */ cpu->r[11] = cpu->r[11] + 0x00004A28u;
|
|
/* 0269E420 */ /* nop */
|
|
/* 0269E424 */ /* nop */
|
|
/* 0269E428 */ /* nop */
|
|
/* 0269E42C */ /* nop */
|
|
/* 0269E430 */ /* nop */
|
|
/* 0269E434 */ /* nop */
|
|
L_0269E438: ; // 0x269e438
|
|
/* 0269E438 */ _t24 = cpu->r[1] + 0x00000014u;
|
|
/* 0269E438 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0269E43C */ cpu->r[3] = cpu->r[31];
|
|
/* 0269E440 */ _t25 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269E440 */ cpu->r[31] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0269E444 */ cpu->lr = cpu->r[0];
|
|
/* 0269E448 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0269E44C */ return;
|
|
}
|
|
|
|
// fn_0269E450 @ 0x269e450
|
|
void Gambit_fn_0269E450(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_0269E450: ; // 0x269e450
|
|
/* 0269E450 */ cpu->r[0] = cpu->lr;
|
|
/* 0269E454 */ cpu->r[12] = 0x100E0000u;
|
|
/* 0269E458 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 0269E458 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 0269E45C */ cpu->r[11] = 0x100E0000u;
|
|
/* 0269E460 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 0269E460 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 0269E460 */ cpu->r[1] = _t1;
|
|
/* 0269E464 */ _t2 = cpu->r[12] + 0x00004A70u;
|
|
/* 0269E464 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 0269E468 */ cpu->r[11] = cpu->r[11] + 0x00004A20u;
|
|
/* 0269E46C */ _t3 = cpu->r[3] + 0x00000054u;
|
|
/* 0269E46C */ rbrew_write_f32(cpu->mem, _t3, cpu->f[0]);
|
|
/* 0269E470 */ cpu->r[12] = 0x100E0000u;
|
|
/* 0269E474 */ _t4 = cpu->r[3] + 0x00000050u;
|
|
/* 0269E474 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[0]);
|
|
/* 0269E478 */ /* nop */
|
|
/* 0269E47C */ cpu->r[11] = 0x100E0000u;
|
|
/* 0269E480 */ cpu->r[12] = cpu->r[12] + 0x00004A18u;
|
|
/* 0269E484 */ /* nop */
|
|
/* 0269E488 */ /* nop */
|
|
/* 0269E48C */ cpu->r[11] = cpu->r[11] + 0x00004A28u;
|
|
/* 0269E490 */ /* nop */
|
|
/* 0269E494 */ /* nop */
|
|
/* 0269E498 */ /* nop */
|
|
/* 0269E49C */ /* nop */
|
|
/* 0269E4A0 */ /* nop */
|
|
/* 0269E4A4 */ cpu->r[11] = 0x101F0000u;
|
|
/* 0269E4A8 */ /* nop */
|
|
/* 0269E4AC */ _t5 = cpu->r[11] + 0x00006368u;
|
|
/* 0269E4AC */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0269E4AC */ cpu->r[11] = _t5;
|
|
/* 0269E4B0 */ _t6 = cpu->r[3] + 0x00000094u;
|
|
/* 0269E4B0 */ rbrew_write32(cpu->mem, _t6, cpu->r[12]);
|
|
/* 0269E4B4 */ _t7 = cpu->r[11] + 0x00000004u;
|
|
/* 0269E4B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269E4B8 */ _t8 = cpu->r[3] + 0x00000098u;
|
|
/* 0269E4B8 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0269E4BC */ cpu->r[4] = 0x00000000u;
|
|
/* 0269E4C0 */ _t9 = cpu->r[11] + 0x00000008u;
|
|
/* 0269E4C0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269E4C4 */ _t10 = cpu->r[3] + 0x000000A0u;
|
|
/* 0269E4C4 */ rbrew_write32(cpu->mem, _t10, cpu->r[4]);
|
|
/* 0269E4C8 */ _t11 = cpu->r[3] + 0x0000009Cu;
|
|
/* 0269E4C8 */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 0269E4CC */ cpu->r[12] = 0x101C0000u;
|
|
/* 0269E4D0 */ _t12 = cpu->r[3] + 0x000000A4u;
|
|
/* 0269E4D0 */ rbrew_write32(cpu->mem, _t12, cpu->r[4]);
|
|
/* 0269E4D4 */ _t13 = cpu->r[12] + 0x00006000u;
|
|
/* 0269E4D4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0269E4D8 */ _t14 = cpu->r[12] + 0x00000268u;
|
|
/* 0269E4D8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0269E4DC */ Gambit_fn_0261F55C(cpu);
|
|
/* 0269E4E0 */ Gambit_fn_025A9E8C(cpu);
|
|
/* 0269E4E4 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269E4E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0269E4E8 */ cpu->lr = cpu->r[0];
|
|
/* 0269E4EC */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 0269E4F0 */ return;
|
|
}
|
|
|
|
// fn_0269E460 @ 0x269e460
|
|
void Gambit_fn_0269E460(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_0269E460: ; // 0x269e460
|
|
/* 0269E460 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 0269E460 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269E460 */ cpu->r[1] = _t0;
|
|
/* 0269E464 */ _t1 = cpu->r[12] + 0x00004A70u;
|
|
/* 0269E464 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 0269E468 */ cpu->r[11] = cpu->r[11] + 0x00004A20u;
|
|
/* 0269E46C */ _t2 = cpu->r[3] + 0x00000054u;
|
|
/* 0269E46C */ rbrew_write_f32(cpu->mem, _t2, cpu->f[0]);
|
|
/* 0269E470 */ cpu->r[12] = 0x100E0000u;
|
|
/* 0269E474 */ _t3 = cpu->r[3] + 0x00000050u;
|
|
/* 0269E474 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[0]);
|
|
/* 0269E478 */ /* nop */
|
|
/* 0269E47C */ cpu->r[11] = 0x100E0000u;
|
|
/* 0269E480 */ cpu->r[12] = cpu->r[12] + 0x00004A18u;
|
|
/* 0269E484 */ /* nop */
|
|
/* 0269E488 */ /* nop */
|
|
/* 0269E48C */ cpu->r[11] = cpu->r[11] + 0x00004A28u;
|
|
/* 0269E490 */ /* nop */
|
|
/* 0269E494 */ /* nop */
|
|
/* 0269E498 */ /* nop */
|
|
/* 0269E49C */ /* nop */
|
|
/* 0269E4A0 */ /* nop */
|
|
/* 0269E4A4 */ cpu->r[11] = 0x101F0000u;
|
|
/* 0269E4A8 */ /* nop */
|
|
/* 0269E4AC */ _t4 = cpu->r[11] + 0x00006368u;
|
|
/* 0269E4AC */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269E4AC */ cpu->r[11] = _t4;
|
|
/* 0269E4B0 */ _t5 = cpu->r[3] + 0x00000094u;
|
|
/* 0269E4B0 */ rbrew_write32(cpu->mem, _t5, cpu->r[12]);
|
|
/* 0269E4B4 */ _t6 = cpu->r[11] + 0x00000004u;
|
|
/* 0269E4B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0269E4B8 */ _t7 = cpu->r[3] + 0x00000098u;
|
|
/* 0269E4B8 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 0269E4BC */ cpu->r[4] = 0x00000000u;
|
|
/* 0269E4C0 */ _t8 = cpu->r[11] + 0x00000008u;
|
|
/* 0269E4C0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0269E4C4 */ _t9 = cpu->r[3] + 0x000000A0u;
|
|
/* 0269E4C4 */ rbrew_write32(cpu->mem, _t9, cpu->r[4]);
|
|
/* 0269E4C8 */ _t10 = cpu->r[3] + 0x0000009Cu;
|
|
/* 0269E4C8 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 0269E4CC */ cpu->r[12] = 0x101C0000u;
|
|
/* 0269E4D0 */ _t11 = cpu->r[3] + 0x000000A4u;
|
|
/* 0269E4D0 */ rbrew_write32(cpu->mem, _t11, cpu->r[4]);
|
|
/* 0269E4D4 */ _t12 = cpu->r[12] + 0x00006000u;
|
|
/* 0269E4D4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0269E4D8 */ _t13 = cpu->r[12] + 0x00000268u;
|
|
/* 0269E4D8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0269E4DC */ Gambit_fn_0261F55C(cpu);
|
|
/* 0269E4E0 */ Gambit_fn_025A9E8C(cpu);
|
|
/* 0269E4E4 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269E4E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0269E4E8 */ cpu->lr = cpu->r[0];
|
|
/* 0269E4EC */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 0269E4F0 */ return;
|
|
}
|
|
|
|
// fn_0269E4F4 @ 0x269e4f4
|
|
void Gambit_fn_0269E4F4(CPUState* cpu) {
|
|
uint32_t _t0, _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, _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;
|
|
double _ft42, _ft43;
|
|
|
|
L_0269E4F4: ; // 0x269e4f4
|
|
/* 0269E4F4 */ cpu->r[0] = cpu->lr;
|
|
/* 0269E4F8 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 0269E4F8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269E4F8 */ cpu->r[1] = _t0;
|
|
/* 0269E4FC */ _t1 = cpu->r[1] + 0x00000020u;
|
|
/* 0269E4FC */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0269E500 */ /* nop */
|
|
/* 0269E504 */ _t2 = cpu->r[1] + 0x00000028u;
|
|
/* 0269E504 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 0269E508 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269E508 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 0269E50C */ _t4 = cpu->r[1] + 0x00000018u;
|
|
/* 0269E50C */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 0269E510 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0269E514 */ _t5 = cpu->r[1] + 0x00000034u;
|
|
/* 0269E514 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0269E518 */ _t6 = cpu->r[12] + 0x00001D34u;
|
|
/* 0269E518 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0269E51C */ _t7 = cpu->r[12] + 0x00000168u;
|
|
/* 0269E51C */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269E520 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0269E524 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269E528 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269E528 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0269E528 */ if (_t9) goto L_0269E5A4; else goto L_0269E52C;
|
|
L_0269E52C: ; // 0x269e52c
|
|
/* 0269E52C */ _t10 = cpu->r[12] + 0x00000164u;
|
|
/* 0269E52C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269E530 */ _t11 = cpu->r[12] + 0x00000160u;
|
|
/* 0269E530 */ cpu->r[9] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0269E534 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], cpu->r[9]);
|
|
/* 0269E538 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269E538 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0269E538 */ if (_t13) goto L_0269E540; else goto L_0269E53C;
|
|
L_0269E53C: ; // 0x269e53c
|
|
/* 0269E53C */ cpu->r[0] = cpu->r[0] - cpu->r[9];
|
|
L_0269E540: ; // 0x269e540
|
|
/* 0269E540 */ _t14 = cpu->r[12] + 0x0000015Cu;
|
|
/* 0269E540 */ cpu->r[9] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0269E544 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0269E548 */ _t15 = cpu->r[9] + cpu->r[0];
|
|
/* 0269E548 */ cpu->r[12] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0269E54C */ _t16 = cpu->r[12] + 0x00000000u;
|
|
/* 0269E54C */ cpu->r[10] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0269E550 */ /* nop */
|
|
/* 0269E554 */ /* nop */
|
|
/* 0269E558 */ /* nop */
|
|
/* 0269E55C */ /* nop */
|
|
/* 0269E560 */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269E560 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0269E564 */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 0269E564 */ cpu->r[9] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0269E568 */ _t19 = cpu->r[1] + 0x00000014u;
|
|
/* 0269E568 */ rbrew_write32(cpu->mem, _t19, cpu->r[0]);
|
|
/* 0269E56C */ _t20 = cpu->r[1] + 0x00000014u;
|
|
/* 0269E56C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 0269E570 */ _t21 = cpu->r[1] + 0x00000010u;
|
|
/* 0269E570 */ rbrew_write32(cpu->mem, _t21, cpu->r[9]);
|
|
/* 0269E574 */ cpu->f[10] = cpu->f[11] * cpu->f[11];
|
|
/* 0269E578 */ _t22 = cpu->r[1] + 0x00000010u;
|
|
/* 0269E578 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 0269E57C */ cpu->r[9] = 0x100E0000u;
|
|
/* 0269E580 */ cpu->r[12] = 0x100E0000u;
|
|
/* 0269E584 */ cpu->f[12] = fma(cpu->f[13], cpu->f[13], cpu->f[10]);
|
|
/* 0269E588 */ _t23 = cpu->r[9] + 0x00004A70u;
|
|
/* 0269E588 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 0269E58C */ _t24 = cpu->r[12] + 0x00004A74u;
|
|
/* 0269E58C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 0269E590 */ cpu->r[10] = 0x100E0000u;
|
|
/* 0269E594 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[13]);
|
|
/* 0269E598 */ _t25 = cpu->r[10] + 0x00004A78u;
|
|
/* 0269E598 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 0269E59C */ _t26 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0269E59C */ _t27 = _t26 & 0x00000001u;
|
|
/* 0269E59C */ if (_t27) goto L_0269E5A0; else goto L_0269E624;
|
|
L_0269E5A0: ; // 0x269e5a0
|
|
/* 0269E5A0 */ goto L_0269E600;
|
|
L_0269E5A4: ; // 0x269e5a4
|
|
/* 0269E5A4 */ _t28 = cpu->r[12] + 0x0000015Cu;
|
|
/* 0269E5A4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0269E5A8 */ _t29 = cpu->r[9] + 0x00000000u;
|
|
/* 0269E5A8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0269E5AC */ _t30 = cpu->r[12] + 0x00000000u;
|
|
/* 0269E5AC */ cpu->r[10] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0269E5B0 */ /* nop */
|
|
/* 0269E5B4 */ /* nop */
|
|
/* 0269E5B8 */ /* nop */
|
|
/* 0269E5BC */ /* nop */
|
|
/* 0269E5C0 */ _t31 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269E5C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0269E5C4 */ _t32 = cpu->r[1] + 0x00000008u;
|
|
/* 0269E5C4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0269E5C8 */ _t33 = cpu->r[1] + 0x00000014u;
|
|
/* 0269E5C8 */ rbrew_write32(cpu->mem, _t33, cpu->r[0]);
|
|
/* 0269E5CC */ _t34 = cpu->r[1] + 0x00000014u;
|
|
/* 0269E5CC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 0269E5D0 */ _t35 = cpu->r[1] + 0x00000010u;
|
|
/* 0269E5D0 */ rbrew_write32(cpu->mem, _t35, cpu->r[9]);
|
|
/* 0269E5D4 */ cpu->f[10] = cpu->f[11] * cpu->f[11];
|
|
/* 0269E5D8 */ _t36 = cpu->r[1] + 0x00000010u;
|
|
/* 0269E5D8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 0269E5DC */ cpu->r[9] = 0x100E0000u;
|
|
/* 0269E5E0 */ cpu->r[12] = 0x100E0000u;
|
|
/* 0269E5E4 */ cpu->f[12] = fma(cpu->f[13], cpu->f[13], cpu->f[10]);
|
|
/* 0269E5E8 */ _t37 = cpu->r[9] + 0x00004A70u;
|
|
/* 0269E5E8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 0269E5EC */ _t38 = cpu->r[12] + 0x00004A74u;
|
|
/* 0269E5EC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 0269E5F0 */ cpu->r[10] = 0x100E0000u;
|
|
/* 0269E5F4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[13]);
|
|
/* 0269E5F8 */ _t39 = cpu->r[10] + 0x00004A78u;
|
|
/* 0269E5F8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 0269E5FC */ _t40 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0269E5FC */ _t41 = _t40 & 0x00000001u;
|
|
/* 0269E5FC */ if (_t41) goto L_0269E600; else goto L_0269E624;
|
|
L_0269E600: ; // 0x269e600
|
|
/* 0269E600 */ _ft42 = sqrt(cpu->f[12]);
|
|
/* 0269E600 */ _ft43 = (double)(int32_t)0x00000001u;
|
|
/* 0269E600 */ cpu->f[13] = _ft43 / _ft42;
|
|
/* 0269E604 */ cpu->f[0] = cpu->f[13] * cpu->f[13];
|
|
/* 0269E608 */ cpu->f[9] = cpu->f[13] * cpu->f[31];
|
|
/* 0269E60C */ cpu->f[0] = -fma(cpu->f[0], cpu->f[12], -(cpu->f[10]));
|
|
/* 0269E610 */ cpu->f[13] = cpu->f[0] * cpu->f[9];
|
|
/* 0269E614 */ /* nop */
|
|
/* 0269E618 */ /* nop */
|
|
/* 0269E61C */ cpu->f[12] = cpu->f[12] * cpu->f[13];
|
|
/* 0269E620 */ /* nop */
|
|
L_0269E624: ; // 0x269e624
|
|
/* 0269E624 */ cpu->r[10] = 0x100E0000u;
|
|
/* 0269E628 */ _t44 = cpu->r[10] + 0x00004A7Cu;
|
|
/* 0269E628 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 0269E62C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[9]);
|
|
/* 0269E630 */ _t45 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269E630 */ _t46 = _t45 & 0x00000001u;
|
|
/* 0269E630 */ if (_t46) goto L_0269E644; else goto L_0269E634;
|
|
L_0269E634: ; // 0x269e634
|
|
/* 0269E634 */ _t47 = cpu->r[1] + 0x00000010u;
|
|
/* 0269E634 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 0269E638 */ _t48 = cpu->r[1] + 0x00000014u;
|
|
/* 0269E638 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 0269E63C */ _t49 = cpu->r[1] + 0x00000008u;
|
|
/* 0269E63C */ rbrew_write_f32(cpu->mem, _t49, cpu->f[9]);
|
|
/* 0269E640 */ _t50 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269E640 */ rbrew_write_f32(cpu->mem, _t50, cpu->f[12]);
|
|
L_0269E644: ; // 0x269e644
|
|
/* 0269E644 */ /* nop */
|
|
/* 0269E648 */ /* nop */
|
|
/* 0269E64C */ /* nop */
|
|
/* 0269E650 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0269E654 */ /* nop */
|
|
/* 0269E658 */ _t51 = cpu->r[3] + 0x00000E14u;
|
|
/* 0269E658 */ cpu->r[3] = rbrew_read32(cpu->mem, _t51);
|
|
/* 0269E65C */ cpu->r[4] = 0x00000000u;
|
|
/* 0269E660 */ Gambit_fn_0200CBD8(cpu);
|
|
/* 0269E664 */ Gambit_fn_02014444(cpu);
|
|
/* 0269E668 */ cpu->r[30] = cpu->r[3];
|
|
/* 0269E66C */ Gambit_fn_0200F010(cpu);
|
|
/* 0269E670 */ cpu->r[12] = 0x100E0000u;
|
|
/* 0269E674 */ cpu->f[11] = cpu->f[1] * cpu->f[31];
|
|
/* 0269E678 */ _t52 = cpu->r[12] + 0x00004A80u;
|
|
/* 0269E678 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 0269E67C */ cpu->f[1] = cpu->f[11] * cpu->f[12];
|
|
/* 0269E680 */ Gambit_fn_02C886F8(cpu);
|
|
/* 0269E684 */ cpu->r[11] = 0x100E0000u;
|
|
/* 0269E688 */ _t53 = cpu->r[11] + 0x00004A84u;
|
|
/* 0269E688 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t53);
|
|
/* 0269E68C */ cpu->r[3] = cpu->r[30];
|
|
/* 0269E690 */ cpu->f[31] = cpu->f[1] * cpu->f[0];
|
|
/* 0269E694 */ Gambit_fn_0200F044(cpu);
|
|
/* 0269E698 */ cpu->r[12] = 0x100E0000u;
|
|
/* 0269E69C */ _t54 = cpu->r[12] + 0x00004A88u;
|
|
/* 0269E69C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 0269E6A0 */ cpu->f[10] = cpu->f[31] * cpu->f[1];
|
|
/* 0269E6A4 */ cpu->f[10] = cpu->f[10] * cpu->f[11];
|
|
/* 0269E6A8 */ cpu->f[9] = -cpu->f[10];
|
|
/* 0269E6AC */ _t55 = cpu->r[31] + 0x00000050u;
|
|
/* 0269E6AC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 0269E6B0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[9]);
|
|
/* 0269E6B4 */ cpu->f[31] = cpu->f[31] * cpu->f[11];
|
|
/* 0269E6B8 */ _t56 = cpu->r[31] + 0x00000054u;
|
|
/* 0269E6B8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 0269E6BC */ _t57 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269E6BC */ _t58 = _t57 & 0x00000001u;
|
|
/* 0269E6BC */ if (_t58) goto L_0269E6C0; else goto L_0269E6D4;
|
|
L_0269E6C0: ; // 0x269e6c0
|
|
/* 0269E6C0 */ cpu->f[13] = -cpu->f[31];
|
|
/* 0269E6C4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[13]);
|
|
/* 0269E6C8 */ _t59 = cpu->r[31] + 0x00000050u;
|
|
/* 0269E6C8 */ rbrew_write_f32(cpu->mem, _t59, cpu->f[9]);
|
|
/* 0269E6CC */ _t60 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269E6CC */ _t61 = _t60 & 0x00000001u;
|
|
/* 0269E6CC */ if (_t61) goto L_0269E6F0; else goto L_0269E6D0;
|
|
L_0269E6D0: ; // 0x269e6d0
|
|
/* 0269E6D0 */ goto L_0269E6F8;
|
|
L_0269E6D4: ; // 0x269e6d4
|
|
/* 0269E6D4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[10]);
|
|
/* 0269E6D8 */ _t62 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0269E6D8 */ _t63 = _t62 & 0x00000001u;
|
|
/* 0269E6D8 */ if (_t63) goto L_0269E6DC; else goto L_0269E6E0;
|
|
L_0269E6DC: ; // 0x269e6dc
|
|
/* 0269E6DC */ cpu->f[12] = cpu->f[10];
|
|
L_0269E6E0: ; // 0x269e6e0
|
|
/* 0269E6E0 */ cpu->f[13] = -cpu->f[31];
|
|
/* 0269E6E4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[13]);
|
|
/* 0269E6E8 */ _t64 = cpu->r[31] + 0x00000050u;
|
|
/* 0269E6E8 */ rbrew_write_f32(cpu->mem, _t64, cpu->f[12]);
|
|
/* 0269E6EC */ _t65 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269E6EC */ _t66 = _t65 & 0x00000001u;
|
|
/* 0269E6EC */ if (_t66) goto L_0269E6F0; else goto L_0269E6F8;
|
|
L_0269E6F0: ; // 0x269e6f0
|
|
/* 0269E6F0 */ _t67 = cpu->r[31] + 0x00000054u;
|
|
/* 0269E6F0 */ rbrew_write_f32(cpu->mem, _t67, cpu->f[13]);
|
|
/* 0269E6F4 */ goto L_0269E708;
|
|
L_0269E6F8: ; // 0x269e6f8
|
|
/* 0269E6F8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[31]);
|
|
/* 0269E6FC */ _t68 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0269E6FC */ _t69 = _t68 & 0x00000001u;
|
|
/* 0269E6FC */ if (_t69) goto L_0269E700; else goto L_0269E704;
|
|
L_0269E700: ; // 0x269e700
|
|
/* 0269E700 */ cpu->f[0] = cpu->f[31];
|
|
L_0269E704: ; // 0x269e704
|
|
/* 0269E704 */ _t70 = cpu->r[31] + 0x00000054u;
|
|
/* 0269E704 */ rbrew_write_f32(cpu->mem, _t70, cpu->f[0]);
|
|
L_0269E708: ; // 0x269e708
|
|
/* 0269E708 */ _t71 = cpu->r[1] + 0x00000028u;
|
|
/* 0269E708 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t71);
|
|
/* 0269E70C */ _t72 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269E70C */ cpu->r[31] = rbrew_read32(cpu->mem, _t72);
|
|
/* 0269E710 */ _t73 = cpu->r[1] + 0x00000020u;
|
|
/* 0269E710 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t73);
|
|
/* 0269E714 */ _t74 = cpu->r[1] + 0x00000018u;
|
|
/* 0269E714 */ cpu->r[30] = rbrew_read32(cpu->mem, _t74);
|
|
/* 0269E718 */ _t75 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269E718 */ _t76 = _t75 & 0x00000001u;
|
|
/* 0269E718 */ if (_t76) goto L_0269E71C; // else: addr-0 trap, fall-through
|
|
L_0269E71C: ; // 0x269e71c
|
|
/* 0269E71C */ _t77 = cpu->r[1] + 0x00000034u;
|
|
/* 0269E71C */ cpu->r[0] = rbrew_read32(cpu->mem, _t77);
|
|
/* 0269E720 */ cpu->lr = cpu->r[0];
|
|
/* 0269E724 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 0269E728 */ return;
|
|
}
|
|
|
|
// fn_0269E4F8 @ 0x269e4f8
|
|
void Gambit_fn_0269E4F8(CPUState* cpu) {
|
|
uint32_t _t0, _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, _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;
|
|
double _ft42, _ft43;
|
|
|
|
L_0269E4F8: ; // 0x269e4f8
|
|
/* 0269E4F8 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 0269E4F8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269E4F8 */ cpu->r[1] = _t0;
|
|
/* 0269E4FC */ _t1 = cpu->r[1] + 0x00000020u;
|
|
/* 0269E4FC */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0269E500 */ /* nop */
|
|
/* 0269E504 */ _t2 = cpu->r[1] + 0x00000028u;
|
|
/* 0269E504 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 0269E508 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269E508 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 0269E50C */ _t4 = cpu->r[1] + 0x00000018u;
|
|
/* 0269E50C */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 0269E510 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0269E514 */ _t5 = cpu->r[1] + 0x00000034u;
|
|
/* 0269E514 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0269E518 */ _t6 = cpu->r[12] + 0x00001D34u;
|
|
/* 0269E518 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0269E51C */ _t7 = cpu->r[12] + 0x00000168u;
|
|
/* 0269E51C */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0269E520 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0269E524 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269E528 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269E528 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0269E528 */ if (_t9) goto L_0269E5A4; else goto L_0269E52C;
|
|
L_0269E52C: ; // 0x269e52c
|
|
/* 0269E52C */ _t10 = cpu->r[12] + 0x00000164u;
|
|
/* 0269E52C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0269E530 */ _t11 = cpu->r[12] + 0x00000160u;
|
|
/* 0269E530 */ cpu->r[9] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0269E534 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], cpu->r[9]);
|
|
/* 0269E538 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269E538 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0269E538 */ if (_t13) goto L_0269E540; else goto L_0269E53C;
|
|
L_0269E53C: ; // 0x269e53c
|
|
/* 0269E53C */ cpu->r[0] = cpu->r[0] - cpu->r[9];
|
|
L_0269E540: ; // 0x269e540
|
|
/* 0269E540 */ _t14 = cpu->r[12] + 0x0000015Cu;
|
|
/* 0269E540 */ cpu->r[9] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0269E544 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0269E548 */ _t15 = cpu->r[9] + cpu->r[0];
|
|
/* 0269E548 */ cpu->r[12] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0269E54C */ _t16 = cpu->r[12] + 0x00000000u;
|
|
/* 0269E54C */ cpu->r[10] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0269E550 */ /* nop */
|
|
/* 0269E554 */ /* nop */
|
|
/* 0269E558 */ /* nop */
|
|
/* 0269E55C */ /* nop */
|
|
/* 0269E560 */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269E560 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0269E564 */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 0269E564 */ cpu->r[9] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0269E568 */ _t19 = cpu->r[1] + 0x00000014u;
|
|
/* 0269E568 */ rbrew_write32(cpu->mem, _t19, cpu->r[0]);
|
|
/* 0269E56C */ _t20 = cpu->r[1] + 0x00000014u;
|
|
/* 0269E56C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 0269E570 */ _t21 = cpu->r[1] + 0x00000010u;
|
|
/* 0269E570 */ rbrew_write32(cpu->mem, _t21, cpu->r[9]);
|
|
/* 0269E574 */ cpu->f[10] = cpu->f[11] * cpu->f[11];
|
|
/* 0269E578 */ _t22 = cpu->r[1] + 0x00000010u;
|
|
/* 0269E578 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 0269E57C */ cpu->r[9] = 0x100E0000u;
|
|
/* 0269E580 */ cpu->r[12] = 0x100E0000u;
|
|
/* 0269E584 */ cpu->f[12] = fma(cpu->f[13], cpu->f[13], cpu->f[10]);
|
|
/* 0269E588 */ _t23 = cpu->r[9] + 0x00004A70u;
|
|
/* 0269E588 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 0269E58C */ _t24 = cpu->r[12] + 0x00004A74u;
|
|
/* 0269E58C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 0269E590 */ cpu->r[10] = 0x100E0000u;
|
|
/* 0269E594 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[13]);
|
|
/* 0269E598 */ _t25 = cpu->r[10] + 0x00004A78u;
|
|
/* 0269E598 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 0269E59C */ _t26 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0269E59C */ _t27 = _t26 & 0x00000001u;
|
|
/* 0269E59C */ if (_t27) goto L_0269E5A0; else goto L_0269E624;
|
|
L_0269E5A0: ; // 0x269e5a0
|
|
/* 0269E5A0 */ goto L_0269E600;
|
|
L_0269E5A4: ; // 0x269e5a4
|
|
/* 0269E5A4 */ _t28 = cpu->r[12] + 0x0000015Cu;
|
|
/* 0269E5A4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0269E5A8 */ _t29 = cpu->r[9] + 0x00000000u;
|
|
/* 0269E5A8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0269E5AC */ _t30 = cpu->r[12] + 0x00000000u;
|
|
/* 0269E5AC */ cpu->r[10] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0269E5B0 */ /* nop */
|
|
/* 0269E5B4 */ /* nop */
|
|
/* 0269E5B8 */ /* nop */
|
|
/* 0269E5BC */ /* nop */
|
|
/* 0269E5C0 */ _t31 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269E5C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0269E5C4 */ _t32 = cpu->r[1] + 0x00000008u;
|
|
/* 0269E5C4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0269E5C8 */ _t33 = cpu->r[1] + 0x00000014u;
|
|
/* 0269E5C8 */ rbrew_write32(cpu->mem, _t33, cpu->r[0]);
|
|
/* 0269E5CC */ _t34 = cpu->r[1] + 0x00000014u;
|
|
/* 0269E5CC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 0269E5D0 */ _t35 = cpu->r[1] + 0x00000010u;
|
|
/* 0269E5D0 */ rbrew_write32(cpu->mem, _t35, cpu->r[9]);
|
|
/* 0269E5D4 */ cpu->f[10] = cpu->f[11] * cpu->f[11];
|
|
/* 0269E5D8 */ _t36 = cpu->r[1] + 0x00000010u;
|
|
/* 0269E5D8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 0269E5DC */ cpu->r[9] = 0x100E0000u;
|
|
/* 0269E5E0 */ cpu->r[12] = 0x100E0000u;
|
|
/* 0269E5E4 */ cpu->f[12] = fma(cpu->f[13], cpu->f[13], cpu->f[10]);
|
|
/* 0269E5E8 */ _t37 = cpu->r[9] + 0x00004A70u;
|
|
/* 0269E5E8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 0269E5EC */ _t38 = cpu->r[12] + 0x00004A74u;
|
|
/* 0269E5EC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 0269E5F0 */ cpu->r[10] = 0x100E0000u;
|
|
/* 0269E5F4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[13]);
|
|
/* 0269E5F8 */ _t39 = cpu->r[10] + 0x00004A78u;
|
|
/* 0269E5F8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 0269E5FC */ _t40 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0269E5FC */ _t41 = _t40 & 0x00000001u;
|
|
/* 0269E5FC */ if (_t41) goto L_0269E600; else goto L_0269E624;
|
|
L_0269E600: ; // 0x269e600
|
|
/* 0269E600 */ _ft42 = sqrt(cpu->f[12]);
|
|
/* 0269E600 */ _ft43 = (double)(int32_t)0x00000001u;
|
|
/* 0269E600 */ cpu->f[13] = _ft43 / _ft42;
|
|
/* 0269E604 */ cpu->f[0] = cpu->f[13] * cpu->f[13];
|
|
/* 0269E608 */ cpu->f[9] = cpu->f[13] * cpu->f[31];
|
|
/* 0269E60C */ cpu->f[0] = -fma(cpu->f[0], cpu->f[12], -(cpu->f[10]));
|
|
/* 0269E610 */ cpu->f[13] = cpu->f[0] * cpu->f[9];
|
|
/* 0269E614 */ /* nop */
|
|
/* 0269E618 */ /* nop */
|
|
/* 0269E61C */ cpu->f[12] = cpu->f[12] * cpu->f[13];
|
|
/* 0269E620 */ /* nop */
|
|
L_0269E624: ; // 0x269e624
|
|
/* 0269E624 */ cpu->r[10] = 0x100E0000u;
|
|
/* 0269E628 */ _t44 = cpu->r[10] + 0x00004A7Cu;
|
|
/* 0269E628 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 0269E62C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[9]);
|
|
/* 0269E630 */ _t45 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269E630 */ _t46 = _t45 & 0x00000001u;
|
|
/* 0269E630 */ if (_t46) goto L_0269E644; else goto L_0269E634;
|
|
L_0269E634: ; // 0x269e634
|
|
/* 0269E634 */ _t47 = cpu->r[1] + 0x00000010u;
|
|
/* 0269E634 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 0269E638 */ _t48 = cpu->r[1] + 0x00000014u;
|
|
/* 0269E638 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 0269E63C */ _t49 = cpu->r[1] + 0x00000008u;
|
|
/* 0269E63C */ rbrew_write_f32(cpu->mem, _t49, cpu->f[9]);
|
|
/* 0269E640 */ _t50 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269E640 */ rbrew_write_f32(cpu->mem, _t50, cpu->f[12]);
|
|
L_0269E644: ; // 0x269e644
|
|
/* 0269E644 */ /* nop */
|
|
/* 0269E648 */ /* nop */
|
|
/* 0269E64C */ /* nop */
|
|
/* 0269E650 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0269E654 */ /* nop */
|
|
/* 0269E658 */ _t51 = cpu->r[3] + 0x00000E14u;
|
|
/* 0269E658 */ cpu->r[3] = rbrew_read32(cpu->mem, _t51);
|
|
/* 0269E65C */ cpu->r[4] = 0x00000000u;
|
|
/* 0269E660 */ Gambit_fn_0200CBD8(cpu);
|
|
/* 0269E664 */ Gambit_fn_02014444(cpu);
|
|
/* 0269E668 */ cpu->r[30] = cpu->r[3];
|
|
/* 0269E66C */ Gambit_fn_0200F010(cpu);
|
|
/* 0269E670 */ cpu->r[12] = 0x100E0000u;
|
|
/* 0269E674 */ cpu->f[11] = cpu->f[1] * cpu->f[31];
|
|
/* 0269E678 */ _t52 = cpu->r[12] + 0x00004A80u;
|
|
/* 0269E678 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 0269E67C */ cpu->f[1] = cpu->f[11] * cpu->f[12];
|
|
/* 0269E680 */ Gambit_fn_02C886F8(cpu);
|
|
/* 0269E684 */ cpu->r[11] = 0x100E0000u;
|
|
/* 0269E688 */ _t53 = cpu->r[11] + 0x00004A84u;
|
|
/* 0269E688 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t53);
|
|
/* 0269E68C */ cpu->r[3] = cpu->r[30];
|
|
/* 0269E690 */ cpu->f[31] = cpu->f[1] * cpu->f[0];
|
|
/* 0269E694 */ Gambit_fn_0200F044(cpu);
|
|
/* 0269E698 */ cpu->r[12] = 0x100E0000u;
|
|
/* 0269E69C */ _t54 = cpu->r[12] + 0x00004A88u;
|
|
/* 0269E69C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 0269E6A0 */ cpu->f[10] = cpu->f[31] * cpu->f[1];
|
|
/* 0269E6A4 */ cpu->f[10] = cpu->f[10] * cpu->f[11];
|
|
/* 0269E6A8 */ cpu->f[9] = -cpu->f[10];
|
|
/* 0269E6AC */ _t55 = cpu->r[31] + 0x00000050u;
|
|
/* 0269E6AC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 0269E6B0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[9]);
|
|
/* 0269E6B4 */ cpu->f[31] = cpu->f[31] * cpu->f[11];
|
|
/* 0269E6B8 */ _t56 = cpu->r[31] + 0x00000054u;
|
|
/* 0269E6B8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 0269E6BC */ _t57 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269E6BC */ _t58 = _t57 & 0x00000001u;
|
|
/* 0269E6BC */ if (_t58) goto L_0269E6C0; else goto L_0269E6D4;
|
|
L_0269E6C0: ; // 0x269e6c0
|
|
/* 0269E6C0 */ cpu->f[13] = -cpu->f[31];
|
|
/* 0269E6C4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[13]);
|
|
/* 0269E6C8 */ _t59 = cpu->r[31] + 0x00000050u;
|
|
/* 0269E6C8 */ rbrew_write_f32(cpu->mem, _t59, cpu->f[9]);
|
|
/* 0269E6CC */ _t60 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269E6CC */ _t61 = _t60 & 0x00000001u;
|
|
/* 0269E6CC */ if (_t61) goto L_0269E6F0; else goto L_0269E6D0;
|
|
L_0269E6D0: ; // 0x269e6d0
|
|
/* 0269E6D0 */ goto L_0269E6F8;
|
|
L_0269E6D4: ; // 0x269e6d4
|
|
/* 0269E6D4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[10]);
|
|
/* 0269E6D8 */ _t62 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0269E6D8 */ _t63 = _t62 & 0x00000001u;
|
|
/* 0269E6D8 */ if (_t63) goto L_0269E6DC; else goto L_0269E6E0;
|
|
L_0269E6DC: ; // 0x269e6dc
|
|
/* 0269E6DC */ cpu->f[12] = cpu->f[10];
|
|
L_0269E6E0: ; // 0x269e6e0
|
|
/* 0269E6E0 */ cpu->f[13] = -cpu->f[31];
|
|
/* 0269E6E4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[13]);
|
|
/* 0269E6E8 */ _t64 = cpu->r[31] + 0x00000050u;
|
|
/* 0269E6E8 */ rbrew_write_f32(cpu->mem, _t64, cpu->f[12]);
|
|
/* 0269E6EC */ _t65 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269E6EC */ _t66 = _t65 & 0x00000001u;
|
|
/* 0269E6EC */ if (_t66) goto L_0269E6F0; else goto L_0269E6F8;
|
|
L_0269E6F0: ; // 0x269e6f0
|
|
/* 0269E6F0 */ _t67 = cpu->r[31] + 0x00000054u;
|
|
/* 0269E6F0 */ rbrew_write_f32(cpu->mem, _t67, cpu->f[13]);
|
|
/* 0269E6F4 */ goto L_0269E708;
|
|
L_0269E6F8: ; // 0x269e6f8
|
|
/* 0269E6F8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[31]);
|
|
/* 0269E6FC */ _t68 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0269E6FC */ _t69 = _t68 & 0x00000001u;
|
|
/* 0269E6FC */ if (_t69) goto L_0269E700; else goto L_0269E704;
|
|
L_0269E700: ; // 0x269e700
|
|
/* 0269E700 */ cpu->f[0] = cpu->f[31];
|
|
L_0269E704: ; // 0x269e704
|
|
/* 0269E704 */ _t70 = cpu->r[31] + 0x00000054u;
|
|
/* 0269E704 */ rbrew_write_f32(cpu->mem, _t70, cpu->f[0]);
|
|
L_0269E708: ; // 0x269e708
|
|
/* 0269E708 */ _t71 = cpu->r[1] + 0x00000028u;
|
|
/* 0269E708 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t71);
|
|
/* 0269E70C */ _t72 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269E70C */ cpu->r[31] = rbrew_read32(cpu->mem, _t72);
|
|
/* 0269E710 */ _t73 = cpu->r[1] + 0x00000020u;
|
|
/* 0269E710 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t73);
|
|
/* 0269E714 */ _t74 = cpu->r[1] + 0x00000018u;
|
|
/* 0269E714 */ cpu->r[30] = rbrew_read32(cpu->mem, _t74);
|
|
/* 0269E718 */ _t75 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269E718 */ _t76 = _t75 & 0x00000001u;
|
|
/* 0269E718 */ if (_t76) goto L_0269E71C; // else: addr-0 trap, fall-through
|
|
L_0269E71C: ; // 0x269e71c
|
|
/* 0269E71C */ _t77 = cpu->r[1] + 0x00000034u;
|
|
/* 0269E71C */ cpu->r[0] = rbrew_read32(cpu->mem, _t77);
|
|
/* 0269E720 */ cpu->lr = cpu->r[0];
|
|
/* 0269E724 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 0269E728 */ return;
|
|
}
|
|
|
|
// fn_0269E72C @ 0x269e72c
|
|
void Gambit_fn_0269E72C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_0269E72C: ; // 0x269e72c
|
|
/* 0269E72C */ _t0 = cpu->r[5] + 0x00000000u;
|
|
/* 0269E72C */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0269E730 */ _t1 = cpu->r[4] + 0x00000000u;
|
|
/* 0269E730 */ rbrew_write32(cpu->mem, _t1, cpu->r[11]);
|
|
/* 0269E734 */ _t2 = cpu->r[5] + 0x00000004u;
|
|
/* 0269E734 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0269E738 */ cpu->r[10] = 0x100E0000u;
|
|
/* 0269E73C */ _t3 = cpu->r[4] + 0x00000004u;
|
|
/* 0269E73C */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 0269E740 */ _t4 = cpu->r[5] + 0x00000008u;
|
|
/* 0269E740 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269E744 */ _t5 = cpu->r[10] + 0x00004A84u;
|
|
/* 0269E744 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 0269E748 */ _t6 = cpu->r[4] + 0x00000008u;
|
|
/* 0269E748 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0269E74C */ /* nop */
|
|
/* 0269E750 */ /* nop */
|
|
/* 0269E754 */ /* nop */
|
|
/* 0269E758 */ /* nop */
|
|
/* 0269E75C */ _t7 = cpu->r[7] + 0x00000008u;
|
|
/* 0269E75C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 0269E760 */ _t8 = cpu->r[4] + 0x00000008u;
|
|
/* 0269E760 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 0269E764 */ cpu->f[7] = fma(cpu->f[0], cpu->f[13], cpu->f[7]);
|
|
/* 0269E768 */ _t9 = cpu->r[4] + 0x00000008u;
|
|
/* 0269E768 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[7]);
|
|
/* 0269E76C */ _t10 = cpu->r[9] + 0x00000000u;
|
|
/* 0269E76C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 0269E770 */ /* nop */
|
|
/* 0269E774 */ /* nop */
|
|
/* 0269E778 */ /* nop */
|
|
/* 0269E77C */ _t11 = cpu->r[8] + 0x00000008u;
|
|
/* 0269E77C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 0269E780 */ cpu->f[7] = fma(cpu->f[0], cpu->f[11], cpu->f[7]);
|
|
/* 0269E784 */ _t12 = cpu->r[4] + 0x00000008u;
|
|
/* 0269E784 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[7]);
|
|
/* 0269E788 */ _t13 = cpu->r[9] + 0x00000004u;
|
|
/* 0269E788 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 0269E78C */ /* nop */
|
|
/* 0269E790 */ /* nop */
|
|
/* 0269E794 */ /* nop */
|
|
/* 0269E798 */ _t14 = cpu->r[6] + 0x00000008u;
|
|
/* 0269E798 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 0269E79C */ cpu->f[7] = fma(cpu->f[9], cpu->f[10], cpu->f[7]);
|
|
/* 0269E7A0 */ _t15 = cpu->r[4] + 0x00000008u;
|
|
/* 0269E7A0 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[7]);
|
|
/* 0269E7A4 */ return;
|
|
}
|
|
|
|
// fn_0269E7A8 @ 0x269e7a8
|
|
void Gambit_fn_0269E7A8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _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;
|
|
double _ft25, _ft26;
|
|
|
|
L_0269E7A8: ; // 0x269e7a8
|
|
/* 0269E7A8 */ cpu->r[0] = cpu->lr;
|
|
/* 0269E7AC */ _t0 = cpu->r[1] + 0xFFFFFF70u;
|
|
/* 0269E7AC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269E7AC */ cpu->r[1] = _t0;
|
|
/* 0269E7B0 */ _t1 = cpu->r[1] + 0x00000080u;
|
|
/* 0269E7B0 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0269E7B4 */ /* nop */
|
|
/* 0269E7B8 */ _t2 = cpu->r[1] + 0x00000088u;
|
|
/* 0269E7B8 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 0269E7BC */ _t3 = cpu->r[1] + 0x00000094u;
|
|
/* 0269E7BC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269E7C0 */ _t4 = cpu->r[1] + 0x00000070u;
|
|
/* 0269E7C0 */ rbrew_write32(cpu->mem, _t4, cpu->r[28]);
|
|
/* 0269E7C4 */ _t5 = cpu->r[1] + 0x00000074u;
|
|
/* 0269E7C4 */ rbrew_write32(cpu->mem, _t5, cpu->r[29]);
|
|
/* 0269E7C8 */ _t6 = cpu->r[1] + 0x00000078u;
|
|
/* 0269E7C8 */ rbrew_write32(cpu->mem, _t6, cpu->r[30]);
|
|
/* 0269E7CC */ _t7 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0269E7CC */ rbrew_write32(cpu->mem, _t7, cpu->r[31]);
|
|
/* 0269E7D0 */ cpu->r[29] = cpu->r[3];
|
|
/* 0269E7D4 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0269E7D8 */ _t8 = cpu->r[3] + 0x00000E14u;
|
|
/* 0269E7D8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0269E7DC */ cpu->r[4] = 0x00000000u;
|
|
/* 0269E7E0 */ Gambit_fn_0200CBD8(cpu);
|
|
/* 0269E7E4 */ Gambit_fn_02014444(cpu);
|
|
/* 0269E7E8 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269E7EC */ Gambit_fn_0200ED68(cpu);
|
|
/* 0269E7F0 */ cpu->r[28] = cpu->r[3];
|
|
/* 0269E7F4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269E7F8 */ Gambit_fn_0200ED70(cpu);
|
|
/* 0269E7FC */ _t9 = cpu->r[3] + 0x00000000u;
|
|
/* 0269E7FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269E800 */ _t10 = cpu->r[1] + 0x00000044u;
|
|
/* 0269E800 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 0269E804 */ _t11 = cpu->r[3] + 0x00000004u;
|
|
/* 0269E804 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0269E808 */ _t12 = cpu->r[1] + 0x00000048u;
|
|
/* 0269E808 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 0269E80C */ _t13 = cpu->r[3] + 0x00000008u;
|
|
/* 0269E80C */ cpu->r[7] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0269E810 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269E814 */ _t14 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0269E814 */ rbrew_write32(cpu->mem, _t14, cpu->r[7]);
|
|
/* 0269E818 */ Gambit_fn_0200ED78(cpu);
|
|
/* 0269E81C */ /* nop */
|
|
/* 0269E820 */ /* nop */
|
|
/* 0269E824 */ /* nop */
|
|
/* 0269E828 */ /* nop */
|
|
/* 0269E82C */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269E82C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 0269E830 */ _t16 = cpu->r[28] + 0x00000008u;
|
|
/* 0269E830 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 0269E834 */ cpu->f[12] = cpu->f[11] * cpu->f[11];
|
|
/* 0269E838 */ _t17 = cpu->r[3] + 0x00000008u;
|
|
/* 0269E838 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 0269E83C */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 0269E83C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 0269E840 */ cpu->f[9] = cpu->f[9] - cpu->f[10];
|
|
/* 0269E844 */ cpu->f[7] = fma(cpu->f[13], cpu->f[13], cpu->f[12]);
|
|
/* 0269E848 */ _t19 = cpu->r[1] + 0x00000010u;
|
|
/* 0269E848 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[9]);
|
|
/* 0269E84C */ cpu->r[12] = 0x100E0000u;
|
|
/* 0269E850 */ cpu->f[0] = fma(cpu->f[9], cpu->f[9], cpu->f[7]);
|
|
/* 0269E854 */ _t20 = cpu->r[12] + 0x00004A70u;
|
|
/* 0269E854 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 0269E858 */ cpu->r[9] = 0x100E0000u;
|
|
/* 0269E85C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[12]);
|
|
/* 0269E860 */ _t21 = cpu->r[9] + 0x00004A78u;
|
|
/* 0269E860 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 0269E864 */ _t22 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0269E864 */ _t23 = _t22 & 0x00000001u;
|
|
/* 0269E864 */ if (_t23) goto L_0269E868; else goto L_0269E89C;
|
|
L_0269E868: ; // 0x269e868
|
|
/* 0269E868 */ cpu->r[12] = 0x100E0000u;
|
|
/* 0269E86C */ _t24 = cpu->r[12] + 0x00004A74u;
|
|
/* 0269E86C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 0269E870 */ _ft25 = sqrt(cpu->f[0]);
|
|
/* 0269E870 */ _ft26 = (double)(int32_t)0x00000001u;
|
|
/* 0269E870 */ cpu->f[8] = _ft26 / _ft25;
|
|
/* 0269E874 */ cpu->f[11] = cpu->f[8] * cpu->f[8];
|
|
/* 0269E878 */ cpu->f[12] = cpu->f[8] * cpu->f[31];
|
|
/* 0269E87C */ cpu->f[11] = -fma(cpu->f[11], cpu->f[0], -(cpu->f[13]));
|
|
/* 0269E880 */ cpu->f[8] = cpu->f[11] * cpu->f[12];
|
|
/* 0269E884 */ _t27 = cpu->r[1] + 0x00000010u;
|
|
/* 0269E884 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 0269E888 */ /* nop */
|
|
/* 0269E88C */ cpu->f[10] = cpu->f[10] * cpu->f[8];
|
|
/* 0269E890 */ /* nop */
|
|
/* 0269E894 */ _t28 = cpu->r[1] + 0x00000010u;
|
|
/* 0269E894 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[10]);
|
|
/* 0269E898 */ /* nop */
|
|
L_0269E89C: ; // 0x269e89c
|
|
/* 0269E89C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0269E8A0 */ cpu->r[4] = cpu->r[1] + 0x00000044u;
|
|
/* 0269E8A4 */ cpu->r[5] = cpu->r[1] + 0x00000058u;
|
|
/* 0269E8A8 */ Gambit_fn_02C692EC(cpu);
|
|
/* 0269E8AC */ cpu->r[3] = cpu->r[1] + 0x00000058u;
|
|
/* 0269E8B0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269E8B4 */ cpu->r[5] = cpu->r[1] + 0x00000044u;
|
|
/* 0269E8B8 */ Gambit_fn_02C692EC(cpu);
|
|
/* 0269E8BC */ cpu->r[3] = cpu->r[29];
|
|
/* 0269E8C0 */ cpu->r[5] = cpu->r[28];
|
|
/* 0269E8C4 */ cpu->r[9] = cpu->r[29] + 0x00000050u;
|
|
/* 0269E8C8 */ cpu->r[4] = cpu->r[1] + 0x00000064u;
|
|
/* 0269E8CC */ cpu->r[6] = cpu->r[1] + 0x00000044u;
|
|
/* 0269E8D0 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 0269E8D4 */ cpu->r[8] = cpu->r[1] + 0x00000058u;
|
|
/* 0269E8D8 */ Gambit_fn_0269E72C(cpu);
|
|
/* 0269E8DC */ cpu->r[3] = cpu->r[31];
|
|
/* 0269E8E0 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269E8E4 */ Gambit_fn_0200ED80(cpu);
|
|
/* 0269E8E8 */ _t29 = cpu->r[1] + 0x00000028u;
|
|
/* 0269E8E8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 0269E8EC */ _t30 = cpu->r[1] + 0x00000024u;
|
|
/* 0269E8EC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 0269E8F0 */ cpu->f[12] = -cpu->f[12];
|
|
/* 0269E8F4 */ _t31 = cpu->r[1] + 0x00000020u;
|
|
/* 0269E8F4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 0269E8F8 */ _t32 = cpu->r[1] + 0x00000034u;
|
|
/* 0269E8F8 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 0269E8FC */ _t33 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269E8FC */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 0269E900 */ _t34 = cpu->r[29] + 0x00000068u;
|
|
/* 0269E900 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[11]);
|
|
/* 0269E904 */ cpu->f[11] = -cpu->f[9];
|
|
/* 0269E908 */ _t35 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0269E908 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 0269E90C */ cpu->f[6] = -cpu->f[8];
|
|
/* 0269E910 */ _t36 = cpu->r[1] + 0x00000068u;
|
|
/* 0269E910 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 0269E914 */ _t37 = cpu->r[29] + 0x00000078u;
|
|
/* 0269E914 */ rbrew_write_f32(cpu->mem, _t37, cpu->f[11]);
|
|
/* 0269E918 */ _t38 = cpu->r[29] + 0x0000005Cu;
|
|
/* 0269E918 */ rbrew_write_f32(cpu->mem, _t38, cpu->f[12]);
|
|
/* 0269E91C */ _t39 = cpu->r[1] + 0x00000030u;
|
|
/* 0269E91C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 0269E920 */ _t40 = cpu->r[1] + 0x00000028u;
|
|
/* 0269E920 */ rbrew_write_f32(cpu->mem, _t40, cpu->f[12]);
|
|
/* 0269E924 */ cpu->f[13] = -cpu->f[10];
|
|
/* 0269E928 */ _t41 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0269E928 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 0269E92C */ _t42 = cpu->r[29] + 0x0000006Cu;
|
|
/* 0269E92C */ rbrew_write_f32(cpu->mem, _t42, cpu->f[0]);
|
|
/* 0269E930 */ cpu->f[12] = -cpu->f[8];
|
|
/* 0269E934 */ _t43 = cpu->r[1] + 0x00000064u;
|
|
/* 0269E934 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 0269E938 */ cpu->f[0] = -cpu->f[7];
|
|
/* 0269E93C */ _t44 = cpu->r[29] + 0x0000007Cu;
|
|
/* 0269E93C */ rbrew_write_f32(cpu->mem, _t44, cpu->f[13]);
|
|
/* 0269E940 */ _t45 = cpu->r[1] + 0x00000038u;
|
|
/* 0269E940 */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t45);
|
|
/* 0269E944 */ _t46 = cpu->r[29] + 0x00000060u;
|
|
/* 0269E944 */ rbrew_write_f32(cpu->mem, _t46, cpu->f[0]);
|
|
/* 0269E948 */ _t47 = cpu->r[29] + 0x00000070u;
|
|
/* 0269E948 */ rbrew_write_f32(cpu->mem, _t47, cpu->f[5]);
|
|
/* 0269E94C */ _t48 = cpu->r[29] + 0x00000080u;
|
|
/* 0269E94C */ rbrew_write_f32(cpu->mem, _t48, cpu->f[12]);
|
|
/* 0269E950 */ _t49 = cpu->r[29] + 0x00000064u;
|
|
/* 0269E950 */ rbrew_write_f32(cpu->mem, _t49, cpu->f[8]);
|
|
/* 0269E954 */ _t50 = cpu->r[1] + 0x0000006Cu;
|
|
/* 0269E954 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t50);
|
|
/* 0269E958 */ _t51 = cpu->r[29] + 0x00000074u;
|
|
/* 0269E958 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[9]);
|
|
/* 0269E95C */ _t52 = cpu->r[29] + 0x00000084u;
|
|
/* 0269E95C */ rbrew_write_f32(cpu->mem, _t52, cpu->f[10]);
|
|
/* 0269E960 */ cpu->r[31] = 0x101D0000u;
|
|
/* 0269E964 */ _t53 = cpu->r[29] + 0x00000058u;
|
|
/* 0269E964 */ rbrew_write_f32(cpu->mem, _t53, cpu->f[6]);
|
|
/* 0269E968 */ _t54 = cpu->r[31] + 0xFFFF9918u;
|
|
/* 0269E968 */ cpu->r[3] = rbrew_read32(cpu->mem, _t54);
|
|
/* 0269E96C */ _t55 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269E96C */ rbrew_write_f32(cpu->mem, _t55, cpu->f[6]);
|
|
/* 0269E970 */ _t56 = cpu->r[1] + 0x00000030u;
|
|
/* 0269E970 */ rbrew_write_f32(cpu->mem, _t56, cpu->f[13]);
|
|
/* 0269E974 */ _t57 = cpu->r[1] + 0x00000034u;
|
|
/* 0269E974 */ rbrew_write_f32(cpu->mem, _t57, cpu->f[0]);
|
|
/* 0269E978 */ _t58 = cpu->r[1] + 0x00000024u;
|
|
/* 0269E978 */ rbrew_write_f32(cpu->mem, _t58, cpu->f[11]);
|
|
/* 0269E97C */ _t59 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0269E97C */ rbrew_write_f32(cpu->mem, _t59, cpu->f[12]);
|
|
/* 0269E980 */ Gambit_fn_02830138(cpu);
|
|
/* 0269E984 */ cpu->r[30] = cpu->r[3];
|
|
/* 0269E988 */ _t60 = cpu->r[31] + 0xFFFF9918u;
|
|
/* 0269E988 */ cpu->r[3] = rbrew_read32(cpu->mem, _t60);
|
|
/* 0269E98C */ Gambit_fn_02830138(cpu);
|
|
/* 0269E990 */ cpu->r[8] = rbrew_rlwinm(cpu->r[3], 0x00000017u, 0x00000009u, 0x0000001Fu);
|
|
/* 0269E994 */ cpu->r[11] = 0x100E0000u;
|
|
/* 0269E998 */ cpu->r[0] = cpu->r[8] | 0x3F800000u;
|
|
/* 0269E99C */ _t61 = cpu->r[11] + 0x00004A7Cu;
|
|
/* 0269E99C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t61);
|
|
/* 0269E9A0 */ _t62 = cpu->r[1] + 0x00000040u;
|
|
/* 0269E9A0 */ rbrew_write32(cpu->mem, _t62, cpu->r[0]);
|
|
/* 0269E9A4 */ _t63 = cpu->r[1] + 0x00000040u;
|
|
/* 0269E9A4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t63);
|
|
/* 0269E9A8 */ cpu->f[1] = cpu->f[31];
|
|
/* 0269E9AC */ cpu->f[2] = cpu->f[8] - cpu->f[9];
|
|
/* 0269E9B0 */ Gambit_fn_0204EA50(cpu);
|
|
/* 0269E9B4 */ cpu->r[8] = rbrew_rlwinm(cpu->r[30], 0x00000000u, 0x00000008u, 0x0000001Fu);
|
|
/* 0269E9B8 */ cpu->r[0] = 0x43300000u;
|
|
/* 0269E9BC */ _t64 = cpu->r[1] + 0x00000054u;
|
|
/* 0269E9BC */ rbrew_write32(cpu->mem, _t64, cpu->r[8]);
|
|
/* 0269E9C0 */ _t65 = cpu->r[1] + 0x00000050u;
|
|
/* 0269E9C0 */ rbrew_write32(cpu->mem, _t65, cpu->r[0]);
|
|
/* 0269E9C4 */ cpu->r[10] = 0x100E0000u;
|
|
/* 0269E9C8 */ _t66 = cpu->r[1] + 0x00000050u;
|
|
/* 0269E9C8 */ cpu->f[11] = rbrew_read_f64(cpu->mem, _t66);
|
|
/* 0269E9CC */ cpu->r[9] = 0x100E0000u;
|
|
/* 0269E9D0 */ _t67 = cpu->r[10] + 0x00004A90u;
|
|
/* 0269E9D0 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t67);
|
|
/* 0269E9D4 */ cpu->r[7] = rbrew_rlwinm(cpu->r[30], 0x0000000Cu, 0x00000014u, 0x0000001Bu);
|
|
/* 0269E9D8 */ _t68 = cpu->r[9] + 0x00004A98u;
|
|
/* 0269E9D8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t68);
|
|
/* 0269E9DC */ cpu->f[12] = cpu->f[11] - cpu->f[0];
|
|
/* 0269E9E0 */ cpu->r[9] = cpu->r[7] + 0x10110000u;
|
|
/* 0269E9E4 */ _t69 = cpu->r[9] + 0x000053A0u;
|
|
/* 0269E9E4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t69);
|
|
/* 0269E9E8 */ cpu->r[7] = cpu->r[9] + 0x000053A0u;
|
|
/* 0269E9EC */ cpu->f[7] = (double)(float)cpu->f[12];
|
|
/* 0269E9F0 */ _t70 = cpu->r[7] + 0x00000004u;
|
|
/* 0269E9F0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t70);
|
|
/* 0269E9F4 */ _t71 = cpu->r[7] + 0x00000008u;
|
|
/* 0269E9F4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t71);
|
|
/* 0269E9F8 */ cpu->f[9] = cpu->f[7] * cpu->f[10];
|
|
/* 0269E9FC */ _t72 = cpu->r[7] + 0x0000000Cu;
|
|
/* 0269E9FC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t72);
|
|
/* 0269EA00 */ cpu->r[7] = 0x100E0000u;
|
|
/* 0269EA04 */ cpu->f[7] = fma(cpu->f[0], cpu->f[9], cpu->f[8]);
|
|
/* 0269EA08 */ _t73 = cpu->r[7] + 0x00004A8Cu;
|
|
/* 0269EA08 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t73);
|
|
/* 0269EA0C */ cpu->f[12] = fma(cpu->f[10], cpu->f[9], cpu->f[13]);
|
|
/* 0269EA10 */ cpu->r[4] = cpu->r[29] + 0x00000088u;
|
|
/* 0269EA14 */ _t74 = cpu->r[1] + 0x00000018u;
|
|
/* 0269EA14 */ rbrew_write_f32(cpu->mem, _t74, cpu->f[7]);
|
|
/* 0269EA18 */ cpu->f[11] = cpu->f[1] * cpu->f[11];
|
|
/* 0269EA1C */ _t75 = cpu->r[1] + 0x00000014u;
|
|
/* 0269EA1C */ rbrew_write_f32(cpu->mem, _t75, cpu->f[12]);
|
|
/* 0269EA20 */ /* nop */
|
|
/* 0269EA24 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 0269EA28 */ cpu->r[6] = cpu->r[1] + 0x00000044u;
|
|
/* 0269EA2C */ /* nop */
|
|
/* 0269EA30 */ /* nop */
|
|
/* 0269EA34 */ cpu->r[8] = cpu->r[1] + 0x00000058u;
|
|
/* 0269EA38 */ cpu->r[9] = cpu->r[1] + 0x00000014u;
|
|
/* 0269EA3C */ /* nop */
|
|
/* 0269EA40 */ cpu->r[5] = cpu->r[28];
|
|
/* 0269EA44 */ cpu->r[3] = cpu->r[29];
|
|
/* 0269EA48 */ /* nop */
|
|
/* 0269EA4C */ Gambit_fn_0269E72C(cpu);
|
|
/* 0269EA50 */ _t76 = cpu->r[1] + 0x00000070u;
|
|
/* 0269EA50 */ cpu->r[28] = rbrew_read32(cpu->mem, _t76);
|
|
/* 0269EA54 */ _t77 = cpu->r[1] + 0x00000074u;
|
|
/* 0269EA54 */ cpu->r[29] = rbrew_read32(cpu->mem, _t77);
|
|
/* 0269EA58 */ _t78 = cpu->r[1] + 0x00000088u;
|
|
/* 0269EA58 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t78);
|
|
/* 0269EA5C */ _t79 = cpu->r[1] + 0x00000078u;
|
|
/* 0269EA5C */ cpu->r[30] = rbrew_read32(cpu->mem, _t79);
|
|
/* 0269EA60 */ _t80 = cpu->r[1] + 0x00000080u;
|
|
/* 0269EA60 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t80);
|
|
/* 0269EA64 */ _t81 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0269EA64 */ cpu->r[31] = rbrew_read32(cpu->mem, _t81);
|
|
/* 0269EA68 */ _t82 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269EA68 */ _t83 = _t82 & 0x00000001u;
|
|
/* 0269EA68 */ if (_t83) goto L_0269EA6C; // else: addr-0 trap, fall-through
|
|
L_0269EA6C: ; // 0x269ea6c
|
|
/* 0269EA6C */ _t84 = cpu->r[1] + 0x00000094u;
|
|
/* 0269EA6C */ cpu->r[0] = rbrew_read32(cpu->mem, _t84);
|
|
/* 0269EA70 */ cpu->lr = cpu->r[0];
|
|
/* 0269EA74 */ cpu->r[1] = cpu->r[1] + 0x00000090u;
|
|
/* 0269EA78 */ return;
|
|
}
|
|
|
|
// fn_0269E7AC @ 0x269e7ac
|
|
void Gambit_fn_0269E7AC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _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;
|
|
double _ft25, _ft26;
|
|
|
|
L_0269E7AC: ; // 0x269e7ac
|
|
/* 0269E7AC */ _t0 = cpu->r[1] + 0xFFFFFF70u;
|
|
/* 0269E7AC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269E7AC */ cpu->r[1] = _t0;
|
|
/* 0269E7B0 */ _t1 = cpu->r[1] + 0x00000080u;
|
|
/* 0269E7B0 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0269E7B4 */ /* nop */
|
|
/* 0269E7B8 */ _t2 = cpu->r[1] + 0x00000088u;
|
|
/* 0269E7B8 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 0269E7BC */ _t3 = cpu->r[1] + 0x00000094u;
|
|
/* 0269E7BC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0269E7C0 */ _t4 = cpu->r[1] + 0x00000070u;
|
|
/* 0269E7C0 */ rbrew_write32(cpu->mem, _t4, cpu->r[28]);
|
|
/* 0269E7C4 */ _t5 = cpu->r[1] + 0x00000074u;
|
|
/* 0269E7C4 */ rbrew_write32(cpu->mem, _t5, cpu->r[29]);
|
|
/* 0269E7C8 */ _t6 = cpu->r[1] + 0x00000078u;
|
|
/* 0269E7C8 */ rbrew_write32(cpu->mem, _t6, cpu->r[30]);
|
|
/* 0269E7CC */ _t7 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0269E7CC */ rbrew_write32(cpu->mem, _t7, cpu->r[31]);
|
|
/* 0269E7D0 */ cpu->r[29] = cpu->r[3];
|
|
/* 0269E7D4 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0269E7D8 */ _t8 = cpu->r[3] + 0x00000E14u;
|
|
/* 0269E7D8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0269E7DC */ cpu->r[4] = 0x00000000u;
|
|
/* 0269E7E0 */ Gambit_fn_0200CBD8(cpu);
|
|
/* 0269E7E4 */ Gambit_fn_02014444(cpu);
|
|
/* 0269E7E8 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269E7EC */ Gambit_fn_0200ED68(cpu);
|
|
/* 0269E7F0 */ cpu->r[28] = cpu->r[3];
|
|
/* 0269E7F4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269E7F8 */ Gambit_fn_0200ED70(cpu);
|
|
/* 0269E7FC */ _t9 = cpu->r[3] + 0x00000000u;
|
|
/* 0269E7FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269E800 */ _t10 = cpu->r[1] + 0x00000044u;
|
|
/* 0269E800 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 0269E804 */ _t11 = cpu->r[3] + 0x00000004u;
|
|
/* 0269E804 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0269E808 */ _t12 = cpu->r[1] + 0x00000048u;
|
|
/* 0269E808 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 0269E80C */ _t13 = cpu->r[3] + 0x00000008u;
|
|
/* 0269E80C */ cpu->r[7] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0269E810 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269E814 */ _t14 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0269E814 */ rbrew_write32(cpu->mem, _t14, cpu->r[7]);
|
|
/* 0269E818 */ Gambit_fn_0200ED78(cpu);
|
|
/* 0269E81C */ /* nop */
|
|
/* 0269E820 */ /* nop */
|
|
/* 0269E824 */ /* nop */
|
|
/* 0269E828 */ /* nop */
|
|
/* 0269E82C */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269E82C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 0269E830 */ _t16 = cpu->r[28] + 0x00000008u;
|
|
/* 0269E830 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 0269E834 */ cpu->f[12] = cpu->f[11] * cpu->f[11];
|
|
/* 0269E838 */ _t17 = cpu->r[3] + 0x00000008u;
|
|
/* 0269E838 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 0269E83C */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 0269E83C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 0269E840 */ cpu->f[9] = cpu->f[9] - cpu->f[10];
|
|
/* 0269E844 */ cpu->f[7] = fma(cpu->f[13], cpu->f[13], cpu->f[12]);
|
|
/* 0269E848 */ _t19 = cpu->r[1] + 0x00000010u;
|
|
/* 0269E848 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[9]);
|
|
/* 0269E84C */ cpu->r[12] = 0x100E0000u;
|
|
/* 0269E850 */ cpu->f[0] = fma(cpu->f[9], cpu->f[9], cpu->f[7]);
|
|
/* 0269E854 */ _t20 = cpu->r[12] + 0x00004A70u;
|
|
/* 0269E854 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 0269E858 */ cpu->r[9] = 0x100E0000u;
|
|
/* 0269E85C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[12]);
|
|
/* 0269E860 */ _t21 = cpu->r[9] + 0x00004A78u;
|
|
/* 0269E860 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 0269E864 */ _t22 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0269E864 */ _t23 = _t22 & 0x00000001u;
|
|
/* 0269E864 */ if (_t23) goto L_0269E868; else goto L_0269E89C;
|
|
L_0269E868: ; // 0x269e868
|
|
/* 0269E868 */ cpu->r[12] = 0x100E0000u;
|
|
/* 0269E86C */ _t24 = cpu->r[12] + 0x00004A74u;
|
|
/* 0269E86C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 0269E870 */ _ft25 = sqrt(cpu->f[0]);
|
|
/* 0269E870 */ _ft26 = (double)(int32_t)0x00000001u;
|
|
/* 0269E870 */ cpu->f[8] = _ft26 / _ft25;
|
|
/* 0269E874 */ cpu->f[11] = cpu->f[8] * cpu->f[8];
|
|
/* 0269E878 */ cpu->f[12] = cpu->f[8] * cpu->f[31];
|
|
/* 0269E87C */ cpu->f[11] = -fma(cpu->f[11], cpu->f[0], -(cpu->f[13]));
|
|
/* 0269E880 */ cpu->f[8] = cpu->f[11] * cpu->f[12];
|
|
/* 0269E884 */ _t27 = cpu->r[1] + 0x00000010u;
|
|
/* 0269E884 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 0269E888 */ /* nop */
|
|
/* 0269E88C */ cpu->f[10] = cpu->f[10] * cpu->f[8];
|
|
/* 0269E890 */ /* nop */
|
|
/* 0269E894 */ _t28 = cpu->r[1] + 0x00000010u;
|
|
/* 0269E894 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[10]);
|
|
/* 0269E898 */ /* nop */
|
|
L_0269E89C: ; // 0x269e89c
|
|
/* 0269E89C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0269E8A0 */ cpu->r[4] = cpu->r[1] + 0x00000044u;
|
|
/* 0269E8A4 */ cpu->r[5] = cpu->r[1] + 0x00000058u;
|
|
/* 0269E8A8 */ Gambit_fn_02C692EC(cpu);
|
|
/* 0269E8AC */ cpu->r[3] = cpu->r[1] + 0x00000058u;
|
|
/* 0269E8B0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0269E8B4 */ cpu->r[5] = cpu->r[1] + 0x00000044u;
|
|
/* 0269E8B8 */ Gambit_fn_02C692EC(cpu);
|
|
/* 0269E8BC */ cpu->r[3] = cpu->r[29];
|
|
/* 0269E8C0 */ cpu->r[5] = cpu->r[28];
|
|
/* 0269E8C4 */ cpu->r[9] = cpu->r[29] + 0x00000050u;
|
|
/* 0269E8C8 */ cpu->r[4] = cpu->r[1] + 0x00000064u;
|
|
/* 0269E8CC */ cpu->r[6] = cpu->r[1] + 0x00000044u;
|
|
/* 0269E8D0 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 0269E8D4 */ cpu->r[8] = cpu->r[1] + 0x00000058u;
|
|
/* 0269E8D8 */ Gambit_fn_0269E72C(cpu);
|
|
/* 0269E8DC */ cpu->r[3] = cpu->r[31];
|
|
/* 0269E8E0 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269E8E4 */ Gambit_fn_0200ED80(cpu);
|
|
/* 0269E8E8 */ _t29 = cpu->r[1] + 0x00000028u;
|
|
/* 0269E8E8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 0269E8EC */ _t30 = cpu->r[1] + 0x00000024u;
|
|
/* 0269E8EC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 0269E8F0 */ cpu->f[12] = -cpu->f[12];
|
|
/* 0269E8F4 */ _t31 = cpu->r[1] + 0x00000020u;
|
|
/* 0269E8F4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 0269E8F8 */ _t32 = cpu->r[1] + 0x00000034u;
|
|
/* 0269E8F8 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 0269E8FC */ _t33 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269E8FC */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 0269E900 */ _t34 = cpu->r[29] + 0x00000068u;
|
|
/* 0269E900 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[11]);
|
|
/* 0269E904 */ cpu->f[11] = -cpu->f[9];
|
|
/* 0269E908 */ _t35 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0269E908 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 0269E90C */ cpu->f[6] = -cpu->f[8];
|
|
/* 0269E910 */ _t36 = cpu->r[1] + 0x00000068u;
|
|
/* 0269E910 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 0269E914 */ _t37 = cpu->r[29] + 0x00000078u;
|
|
/* 0269E914 */ rbrew_write_f32(cpu->mem, _t37, cpu->f[11]);
|
|
/* 0269E918 */ _t38 = cpu->r[29] + 0x0000005Cu;
|
|
/* 0269E918 */ rbrew_write_f32(cpu->mem, _t38, cpu->f[12]);
|
|
/* 0269E91C */ _t39 = cpu->r[1] + 0x00000030u;
|
|
/* 0269E91C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 0269E920 */ _t40 = cpu->r[1] + 0x00000028u;
|
|
/* 0269E920 */ rbrew_write_f32(cpu->mem, _t40, cpu->f[12]);
|
|
/* 0269E924 */ cpu->f[13] = -cpu->f[10];
|
|
/* 0269E928 */ _t41 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0269E928 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 0269E92C */ _t42 = cpu->r[29] + 0x0000006Cu;
|
|
/* 0269E92C */ rbrew_write_f32(cpu->mem, _t42, cpu->f[0]);
|
|
/* 0269E930 */ cpu->f[12] = -cpu->f[8];
|
|
/* 0269E934 */ _t43 = cpu->r[1] + 0x00000064u;
|
|
/* 0269E934 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 0269E938 */ cpu->f[0] = -cpu->f[7];
|
|
/* 0269E93C */ _t44 = cpu->r[29] + 0x0000007Cu;
|
|
/* 0269E93C */ rbrew_write_f32(cpu->mem, _t44, cpu->f[13]);
|
|
/* 0269E940 */ _t45 = cpu->r[1] + 0x00000038u;
|
|
/* 0269E940 */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t45);
|
|
/* 0269E944 */ _t46 = cpu->r[29] + 0x00000060u;
|
|
/* 0269E944 */ rbrew_write_f32(cpu->mem, _t46, cpu->f[0]);
|
|
/* 0269E948 */ _t47 = cpu->r[29] + 0x00000070u;
|
|
/* 0269E948 */ rbrew_write_f32(cpu->mem, _t47, cpu->f[5]);
|
|
/* 0269E94C */ _t48 = cpu->r[29] + 0x00000080u;
|
|
/* 0269E94C */ rbrew_write_f32(cpu->mem, _t48, cpu->f[12]);
|
|
/* 0269E950 */ _t49 = cpu->r[29] + 0x00000064u;
|
|
/* 0269E950 */ rbrew_write_f32(cpu->mem, _t49, cpu->f[8]);
|
|
/* 0269E954 */ _t50 = cpu->r[1] + 0x0000006Cu;
|
|
/* 0269E954 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t50);
|
|
/* 0269E958 */ _t51 = cpu->r[29] + 0x00000074u;
|
|
/* 0269E958 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[9]);
|
|
/* 0269E95C */ _t52 = cpu->r[29] + 0x00000084u;
|
|
/* 0269E95C */ rbrew_write_f32(cpu->mem, _t52, cpu->f[10]);
|
|
/* 0269E960 */ cpu->r[31] = 0x101D0000u;
|
|
/* 0269E964 */ _t53 = cpu->r[29] + 0x00000058u;
|
|
/* 0269E964 */ rbrew_write_f32(cpu->mem, _t53, cpu->f[6]);
|
|
/* 0269E968 */ _t54 = cpu->r[31] + 0xFFFF9918u;
|
|
/* 0269E968 */ cpu->r[3] = rbrew_read32(cpu->mem, _t54);
|
|
/* 0269E96C */ _t55 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269E96C */ rbrew_write_f32(cpu->mem, _t55, cpu->f[6]);
|
|
/* 0269E970 */ _t56 = cpu->r[1] + 0x00000030u;
|
|
/* 0269E970 */ rbrew_write_f32(cpu->mem, _t56, cpu->f[13]);
|
|
/* 0269E974 */ _t57 = cpu->r[1] + 0x00000034u;
|
|
/* 0269E974 */ rbrew_write_f32(cpu->mem, _t57, cpu->f[0]);
|
|
/* 0269E978 */ _t58 = cpu->r[1] + 0x00000024u;
|
|
/* 0269E978 */ rbrew_write_f32(cpu->mem, _t58, cpu->f[11]);
|
|
/* 0269E97C */ _t59 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0269E97C */ rbrew_write_f32(cpu->mem, _t59, cpu->f[12]);
|
|
/* 0269E980 */ Gambit_fn_02830138(cpu);
|
|
/* 0269E984 */ cpu->r[30] = cpu->r[3];
|
|
/* 0269E988 */ _t60 = cpu->r[31] + 0xFFFF9918u;
|
|
/* 0269E988 */ cpu->r[3] = rbrew_read32(cpu->mem, _t60);
|
|
/* 0269E98C */ Gambit_fn_02830138(cpu);
|
|
/* 0269E990 */ cpu->r[8] = rbrew_rlwinm(cpu->r[3], 0x00000017u, 0x00000009u, 0x0000001Fu);
|
|
/* 0269E994 */ cpu->r[11] = 0x100E0000u;
|
|
/* 0269E998 */ cpu->r[0] = cpu->r[8] | 0x3F800000u;
|
|
/* 0269E99C */ _t61 = cpu->r[11] + 0x00004A7Cu;
|
|
/* 0269E99C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t61);
|
|
/* 0269E9A0 */ _t62 = cpu->r[1] + 0x00000040u;
|
|
/* 0269E9A0 */ rbrew_write32(cpu->mem, _t62, cpu->r[0]);
|
|
/* 0269E9A4 */ _t63 = cpu->r[1] + 0x00000040u;
|
|
/* 0269E9A4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t63);
|
|
/* 0269E9A8 */ cpu->f[1] = cpu->f[31];
|
|
/* 0269E9AC */ cpu->f[2] = cpu->f[8] - cpu->f[9];
|
|
/* 0269E9B0 */ Gambit_fn_0204EA50(cpu);
|
|
/* 0269E9B4 */ cpu->r[8] = rbrew_rlwinm(cpu->r[30], 0x00000000u, 0x00000008u, 0x0000001Fu);
|
|
/* 0269E9B8 */ cpu->r[0] = 0x43300000u;
|
|
/* 0269E9BC */ _t64 = cpu->r[1] + 0x00000054u;
|
|
/* 0269E9BC */ rbrew_write32(cpu->mem, _t64, cpu->r[8]);
|
|
/* 0269E9C0 */ _t65 = cpu->r[1] + 0x00000050u;
|
|
/* 0269E9C0 */ rbrew_write32(cpu->mem, _t65, cpu->r[0]);
|
|
/* 0269E9C4 */ cpu->r[10] = 0x100E0000u;
|
|
/* 0269E9C8 */ _t66 = cpu->r[1] + 0x00000050u;
|
|
/* 0269E9C8 */ cpu->f[11] = rbrew_read_f64(cpu->mem, _t66);
|
|
/* 0269E9CC */ cpu->r[9] = 0x100E0000u;
|
|
/* 0269E9D0 */ _t67 = cpu->r[10] + 0x00004A90u;
|
|
/* 0269E9D0 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t67);
|
|
/* 0269E9D4 */ cpu->r[7] = rbrew_rlwinm(cpu->r[30], 0x0000000Cu, 0x00000014u, 0x0000001Bu);
|
|
/* 0269E9D8 */ _t68 = cpu->r[9] + 0x00004A98u;
|
|
/* 0269E9D8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t68);
|
|
/* 0269E9DC */ cpu->f[12] = cpu->f[11] - cpu->f[0];
|
|
/* 0269E9E0 */ cpu->r[9] = cpu->r[7] + 0x10110000u;
|
|
/* 0269E9E4 */ _t69 = cpu->r[9] + 0x000053A0u;
|
|
/* 0269E9E4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t69);
|
|
/* 0269E9E8 */ cpu->r[7] = cpu->r[9] + 0x000053A0u;
|
|
/* 0269E9EC */ cpu->f[7] = (double)(float)cpu->f[12];
|
|
/* 0269E9F0 */ _t70 = cpu->r[7] + 0x00000004u;
|
|
/* 0269E9F0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t70);
|
|
/* 0269E9F4 */ _t71 = cpu->r[7] + 0x00000008u;
|
|
/* 0269E9F4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t71);
|
|
/* 0269E9F8 */ cpu->f[9] = cpu->f[7] * cpu->f[10];
|
|
/* 0269E9FC */ _t72 = cpu->r[7] + 0x0000000Cu;
|
|
/* 0269E9FC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t72);
|
|
/* 0269EA00 */ cpu->r[7] = 0x100E0000u;
|
|
/* 0269EA04 */ cpu->f[7] = fma(cpu->f[0], cpu->f[9], cpu->f[8]);
|
|
/* 0269EA08 */ _t73 = cpu->r[7] + 0x00004A8Cu;
|
|
/* 0269EA08 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t73);
|
|
/* 0269EA0C */ cpu->f[12] = fma(cpu->f[10], cpu->f[9], cpu->f[13]);
|
|
/* 0269EA10 */ cpu->r[4] = cpu->r[29] + 0x00000088u;
|
|
/* 0269EA14 */ _t74 = cpu->r[1] + 0x00000018u;
|
|
/* 0269EA14 */ rbrew_write_f32(cpu->mem, _t74, cpu->f[7]);
|
|
/* 0269EA18 */ cpu->f[11] = cpu->f[1] * cpu->f[11];
|
|
/* 0269EA1C */ _t75 = cpu->r[1] + 0x00000014u;
|
|
/* 0269EA1C */ rbrew_write_f32(cpu->mem, _t75, cpu->f[12]);
|
|
/* 0269EA20 */ /* nop */
|
|
/* 0269EA24 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 0269EA28 */ cpu->r[6] = cpu->r[1] + 0x00000044u;
|
|
/* 0269EA2C */ /* nop */
|
|
/* 0269EA30 */ /* nop */
|
|
/* 0269EA34 */ cpu->r[8] = cpu->r[1] + 0x00000058u;
|
|
/* 0269EA38 */ cpu->r[9] = cpu->r[1] + 0x00000014u;
|
|
/* 0269EA3C */ /* nop */
|
|
/* 0269EA40 */ cpu->r[5] = cpu->r[28];
|
|
/* 0269EA44 */ cpu->r[3] = cpu->r[29];
|
|
/* 0269EA48 */ /* nop */
|
|
/* 0269EA4C */ Gambit_fn_0269E72C(cpu);
|
|
/* 0269EA50 */ _t76 = cpu->r[1] + 0x00000070u;
|
|
/* 0269EA50 */ cpu->r[28] = rbrew_read32(cpu->mem, _t76);
|
|
/* 0269EA54 */ _t77 = cpu->r[1] + 0x00000074u;
|
|
/* 0269EA54 */ cpu->r[29] = rbrew_read32(cpu->mem, _t77);
|
|
/* 0269EA58 */ _t78 = cpu->r[1] + 0x00000088u;
|
|
/* 0269EA58 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t78);
|
|
/* 0269EA5C */ _t79 = cpu->r[1] + 0x00000078u;
|
|
/* 0269EA5C */ cpu->r[30] = rbrew_read32(cpu->mem, _t79);
|
|
/* 0269EA60 */ _t80 = cpu->r[1] + 0x00000080u;
|
|
/* 0269EA60 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t80);
|
|
/* 0269EA64 */ _t81 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0269EA64 */ cpu->r[31] = rbrew_read32(cpu->mem, _t81);
|
|
/* 0269EA68 */ _t82 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269EA68 */ _t83 = _t82 & 0x00000001u;
|
|
/* 0269EA68 */ if (_t83) goto L_0269EA6C; // else: addr-0 trap, fall-through
|
|
L_0269EA6C: ; // 0x269ea6c
|
|
/* 0269EA6C */ _t84 = cpu->r[1] + 0x00000094u;
|
|
/* 0269EA6C */ cpu->r[0] = rbrew_read32(cpu->mem, _t84);
|
|
/* 0269EA70 */ cpu->lr = cpu->r[0];
|
|
/* 0269EA74 */ cpu->r[1] = cpu->r[1] + 0x00000090u;
|
|
/* 0269EA78 */ return;
|
|
}
|
|
|
|
// fn_0269EA7C @ 0x269ea7c
|
|
void Gambit_fn_0269EA7C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114;
|
|
double _ft60, _ft61, _ft91, _ft92;
|
|
|
|
L_0269EA7C: ; // 0x269ea7c
|
|
/* 0269EA7C */ _t0 = cpu->r[1] + 0xFFFFFF78u;
|
|
/* 0269EA7C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269EA7C */ cpu->r[1] = _t0;
|
|
/* 0269EA80 */ /* nop */
|
|
/* 0269EA84 */ cpu->r[0] = cpu->lr;
|
|
/* 0269EA88 */ _t1 = cpu->r[1] + 0x00000058u;
|
|
/* 0269EA88 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[29]);
|
|
/* 0269EA8C */ _t2 = cpu->r[1] + 0x00000068u;
|
|
/* 0269EA8C */ rbrew_write_f64(cpu->mem, _t2, cpu->f[30]);
|
|
/* 0269EA90 */ /* nop */
|
|
/* 0269EA94 */ _t3 = cpu->r[1] + 0x00000078u;
|
|
/* 0269EA94 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[31]);
|
|
/* 0269EA98 */ _t4 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0269EA98 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0269EA9C */ /* nop */
|
|
/* 0269EAA0 */ _t5 = cpu->r[1] + 0x00000060u;
|
|
/* 0269EAA0 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[29]);
|
|
/* 0269EAA4 */ _t6 = cpu->r[1] + 0x00000070u;
|
|
/* 0269EAA4 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[30]);
|
|
/* 0269EAA8 */ /* nop */
|
|
/* 0269EAAC */ cpu->r[10] = 0x101C0000u;
|
|
/* 0269EAB0 */ _t7 = cpu->r[1] + 0x00000080u;
|
|
/* 0269EAB0 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[31]);
|
|
/* 0269EAB4 */ _t8 = cpu->r[10] + 0x00001D34u;
|
|
/* 0269EAB4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0269EAB8 */ _t9 = cpu->r[10] + 0x00000168u;
|
|
/* 0269EAB8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0269EABC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0269EAC0 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269EAC4 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269EAC4 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0269EAC4 */ if (_t11) goto L_0269EB30; else goto L_0269EAC8;
|
|
L_0269EAC8: ; // 0x269eac8
|
|
/* 0269EAC8 */ _t12 = cpu->r[10] + 0x00000164u;
|
|
/* 0269EAC8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0269EACC */ _t13 = cpu->r[10] + 0x00000160u;
|
|
/* 0269EACC */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0269EAD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], cpu->r[0]);
|
|
/* 0269EAD4 */ _t14 = cpu->r[10] + 0x0000015Cu;
|
|
/* 0269EAD4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0269EAD8 */ _t15 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269EAD8 */ _t16 = _t15 & 0x00000001u;
|
|
/* 0269EAD8 */ if (_t16) goto L_0269EAE0; else goto L_0269EADC;
|
|
L_0269EADC: ; // 0x269eadc
|
|
/* 0269EADC */ cpu->r[6] = cpu->r[6] - cpu->r[0];
|
|
L_0269EAE0: ; // 0x269eae0
|
|
/* 0269EAE0 */ cpu->r[11] = rbrew_rlwinm(cpu->r[6], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0269EAE4 */ _t17 = cpu->r[12] + cpu->r[11];
|
|
/* 0269EAE4 */ cpu->r[28] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0269EAE8 */ cpu->r[4] = 0x00000001u;
|
|
/* 0269EAEC */ cpu->r[3] = cpu->r[28];
|
|
/* 0269EAF0 */ _t18 = cpu->r[28] + 0x00000000u;
|
|
/* 0269EAF0 */ cpu->r[27] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0269EAF4 */ Gambit_fn_027DFCF8(cpu);
|
|
/* 0269EAF8 */ cpu->r[11] = 0x100E0000u;
|
|
/* 0269EAFC */ _t19 = cpu->r[31] + 0x000000A0u;
|
|
/* 0269EAFC */ cpu->r[8] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0269EB00 */ cpu->r[9] = 0x100E0000u;
|
|
/* 0269EB04 */ _t20 = cpu->r[11] + 0x00004A70u;
|
|
/* 0269EB04 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 0269EB08 */ cpu->r[29] = 0x101C0000u;
|
|
/* 0269EB0C */ cpu->r[11] = 0x100E0000u;
|
|
/* 0269EB10 */ cpu->r[29] = cpu->r[29] + 0x00000E14u;
|
|
/* 0269EB14 */ cpu->r[30] = 0x101C0000u;
|
|
/* 0269EB18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0269EB1C */ _t21 = cpu->r[11] + 0x00004A78u;
|
|
/* 0269EB1C */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 0269EB20 */ cpu->r[30] = cpu->r[30] + 0x00006000u;
|
|
/* 0269EB24 */ _t22 = cpu->r[9] + 0x00004A74u;
|
|
/* 0269EB24 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 0269EB28 */ _t23 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0269EB28 */ _t24 = _t23 & 0x00000001u;
|
|
/* 0269EB28 */ if (_t24) goto L_0269ECCC; else goto L_0269EB2C;
|
|
L_0269EB2C: ; // 0x269eb2c
|
|
/* 0269EB2C */ goto L_0269EB7C;
|
|
L_0269EB30: ; // 0x269eb30
|
|
/* 0269EB30 */ _t25 = cpu->r[10] + 0x0000015Cu;
|
|
/* 0269EB30 */ cpu->r[12] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0269EB34 */ _t26 = cpu->r[12] + 0x00000000u;
|
|
/* 0269EB34 */ cpu->r[28] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0269EB38 */ cpu->r[4] = 0x00000001u;
|
|
/* 0269EB3C */ cpu->r[3] = cpu->r[28];
|
|
/* 0269EB40 */ _t27 = cpu->r[28] + 0x00000000u;
|
|
/* 0269EB40 */ cpu->r[27] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0269EB44 */ Gambit_fn_027DFCF8(cpu);
|
|
/* 0269EB48 */ cpu->r[11] = 0x100E0000u;
|
|
/* 0269EB4C */ _t28 = cpu->r[31] + 0x000000A0u;
|
|
/* 0269EB4C */ cpu->r[8] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0269EB50 */ cpu->r[9] = 0x100E0000u;
|
|
/* 0269EB54 */ _t29 = cpu->r[11] + 0x00004A70u;
|
|
/* 0269EB54 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 0269EB58 */ cpu->r[29] = 0x101C0000u;
|
|
/* 0269EB5C */ cpu->r[11] = 0x100E0000u;
|
|
/* 0269EB60 */ cpu->r[29] = cpu->r[29] + 0x00000E14u;
|
|
/* 0269EB64 */ cpu->r[30] = 0x101C0000u;
|
|
/* 0269EB68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0269EB6C */ _t30 = cpu->r[11] + 0x00004A78u;
|
|
/* 0269EB6C */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 0269EB70 */ cpu->r[30] = cpu->r[30] + 0x00006000u;
|
|
/* 0269EB74 */ _t31 = cpu->r[9] + 0x00004A74u;
|
|
/* 0269EB74 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 0269EB78 */ _t32 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0269EB78 */ _t33 = _t32 & 0x00000001u;
|
|
/* 0269EB78 */ if (_t33) goto L_0269ECCC; else goto L_0269EB7C;
|
|
L_0269EB7C: ; // 0x269eb7c
|
|
/* 0269EB7C */ _t34 = cpu->r[27] + 0x00000008u;
|
|
/* 0269EB7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t34);
|
|
/* 0269EB80 */ cpu->r[0] = cpu->r[3] & cpu->r[0];
|
|
/* 0269EB80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0269EB84 */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269EB84 */ _t36 = _t35 & 0x00000001u;
|
|
/* 0269EB84 */ if (_t36) goto L_0269ECD4; else goto L_0269EB88;
|
|
L_0269EB88: ; // 0x269eb88
|
|
/* 0269EB88 */ _t37 = cpu->r[29] + 0x00000000u;
|
|
/* 0269EB88 */ cpu->r[3] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0269EB8C */ cpu->r[4] = 0x00000000u;
|
|
/* 0269EB90 */ Gambit_fn_0200CBD8(cpu);
|
|
/* 0269EB94 */ Gambit_fn_02014444(cpu);
|
|
/* 0269EB98 */ Gambit_fn_0200ED68(cpu);
|
|
/* 0269EB9C */ _t38 = cpu->r[3] + 0x00000000u;
|
|
/* 0269EB9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t38);
|
|
/* 0269EBA0 */ cpu->r[10] = 0x101F0000u;
|
|
/* 0269EBA4 */ _t39 = cpu->r[31] + 0x0000008Cu;
|
|
/* 0269EBA4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t39);
|
|
/* 0269EBA8 */ cpu->r[10] = cpu->r[10] + 0xFFFFDA38u;
|
|
/* 0269EBAC */ _t40 = cpu->r[1] + 0x00000020u;
|
|
/* 0269EBAC */ rbrew_write32(cpu->mem, _t40, cpu->r[0]);
|
|
/* 0269EBB0 */ _t41 = cpu->r[3] + 0x00000004u;
|
|
/* 0269EBB0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0269EBB4 */ /* nop */
|
|
/* 0269EBB8 */ _t42 = cpu->r[1] + 0x00000024u;
|
|
/* 0269EBB8 */ rbrew_write32(cpu->mem, _t42, cpu->r[0]);
|
|
/* 0269EBBC */ /* nop */
|
|
/* 0269EBC0 */ _t43 = cpu->r[31] + 0x00000088u;
|
|
/* 0269EBC0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t43);
|
|
/* 0269EBC4 */ _t44 = cpu->r[3] + 0x00000008u;
|
|
/* 0269EBC4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t44);
|
|
/* 0269EBC8 */ _t45 = cpu->r[1] + 0x00000028u;
|
|
/* 0269EBC8 */ rbrew_write32(cpu->mem, _t45, cpu->r[6]);
|
|
/* 0269EBCC */ _t46 = cpu->r[1] + 0x00000028u;
|
|
/* 0269EBCC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 0269EBD0 */ _t47 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0269EBD0 */ rbrew_write32(cpu->mem, _t47, cpu->r[0]);
|
|
/* 0269EBD4 */ _t48 = cpu->r[31] + 0x00000090u;
|
|
/* 0269EBD4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t48);
|
|
/* 0269EBD8 */ _t49 = cpu->r[1] + 0x00000030u;
|
|
/* 0269EBD8 */ rbrew_write32(cpu->mem, _t49, cpu->r[9]);
|
|
/* 0269EBDC */ /* nop */
|
|
/* 0269EBE0 */ /* nop */
|
|
/* 0269EBE4 */ _t50 = cpu->r[1] + 0x00000034u;
|
|
/* 0269EBE4 */ rbrew_write32(cpu->mem, _t50, cpu->r[0]);
|
|
/* 0269EBE8 */ /* nop */
|
|
/* 0269EBEC */ _t51 = cpu->r[10] + 0x00000008u;
|
|
/* 0269EBEC */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 0269EBF0 */ /* nop */
|
|
/* 0269EBF4 */ _t52 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269EBF4 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 0269EBF8 */ cpu->f[0] = cpu->f[0] + cpu->f[7];
|
|
/* 0269EBFC */ _t53 = cpu->r[1] + 0x00000034u;
|
|
/* 0269EBFC */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t53);
|
|
/* 0269EC00 */ cpu->f[8] = cpu->f[9] * cpu->f[9];
|
|
/* 0269EC04 */ _t54 = cpu->r[1] + 0x00000008u;
|
|
/* 0269EC04 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 0269EC08 */ cpu->r[8] = 0x100E0000u;
|
|
/* 0269EC0C */ cpu->f[7] = cpu->f[7] - cpu->f[0];
|
|
/* 0269EC10 */ /* nop */
|
|
/* 0269EC14 */ cpu->f[9] = fma(cpu->f[11], cpu->f[11], cpu->f[8]);
|
|
/* 0269EC18 */ _t55 = cpu->r[8] + 0x00004A9Cu;
|
|
/* 0269EC18 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 0269EC1C */ cpu->f[12] = fma(cpu->f[7], cpu->f[7], cpu->f[9]);
|
|
/* 0269EC20 */ _t56 = cpu->r[1] + 0x00000028u;
|
|
/* 0269EC20 */ rbrew_write_f32(cpu->mem, _t56, cpu->f[0]);
|
|
/* 0269EC24 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[31]);
|
|
/* 0269EC28 */ _t57 = cpu->r[1] + 0x00000010u;
|
|
/* 0269EC28 */ rbrew_write_f32(cpu->mem, _t57, cpu->f[7]);
|
|
/* 0269EC2C */ _t58 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0269EC2C */ _t59 = _t58 & 0x00000001u;
|
|
/* 0269EC2C */ if (_t59) goto L_0269EC30; else goto L_0269EC60;
|
|
L_0269EC30: ; // 0x269ec30
|
|
/* 0269EC30 */ _ft60 = sqrt(cpu->f[12]);
|
|
/* 0269EC30 */ _ft61 = (double)(int32_t)0x00000001u;
|
|
/* 0269EC30 */ cpu->f[7] = _ft61 / _ft60;
|
|
/* 0269EC34 */ cpu->f[9] = cpu->f[7] * cpu->f[7];
|
|
/* 0269EC38 */ cpu->f[11] = cpu->f[7] * cpu->f[13];
|
|
/* 0269EC3C */ cpu->f[9] = -fma(cpu->f[9], cpu->f[12], -(cpu->f[30]));
|
|
/* 0269EC40 */ cpu->f[11] = cpu->f[11] * cpu->f[29];
|
|
/* 0269EC44 */ cpu->f[7] = cpu->f[9] * cpu->f[11];
|
|
/* 0269EC48 */ _t62 = cpu->r[1] + 0x00000010u;
|
|
/* 0269EC48 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 0269EC4C */ /* nop */
|
|
/* 0269EC50 */ cpu->f[12] = cpu->f[12] * cpu->f[7];
|
|
/* 0269EC54 */ /* nop */
|
|
/* 0269EC58 */ _t63 = cpu->r[1] + 0x00000010u;
|
|
/* 0269EC58 */ rbrew_write_f32(cpu->mem, _t63, cpu->f[12]);
|
|
/* 0269EC5C */ /* nop */
|
|
L_0269EC60: ; // 0x269ec60
|
|
/* 0269EC60 */ _t64 = cpu->r[30] + 0x00000000u;
|
|
/* 0269EC60 */ cpu->r[11] = rbrew_read32(cpu->mem, _t64);
|
|
/* 0269EC64 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0269EC68 */ _t65 = cpu->r[12] + 0x00005524u;
|
|
/* 0269EC68 */ cpu->r[12] = rbrew_read32(cpu->mem, _t65);
|
|
/* 0269EC6C */ _t66 = cpu->r[11] + 0x00000274u;
|
|
/* 0269EC6C */ cpu->r[3] = rbrew_read32(cpu->mem, _t66);
|
|
/* 0269EC70 */ cpu->r[6] = cpu->r[3] + cpu->r[12];
|
|
/* 0269EC74 */ _t67 = cpu->r[6] + 0x00000104u;
|
|
/* 0269EC74 */ cpu->r[4] = rbrew_read8(cpu->mem, _t67);
|
|
/* 0269EC78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x000000FFu);
|
|
/* 0269EC7C */ _t68 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269EC7C */ _t69 = _t68 & 0x00000001u;
|
|
/* 0269EC7C */ if (_t69) goto L_0269ECC8; else goto L_0269EC80;
|
|
L_0269EC80: ; // 0x269ec80
|
|
/* 0269EC80 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 0269EC84 */ cpu->r[6] = cpu->r[1] + 0x00000020u;
|
|
/* 0269EC88 */ cpu->r[5] = 0x00000001u;
|
|
/* 0269EC8C */ Gambit_fn_021F000C(cpu);
|
|
/* 0269EC90 */ cpu->r[27] = cpu->r[3];
|
|
/* 0269EC90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0269EC94 */ _t70 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269EC94 */ _t71 = _t70 & 0x00000001u;
|
|
/* 0269EC94 */ if (_t71) goto L_0269ECC8; else goto L_0269EC98;
|
|
L_0269EC98: ; // 0x269ec98
|
|
/* 0269EC98 */ _t72 = cpu->r[30] + 0x00000000u;
|
|
/* 0269EC98 */ cpu->r[11] = rbrew_read32(cpu->mem, _t72);
|
|
/* 0269EC9C */ _t73 = cpu->r[11] + 0x00000268u;
|
|
/* 0269EC9C */ cpu->r[3] = rbrew_read32(cpu->mem, _t73);
|
|
/* 0269ECA0 */ cpu->r[4] = 0x00000000u;
|
|
/* 0269ECA4 */ Gambit_fn_0261F55C(cpu);
|
|
/* 0269ECA8 */ cpu->r[5] = 0x00000000u;
|
|
/* 0269ECAC */ cpu->r[4] = cpu->r[3];
|
|
/* 0269ECB0 */ cpu->r[8] = cpu->r[1] + 0x00000008u;
|
|
/* 0269ECB4 */ cpu->r[6] = cpu->r[5];
|
|
/* 0269ECB8 */ cpu->r[3] = cpu->r[27];
|
|
/* 0269ECBC */ cpu->r[9] = cpu->r[5];
|
|
/* 0269ECC0 */ cpu->r[7] = cpu->r[1] + 0x00000020u;
|
|
/* 0269ECC4 */ Gambit_fn_02230940(cpu);
|
|
L_0269ECC8: ; // 0x269ecc8
|
|
/* 0269ECC8 */ cpu->r[8] = 0x00000003u;
|
|
L_0269ECCC: ; // 0x269eccc
|
|
/* 0269ECCC */ cpu->r[7] = cpu->r[8] + 0xFFFFFFFFu;
|
|
/* 0269ECD0 */ _t74 = cpu->r[31] + 0x000000A0u;
|
|
/* 0269ECD0 */ rbrew_write32(cpu->mem, _t74, cpu->r[7]);
|
|
L_0269ECD4: ; // 0x269ecd4
|
|
/* 0269ECD4 */ cpu->r[3] = cpu->r[28];
|
|
/* 0269ECD8 */ _t75 = cpu->r[28] + 0x00000000u;
|
|
/* 0269ECD8 */ cpu->r[28] = rbrew_read32(cpu->mem, _t75);
|
|
/* 0269ECDC */ cpu->r[4] = 0x00000002u;
|
|
/* 0269ECE0 */ Gambit_fn_027DFCF8(cpu);
|
|
/* 0269ECE4 */ _t76 = cpu->r[31] + 0x000000A4u;
|
|
/* 0269ECE4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t76);
|
|
/* 0269ECE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0269ECEC */ _t77 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0269ECEC */ _t78 = _t77 & 0x00000001u;
|
|
/* 0269ECEC */ if (_t78) goto L_0269EE00; else goto L_0269ECF0;
|
|
L_0269ECF0: ; // 0x269ecf0
|
|
/* 0269ECF0 */ _t79 = cpu->r[28] + 0x0000008Cu;
|
|
/* 0269ECF0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t79);
|
|
/* 0269ECF4 */ cpu->r[8] = cpu->r[3] & cpu->r[9];
|
|
/* 0269ECF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0269ECF8 */ _t80 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269ECF8 */ _t81 = _t80 & 0x00000001u;
|
|
/* 0269ECF8 */ if (_t81) goto L_0269EE08; else goto L_0269ECFC;
|
|
L_0269ECFC: ; // 0x269ecfc
|
|
/* 0269ECFC */ _t82 = cpu->r[29] + 0x00000000u;
|
|
/* 0269ECFC */ cpu->r[3] = rbrew_read32(cpu->mem, _t82);
|
|
/* 0269ED00 */ cpu->r[4] = 0x00000000u;
|
|
/* 0269ED04 */ Gambit_fn_0200CBD8(cpu);
|
|
/* 0269ED08 */ Gambit_fn_02014444(cpu);
|
|
/* 0269ED0C */ Gambit_fn_0200ED68(cpu);
|
|
/* 0269ED10 */ cpu->r[28] = cpu->r[3];
|
|
/* 0269ED14 */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 0269ED18 */ cpu->r[4] = cpu->r[31] + 0x00000058u;
|
|
/* 0269ED1C */ Gambit_fn_0200D450(cpu);
|
|
/* 0269ED20 */ /* nop */
|
|
/* 0269ED24 */ /* nop */
|
|
/* 0269ED28 */ _t83 = cpu->r[1] + 0x00000040u;
|
|
/* 0269ED28 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t83);
|
|
/* 0269ED2C */ /* nop */
|
|
/* 0269ED30 */ /* nop */
|
|
/* 0269ED34 */ _t84 = cpu->r[1] + 0x00000018u;
|
|
/* 0269ED34 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t84);
|
|
/* 0269ED38 */ _t85 = cpu->r[28] + 0x00000008u;
|
|
/* 0269ED38 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t85);
|
|
/* 0269ED3C */ cpu->f[10] = cpu->f[10] * cpu->f[10];
|
|
/* 0269ED40 */ _t86 = cpu->r[1] + 0x00000014u;
|
|
/* 0269ED40 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t86);
|
|
/* 0269ED44 */ cpu->f[8] = cpu->f[8] - cpu->f[9];
|
|
/* 0269ED48 */ cpu->f[11] = fma(cpu->f[12], cpu->f[12], cpu->f[10]);
|
|
/* 0269ED4C */ _t87 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269ED4C */ rbrew_write_f32(cpu->mem, _t87, cpu->f[8]);
|
|
/* 0269ED50 */ cpu->f[8] = fma(cpu->f[8], cpu->f[8], cpu->f[11]);
|
|
/* 0269ED54 */ cpu->r[7] = 0x100E0000u;
|
|
/* 0269ED58 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[31]);
|
|
/* 0269ED5C */ _t88 = cpu->r[7] + 0x00004AA0u;
|
|
/* 0269ED5C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t88);
|
|
/* 0269ED60 */ _t89 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0269ED60 */ _t90 = _t89 & 0x00000001u;
|
|
/* 0269ED60 */ if (_t90) goto L_0269ED64; else goto L_0269ED94;
|
|
L_0269ED64: ; // 0x269ed64
|
|
/* 0269ED64 */ _ft91 = sqrt(cpu->f[8]);
|
|
/* 0269ED64 */ _ft92 = (double)(int32_t)0x00000001u;
|
|
/* 0269ED64 */ cpu->f[9] = _ft92 / _ft91;
|
|
/* 0269ED68 */ cpu->f[11] = cpu->f[9] * cpu->f[9];
|
|
/* 0269ED6C */ cpu->f[13] = cpu->f[9] * cpu->f[0];
|
|
/* 0269ED70 */ cpu->f[11] = -fma(cpu->f[11], cpu->f[8], -(cpu->f[30]));
|
|
/* 0269ED74 */ cpu->f[13] = cpu->f[13] * cpu->f[29];
|
|
/* 0269ED78 */ cpu->f[9] = cpu->f[11] * cpu->f[13];
|
|
/* 0269ED7C */ _t93 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269ED7C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t93);
|
|
/* 0269ED80 */ /* nop */
|
|
/* 0269ED84 */ cpu->f[12] = cpu->f[12] * cpu->f[9];
|
|
/* 0269ED88 */ /* nop */
|
|
/* 0269ED8C */ _t94 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0269ED8C */ rbrew_write_f32(cpu->mem, _t94, cpu->f[12]);
|
|
/* 0269ED90 */ /* nop */
|
|
L_0269ED94: ; // 0x269ed94
|
|
/* 0269ED94 */ _t95 = cpu->r[30] + 0x00000000u;
|
|
/* 0269ED94 */ cpu->r[9] = rbrew_read32(cpu->mem, _t95);
|
|
/* 0269ED98 */ cpu->r[11] = 0x101C0000u;
|
|
/* 0269ED9C */ _t96 = cpu->r[11] + 0x00004FC8u;
|
|
/* 0269ED9C */ cpu->r[11] = rbrew_read32(cpu->mem, _t96);
|
|
/* 0269EDA0 */ _t97 = cpu->r[9] + 0x00000274u;
|
|
/* 0269EDA0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t97);
|
|
/* 0269EDA4 */ cpu->r[10] = cpu->r[3] + cpu->r[11];
|
|
/* 0269EDA8 */ _t98 = cpu->r[10] + 0x00000104u;
|
|
/* 0269EDA8 */ cpu->r[4] = rbrew_read8(cpu->mem, _t98);
|
|
/* 0269EDAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x000000FFu);
|
|
/* 0269EDB0 */ _t99 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269EDB0 */ _t100 = _t99 & 0x00000001u;
|
|
/* 0269EDB0 */ if (_t100) goto L_0269EDFC; else goto L_0269EDB4;
|
|
L_0269EDB4: ; // 0x269edb4
|
|
/* 0269EDB4 */ cpu->r[7] = cpu->r[1] + 0x00000014u;
|
|
/* 0269EDB8 */ cpu->r[5] = 0x00000001u;
|
|
/* 0269EDBC */ cpu->r[6] = cpu->r[28];
|
|
/* 0269EDC0 */ Gambit_fn_021F000C(cpu);
|
|
/* 0269EDC4 */ cpu->r[29] = cpu->r[3];
|
|
/* 0269EDC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0269EDC8 */ _t101 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0269EDC8 */ _t102 = _t101 & 0x00000001u;
|
|
/* 0269EDC8 */ if (_t102) goto L_0269EDFC; else goto L_0269EDCC;
|
|
L_0269EDCC: ; // 0x269edcc
|
|
/* 0269EDCC */ _t103 = cpu->r[30] + 0x00000000u;
|
|
/* 0269EDCC */ cpu->r[8] = rbrew_read32(cpu->mem, _t103);
|
|
/* 0269EDD0 */ _t104 = cpu->r[8] + 0x00000268u;
|
|
/* 0269EDD0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t104);
|
|
/* 0269EDD4 */ cpu->r[4] = 0x00000000u;
|
|
/* 0269EDD8 */ Gambit_fn_0261F55C(cpu);
|
|
/* 0269EDDC */ cpu->r[4] = cpu->r[3];
|
|
/* 0269EDE0 */ cpu->r[6] = 0x00000000u;
|
|
/* 0269EDE4 */ cpu->r[8] = cpu->r[1] + 0x00000014u;
|
|
/* 0269EDE8 */ cpu->r[5] = 0x00000001u;
|
|
/* 0269EDEC */ cpu->r[9] = cpu->r[6];
|
|
/* 0269EDF0 */ cpu->r[7] = cpu->r[28];
|
|
/* 0269EDF4 */ cpu->r[3] = cpu->r[29];
|
|
/* 0269EDF8 */ Gambit_fn_021BF8D0(cpu);
|
|
L_0269EDFC: ; // 0x269edfc
|
|
/* 0269EDFC */ cpu->r[9] = 0x00000002u;
|
|
L_0269EE00: ; // 0x269ee00
|
|
/* 0269EE00 */ cpu->r[12] = cpu->r[9] + 0xFFFFFFFFu;
|
|
/* 0269EE04 */ _t105 = cpu->r[31] + 0x000000A4u;
|
|
/* 0269EE04 */ rbrew_write32(cpu->mem, _t105, cpu->r[12]);
|
|
L_0269EE08: ; // 0x269ee08
|
|
/* 0269EE08 */ /* nop */
|
|
/* 0269EE0C */ _t106 = cpu->r[1] + 0x00000060u;
|
|
/* 0269EE0C */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t106);
|
|
/* 0269EE10 */ _t107 = cpu->r[1] + 0x00000070u;
|
|
/* 0269EE10 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t107);
|
|
/* 0269EE14 */ _t108 = cpu->r[1] + 0x00000058u;
|
|
/* 0269EE14 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t108);
|
|
/* 0269EE18 */ _t109 = cpu->r[1] + 0x00000080u;
|
|
/* 0269EE18 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t109);
|
|
/* 0269EE1C */ _t110 = cpu->r[1] + 0x00000068u;
|
|
/* 0269EE1C */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t110);
|
|
/* 0269EE20 */ _t111 = cpu->r[1] + 0x00000078u;
|
|
/* 0269EE20 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t111);
|
|
/* 0269EE24 */ _t112 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0269EE24 */ _t113 = _t112 & 0x00000001u;
|
|
/* 0269EE24 */ if (_t113) goto L_0269EE28; // else: addr-0 trap, fall-through
|
|
L_0269EE28: ; // 0x269ee28
|
|
/* 0269EE28 */ _t114 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0269EE28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t114);
|
|
/* 0269EE2C */ cpu->lr = cpu->r[0];
|
|
/* 0269EE30 */ cpu->r[1] = cpu->r[1] + 0x00000088u;
|
|
/* 0269EE34 */ return;
|
|
}
|
|
|
|
// fn_0269EE38 @ 0x269ee38
|
|
void Gambit_fn_0269EE38(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_0269EE38: ; // 0x269ee38
|
|
/* 0269EE38 */ cpu->r[0] = cpu->lr;
|
|
/* 0269EE3C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0269EE3C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269EE3C */ cpu->r[1] = _t0;
|
|
/* 0269EE40 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269EE40 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0269EE44 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269EE48 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0269EE48 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0269EE4C */ Gambit_fn_0269E4F4(cpu);
|
|
/* 0269EE50 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269EE54 */ Gambit_fn_0269E7A8(cpu);
|
|
/* 0269EE58 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269EE5C */ Gambit_fn_0269EA7C(cpu);
|
|
/* 0269EE60 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0269EE60 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0269EE64 */ cpu->lr = cpu->r[0];
|
|
/* 0269EE68 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269EE68 */ cpu->r[31] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269EE6C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0269EE70 */ return;
|
|
}
|
|
|
|
// fn_0269EE3C @ 0x269ee3c
|
|
void Gambit_fn_0269EE3C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_0269EE3C: ; // 0x269ee3c
|
|
/* 0269EE3C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0269EE3C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0269EE3C */ cpu->r[1] = _t0;
|
|
/* 0269EE40 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269EE40 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0269EE44 */ cpu->r[31] = cpu->r[3];
|
|
/* 0269EE48 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0269EE48 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0269EE4C */ Gambit_fn_0269E4F4(cpu);
|
|
/* 0269EE50 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269EE54 */ Gambit_fn_0269E7A8(cpu);
|
|
/* 0269EE58 */ cpu->r[3] = cpu->r[31];
|
|
/* 0269EE5C */ Gambit_fn_0269EA7C(cpu);
|
|
/* 0269EE60 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0269EE60 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0269EE64 */ cpu->lr = cpu->r[0];
|
|
/* 0269EE68 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0269EE68 */ cpu->r[31] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0269EE6C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0269EE70 */ return;
|
|
}
|
|
|
|
// fn_0269EE74 @ 0x269ee74
|
|
void Gambit_fn_0269EE74(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_0269EE74: ; // 0x269ee74
|
|
/* 0269EE74 */ cpu->r[12] = 0x100E0000u;
|
|
/* 0269EE78 */ _t0 = cpu->r[12] + 0x00004A70u;
|
|
/* 0269EE78 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 0269EE7C */ cpu->r[12] = 0x100E0000u;
|
|
/* 0269EE80 */ _t1 = cpu->r[12] + 0x00004AA4u;
|
|
/* 0269EE80 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 0269EE84 */ cpu->r[12] = 0x101F0000u;
|
|
/* 0269EE88 */ _t2 = cpu->r[12] + 0xFFFFDA38u;
|
|
/* 0269EE88 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[13]);
|
|
/* 0269EE88 */ cpu->r[12] = _t2;
|
|
/* 0269EE8C */ _t3 = cpu->r[12] + 0x00000004u;
|
|
/* 0269EE8C */ rbrew_write_f32(cpu->mem, _t3, cpu->f[0]);
|
|
/* 0269EE90 */ _t4 = cpu->r[12] + 0x00000008u;
|
|
/* 0269EE90 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[0]);
|
|
/* 0269EE94 */ return;
|
|
}
|
|
|
|
// fn_0269EE98 @ 0x269ee98
|
|
void Gambit_fn_0269EE98(CPUState* cpu) {
|
|
L_0269EE98: ; // 0x269ee98
|
|
/* 0269EE98 */ return;
|
|
}
|
|
|
|
// fn_0269EE9C @ 0x269ee9c
|
|
void Gambit_fn_0269EE9C(CPUState* cpu) {
|
|
L_0269EE9C: ; // 0x269ee9c
|
|
/* 0269EE9C */ return;
|
|
}
|
|
|