mirror of
https://github.com/ApfelTeeSaft/RebrewU.git
synced 2026-08-26 19:33:27 +00:00
40104 lines
2.1 MiB
Plaintext
40104 lines
2.1 MiB
Plaintext
// Generated by RebrewU -- do not edit
|
|
#include <rebrewu_runtime.h>
|
|
#include <stdint.h>
|
|
#include <math.h>
|
|
|
|
#include "Gambit.h"
|
|
|
|
// fn_0291AC24 @ 0x291ac24
|
|
void Gambit_fn_0291AC24(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0291AC24: ; // 0x291ac24
|
|
/* 0291AC24 */ cpu->r[0] = cpu->lr;
|
|
/* 0291AC28 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0291AC28 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291AC28 */ cpu->r[1] = _t0;
|
|
/* 0291AC2C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0291AC2C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0291AC30 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291AC30 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0291AC34 */ cpu->r[31] = cpu->r[3];
|
|
/* 0291AC34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0291AC38 */ cpu->r[30] = cpu->r[4];
|
|
/* 0291AC3C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0291AC3C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0291AC40 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291AC40 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0291AC40 */ if (_t5) goto L_0291AC78; else goto L_0291AC44;
|
|
L_0291AC44: ; // 0x291ac44
|
|
/* 0291AC44 */ cpu->r[0] = 0x10140000u;
|
|
/* 0291AC48 */ cpu->r[3] = cpu->r[31] + 0x000000BCu;
|
|
/* 0291AC4C */ cpu->r[0] = cpu->r[0] + 0x0000199Cu;
|
|
/* 0291AC50 */ cpu->r[4] = 0x00000002u;
|
|
/* 0291AC54 */ _t6 = cpu->r[31] + 0x00000000u;
|
|
/* 0291AC54 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0291AC58 */ Gambit_fn_0281B1A4(cpu);
|
|
/* 0291AC5C */ cpu->r[3] = cpu->r[31] + 0x00000004u;
|
|
/* 0291AC60 */ cpu->r[4] = 0x00000002u;
|
|
/* 0291AC64 */ Gambit_fn_0281C4D0(cpu);
|
|
/* 0291AC68 */ cpu->r[0] = rbrew_rlwinm(cpu->r[30], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0291AC68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0291AC6C */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291AC6C */ _t8 = _t7 & 0x00000001u;
|
|
/* 0291AC6C */ if (_t8) goto L_0291AC78; else goto L_0291AC70;
|
|
L_0291AC70: ; // 0x291ac70
|
|
/* 0291AC70 */ cpu->r[3] = cpu->r[31];
|
|
/* 0291AC74 */ Gambit_fn_02801BB0(cpu);
|
|
L_0291AC78: ; // 0x291ac78
|
|
/* 0291AC78 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0291AC78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0291AC7C */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 0291AC7C */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0291AC80 */ cpu->lr = cpu->r[0];
|
|
/* 0291AC84 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291AC84 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0291AC88 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0291AC8C */ return;
|
|
}
|
|
|
|
// fn_0291AC28 @ 0x291ac28
|
|
void Gambit_fn_0291AC28(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0291AC28: ; // 0x291ac28
|
|
/* 0291AC28 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0291AC28 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291AC28 */ cpu->r[1] = _t0;
|
|
/* 0291AC2C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0291AC2C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0291AC30 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291AC30 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0291AC34 */ cpu->r[31] = cpu->r[3];
|
|
/* 0291AC34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0291AC38 */ cpu->r[30] = cpu->r[4];
|
|
/* 0291AC3C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0291AC3C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0291AC40 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291AC40 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0291AC40 */ if (_t5) goto L_0291AC78; else goto L_0291AC44;
|
|
L_0291AC44: ; // 0x291ac44
|
|
/* 0291AC44 */ cpu->r[0] = 0x10140000u;
|
|
/* 0291AC48 */ cpu->r[3] = cpu->r[31] + 0x000000BCu;
|
|
/* 0291AC4C */ cpu->r[0] = cpu->r[0] + 0x0000199Cu;
|
|
/* 0291AC50 */ cpu->r[4] = 0x00000002u;
|
|
/* 0291AC54 */ _t6 = cpu->r[31] + 0x00000000u;
|
|
/* 0291AC54 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0291AC58 */ Gambit_fn_0281B1A4(cpu);
|
|
/* 0291AC5C */ cpu->r[3] = cpu->r[31] + 0x00000004u;
|
|
/* 0291AC60 */ cpu->r[4] = 0x00000002u;
|
|
/* 0291AC64 */ Gambit_fn_0281C4D0(cpu);
|
|
/* 0291AC68 */ cpu->r[0] = rbrew_rlwinm(cpu->r[30], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0291AC68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0291AC6C */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291AC6C */ _t8 = _t7 & 0x00000001u;
|
|
/* 0291AC6C */ if (_t8) goto L_0291AC78; else goto L_0291AC70;
|
|
L_0291AC70: ; // 0x291ac70
|
|
/* 0291AC70 */ cpu->r[3] = cpu->r[31];
|
|
/* 0291AC74 */ Gambit_fn_02801BB0(cpu);
|
|
L_0291AC78: ; // 0x291ac78
|
|
/* 0291AC78 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0291AC78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0291AC7C */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 0291AC7C */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0291AC80 */ cpu->lr = cpu->r[0];
|
|
/* 0291AC84 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291AC84 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0291AC88 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0291AC8C */ return;
|
|
}
|
|
|
|
// fn_0291AC90 @ 0x291ac90
|
|
void Gambit_fn_0291AC90(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_0291AC90: ; // 0x291ac90
|
|
/* 0291AC90 */ cpu->r[0] = cpu->lr;
|
|
/* 0291AC94 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0291AC94 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291AC94 */ cpu->r[1] = _t0;
|
|
/* 0291AC98 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291AC98 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0291AC9C */ cpu->r[31] = cpu->r[3];
|
|
/* 0291ACA0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0291ACA0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0291ACA4 */ _t3 = cpu->r[31] + 0x00000158u;
|
|
/* 0291ACA4 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 0291ACA8 */ _t4 = cpu->r[31] + 0x0000015Cu;
|
|
/* 0291ACA8 */ cpu->f[2] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 0291ACAC */ cpu->r[3] = cpu->r[31] + 0x00000004u;
|
|
/* 0291ACB0 */ Gambit_fn_0291A7E4(cpu);
|
|
/* 0291ACB4 */ _t5 = cpu->r[31] + 0x00000160u;
|
|
/* 0291ACB4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0291ACB8 */ cpu->r[5] = cpu->r[31] + 0x0000014Cu;
|
|
/* 0291ACBC */ cpu->r[3] = cpu->r[31] + 0x000000BCu;
|
|
/* 0291ACC0 */ Gambit_fn_0291A8F0(cpu);
|
|
/* 0291ACC4 */ _t6 = cpu->r[31] + 0x00000160u;
|
|
/* 0291ACC4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0291ACC8 */ _t7 = cpu->r[31] + 0x00000164u;
|
|
/* 0291ACC8 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 0291ACCC */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 0291ACCC */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0291ACD0 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291ACD0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0291ACD4 */ cpu->lr = cpu->r[0];
|
|
/* 0291ACD8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0291ACDC */ return;
|
|
}
|
|
|
|
// fn_0291AC94 @ 0x291ac94
|
|
void Gambit_fn_0291AC94(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_0291AC94: ; // 0x291ac94
|
|
/* 0291AC94 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0291AC94 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291AC94 */ cpu->r[1] = _t0;
|
|
/* 0291AC98 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291AC98 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0291AC9C */ cpu->r[31] = cpu->r[3];
|
|
/* 0291ACA0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0291ACA0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0291ACA4 */ _t3 = cpu->r[31] + 0x00000158u;
|
|
/* 0291ACA4 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 0291ACA8 */ _t4 = cpu->r[31] + 0x0000015Cu;
|
|
/* 0291ACA8 */ cpu->f[2] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 0291ACAC */ cpu->r[3] = cpu->r[31] + 0x00000004u;
|
|
/* 0291ACB0 */ Gambit_fn_0291A7E4(cpu);
|
|
/* 0291ACB4 */ _t5 = cpu->r[31] + 0x00000160u;
|
|
/* 0291ACB4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0291ACB8 */ cpu->r[5] = cpu->r[31] + 0x0000014Cu;
|
|
/* 0291ACBC */ cpu->r[3] = cpu->r[31] + 0x000000BCu;
|
|
/* 0291ACC0 */ Gambit_fn_0291A8F0(cpu);
|
|
/* 0291ACC4 */ _t6 = cpu->r[31] + 0x00000160u;
|
|
/* 0291ACC4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0291ACC8 */ _t7 = cpu->r[31] + 0x00000164u;
|
|
/* 0291ACC8 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 0291ACCC */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 0291ACCC */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0291ACD0 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291ACD0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0291ACD4 */ cpu->lr = cpu->r[0];
|
|
/* 0291ACD8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0291ACDC */ return;
|
|
}
|
|
|
|
// fn_0291ACE0 @ 0x291ace0
|
|
void Gambit_fn_0291ACE0(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0291ACE0: ; // 0x291ace0
|
|
/* 0291ACE0 */ _t0 = cpu->r[3] + 0x00000138u;
|
|
/* 0291ACE0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0291ACE4 */ _t1 = cpu->r[12] + 0x00000004u;
|
|
/* 0291ACE4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0291ACE8 */ cpu->r[3] = cpu->r[12] + 0x0000030Cu;
|
|
/* 0291ACEC */ return;
|
|
}
|
|
|
|
// fn_0291ACF0 @ 0x291acf0
|
|
void Gambit_fn_0291ACF0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _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_0291ACF0: ; // 0x291acf0
|
|
/* 0291ACF0 */ cpu->r[0] = cpu->lr;
|
|
/* 0291ACF4 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 0291ACF4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291ACF4 */ cpu->r[1] = _t0;
|
|
/* 0291ACF8 */ _t1 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0291ACF8 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 0291ACFC */ _t2 = cpu->r[1] + 0x00000020u;
|
|
/* 0291ACFC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0291AD00 */ _t3 = cpu->r[1] + 0x00000018u;
|
|
/* 0291AD00 */ rbrew_write32(cpu->mem, _t3, cpu->r[28]);
|
|
/* 0291AD04 */ _t4 = cpu->r[1] + 0x00000024u;
|
|
/* 0291AD04 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 0291AD08 */ _t5 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0291AD08 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0291AD0C */ cpu->r[29] = cpu->r[3];
|
|
/* 0291AD10 */ cpu->r[31] = cpu->r[5];
|
|
/* 0291AD14 */ _t6 = cpu->r[29] + 0x00000160u;
|
|
/* 0291AD14 */ cpu->r[5] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0291AD18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 0291AD1C */ cpu->r[30] = cpu->r[4];
|
|
/* 0291AD20 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291AD20 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0291AD20 */ if (_t8) goto L_0291AD24; else goto L_0291B060;
|
|
L_0291AD24: ; // 0x291ad24
|
|
/* 0291AD24 */ _t9 = cpu->r[29] + 0x00000140u;
|
|
/* 0291AD24 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0291AD28 */ _t10 = cpu->r[12] + 0x00000004u;
|
|
/* 0291AD28 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0291AD2C */ Gambit_fn_028F713C(cpu);
|
|
/* 0291AD30 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291AD34 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291AD34 */ _t12 = _t11 & 0x00000001u;
|
|
/* 0291AD34 */ if (_t12) goto L_0291AD38; else goto L_0291AD58;
|
|
L_0291AD38: ; // 0x291ad38
|
|
/* 0291AD38 */ _t13 = cpu->r[29] + 0x00000170u;
|
|
/* 0291AD38 */ cpu->r[6] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0291AD3C */ _t14 = cpu->r[6] + 0x00000378u;
|
|
/* 0291AD3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0291AD40 */ cpu->r[6] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0291AD40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 0291AD44 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291AD44 */ _t16 = _t15 & 0x00000001u;
|
|
/* 0291AD44 */ if (_t16) goto L_0291AD58; else goto L_0291AD48;
|
|
L_0291AD48: ; // 0x291ad48
|
|
/* 0291AD48 */ _t17 = cpu->r[29] + 0x00000140u;
|
|
/* 0291AD48 */ cpu->r[12] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0291AD4C */ _t18 = cpu->r[12] + 0x00001544u;
|
|
/* 0291AD4C */ cpu->r[7] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0291AD50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0291AD54 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291AD54 */ _t20 = _t19 & 0x00000001u;
|
|
/* 0291AD54 */ if (_t20) goto L_0291AF4C; else goto L_0291AD58;
|
|
L_0291AD58: ; // 0x291ad58
|
|
/* 0291AD58 */ cpu->r[3] = 0x101D0000u;
|
|
/* 0291AD5C */ _t21 = cpu->r[29] + 0x00000144u;
|
|
/* 0291AD5C */ cpu->r[8] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0291AD60 */ cpu->r[9] = 0x10140000u;
|
|
/* 0291AD64 */ _t22 = cpu->r[3] + 0xFFFFA504u;
|
|
/* 0291AD64 */ cpu->r[3] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0291AD68 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], 0x00000001u);
|
|
/* 0291AD6C */ cpu->r[9] = cpu->r[9] + 0x00001884u;
|
|
/* 0291AD70 */ _t23 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291AD70 */ _t24 = _t23 & 0x00000001u;
|
|
/* 0291AD70 */ if (_t24) goto L_0291ADB4; else goto L_0291AD74;
|
|
L_0291AD74: ; // 0x291ad74
|
|
/* 0291AD74 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291AD74 */ _t26 = _t25 & 0x00000001u;
|
|
/* 0291AD74 */ if (_t26) goto L_0291AE10; else goto L_0291AD78;
|
|
L_0291AD78: ; // 0x291ad78
|
|
/* 0291AD78 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], 0x00000003u);
|
|
/* 0291AD7C */ _t27 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291AD7C */ _t28 = _t27 & 0x00000001u;
|
|
/* 0291AD7C */ if (_t28) goto L_0291AE6C; else goto L_0291AD80;
|
|
L_0291AD80: ; // 0x291ad80
|
|
/* 0291AD80 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291AD80 */ _t30 = _t29 & 0x00000001u;
|
|
/* 0291AD80 */ if (_t30) goto L_0291AEC8; else goto L_0291AD84;
|
|
L_0291AD84: ; // 0x291ad84
|
|
/* 0291AD84 */ _t31 = cpu->r[29] + 0x00000138u;
|
|
/* 0291AD84 */ cpu->r[3] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0291AD88 */ _t32 = cpu->r[3] + 0x000000A8u;
|
|
/* 0291AD88 */ cpu->r[10] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0291AD8C */ _t33 = cpu->r[10] + 0x0000002Cu;
|
|
/* 0291AD8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 0291AD90 */ _t34 = cpu->r[29] + 0x00000148u;
|
|
/* 0291AD90 */ cpu->r[4] = rbrew_read32(cpu->mem, _t34);
|
|
/* 0291AD94 */ cpu->ctr = cpu->r[0];
|
|
/* 0291AD98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291AD9C */ _t35 = cpu->r[29] + 0x00000140u;
|
|
/* 0291AD9C */ cpu->r[12] = rbrew_read32(cpu->mem, _t35);
|
|
/* 0291ADA0 */ _t36 = cpu->r[12] + 0x0000155Cu;
|
|
/* 0291ADA0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0291ADA4 */ _t37 = cpu->r[12] + 0x00001560u;
|
|
/* 0291ADA4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0291ADA8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[9]);
|
|
/* 0291ADAC */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291ADAC */ _t39 = _t38 & 0x00000001u;
|
|
/* 0291ADAC */ if (_t39) goto L_0291ADB0; else goto L_0291B05C;
|
|
L_0291ADB0: ; // 0x291adb0
|
|
/* 0291ADB0 */ goto L_0291AF78;
|
|
L_0291ADB4: ; // 0x291adb4
|
|
/* 0291ADB4 */ _t40 = cpu->r[1] + 0x00000010u;
|
|
/* 0291ADB4 */ rbrew_write32(cpu->mem, _t40, cpu->r[9]);
|
|
/* 0291ADB8 */ cpu->r[9] = 0x10140000u;
|
|
/* 0291ADBC */ _t41 = cpu->r[29] + 0x00000140u;
|
|
/* 0291ADBC */ cpu->r[10] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0291ADC0 */ cpu->r[9] = cpu->r[9] + 0x0000237Cu;
|
|
/* 0291ADC4 */ _t42 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291ADC4 */ rbrew_write32(cpu->mem, _t42, cpu->r[9]);
|
|
/* 0291ADC8 */ _t43 = cpu->r[10] + 0x00000004u;
|
|
/* 0291ADC8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t43);
|
|
/* 0291ADCC */ _t44 = cpu->r[11] + 0x0000007Cu;
|
|
/* 0291ADCC */ cpu->r[6] = rbrew_read8(cpu->mem, _t44);
|
|
/* 0291ADD0 */ _t45 = cpu->r[11] + 0x00000008u;
|
|
/* 0291ADD0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t45);
|
|
/* 0291ADD4 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291ADD8 */ cpu->r[8] = 0x00000000u;
|
|
/* 0291ADDC */ _t46 = cpu->r[29] + 0x00000170u;
|
|
/* 0291ADDC */ cpu->r[5] = rbrew_read32(cpu->mem, _t46);
|
|
/* 0291ADE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], cpu->r[6]);
|
|
/* 0291ADE4 */ cpu->r[9] = cpu->r[8];
|
|
/* 0291ADE8 */ cpu->r[7] = 0x00000001u;
|
|
/* 0291ADEC */ _t47 = cpu->r[5] + 0x00000208u;
|
|
/* 0291ADEC */ cpu->r[5] = rbrew_read32(cpu->mem, _t47);
|
|
/* 0291ADF0 */ _t48 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291ADF0 */ _t49 = _t48 & 0x00000001u;
|
|
/* 0291ADF0 */ if (_t49) goto L_0291ADF4; else goto L_0291ADF8;
|
|
L_0291ADF4: ; // 0x291adf4
|
|
/* 0291ADF4 */ cpu->r[6] = cpu->r[0];
|
|
L_0291ADF8: ; // 0x291adf8
|
|
/* 0291ADF8 */ cpu->r[10] = cpu->r[7];
|
|
/* 0291ADFC */ _t50 = cpu->r[1] + 0x00000008u;
|
|
/* 0291ADFC */ rbrew_write32(cpu->mem, _t50, cpu->r[8]);
|
|
/* 0291AE00 */ Gambit_fn_029458C4(cpu);
|
|
/* 0291AE04 */ cpu->r[4] = cpu->r[3];
|
|
/* 0291AE08 */ _t51 = cpu->r[29] + 0x00000148u;
|
|
/* 0291AE08 */ rbrew_write32(cpu->mem, _t51, cpu->r[4]);
|
|
/* 0291AE0C */ goto L_0291AF20;
|
|
L_0291AE10: ; // 0x291ae10
|
|
/* 0291AE10 */ cpu->r[11] = 0x10140000u;
|
|
/* 0291AE14 */ _t52 = cpu->r[29] + 0x00000140u;
|
|
/* 0291AE14 */ cpu->r[10] = rbrew_read32(cpu->mem, _t52);
|
|
/* 0291AE18 */ cpu->r[11] = cpu->r[11] + 0x00002390u;
|
|
/* 0291AE1C */ _t53 = cpu->r[1] + 0x00000010u;
|
|
/* 0291AE1C */ rbrew_write32(cpu->mem, _t53, cpu->r[9]);
|
|
/* 0291AE20 */ _t54 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291AE20 */ rbrew_write32(cpu->mem, _t54, cpu->r[11]);
|
|
/* 0291AE24 */ _t55 = cpu->r[10] + 0x00000004u;
|
|
/* 0291AE24 */ cpu->r[11] = rbrew_read32(cpu->mem, _t55);
|
|
/* 0291AE28 */ _t56 = cpu->r[29] + 0x00000170u;
|
|
/* 0291AE28 */ cpu->r[5] = rbrew_read32(cpu->mem, _t56);
|
|
/* 0291AE2C */ cpu->r[7] = 0x00000001u;
|
|
/* 0291AE30 */ _t57 = cpu->r[11] + 0x0000007Cu;
|
|
/* 0291AE30 */ cpu->r[0] = rbrew_read8(cpu->mem, _t57);
|
|
/* 0291AE34 */ cpu->r[9] = cpu->r[7];
|
|
/* 0291AE38 */ _t58 = cpu->r[11] + 0x00000008u;
|
|
/* 0291AE38 */ cpu->r[6] = rbrew_read32(cpu->mem, _t58);
|
|
/* 0291AE3C */ cpu->r[10] = cpu->r[9];
|
|
/* 0291AE40 */ _t59 = cpu->r[5] + 0x00000208u;
|
|
/* 0291AE40 */ cpu->r[5] = rbrew_read32(cpu->mem, _t59);
|
|
/* 0291AE44 */ cpu->r[8] = 0x00000000u;
|
|
/* 0291AE48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], cpu->r[6]);
|
|
/* 0291AE4C */ _t60 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291AE4C */ _t61 = _t60 & 0x00000001u;
|
|
/* 0291AE4C */ if (_t61) goto L_0291AE50; else goto L_0291AE54;
|
|
L_0291AE50: ; // 0x291ae50
|
|
/* 0291AE50 */ cpu->r[6] = cpu->r[0];
|
|
L_0291AE54: ; // 0x291ae54
|
|
/* 0291AE54 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291AE58 */ _t62 = cpu->r[1] + 0x00000008u;
|
|
/* 0291AE58 */ rbrew_write32(cpu->mem, _t62, cpu->r[8]);
|
|
/* 0291AE5C */ Gambit_fn_029458C4(cpu);
|
|
/* 0291AE60 */ cpu->r[4] = cpu->r[3];
|
|
/* 0291AE64 */ _t63 = cpu->r[29] + 0x00000148u;
|
|
/* 0291AE64 */ rbrew_write32(cpu->mem, _t63, cpu->r[4]);
|
|
/* 0291AE68 */ goto L_0291AF20;
|
|
L_0291AE6C: ; // 0x291ae6c
|
|
/* 0291AE6C */ cpu->r[0] = 0x10140000u;
|
|
/* 0291AE70 */ _t64 = cpu->r[1] + 0x00000010u;
|
|
/* 0291AE70 */ rbrew_write32(cpu->mem, _t64, cpu->r[9]);
|
|
/* 0291AE74 */ cpu->r[0] = cpu->r[0] + 0x000023A4u;
|
|
/* 0291AE78 */ _t65 = cpu->r[29] + 0x00000140u;
|
|
/* 0291AE78 */ cpu->r[10] = rbrew_read32(cpu->mem, _t65);
|
|
/* 0291AE7C */ _t66 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291AE7C */ rbrew_write32(cpu->mem, _t66, cpu->r[0]);
|
|
/* 0291AE80 */ _t67 = cpu->r[10] + 0x00000004u;
|
|
/* 0291AE80 */ cpu->r[11] = rbrew_read32(cpu->mem, _t67);
|
|
/* 0291AE84 */ _t68 = cpu->r[29] + 0x00000170u;
|
|
/* 0291AE84 */ cpu->r[5] = rbrew_read32(cpu->mem, _t68);
|
|
/* 0291AE88 */ cpu->r[8] = 0x00000000u;
|
|
/* 0291AE8C */ _t69 = cpu->r[11] + 0x00000008u;
|
|
/* 0291AE8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t69);
|
|
/* 0291AE90 */ cpu->r[9] = cpu->r[8];
|
|
/* 0291AE94 */ _t70 = cpu->r[11] + 0x0000007Cu;
|
|
/* 0291AE94 */ cpu->r[6] = rbrew_read8(cpu->mem, _t70);
|
|
/* 0291AE98 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291AE9C */ _t71 = cpu->r[5] + 0x00000208u;
|
|
/* 0291AE9C */ cpu->r[5] = rbrew_read32(cpu->mem, _t71);
|
|
/* 0291AEA0 */ cpu->r[7] = 0x00000001u;
|
|
/* 0291AEA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], cpu->r[6]);
|
|
/* 0291AEA8 */ _t72 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291AEA8 */ _t73 = _t72 & 0x00000001u;
|
|
/* 0291AEA8 */ if (_t73) goto L_0291AEAC; else goto L_0291AEB0;
|
|
L_0291AEAC: ; // 0x291aeac
|
|
/* 0291AEAC */ cpu->r[6] = cpu->r[0];
|
|
L_0291AEB0: ; // 0x291aeb0
|
|
/* 0291AEB0 */ cpu->r[10] = cpu->r[7];
|
|
/* 0291AEB4 */ _t74 = cpu->r[1] + 0x00000008u;
|
|
/* 0291AEB4 */ rbrew_write32(cpu->mem, _t74, cpu->r[8]);
|
|
/* 0291AEB8 */ Gambit_fn_02945A8C(cpu);
|
|
/* 0291AEBC */ cpu->r[4] = cpu->r[3];
|
|
/* 0291AEC0 */ _t75 = cpu->r[29] + 0x00000148u;
|
|
/* 0291AEC0 */ rbrew_write32(cpu->mem, _t75, cpu->r[4]);
|
|
/* 0291AEC4 */ goto L_0291AF20;
|
|
L_0291AEC8: ; // 0x291aec8
|
|
/* 0291AEC8 */ cpu->r[8] = 0x10140000u;
|
|
/* 0291AECC */ _t76 = cpu->r[29] + 0x00000140u;
|
|
/* 0291AECC */ cpu->r[10] = rbrew_read32(cpu->mem, _t76);
|
|
/* 0291AED0 */ cpu->r[8] = cpu->r[8] + 0x000023BCu;
|
|
/* 0291AED4 */ _t77 = cpu->r[1] + 0x00000010u;
|
|
/* 0291AED4 */ rbrew_write32(cpu->mem, _t77, cpu->r[9]);
|
|
/* 0291AED8 */ _t78 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291AED8 */ rbrew_write32(cpu->mem, _t78, cpu->r[8]);
|
|
/* 0291AEDC */ _t79 = cpu->r[10] + 0x00000004u;
|
|
/* 0291AEDC */ cpu->r[11] = rbrew_read32(cpu->mem, _t79);
|
|
/* 0291AEE0 */ _t80 = cpu->r[11] + 0x00000008u;
|
|
/* 0291AEE0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t80);
|
|
/* 0291AEE4 */ cpu->r[7] = 0x00000001u;
|
|
/* 0291AEE8 */ _t81 = cpu->r[11] + 0x0000007Cu;
|
|
/* 0291AEE8 */ cpu->r[6] = rbrew_read8(cpu->mem, _t81);
|
|
/* 0291AEEC */ cpu->r[9] = cpu->r[7];
|
|
/* 0291AEF0 */ _t82 = cpu->r[29] + 0x00000170u;
|
|
/* 0291AEF0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t82);
|
|
/* 0291AEF4 */ cpu->r[8] = 0x00000000u;
|
|
/* 0291AEF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], cpu->r[6]);
|
|
/* 0291AEFC */ cpu->r[10] = cpu->r[9];
|
|
/* 0291AF00 */ _t83 = cpu->r[5] + 0x00000208u;
|
|
/* 0291AF00 */ cpu->r[5] = rbrew_read32(cpu->mem, _t83);
|
|
/* 0291AF04 */ _t84 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291AF04 */ _t85 = _t84 & 0x00000001u;
|
|
/* 0291AF04 */ if (_t85) goto L_0291AF08; else goto L_0291AF0C;
|
|
L_0291AF08: ; // 0x291af08
|
|
/* 0291AF08 */ cpu->r[6] = cpu->r[12];
|
|
L_0291AF0C: ; // 0x291af0c
|
|
/* 0291AF0C */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291AF10 */ _t86 = cpu->r[1] + 0x00000008u;
|
|
/* 0291AF10 */ rbrew_write32(cpu->mem, _t86, cpu->r[8]);
|
|
/* 0291AF14 */ Gambit_fn_02945A8C(cpu);
|
|
/* 0291AF18 */ cpu->r[4] = cpu->r[3];
|
|
/* 0291AF1C */ _t87 = cpu->r[29] + 0x00000148u;
|
|
/* 0291AF1C */ rbrew_write32(cpu->mem, _t87, cpu->r[4]);
|
|
L_0291AF20: ; // 0x291af20
|
|
/* 0291AF20 */ _t88 = cpu->r[29] + 0x00000138u;
|
|
/* 0291AF20 */ cpu->r[3] = rbrew_read32(cpu->mem, _t88);
|
|
/* 0291AF24 */ _t89 = cpu->r[3] + 0x000000A8u;
|
|
/* 0291AF24 */ cpu->r[10] = rbrew_read32(cpu->mem, _t89);
|
|
/* 0291AF28 */ _t90 = cpu->r[10] + 0x0000002Cu;
|
|
/* 0291AF28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t90);
|
|
/* 0291AF2C */ cpu->ctr = cpu->r[0];
|
|
/* 0291AF30 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291AF34 */ _t91 = cpu->r[29] + 0x00000140u;
|
|
/* 0291AF34 */ cpu->r[12] = rbrew_read32(cpu->mem, _t91);
|
|
/* 0291AF38 */ _t92 = cpu->r[12] + 0x0000155Cu;
|
|
/* 0291AF38 */ cpu->r[0] = rbrew_read32(cpu->mem, _t92);
|
|
/* 0291AF3C */ _t93 = cpu->r[12] + 0x00001560u;
|
|
/* 0291AF3C */ cpu->r[9] = rbrew_read32(cpu->mem, _t93);
|
|
/* 0291AF40 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[9]);
|
|
/* 0291AF44 */ _t94 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291AF44 */ _t95 = _t94 & 0x00000001u;
|
|
/* 0291AF44 */ if (_t95) goto L_0291AF48; else goto L_0291B05C;
|
|
L_0291AF48: ; // 0x291af48
|
|
/* 0291AF48 */ goto L_0291AF78;
|
|
L_0291AF4C: ; // 0x291af4c
|
|
/* 0291AF4C */ _t96 = cpu->r[29] + 0x00000138u;
|
|
/* 0291AF4C */ cpu->r[3] = rbrew_read32(cpu->mem, _t96);
|
|
/* 0291AF50 */ _t97 = cpu->r[3] + 0x000000A8u;
|
|
/* 0291AF50 */ cpu->r[5] = rbrew_read32(cpu->mem, _t97);
|
|
/* 0291AF54 */ _t98 = cpu->r[5] + 0x0000002Cu;
|
|
/* 0291AF54 */ cpu->r[7] = rbrew_read32(cpu->mem, _t98);
|
|
/* 0291AF58 */ cpu->ctr = cpu->r[7];
|
|
/* 0291AF5C */ _t99 = cpu->r[12] + 0x00000004u;
|
|
/* 0291AF5C */ cpu->r[4] = rbrew_read32(cpu->mem, _t99);
|
|
/* 0291AF60 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291AF64 */ _t100 = cpu->r[29] + 0x00000140u;
|
|
/* 0291AF64 */ cpu->r[12] = rbrew_read32(cpu->mem, _t100);
|
|
/* 0291AF68 */ _t101 = cpu->r[12] + 0x0000155Cu;
|
|
/* 0291AF68 */ cpu->r[0] = rbrew_read32(cpu->mem, _t101);
|
|
/* 0291AF6C */ _t102 = cpu->r[12] + 0x00001560u;
|
|
/* 0291AF6C */ cpu->r[9] = rbrew_read32(cpu->mem, _t102);
|
|
/* 0291AF70 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[9]);
|
|
/* 0291AF74 */ _t103 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291AF74 */ _t104 = _t103 & 0x00000001u;
|
|
/* 0291AF74 */ if (_t104) goto L_0291AF78; else goto L_0291B05C;
|
|
L_0291AF78: ; // 0x291af78
|
|
/* 0291AF78 */ _t105 = cpu->r[12] + 0x00001864u;
|
|
/* 0291AF78 */ cpu->r[10] = rbrew_read32(cpu->mem, _t105);
|
|
/* 0291AF7C */ cpu->r[0] = rbrew_rlwinm(cpu->r[10], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0291AF7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0291AF80 */ _t106 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291AF80 */ _t107 = _t106 & 0x00000001u;
|
|
/* 0291AF80 */ if (_t107) goto L_0291B05C; else goto L_0291AF84;
|
|
L_0291AF84: ; // 0x291af84
|
|
/* 0291AF84 */ _t108 = cpu->r[12] + 0x00000004u;
|
|
/* 0291AF84 */ cpu->r[28] = rbrew_read32(cpu->mem, _t108);
|
|
/* 0291AF88 */ cpu->r[3] = cpu->r[28];
|
|
/* 0291AF8C */ Gambit_fn_028F713C(cpu);
|
|
/* 0291AF90 */ _t109 = cpu->r[29] + 0x00000170u;
|
|
/* 0291AF90 */ cpu->r[5] = rbrew_read32(cpu->mem, _t109);
|
|
/* 0291AF94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291AF98 */ _t110 = cpu->r[5] + 0x00000378u;
|
|
/* 0291AF98 */ cpu->r[10] = rbrew_read32(cpu->mem, _t110);
|
|
/* 0291AF9C */ _t111 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291AF9C */ _t112 = _t111 & 0x00000001u;
|
|
/* 0291AF9C */ if (_t112) goto L_0291B018; else goto L_0291AFA0;
|
|
L_0291AFA0: ; // 0x291afa0
|
|
/* 0291AFA0 */ cpu->r[11] = 0x101D0000u;
|
|
/* 0291AFA4 */ _t113 = cpu->r[11] + 0xFFFFA534u;
|
|
/* 0291AFA4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t113);
|
|
/* 0291AFA8 */ cpu->r[6] = rbrew_rlwinm(cpu->r[10], 0x00000010u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0291AFA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 0291AFAC */ _t114 = cpu->r[28] + 0x00000014u;
|
|
/* 0291AFAC */ cpu->r[6] = rbrew_read32(cpu->mem, _t114);
|
|
/* 0291AFB0 */ _t115 = cpu->r[11] + 0x0000001Cu;
|
|
/* 0291AFB0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t115);
|
|
/* 0291AFB4 */ _t116 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291AFB4 */ _t117 = _t116 & 0x00000001u;
|
|
/* 0291AFB4 */ if (_t117) goto L_0291AFEC; else goto L_0291AFB8;
|
|
L_0291AFB8: ; // 0x291afb8
|
|
/* 0291AFB8 */ _t118 = cpu->r[29] + 0x00000140u;
|
|
/* 0291AFB8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t118);
|
|
/* 0291AFBC */ _t119 = cpu->r[12] + 0x000000A4u;
|
|
/* 0291AFBC */ cpu->r[8] = rbrew_read32(cpu->mem, _t119);
|
|
/* 0291AFC0 */ cpu->r[4] = cpu->r[28];
|
|
/* 0291AFC4 */ cpu->r[7] = (uint32_t)((int32_t)cpu->r[8] * (int32_t)0x00000006u);
|
|
/* 0291AFC8 */ cpu->r[8] = 0x00000000u;
|
|
/* 0291AFCC */ cpu->r[5] = 0x00000006u;
|
|
/* 0291AFD0 */ cpu->r[10] = cpu->r[8];
|
|
/* 0291AFD4 */ cpu->r[9] = cpu->r[8];
|
|
/* 0291AFD8 */ _t120 = cpu->r[1] + 0x00000008u;
|
|
/* 0291AFD8 */ rbrew_write32(cpu->mem, _t120, cpu->r[31]);
|
|
/* 0291AFDC */ Gambit_fn_028F7FEC(cpu);
|
|
/* 0291AFE0 */ cpu->r[31] = cpu->r[3];
|
|
/* 0291AFE4 */ _t121 = cpu->r[29] + 0x00000160u;
|
|
/* 0291AFE4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t121);
|
|
/* 0291AFE8 */ goto L_0291B060;
|
|
L_0291AFEC: ; // 0x291afec
|
|
/* 0291AFEC */ cpu->r[7] = 0x00000000u;
|
|
/* 0291AFF0 */ cpu->r[4] = cpu->r[28];
|
|
/* 0291AFF4 */ cpu->r[9] = cpu->r[7];
|
|
/* 0291AFF8 */ cpu->r[8] = cpu->r[7];
|
|
/* 0291AFFC */ cpu->r[5] = 0x00000006u;
|
|
/* 0291B000 */ cpu->r[10] = cpu->r[9];
|
|
/* 0291B004 */ _t122 = cpu->r[1] + 0x00000008u;
|
|
/* 0291B004 */ rbrew_write32(cpu->mem, _t122, cpu->r[31]);
|
|
/* 0291B008 */ Gambit_fn_028F7FEC(cpu);
|
|
/* 0291B00C */ cpu->r[31] = cpu->r[3];
|
|
/* 0291B010 */ _t123 = cpu->r[29] + 0x00000160u;
|
|
/* 0291B010 */ cpu->r[5] = rbrew_read32(cpu->mem, _t123);
|
|
/* 0291B014 */ goto L_0291B060;
|
|
L_0291B018: ; // 0x291b018
|
|
/* 0291B018 */ _t124 = cpu->r[29] + 0x00000140u;
|
|
/* 0291B018 */ cpu->r[12] = rbrew_read32(cpu->mem, _t124);
|
|
/* 0291B01C */ cpu->r[11] = rbrew_rlwinm(cpu->r[10], 0x00000010u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0291B01C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0291B020 */ _t125 = cpu->r[12] + 0x00000004u;
|
|
/* 0291B020 */ cpu->r[3] = rbrew_read32(cpu->mem, _t125);
|
|
/* 0291B024 */ _t126 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291B024 */ _t127 = _t126 & 0x00000001u;
|
|
/* 0291B024 */ if (_t127) goto L_0291B044; else goto L_0291B028;
|
|
L_0291B028: ; // 0x291b028
|
|
/* 0291B028 */ cpu->r[5] = 0x101F0000u;
|
|
/* 0291B02C */ cpu->r[6] = cpu->r[31];
|
|
/* 0291B030 */ _t128 = cpu->r[12] + 0x000000A4u;
|
|
/* 0291B030 */ cpu->r[4] = rbrew_read32(cpu->mem, _t128);
|
|
/* 0291B034 */ cpu->r[5] = cpu->r[5] + 0x00005BCCu;
|
|
/* 0291B038 */ Gambit_fn_029628CC(cpu);
|
|
/* 0291B03C */ cpu->r[31] = cpu->r[3];
|
|
/* 0291B040 */ goto L_0291B05C;
|
|
L_0291B044: ; // 0x291b044
|
|
/* 0291B044 */ cpu->r[5] = 0x101F0000u;
|
|
/* 0291B048 */ cpu->r[6] = cpu->r[31];
|
|
/* 0291B04C */ cpu->r[5] = cpu->r[5] + 0x00005BCCu;
|
|
/* 0291B050 */ cpu->r[4] = 0x00000000u;
|
|
/* 0291B054 */ Gambit_fn_029628CC(cpu);
|
|
/* 0291B058 */ cpu->r[31] = cpu->r[3];
|
|
L_0291B05C: ; // 0x291b05c
|
|
/* 0291B05C */ _t129 = cpu->r[29] + 0x00000160u;
|
|
/* 0291B05C */ cpu->r[5] = rbrew_read32(cpu->mem, _t129);
|
|
L_0291B060: ; // 0x291b060
|
|
/* 0291B060 */ _t130 = cpu->r[29] + 0x00000164u;
|
|
/* 0291B060 */ cpu->r[12] = rbrew_read32(cpu->mem, _t130);
|
|
/* 0291B064 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[5]);
|
|
/* 0291B068 */ _t131 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291B068 */ _t132 = _t131 & 0x00000001u;
|
|
/* 0291B068 */ if (_t132) goto L_0291B074; else goto L_0291B06C;
|
|
L_0291B06C: ; // 0x291b06c
|
|
/* 0291B06C */ cpu->r[3] = cpu->r[29];
|
|
/* 0291B070 */ Gambit_fn_0291AC90(cpu);
|
|
L_0291B074: ; // 0x291b074
|
|
/* 0291B074 */ _t133 = cpu->r[29] + 0x00000170u;
|
|
/* 0291B074 */ cpu->r[6] = rbrew_read32(cpu->mem, _t133);
|
|
/* 0291B078 */ _t134 = cpu->r[29] + 0x00000138u;
|
|
/* 0291B078 */ cpu->r[12] = rbrew_read32(cpu->mem, _t134);
|
|
/* 0291B07C */ _t135 = cpu->r[6] + 0x00000378u;
|
|
/* 0291B07C */ cpu->r[5] = rbrew_read32(cpu->mem, _t135);
|
|
/* 0291B080 */ _t136 = cpu->r[12] + 0x00000004u;
|
|
/* 0291B080 */ cpu->r[28] = rbrew_read32(cpu->mem, _t136);
|
|
/* 0291B084 */ cpu->r[4] = rbrew_rlwinm(cpu->r[5], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0291B088 */ cpu->r[5] = 0x00000001u;
|
|
/* 0291B08C */ cpu->r[3] = cpu->r[28];
|
|
/* 0291B090 */ Gambit_fn_0296203C(cpu);
|
|
/* 0291B094 */ _t137 = cpu->r[29] + 0x00000160u;
|
|
/* 0291B094 */ cpu->r[4] = rbrew_read32(cpu->mem, _t137);
|
|
/* 0291B098 */ cpu->r[5] = cpu->r[30];
|
|
/* 0291B09C */ cpu->r[3] = cpu->r[28];
|
|
/* 0291B0A0 */ Gambit_fn_029625F8(cpu);
|
|
/* 0291B0A4 */ cpu->r[3] = cpu->r[29];
|
|
/* 0291B0A8 */ Gambit_fn_0291ACE0(cpu);
|
|
/* 0291B0AC */ cpu->r[4] = cpu->r[3];
|
|
/* 0291B0B0 */ cpu->r[3] = cpu->r[29] + 0x00000120u;
|
|
/* 0291B0B4 */ Gambit_fn_0281D8DC(cpu);
|
|
/* 0291B0B8 */ cpu->r[3] = cpu->r[29];
|
|
/* 0291B0BC */ Gambit_fn_0291ACE0(cpu);
|
|
/* 0291B0C0 */ cpu->r[4] = cpu->r[3];
|
|
/* 0291B0C4 */ cpu->r[3] = cpu->r[29] + 0x00000120u;
|
|
/* 0291B0C8 */ Gambit_fn_0281DCCC(cpu);
|
|
/* 0291B0CC */ _t138 = cpu->r[1] + 0x00000018u;
|
|
/* 0291B0CC */ cpu->r[28] = rbrew_read32(cpu->mem, _t138);
|
|
/* 0291B0D0 */ _t139 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0291B0D0 */ cpu->r[29] = rbrew_read32(cpu->mem, _t139);
|
|
/* 0291B0D4 */ _t140 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0291B0D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t140);
|
|
/* 0291B0D8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0291B0DC */ _t141 = cpu->r[1] + 0x00000020u;
|
|
/* 0291B0DC */ cpu->r[30] = rbrew_read32(cpu->mem, _t141);
|
|
/* 0291B0E0 */ cpu->lr = cpu->r[0];
|
|
/* 0291B0E4 */ _t142 = cpu->r[1] + 0x00000024u;
|
|
/* 0291B0E4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t142);
|
|
/* 0291B0E8 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 0291B0EC */ return;
|
|
}
|
|
|
|
// fn_0291ACF4 @ 0x291acf4
|
|
void Gambit_fn_0291ACF4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _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_0291ACF4: ; // 0x291acf4
|
|
/* 0291ACF4 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 0291ACF4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291ACF4 */ cpu->r[1] = _t0;
|
|
/* 0291ACF8 */ _t1 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0291ACF8 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 0291ACFC */ _t2 = cpu->r[1] + 0x00000020u;
|
|
/* 0291ACFC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0291AD00 */ _t3 = cpu->r[1] + 0x00000018u;
|
|
/* 0291AD00 */ rbrew_write32(cpu->mem, _t3, cpu->r[28]);
|
|
/* 0291AD04 */ _t4 = cpu->r[1] + 0x00000024u;
|
|
/* 0291AD04 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 0291AD08 */ _t5 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0291AD08 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0291AD0C */ cpu->r[29] = cpu->r[3];
|
|
/* 0291AD10 */ cpu->r[31] = cpu->r[5];
|
|
/* 0291AD14 */ _t6 = cpu->r[29] + 0x00000160u;
|
|
/* 0291AD14 */ cpu->r[5] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0291AD18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 0291AD1C */ cpu->r[30] = cpu->r[4];
|
|
/* 0291AD20 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291AD20 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0291AD20 */ if (_t8) goto L_0291AD24; else goto L_0291B060;
|
|
L_0291AD24: ; // 0x291ad24
|
|
/* 0291AD24 */ _t9 = cpu->r[29] + 0x00000140u;
|
|
/* 0291AD24 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0291AD28 */ _t10 = cpu->r[12] + 0x00000004u;
|
|
/* 0291AD28 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0291AD2C */ Gambit_fn_028F713C(cpu);
|
|
/* 0291AD30 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291AD34 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291AD34 */ _t12 = _t11 & 0x00000001u;
|
|
/* 0291AD34 */ if (_t12) goto L_0291AD38; else goto L_0291AD58;
|
|
L_0291AD38: ; // 0x291ad38
|
|
/* 0291AD38 */ _t13 = cpu->r[29] + 0x00000170u;
|
|
/* 0291AD38 */ cpu->r[6] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0291AD3C */ _t14 = cpu->r[6] + 0x00000378u;
|
|
/* 0291AD3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0291AD40 */ cpu->r[6] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0291AD40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 0291AD44 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291AD44 */ _t16 = _t15 & 0x00000001u;
|
|
/* 0291AD44 */ if (_t16) goto L_0291AD58; else goto L_0291AD48;
|
|
L_0291AD48: ; // 0x291ad48
|
|
/* 0291AD48 */ _t17 = cpu->r[29] + 0x00000140u;
|
|
/* 0291AD48 */ cpu->r[12] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0291AD4C */ _t18 = cpu->r[12] + 0x00001544u;
|
|
/* 0291AD4C */ cpu->r[7] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0291AD50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0291AD54 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291AD54 */ _t20 = _t19 & 0x00000001u;
|
|
/* 0291AD54 */ if (_t20) goto L_0291AF4C; else goto L_0291AD58;
|
|
L_0291AD58: ; // 0x291ad58
|
|
/* 0291AD58 */ cpu->r[3] = 0x101D0000u;
|
|
/* 0291AD5C */ _t21 = cpu->r[29] + 0x00000144u;
|
|
/* 0291AD5C */ cpu->r[8] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0291AD60 */ cpu->r[9] = 0x10140000u;
|
|
/* 0291AD64 */ _t22 = cpu->r[3] + 0xFFFFA504u;
|
|
/* 0291AD64 */ cpu->r[3] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0291AD68 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], 0x00000001u);
|
|
/* 0291AD6C */ cpu->r[9] = cpu->r[9] + 0x00001884u;
|
|
/* 0291AD70 */ _t23 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291AD70 */ _t24 = _t23 & 0x00000001u;
|
|
/* 0291AD70 */ if (_t24) goto L_0291ADB4; else goto L_0291AD74;
|
|
L_0291AD74: ; // 0x291ad74
|
|
/* 0291AD74 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291AD74 */ _t26 = _t25 & 0x00000001u;
|
|
/* 0291AD74 */ if (_t26) goto L_0291AE10; else goto L_0291AD78;
|
|
L_0291AD78: ; // 0x291ad78
|
|
/* 0291AD78 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], 0x00000003u);
|
|
/* 0291AD7C */ _t27 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291AD7C */ _t28 = _t27 & 0x00000001u;
|
|
/* 0291AD7C */ if (_t28) goto L_0291AE6C; else goto L_0291AD80;
|
|
L_0291AD80: ; // 0x291ad80
|
|
/* 0291AD80 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291AD80 */ _t30 = _t29 & 0x00000001u;
|
|
/* 0291AD80 */ if (_t30) goto L_0291AEC8; else goto L_0291AD84;
|
|
L_0291AD84: ; // 0x291ad84
|
|
/* 0291AD84 */ _t31 = cpu->r[29] + 0x00000138u;
|
|
/* 0291AD84 */ cpu->r[3] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0291AD88 */ _t32 = cpu->r[3] + 0x000000A8u;
|
|
/* 0291AD88 */ cpu->r[10] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0291AD8C */ _t33 = cpu->r[10] + 0x0000002Cu;
|
|
/* 0291AD8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 0291AD90 */ _t34 = cpu->r[29] + 0x00000148u;
|
|
/* 0291AD90 */ cpu->r[4] = rbrew_read32(cpu->mem, _t34);
|
|
/* 0291AD94 */ cpu->ctr = cpu->r[0];
|
|
/* 0291AD98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291AD9C */ _t35 = cpu->r[29] + 0x00000140u;
|
|
/* 0291AD9C */ cpu->r[12] = rbrew_read32(cpu->mem, _t35);
|
|
/* 0291ADA0 */ _t36 = cpu->r[12] + 0x0000155Cu;
|
|
/* 0291ADA0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0291ADA4 */ _t37 = cpu->r[12] + 0x00001560u;
|
|
/* 0291ADA4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0291ADA8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[9]);
|
|
/* 0291ADAC */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291ADAC */ _t39 = _t38 & 0x00000001u;
|
|
/* 0291ADAC */ if (_t39) goto L_0291ADB0; else goto L_0291B05C;
|
|
L_0291ADB0: ; // 0x291adb0
|
|
/* 0291ADB0 */ goto L_0291AF78;
|
|
L_0291ADB4: ; // 0x291adb4
|
|
/* 0291ADB4 */ _t40 = cpu->r[1] + 0x00000010u;
|
|
/* 0291ADB4 */ rbrew_write32(cpu->mem, _t40, cpu->r[9]);
|
|
/* 0291ADB8 */ cpu->r[9] = 0x10140000u;
|
|
/* 0291ADBC */ _t41 = cpu->r[29] + 0x00000140u;
|
|
/* 0291ADBC */ cpu->r[10] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0291ADC0 */ cpu->r[9] = cpu->r[9] + 0x0000237Cu;
|
|
/* 0291ADC4 */ _t42 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291ADC4 */ rbrew_write32(cpu->mem, _t42, cpu->r[9]);
|
|
/* 0291ADC8 */ _t43 = cpu->r[10] + 0x00000004u;
|
|
/* 0291ADC8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t43);
|
|
/* 0291ADCC */ _t44 = cpu->r[11] + 0x0000007Cu;
|
|
/* 0291ADCC */ cpu->r[6] = rbrew_read8(cpu->mem, _t44);
|
|
/* 0291ADD0 */ _t45 = cpu->r[11] + 0x00000008u;
|
|
/* 0291ADD0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t45);
|
|
/* 0291ADD4 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291ADD8 */ cpu->r[8] = 0x00000000u;
|
|
/* 0291ADDC */ _t46 = cpu->r[29] + 0x00000170u;
|
|
/* 0291ADDC */ cpu->r[5] = rbrew_read32(cpu->mem, _t46);
|
|
/* 0291ADE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], cpu->r[6]);
|
|
/* 0291ADE4 */ cpu->r[9] = cpu->r[8];
|
|
/* 0291ADE8 */ cpu->r[7] = 0x00000001u;
|
|
/* 0291ADEC */ _t47 = cpu->r[5] + 0x00000208u;
|
|
/* 0291ADEC */ cpu->r[5] = rbrew_read32(cpu->mem, _t47);
|
|
/* 0291ADF0 */ _t48 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291ADF0 */ _t49 = _t48 & 0x00000001u;
|
|
/* 0291ADF0 */ if (_t49) goto L_0291ADF4; else goto L_0291ADF8;
|
|
L_0291ADF4: ; // 0x291adf4
|
|
/* 0291ADF4 */ cpu->r[6] = cpu->r[0];
|
|
L_0291ADF8: ; // 0x291adf8
|
|
/* 0291ADF8 */ cpu->r[10] = cpu->r[7];
|
|
/* 0291ADFC */ _t50 = cpu->r[1] + 0x00000008u;
|
|
/* 0291ADFC */ rbrew_write32(cpu->mem, _t50, cpu->r[8]);
|
|
/* 0291AE00 */ Gambit_fn_029458C4(cpu);
|
|
/* 0291AE04 */ cpu->r[4] = cpu->r[3];
|
|
/* 0291AE08 */ _t51 = cpu->r[29] + 0x00000148u;
|
|
/* 0291AE08 */ rbrew_write32(cpu->mem, _t51, cpu->r[4]);
|
|
/* 0291AE0C */ goto L_0291AF20;
|
|
L_0291AE10: ; // 0x291ae10
|
|
/* 0291AE10 */ cpu->r[11] = 0x10140000u;
|
|
/* 0291AE14 */ _t52 = cpu->r[29] + 0x00000140u;
|
|
/* 0291AE14 */ cpu->r[10] = rbrew_read32(cpu->mem, _t52);
|
|
/* 0291AE18 */ cpu->r[11] = cpu->r[11] + 0x00002390u;
|
|
/* 0291AE1C */ _t53 = cpu->r[1] + 0x00000010u;
|
|
/* 0291AE1C */ rbrew_write32(cpu->mem, _t53, cpu->r[9]);
|
|
/* 0291AE20 */ _t54 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291AE20 */ rbrew_write32(cpu->mem, _t54, cpu->r[11]);
|
|
/* 0291AE24 */ _t55 = cpu->r[10] + 0x00000004u;
|
|
/* 0291AE24 */ cpu->r[11] = rbrew_read32(cpu->mem, _t55);
|
|
/* 0291AE28 */ _t56 = cpu->r[29] + 0x00000170u;
|
|
/* 0291AE28 */ cpu->r[5] = rbrew_read32(cpu->mem, _t56);
|
|
/* 0291AE2C */ cpu->r[7] = 0x00000001u;
|
|
/* 0291AE30 */ _t57 = cpu->r[11] + 0x0000007Cu;
|
|
/* 0291AE30 */ cpu->r[0] = rbrew_read8(cpu->mem, _t57);
|
|
/* 0291AE34 */ cpu->r[9] = cpu->r[7];
|
|
/* 0291AE38 */ _t58 = cpu->r[11] + 0x00000008u;
|
|
/* 0291AE38 */ cpu->r[6] = rbrew_read32(cpu->mem, _t58);
|
|
/* 0291AE3C */ cpu->r[10] = cpu->r[9];
|
|
/* 0291AE40 */ _t59 = cpu->r[5] + 0x00000208u;
|
|
/* 0291AE40 */ cpu->r[5] = rbrew_read32(cpu->mem, _t59);
|
|
/* 0291AE44 */ cpu->r[8] = 0x00000000u;
|
|
/* 0291AE48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], cpu->r[6]);
|
|
/* 0291AE4C */ _t60 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291AE4C */ _t61 = _t60 & 0x00000001u;
|
|
/* 0291AE4C */ if (_t61) goto L_0291AE50; else goto L_0291AE54;
|
|
L_0291AE50: ; // 0x291ae50
|
|
/* 0291AE50 */ cpu->r[6] = cpu->r[0];
|
|
L_0291AE54: ; // 0x291ae54
|
|
/* 0291AE54 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291AE58 */ _t62 = cpu->r[1] + 0x00000008u;
|
|
/* 0291AE58 */ rbrew_write32(cpu->mem, _t62, cpu->r[8]);
|
|
/* 0291AE5C */ Gambit_fn_029458C4(cpu);
|
|
/* 0291AE60 */ cpu->r[4] = cpu->r[3];
|
|
/* 0291AE64 */ _t63 = cpu->r[29] + 0x00000148u;
|
|
/* 0291AE64 */ rbrew_write32(cpu->mem, _t63, cpu->r[4]);
|
|
/* 0291AE68 */ goto L_0291AF20;
|
|
L_0291AE6C: ; // 0x291ae6c
|
|
/* 0291AE6C */ cpu->r[0] = 0x10140000u;
|
|
/* 0291AE70 */ _t64 = cpu->r[1] + 0x00000010u;
|
|
/* 0291AE70 */ rbrew_write32(cpu->mem, _t64, cpu->r[9]);
|
|
/* 0291AE74 */ cpu->r[0] = cpu->r[0] + 0x000023A4u;
|
|
/* 0291AE78 */ _t65 = cpu->r[29] + 0x00000140u;
|
|
/* 0291AE78 */ cpu->r[10] = rbrew_read32(cpu->mem, _t65);
|
|
/* 0291AE7C */ _t66 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291AE7C */ rbrew_write32(cpu->mem, _t66, cpu->r[0]);
|
|
/* 0291AE80 */ _t67 = cpu->r[10] + 0x00000004u;
|
|
/* 0291AE80 */ cpu->r[11] = rbrew_read32(cpu->mem, _t67);
|
|
/* 0291AE84 */ _t68 = cpu->r[29] + 0x00000170u;
|
|
/* 0291AE84 */ cpu->r[5] = rbrew_read32(cpu->mem, _t68);
|
|
/* 0291AE88 */ cpu->r[8] = 0x00000000u;
|
|
/* 0291AE8C */ _t69 = cpu->r[11] + 0x00000008u;
|
|
/* 0291AE8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t69);
|
|
/* 0291AE90 */ cpu->r[9] = cpu->r[8];
|
|
/* 0291AE94 */ _t70 = cpu->r[11] + 0x0000007Cu;
|
|
/* 0291AE94 */ cpu->r[6] = rbrew_read8(cpu->mem, _t70);
|
|
/* 0291AE98 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291AE9C */ _t71 = cpu->r[5] + 0x00000208u;
|
|
/* 0291AE9C */ cpu->r[5] = rbrew_read32(cpu->mem, _t71);
|
|
/* 0291AEA0 */ cpu->r[7] = 0x00000001u;
|
|
/* 0291AEA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], cpu->r[6]);
|
|
/* 0291AEA8 */ _t72 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291AEA8 */ _t73 = _t72 & 0x00000001u;
|
|
/* 0291AEA8 */ if (_t73) goto L_0291AEAC; else goto L_0291AEB0;
|
|
L_0291AEAC: ; // 0x291aeac
|
|
/* 0291AEAC */ cpu->r[6] = cpu->r[0];
|
|
L_0291AEB0: ; // 0x291aeb0
|
|
/* 0291AEB0 */ cpu->r[10] = cpu->r[7];
|
|
/* 0291AEB4 */ _t74 = cpu->r[1] + 0x00000008u;
|
|
/* 0291AEB4 */ rbrew_write32(cpu->mem, _t74, cpu->r[8]);
|
|
/* 0291AEB8 */ Gambit_fn_02945A8C(cpu);
|
|
/* 0291AEBC */ cpu->r[4] = cpu->r[3];
|
|
/* 0291AEC0 */ _t75 = cpu->r[29] + 0x00000148u;
|
|
/* 0291AEC0 */ rbrew_write32(cpu->mem, _t75, cpu->r[4]);
|
|
/* 0291AEC4 */ goto L_0291AF20;
|
|
L_0291AEC8: ; // 0x291aec8
|
|
/* 0291AEC8 */ cpu->r[8] = 0x10140000u;
|
|
/* 0291AECC */ _t76 = cpu->r[29] + 0x00000140u;
|
|
/* 0291AECC */ cpu->r[10] = rbrew_read32(cpu->mem, _t76);
|
|
/* 0291AED0 */ cpu->r[8] = cpu->r[8] + 0x000023BCu;
|
|
/* 0291AED4 */ _t77 = cpu->r[1] + 0x00000010u;
|
|
/* 0291AED4 */ rbrew_write32(cpu->mem, _t77, cpu->r[9]);
|
|
/* 0291AED8 */ _t78 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291AED8 */ rbrew_write32(cpu->mem, _t78, cpu->r[8]);
|
|
/* 0291AEDC */ _t79 = cpu->r[10] + 0x00000004u;
|
|
/* 0291AEDC */ cpu->r[11] = rbrew_read32(cpu->mem, _t79);
|
|
/* 0291AEE0 */ _t80 = cpu->r[11] + 0x00000008u;
|
|
/* 0291AEE0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t80);
|
|
/* 0291AEE4 */ cpu->r[7] = 0x00000001u;
|
|
/* 0291AEE8 */ _t81 = cpu->r[11] + 0x0000007Cu;
|
|
/* 0291AEE8 */ cpu->r[6] = rbrew_read8(cpu->mem, _t81);
|
|
/* 0291AEEC */ cpu->r[9] = cpu->r[7];
|
|
/* 0291AEF0 */ _t82 = cpu->r[29] + 0x00000170u;
|
|
/* 0291AEF0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t82);
|
|
/* 0291AEF4 */ cpu->r[8] = 0x00000000u;
|
|
/* 0291AEF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], cpu->r[6]);
|
|
/* 0291AEFC */ cpu->r[10] = cpu->r[9];
|
|
/* 0291AF00 */ _t83 = cpu->r[5] + 0x00000208u;
|
|
/* 0291AF00 */ cpu->r[5] = rbrew_read32(cpu->mem, _t83);
|
|
/* 0291AF04 */ _t84 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291AF04 */ _t85 = _t84 & 0x00000001u;
|
|
/* 0291AF04 */ if (_t85) goto L_0291AF08; else goto L_0291AF0C;
|
|
L_0291AF08: ; // 0x291af08
|
|
/* 0291AF08 */ cpu->r[6] = cpu->r[12];
|
|
L_0291AF0C: ; // 0x291af0c
|
|
/* 0291AF0C */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291AF10 */ _t86 = cpu->r[1] + 0x00000008u;
|
|
/* 0291AF10 */ rbrew_write32(cpu->mem, _t86, cpu->r[8]);
|
|
/* 0291AF14 */ Gambit_fn_02945A8C(cpu);
|
|
/* 0291AF18 */ cpu->r[4] = cpu->r[3];
|
|
/* 0291AF1C */ _t87 = cpu->r[29] + 0x00000148u;
|
|
/* 0291AF1C */ rbrew_write32(cpu->mem, _t87, cpu->r[4]);
|
|
L_0291AF20: ; // 0x291af20
|
|
/* 0291AF20 */ _t88 = cpu->r[29] + 0x00000138u;
|
|
/* 0291AF20 */ cpu->r[3] = rbrew_read32(cpu->mem, _t88);
|
|
/* 0291AF24 */ _t89 = cpu->r[3] + 0x000000A8u;
|
|
/* 0291AF24 */ cpu->r[10] = rbrew_read32(cpu->mem, _t89);
|
|
/* 0291AF28 */ _t90 = cpu->r[10] + 0x0000002Cu;
|
|
/* 0291AF28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t90);
|
|
/* 0291AF2C */ cpu->ctr = cpu->r[0];
|
|
/* 0291AF30 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291AF34 */ _t91 = cpu->r[29] + 0x00000140u;
|
|
/* 0291AF34 */ cpu->r[12] = rbrew_read32(cpu->mem, _t91);
|
|
/* 0291AF38 */ _t92 = cpu->r[12] + 0x0000155Cu;
|
|
/* 0291AF38 */ cpu->r[0] = rbrew_read32(cpu->mem, _t92);
|
|
/* 0291AF3C */ _t93 = cpu->r[12] + 0x00001560u;
|
|
/* 0291AF3C */ cpu->r[9] = rbrew_read32(cpu->mem, _t93);
|
|
/* 0291AF40 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[9]);
|
|
/* 0291AF44 */ _t94 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291AF44 */ _t95 = _t94 & 0x00000001u;
|
|
/* 0291AF44 */ if (_t95) goto L_0291AF48; else goto L_0291B05C;
|
|
L_0291AF48: ; // 0x291af48
|
|
/* 0291AF48 */ goto L_0291AF78;
|
|
L_0291AF4C: ; // 0x291af4c
|
|
/* 0291AF4C */ _t96 = cpu->r[29] + 0x00000138u;
|
|
/* 0291AF4C */ cpu->r[3] = rbrew_read32(cpu->mem, _t96);
|
|
/* 0291AF50 */ _t97 = cpu->r[3] + 0x000000A8u;
|
|
/* 0291AF50 */ cpu->r[5] = rbrew_read32(cpu->mem, _t97);
|
|
/* 0291AF54 */ _t98 = cpu->r[5] + 0x0000002Cu;
|
|
/* 0291AF54 */ cpu->r[7] = rbrew_read32(cpu->mem, _t98);
|
|
/* 0291AF58 */ cpu->ctr = cpu->r[7];
|
|
/* 0291AF5C */ _t99 = cpu->r[12] + 0x00000004u;
|
|
/* 0291AF5C */ cpu->r[4] = rbrew_read32(cpu->mem, _t99);
|
|
/* 0291AF60 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291AF64 */ _t100 = cpu->r[29] + 0x00000140u;
|
|
/* 0291AF64 */ cpu->r[12] = rbrew_read32(cpu->mem, _t100);
|
|
/* 0291AF68 */ _t101 = cpu->r[12] + 0x0000155Cu;
|
|
/* 0291AF68 */ cpu->r[0] = rbrew_read32(cpu->mem, _t101);
|
|
/* 0291AF6C */ _t102 = cpu->r[12] + 0x00001560u;
|
|
/* 0291AF6C */ cpu->r[9] = rbrew_read32(cpu->mem, _t102);
|
|
/* 0291AF70 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[9]);
|
|
/* 0291AF74 */ _t103 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291AF74 */ _t104 = _t103 & 0x00000001u;
|
|
/* 0291AF74 */ if (_t104) goto L_0291AF78; else goto L_0291B05C;
|
|
L_0291AF78: ; // 0x291af78
|
|
/* 0291AF78 */ _t105 = cpu->r[12] + 0x00001864u;
|
|
/* 0291AF78 */ cpu->r[10] = rbrew_read32(cpu->mem, _t105);
|
|
/* 0291AF7C */ cpu->r[0] = rbrew_rlwinm(cpu->r[10], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0291AF7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0291AF80 */ _t106 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291AF80 */ _t107 = _t106 & 0x00000001u;
|
|
/* 0291AF80 */ if (_t107) goto L_0291B05C; else goto L_0291AF84;
|
|
L_0291AF84: ; // 0x291af84
|
|
/* 0291AF84 */ _t108 = cpu->r[12] + 0x00000004u;
|
|
/* 0291AF84 */ cpu->r[28] = rbrew_read32(cpu->mem, _t108);
|
|
/* 0291AF88 */ cpu->r[3] = cpu->r[28];
|
|
/* 0291AF8C */ Gambit_fn_028F713C(cpu);
|
|
/* 0291AF90 */ _t109 = cpu->r[29] + 0x00000170u;
|
|
/* 0291AF90 */ cpu->r[5] = rbrew_read32(cpu->mem, _t109);
|
|
/* 0291AF94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291AF98 */ _t110 = cpu->r[5] + 0x00000378u;
|
|
/* 0291AF98 */ cpu->r[10] = rbrew_read32(cpu->mem, _t110);
|
|
/* 0291AF9C */ _t111 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291AF9C */ _t112 = _t111 & 0x00000001u;
|
|
/* 0291AF9C */ if (_t112) goto L_0291B018; else goto L_0291AFA0;
|
|
L_0291AFA0: ; // 0x291afa0
|
|
/* 0291AFA0 */ cpu->r[11] = 0x101D0000u;
|
|
/* 0291AFA4 */ _t113 = cpu->r[11] + 0xFFFFA534u;
|
|
/* 0291AFA4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t113);
|
|
/* 0291AFA8 */ cpu->r[6] = rbrew_rlwinm(cpu->r[10], 0x00000010u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0291AFA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 0291AFAC */ _t114 = cpu->r[28] + 0x00000014u;
|
|
/* 0291AFAC */ cpu->r[6] = rbrew_read32(cpu->mem, _t114);
|
|
/* 0291AFB0 */ _t115 = cpu->r[11] + 0x0000001Cu;
|
|
/* 0291AFB0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t115);
|
|
/* 0291AFB4 */ _t116 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291AFB4 */ _t117 = _t116 & 0x00000001u;
|
|
/* 0291AFB4 */ if (_t117) goto L_0291AFEC; else goto L_0291AFB8;
|
|
L_0291AFB8: ; // 0x291afb8
|
|
/* 0291AFB8 */ _t118 = cpu->r[29] + 0x00000140u;
|
|
/* 0291AFB8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t118);
|
|
/* 0291AFBC */ _t119 = cpu->r[12] + 0x000000A4u;
|
|
/* 0291AFBC */ cpu->r[8] = rbrew_read32(cpu->mem, _t119);
|
|
/* 0291AFC0 */ cpu->r[4] = cpu->r[28];
|
|
/* 0291AFC4 */ cpu->r[7] = (uint32_t)((int32_t)cpu->r[8] * (int32_t)0x00000006u);
|
|
/* 0291AFC8 */ cpu->r[8] = 0x00000000u;
|
|
/* 0291AFCC */ cpu->r[5] = 0x00000006u;
|
|
/* 0291AFD0 */ cpu->r[10] = cpu->r[8];
|
|
/* 0291AFD4 */ cpu->r[9] = cpu->r[8];
|
|
/* 0291AFD8 */ _t120 = cpu->r[1] + 0x00000008u;
|
|
/* 0291AFD8 */ rbrew_write32(cpu->mem, _t120, cpu->r[31]);
|
|
/* 0291AFDC */ Gambit_fn_028F7FEC(cpu);
|
|
/* 0291AFE0 */ cpu->r[31] = cpu->r[3];
|
|
/* 0291AFE4 */ _t121 = cpu->r[29] + 0x00000160u;
|
|
/* 0291AFE4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t121);
|
|
/* 0291AFE8 */ goto L_0291B060;
|
|
L_0291AFEC: ; // 0x291afec
|
|
/* 0291AFEC */ cpu->r[7] = 0x00000000u;
|
|
/* 0291AFF0 */ cpu->r[4] = cpu->r[28];
|
|
/* 0291AFF4 */ cpu->r[9] = cpu->r[7];
|
|
/* 0291AFF8 */ cpu->r[8] = cpu->r[7];
|
|
/* 0291AFFC */ cpu->r[5] = 0x00000006u;
|
|
/* 0291B000 */ cpu->r[10] = cpu->r[9];
|
|
/* 0291B004 */ _t122 = cpu->r[1] + 0x00000008u;
|
|
/* 0291B004 */ rbrew_write32(cpu->mem, _t122, cpu->r[31]);
|
|
/* 0291B008 */ Gambit_fn_028F7FEC(cpu);
|
|
/* 0291B00C */ cpu->r[31] = cpu->r[3];
|
|
/* 0291B010 */ _t123 = cpu->r[29] + 0x00000160u;
|
|
/* 0291B010 */ cpu->r[5] = rbrew_read32(cpu->mem, _t123);
|
|
/* 0291B014 */ goto L_0291B060;
|
|
L_0291B018: ; // 0x291b018
|
|
/* 0291B018 */ _t124 = cpu->r[29] + 0x00000140u;
|
|
/* 0291B018 */ cpu->r[12] = rbrew_read32(cpu->mem, _t124);
|
|
/* 0291B01C */ cpu->r[11] = rbrew_rlwinm(cpu->r[10], 0x00000010u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0291B01C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0291B020 */ _t125 = cpu->r[12] + 0x00000004u;
|
|
/* 0291B020 */ cpu->r[3] = rbrew_read32(cpu->mem, _t125);
|
|
/* 0291B024 */ _t126 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291B024 */ _t127 = _t126 & 0x00000001u;
|
|
/* 0291B024 */ if (_t127) goto L_0291B044; else goto L_0291B028;
|
|
L_0291B028: ; // 0x291b028
|
|
/* 0291B028 */ cpu->r[5] = 0x101F0000u;
|
|
/* 0291B02C */ cpu->r[6] = cpu->r[31];
|
|
/* 0291B030 */ _t128 = cpu->r[12] + 0x000000A4u;
|
|
/* 0291B030 */ cpu->r[4] = rbrew_read32(cpu->mem, _t128);
|
|
/* 0291B034 */ cpu->r[5] = cpu->r[5] + 0x00005BCCu;
|
|
/* 0291B038 */ Gambit_fn_029628CC(cpu);
|
|
/* 0291B03C */ cpu->r[31] = cpu->r[3];
|
|
/* 0291B040 */ goto L_0291B05C;
|
|
L_0291B044: ; // 0x291b044
|
|
/* 0291B044 */ cpu->r[5] = 0x101F0000u;
|
|
/* 0291B048 */ cpu->r[6] = cpu->r[31];
|
|
/* 0291B04C */ cpu->r[5] = cpu->r[5] + 0x00005BCCu;
|
|
/* 0291B050 */ cpu->r[4] = 0x00000000u;
|
|
/* 0291B054 */ Gambit_fn_029628CC(cpu);
|
|
/* 0291B058 */ cpu->r[31] = cpu->r[3];
|
|
L_0291B05C: ; // 0x291b05c
|
|
/* 0291B05C */ _t129 = cpu->r[29] + 0x00000160u;
|
|
/* 0291B05C */ cpu->r[5] = rbrew_read32(cpu->mem, _t129);
|
|
L_0291B060: ; // 0x291b060
|
|
/* 0291B060 */ _t130 = cpu->r[29] + 0x00000164u;
|
|
/* 0291B060 */ cpu->r[12] = rbrew_read32(cpu->mem, _t130);
|
|
/* 0291B064 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[5]);
|
|
/* 0291B068 */ _t131 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291B068 */ _t132 = _t131 & 0x00000001u;
|
|
/* 0291B068 */ if (_t132) goto L_0291B074; else goto L_0291B06C;
|
|
L_0291B06C: ; // 0x291b06c
|
|
/* 0291B06C */ cpu->r[3] = cpu->r[29];
|
|
/* 0291B070 */ Gambit_fn_0291AC90(cpu);
|
|
L_0291B074: ; // 0x291b074
|
|
/* 0291B074 */ _t133 = cpu->r[29] + 0x00000170u;
|
|
/* 0291B074 */ cpu->r[6] = rbrew_read32(cpu->mem, _t133);
|
|
/* 0291B078 */ _t134 = cpu->r[29] + 0x00000138u;
|
|
/* 0291B078 */ cpu->r[12] = rbrew_read32(cpu->mem, _t134);
|
|
/* 0291B07C */ _t135 = cpu->r[6] + 0x00000378u;
|
|
/* 0291B07C */ cpu->r[5] = rbrew_read32(cpu->mem, _t135);
|
|
/* 0291B080 */ _t136 = cpu->r[12] + 0x00000004u;
|
|
/* 0291B080 */ cpu->r[28] = rbrew_read32(cpu->mem, _t136);
|
|
/* 0291B084 */ cpu->r[4] = rbrew_rlwinm(cpu->r[5], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0291B088 */ cpu->r[5] = 0x00000001u;
|
|
/* 0291B08C */ cpu->r[3] = cpu->r[28];
|
|
/* 0291B090 */ Gambit_fn_0296203C(cpu);
|
|
/* 0291B094 */ _t137 = cpu->r[29] + 0x00000160u;
|
|
/* 0291B094 */ cpu->r[4] = rbrew_read32(cpu->mem, _t137);
|
|
/* 0291B098 */ cpu->r[5] = cpu->r[30];
|
|
/* 0291B09C */ cpu->r[3] = cpu->r[28];
|
|
/* 0291B0A0 */ Gambit_fn_029625F8(cpu);
|
|
/* 0291B0A4 */ cpu->r[3] = cpu->r[29];
|
|
/* 0291B0A8 */ Gambit_fn_0291ACE0(cpu);
|
|
/* 0291B0AC */ cpu->r[4] = cpu->r[3];
|
|
/* 0291B0B0 */ cpu->r[3] = cpu->r[29] + 0x00000120u;
|
|
/* 0291B0B4 */ Gambit_fn_0281D8DC(cpu);
|
|
/* 0291B0B8 */ cpu->r[3] = cpu->r[29];
|
|
/* 0291B0BC */ Gambit_fn_0291ACE0(cpu);
|
|
/* 0291B0C0 */ cpu->r[4] = cpu->r[3];
|
|
/* 0291B0C4 */ cpu->r[3] = cpu->r[29] + 0x00000120u;
|
|
/* 0291B0C8 */ Gambit_fn_0281DCCC(cpu);
|
|
/* 0291B0CC */ _t138 = cpu->r[1] + 0x00000018u;
|
|
/* 0291B0CC */ cpu->r[28] = rbrew_read32(cpu->mem, _t138);
|
|
/* 0291B0D0 */ _t139 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0291B0D0 */ cpu->r[29] = rbrew_read32(cpu->mem, _t139);
|
|
/* 0291B0D4 */ _t140 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0291B0D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t140);
|
|
/* 0291B0D8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0291B0DC */ _t141 = cpu->r[1] + 0x00000020u;
|
|
/* 0291B0DC */ cpu->r[30] = rbrew_read32(cpu->mem, _t141);
|
|
/* 0291B0E0 */ cpu->lr = cpu->r[0];
|
|
/* 0291B0E4 */ _t142 = cpu->r[1] + 0x00000024u;
|
|
/* 0291B0E4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t142);
|
|
/* 0291B0E8 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 0291B0EC */ return;
|
|
}
|
|
|
|
// fn_0291B0F0 @ 0x291b0f0
|
|
void Gambit_fn_0291B0F0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_0291B0F0: ; // 0x291b0f0
|
|
/* 0291B0F0 */ cpu->r[0] = cpu->lr;
|
|
/* 0291B0F4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0291B0F4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291B0F4 */ cpu->r[1] = _t0;
|
|
/* 0291B0F8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291B0F8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0291B0FC */ cpu->r[5] = 0x00000000u;
|
|
/* 0291B100 */ cpu->r[6] = cpu->r[5];
|
|
/* 0291B104 */ cpu->r[31] = cpu->r[3];
|
|
/* 0291B108 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0291B108 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0291B10C */ Gambit_fn_020194D0(cpu);
|
|
/* 0291B110 */ cpu->r[3] = cpu->r[31];
|
|
/* 0291B114 */ Gambit_fn_028F714C(cpu);
|
|
/* 0291B118 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0291B118 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0291B11C */ cpu->lr = cpu->r[0];
|
|
/* 0291B120 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291B120 */ cpu->r[31] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0291B124 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0291B128 */ return;
|
|
}
|
|
|
|
// fn_0291B0F4 @ 0x291b0f4
|
|
void Gambit_fn_0291B0F4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_0291B0F4: ; // 0x291b0f4
|
|
/* 0291B0F4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0291B0F4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291B0F4 */ cpu->r[1] = _t0;
|
|
/* 0291B0F8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291B0F8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0291B0FC */ cpu->r[5] = 0x00000000u;
|
|
/* 0291B100 */ cpu->r[6] = cpu->r[5];
|
|
/* 0291B104 */ cpu->r[31] = cpu->r[3];
|
|
/* 0291B108 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0291B108 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0291B10C */ Gambit_fn_020194D0(cpu);
|
|
/* 0291B110 */ cpu->r[3] = cpu->r[31];
|
|
/* 0291B114 */ Gambit_fn_028F714C(cpu);
|
|
/* 0291B118 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0291B118 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0291B11C */ cpu->lr = cpu->r[0];
|
|
/* 0291B120 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291B120 */ cpu->r[31] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0291B124 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0291B128 */ return;
|
|
}
|
|
|
|
// fn_0291B12C @ 0x291b12c
|
|
void Gambit_fn_0291B12C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62;
|
|
|
|
L_0291B12C: ; // 0x291b12c
|
|
/* 0291B12C */ cpu->r[0] = cpu->lr;
|
|
/* 0291B130 */ _t0 = cpu->r[1] + 0xFFFFFFB8u;
|
|
/* 0291B130 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291B130 */ cpu->r[1] = _t0;
|
|
/* 0291B134 */ _t1 = cpu->r[1] + 0x00000028u;
|
|
/* 0291B134 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[30]);
|
|
/* 0291B138 */ _t2 = cpu->r[1] + 0x00000038u;
|
|
/* 0291B138 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 0291B13C */ /* nop */
|
|
/* 0291B140 */ _t3 = cpu->r[1] + 0x00000030u;
|
|
/* 0291B140 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[30]);
|
|
/* 0291B144 */ /* nop */
|
|
/* 0291B148 */ _t4 = cpu->r[1] + 0x00000040u;
|
|
/* 0291B148 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[31]);
|
|
/* 0291B14C */ _t5 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0291B14C */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0291B150 */ _t6 = cpu->r[1] + 0x00000020u;
|
|
/* 0291B150 */ rbrew_write32(cpu->mem, _t6, cpu->r[30]);
|
|
/* 0291B154 */ _t7 = cpu->r[1] + 0x00000024u;
|
|
/* 0291B154 */ rbrew_write32(cpu->mem, _t7, cpu->r[31]);
|
|
/* 0291B158 */ cpu->r[31] = cpu->r[4];
|
|
/* 0291B15C */ _t8 = cpu->r[31] + 0x0000007Cu;
|
|
/* 0291B15C */ cpu->r[0] = rbrew_read8(cpu->mem, _t8);
|
|
/* 0291B160 */ _t9 = cpu->r[31] + 0x00000008u;
|
|
/* 0291B160 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0291B164 */ cpu->r[6] = 0x43300000u;
|
|
/* 0291B168 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], cpu->r[0]);
|
|
/* 0291B16C */ _t10 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0291B16C */ cpu->r[10] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0291B170 */ _t11 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291B170 */ _t12 = _t11 & 0x00000001u;
|
|
/* 0291B170 */ if (_t12) goto L_0291B174; else goto L_0291B178;
|
|
L_0291B174: ; // 0x291b174
|
|
/* 0291B174 */ cpu->r[0] = cpu->r[12];
|
|
L_0291B178: ; // 0x291b178
|
|
/* 0291B178 */ _t13 = cpu->r[1] + 0x00000018u;
|
|
/* 0291B178 */ rbrew_write32(cpu->mem, _t13, cpu->r[6]);
|
|
/* 0291B17C */ _t14 = cpu->r[31] + 0x0000007Du;
|
|
/* 0291B17C */ cpu->r[11] = rbrew_read8(cpu->mem, _t14);
|
|
/* 0291B180 */ cpu->r[7] = 0x10140000u;
|
|
/* 0291B184 */ _t15 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0291B184 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 0291B188 */ _t16 = cpu->r[1] + 0x00000018u;
|
|
/* 0291B188 */ cpu->f[12] = rbrew_read_f64(cpu->mem, _t16);
|
|
/* 0291B18C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], cpu->r[11]);
|
|
/* 0291B190 */ _t17 = cpu->r[7] + 0x00002158u;
|
|
/* 0291B190 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t17);
|
|
/* 0291B194 */ _t18 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291B194 */ _t19 = _t18 & 0x00000001u;
|
|
/* 0291B194 */ if (_t19) goto L_0291B198; else goto L_0291B19C;
|
|
L_0291B198: ; // 0x291b198
|
|
/* 0291B198 */ cpu->r[11] = cpu->r[10];
|
|
L_0291B19C: ; // 0x291b19c
|
|
/* 0291B19C */ _t20 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0291B19C */ rbrew_write32(cpu->mem, _t20, cpu->r[11]);
|
|
/* 0291B1A0 */ _t21 = cpu->r[1] + 0x00000018u;
|
|
/* 0291B1A0 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t21);
|
|
/* 0291B1A4 */ cpu->f[12] = cpu->f[12] - cpu->f[13];
|
|
/* 0291B1A8 */ cpu->f[8] = cpu->f[0] - cpu->f[13];
|
|
/* 0291B1AC */ cpu->f[30] = (double)(float)cpu->f[12];
|
|
/* 0291B1B0 */ cpu->r[30] = cpu->r[3];
|
|
/* 0291B1B4 */ cpu->f[31] = (double)(float)cpu->f[8];
|
|
/* 0291B1B8 */ Gambit_fn_028F0414(cpu);
|
|
/* 0291B1BC */ cpu->r[12] = 0x10140000u;
|
|
/* 0291B1C0 */ _t22 = cpu->r[12] + 0x00001FB4u;
|
|
/* 0291B1C0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 0291B1C4 */ cpu->r[0] = 0x00000000u;
|
|
/* 0291B1C8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[30]);
|
|
/* 0291B1CC */ _t23 = cpu->r[30] + 0x0000003Cu;
|
|
/* 0291B1CC */ rbrew_write32(cpu->mem, _t23, cpu->r[0]);
|
|
/* 0291B1D0 */ _t24 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291B1D0 */ _t25 = _t24 & 0x00000001u;
|
|
/* 0291B1D0 */ if (_t25) goto L_0291B1D4; else goto L_0291B21C;
|
|
L_0291B1D4: ; // 0x291b1d4
|
|
/* 0291B1D4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[31]);
|
|
/* 0291B1D8 */ _t26 = cpu->r[1] + 0x00000010u;
|
|
/* 0291B1D8 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[30]);
|
|
/* 0291B1DC */ _t27 = cpu->r[1] + 0x00000008u;
|
|
/* 0291B1DC */ rbrew_write_f32(cpu->mem, _t27, cpu->f[0]);
|
|
/* 0291B1E0 */ cpu->f[9] = cpu->f[0];
|
|
/* 0291B1E4 */ _t28 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291B1E4 */ _t29 = _t28 & 0x00000001u;
|
|
/* 0291B1E4 */ if (_t29) goto L_0291B230; else goto L_0291B1E8;
|
|
L_0291B1E8: ; // 0x291b1e8
|
|
/* 0291B1E8 */ _t30 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0291B1E8 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[31]);
|
|
/* 0291B1EC */ cpu->r[3] = cpu->r[30];
|
|
/* 0291B1F0 */ _t31 = cpu->r[30] + 0x00000014u;
|
|
/* 0291B1F0 */ rbrew_write_f32(cpu->mem, _t31, cpu->f[0]);
|
|
/* 0291B1F4 */ _t32 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291B1F4 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[31]);
|
|
/* 0291B1F8 */ _t33 = cpu->r[30] + 0x00000004u;
|
|
/* 0291B1F8 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[31]);
|
|
/* 0291B1FC */ _t34 = cpu->r[1] + 0x00000010u;
|
|
/* 0291B1FC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 0291B200 */ _t35 = cpu->r[30] + 0x00000008u;
|
|
/* 0291B200 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[9]);
|
|
/* 0291B204 */ _t36 = cpu->r[1] + 0x00000014u;
|
|
/* 0291B204 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[0]);
|
|
/* 0291B208 */ _t37 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0291B208 */ rbrew_write32(cpu->mem, _t37, cpu->r[31]);
|
|
/* 0291B20C */ _t38 = cpu->r[30] + 0x00000000u;
|
|
/* 0291B20C */ rbrew_write_f32(cpu->mem, _t38, cpu->f[30]);
|
|
/* 0291B210 */ _t39 = cpu->r[30] + 0x00000010u;
|
|
/* 0291B210 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[13]);
|
|
/* 0291B214 */ Gambit_fn_0281BAE0(cpu);
|
|
/* 0291B218 */ goto L_0291B260;
|
|
L_0291B21C: ; // 0x291b21c
|
|
/* 0291B21C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[31]);
|
|
/* 0291B220 */ _t40 = cpu->r[1] + 0x00000010u;
|
|
/* 0291B220 */ rbrew_write_f32(cpu->mem, _t40, cpu->f[0]);
|
|
/* 0291B224 */ _t41 = cpu->r[1] + 0x00000008u;
|
|
/* 0291B224 */ rbrew_write_f32(cpu->mem, _t41, cpu->f[30]);
|
|
/* 0291B228 */ cpu->f[9] = cpu->f[30];
|
|
/* 0291B22C */ _t42 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291B22C */ _t43 = _t42 & 0x00000001u;
|
|
/* 0291B22C */ if (_t43) goto L_0291B230; else goto L_0291B1E8;
|
|
L_0291B230: ; // 0x291b230
|
|
/* 0291B230 */ _t44 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0291B230 */ rbrew_write_f32(cpu->mem, _t44, cpu->f[0]);
|
|
/* 0291B234 */ cpu->r[3] = cpu->r[30];
|
|
/* 0291B238 */ _t45 = cpu->r[30] + 0x00000014u;
|
|
/* 0291B238 */ rbrew_write_f32(cpu->mem, _t45, cpu->f[31]);
|
|
/* 0291B23C */ _t46 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291B23C */ rbrew_write_f32(cpu->mem, _t46, cpu->f[0]);
|
|
/* 0291B240 */ _t47 = cpu->r[30] + 0x00000004u;
|
|
/* 0291B240 */ rbrew_write_f32(cpu->mem, _t47, cpu->f[31]);
|
|
/* 0291B244 */ _t48 = cpu->r[1] + 0x00000010u;
|
|
/* 0291B244 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 0291B248 */ _t49 = cpu->r[30] + 0x00000008u;
|
|
/* 0291B248 */ rbrew_write_f32(cpu->mem, _t49, cpu->f[9]);
|
|
/* 0291B24C */ _t50 = cpu->r[1] + 0x00000014u;
|
|
/* 0291B24C */ rbrew_write_f32(cpu->mem, _t50, cpu->f[31]);
|
|
/* 0291B250 */ _t51 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0291B250 */ rbrew_write32(cpu->mem, _t51, cpu->r[31]);
|
|
/* 0291B254 */ _t52 = cpu->r[30] + 0x00000000u;
|
|
/* 0291B254 */ rbrew_write_f32(cpu->mem, _t52, cpu->f[30]);
|
|
/* 0291B258 */ _t53 = cpu->r[30] + 0x00000010u;
|
|
/* 0291B258 */ rbrew_write_f32(cpu->mem, _t53, cpu->f[13]);
|
|
/* 0291B25C */ Gambit_fn_0281BAE0(cpu);
|
|
L_0291B260: ; // 0x291b260
|
|
/* 0291B260 */ _t54 = cpu->r[1] + 0x00000024u;
|
|
/* 0291B260 */ cpu->r[31] = rbrew_read32(cpu->mem, _t54);
|
|
/* 0291B264 */ _t55 = cpu->r[1] + 0x00000040u;
|
|
/* 0291B264 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 0291B268 */ _t56 = cpu->r[1] + 0x00000030u;
|
|
/* 0291B268 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 0291B26C */ _t57 = cpu->r[1] + 0x00000038u;
|
|
/* 0291B26C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t57);
|
|
/* 0291B270 */ _t58 = cpu->r[1] + 0x00000028u;
|
|
/* 0291B270 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t58);
|
|
/* 0291B274 */ _t59 = cpu->r[1] + 0x00000020u;
|
|
/* 0291B274 */ cpu->r[30] = rbrew_read32(cpu->mem, _t59);
|
|
/* 0291B278 */ _t60 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291B278 */ _t61 = _t60 & 0x00000001u;
|
|
/* 0291B278 */ if (_t61) goto L_0291B27C; // else: addr-0 trap, fall-through
|
|
L_0291B27C: ; // 0x291b27c
|
|
/* 0291B27C */ _t62 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0291B27C */ cpu->r[0] = rbrew_read32(cpu->mem, _t62);
|
|
/* 0291B280 */ cpu->lr = cpu->r[0];
|
|
/* 0291B284 */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 0291B288 */ return;
|
|
}
|
|
|
|
// fn_0291B130 @ 0x291b130
|
|
void Gambit_fn_0291B130(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62;
|
|
|
|
L_0291B130: ; // 0x291b130
|
|
/* 0291B130 */ _t0 = cpu->r[1] + 0xFFFFFFB8u;
|
|
/* 0291B130 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291B130 */ cpu->r[1] = _t0;
|
|
/* 0291B134 */ _t1 = cpu->r[1] + 0x00000028u;
|
|
/* 0291B134 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[30]);
|
|
/* 0291B138 */ _t2 = cpu->r[1] + 0x00000038u;
|
|
/* 0291B138 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 0291B13C */ /* nop */
|
|
/* 0291B140 */ _t3 = cpu->r[1] + 0x00000030u;
|
|
/* 0291B140 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[30]);
|
|
/* 0291B144 */ /* nop */
|
|
/* 0291B148 */ _t4 = cpu->r[1] + 0x00000040u;
|
|
/* 0291B148 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[31]);
|
|
/* 0291B14C */ _t5 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0291B14C */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0291B150 */ _t6 = cpu->r[1] + 0x00000020u;
|
|
/* 0291B150 */ rbrew_write32(cpu->mem, _t6, cpu->r[30]);
|
|
/* 0291B154 */ _t7 = cpu->r[1] + 0x00000024u;
|
|
/* 0291B154 */ rbrew_write32(cpu->mem, _t7, cpu->r[31]);
|
|
/* 0291B158 */ cpu->r[31] = cpu->r[4];
|
|
/* 0291B15C */ _t8 = cpu->r[31] + 0x0000007Cu;
|
|
/* 0291B15C */ cpu->r[0] = rbrew_read8(cpu->mem, _t8);
|
|
/* 0291B160 */ _t9 = cpu->r[31] + 0x00000008u;
|
|
/* 0291B160 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0291B164 */ cpu->r[6] = 0x43300000u;
|
|
/* 0291B168 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], cpu->r[0]);
|
|
/* 0291B16C */ _t10 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0291B16C */ cpu->r[10] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0291B170 */ _t11 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291B170 */ _t12 = _t11 & 0x00000001u;
|
|
/* 0291B170 */ if (_t12) goto L_0291B174; else goto L_0291B178;
|
|
L_0291B174: ; // 0x291b174
|
|
/* 0291B174 */ cpu->r[0] = cpu->r[12];
|
|
L_0291B178: ; // 0x291b178
|
|
/* 0291B178 */ _t13 = cpu->r[1] + 0x00000018u;
|
|
/* 0291B178 */ rbrew_write32(cpu->mem, _t13, cpu->r[6]);
|
|
/* 0291B17C */ _t14 = cpu->r[31] + 0x0000007Du;
|
|
/* 0291B17C */ cpu->r[11] = rbrew_read8(cpu->mem, _t14);
|
|
/* 0291B180 */ cpu->r[7] = 0x10140000u;
|
|
/* 0291B184 */ _t15 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0291B184 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 0291B188 */ _t16 = cpu->r[1] + 0x00000018u;
|
|
/* 0291B188 */ cpu->f[12] = rbrew_read_f64(cpu->mem, _t16);
|
|
/* 0291B18C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], cpu->r[11]);
|
|
/* 0291B190 */ _t17 = cpu->r[7] + 0x00002158u;
|
|
/* 0291B190 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t17);
|
|
/* 0291B194 */ _t18 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291B194 */ _t19 = _t18 & 0x00000001u;
|
|
/* 0291B194 */ if (_t19) goto L_0291B198; else goto L_0291B19C;
|
|
L_0291B198: ; // 0x291b198
|
|
/* 0291B198 */ cpu->r[11] = cpu->r[10];
|
|
L_0291B19C: ; // 0x291b19c
|
|
/* 0291B19C */ _t20 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0291B19C */ rbrew_write32(cpu->mem, _t20, cpu->r[11]);
|
|
/* 0291B1A0 */ _t21 = cpu->r[1] + 0x00000018u;
|
|
/* 0291B1A0 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t21);
|
|
/* 0291B1A4 */ cpu->f[12] = cpu->f[12] - cpu->f[13];
|
|
/* 0291B1A8 */ cpu->f[8] = cpu->f[0] - cpu->f[13];
|
|
/* 0291B1AC */ cpu->f[30] = (double)(float)cpu->f[12];
|
|
/* 0291B1B0 */ cpu->r[30] = cpu->r[3];
|
|
/* 0291B1B4 */ cpu->f[31] = (double)(float)cpu->f[8];
|
|
/* 0291B1B8 */ Gambit_fn_028F0414(cpu);
|
|
/* 0291B1BC */ cpu->r[12] = 0x10140000u;
|
|
/* 0291B1C0 */ _t22 = cpu->r[12] + 0x00001FB4u;
|
|
/* 0291B1C0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 0291B1C4 */ cpu->r[0] = 0x00000000u;
|
|
/* 0291B1C8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[30]);
|
|
/* 0291B1CC */ _t23 = cpu->r[30] + 0x0000003Cu;
|
|
/* 0291B1CC */ rbrew_write32(cpu->mem, _t23, cpu->r[0]);
|
|
/* 0291B1D0 */ _t24 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291B1D0 */ _t25 = _t24 & 0x00000001u;
|
|
/* 0291B1D0 */ if (_t25) goto L_0291B1D4; else goto L_0291B21C;
|
|
L_0291B1D4: ; // 0x291b1d4
|
|
/* 0291B1D4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[31]);
|
|
/* 0291B1D8 */ _t26 = cpu->r[1] + 0x00000010u;
|
|
/* 0291B1D8 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[30]);
|
|
/* 0291B1DC */ _t27 = cpu->r[1] + 0x00000008u;
|
|
/* 0291B1DC */ rbrew_write_f32(cpu->mem, _t27, cpu->f[0]);
|
|
/* 0291B1E0 */ cpu->f[9] = cpu->f[0];
|
|
/* 0291B1E4 */ _t28 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291B1E4 */ _t29 = _t28 & 0x00000001u;
|
|
/* 0291B1E4 */ if (_t29) goto L_0291B230; else goto L_0291B1E8;
|
|
L_0291B1E8: ; // 0x291b1e8
|
|
/* 0291B1E8 */ _t30 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0291B1E8 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[31]);
|
|
/* 0291B1EC */ cpu->r[3] = cpu->r[30];
|
|
/* 0291B1F0 */ _t31 = cpu->r[30] + 0x00000014u;
|
|
/* 0291B1F0 */ rbrew_write_f32(cpu->mem, _t31, cpu->f[0]);
|
|
/* 0291B1F4 */ _t32 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291B1F4 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[31]);
|
|
/* 0291B1F8 */ _t33 = cpu->r[30] + 0x00000004u;
|
|
/* 0291B1F8 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[31]);
|
|
/* 0291B1FC */ _t34 = cpu->r[1] + 0x00000010u;
|
|
/* 0291B1FC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 0291B200 */ _t35 = cpu->r[30] + 0x00000008u;
|
|
/* 0291B200 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[9]);
|
|
/* 0291B204 */ _t36 = cpu->r[1] + 0x00000014u;
|
|
/* 0291B204 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[0]);
|
|
/* 0291B208 */ _t37 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0291B208 */ rbrew_write32(cpu->mem, _t37, cpu->r[31]);
|
|
/* 0291B20C */ _t38 = cpu->r[30] + 0x00000000u;
|
|
/* 0291B20C */ rbrew_write_f32(cpu->mem, _t38, cpu->f[30]);
|
|
/* 0291B210 */ _t39 = cpu->r[30] + 0x00000010u;
|
|
/* 0291B210 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[13]);
|
|
/* 0291B214 */ Gambit_fn_0281BAE0(cpu);
|
|
/* 0291B218 */ goto L_0291B260;
|
|
L_0291B21C: ; // 0x291b21c
|
|
/* 0291B21C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[31]);
|
|
/* 0291B220 */ _t40 = cpu->r[1] + 0x00000010u;
|
|
/* 0291B220 */ rbrew_write_f32(cpu->mem, _t40, cpu->f[0]);
|
|
/* 0291B224 */ _t41 = cpu->r[1] + 0x00000008u;
|
|
/* 0291B224 */ rbrew_write_f32(cpu->mem, _t41, cpu->f[30]);
|
|
/* 0291B228 */ cpu->f[9] = cpu->f[30];
|
|
/* 0291B22C */ _t42 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291B22C */ _t43 = _t42 & 0x00000001u;
|
|
/* 0291B22C */ if (_t43) goto L_0291B230; else goto L_0291B1E8;
|
|
L_0291B230: ; // 0x291b230
|
|
/* 0291B230 */ _t44 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0291B230 */ rbrew_write_f32(cpu->mem, _t44, cpu->f[0]);
|
|
/* 0291B234 */ cpu->r[3] = cpu->r[30];
|
|
/* 0291B238 */ _t45 = cpu->r[30] + 0x00000014u;
|
|
/* 0291B238 */ rbrew_write_f32(cpu->mem, _t45, cpu->f[31]);
|
|
/* 0291B23C */ _t46 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291B23C */ rbrew_write_f32(cpu->mem, _t46, cpu->f[0]);
|
|
/* 0291B240 */ _t47 = cpu->r[30] + 0x00000004u;
|
|
/* 0291B240 */ rbrew_write_f32(cpu->mem, _t47, cpu->f[31]);
|
|
/* 0291B244 */ _t48 = cpu->r[1] + 0x00000010u;
|
|
/* 0291B244 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 0291B248 */ _t49 = cpu->r[30] + 0x00000008u;
|
|
/* 0291B248 */ rbrew_write_f32(cpu->mem, _t49, cpu->f[9]);
|
|
/* 0291B24C */ _t50 = cpu->r[1] + 0x00000014u;
|
|
/* 0291B24C */ rbrew_write_f32(cpu->mem, _t50, cpu->f[31]);
|
|
/* 0291B250 */ _t51 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0291B250 */ rbrew_write32(cpu->mem, _t51, cpu->r[31]);
|
|
/* 0291B254 */ _t52 = cpu->r[30] + 0x00000000u;
|
|
/* 0291B254 */ rbrew_write_f32(cpu->mem, _t52, cpu->f[30]);
|
|
/* 0291B258 */ _t53 = cpu->r[30] + 0x00000010u;
|
|
/* 0291B258 */ rbrew_write_f32(cpu->mem, _t53, cpu->f[13]);
|
|
/* 0291B25C */ Gambit_fn_0281BAE0(cpu);
|
|
L_0291B260: ; // 0x291b260
|
|
/* 0291B260 */ _t54 = cpu->r[1] + 0x00000024u;
|
|
/* 0291B260 */ cpu->r[31] = rbrew_read32(cpu->mem, _t54);
|
|
/* 0291B264 */ _t55 = cpu->r[1] + 0x00000040u;
|
|
/* 0291B264 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 0291B268 */ _t56 = cpu->r[1] + 0x00000030u;
|
|
/* 0291B268 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 0291B26C */ _t57 = cpu->r[1] + 0x00000038u;
|
|
/* 0291B26C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t57);
|
|
/* 0291B270 */ _t58 = cpu->r[1] + 0x00000028u;
|
|
/* 0291B270 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t58);
|
|
/* 0291B274 */ _t59 = cpu->r[1] + 0x00000020u;
|
|
/* 0291B274 */ cpu->r[30] = rbrew_read32(cpu->mem, _t59);
|
|
/* 0291B278 */ _t60 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291B278 */ _t61 = _t60 & 0x00000001u;
|
|
/* 0291B278 */ if (_t61) goto L_0291B27C; // else: addr-0 trap, fall-through
|
|
L_0291B27C: ; // 0x291b27c
|
|
/* 0291B27C */ _t62 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0291B27C */ cpu->r[0] = rbrew_read32(cpu->mem, _t62);
|
|
/* 0291B280 */ cpu->lr = cpu->r[0];
|
|
/* 0291B284 */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 0291B288 */ return;
|
|
}
|
|
|
|
// fn_0291B28C @ 0x291b28c
|
|
void Gambit_fn_0291B28C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _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;
|
|
|
|
L_0291B28C: ; // 0x291b28c
|
|
/* 0291B28C */ _t0 = cpu->r[1] + 0xFFFFFE30u;
|
|
/* 0291B28C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291B28C */ cpu->r[1] = _t0;
|
|
/* 0291B290 */ /* nop */
|
|
/* 0291B294 */ _t1 = cpu->r[1] + 0x000001B0u;
|
|
/* 0291B294 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[30]);
|
|
/* 0291B298 */ _t2 = cpu->r[1] + 0x000001C0u;
|
|
/* 0291B298 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 0291B29C */ /* nop */
|
|
/* 0291B2A0 */ /* nop */
|
|
/* 0291B2A4 */ _t3 = cpu->r[1] + 0x000001B8u;
|
|
/* 0291B2A4 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[30]);
|
|
/* 0291B2A8 */ _t4 = cpu->r[1] + 0x000001C8u;
|
|
/* 0291B2A8 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[31]);
|
|
/* 0291B2AC */ cpu->r[0] = cpu->lr;
|
|
/* 0291B2B0 */ _t5 = cpu->r[1] + 0x000001D4u;
|
|
/* 0291B2B0 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0291B2B4 */ cpu->r[11] = 0x101D0000u;
|
|
/* 0291B2B8 */ _t6 = cpu->r[11] + 0xFFFFA330u;
|
|
/* 0291B2B8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0291B2BC */ cpu->r[27] = cpu->r[5];
|
|
/* 0291B2C0 */ _t7 = cpu->r[3] + 0x00000004u;
|
|
/* 0291B2C0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0291B2C4 */ cpu->r[25] = cpu->r[4];
|
|
/* 0291B2C8 */ _t8 = cpu->r[11] + 0x00000014u;
|
|
/* 0291B2C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0291B2CC */ cpu->r[28] = cpu->r[6];
|
|
/* 0291B2D0 */ cpu->r[26] = cpu->r[5] + 0x0000030Cu;
|
|
/* 0291B2D4 */ cpu->r[31] = cpu->r[9];
|
|
/* 0291B2D8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000056u);
|
|
/* 0291B2DC */ cpu->r[12] = 0x00000000u;
|
|
/* 0291B2E0 */ _t9 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291B2E0 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0291B2E0 */ if (_t10) goto L_0291B2E4; else goto L_0291B2EC;
|
|
L_0291B2E4: ; // 0x291b2e4
|
|
/* 0291B2E4 */ _t11 = cpu->r[11] + 0x0000001Cu;
|
|
/* 0291B2E4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0291B2E8 */ _t12 = cpu->r[11] + 0x00000158u;
|
|
/* 0291B2E8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
L_0291B2EC: ; // 0x291b2ec
|
|
/* 0291B2EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0291B2F0 */ cpu->r[6] = 0x00000000u;
|
|
/* 0291B2F4 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291B2F4 */ _t14 = _t13 & 0x00000001u;
|
|
/* 0291B2F4 */ if (_t14) goto L_0291B2FC; else goto L_0291B2F8;
|
|
L_0291B2F8: ; // 0x291b2f8
|
|
/* 0291B2F8 */ cpu->r[6] = 0x00000004u;
|
|
L_0291B2FC: ; // 0x291b2fc
|
|
/* 0291B2FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0291B300 */ cpu->r[7] = 0x00000000u;
|
|
/* 0291B304 */ _t15 = cpu->r[12] + 0x00000078u;
|
|
/* 0291B304 */ cpu->r[12] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0291B308 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291B308 */ _t17 = _t16 & 0x00000001u;
|
|
/* 0291B308 */ if (_t17) goto L_0291B310; else goto L_0291B30C;
|
|
L_0291B30C: ; // 0x291b30c
|
|
/* 0291B30C */ cpu->r[7] = 0x00000002u;
|
|
L_0291B310: ; // 0x291b310
|
|
/* 0291B310 */ cpu->r[11] = cpu->r[6] | cpu->r[7];
|
|
/* 0291B310 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0291B314 */ cpu->r[9] = cpu->r[12] + 0x00000008u;
|
|
/* 0291B318 */ _t18 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291B318 */ _t19 = _t18 & 0x00000001u;
|
|
/* 0291B318 */ if (_t19) goto L_0291B3B0; else goto L_0291B31C;
|
|
L_0291B31C: ; // 0x291b31c
|
|
/* 0291B31C */ _t20 = cpu->r[9] + 0x00000000u;
|
|
/* 0291B31C */ cpu->r[29] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0291B320 */ _t21 = cpu->r[27] + 0x00000008u;
|
|
/* 0291B320 */ cpu->r[9] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0291B324 */ _t22 = cpu->r[27] + 0x0000007Cu;
|
|
/* 0291B324 */ cpu->r[0] = rbrew_read8(cpu->mem, _t22);
|
|
/* 0291B328 */ /* nop */
|
|
/* 0291B32C */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 0291B330 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], cpu->r[30]);
|
|
/* 0291B334 */ _t23 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291B334 */ _t24 = _t23 & 0x00000001u;
|
|
/* 0291B334 */ if (_t24) goto L_0291B338; else goto L_0291B33C;
|
|
L_0291B338: ; // 0x291b338
|
|
/* 0291B338 */ cpu->r[30] = cpu->r[0];
|
|
L_0291B33C: ; // 0x291b33c
|
|
/* 0291B33C */ Gambit_fn_028F18E8(cpu);
|
|
/* 0291B340 */ cpu->r[4] = cpu->r[25];
|
|
/* 0291B344 */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 0291B348 */ Gambit_fn_0291B0F0(cpu);
|
|
/* 0291B34C */ cpu->r[8] = 0x43300000u;
|
|
/* 0291B350 */ _t25 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0291B350 */ rbrew_write32(cpu->mem, _t25, cpu->r[30]);
|
|
/* 0291B354 */ cpu->r[4] = 0x10140000u;
|
|
/* 0291B358 */ _t26 = cpu->r[1] + 0x00000018u;
|
|
/* 0291B358 */ rbrew_write32(cpu->mem, _t26, cpu->r[8]);
|
|
/* 0291B35C */ cpu->r[23] = 0x00000006u;
|
|
/* 0291B360 */ _t27 = cpu->r[1] + 0x00000018u;
|
|
/* 0291B360 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t27);
|
|
/* 0291B364 */ cpu->r[24] = cpu->r[1] + 0x00000014u;
|
|
/* 0291B368 */ cpu->r[25] = cpu->r[1] + 0x00000010u;
|
|
/* 0291B36C */ _t28 = cpu->r[4] + 0x00002158u;
|
|
/* 0291B36C */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t28);
|
|
/* 0291B370 */ cpu->r[18] = cpu->r[1] + 0x00000008u;
|
|
/* 0291B374 */ cpu->r[19] = 0x101D0000u;
|
|
/* 0291B378 */ _t29 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0291B378 */ rbrew_write32(cpu->mem, _t29, cpu->r[28]);
|
|
/* 0291B37C */ cpu->f[8] = cpu->f[13] - cpu->f[0];
|
|
/* 0291B380 */ _t30 = cpu->r[1] + 0x00000018u;
|
|
/* 0291B380 */ cpu->f[10] = rbrew_read_f64(cpu->mem, _t30);
|
|
/* 0291B384 */ cpu->r[19] = cpu->r[19] + 0xFFFFA52Cu;
|
|
/* 0291B388 */ cpu->r[20] = 0x101D0000u;
|
|
/* 0291B38C */ cpu->r[17] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291B390 */ cpu->f[12] = cpu->f[10] - cpu->f[0];
|
|
/* 0291B394 */ cpu->r[20] = cpu->r[20] + 0xFFFFA544u;
|
|
/* 0291B398 */ cpu->r[30] = 0x00000000u;
|
|
/* 0291B39C */ cpu->f[30] = (double)(float)cpu->f[8];
|
|
/* 0291B3A0 */ cpu->r[22] = 0x00000001u;
|
|
/* 0291B3A4 */ cpu->r[21] = cpu->r[30];
|
|
/* 0291B3A8 */ cpu->f[31] = (double)(float)cpu->f[12];
|
|
/* 0291B3AC */ goto L_0291B45C;
|
|
L_0291B3B0: ; // 0x291b3b0
|
|
/* 0291B3B0 */ _t31 = cpu->r[9] + 0x00000004u;
|
|
/* 0291B3B0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0291B3B4 */ cpu->r[4] = cpu->r[11] + 0xFFFFFFFFu;
|
|
/* 0291B3B8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[5]);
|
|
/* 0291B3BC */ _t32 = cpu->r[9] + 0x00000008u;
|
|
/* 0291B3BC */ cpu->r[29] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0291B3C0 */ _t33 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291B3C0 */ _t34 = _t33 & 0x00000001u;
|
|
/* 0291B3C0 */ if (_t34) goto L_0291B3C4; else goto L_0291B3D0;
|
|
L_0291B3C4: ; // 0x291b3c4
|
|
/* 0291B3C4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[11], 0x00000007u, 0x00000000u, 0x00000018u);
|
|
/* 0291B3C8 */ cpu->r[7] = cpu->r[29] + cpu->r[0];
|
|
/* 0291B3CC */ cpu->r[29] = cpu->r[7] + 0xFFFFFF80u;
|
|
L_0291B3D0: ; // 0x291b3d0
|
|
/* 0291B3D0 */ _t35 = cpu->r[27] + 0x00000008u;
|
|
/* 0291B3D0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t35);
|
|
/* 0291B3D4 */ _t36 = cpu->r[27] + 0x0000007Cu;
|
|
/* 0291B3D4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t36);
|
|
/* 0291B3D8 */ /* nop */
|
|
/* 0291B3DC */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 0291B3E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], cpu->r[30]);
|
|
/* 0291B3E4 */ _t37 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291B3E4 */ _t38 = _t37 & 0x00000001u;
|
|
/* 0291B3E4 */ if (_t38) goto L_0291B3E8; else goto L_0291B3EC;
|
|
L_0291B3E8: ; // 0x291b3e8
|
|
/* 0291B3E8 */ cpu->r[30] = cpu->r[0];
|
|
L_0291B3EC: ; // 0x291b3ec
|
|
/* 0291B3EC */ Gambit_fn_028F18E8(cpu);
|
|
/* 0291B3F0 */ cpu->r[4] = cpu->r[25];
|
|
/* 0291B3F4 */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 0291B3F8 */ Gambit_fn_0291B0F0(cpu);
|
|
/* 0291B3FC */ cpu->r[8] = 0x43300000u;
|
|
/* 0291B400 */ _t39 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0291B400 */ rbrew_write32(cpu->mem, _t39, cpu->r[30]);
|
|
/* 0291B404 */ cpu->r[4] = 0x10140000u;
|
|
/* 0291B408 */ _t40 = cpu->r[1] + 0x00000018u;
|
|
/* 0291B408 */ rbrew_write32(cpu->mem, _t40, cpu->r[8]);
|
|
/* 0291B40C */ _t41 = cpu->r[1] + 0x00000018u;
|
|
/* 0291B40C */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t41);
|
|
/* 0291B410 */ cpu->r[24] = cpu->r[1] + 0x00000014u;
|
|
/* 0291B414 */ cpu->r[19] = 0x101D0000u;
|
|
/* 0291B418 */ _t42 = cpu->r[4] + 0x00002158u;
|
|
/* 0291B418 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t42);
|
|
/* 0291B41C */ cpu->r[23] = 0x00000006u;
|
|
/* 0291B420 */ cpu->r[19] = cpu->r[19] + 0xFFFFA52Cu;
|
|
/* 0291B424 */ _t43 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0291B424 */ rbrew_write32(cpu->mem, _t43, cpu->r[28]);
|
|
/* 0291B428 */ cpu->f[8] = cpu->f[13] - cpu->f[0];
|
|
/* 0291B42C */ _t44 = cpu->r[1] + 0x00000018u;
|
|
/* 0291B42C */ cpu->f[10] = rbrew_read_f64(cpu->mem, _t44);
|
|
/* 0291B430 */ cpu->r[18] = cpu->r[1] + 0x00000008u;
|
|
/* 0291B434 */ cpu->r[20] = 0x101D0000u;
|
|
/* 0291B438 */ cpu->r[17] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291B43C */ cpu->f[12] = cpu->f[10] - cpu->f[0];
|
|
/* 0291B440 */ cpu->r[30] = 0x00000000u;
|
|
/* 0291B444 */ cpu->r[25] = cpu->r[1] + 0x00000010u;
|
|
/* 0291B448 */ cpu->f[30] = (double)(float)cpu->f[8];
|
|
/* 0291B44C */ cpu->r[20] = cpu->r[20] + 0xFFFFA544u;
|
|
/* 0291B450 */ cpu->r[21] = cpu->r[30];
|
|
/* 0291B454 */ cpu->f[31] = (double)(float)cpu->f[12];
|
|
/* 0291B458 */ cpu->r[22] = 0x00000001u;
|
|
L_0291B45C: ; // 0x291b45c
|
|
/* 0291B45C */ _t45 = cpu->r[1] + 0x000000C4u;
|
|
/* 0291B45C */ cpu->r[8] = rbrew_read32(cpu->mem, _t45);
|
|
/* 0291B460 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[30]);
|
|
/* 0291B464 */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291B464 */ _t47 = _t46 & 0x00000001u;
|
|
/* 0291B464 */ if (_t47) goto L_0291B470; else goto L_0291B468;
|
|
L_0291B468: ; // 0x291b468
|
|
/* 0291B468 */ _t48 = cpu->r[1] + 0x000000C4u;
|
|
/* 0291B468 */ rbrew_write32(cpu->mem, _t48, cpu->r[30]);
|
|
/* 0291B46C */ _t49 = cpu->r[1] + 0x000000BCu;
|
|
/* 0291B46C */ rbrew_write8(cpu->mem, _t49, (uint8_t)cpu->r[22]);
|
|
L_0291B470: ; // 0x291b470
|
|
/* 0291B470 */ cpu->r[3] = cpu->r[26];
|
|
/* 0291B474 */ cpu->r[4] = cpu->r[1] + 0x00000038u;
|
|
/* 0291B478 */ Gambit_fn_0291B12C(cpu);
|
|
/* 0291B47C */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 0291B480 */ cpu->r[4] = cpu->r[26];
|
|
/* 0291B484 */ Gambit_fn_0281D990(cpu);
|
|
/* 0291B488 */ cpu->r[4] = cpu->r[26];
|
|
/* 0291B48C */ Gambit_fn_0281DCCC(cpu);
|
|
/* 0291B490 */ cpu->r[5] = 0x00000001u;
|
|
/* 0291B494 */ cpu->r[4] = cpu->r[31];
|
|
/* 0291B498 */ cpu->r[3] = cpu->r[29];
|
|
/* 0291B49C */ Gambit_fn_028F40F4(cpu);
|
|
/* 0291B4A0 */ cpu->r[31] = cpu->r[3];
|
|
/* 0291B4A4 */ cpu->r[3] = cpu->r[27];
|
|
/* 0291B4A8 */ Gambit_fn_028F714C(cpu);
|
|
/* 0291B4AC */ _t50 = cpu->r[29] + 0x00000038u;
|
|
/* 0291B4AC */ cpu->r[4] = rbrew_read32(cpu->mem, _t50);
|
|
/* 0291B4B0 */ cpu->r[6] = 0x00000000u;
|
|
/* 0291B4B4 */ cpu->r[5] = 0xFFFFFFFFu;
|
|
/* 0291B4B8 */ cpu->r[3] = cpu->r[27];
|
|
/* 0291B4BC */ Gambit_fn_028FA6D4(cpu);
|
|
/* 0291B4C0 */ _t51 = cpu->r[29] + 0x00000028u;
|
|
/* 0291B4C0 */ cpu->r[28] = rbrew_read32(cpu->mem, _t51);
|
|
/* 0291B4C4 */ _t52 = cpu->r[1] + 0x00000008u;
|
|
/* 0291B4C4 */ rbrew_write32(cpu->mem, _t52, cpu->r[21]);
|
|
/* 0291B4C8 */ _t53 = cpu->r[28] + 0x00000008u;
|
|
/* 0291B4C8 */ cpu->r[8] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t53);
|
|
/* 0291B4CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0xFFFFFFFFu);
|
|
/* 0291B4D0 */ _t54 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291B4D0 */ _t55 = _t54 & 0x00000001u;
|
|
/* 0291B4D0 */ if (_t55) goto L_0291B4E4; else goto L_0291B4D4;
|
|
L_0291B4D4: ; // 0x291b4d4
|
|
/* 0291B4D4 */ _t56 = cpu->r[28] + 0x00000008u;
|
|
/* 0291B4D4 */ cpu->r[3] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t56);
|
|
/* 0291B4D8 */ cpu->r[5] = cpu->r[18];
|
|
/* 0291B4DC */ cpu->r[4] = 0x00000004u;
|
|
/* 0291B4E0 */ rbrew_dispatch(cpu, 0x02d062a8u);
|
|
L_0291B4E4: ; // 0x291b4e4
|
|
/* 0291B4E4 */ _t57 = cpu->r[28] + 0x0000000Au;
|
|
/* 0291B4E4 */ cpu->r[3] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t57);
|
|
/* 0291B4E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0xFFFFFFFFu);
|
|
/* 0291B4EC */ _t58 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291B4EC */ _t59 = _t58 & 0x00000001u;
|
|
/* 0291B4EC */ if (_t59) goto L_0291B4FC; else goto L_0291B4F0;
|
|
L_0291B4F0: ; // 0x291b4f0
|
|
/* 0291B4F0 */ cpu->r[4] = 0x00000004u;
|
|
/* 0291B4F4 */ cpu->r[5] = cpu->r[18];
|
|
/* 0291B4F8 */ rbrew_dispatch(cpu, 0x02d06160u);
|
|
L_0291B4FC: ; // 0x291b4fc
|
|
/* 0291B4FC */ _t60 = cpu->r[29] + 0x00000024u;
|
|
/* 0291B4FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t60);
|
|
/* 0291B500 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000002u);
|
|
/* 0291B504 */ _t61 = cpu->r[29] + 0x00000028u;
|
|
/* 0291B504 */ cpu->r[28] = rbrew_read32(cpu->mem, _t61);
|
|
/* 0291B508 */ _t62 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291B508 */ _t63 = _t62 & 0x00000001u;
|
|
/* 0291B508 */ if (_t63) goto L_0291B50C; else goto L_0291B510;
|
|
L_0291B50C: ; // 0x291b50c
|
|
/* 0291B50C */ cpu->r[28] = cpu->r[28] + 0x00000020u;
|
|
L_0291B510: ; // 0x291b510
|
|
/* 0291B510 */ _t64 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291B510 */ rbrew_write32(cpu->mem, _t64, cpu->r[30]);
|
|
/* 0291B514 */ _t65 = cpu->r[28] + 0x00000008u;
|
|
/* 0291B514 */ cpu->r[4] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t65);
|
|
/* 0291B518 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0xFFFFFFFFu);
|
|
/* 0291B51C */ _t66 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291B51C */ _t67 = _t66 & 0x00000001u;
|
|
/* 0291B51C */ if (_t67) goto L_0291B530; else goto L_0291B520;
|
|
L_0291B520: ; // 0x291b520
|
|
/* 0291B520 */ _t68 = cpu->r[28] + 0x00000008u;
|
|
/* 0291B520 */ cpu->r[3] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t68);
|
|
/* 0291B524 */ cpu->r[5] = cpu->r[17];
|
|
/* 0291B528 */ cpu->r[4] = 0x00000004u;
|
|
/* 0291B52C */ rbrew_dispatch(cpu, 0x02d062a8u);
|
|
L_0291B530: ; // 0x291b530
|
|
/* 0291B530 */ _t69 = cpu->r[28] + 0x0000000Au;
|
|
/* 0291B530 */ cpu->r[3] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t69);
|
|
/* 0291B534 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0xFFFFFFFFu);
|
|
/* 0291B538 */ _t70 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291B538 */ _t71 = _t70 & 0x00000001u;
|
|
/* 0291B538 */ if (_t71) goto L_0291B548; else goto L_0291B53C;
|
|
L_0291B53C: ; // 0x291b53c
|
|
/* 0291B53C */ cpu->r[4] = 0x00000004u;
|
|
/* 0291B540 */ cpu->r[5] = cpu->r[17];
|
|
/* 0291B544 */ rbrew_dispatch(cpu, 0x02d06160u);
|
|
L_0291B548: ; // 0x291b548
|
|
/* 0291B548 */ _t72 = cpu->r[29] + 0x00000024u;
|
|
/* 0291B548 */ cpu->r[7] = rbrew_read32(cpu->mem, _t72);
|
|
/* 0291B54C */ cpu->f[9] = cpu->f[31];
|
|
/* 0291B550 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], 0x00000001u);
|
|
/* 0291B554 */ _t73 = cpu->r[29] + 0x00000028u;
|
|
/* 0291B554 */ cpu->r[28] = rbrew_read32(cpu->mem, _t73);
|
|
/* 0291B558 */ _t74 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291B558 */ _t75 = _t74 & 0x00000001u;
|
|
/* 0291B558 */ if (_t75) goto L_0291B55C; else goto L_0291B560;
|
|
L_0291B55C: ; // 0x291b55c
|
|
/* 0291B55C */ cpu->r[28] = cpu->r[28] + 0x00000010u;
|
|
L_0291B560: ; // 0x291b560
|
|
/* 0291B560 */ _t76 = cpu->r[1] + 0x00000010u;
|
|
/* 0291B560 */ rbrew_write_f32(cpu->mem, _t76, cpu->f[9]);
|
|
/* 0291B564 */ _t77 = cpu->r[28] + 0x00000008u;
|
|
/* 0291B564 */ cpu->r[9] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t77);
|
|
/* 0291B568 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0xFFFFFFFFu);
|
|
/* 0291B56C */ _t78 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291B56C */ _t79 = _t78 & 0x00000001u;
|
|
/* 0291B56C */ if (_t79) goto L_0291B580; else goto L_0291B570;
|
|
L_0291B570: ; // 0x291b570
|
|
/* 0291B570 */ _t80 = cpu->r[28] + 0x00000008u;
|
|
/* 0291B570 */ cpu->r[3] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t80);
|
|
/* 0291B574 */ cpu->r[5] = cpu->r[25];
|
|
/* 0291B578 */ cpu->r[4] = 0x00000004u;
|
|
/* 0291B57C */ rbrew_dispatch(cpu, 0x02d062a8u);
|
|
L_0291B580: ; // 0x291b580
|
|
/* 0291B580 */ _t81 = cpu->r[28] + 0x0000000Au;
|
|
/* 0291B580 */ cpu->r[3] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t81);
|
|
/* 0291B584 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0xFFFFFFFFu);
|
|
/* 0291B588 */ _t82 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291B588 */ _t83 = _t82 & 0x00000001u;
|
|
/* 0291B588 */ if (_t83) goto L_0291B598; else goto L_0291B58C;
|
|
L_0291B58C: ; // 0x291b58c
|
|
/* 0291B58C */ cpu->r[4] = 0x00000004u;
|
|
/* 0291B590 */ cpu->r[5] = cpu->r[25];
|
|
/* 0291B594 */ rbrew_dispatch(cpu, 0x02d06160u);
|
|
L_0291B598: ; // 0x291b598
|
|
/* 0291B598 */ _t84 = cpu->r[29] + 0x00000024u;
|
|
/* 0291B598 */ cpu->r[10] = rbrew_read32(cpu->mem, _t84);
|
|
/* 0291B59C */ cpu->f[11] = cpu->f[30];
|
|
/* 0291B5A0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], 0x00000004u);
|
|
/* 0291B5A4 */ _t85 = cpu->r[29] + 0x00000028u;
|
|
/* 0291B5A4 */ cpu->r[28] = rbrew_read32(cpu->mem, _t85);
|
|
/* 0291B5A8 */ _t86 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291B5A8 */ _t87 = _t86 & 0x00000001u;
|
|
/* 0291B5A8 */ if (_t87) goto L_0291B5AC; else goto L_0291B5B0;
|
|
L_0291B5AC: ; // 0x291b5ac
|
|
/* 0291B5AC */ cpu->r[28] = cpu->r[28] + 0x00000040u;
|
|
L_0291B5B0: ; // 0x291b5b0
|
|
/* 0291B5B0 */ _t88 = cpu->r[1] + 0x00000014u;
|
|
/* 0291B5B0 */ rbrew_write_f32(cpu->mem, _t88, cpu->f[11]);
|
|
/* 0291B5B4 */ _t89 = cpu->r[28] + 0x00000008u;
|
|
/* 0291B5B4 */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t89);
|
|
/* 0291B5B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 0291B5BC */ _t90 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291B5BC */ _t91 = _t90 & 0x00000001u;
|
|
/* 0291B5BC */ if (_t91) goto L_0291B5D0; else goto L_0291B5C0;
|
|
L_0291B5C0: ; // 0x291b5c0
|
|
/* 0291B5C0 */ _t92 = cpu->r[28] + 0x00000008u;
|
|
/* 0291B5C0 */ cpu->r[3] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t92);
|
|
/* 0291B5C4 */ cpu->r[5] = cpu->r[24];
|
|
/* 0291B5C8 */ cpu->r[4] = 0x00000004u;
|
|
/* 0291B5CC */ rbrew_dispatch(cpu, 0x02d062a8u);
|
|
L_0291B5D0: ; // 0x291b5d0
|
|
/* 0291B5D0 */ _t93 = cpu->r[28] + 0x0000000Au;
|
|
/* 0291B5D0 */ cpu->r[3] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t93);
|
|
/* 0291B5D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0xFFFFFFFFu);
|
|
/* 0291B5D8 */ _t94 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291B5D8 */ _t95 = _t94 & 0x00000001u;
|
|
/* 0291B5D8 */ if (_t95) goto L_0291B5E8; else goto L_0291B5DC;
|
|
L_0291B5DC: ; // 0x291b5dc
|
|
/* 0291B5DC */ cpu->r[4] = 0x00000004u;
|
|
/* 0291B5E0 */ cpu->r[5] = cpu->r[24];
|
|
/* 0291B5E4 */ rbrew_dispatch(cpu, 0x02d06160u);
|
|
L_0291B5E8: ; // 0x291b5e8
|
|
/* 0291B5E8 */ _t96 = cpu->r[20] + 0x00000000u;
|
|
/* 0291B5E8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t96);
|
|
/* 0291B5EC */ cpu->r[3] = cpu->r[12] + 0x000006BCu;
|
|
/* 0291B5F0 */ Gambit_fn_028FB628(cpu);
|
|
/* 0291B5F4 */ _t97 = cpu->r[19] + 0x00000000u;
|
|
/* 0291B5F4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t97);
|
|
/* 0291B5F8 */ _t98 = cpu->r[5] + 0x0000018Cu;
|
|
/* 0291B5F8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t98);
|
|
/* 0291B5FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 0291B600 */ cpu->r[6] = cpu->r[5] + 0x00000180u;
|
|
/* 0291B604 */ _t99 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291B604 */ _t100 = _t99 & 0x00000001u;
|
|
/* 0291B604 */ if (_t100) goto L_0291B620; else goto L_0291B608;
|
|
L_0291B608: ; // 0x291b608
|
|
/* 0291B608 */ _t101 = cpu->r[6] + 0x00000000u;
|
|
/* 0291B608 */ cpu->r[5] = rbrew_read32(cpu->mem, _t101);
|
|
/* 0291B60C */ cpu->r[7] = 0x00000000u;
|
|
/* 0291B610 */ _t102 = cpu->r[6] + 0x00000004u;
|
|
/* 0291B610 */ cpu->r[3] = rbrew_read32(cpu->mem, _t102);
|
|
/* 0291B614 */ _t103 = cpu->r[6] + 0x00000008u;
|
|
/* 0291B614 */ cpu->r[6] = rbrew_read32(cpu->mem, _t103);
|
|
/* 0291B618 */ cpu->r[8] = 0x00000001u;
|
|
/* 0291B61C */ rbrew_dispatch(cpu, 0x02d05930u);
|
|
L_0291B620: ; // 0x291b620
|
|
/* 0291B620 */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 0291B624 */ Gambit_fn_028F1A48(cpu);
|
|
/* 0291B628 */ cpu->r[23] = cpu->r[23] + 0xFFFFFFFFu;
|
|
/* 0291B628 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u);
|
|
/* 0291B62C */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 0291B630 */ _t104 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291B630 */ _t105 = _t104 & 0x00000001u;
|
|
/* 0291B630 */ if (_t105) goto L_0291B634; else goto L_0291B45C;
|
|
L_0291B634: ; // 0x291b634
|
|
/* 0291B634 */ cpu->r[3] = cpu->r[31];
|
|
/* 0291B638 */ /* nop */
|
|
/* 0291B63C */ _t106 = cpu->r[1] + 0x000001B8u;
|
|
/* 0291B63C */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t106);
|
|
/* 0291B640 */ _t107 = cpu->r[1] + 0x000001C8u;
|
|
/* 0291B640 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t107);
|
|
/* 0291B644 */ _t108 = cpu->r[1] + 0x000001B0u;
|
|
/* 0291B644 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t108);
|
|
/* 0291B648 */ _t109 = cpu->r[1] + 0x000001C0u;
|
|
/* 0291B648 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t109);
|
|
/* 0291B64C */ _t110 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291B64C */ _t111 = _t110 & 0x00000001u;
|
|
/* 0291B64C */ if (_t111) goto L_0291B650; // else: addr-0 trap, fall-through
|
|
L_0291B650: ; // 0x291b650
|
|
/* 0291B650 */ _t112 = cpu->r[1] + 0x000001D4u;
|
|
/* 0291B650 */ cpu->r[0] = rbrew_read32(cpu->mem, _t112);
|
|
/* 0291B654 */ cpu->lr = cpu->r[0];
|
|
/* 0291B658 */ cpu->r[1] = cpu->r[1] + 0x000001D0u;
|
|
/* 0291B65C */ return;
|
|
}
|
|
|
|
// fn_0291B660 @ 0x291b660
|
|
void Gambit_fn_0291B660(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _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;
|
|
|
|
L_0291B660: ; // 0x291b660
|
|
/* 0291B660 */ _t0 = cpu->r[1] + 0xFFFFFE38u;
|
|
/* 0291B660 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291B660 */ cpu->r[1] = _t0;
|
|
/* 0291B664 */ /* nop */
|
|
/* 0291B668 */ cpu->r[0] = cpu->lr;
|
|
/* 0291B66C */ _t1 = cpu->r[1] + 0x000001CCu;
|
|
/* 0291B66C */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0291B670 */ cpu->r[27] = cpu->r[4];
|
|
/* 0291B674 */ cpu->r[22] = 0x101D0000u;
|
|
/* 0291B678 */ cpu->r[30] = cpu->r[6];
|
|
/* 0291B67C */ cpu->r[20] = cpu->r[5];
|
|
/* 0291B680 */ _t2 = cpu->r[20] + 0x0000007Cu;
|
|
/* 0291B680 */ cpu->r[21] = rbrew_read8(cpu->mem, _t2);
|
|
/* 0291B684 */ cpu->r[28] = cpu->r[7];
|
|
/* 0291B688 */ _t3 = cpu->r[20] + 0x00000008u;
|
|
/* 0291B688 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0291B68C */ cpu->r[7] = 0x00000000u;
|
|
/* 0291B690 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0291B690 */ cpu->r[8] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0291B694 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], cpu->r[21]);
|
|
/* 0291B698 */ _t5 = cpu->r[22] + 0xFFFFA330u;
|
|
/* 0291B698 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0291B698 */ cpu->r[22] = _t5;
|
|
/* 0291B69C */ _t6 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291B69C */ _t7 = _t6 & 0x00000001u;
|
|
/* 0291B69C */ if (_t7) goto L_0291B6A0; else goto L_0291B6A4;
|
|
L_0291B6A0: ; // 0x291b6a0
|
|
/* 0291B6A0 */ cpu->r[21] = cpu->r[0];
|
|
L_0291B6A4: ; // 0x291b6a4
|
|
/* 0291B6A4 */ _t8 = cpu->r[12] + 0x00000014u;
|
|
/* 0291B6A4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0291B6A8 */ cpu->r[4] = cpu->r[21] + 0x00000003u;
|
|
/* 0291B6AC */ cpu->r[25] = cpu->r[8] + 0x0000030Cu;
|
|
/* 0291B6B0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], 0x00000057u);
|
|
/* 0291B6B4 */ cpu->r[26] = rbrew_rlwinm(cpu->r[4], 0x0000001Eu, 0x00000002u, 0x0000001Fu);
|
|
/* 0291B6B8 */ cpu->r[24] = cpu->r[3] + 0x000000ACu;
|
|
/* 0291B6BC */ _t9 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291B6BC */ _t10 = _t9 & 0x00000001u;
|
|
/* 0291B6BC */ if (_t10) goto L_0291B6C0; else goto L_0291B6C8;
|
|
L_0291B6C0: ; // 0x291b6c0
|
|
/* 0291B6C0 */ _t11 = cpu->r[12] + 0x0000001Cu;
|
|
/* 0291B6C0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0291B6C4 */ _t12 = cpu->r[11] + 0x0000015Cu;
|
|
/* 0291B6C4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t12);
|
|
L_0291B6C8: ; // 0x291b6c8
|
|
/* 0291B6C8 */ _t13 = cpu->r[7] + 0x00000078u;
|
|
/* 0291B6C8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0291B6CC */ cpu->r[7] = cpu->r[30];
|
|
/* 0291B6CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0291B6D0 */ cpu->r[8] = cpu->r[12] + 0x00000008u;
|
|
/* 0291B6D4 */ _t14 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291B6D4 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0291B6D4 */ if (_t15) goto L_0291B6F4; else goto L_0291B6D8;
|
|
L_0291B6D8: ; // 0x291b6d8
|
|
/* 0291B6D8 */ cpu->r[23] = 0x101D0000u;
|
|
/* 0291B6DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000001u);
|
|
/* 0291B6E0 */ _t16 = cpu->r[8] + 0x00000000u;
|
|
/* 0291B6E0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0291B6E4 */ cpu->r[23] = cpu->r[23] + 0xFFFFA504u;
|
|
/* 0291B6E8 */ cpu->r[8] = 0x00000000u;
|
|
/* 0291B6EC */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291B6EC */ _t18 = _t17 & 0x00000001u;
|
|
/* 0291B6EC */ if (_t18) goto L_0291B6F0; else goto L_0291B7AC;
|
|
L_0291B6F0: ; // 0x291b6f0
|
|
/* 0291B6F0 */ goto L_0291B728;
|
|
L_0291B6F4: ; // 0x291b6f4
|
|
/* 0291B6F4 */ _t19 = cpu->r[8] + 0x00000004u;
|
|
/* 0291B6F4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0291B6F8 */ cpu->r[4] = cpu->r[7] + 0xFFFFFFFFu;
|
|
/* 0291B6FC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[6]);
|
|
/* 0291B700 */ _t20 = cpu->r[8] + 0x00000008u;
|
|
/* 0291B700 */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0291B704 */ _t21 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291B704 */ _t22 = _t21 & 0x00000001u;
|
|
/* 0291B704 */ if (_t22) goto L_0291B708; else goto L_0291B714;
|
|
L_0291B708: ; // 0x291b708
|
|
/* 0291B708 */ cpu->r[10] = rbrew_rlwinm(cpu->r[7], 0x00000007u, 0x00000000u, 0x00000018u);
|
|
/* 0291B70C */ cpu->r[12] = cpu->r[31] + cpu->r[10];
|
|
/* 0291B710 */ cpu->r[31] = cpu->r[12] + 0xFFFFFF80u;
|
|
L_0291B714: ; // 0x291b714
|
|
/* 0291B714 */ cpu->r[23] = 0x101D0000u;
|
|
/* 0291B718 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000001u);
|
|
/* 0291B71C */ cpu->r[8] = 0x00000000u;
|
|
/* 0291B720 */ cpu->r[23] = cpu->r[23] + 0xFFFFA504u;
|
|
/* 0291B724 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291B724 */ _t24 = _t23 & 0x00000001u;
|
|
/* 0291B724 */ if (_t24) goto L_0291B728; else goto L_0291B7AC;
|
|
L_0291B728: ; // 0x291b728
|
|
/* 0291B728 */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 0291B72C */ cpu->r[29] = cpu->r[27];
|
|
/* 0291B730 */ Gambit_fn_028F18E8(cpu);
|
|
/* 0291B734 */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 0291B738 */ cpu->r[4] = cpu->r[29];
|
|
/* 0291B73C */ Gambit_fn_0291B0F0(cpu);
|
|
/* 0291B740 */ cpu->r[4] = cpu->r[1] + 0x00000048u;
|
|
/* 0291B744 */ cpu->r[3] = cpu->r[25];
|
|
/* 0291B748 */ Gambit_fn_0291B12C(cpu);
|
|
/* 0291B74C */ cpu->r[4] = cpu->r[25];
|
|
/* 0291B750 */ cpu->r[3] = cpu->r[1] + 0x00000030u;
|
|
/* 0291B754 */ Gambit_fn_0281D990(cpu);
|
|
/* 0291B758 */ cpu->r[4] = cpu->r[25];
|
|
/* 0291B75C */ Gambit_fn_0281DCCC(cpu);
|
|
/* 0291B760 */ cpu->r[3] = cpu->r[31];
|
|
/* 0291B764 */ cpu->r[4] = cpu->r[28];
|
|
/* 0291B768 */ cpu->r[5] = 0x00000001u;
|
|
/* 0291B76C */ Gambit_fn_028F40F4(cpu);
|
|
/* 0291B770 */ cpu->r[28] = cpu->r[3];
|
|
/* 0291B774 */ cpu->r[3] = cpu->r[20];
|
|
/* 0291B778 */ Gambit_fn_028F714C(cpu);
|
|
/* 0291B77C */ _t25 = cpu->r[31] + 0x00000038u;
|
|
/* 0291B77C */ cpu->r[4] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0291B780 */ cpu->r[6] = 0x00000000u;
|
|
/* 0291B784 */ cpu->r[5] = 0xFFFFFFFFu;
|
|
/* 0291B788 */ cpu->r[3] = cpu->r[20];
|
|
/* 0291B78C */ Gambit_fn_028FA6D4(cpu);
|
|
/* 0291B790 */ _t26 = cpu->r[31] + 0x00000028u;
|
|
/* 0291B790 */ cpu->r[20] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0291B794 */ cpu->r[10] = 0x00000000u;
|
|
/* 0291B798 */ _t27 = cpu->r[1] + 0x00000028u;
|
|
/* 0291B798 */ rbrew_write32(cpu->mem, _t27, cpu->r[10]);
|
|
/* 0291B79C */ _t28 = cpu->r[20] + 0x00000008u;
|
|
/* 0291B79C */ cpu->r[11] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t28);
|
|
/* 0291B7A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0xFFFFFFFFu);
|
|
/* 0291B7A4 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291B7A4 */ _t30 = _t29 & 0x00000001u;
|
|
/* 0291B7A4 */ if (_t30) goto L_0291B7A8; else goto L_0291B870;
|
|
L_0291B7A8: ; // 0x291b7a8
|
|
/* 0291B7A8 */ goto L_0291B880;
|
|
L_0291B7AC: ; // 0x291b7ac
|
|
/* 0291B7AC */ cpu->r[7] = 0x10140000u;
|
|
/* 0291B7B0 */ cpu->r[6] = cpu->r[26];
|
|
/* 0291B7B4 */ cpu->r[7] = cpu->r[7] + 0x000023D4u;
|
|
/* 0291B7B8 */ cpu->r[5] = 0x10140000u;
|
|
/* 0291B7BC */ _t31 = cpu->r[1] + 0x00000018u;
|
|
/* 0291B7BC */ rbrew_write32(cpu->mem, _t31, cpu->r[7]);
|
|
/* 0291B7C0 */ cpu->r[5] = cpu->r[5] + 0x00001884u;
|
|
/* 0291B7C4 */ cpu->r[8] = 0x00000001u;
|
|
/* 0291B7C8 */ _t32 = cpu->r[23] + 0x00000000u;
|
|
/* 0291B7C8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0291B7CC */ cpu->r[9] = 0x00000000u;
|
|
/* 0291B7D0 */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 0291B7D4 */ _t33 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0291B7D4 */ rbrew_write32(cpu->mem, _t33, cpu->r[5]);
|
|
/* 0291B7D8 */ cpu->r[5] = 0x00000009u;
|
|
/* 0291B7DC */ cpu->r[7] = cpu->r[26];
|
|
/* 0291B7E0 */ _t34 = cpu->r[1] + 0x00000008u;
|
|
/* 0291B7E0 */ rbrew_write32(cpu->mem, _t34, cpu->r[8]);
|
|
/* 0291B7E4 */ cpu->r[10] = cpu->r[9];
|
|
/* 0291B7E8 */ _t35 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291B7E8 */ rbrew_write32(cpu->mem, _t35, cpu->r[9]);
|
|
/* 0291B7EC */ Gambit_fn_029456B0(cpu);
|
|
/* 0291B7F0 */ cpu->r[29] = cpu->r[3];
|
|
/* 0291B7F4 */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 0291B7F8 */ Gambit_fn_028F18E8(cpu);
|
|
/* 0291B7FC */ cpu->r[4] = cpu->r[29];
|
|
/* 0291B800 */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 0291B804 */ Gambit_fn_0291B0F0(cpu);
|
|
/* 0291B808 */ cpu->r[4] = cpu->r[1] + 0x00000048u;
|
|
/* 0291B80C */ cpu->r[3] = cpu->r[25];
|
|
/* 0291B810 */ Gambit_fn_0291B12C(cpu);
|
|
/* 0291B814 */ cpu->r[4] = cpu->r[25];
|
|
/* 0291B818 */ cpu->r[3] = cpu->r[1] + 0x00000030u;
|
|
/* 0291B81C */ Gambit_fn_0281D990(cpu);
|
|
/* 0291B820 */ cpu->r[4] = cpu->r[25];
|
|
/* 0291B824 */ Gambit_fn_0281DCCC(cpu);
|
|
/* 0291B828 */ cpu->r[5] = 0x00000001u;
|
|
/* 0291B82C */ cpu->r[4] = cpu->r[28];
|
|
/* 0291B830 */ cpu->r[3] = cpu->r[31];
|
|
/* 0291B834 */ Gambit_fn_028F40F4(cpu);
|
|
/* 0291B838 */ cpu->r[28] = cpu->r[3];
|
|
/* 0291B83C */ cpu->r[3] = cpu->r[20];
|
|
/* 0291B840 */ Gambit_fn_028F714C(cpu);
|
|
/* 0291B844 */ _t36 = cpu->r[31] + 0x00000038u;
|
|
/* 0291B844 */ cpu->r[4] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0291B848 */ cpu->r[6] = 0x00000000u;
|
|
/* 0291B84C */ cpu->r[5] = 0xFFFFFFFFu;
|
|
/* 0291B850 */ cpu->r[3] = cpu->r[20];
|
|
/* 0291B854 */ Gambit_fn_028FA6D4(cpu);
|
|
/* 0291B858 */ _t37 = cpu->r[31] + 0x00000028u;
|
|
/* 0291B858 */ cpu->r[20] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0291B85C */ cpu->r[10] = 0x00000000u;
|
|
/* 0291B860 */ _t38 = cpu->r[1] + 0x00000028u;
|
|
/* 0291B860 */ rbrew_write32(cpu->mem, _t38, cpu->r[10]);
|
|
/* 0291B864 */ _t39 = cpu->r[20] + 0x00000008u;
|
|
/* 0291B864 */ cpu->r[11] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t39);
|
|
/* 0291B868 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0xFFFFFFFFu);
|
|
/* 0291B86C */ _t40 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291B86C */ _t41 = _t40 & 0x00000001u;
|
|
/* 0291B86C */ if (_t41) goto L_0291B880; else goto L_0291B870;
|
|
L_0291B870: ; // 0x291b870
|
|
/* 0291B870 */ _t42 = cpu->r[20] + 0x00000008u;
|
|
/* 0291B870 */ cpu->r[3] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t42);
|
|
/* 0291B874 */ cpu->r[5] = cpu->r[1] + 0x00000028u;
|
|
/* 0291B878 */ cpu->r[4] = 0x00000004u;
|
|
/* 0291B87C */ rbrew_dispatch(cpu, 0x02d062a8u);
|
|
L_0291B880: ; // 0x291b880
|
|
/* 0291B880 */ _t43 = cpu->r[20] + 0x0000000Au;
|
|
/* 0291B880 */ cpu->r[3] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t43);
|
|
/* 0291B884 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0xFFFFFFFFu);
|
|
/* 0291B888 */ _t44 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291B888 */ _t45 = _t44 & 0x00000001u;
|
|
/* 0291B888 */ if (_t45) goto L_0291B898; else goto L_0291B88C;
|
|
L_0291B88C: ; // 0x291b88c
|
|
/* 0291B88C */ cpu->r[4] = 0x00000004u;
|
|
/* 0291B890 */ cpu->r[5] = cpu->r[1] + 0x00000028u;
|
|
/* 0291B894 */ rbrew_dispatch(cpu, 0x02d06160u);
|
|
L_0291B898: ; // 0x291b898
|
|
/* 0291B898 */ cpu->r[12] = 0x43300000u;
|
|
/* 0291B89C */ _t46 = cpu->r[1] + 0x00000014u;
|
|
/* 0291B89C */ rbrew_write32(cpu->mem, _t46, cpu->r[21]);
|
|
/* 0291B8A0 */ cpu->r[9] = 0x10140000u;
|
|
/* 0291B8A4 */ _t47 = cpu->r[1] + 0x00000010u;
|
|
/* 0291B8A4 */ rbrew_write32(cpu->mem, _t47, cpu->r[12]);
|
|
/* 0291B8A8 */ _t48 = cpu->r[1] + 0x00000010u;
|
|
/* 0291B8A8 */ cpu->f[7] = rbrew_read_f64(cpu->mem, _t48);
|
|
/* 0291B8AC */ _t49 = cpu->r[9] + 0x00002158u;
|
|
/* 0291B8AC */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t49);
|
|
/* 0291B8B0 */ _t50 = cpu->r[31] + 0x00000024u;
|
|
/* 0291B8B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t50);
|
|
/* 0291B8B4 */ cpu->f[8] = cpu->f[7] - cpu->f[0];
|
|
/* 0291B8B8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000001u);
|
|
/* 0291B8BC */ _t51 = cpu->r[31] + 0x00000028u;
|
|
/* 0291B8BC */ cpu->r[31] = rbrew_read32(cpu->mem, _t51);
|
|
/* 0291B8C0 */ cpu->f[9] = (double)(float)cpu->f[8];
|
|
/* 0291B8C4 */ _t52 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291B8C4 */ _t53 = _t52 & 0x00000001u;
|
|
/* 0291B8C4 */ if (_t53) goto L_0291B8C8; else goto L_0291B8CC;
|
|
L_0291B8C8: ; // 0x291b8c8
|
|
/* 0291B8C8 */ cpu->r[31] = cpu->r[31] + 0x00000010u;
|
|
L_0291B8CC: ; // 0x291b8cc
|
|
/* 0291B8CC */ _t54 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0291B8CC */ rbrew_write_f32(cpu->mem, _t54, cpu->f[9]);
|
|
/* 0291B8D0 */ _t55 = cpu->r[31] + 0x00000008u;
|
|
/* 0291B8D0 */ cpu->r[4] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t55);
|
|
/* 0291B8D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0xFFFFFFFFu);
|
|
/* 0291B8D8 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291B8D8 */ _t57 = _t56 & 0x00000001u;
|
|
/* 0291B8D8 */ if (_t57) goto L_0291B8EC; else goto L_0291B8DC;
|
|
L_0291B8DC: ; // 0x291b8dc
|
|
/* 0291B8DC */ _t58 = cpu->r[31] + 0x00000008u;
|
|
/* 0291B8DC */ cpu->r[3] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t58);
|
|
/* 0291B8E0 */ cpu->r[5] = cpu->r[1] + 0x0000002Cu;
|
|
/* 0291B8E4 */ cpu->r[4] = 0x00000004u;
|
|
/* 0291B8E8 */ rbrew_dispatch(cpu, 0x02d062a8u);
|
|
L_0291B8EC: ; // 0x291b8ec
|
|
/* 0291B8EC */ _t59 = cpu->r[31] + 0x0000000Au;
|
|
/* 0291B8EC */ cpu->r[3] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t59);
|
|
/* 0291B8F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0xFFFFFFFFu);
|
|
/* 0291B8F4 */ _t60 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291B8F4 */ _t61 = _t60 & 0x00000001u;
|
|
/* 0291B8F4 */ if (_t61) goto L_0291B904; else goto L_0291B8F8;
|
|
L_0291B8F8: ; // 0x291b8f8
|
|
/* 0291B8F8 */ cpu->r[4] = 0x00000004u;
|
|
/* 0291B8FC */ cpu->r[5] = cpu->r[1] + 0x0000002Cu;
|
|
/* 0291B900 */ rbrew_dispatch(cpu, 0x02d06160u);
|
|
L_0291B904: ; // 0x291b904
|
|
/* 0291B904 */ cpu->r[20] = 0x101D0000u;
|
|
/* 0291B908 */ _t62 = cpu->r[20] + 0xFFFFA544u;
|
|
/* 0291B908 */ cpu->r[10] = rbrew_read32(cpu->mem, _t62);
|
|
/* 0291B908 */ cpu->r[20] = _t62;
|
|
/* 0291B90C */ cpu->r[3] = cpu->r[10] + 0x000006BCu;
|
|
/* 0291B910 */ Gambit_fn_028FB628(cpu);
|
|
/* 0291B914 */ cpu->r[19] = 0x101D0000u;
|
|
/* 0291B918 */ _t63 = cpu->r[19] + 0xFFFFA52Cu;
|
|
/* 0291B918 */ cpu->r[5] = rbrew_read32(cpu->mem, _t63);
|
|
/* 0291B918 */ cpu->r[19] = _t63;
|
|
/* 0291B91C */ _t64 = cpu->r[5] + 0x0000018Cu;
|
|
/* 0291B91C */ cpu->r[4] = rbrew_read32(cpu->mem, _t64);
|
|
/* 0291B920 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 0291B924 */ cpu->r[12] = cpu->r[5] + 0x00000180u;
|
|
/* 0291B928 */ _t65 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291B928 */ _t66 = _t65 & 0x00000001u;
|
|
/* 0291B928 */ if (_t66) goto L_0291B944; else goto L_0291B92C;
|
|
L_0291B92C: ; // 0x291b92c
|
|
/* 0291B92C */ _t67 = cpu->r[12] + 0x00000000u;
|
|
/* 0291B92C */ cpu->r[5] = rbrew_read32(cpu->mem, _t67);
|
|
/* 0291B930 */ cpu->r[8] = 0x00000001u;
|
|
/* 0291B934 */ _t68 = cpu->r[12] + 0x00000008u;
|
|
/* 0291B934 */ cpu->r[6] = rbrew_read32(cpu->mem, _t68);
|
|
/* 0291B938 */ cpu->r[7] = 0x00000000u;
|
|
/* 0291B93C */ _t69 = cpu->r[12] + 0x00000004u;
|
|
/* 0291B93C */ cpu->r[3] = rbrew_read32(cpu->mem, _t69);
|
|
/* 0291B940 */ rbrew_dispatch(cpu, 0x02d05930u);
|
|
L_0291B944: ; // 0x291b944
|
|
/* 0291B944 */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 0291B948 */ Gambit_fn_028F1A48(cpu);
|
|
/* 0291B94C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000001u);
|
|
/* 0291B950 */ _t70 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291B950 */ _t71 = _t70 & 0x00000001u;
|
|
/* 0291B950 */ if (_t71) goto L_0291BCF8; else goto L_0291B954;
|
|
L_0291B954: ; // 0x291b954
|
|
/* 0291B954 */ _t72 = cpu->r[22] + 0x00000000u;
|
|
/* 0291B954 */ cpu->r[5] = rbrew_read32(cpu->mem, _t72);
|
|
/* 0291B958 */ _t73 = cpu->r[5] + 0x00000014u;
|
|
/* 0291B958 */ cpu->r[6] = rbrew_read32(cpu->mem, _t73);
|
|
/* 0291B95C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], 0x00000058u);
|
|
/* 0291B960 */ cpu->r[7] = 0x00000000u;
|
|
/* 0291B964 */ _t74 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291B964 */ _t75 = _t74 & 0x00000001u;
|
|
/* 0291B964 */ if (_t75) goto L_0291B968; else goto L_0291B970;
|
|
L_0291B968: ; // 0x291b968
|
|
/* 0291B968 */ _t76 = cpu->r[5] + 0x0000001Cu;
|
|
/* 0291B968 */ cpu->r[7] = rbrew_read32(cpu->mem, _t76);
|
|
/* 0291B96C */ _t77 = cpu->r[7] + 0x00000160u;
|
|
/* 0291B96C */ cpu->r[7] = rbrew_read32(cpu->mem, _t77);
|
|
L_0291B970: ; // 0x291b970
|
|
/* 0291B970 */ _t78 = cpu->r[7] + 0x00000078u;
|
|
/* 0291B970 */ cpu->r[8] = rbrew_read32(cpu->mem, _t78);
|
|
/* 0291B974 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0291B978 */ cpu->r[8] = cpu->r[8] + 0x00000008u;
|
|
/* 0291B97C */ _t79 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291B97C */ _t80 = _t79 & 0x00000001u;
|
|
/* 0291B97C */ if (_t80) goto L_0291B99C; else goto L_0291B980;
|
|
L_0291B980: ; // 0x291b980
|
|
/* 0291B980 */ cpu->r[21] = cpu->r[26];
|
|
/* 0291B984 */ cpu->r[5] = cpu->r[26] + 0x00000003u;
|
|
/* 0291B988 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], 0x00000001u);
|
|
/* 0291B98C */ cpu->r[26] = rbrew_rlwinm(cpu->r[5], 0x0000001Eu, 0x00000002u, 0x0000001Fu);
|
|
/* 0291B990 */ _t81 = cpu->r[8] + 0x00000000u;
|
|
/* 0291B990 */ cpu->r[31] = rbrew_read32(cpu->mem, _t81);
|
|
/* 0291B994 */ _t82 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291B994 */ _t83 = _t82 & 0x00000001u;
|
|
/* 0291B994 */ if (_t83) goto L_0291BCF8; else goto L_0291B998;
|
|
L_0291B998: ; // 0x291b998
|
|
/* 0291B998 */ goto L_0291B9D0;
|
|
L_0291B99C: ; // 0x291b99c
|
|
/* 0291B99C */ _t84 = cpu->r[8] + 0x00000004u;
|
|
/* 0291B99C */ cpu->r[10] = rbrew_read32(cpu->mem, _t84);
|
|
/* 0291B9A0 */ cpu->r[9] = cpu->r[30] + 0xFFFFFFFFu;
|
|
/* 0291B9A4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[10]);
|
|
/* 0291B9A8 */ _t85 = cpu->r[8] + 0x00000008u;
|
|
/* 0291B9A8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t85);
|
|
/* 0291B9AC */ _t86 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291B9AC */ _t87 = _t86 & 0x00000001u;
|
|
/* 0291B9AC */ if (_t87) goto L_0291B9B0; else goto L_0291B9BC;
|
|
L_0291B9B0: ; // 0x291b9b0
|
|
/* 0291B9B0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[30], 0x00000007u, 0x00000000u, 0x00000018u);
|
|
/* 0291B9B4 */ cpu->r[12] = cpu->r[31] + cpu->r[0];
|
|
/* 0291B9B8 */ cpu->r[31] = cpu->r[12] + 0xFFFFFF80u;
|
|
L_0291B9BC: ; // 0x291b9bc
|
|
/* 0291B9BC */ cpu->r[21] = cpu->r[26];
|
|
/* 0291B9C0 */ cpu->r[5] = cpu->r[26] + 0x00000003u;
|
|
/* 0291B9C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], 0x00000001u);
|
|
/* 0291B9C8 */ cpu->r[26] = rbrew_rlwinm(cpu->r[5], 0x0000001Eu, 0x00000002u, 0x0000001Fu);
|
|
/* 0291B9CC */ _t88 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291B9CC */ _t89 = _t88 & 0x00000001u;
|
|
/* 0291B9CC */ if (_t89) goto L_0291BCF8; else goto L_0291B9D0;
|
|
L_0291B9D0: ; // 0x291b9d0
|
|
/* 0291B9D0 */ cpu->r[30] = cpu->r[31] + 0x00000034u;
|
|
/* 0291B9D4 */ cpu->r[22] = 0x00000000u;
|
|
/* 0291B9D8 */ cpu->r[18] = cpu->r[1] + 0x00000020u;
|
|
/* 0291B9DC */ cpu->r[17] = cpu->r[1] + 0x00000024u;
|
|
L_0291B9E0: ; // 0x291b9e0
|
|
/* 0291B9E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000001u);
|
|
/* 0291B9E4 */ cpu->r[8] = 0x00000000u;
|
|
/* 0291B9E8 */ _t90 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291B9E8 */ _t91 = _t90 & 0x00000001u;
|
|
/* 0291B9E8 */ if (_t91) goto L_0291B9EC; else goto L_0291BA4C;
|
|
L_0291B9EC: ; // 0x291b9ec
|
|
/* 0291B9EC */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 0291B9F0 */ cpu->r[16] = cpu->r[27];
|
|
/* 0291B9F4 */ Gambit_fn_028F18E8(cpu);
|
|
/* 0291B9F8 */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 0291B9FC */ cpu->r[4] = cpu->r[16];
|
|
/* 0291BA00 */ Gambit_fn_0291B0F0(cpu);
|
|
/* 0291BA04 */ cpu->r[4] = cpu->r[1] + 0x00000048u;
|
|
/* 0291BA08 */ cpu->r[3] = cpu->r[25];
|
|
/* 0291BA0C */ Gambit_fn_0291B12C(cpu);
|
|
/* 0291BA10 */ cpu->r[4] = cpu->r[25];
|
|
/* 0291BA14 */ cpu->r[3] = cpu->r[1] + 0x00000030u;
|
|
/* 0291BA18 */ Gambit_fn_0281D990(cpu);
|
|
/* 0291BA1C */ cpu->r[4] = cpu->r[25];
|
|
/* 0291BA20 */ Gambit_fn_0281DCCC(cpu);
|
|
/* 0291BA24 */ cpu->r[5] = 0x00000001u;
|
|
/* 0291BA28 */ cpu->r[4] = cpu->r[28];
|
|
/* 0291BA2C */ cpu->r[3] = cpu->r[31];
|
|
/* 0291BA30 */ Gambit_fn_028F40F4(cpu);
|
|
/* 0291BA34 */ _t92 = cpu->r[29] + 0x00000004u;
|
|
/* 0291BA34 */ cpu->r[5] = rbrew_read32(cpu->mem, _t92);
|
|
/* 0291BA38 */ _t93 = cpu->r[24] + 0x00000004u;
|
|
/* 0291BA38 */ cpu->r[0] = rbrew_read32(cpu->mem, _t93);
|
|
/* 0291BA3C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[5]);
|
|
/* 0291BA40 */ cpu->r[28] = cpu->r[3];
|
|
/* 0291BA44 */ _t94 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291BA44 */ _t95 = _t94 & 0x00000001u;
|
|
/* 0291BA44 */ if (_t95) goto L_0291BA48; else goto L_0291BB7C;
|
|
L_0291BA48: ; // 0x291ba48
|
|
/* 0291BA48 */ goto L_0291BAEC;
|
|
L_0291BA4C: ; // 0x291ba4c
|
|
/* 0291BA4C */ cpu->r[6] = 0x10140000u;
|
|
/* 0291BA50 */ cpu->r[7] = 0x10140000u;
|
|
/* 0291BA54 */ cpu->r[6] = cpu->r[6] + 0x00001884u;
|
|
/* 0291BA58 */ cpu->r[7] = cpu->r[7] + 0x000023D4u;
|
|
/* 0291BA5C */ _t96 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0291BA5C */ rbrew_write32(cpu->mem, _t96, cpu->r[6]);
|
|
/* 0291BA60 */ cpu->r[9] = 0x00000000u;
|
|
/* 0291BA64 */ cpu->r[8] = 0x00000001u;
|
|
/* 0291BA68 */ _t97 = cpu->r[1] + 0x00000018u;
|
|
/* 0291BA68 */ rbrew_write32(cpu->mem, _t97, cpu->r[7]);
|
|
/* 0291BA6C */ cpu->r[7] = cpu->r[26];
|
|
/* 0291BA70 */ cpu->r[5] = 0x00000009u;
|
|
/* 0291BA74 */ _t98 = cpu->r[23] + 0x00000000u;
|
|
/* 0291BA74 */ cpu->r[3] = rbrew_read32(cpu->mem, _t98);
|
|
/* 0291BA78 */ cpu->r[6] = cpu->r[26];
|
|
/* 0291BA7C */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 0291BA80 */ _t99 = cpu->r[1] + 0x00000008u;
|
|
/* 0291BA80 */ rbrew_write32(cpu->mem, _t99, cpu->r[8]);
|
|
/* 0291BA84 */ cpu->r[10] = cpu->r[9];
|
|
/* 0291BA88 */ _t100 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291BA88 */ rbrew_write32(cpu->mem, _t100, cpu->r[22]);
|
|
/* 0291BA8C */ Gambit_fn_029456B0(cpu);
|
|
/* 0291BA90 */ cpu->r[16] = cpu->r[3];
|
|
/* 0291BA94 */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 0291BA98 */ Gambit_fn_028F18E8(cpu);
|
|
/* 0291BA9C */ cpu->r[4] = cpu->r[16];
|
|
/* 0291BAA0 */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 0291BAA4 */ Gambit_fn_0291B0F0(cpu);
|
|
/* 0291BAA8 */ cpu->r[4] = cpu->r[1] + 0x00000048u;
|
|
/* 0291BAAC */ cpu->r[3] = cpu->r[25];
|
|
/* 0291BAB0 */ Gambit_fn_0291B12C(cpu);
|
|
/* 0291BAB4 */ cpu->r[4] = cpu->r[25];
|
|
/* 0291BAB8 */ cpu->r[3] = cpu->r[1] + 0x00000030u;
|
|
/* 0291BABC */ Gambit_fn_0281D990(cpu);
|
|
/* 0291BAC0 */ cpu->r[4] = cpu->r[25];
|
|
/* 0291BAC4 */ Gambit_fn_0281DCCC(cpu);
|
|
/* 0291BAC8 */ cpu->r[5] = 0x00000001u;
|
|
/* 0291BACC */ cpu->r[4] = cpu->r[28];
|
|
/* 0291BAD0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0291BAD4 */ Gambit_fn_028F40F4(cpu);
|
|
/* 0291BAD8 */ _t101 = cpu->r[29] + 0x00000004u;
|
|
/* 0291BAD8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t101);
|
|
/* 0291BADC */ _t102 = cpu->r[24] + 0x00000004u;
|
|
/* 0291BADC */ cpu->r[0] = rbrew_read32(cpu->mem, _t102);
|
|
/* 0291BAE0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[5]);
|
|
/* 0291BAE4 */ cpu->r[28] = cpu->r[3];
|
|
/* 0291BAE8 */ _t103 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291BAE8 */ _t104 = _t103 & 0x00000001u;
|
|
/* 0291BAE8 */ if (_t104) goto L_0291BAEC; else goto L_0291BB7C;
|
|
L_0291BAEC: ; // 0x291baec
|
|
/* 0291BAEC */ _t105 = cpu->r[24] + 0x00000008u;
|
|
/* 0291BAEC */ cpu->r[9] = rbrew_read32(cpu->mem, _t105);
|
|
/* 0291BAF0 */ _t106 = cpu->r[29] + 0x00000008u;
|
|
/* 0291BAF0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t106);
|
|
/* 0291BAF4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[11]);
|
|
/* 0291BAF8 */ _t107 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291BAF8 */ _t108 = _t107 & 0x00000001u;
|
|
/* 0291BAF8 */ if (_t108) goto L_0291BAFC; else goto L_0291BB7C;
|
|
L_0291BAFC: ; // 0x291bafc
|
|
/* 0291BAFC */ _t109 = cpu->r[24] + 0x0000000Cu;
|
|
/* 0291BAFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t109);
|
|
/* 0291BB00 */ _t110 = cpu->r[29] + 0x0000000Cu;
|
|
/* 0291BB00 */ cpu->r[4] = rbrew_read32(cpu->mem, _t110);
|
|
/* 0291BB04 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[4]);
|
|
/* 0291BB08 */ _t111 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291BB08 */ _t112 = _t111 & 0x00000001u;
|
|
/* 0291BB08 */ if (_t112) goto L_0291BB0C; else goto L_0291BB7C;
|
|
L_0291BB0C: ; // 0x291bb0c
|
|
/* 0291BB0C */ _t113 = cpu->r[24] + 0x00000010u;
|
|
/* 0291BB0C */ cpu->r[6] = rbrew_read32(cpu->mem, _t113);
|
|
/* 0291BB10 */ _t114 = cpu->r[29] + 0x00000010u;
|
|
/* 0291BB10 */ cpu->r[10] = rbrew_read32(cpu->mem, _t114);
|
|
/* 0291BB14 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[10]);
|
|
/* 0291BB18 */ _t115 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291BB18 */ _t116 = _t115 & 0x00000001u;
|
|
/* 0291BB18 */ if (_t116) goto L_0291BB1C; else goto L_0291BB7C;
|
|
L_0291BB1C: ; // 0x291bb1c
|
|
/* 0291BB1C */ _t117 = cpu->r[24] + 0x00000014u;
|
|
/* 0291BB1C */ cpu->r[0] = rbrew_read32(cpu->mem, _t117);
|
|
/* 0291BB20 */ _t118 = cpu->r[29] + 0x00000014u;
|
|
/* 0291BB20 */ cpu->r[4] = rbrew_read32(cpu->mem, _t118);
|
|
/* 0291BB24 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[4]);
|
|
/* 0291BB28 */ _t119 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291BB28 */ _t120 = _t119 & 0x00000001u;
|
|
/* 0291BB28 */ if (_t120) goto L_0291BB2C; else goto L_0291BB7C;
|
|
L_0291BB2C: ; // 0x291bb2c
|
|
/* 0291BB2C */ _t121 = cpu->r[24] + 0x00000018u;
|
|
/* 0291BB2C */ cpu->r[5] = rbrew_read32(cpu->mem, _t121);
|
|
/* 0291BB30 */ _t122 = cpu->r[29] + 0x00000018u;
|
|
/* 0291BB30 */ cpu->r[6] = rbrew_read32(cpu->mem, _t122);
|
|
/* 0291BB34 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[6]);
|
|
/* 0291BB38 */ _t123 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291BB38 */ _t124 = _t123 & 0x00000001u;
|
|
/* 0291BB38 */ if (_t124) goto L_0291BB3C; else goto L_0291BB7C;
|
|
L_0291BB3C: ; // 0x291bb3c
|
|
/* 0291BB3C */ _t125 = cpu->r[24] + 0x00000038u;
|
|
/* 0291BB3C */ cpu->r[9] = rbrew_read32(cpu->mem, _t125);
|
|
/* 0291BB40 */ _t126 = cpu->r[29] + 0x00000038u;
|
|
/* 0291BB40 */ cpu->r[10] = rbrew_read32(cpu->mem, _t126);
|
|
/* 0291BB44 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[10]);
|
|
/* 0291BB48 */ _t127 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291BB48 */ _t128 = _t127 & 0x00000001u;
|
|
/* 0291BB48 */ if (_t128) goto L_0291BB4C; else goto L_0291BB7C;
|
|
L_0291BB4C: ; // 0x291bb4c
|
|
/* 0291BB4C */ _t129 = cpu->r[24] + 0x00000034u;
|
|
/* 0291BB4C */ cpu->r[11] = rbrew_read32(cpu->mem, _t129);
|
|
/* 0291BB50 */ _t130 = cpu->r[29] + 0x00000034u;
|
|
/* 0291BB50 */ cpu->r[12] = rbrew_read32(cpu->mem, _t130);
|
|
/* 0291BB54 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[12]);
|
|
/* 0291BB58 */ _t131 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291BB58 */ _t132 = _t131 & 0x00000001u;
|
|
/* 0291BB58 */ if (_t132) goto L_0291BB5C; else goto L_0291BB7C;
|
|
L_0291BB5C: ; // 0x291bb5c
|
|
/* 0291BB5C */ _t133 = cpu->r[24] + 0x00000020u;
|
|
/* 0291BB5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t133);
|
|
/* 0291BB60 */ _t134 = cpu->r[29] + 0x00000020u;
|
|
/* 0291BB60 */ cpu->r[5] = rbrew_read32(cpu->mem, _t134);
|
|
/* 0291BB64 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[5]);
|
|
/* 0291BB68 */ _t135 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291BB68 */ _t136 = _t135 & 0x00000001u;
|
|
/* 0291BB68 */ if (_t136) goto L_0291BB6C; else goto L_0291BB7C;
|
|
L_0291BB6C: ; // 0x291bb6c
|
|
/* 0291BB6C */ _t137 = cpu->r[24] + 0x0000001Cu;
|
|
/* 0291BB6C */ cpu->r[7] = rbrew_read32(cpu->mem, _t137);
|
|
/* 0291BB70 */ _t138 = cpu->r[29] + 0x0000001Cu;
|
|
/* 0291BB70 */ cpu->r[8] = rbrew_read32(cpu->mem, _t138);
|
|
/* 0291BB74 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[8]);
|
|
/* 0291BB78 */ _t139 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291BB78 */ _t140 = _t139 & 0x00000001u;
|
|
/* 0291BB78 */ if (_t140) goto L_0291BBA0; else goto L_0291BB7C;
|
|
L_0291BB7C: ; // 0x291bb7c
|
|
/* 0291BB7C */ cpu->r[3] = cpu->r[24];
|
|
/* 0291BB80 */ cpu->r[4] = cpu->r[29];
|
|
/* 0291BB84 */ Gambit_fn_028F9D94(cpu);
|
|
/* 0291BB88 */ cpu->r[3] = cpu->r[24];
|
|
/* 0291BB8C */ Gambit_fn_028F714C(cpu);
|
|
/* 0291BB90 */ _t141 = cpu->r[31] + 0x00000000u;
|
|
/* 0291BB90 */ cpu->r[9] = rbrew_read8(cpu->mem, _t141);
|
|
/* 0291BB94 */ cpu->r[0] = rbrew_rlwinm(cpu->r[9], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0291BB94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0291BB98 */ _t142 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291BB98 */ _t143 = _t142 & 0x00000001u;
|
|
/* 0291BB98 */ if (_t143) goto L_0291BBD8; else goto L_0291BB9C;
|
|
L_0291BB9C: ; // 0x291bb9c
|
|
/* 0291BB9C */ goto L_0291BBCC;
|
|
L_0291BBA0: ; // 0x291bba0
|
|
/* 0291BBA0 */ _t144 = cpu->r[29] + 0x00000028u;
|
|
/* 0291BBA0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t144);
|
|
/* 0291BBA4 */ _t145 = cpu->r[29] + 0x00000030u;
|
|
/* 0291BBA4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t145);
|
|
/* 0291BBA8 */ _t146 = cpu->r[24] + 0x000000A8u;
|
|
/* 0291BBA8 */ rbrew_write32(cpu->mem, _t146, cpu->r[6]);
|
|
/* 0291BBAC */ _t147 = cpu->r[24] + 0x00000028u;
|
|
/* 0291BBAC */ rbrew_write32(cpu->mem, _t147, cpu->r[6]);
|
|
/* 0291BBB0 */ _t148 = cpu->r[24] + 0x00000030u;
|
|
/* 0291BBB0 */ rbrew_write32(cpu->mem, _t148, cpu->r[7]);
|
|
/* 0291BBB4 */ cpu->r[3] = cpu->r[24];
|
|
/* 0291BBB8 */ _t149 = cpu->r[24] + 0x000000B0u;
|
|
/* 0291BBB8 */ rbrew_write32(cpu->mem, _t149, cpu->r[7]);
|
|
/* 0291BBBC */ Gambit_fn_028F714C(cpu);
|
|
/* 0291BBC0 */ _t150 = cpu->r[31] + 0x00000000u;
|
|
/* 0291BBC0 */ cpu->r[9] = rbrew_read8(cpu->mem, _t150);
|
|
/* 0291BBC4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[9], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0291BBC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0291BBC8 */ _t151 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291BBC8 */ _t152 = _t151 & 0x00000001u;
|
|
/* 0291BBC8 */ if (_t152) goto L_0291BBD8; else goto L_0291BBCC;
|
|
L_0291BBCC: ; // 0x291bbcc
|
|
/* 0291BBCC */ cpu->r[3] = cpu->r[31];
|
|
/* 0291BBD0 */ cpu->r[4] = 0x00000000u;
|
|
/* 0291BBD4 */ Gambit_fn_028F3F1C(cpu);
|
|
L_0291BBD8: ; // 0x291bbd8
|
|
/* 0291BBD8 */ _t153 = cpu->r[30] + 0x00000004u;
|
|
/* 0291BBD8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t153);
|
|
/* 0291BBDC */ cpu->r[6] = 0x00000000u;
|
|
/* 0291BBE0 */ cpu->r[5] = 0xFFFFFFFFu;
|
|
/* 0291BBE4 */ cpu->r[3] = cpu->r[24];
|
|
/* 0291BBE8 */ Gambit_fn_028FA6D4(cpu);
|
|
/* 0291BBEC */ _t154 = cpu->r[31] + 0x00000028u;
|
|
/* 0291BBEC */ cpu->r[15] = rbrew_read32(cpu->mem, _t154);
|
|
/* 0291BBF0 */ _t155 = cpu->r[1] + 0x00000020u;
|
|
/* 0291BBF0 */ rbrew_write32(cpu->mem, _t155, cpu->r[22]);
|
|
/* 0291BBF4 */ _t156 = cpu->r[15] + 0x00000008u;
|
|
/* 0291BBF4 */ cpu->r[5] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t156);
|
|
/* 0291BBF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0xFFFFFFFFu);
|
|
/* 0291BBFC */ _t157 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291BBFC */ _t158 = _t157 & 0x00000001u;
|
|
/* 0291BBFC */ if (_t158) goto L_0291BC10; else goto L_0291BC00;
|
|
L_0291BC00: ; // 0x291bc00
|
|
/* 0291BC00 */ _t159 = cpu->r[15] + 0x00000008u;
|
|
/* 0291BC00 */ cpu->r[3] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t159);
|
|
/* 0291BC04 */ cpu->r[5] = cpu->r[18];
|
|
/* 0291BC08 */ cpu->r[4] = 0x00000004u;
|
|
/* 0291BC0C */ rbrew_dispatch(cpu, 0x02d062a8u);
|
|
L_0291BC10: ; // 0x291bc10
|
|
/* 0291BC10 */ _t160 = cpu->r[15] + 0x0000000Au;
|
|
/* 0291BC10 */ cpu->r[3] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t160);
|
|
/* 0291BC14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0xFFFFFFFFu);
|
|
/* 0291BC18 */ _t161 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291BC18 */ _t162 = _t161 & 0x00000001u;
|
|
/* 0291BC18 */ if (_t162) goto L_0291BC28; else goto L_0291BC1C;
|
|
L_0291BC1C: ; // 0x291bc1c
|
|
/* 0291BC1C */ cpu->r[4] = 0x00000004u;
|
|
/* 0291BC20 */ cpu->r[5] = cpu->r[18];
|
|
/* 0291BC24 */ rbrew_dispatch(cpu, 0x02d06160u);
|
|
L_0291BC28: ; // 0x291bc28
|
|
/* 0291BC28 */ cpu->r[6] = 0x43300000u;
|
|
/* 0291BC2C */ _t163 = cpu->r[1] + 0x00000014u;
|
|
/* 0291BC2C */ rbrew_write32(cpu->mem, _t163, cpu->r[21]);
|
|
/* 0291BC30 */ cpu->r[8] = 0x10140000u;
|
|
/* 0291BC34 */ _t164 = cpu->r[1] + 0x00000010u;
|
|
/* 0291BC34 */ rbrew_write32(cpu->mem, _t164, cpu->r[6]);
|
|
/* 0291BC38 */ _t165 = cpu->r[1] + 0x00000010u;
|
|
/* 0291BC38 */ cpu->f[10] = rbrew_read_f64(cpu->mem, _t165);
|
|
/* 0291BC3C */ _t166 = cpu->r[8] + 0x00002158u;
|
|
/* 0291BC3C */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t166);
|
|
/* 0291BC40 */ _t167 = cpu->r[31] + 0x00000024u;
|
|
/* 0291BC40 */ cpu->r[9] = rbrew_read32(cpu->mem, _t167);
|
|
/* 0291BC44 */ cpu->f[11] = cpu->f[10] - cpu->f[13];
|
|
/* 0291BC48 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], 0x00000001u);
|
|
/* 0291BC4C */ _t168 = cpu->r[31] + 0x00000028u;
|
|
/* 0291BC4C */ cpu->r[21] = rbrew_read32(cpu->mem, _t168);
|
|
/* 0291BC50 */ cpu->f[12] = (double)(float)cpu->f[11];
|
|
/* 0291BC54 */ _t169 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291BC54 */ _t170 = _t169 & 0x00000001u;
|
|
/* 0291BC54 */ if (_t170) goto L_0291BC58; else goto L_0291BC5C;
|
|
L_0291BC58: ; // 0x291bc58
|
|
/* 0291BC58 */ cpu->r[21] = cpu->r[21] + 0x00000010u;
|
|
L_0291BC5C: ; // 0x291bc5c
|
|
/* 0291BC5C */ _t171 = cpu->r[1] + 0x00000024u;
|
|
/* 0291BC5C */ rbrew_write_f32(cpu->mem, _t171, cpu->f[12]);
|
|
/* 0291BC60 */ _t172 = cpu->r[21] + 0x00000008u;
|
|
/* 0291BC60 */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t172);
|
|
/* 0291BC64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 0291BC68 */ _t173 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291BC68 */ _t174 = _t173 & 0x00000001u;
|
|
/* 0291BC68 */ if (_t174) goto L_0291BC7C; else goto L_0291BC6C;
|
|
L_0291BC6C: ; // 0x291bc6c
|
|
/* 0291BC6C */ _t175 = cpu->r[21] + 0x00000008u;
|
|
/* 0291BC6C */ cpu->r[3] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t175);
|
|
/* 0291BC70 */ cpu->r[5] = cpu->r[17];
|
|
/* 0291BC74 */ cpu->r[4] = 0x00000004u;
|
|
/* 0291BC78 */ rbrew_dispatch(cpu, 0x02d062a8u);
|
|
L_0291BC7C: ; // 0x291bc7c
|
|
/* 0291BC7C */ _t176 = cpu->r[21] + 0x0000000Au;
|
|
/* 0291BC7C */ cpu->r[3] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t176);
|
|
/* 0291BC80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0xFFFFFFFFu);
|
|
/* 0291BC84 */ _t177 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291BC84 */ _t178 = _t177 & 0x00000001u;
|
|
/* 0291BC84 */ if (_t178) goto L_0291BC94; else goto L_0291BC88;
|
|
L_0291BC88: ; // 0x291bc88
|
|
/* 0291BC88 */ cpu->r[4] = 0x00000004u;
|
|
/* 0291BC8C */ cpu->r[5] = cpu->r[17];
|
|
/* 0291BC90 */ rbrew_dispatch(cpu, 0x02d06160u);
|
|
L_0291BC94: ; // 0x291bc94
|
|
/* 0291BC94 */ _t179 = cpu->r[20] + 0x00000000u;
|
|
/* 0291BC94 */ cpu->r[11] = rbrew_read32(cpu->mem, _t179);
|
|
/* 0291BC98 */ cpu->r[3] = cpu->r[11] + 0x000006BCu;
|
|
/* 0291BC9C */ Gambit_fn_028FB628(cpu);
|
|
/* 0291BCA0 */ _t180 = cpu->r[19] + 0x00000000u;
|
|
/* 0291BCA0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t180);
|
|
/* 0291BCA4 */ _t181 = cpu->r[11] + 0x0000018Cu;
|
|
/* 0291BCA4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t181);
|
|
/* 0291BCA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 0291BCAC */ cpu->r[12] = cpu->r[11] + 0x00000180u;
|
|
/* 0291BCB0 */ _t182 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291BCB0 */ _t183 = _t182 & 0x00000001u;
|
|
/* 0291BCB0 */ if (_t183) goto L_0291BCCC; else goto L_0291BCB4;
|
|
L_0291BCB4: ; // 0x291bcb4
|
|
/* 0291BCB4 */ _t184 = cpu->r[12] + 0x00000000u;
|
|
/* 0291BCB4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t184);
|
|
/* 0291BCB8 */ cpu->r[8] = 0x00000001u;
|
|
/* 0291BCBC */ _t185 = cpu->r[12] + 0x00000008u;
|
|
/* 0291BCBC */ cpu->r[6] = rbrew_read32(cpu->mem, _t185);
|
|
/* 0291BCC0 */ cpu->r[7] = 0x00000000u;
|
|
/* 0291BCC4 */ _t186 = cpu->r[12] + 0x00000004u;
|
|
/* 0291BCC4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t186);
|
|
/* 0291BCC8 */ rbrew_dispatch(cpu, 0x02d05930u);
|
|
L_0291BCCC: ; // 0x291bccc
|
|
/* 0291BCCC */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 0291BCD0 */ Gambit_fn_028F1A48(cpu);
|
|
/* 0291BCD4 */ _t187 = cpu->r[23] + 0x00000000u;
|
|
/* 0291BCD4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t187);
|
|
/* 0291BCD8 */ cpu->r[4] = cpu->r[29];
|
|
/* 0291BCDC */ Gambit_fn_02945C10(cpu);
|
|
/* 0291BCE0 */ cpu->r[29] = cpu->r[16];
|
|
/* 0291BCE4 */ cpu->r[21] = cpu->r[26];
|
|
/* 0291BCE8 */ cpu->r[0] = cpu->r[26] + 0x00000003u;
|
|
/* 0291BCEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], 0x00000001u);
|
|
/* 0291BCF0 */ cpu->r[26] = rbrew_rlwinm(cpu->r[0], 0x0000001Eu, 0x00000002u, 0x0000001Fu);
|
|
/* 0291BCF4 */ _t188 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291BCF4 */ _t189 = _t188 & 0x00000001u;
|
|
/* 0291BCF4 */ if (_t189) goto L_0291BCF8; else goto L_0291B9E0;
|
|
L_0291BCF8: ; // 0x291bcf8
|
|
/* 0291BCF8 */ cpu->r[3] = cpu->r[28];
|
|
/* 0291BCFC */ /* nop */
|
|
/* 0291BD00 */ _t190 = cpu->r[1] + 0x000001CCu;
|
|
/* 0291BD00 */ cpu->r[0] = rbrew_read32(cpu->mem, _t190);
|
|
/* 0291BD04 */ cpu->lr = cpu->r[0];
|
|
/* 0291BD08 */ cpu->r[1] = cpu->r[1] + 0x000001C8u;
|
|
/* 0291BD0C */ return;
|
|
}
|
|
|
|
// fn_0291BD10 @ 0x291bd10
|
|
void Gambit_fn_0291BD10(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t117, _t118, _t119, _t120, _t121, _t122, _t123, _t124, _t125, _t126, _t127, _t128, _t129, _t130, _t131, _t132, _t133, _t134, _t135, _t136, _t137, _t138, _t139, _t140, _t141, _t142, _t143, _t144, _t145, _t146, _t147, _t148, _t149, _t150, _t151, _t152, _t153, _t154, _t155, _t156, _t157, _t158, _t159, _t160, _t161, _t162, _t163, _t164, _t165, _t166, _t167, _t168, _t169, _t170, _t171, _t172, _t173, _t174, _t175, _t176, _t177, _t178, _t179, _t180, _t181, _t182, _t183, _t184, _t185, _t186, _t187, _t188, _t189, _t190, _t191, _t192, _t193, _t194, _t195, _t196, _t197, _t198, _t199, _t200, _t201, _t202, _t203, _t204, _t205, _t206, _t207, _t208, _t209, _t210, _t211, _t212, _t213, _t214, _t215, _t216, _t217, _t218, _t219, _t220, _t221, _t222, _t223, _t224, _t225, _t226, _t227, _t228, _t229, _t230, _t231, _t232, _t233, _t234, _t235, _t236, _t237, _t238, _t239, _t240, _t241, _t242, _t243, _t244, _t245, _t246, _t247, _t248, _t249, _t250, _t251, _t252, _t253, _t254, _t255, _t256, _t257, _t258, _t259, _t260, _t261, _t262, _t263, _t264, _t265, _t266, _t267, _t268, _t269, _t270, _t271, _t272, _t273, _t274, _t275, _t276, _t277, _t278, _t279, _t280, _t281, _t282, _t283, _t284, _t285, _t286, _t287, _t288, _t289, _t290, _t291, _t292, _t293, _t294, _t295, _t296, _t297, _t298, _t299, _t300, _t301, _t302, _t303, _t304, _t305, _t306, _t307, _t308, _t309, _t310, _t311, _t312, _t313, _t314, _t315, _t316, _t317, _t318, _t319, _t320, _t321, _t322, _t323, _t324, _t325, _t326, _t327, _t328, _t329, _t330, _t331, _t332, _t333, _t334, _t335, _t336, _t337, _t338, _t339, _t340, _t341, _t342, _t343, _t344, _t345, _t346, _t347, _t348, _t349, _t350, _t351, _t352, _t353, _t354, _t355, _t356, _t357, _t358, _t359, _t360, _t361, _t362, _t363, _t364, _t365, _t366, _t367, _t368, _t369, _t370, _t371, _t372, _t373, _t374, _t375, _t376, _t377, _t378, _t379, _t380, _t381, _t382, _t383, _t384, _t385;
|
|
|
|
L_0291BD10: ; // 0x291bd10
|
|
/* 0291BD10 */ _t0 = cpu->r[1] + 0xFFFFFD38u;
|
|
/* 0291BD10 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291BD10 */ cpu->r[1] = _t0;
|
|
/* 0291BD14 */ /* nop */
|
|
/* 0291BD18 */ _t1 = cpu->r[1] + 0x000002A8u;
|
|
/* 0291BD18 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[30]);
|
|
/* 0291BD1C */ _t2 = cpu->r[1] + 0x000002B8u;
|
|
/* 0291BD1C */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 0291BD20 */ /* nop */
|
|
/* 0291BD24 */ /* nop */
|
|
/* 0291BD28 */ _t3 = cpu->r[1] + 0x000002B0u;
|
|
/* 0291BD28 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[30]);
|
|
/* 0291BD2C */ cpu->r[0] = cpu->lr;
|
|
/* 0291BD30 */ _t4 = cpu->r[1] + 0x00000044u;
|
|
/* 0291BD30 */ rbrew_write32(cpu->mem, _t4, cpu->r[3]);
|
|
/* 0291BD34 */ cpu->r[28] = cpu->r[6];
|
|
/* 0291BD38 */ cpu->r[16] = cpu->r[4];
|
|
/* 0291BD3C */ _t5 = cpu->r[1] + 0x000002CCu;
|
|
/* 0291BD3C */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0291BD40 */ cpu->r[3] = cpu->r[1] + 0x000000A8u;
|
|
/* 0291BD44 */ cpu->r[31] = cpu->r[5];
|
|
/* 0291BD48 */ _t6 = cpu->r[1] + 0x000002C0u;
|
|
/* 0291BD48 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[31]);
|
|
/* 0291BD4C */ cpu->r[29] = cpu->r[16] + 0x0000030Cu;
|
|
/* 0291BD50 */ Gambit_fn_0281E19C(cpu);
|
|
/* 0291BD54 */ _t7 = cpu->r[1] + 0x00000044u;
|
|
/* 0291BD54 */ cpu->r[9] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0291BD58 */ cpu->r[0] = cpu->r[9] + 0x00000208u;
|
|
/* 0291BD5C */ _t8 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0291BD5C */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0291BD60 */ cpu->r[5] = 0x00000000u;
|
|
/* 0291BD64 */ _t9 = cpu->r[1] + 0x000000B4u;
|
|
/* 0291BD64 */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[5]);
|
|
/* 0291BD68 */ cpu->r[12] = 0x00000002u;
|
|
/* 0291BD6C */ _t10 = cpu->r[9] + 0x00000004u;
|
|
/* 0291BD6C */ cpu->r[7] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0291BD70 */ cpu->r[30] = cpu->r[9] + 0x000000ACu;
|
|
/* 0291BD74 */ _t11 = cpu->r[31] + 0x00001568u;
|
|
/* 0291BD74 */ cpu->r[4] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0291BD78 */ cpu->r[27] = 0x10140000u;
|
|
/* 0291BD7C */ cpu->r[14] = cpu->r[7];
|
|
/* 0291BD80 */ _t12 = cpu->r[1] + 0x000000B0u;
|
|
/* 0291BD80 */ rbrew_write32(cpu->mem, _t12, cpu->r[12]);
|
|
/* 0291BD84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 0291BD88 */ cpu->r[4] = 0x101D0000u;
|
|
/* 0291BD8C */ _t13 = cpu->r[1] + 0x000000A8u;
|
|
/* 0291BD8C */ rbrew_write8(cpu->mem, _t13, (uint8_t)cpu->r[5]);
|
|
/* 0291BD90 */ cpu->r[4] = cpu->r[4] + 0xFFFFA504u;
|
|
/* 0291BD94 */ _t14 = cpu->r[1] + 0x000000A9u;
|
|
/* 0291BD94 */ rbrew_write8(cpu->mem, _t14, (uint8_t)cpu->r[5]);
|
|
/* 0291BD98 */ cpu->r[27] = cpu->r[27] + 0x00001884u;
|
|
/* 0291BD9C */ _t15 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0291BD9C */ rbrew_write32(cpu->mem, _t15, cpu->r[4]);
|
|
/* 0291BDA0 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291BDA0 */ _t17 = _t16 & 0x00000001u;
|
|
/* 0291BDA0 */ if (_t17) goto L_0291C088; else goto L_0291BDA4;
|
|
L_0291BDA4: ; // 0x291bda4
|
|
/* 0291BDA4 */ cpu->r[6] = 0x10140000u;
|
|
/* 0291BDA8 */ _t18 = cpu->r[1] + 0x000000A4u;
|
|
/* 0291BDA8 */ rbrew_write32(cpu->mem, _t18, cpu->r[27]);
|
|
/* 0291BDAC */ cpu->r[6] = cpu->r[6] + 0x000023F0u;
|
|
/* 0291BDB0 */ _t19 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0291BDB0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0291BDB4 */ _t20 = cpu->r[1] + 0x000000A0u;
|
|
/* 0291BDB4 */ rbrew_write32(cpu->mem, _t20, cpu->r[6]);
|
|
/* 0291BDB8 */ _t21 = cpu->r[7] + 0x00000008u;
|
|
/* 0291BDB8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0291BDBC */ cpu->r[9] = 0x00000001u;
|
|
/* 0291BDC0 */ _t22 = cpu->r[7] + 0x0000007Cu;
|
|
/* 0291BDC0 */ cpu->r[6] = rbrew_read8(cpu->mem, _t22);
|
|
/* 0291BDC4 */ cpu->r[10] = 0x00000000u;
|
|
/* 0291BDC8 */ cpu->r[5] = 0x00000009u;
|
|
/* 0291BDCC */ _t23 = cpu->r[12] + 0x00000000u;
|
|
/* 0291BDCC */ cpu->r[3] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0291BDD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], cpu->r[6]);
|
|
/* 0291BDD4 */ _t24 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291BDD4 */ _t25 = _t24 & 0x00000001u;
|
|
/* 0291BDD4 */ if (_t25) goto L_0291BDD8; else goto L_0291BDDC;
|
|
L_0291BDD8: ; // 0x291bdd8
|
|
/* 0291BDD8 */ cpu->r[6] = cpu->r[0];
|
|
L_0291BDDC: ; // 0x291bddc
|
|
/* 0291BDDC */ _t26 = cpu->r[1] + 0x00000008u;
|
|
/* 0291BDDC */ rbrew_write32(cpu->mem, _t26, cpu->r[10]);
|
|
/* 0291BDE0 */ cpu->r[8] = 0x00000006u;
|
|
/* 0291BDE4 */ _t27 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291BDE4 */ rbrew_write32(cpu->mem, _t27, cpu->r[9]);
|
|
/* 0291BDE8 */ cpu->r[7] = cpu->r[6];
|
|
/* 0291BDEC */ cpu->r[4] = cpu->r[1] + 0x000000A0u;
|
|
/* 0291BDF0 */ _t28 = cpu->r[1] + 0x00000010u;
|
|
/* 0291BDF0 */ rbrew_write32(cpu->mem, _t28, cpu->r[10]);
|
|
/* 0291BDF4 */ Gambit_fn_0294575C(cpu);
|
|
/* 0291BDF8 */ _t29 = cpu->r[1] + 0x00000044u;
|
|
/* 0291BDF8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0291BDFC */ _t30 = cpu->r[3] + 0x00000004u;
|
|
/* 0291BDFC */ cpu->r[10] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0291BE00 */ _t31 = cpu->r[11] + 0x00000368u;
|
|
/* 0291BE00 */ cpu->r[8] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0291BE04 */ cpu->r[26] = cpu->r[3];
|
|
/* 0291BE08 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[10]);
|
|
/* 0291BE0C */ cpu->r[25] = cpu->r[11] + 0x00000364u;
|
|
/* 0291BE10 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291BE10 */ _t33 = _t32 & 0x00000001u;
|
|
/* 0291BE10 */ if (_t33) goto L_0291BE14; else goto L_0291BEA4;
|
|
L_0291BE14: ; // 0x291be14
|
|
/* 0291BE14 */ _t34 = cpu->r[25] + 0x00000008u;
|
|
/* 0291BE14 */ cpu->r[12] = rbrew_read32(cpu->mem, _t34);
|
|
/* 0291BE18 */ _t35 = cpu->r[26] + 0x00000008u;
|
|
/* 0291BE18 */ cpu->r[4] = rbrew_read32(cpu->mem, _t35);
|
|
/* 0291BE1C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[4]);
|
|
/* 0291BE20 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291BE20 */ _t37 = _t36 & 0x00000001u;
|
|
/* 0291BE20 */ if (_t37) goto L_0291BE24; else goto L_0291BEA4;
|
|
L_0291BE24: ; // 0x291be24
|
|
/* 0291BE24 */ _t38 = cpu->r[25] + 0x0000000Cu;
|
|
/* 0291BE24 */ cpu->r[5] = rbrew_read32(cpu->mem, _t38);
|
|
/* 0291BE28 */ _t39 = cpu->r[26] + 0x0000000Cu;
|
|
/* 0291BE28 */ cpu->r[6] = rbrew_read32(cpu->mem, _t39);
|
|
/* 0291BE2C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[6]);
|
|
/* 0291BE30 */ _t40 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291BE30 */ _t41 = _t40 & 0x00000001u;
|
|
/* 0291BE30 */ if (_t41) goto L_0291BE34; else goto L_0291BEA4;
|
|
L_0291BE34: ; // 0x291be34
|
|
/* 0291BE34 */ _t42 = cpu->r[25] + 0x00000010u;
|
|
/* 0291BE34 */ cpu->r[7] = rbrew_read32(cpu->mem, _t42);
|
|
/* 0291BE38 */ _t43 = cpu->r[26] + 0x00000010u;
|
|
/* 0291BE38 */ cpu->r[8] = rbrew_read32(cpu->mem, _t43);
|
|
/* 0291BE3C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[8]);
|
|
/* 0291BE40 */ _t44 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291BE40 */ _t45 = _t44 & 0x00000001u;
|
|
/* 0291BE40 */ if (_t45) goto L_0291BE44; else goto L_0291BEA4;
|
|
L_0291BE44: ; // 0x291be44
|
|
/* 0291BE44 */ _t46 = cpu->r[25] + 0x00000014u;
|
|
/* 0291BE44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t46);
|
|
/* 0291BE48 */ _t47 = cpu->r[26] + 0x00000014u;
|
|
/* 0291BE48 */ cpu->r[9] = rbrew_read32(cpu->mem, _t47);
|
|
/* 0291BE4C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[9]);
|
|
/* 0291BE50 */ _t48 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291BE50 */ _t49 = _t48 & 0x00000001u;
|
|
/* 0291BE50 */ if (_t49) goto L_0291BE54; else goto L_0291BEA4;
|
|
L_0291BE54: ; // 0x291be54
|
|
/* 0291BE54 */ _t50 = cpu->r[25] + 0x00000018u;
|
|
/* 0291BE54 */ cpu->r[10] = rbrew_read32(cpu->mem, _t50);
|
|
/* 0291BE58 */ _t51 = cpu->r[26] + 0x00000018u;
|
|
/* 0291BE58 */ cpu->r[11] = rbrew_read32(cpu->mem, _t51);
|
|
/* 0291BE5C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[11]);
|
|
/* 0291BE60 */ _t52 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291BE60 */ _t53 = _t52 & 0x00000001u;
|
|
/* 0291BE60 */ if (_t53) goto L_0291BE64; else goto L_0291BEA4;
|
|
L_0291BE64: ; // 0x291be64
|
|
/* 0291BE64 */ _t54 = cpu->r[25] + 0x00000038u;
|
|
/* 0291BE64 */ cpu->r[12] = rbrew_read32(cpu->mem, _t54);
|
|
/* 0291BE68 */ _t55 = cpu->r[26] + 0x00000038u;
|
|
/* 0291BE68 */ cpu->r[4] = rbrew_read32(cpu->mem, _t55);
|
|
/* 0291BE6C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[4]);
|
|
/* 0291BE70 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291BE70 */ _t57 = _t56 & 0x00000001u;
|
|
/* 0291BE70 */ if (_t57) goto L_0291BE74; else goto L_0291BEA4;
|
|
L_0291BE74: ; // 0x291be74
|
|
/* 0291BE74 */ _t58 = cpu->r[25] + 0x00000034u;
|
|
/* 0291BE74 */ cpu->r[5] = rbrew_read32(cpu->mem, _t58);
|
|
/* 0291BE78 */ _t59 = cpu->r[26] + 0x00000034u;
|
|
/* 0291BE78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t59);
|
|
/* 0291BE7C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[0]);
|
|
/* 0291BE80 */ _t60 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291BE80 */ _t61 = _t60 & 0x00000001u;
|
|
/* 0291BE80 */ if (_t61) goto L_0291BE84; else goto L_0291BEA4;
|
|
L_0291BE84: ; // 0x291be84
|
|
/* 0291BE84 */ _t62 = cpu->r[25] + 0x00000020u;
|
|
/* 0291BE84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t62);
|
|
/* 0291BE88 */ _t63 = cpu->r[26] + 0x00000020u;
|
|
/* 0291BE88 */ cpu->r[6] = rbrew_read32(cpu->mem, _t63);
|
|
/* 0291BE8C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[6]);
|
|
/* 0291BE90 */ _t64 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291BE90 */ _t65 = _t64 & 0x00000001u;
|
|
/* 0291BE90 */ if (_t65) goto L_0291BE94; else goto L_0291BEA4;
|
|
L_0291BE94: ; // 0x291be94
|
|
/* 0291BE94 */ _t66 = cpu->r[25] + 0x0000001Cu;
|
|
/* 0291BE94 */ cpu->r[0] = rbrew_read32(cpu->mem, _t66);
|
|
/* 0291BE98 */ _t67 = cpu->r[26] + 0x0000001Cu;
|
|
/* 0291BE98 */ cpu->r[7] = rbrew_read32(cpu->mem, _t67);
|
|
/* 0291BE9C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 0291BEA0 */ _t68 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291BEA0 */ _t69 = _t68 & 0x00000001u;
|
|
/* 0291BEA0 */ if (_t69) goto L_0291BF1C; else goto L_0291BEA4;
|
|
L_0291BEA4: ; // 0x291bea4
|
|
/* 0291BEA4 */ cpu->r[3] = cpu->r[25];
|
|
/* 0291BEA8 */ cpu->r[4] = cpu->r[26];
|
|
/* 0291BEAC */ Gambit_fn_028F9D94(cpu);
|
|
/* 0291BEB0 */ cpu->r[3] = cpu->r[1] + 0x000000A8u;
|
|
/* 0291BEB4 */ Gambit_fn_0281E2C8(cpu);
|
|
/* 0291BEB8 */ cpu->r[6] = 0x00000000u;
|
|
/* 0291BEBC */ cpu->r[5] = cpu->r[14];
|
|
/* 0291BEC0 */ _t70 = cpu->r[1] + 0x00000044u;
|
|
/* 0291BEC0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t70);
|
|
/* 0291BEC4 */ cpu->r[8] = cpu->r[6];
|
|
/* 0291BEC8 */ cpu->r[4] = cpu->r[26];
|
|
/* 0291BECC */ cpu->r[9] = cpu->r[28];
|
|
/* 0291BED0 */ cpu->r[7] = cpu->r[6];
|
|
/* 0291BED4 */ Gambit_fn_0291B28C(cpu);
|
|
/* 0291BED8 */ cpu->r[7] = cpu->r[3];
|
|
/* 0291BEDC */ _t71 = cpu->r[1] + 0x00000044u;
|
|
/* 0291BEDC */ cpu->r[3] = rbrew_read32(cpu->mem, _t71);
|
|
/* 0291BEE0 */ cpu->r[6] = 0x00000000u;
|
|
/* 0291BEE4 */ cpu->r[5] = cpu->r[25];
|
|
/* 0291BEE8 */ cpu->r[4] = cpu->r[31] + 0x00000008u;
|
|
/* 0291BEEC */ Gambit_fn_0291B660(cpu);
|
|
/* 0291BEF0 */ _t72 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0291BEF0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t72);
|
|
/* 0291BEF4 */ cpu->r[28] = cpu->r[3];
|
|
/* 0291BEF8 */ _t73 = cpu->r[9] + 0x00000000u;
|
|
/* 0291BEF8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t73);
|
|
/* 0291BEFC */ cpu->r[4] = cpu->r[26];
|
|
/* 0291BF00 */ Gambit_fn_02945C10(cpu);
|
|
/* 0291BF04 */ _t74 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0291BF04 */ cpu->r[8] = rbrew_read32(cpu->mem, _t74);
|
|
/* 0291BF08 */ _t75 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0291BF08 */ cpu->r[11] = rbrew_read32(cpu->mem, _t75);
|
|
/* 0291BF0C */ _t76 = cpu->r[8] + 0x00000004u;
|
|
/* 0291BF0C */ cpu->r[10] = rbrew_read32(cpu->mem, _t76);
|
|
/* 0291BF10 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[11]);
|
|
/* 0291BF14 */ _t77 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291BF14 */ _t78 = _t77 & 0x00000001u;
|
|
/* 0291BF14 */ if (_t78) goto L_0291BF18; else goto L_0291C050;
|
|
L_0291BF18: ; // 0x291bf18
|
|
/* 0291BF18 */ goto L_0291BF9C;
|
|
L_0291BF1C: ; // 0x291bf1c
|
|
/* 0291BF1C */ _t79 = cpu->r[26] + 0x00000028u;
|
|
/* 0291BF1C */ cpu->r[8] = rbrew_read32(cpu->mem, _t79);
|
|
/* 0291BF20 */ _t80 = cpu->r[26] + 0x00000030u;
|
|
/* 0291BF20 */ cpu->r[9] = rbrew_read32(cpu->mem, _t80);
|
|
/* 0291BF24 */ _t81 = cpu->r[25] + 0x000000A8u;
|
|
/* 0291BF24 */ rbrew_write32(cpu->mem, _t81, cpu->r[8]);
|
|
/* 0291BF28 */ _t82 = cpu->r[25] + 0x00000028u;
|
|
/* 0291BF28 */ rbrew_write32(cpu->mem, _t82, cpu->r[8]);
|
|
/* 0291BF2C */ _t83 = cpu->r[25] + 0x00000030u;
|
|
/* 0291BF2C */ rbrew_write32(cpu->mem, _t83, cpu->r[9]);
|
|
/* 0291BF30 */ cpu->r[3] = cpu->r[1] + 0x000000A8u;
|
|
/* 0291BF34 */ _t84 = cpu->r[25] + 0x000000B0u;
|
|
/* 0291BF34 */ rbrew_write32(cpu->mem, _t84, cpu->r[9]);
|
|
/* 0291BF38 */ Gambit_fn_0281E2C8(cpu);
|
|
/* 0291BF3C */ cpu->r[6] = 0x00000000u;
|
|
/* 0291BF40 */ cpu->r[5] = cpu->r[14];
|
|
/* 0291BF44 */ _t85 = cpu->r[1] + 0x00000044u;
|
|
/* 0291BF44 */ cpu->r[3] = rbrew_read32(cpu->mem, _t85);
|
|
/* 0291BF48 */ cpu->r[8] = cpu->r[6];
|
|
/* 0291BF4C */ cpu->r[4] = cpu->r[26];
|
|
/* 0291BF50 */ cpu->r[9] = cpu->r[28];
|
|
/* 0291BF54 */ cpu->r[7] = cpu->r[6];
|
|
/* 0291BF58 */ Gambit_fn_0291B28C(cpu);
|
|
/* 0291BF5C */ cpu->r[7] = cpu->r[3];
|
|
/* 0291BF60 */ _t86 = cpu->r[1] + 0x00000044u;
|
|
/* 0291BF60 */ cpu->r[3] = rbrew_read32(cpu->mem, _t86);
|
|
/* 0291BF64 */ cpu->r[6] = 0x00000000u;
|
|
/* 0291BF68 */ cpu->r[5] = cpu->r[25];
|
|
/* 0291BF6C */ cpu->r[4] = cpu->r[31] + 0x00000008u;
|
|
/* 0291BF70 */ Gambit_fn_0291B660(cpu);
|
|
/* 0291BF74 */ _t87 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0291BF74 */ cpu->r[9] = rbrew_read32(cpu->mem, _t87);
|
|
/* 0291BF78 */ cpu->r[28] = cpu->r[3];
|
|
/* 0291BF7C */ _t88 = cpu->r[9] + 0x00000000u;
|
|
/* 0291BF7C */ cpu->r[3] = rbrew_read32(cpu->mem, _t88);
|
|
/* 0291BF80 */ cpu->r[4] = cpu->r[26];
|
|
/* 0291BF84 */ Gambit_fn_02945C10(cpu);
|
|
/* 0291BF88 */ _t89 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0291BF88 */ cpu->r[8] = rbrew_read32(cpu->mem, _t89);
|
|
/* 0291BF8C */ _t90 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0291BF8C */ cpu->r[11] = rbrew_read32(cpu->mem, _t90);
|
|
/* 0291BF90 */ _t91 = cpu->r[8] + 0x00000004u;
|
|
/* 0291BF90 */ cpu->r[10] = rbrew_read32(cpu->mem, _t91);
|
|
/* 0291BF94 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[11]);
|
|
/* 0291BF98 */ _t92 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291BF98 */ _t93 = _t92 & 0x00000001u;
|
|
/* 0291BF98 */ if (_t93) goto L_0291BF9C; else goto L_0291C050;
|
|
L_0291BF9C: ; // 0x291bf9c
|
|
/* 0291BF9C */ _t94 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0291BF9C */ cpu->r[7] = rbrew_read32(cpu->mem, _t94);
|
|
/* 0291BFA0 */ _t95 = cpu->r[31] + 0x00000010u;
|
|
/* 0291BFA0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t95);
|
|
/* 0291BFA4 */ _t96 = cpu->r[7] + 0x00000008u;
|
|
/* 0291BFA4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t96);
|
|
/* 0291BFA8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[4]);
|
|
/* 0291BFAC */ _t97 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291BFAC */ _t98 = _t97 & 0x00000001u;
|
|
/* 0291BFAC */ if (_t98) goto L_0291BFB0; else goto L_0291C050;
|
|
L_0291BFB0: ; // 0x291bfb0
|
|
/* 0291BFB0 */ _t99 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0291BFB0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t99);
|
|
/* 0291BFB4 */ _t100 = cpu->r[31] + 0x00000014u;
|
|
/* 0291BFB4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t100);
|
|
/* 0291BFB8 */ _t101 = cpu->r[6] + 0x0000000Cu;
|
|
/* 0291BFB8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t101);
|
|
/* 0291BFBC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[7]);
|
|
/* 0291BFC0 */ _t102 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291BFC0 */ _t103 = _t102 & 0x00000001u;
|
|
/* 0291BFC0 */ if (_t103) goto L_0291BFC4; else goto L_0291C050;
|
|
L_0291BFC4: ; // 0x291bfc4
|
|
/* 0291BFC4 */ _t104 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0291BFC4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t104);
|
|
/* 0291BFC8 */ _t105 = cpu->r[31] + 0x00000018u;
|
|
/* 0291BFC8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t105);
|
|
/* 0291BFCC */ _t106 = cpu->r[4] + 0x00000010u;
|
|
/* 0291BFCC */ cpu->r[8] = rbrew_read32(cpu->mem, _t106);
|
|
/* 0291BFD0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[9]);
|
|
/* 0291BFD4 */ _t107 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291BFD4 */ _t108 = _t107 & 0x00000001u;
|
|
/* 0291BFD4 */ if (_t108) goto L_0291BFD8; else goto L_0291C050;
|
|
L_0291BFD8: ; // 0x291bfd8
|
|
/* 0291BFD8 */ _t109 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0291BFD8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t109);
|
|
/* 0291BFDC */ _t110 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0291BFDC */ cpu->r[12] = rbrew_read32(cpu->mem, _t110);
|
|
/* 0291BFE0 */ _t111 = cpu->r[11] + 0x00000014u;
|
|
/* 0291BFE0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t111);
|
|
/* 0291BFE4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[12]);
|
|
/* 0291BFE8 */ _t112 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291BFE8 */ _t113 = _t112 & 0x00000001u;
|
|
/* 0291BFE8 */ if (_t113) goto L_0291BFEC; else goto L_0291C050;
|
|
L_0291BFEC: ; // 0x291bfec
|
|
/* 0291BFEC */ _t114 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0291BFEC */ cpu->r[10] = rbrew_read32(cpu->mem, _t114);
|
|
/* 0291BFF0 */ _t115 = cpu->r[31] + 0x00000020u;
|
|
/* 0291BFF0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t115);
|
|
/* 0291BFF4 */ _t116 = cpu->r[10] + 0x00000018u;
|
|
/* 0291BFF4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t116);
|
|
/* 0291BFF8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[0]);
|
|
/* 0291BFFC */ _t117 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291BFFC */ _t118 = _t117 & 0x00000001u;
|
|
/* 0291BFFC */ if (_t118) goto L_0291C000; else goto L_0291C050;
|
|
L_0291C000: ; // 0x291c000
|
|
/* 0291C000 */ _t119 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0291C000 */ cpu->r[8] = rbrew_read32(cpu->mem, _t119);
|
|
/* 0291C004 */ _t120 = cpu->r[31] + 0x00000040u;
|
|
/* 0291C004 */ cpu->r[6] = rbrew_read32(cpu->mem, _t120);
|
|
/* 0291C008 */ _t121 = cpu->r[8] + 0x00000038u;
|
|
/* 0291C008 */ cpu->r[5] = rbrew_read32(cpu->mem, _t121);
|
|
/* 0291C00C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[6]);
|
|
/* 0291C010 */ _t122 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291C010 */ _t123 = _t122 & 0x00000001u;
|
|
/* 0291C010 */ if (_t123) goto L_0291C014; else goto L_0291C050;
|
|
L_0291C014: ; // 0x291c014
|
|
/* 0291C014 */ _t124 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0291C014 */ cpu->r[7] = rbrew_read32(cpu->mem, _t124);
|
|
/* 0291C018 */ _t125 = cpu->r[31] + 0x0000003Cu;
|
|
/* 0291C018 */ cpu->r[8] = rbrew_read32(cpu->mem, _t125);
|
|
/* 0291C01C */ _t126 = cpu->r[7] + 0x00000034u;
|
|
/* 0291C01C */ cpu->r[7] = rbrew_read32(cpu->mem, _t126);
|
|
/* 0291C020 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[8]);
|
|
/* 0291C024 */ _t127 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291C024 */ _t128 = _t127 & 0x00000001u;
|
|
/* 0291C024 */ if (_t128) goto L_0291C028; else goto L_0291C050;
|
|
L_0291C028: ; // 0x291c028
|
|
/* 0291C028 */ _t129 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0291C028 */ cpu->r[6] = rbrew_read32(cpu->mem, _t129);
|
|
/* 0291C02C */ _t130 = cpu->r[31] + 0x00000028u;
|
|
/* 0291C02C */ cpu->r[10] = rbrew_read32(cpu->mem, _t130);
|
|
/* 0291C030 */ _t131 = cpu->r[6] + 0x00000020u;
|
|
/* 0291C030 */ cpu->r[9] = rbrew_read32(cpu->mem, _t131);
|
|
/* 0291C034 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[10]);
|
|
/* 0291C038 */ _t132 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291C038 */ _t133 = _t132 & 0x00000001u;
|
|
/* 0291C038 */ if (_t133) goto L_0291C03C; else goto L_0291C050;
|
|
L_0291C03C: ; // 0x291c03c
|
|
/* 0291C03C */ _t134 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0291C03C */ cpu->r[5] = rbrew_read32(cpu->mem, _t134);
|
|
/* 0291C040 */ _t135 = cpu->r[31] + 0x00000024u;
|
|
/* 0291C040 */ cpu->r[12] = rbrew_read32(cpu->mem, _t135);
|
|
/* 0291C044 */ _t136 = cpu->r[5] + 0x0000001Cu;
|
|
/* 0291C044 */ cpu->r[11] = rbrew_read32(cpu->mem, _t136);
|
|
/* 0291C048 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[12]);
|
|
/* 0291C04C */ _t137 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291C04C */ _t138 = _t137 & 0x00000001u;
|
|
/* 0291C04C */ if (_t138) goto L_0291C068; else goto L_0291C050;
|
|
L_0291C050: ; // 0x291c050
|
|
/* 0291C050 */ _t139 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0291C050 */ cpu->r[3] = rbrew_read32(cpu->mem, _t139);
|
|
/* 0291C054 */ cpu->r[4] = cpu->r[31] + 0x00000008u;
|
|
/* 0291C058 */ Gambit_fn_028F9D94(cpu);
|
|
/* 0291C05C */ _t140 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0291C05C */ cpu->r[3] = rbrew_read32(cpu->mem, _t140);
|
|
/* 0291C060 */ Gambit_fn_028F714C(cpu);
|
|
/* 0291C064 */ goto L_0291C088;
|
|
L_0291C068: ; // 0x291c068
|
|
/* 0291C068 */ _t141 = cpu->r[31] + 0x00000030u;
|
|
/* 0291C068 */ cpu->r[5] = rbrew_read32(cpu->mem, _t141);
|
|
/* 0291C06C */ _t142 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0291C06C */ cpu->r[3] = rbrew_read32(cpu->mem, _t142);
|
|
/* 0291C070 */ _t143 = cpu->r[31] + 0x00000038u;
|
|
/* 0291C070 */ cpu->r[0] = rbrew_read32(cpu->mem, _t143);
|
|
/* 0291C074 */ _t144 = cpu->r[3] + 0x000000A8u;
|
|
/* 0291C074 */ rbrew_write32(cpu->mem, _t144, cpu->r[5]);
|
|
/* 0291C078 */ _t145 = cpu->r[3] + 0x00000028u;
|
|
/* 0291C078 */ rbrew_write32(cpu->mem, _t145, cpu->r[5]);
|
|
/* 0291C07C */ _t146 = cpu->r[3] + 0x00000030u;
|
|
/* 0291C07C */ rbrew_write32(cpu->mem, _t146, cpu->r[0]);
|
|
/* 0291C080 */ _t147 = cpu->r[3] + 0x000000B0u;
|
|
/* 0291C080 */ rbrew_write32(cpu->mem, _t147, cpu->r[0]);
|
|
/* 0291C084 */ Gambit_fn_028F714C(cpu);
|
|
L_0291C088: ; // 0x291c088
|
|
/* 0291C088 */ cpu->r[3] = cpu->r[16];
|
|
/* 0291C08C */ cpu->r[4] = 0x00000000u;
|
|
/* 0291C090 */ cpu->r[5] = 0x00000001u;
|
|
/* 0291C094 */ Gambit_fn_0296203C(cpu);
|
|
/* 0291C098 */ _t148 = cpu->r[16] + 0x00000014u;
|
|
/* 0291C098 */ cpu->r[0] = rbrew_read32(cpu->mem, _t148);
|
|
/* 0291C09C */ cpu->r[10] = 0x00000000u;
|
|
/* 0291C0A0 */ _t149 = cpu->r[1] + 0x00000014u;
|
|
/* 0291C0A0 */ rbrew_write32(cpu->mem, _t149, cpu->r[0]);
|
|
/* 0291C0A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0291C0A8 */ _t150 = cpu->r[1] + 0x00000040u;
|
|
/* 0291C0A8 */ rbrew_write32(cpu->mem, _t150, cpu->r[10]);
|
|
/* 0291C0AC */ _t151 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291C0AC */ _t152 = _t151 & 0x00000001u;
|
|
/* 0291C0AC */ if (_t152) goto L_0291C7C4; else goto L_0291C0B0;
|
|
L_0291C0B0: ; // 0x291c0b0
|
|
/* 0291C0B0 */ cpu->r[9] = 0x101F0000u;
|
|
/* 0291C0B4 */ cpu->r[8] = 0x101D0000u;
|
|
/* 0291C0B8 */ cpu->r[9] = cpu->r[9] + 0x00005BECu;
|
|
/* 0291C0BC */ cpu->r[8] = cpu->r[8] + 0xFFFFA544u;
|
|
/* 0291C0C0 */ _t153 = cpu->r[1] + 0x00000020u;
|
|
/* 0291C0C0 */ rbrew_write32(cpu->mem, _t153, cpu->r[9]);
|
|
/* 0291C0C4 */ cpu->r[7] = 0x101D0000u;
|
|
/* 0291C0C8 */ cpu->r[5] = 0x101D0000u;
|
|
/* 0291C0CC */ _t154 = cpu->r[1] + 0x00000024u;
|
|
/* 0291C0CC */ rbrew_write32(cpu->mem, _t154, cpu->r[8]);
|
|
/* 0291C0D0 */ cpu->r[0] = 0x10140000u;
|
|
/* 0291C0D4 */ cpu->r[5] = cpu->r[5] + 0xFFFFA330u;
|
|
/* 0291C0D8 */ _t155 = cpu->r[1] + 0x00000030u;
|
|
/* 0291C0D8 */ rbrew_write32(cpu->mem, _t155, cpu->r[27]);
|
|
/* 0291C0DC */ cpu->r[0] = cpu->r[0] + 0x000023FCu;
|
|
/* 0291C0E0 */ cpu->r[7] = cpu->r[7] + 0xFFFFA52Cu;
|
|
/* 0291C0E4 */ _t156 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0291C0E4 */ rbrew_write32(cpu->mem, _t156, cpu->r[5]);
|
|
/* 0291C0E8 */ cpu->r[27] = 0x101F0000u;
|
|
/* 0291C0EC */ _t157 = cpu->r[1] + 0x00000028u;
|
|
/* 0291C0EC */ rbrew_write32(cpu->mem, _t157, cpu->r[7]);
|
|
/* 0291C0F0 */ cpu->r[19] = 0x101F0000u;
|
|
/* 0291C0F4 */ _t158 = cpu->r[1] + 0x00000034u;
|
|
/* 0291C0F4 */ rbrew_write32(cpu->mem, _t158, cpu->r[0]);
|
|
L_0291C0F8: ; // 0x291c0f8
|
|
/* 0291C0F8 */ _t159 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0291C0F8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t159);
|
|
/* 0291C0FC */ _t160 = cpu->r[1] + 0x00000044u;
|
|
/* 0291C0FC */ cpu->r[11] = rbrew_read32(cpu->mem, _t160);
|
|
/* 0291C100 */ cpu->r[9] = 0x00000000u;
|
|
/* 0291C104 */ _t161 = cpu->r[10] + 0x00000000u;
|
|
/* 0291C104 */ cpu->r[3] = rbrew_read32(cpu->mem, _t161);
|
|
/* 0291C108 */ cpu->r[10] = cpu->r[9];
|
|
/* 0291C10C */ _t162 = cpu->r[11] + 0x00000004u;
|
|
/* 0291C10C */ cpu->r[11] = rbrew_read32(cpu->mem, _t162);
|
|
/* 0291C110 */ _t163 = cpu->r[1] + 0x00000030u;
|
|
/* 0291C110 */ cpu->r[7] = rbrew_read32(cpu->mem, _t163);
|
|
/* 0291C114 */ _t164 = cpu->r[11] + 0x00000008u;
|
|
/* 0291C114 */ cpu->r[0] = rbrew_read32(cpu->mem, _t164);
|
|
/* 0291C118 */ _t165 = cpu->r[1] + 0x00000040u;
|
|
/* 0291C118 */ cpu->r[8] = rbrew_read32(cpu->mem, _t165);
|
|
/* 0291C11C */ _t166 = cpu->r[11] + 0x0000007Cu;
|
|
/* 0291C11C */ cpu->r[6] = rbrew_read8(cpu->mem, _t166);
|
|
/* 0291C120 */ cpu->r[4] = cpu->r[1] + 0x00000068u;
|
|
/* 0291C124 */ /* nop */
|
|
/* 0291C128 */ _t167 = cpu->r[1] + 0x0000006Cu;
|
|
/* 0291C128 */ rbrew_write32(cpu->mem, _t167, cpu->r[7]);
|
|
/* 0291C12C */ cpu->r[8] = 0x00000001u;
|
|
/* 0291C130 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], cpu->r[26]);
|
|
/* 0291C134 */ _t168 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291C134 */ _t169 = _t168 & 0x00000001u;
|
|
/* 0291C134 */ if (_t169) goto L_0291C138; else goto L_0291C13C;
|
|
L_0291C138: ; // 0x291c138
|
|
/* 0291C138 */ cpu->r[26] = cpu->r[6];
|
|
L_0291C13C: ; // 0x291c13c
|
|
/* 0291C13C */ _t170 = cpu->r[1] + 0x00000034u;
|
|
/* 0291C13C */ cpu->r[6] = rbrew_read32(cpu->mem, _t170);
|
|
/* 0291C140 */ _t171 = cpu->r[1] + 0x00000008u;
|
|
/* 0291C140 */ rbrew_write32(cpu->mem, _t171, cpu->r[8]);
|
|
/* 0291C144 */ cpu->r[7] = cpu->r[26];
|
|
/* 0291C148 */ _t172 = cpu->r[1] + 0x00000068u;
|
|
/* 0291C148 */ rbrew_write32(cpu->mem, _t172, cpu->r[6]);
|
|
/* 0291C14C */ cpu->r[6] = cpu->r[26];
|
|
/* 0291C150 */ cpu->r[5] = 0x0000001Du;
|
|
/* 0291C154 */ _t173 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291C154 */ rbrew_write32(cpu->mem, _t173, cpu->r[9]);
|
|
/* 0291C158 */ Gambit_fn_029456B0(cpu);
|
|
/* 0291C15C */ cpu->r[21] = cpu->r[3];
|
|
/* 0291C160 */ cpu->r[3] = cpu->r[1] + 0x00000120u;
|
|
/* 0291C164 */ Gambit_fn_028F18E8(cpu);
|
|
/* 0291C168 */ cpu->r[3] = cpu->r[1] + 0x00000120u;
|
|
/* 0291C16C */ cpu->r[4] = cpu->r[21];
|
|
/* 0291C170 */ Gambit_fn_0291B0F0(cpu);
|
|
/* 0291C174 */ _t174 = cpu->r[30] + 0x00000004u;
|
|
/* 0291C174 */ cpu->r[5] = rbrew_read32(cpu->mem, _t174);
|
|
/* 0291C178 */ _t175 = cpu->r[21] + 0x00000004u;
|
|
/* 0291C178 */ cpu->r[6] = rbrew_read32(cpu->mem, _t175);
|
|
/* 0291C17C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[6]);
|
|
/* 0291C180 */ _t176 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291C180 */ _t177 = _t176 & 0x00000001u;
|
|
/* 0291C180 */ if (_t177) goto L_0291C184; else goto L_0291C214;
|
|
L_0291C184: ; // 0x291c184
|
|
/* 0291C184 */ _t178 = cpu->r[30] + 0x00000008u;
|
|
/* 0291C184 */ cpu->r[7] = rbrew_read32(cpu->mem, _t178);
|
|
/* 0291C188 */ _t179 = cpu->r[21] + 0x00000008u;
|
|
/* 0291C188 */ cpu->r[8] = rbrew_read32(cpu->mem, _t179);
|
|
/* 0291C18C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[8]);
|
|
/* 0291C190 */ _t180 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291C190 */ _t181 = _t180 & 0x00000001u;
|
|
/* 0291C190 */ if (_t181) goto L_0291C194; else goto L_0291C214;
|
|
L_0291C194: ; // 0x291c194
|
|
/* 0291C194 */ _t182 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0291C194 */ cpu->r[9] = rbrew_read32(cpu->mem, _t182);
|
|
/* 0291C198 */ _t183 = cpu->r[21] + 0x0000000Cu;
|
|
/* 0291C198 */ cpu->r[10] = rbrew_read32(cpu->mem, _t183);
|
|
/* 0291C19C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[10]);
|
|
/* 0291C1A0 */ _t184 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291C1A0 */ _t185 = _t184 & 0x00000001u;
|
|
/* 0291C1A0 */ if (_t185) goto L_0291C1A4; else goto L_0291C214;
|
|
L_0291C1A4: ; // 0x291c1a4
|
|
/* 0291C1A4 */ _t186 = cpu->r[30] + 0x00000010u;
|
|
/* 0291C1A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t186);
|
|
/* 0291C1A8 */ _t187 = cpu->r[21] + 0x00000010u;
|
|
/* 0291C1A8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t187);
|
|
/* 0291C1AC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[11]);
|
|
/* 0291C1B0 */ _t188 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291C1B0 */ _t189 = _t188 & 0x00000001u;
|
|
/* 0291C1B0 */ if (_t189) goto L_0291C1B4; else goto L_0291C214;
|
|
L_0291C1B4: ; // 0x291c1b4
|
|
/* 0291C1B4 */ _t190 = cpu->r[30] + 0x00000014u;
|
|
/* 0291C1B4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t190);
|
|
/* 0291C1B8 */ _t191 = cpu->r[21] + 0x00000014u;
|
|
/* 0291C1B8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t191);
|
|
/* 0291C1BC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[4]);
|
|
/* 0291C1C0 */ _t192 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291C1C0 */ _t193 = _t192 & 0x00000001u;
|
|
/* 0291C1C0 */ if (_t193) goto L_0291C1C4; else goto L_0291C214;
|
|
L_0291C1C4: ; // 0x291c1c4
|
|
/* 0291C1C4 */ _t194 = cpu->r[30] + 0x00000018u;
|
|
/* 0291C1C4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t194);
|
|
/* 0291C1C8 */ _t195 = cpu->r[21] + 0x00000018u;
|
|
/* 0291C1C8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t195);
|
|
/* 0291C1CC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[6]);
|
|
/* 0291C1D0 */ _t196 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291C1D0 */ _t197 = _t196 & 0x00000001u;
|
|
/* 0291C1D0 */ if (_t197) goto L_0291C1D4; else goto L_0291C214;
|
|
L_0291C1D4: ; // 0x291c1d4
|
|
/* 0291C1D4 */ _t198 = cpu->r[30] + 0x00000038u;
|
|
/* 0291C1D4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t198);
|
|
/* 0291C1D8 */ _t199 = cpu->r[21] + 0x00000038u;
|
|
/* 0291C1D8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t199);
|
|
/* 0291C1DC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[8]);
|
|
/* 0291C1E0 */ _t200 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291C1E0 */ _t201 = _t200 & 0x00000001u;
|
|
/* 0291C1E0 */ if (_t201) goto L_0291C1E4; else goto L_0291C214;
|
|
L_0291C1E4: ; // 0x291c1e4
|
|
/* 0291C1E4 */ _t202 = cpu->r[30] + 0x00000034u;
|
|
/* 0291C1E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t202);
|
|
/* 0291C1E8 */ _t203 = cpu->r[21] + 0x00000034u;
|
|
/* 0291C1E8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t203);
|
|
/* 0291C1EC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[9]);
|
|
/* 0291C1F0 */ _t204 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291C1F0 */ _t205 = _t204 & 0x00000001u;
|
|
/* 0291C1F0 */ if (_t205) goto L_0291C1F4; else goto L_0291C214;
|
|
L_0291C1F4: ; // 0x291c1f4
|
|
/* 0291C1F4 */ _t206 = cpu->r[30] + 0x00000020u;
|
|
/* 0291C1F4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t206);
|
|
/* 0291C1F8 */ _t207 = cpu->r[21] + 0x00000020u;
|
|
/* 0291C1F8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t207);
|
|
/* 0291C1FC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[11]);
|
|
/* 0291C200 */ _t208 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291C200 */ _t209 = _t208 & 0x00000001u;
|
|
/* 0291C200 */ if (_t209) goto L_0291C204; else goto L_0291C214;
|
|
L_0291C204: ; // 0x291c204
|
|
/* 0291C204 */ _t210 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0291C204 */ cpu->r[12] = rbrew_read32(cpu->mem, _t210);
|
|
/* 0291C208 */ _t211 = cpu->r[21] + 0x0000001Cu;
|
|
/* 0291C208 */ cpu->r[5] = rbrew_read32(cpu->mem, _t211);
|
|
/* 0291C20C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[5]);
|
|
/* 0291C210 */ _t212 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291C210 */ _t213 = _t212 & 0x00000001u;
|
|
/* 0291C210 */ if (_t213) goto L_0291C294; else goto L_0291C214;
|
|
L_0291C214: ; // 0x291c214
|
|
/* 0291C214 */ cpu->r[4] = cpu->r[21];
|
|
/* 0291C218 */ cpu->r[3] = cpu->r[30];
|
|
/* 0291C21C */ Gambit_fn_028F9D94(cpu);
|
|
/* 0291C220 */ cpu->r[3] = cpu->r[30];
|
|
/* 0291C224 */ Gambit_fn_028F714C(cpu);
|
|
/* 0291C228 */ cpu->r[4] = 0x00000006u;
|
|
/* 0291C22C */ _t214 = cpu->r[1] + 0x00000040u;
|
|
/* 0291C22C */ cpu->r[5] = rbrew_read32(cpu->mem, _t214);
|
|
/* 0291C230 */ cpu->r[9] = 0x10140000u;
|
|
/* 0291C234 */ _t215 = cpu->r[1] + 0x00000018u;
|
|
/* 0291C234 */ rbrew_write32(cpu->mem, _t215, cpu->r[4]);
|
|
/* 0291C238 */ cpu->r[10] = 0x10140000u;
|
|
/* 0291C23C */ _t216 = cpu->r[9] + 0x000023E8u;
|
|
/* 0291C23C */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t216);
|
|
/* 0291C240 */ _t217 = cpu->r[10] + 0x00002158u;
|
|
/* 0291C240 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t217);
|
|
/* 0291C244 */ cpu->r[0] = 0x43300000u;
|
|
/* 0291C248 */ _t218 = cpu->r[1] + 0x00000064u;
|
|
/* 0291C248 */ rbrew_write32(cpu->mem, _t218, cpu->r[5]);
|
|
/* 0291C24C */ cpu->r[10] = cpu->r[26] ^ 0x80000000u;
|
|
/* 0291C250 */ _t219 = cpu->r[1] + 0x00000060u;
|
|
/* 0291C250 */ rbrew_write32(cpu->mem, _t219, cpu->r[0]);
|
|
/* 0291C254 */ _t220 = cpu->r[1] + 0x00000060u;
|
|
/* 0291C254 */ cpu->f[6] = rbrew_read_f64(cpu->mem, _t220);
|
|
/* 0291C258 */ cpu->r[20] = cpu->r[1] + 0x0000005Cu;
|
|
/* 0291C25C */ cpu->r[23] = cpu->r[1] + 0x00000054u;
|
|
/* 0291C260 */ _t221 = cpu->r[1] + 0x00000064u;
|
|
/* 0291C260 */ rbrew_write32(cpu->mem, _t221, cpu->r[10]);
|
|
/* 0291C264 */ _t222 = cpu->r[1] + 0x00000060u;
|
|
/* 0291C264 */ cpu->f[10] = rbrew_read_f64(cpu->mem, _t222);
|
|
/* 0291C268 */ cpu->f[8] = cpu->f[6] - cpu->f[13];
|
|
/* 0291C26C */ cpu->r[24] = cpu->r[1] + 0x00000050u;
|
|
/* 0291C270 */ cpu->r[25] = cpu->r[1] + 0x0000004Cu;
|
|
/* 0291C274 */ cpu->f[11] = cpu->f[10] - cpu->f[0];
|
|
/* 0291C278 */ cpu->r[22] = cpu->r[1] + 0x00000058u;
|
|
/* 0291C27C */ cpu->r[18] = 0x00000000u;
|
|
/* 0291C280 */ cpu->f[30] = (double)(float)cpu->f[8];
|
|
/* 0291C284 */ cpu->r[26] = cpu->r[1] + 0x00000048u;
|
|
/* 0291C288 */ _t223 = cpu->r[1] + 0x00000038u;
|
|
/* 0291C288 */ rbrew_write32(cpu->mem, _t223, cpu->r[18]);
|
|
/* 0291C28C */ cpu->f[31] = (double)(float)cpu->f[11];
|
|
/* 0291C290 */ goto L_0291C31C;
|
|
L_0291C294: ; // 0x291c294
|
|
/* 0291C294 */ _t224 = cpu->r[21] + 0x00000028u;
|
|
/* 0291C294 */ cpu->r[4] = rbrew_read32(cpu->mem, _t224);
|
|
/* 0291C298 */ _t225 = cpu->r[21] + 0x00000030u;
|
|
/* 0291C298 */ cpu->r[5] = rbrew_read32(cpu->mem, _t225);
|
|
/* 0291C29C */ _t226 = cpu->r[30] + 0x000000A8u;
|
|
/* 0291C29C */ rbrew_write32(cpu->mem, _t226, cpu->r[4]);
|
|
/* 0291C2A0 */ _t227 = cpu->r[30] + 0x00000028u;
|
|
/* 0291C2A0 */ rbrew_write32(cpu->mem, _t227, cpu->r[4]);
|
|
/* 0291C2A4 */ _t228 = cpu->r[30] + 0x00000030u;
|
|
/* 0291C2A4 */ rbrew_write32(cpu->mem, _t228, cpu->r[5]);
|
|
/* 0291C2A8 */ cpu->r[3] = cpu->r[30];
|
|
/* 0291C2AC */ _t229 = cpu->r[30] + 0x000000B0u;
|
|
/* 0291C2AC */ rbrew_write32(cpu->mem, _t229, cpu->r[5]);
|
|
/* 0291C2B0 */ Gambit_fn_028F714C(cpu);
|
|
/* 0291C2B4 */ cpu->r[10] = 0x10140000u;
|
|
/* 0291C2B8 */ _t230 = cpu->r[1] + 0x00000040u;
|
|
/* 0291C2B8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t230);
|
|
/* 0291C2BC */ cpu->r[0] = 0x43300000u;
|
|
/* 0291C2C0 */ _t231 = cpu->r[10] + 0x00002158u;
|
|
/* 0291C2C0 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t231);
|
|
/* 0291C2C4 */ cpu->r[9] = 0x10140000u;
|
|
/* 0291C2C8 */ _t232 = cpu->r[1] + 0x00000060u;
|
|
/* 0291C2C8 */ rbrew_write32(cpu->mem, _t232, cpu->r[0]);
|
|
/* 0291C2CC */ cpu->r[10] = cpu->r[26] ^ 0x80000000u;
|
|
/* 0291C2D0 */ _t233 = cpu->r[1] + 0x00000064u;
|
|
/* 0291C2D0 */ rbrew_write32(cpu->mem, _t233, cpu->r[5]);
|
|
/* 0291C2D4 */ _t234 = cpu->r[1] + 0x00000060u;
|
|
/* 0291C2D4 */ cpu->f[6] = rbrew_read_f64(cpu->mem, _t234);
|
|
/* 0291C2D8 */ cpu->r[20] = cpu->r[1] + 0x0000005Cu;
|
|
/* 0291C2DC */ _t235 = cpu->r[1] + 0x00000064u;
|
|
/* 0291C2DC */ rbrew_write32(cpu->mem, _t235, cpu->r[10]);
|
|
/* 0291C2E0 */ _t236 = cpu->r[1] + 0x00000060u;
|
|
/* 0291C2E0 */ cpu->f[10] = rbrew_read_f64(cpu->mem, _t236);
|
|
/* 0291C2E4 */ cpu->r[25] = cpu->r[1] + 0x0000004Cu;
|
|
/* 0291C2E8 */ cpu->r[4] = 0x00000006u;
|
|
/* 0291C2EC */ _t237 = cpu->r[9] + 0x000023E8u;
|
|
/* 0291C2EC */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t237);
|
|
/* 0291C2F0 */ cpu->f[8] = cpu->f[6] - cpu->f[13];
|
|
/* 0291C2F4 */ cpu->r[22] = cpu->r[1] + 0x00000058u;
|
|
/* 0291C2F8 */ cpu->r[24] = cpu->r[1] + 0x00000050u;
|
|
/* 0291C2FC */ cpu->f[11] = cpu->f[10] - cpu->f[0];
|
|
/* 0291C300 */ _t238 = cpu->r[1] + 0x00000018u;
|
|
/* 0291C300 */ rbrew_write32(cpu->mem, _t238, cpu->r[4]);
|
|
/* 0291C304 */ cpu->r[18] = 0x00000000u;
|
|
/* 0291C308 */ cpu->f[30] = (double)(float)cpu->f[8];
|
|
/* 0291C30C */ cpu->r[23] = cpu->r[1] + 0x00000054u;
|
|
/* 0291C310 */ cpu->r[26] = cpu->r[1] + 0x00000048u;
|
|
/* 0291C314 */ cpu->f[31] = (double)(float)cpu->f[11];
|
|
/* 0291C318 */ _t239 = cpu->r[1] + 0x00000038u;
|
|
/* 0291C318 */ rbrew_write32(cpu->mem, _t239, cpu->r[18]);
|
|
L_0291C31C: ; // 0x291c31c
|
|
/* 0291C31C */ cpu->r[3] = cpu->r[29];
|
|
/* 0291C320 */ cpu->r[4] = cpu->r[1] + 0x00000120u;
|
|
/* 0291C324 */ Gambit_fn_0291B12C(cpu);
|
|
/* 0291C328 */ cpu->r[3] = cpu->r[1] + 0x00000070u;
|
|
/* 0291C32C */ cpu->r[4] = cpu->r[29];
|
|
/* 0291C330 */ Gambit_fn_0281D990(cpu);
|
|
/* 0291C334 */ cpu->r[4] = cpu->r[29];
|
|
/* 0291C338 */ Gambit_fn_0281DCCC(cpu);
|
|
/* 0291C33C */ cpu->r[3] = cpu->r[1] + 0x000000A8u;
|
|
/* 0291C340 */ Gambit_fn_0281E2C8(cpu);
|
|
/* 0291C344 */ _t240 = cpu->r[31] + 0x00001568u;
|
|
/* 0291C344 */ cpu->r[7] = rbrew_read32(cpu->mem, _t240);
|
|
/* 0291C348 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0291C34C */ _t241 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291C34C */ _t242 = _t241 & 0x00000001u;
|
|
/* 0291C34C */ if (_t242) goto L_0291C69C; else goto L_0291C350;
|
|
L_0291C350: ; // 0x291c350
|
|
/* 0291C350 */ _t243 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0291C350 */ cpu->r[8] = rbrew_read32(cpu->mem, _t243);
|
|
/* 0291C354 */ _t244 = cpu->r[8] + 0x00000000u;
|
|
/* 0291C354 */ cpu->r[11] = rbrew_read32(cpu->mem, _t244);
|
|
/* 0291C358 */ _t245 = cpu->r[11] + 0x00000014u;
|
|
/* 0291C358 */ cpu->r[5] = rbrew_read32(cpu->mem, _t245);
|
|
/* 0291C35C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], 0x00000059u);
|
|
/* 0291C360 */ cpu->r[9] = 0x00000000u;
|
|
/* 0291C364 */ _t246 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291C364 */ _t247 = _t246 & 0x00000001u;
|
|
/* 0291C364 */ if (_t247) goto L_0291C368; else goto L_0291C370;
|
|
L_0291C368: ; // 0x291c368
|
|
/* 0291C368 */ _t248 = cpu->r[11] + 0x0000001Cu;
|
|
/* 0291C368 */ cpu->r[6] = rbrew_read32(cpu->mem, _t248);
|
|
/* 0291C36C */ _t249 = cpu->r[6] + 0x00000164u;
|
|
/* 0291C36C */ cpu->r[9] = rbrew_read32(cpu->mem, _t249);
|
|
L_0291C370: ; // 0x291c370
|
|
/* 0291C370 */ _t250 = cpu->r[9] + 0x00000078u;
|
|
/* 0291C370 */ cpu->r[8] = rbrew_read32(cpu->mem, _t250);
|
|
/* 0291C374 */ cpu->r[12] = cpu->r[7] + 0xFFFFFFFFu;
|
|
/* 0291C374 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0291C378 */ cpu->r[4] = cpu->r[8] + 0x00000008u;
|
|
/* 0291C37C */ _t251 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291C37C */ _t252 = _t251 & 0x00000001u;
|
|
/* 0291C37C */ if (_t252) goto L_0291C3C0; else goto L_0291C380;
|
|
L_0291C380: ; // 0x291c380
|
|
/* 0291C380 */ _t253 = cpu->r[4] + 0x00000000u;
|
|
/* 0291C380 */ cpu->r[17] = rbrew_read32(cpu->mem, _t253);
|
|
/* 0291C384 */ cpu->r[5] = 0x00000001u;
|
|
/* 0291C388 */ cpu->r[4] = cpu->r[28];
|
|
/* 0291C38C */ cpu->r[3] = cpu->r[17];
|
|
/* 0291C390 */ Gambit_fn_028F40F4(cpu);
|
|
/* 0291C394 */ _t254 = cpu->r[17] + 0x00000038u;
|
|
/* 0291C394 */ cpu->r[4] = rbrew_read32(cpu->mem, _t254);
|
|
/* 0291C398 */ cpu->r[28] = cpu->r[3];
|
|
/* 0291C39C */ cpu->r[6] = 0x00000000u;
|
|
/* 0291C3A0 */ cpu->r[5] = 0xFFFFFFFFu;
|
|
/* 0291C3A4 */ cpu->r[3] = cpu->r[14];
|
|
/* 0291C3A8 */ Gambit_fn_028FA6D4(cpu);
|
|
/* 0291C3AC */ _t255 = cpu->r[17] + 0x00000034u;
|
|
/* 0291C3AC */ cpu->r[12] = rbrew_read32(cpu->mem, _t255);
|
|
/* 0291C3B0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], 0x00000001u);
|
|
/* 0291C3B4 */ _t256 = cpu->r[17] + 0x00000038u;
|
|
/* 0291C3B4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t256);
|
|
/* 0291C3B8 */ _t257 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291C3B8 */ _t258 = _t257 & 0x00000001u;
|
|
/* 0291C3B8 */ if (_t258) goto L_0291C418; else goto L_0291C3BC;
|
|
L_0291C3BC: ; // 0x291c3bc
|
|
/* 0291C3BC */ goto L_0291C41C;
|
|
L_0291C3C0: ; // 0x291c3c0
|
|
/* 0291C3C0 */ _t259 = cpu->r[4] + 0x00000004u;
|
|
/* 0291C3C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t259);
|
|
/* 0291C3C4 */ cpu->r[9] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 0291C3C8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[0]);
|
|
/* 0291C3CC */ _t260 = cpu->r[4] + 0x00000008u;
|
|
/* 0291C3CC */ cpu->r[17] = rbrew_read32(cpu->mem, _t260);
|
|
/* 0291C3D0 */ _t261 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291C3D0 */ _t262 = _t261 & 0x00000001u;
|
|
/* 0291C3D0 */ if (_t262) goto L_0291C3D4; else goto L_0291C3E0;
|
|
L_0291C3D4: ; // 0x291c3d4
|
|
/* 0291C3D4 */ cpu->r[10] = rbrew_rlwinm(cpu->r[12], 0x00000007u, 0x00000000u, 0x00000018u);
|
|
/* 0291C3D8 */ cpu->r[11] = cpu->r[17] + cpu->r[10];
|
|
/* 0291C3DC */ cpu->r[17] = cpu->r[11] + 0xFFFFFF80u;
|
|
L_0291C3E0: ; // 0x291c3e0
|
|
/* 0291C3E0 */ cpu->r[3] = cpu->r[17];
|
|
/* 0291C3E4 */ cpu->r[5] = 0x00000001u;
|
|
/* 0291C3E8 */ cpu->r[4] = cpu->r[28];
|
|
/* 0291C3EC */ Gambit_fn_028F40F4(cpu);
|
|
/* 0291C3F0 */ _t263 = cpu->r[17] + 0x00000038u;
|
|
/* 0291C3F0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t263);
|
|
/* 0291C3F4 */ cpu->r[28] = cpu->r[3];
|
|
/* 0291C3F8 */ cpu->r[6] = 0x00000000u;
|
|
/* 0291C3FC */ cpu->r[5] = 0xFFFFFFFFu;
|
|
/* 0291C400 */ cpu->r[3] = cpu->r[14];
|
|
/* 0291C404 */ Gambit_fn_028FA6D4(cpu);
|
|
/* 0291C408 */ _t264 = cpu->r[17] + 0x00000034u;
|
|
/* 0291C408 */ cpu->r[12] = rbrew_read32(cpu->mem, _t264);
|
|
/* 0291C40C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], 0x00000001u);
|
|
/* 0291C410 */ _t265 = cpu->r[17] + 0x00000038u;
|
|
/* 0291C410 */ cpu->r[4] = rbrew_read32(cpu->mem, _t265);
|
|
/* 0291C414 */ _t266 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291C414 */ _t267 = _t266 & 0x00000001u;
|
|
/* 0291C414 */ if (_t267) goto L_0291C418; else goto L_0291C3BC;
|
|
L_0291C418: ; // 0x291c418
|
|
/* 0291C418 */ cpu->r[4] = cpu->r[4] + 0x00000010u;
|
|
L_0291C41C: ; // 0x291c41c
|
|
/* 0291C41C */ _t268 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0291C41C */ cpu->r[3] = rbrew_read32(cpu->mem, _t268);
|
|
/* 0291C420 */ cpu->r[6] = 0x00000000u;
|
|
/* 0291C424 */ cpu->r[5] = 0xFFFFFFFFu;
|
|
/* 0291C428 */ Gambit_fn_028FA6D4(cpu);
|
|
/* 0291C42C */ _t269 = cpu->r[1] + 0x00000038u;
|
|
/* 0291C42C */ cpu->r[7] = rbrew_read32(cpu->mem, _t269);
|
|
/* 0291C430 */ _t270 = cpu->r[17] + 0x00000028u;
|
|
/* 0291C430 */ cpu->r[15] = rbrew_read32(cpu->mem, _t270);
|
|
/* 0291C434 */ _t271 = cpu->r[1] + 0x00000048u;
|
|
/* 0291C434 */ rbrew_write32(cpu->mem, _t271, cpu->r[7]);
|
|
/* 0291C438 */ _t272 = cpu->r[15] + 0x00000008u;
|
|
/* 0291C438 */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t272);
|
|
/* 0291C43C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 0291C440 */ _t273 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291C440 */ _t274 = _t273 & 0x00000001u;
|
|
/* 0291C440 */ if (_t274) goto L_0291C454; else goto L_0291C444;
|
|
L_0291C444: ; // 0x291c444
|
|
/* 0291C444 */ _t275 = cpu->r[15] + 0x00000008u;
|
|
/* 0291C444 */ cpu->r[3] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t275);
|
|
/* 0291C448 */ cpu->r[5] = cpu->r[26];
|
|
/* 0291C44C */ cpu->r[4] = 0x00000004u;
|
|
/* 0291C450 */ rbrew_dispatch(cpu, 0x02d062a8u);
|
|
L_0291C454: ; // 0x291c454
|
|
/* 0291C454 */ _t276 = cpu->r[15] + 0x0000000Au;
|
|
/* 0291C454 */ cpu->r[3] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t276);
|
|
/* 0291C458 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0xFFFFFFFFu);
|
|
/* 0291C45C */ _t277 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291C45C */ _t278 = _t277 & 0x00000001u;
|
|
/* 0291C45C */ if (_t278) goto L_0291C46C; else goto L_0291C460;
|
|
L_0291C460: ; // 0x291c460
|
|
/* 0291C460 */ cpu->r[4] = 0x00000004u;
|
|
/* 0291C464 */ cpu->r[5] = cpu->r[26];
|
|
/* 0291C468 */ rbrew_dispatch(cpu, 0x02d06160u);
|
|
L_0291C46C: ; // 0x291c46c
|
|
/* 0291C46C */ _t279 = cpu->r[17] + 0x00000024u;
|
|
/* 0291C46C */ cpu->r[4] = rbrew_read32(cpu->mem, _t279);
|
|
/* 0291C470 */ cpu->r[0] = cpu->r[18];
|
|
/* 0291C474 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], 0x00000002u);
|
|
/* 0291C478 */ _t280 = cpu->r[17] + 0x00000028u;
|
|
/* 0291C478 */ cpu->r[12] = rbrew_read32(cpu->mem, _t280);
|
|
/* 0291C47C */ _t281 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291C47C */ _t282 = _t281 & 0x00000001u;
|
|
/* 0291C47C */ if (_t282) goto L_0291C480; else goto L_0291C484;
|
|
L_0291C480: ; // 0x291c480
|
|
/* 0291C480 */ cpu->r[12] = cpu->r[12] + 0x00000020u;
|
|
L_0291C484: ; // 0x291c484
|
|
/* 0291C484 */ _t283 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0291C484 */ rbrew_write32(cpu->mem, _t283, cpu->r[0]);
|
|
/* 0291C488 */ _t284 = cpu->r[12] + 0x00000008u;
|
|
/* 0291C488 */ cpu->r[5] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t284);
|
|
/* 0291C48C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0xFFFFFFFFu);
|
|
/* 0291C490 */ cpu->r[15] = cpu->r[12];
|
|
/* 0291C494 */ _t285 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291C494 */ _t286 = _t285 & 0x00000001u;
|
|
/* 0291C494 */ if (_t286) goto L_0291C4A8; else goto L_0291C498;
|
|
L_0291C498: ; // 0x291c498
|
|
/* 0291C498 */ _t287 = cpu->r[15] + 0x00000008u;
|
|
/* 0291C498 */ cpu->r[3] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t287);
|
|
/* 0291C49C */ cpu->r[5] = cpu->r[25];
|
|
/* 0291C4A0 */ cpu->r[4] = 0x00000004u;
|
|
/* 0291C4A4 */ rbrew_dispatch(cpu, 0x02d062a8u);
|
|
L_0291C4A8: ; // 0x291c4a8
|
|
/* 0291C4A8 */ _t288 = cpu->r[15] + 0x0000000Au;
|
|
/* 0291C4A8 */ cpu->r[3] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t288);
|
|
/* 0291C4AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0xFFFFFFFFu);
|
|
/* 0291C4B0 */ _t289 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291C4B0 */ _t290 = _t289 & 0x00000001u;
|
|
/* 0291C4B0 */ if (_t290) goto L_0291C4C0; else goto L_0291C4B4;
|
|
L_0291C4B4: ; // 0x291c4b4
|
|
/* 0291C4B4 */ cpu->r[4] = 0x00000004u;
|
|
/* 0291C4B8 */ cpu->r[5] = cpu->r[25];
|
|
/* 0291C4BC */ rbrew_dispatch(cpu, 0x02d06160u);
|
|
L_0291C4C0: ; // 0x291c4c0
|
|
/* 0291C4C0 */ _t291 = cpu->r[17] + 0x00000024u;
|
|
/* 0291C4C0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t291);
|
|
/* 0291C4C4 */ cpu->f[0] = cpu->f[30];
|
|
/* 0291C4C8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], 0x00000001u);
|
|
/* 0291C4CC */ _t292 = cpu->r[17] + 0x00000028u;
|
|
/* 0291C4CC */ cpu->r[9] = rbrew_read32(cpu->mem, _t292);
|
|
/* 0291C4D0 */ _t293 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291C4D0 */ _t294 = _t293 & 0x00000001u;
|
|
/* 0291C4D0 */ if (_t294) goto L_0291C4D4; else goto L_0291C4D8;
|
|
L_0291C4D4: ; // 0x291c4d4
|
|
/* 0291C4D4 */ cpu->r[9] = cpu->r[9] + 0x00000010u;
|
|
L_0291C4D8: ; // 0x291c4d8
|
|
/* 0291C4D8 */ _t295 = cpu->r[1] + 0x00000050u;
|
|
/* 0291C4D8 */ rbrew_write_f32(cpu->mem, _t295, cpu->f[0]);
|
|
/* 0291C4DC */ _t296 = cpu->r[9] + 0x00000008u;
|
|
/* 0291C4DC */ cpu->r[7] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t296);
|
|
/* 0291C4E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0xFFFFFFFFu);
|
|
/* 0291C4E4 */ cpu->r[15] = cpu->r[9];
|
|
/* 0291C4E8 */ _t297 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291C4E8 */ _t298 = _t297 & 0x00000001u;
|
|
/* 0291C4E8 */ if (_t298) goto L_0291C4FC; else goto L_0291C4EC;
|
|
L_0291C4EC: ; // 0x291c4ec
|
|
/* 0291C4EC */ _t299 = cpu->r[15] + 0x00000008u;
|
|
/* 0291C4EC */ cpu->r[3] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t299);
|
|
/* 0291C4F0 */ cpu->r[5] = cpu->r[24];
|
|
/* 0291C4F4 */ cpu->r[4] = 0x00000004u;
|
|
/* 0291C4F8 */ rbrew_dispatch(cpu, 0x02d062a8u);
|
|
L_0291C4FC: ; // 0x291c4fc
|
|
/* 0291C4FC */ _t300 = cpu->r[15] + 0x0000000Au;
|
|
/* 0291C4FC */ cpu->r[3] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t300);
|
|
/* 0291C500 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0xFFFFFFFFu);
|
|
/* 0291C504 */ _t301 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291C504 */ _t302 = _t301 & 0x00000001u;
|
|
/* 0291C504 */ if (_t302) goto L_0291C514; else goto L_0291C508;
|
|
L_0291C508: ; // 0x291c508
|
|
/* 0291C508 */ cpu->r[4] = 0x00000004u;
|
|
/* 0291C50C */ cpu->r[5] = cpu->r[24];
|
|
/* 0291C510 */ rbrew_dispatch(cpu, 0x02d06160u);
|
|
L_0291C514: ; // 0x291c514
|
|
/* 0291C514 */ _t303 = cpu->r[17] + 0x00000024u;
|
|
/* 0291C514 */ cpu->r[0] = rbrew_read32(cpu->mem, _t303);
|
|
/* 0291C518 */ cpu->f[7] = cpu->f[31];
|
|
/* 0291C51C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000004u);
|
|
/* 0291C520 */ _t304 = cpu->r[17] + 0x00000028u;
|
|
/* 0291C520 */ cpu->r[10] = rbrew_read32(cpu->mem, _t304);
|
|
/* 0291C524 */ _t305 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291C524 */ _t306 = _t305 & 0x00000001u;
|
|
/* 0291C524 */ if (_t306) goto L_0291C528; else goto L_0291C52C;
|
|
L_0291C528: ; // 0x291c528
|
|
/* 0291C528 */ cpu->r[10] = cpu->r[10] + 0x00000040u;
|
|
L_0291C52C: ; // 0x291c52c
|
|
/* 0291C52C */ _t307 = cpu->r[1] + 0x00000054u;
|
|
/* 0291C52C */ rbrew_write_f32(cpu->mem, _t307, cpu->f[7]);
|
|
/* 0291C530 */ _t308 = cpu->r[10] + 0x00000008u;
|
|
/* 0291C530 */ cpu->r[8] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t308);
|
|
/* 0291C534 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0xFFFFFFFFu);
|
|
/* 0291C538 */ cpu->r[15] = cpu->r[10];
|
|
/* 0291C53C */ _t309 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291C53C */ _t310 = _t309 & 0x00000001u;
|
|
/* 0291C53C */ if (_t310) goto L_0291C550; else goto L_0291C540;
|
|
L_0291C540: ; // 0x291c540
|
|
/* 0291C540 */ _t311 = cpu->r[15] + 0x00000008u;
|
|
/* 0291C540 */ cpu->r[3] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t311);
|
|
/* 0291C544 */ cpu->r[5] = cpu->r[23];
|
|
/* 0291C548 */ cpu->r[4] = 0x00000004u;
|
|
/* 0291C54C */ rbrew_dispatch(cpu, 0x02d062a8u);
|
|
L_0291C550: ; // 0x291c550
|
|
/* 0291C550 */ _t312 = cpu->r[15] + 0x0000000Au;
|
|
/* 0291C550 */ cpu->r[3] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t312);
|
|
/* 0291C554 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0xFFFFFFFFu);
|
|
/* 0291C558 */ _t313 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291C558 */ _t314 = _t313 & 0x00000001u;
|
|
/* 0291C558 */ if (_t314) goto L_0291C568; else goto L_0291C55C;
|
|
L_0291C55C: ; // 0x291c55c
|
|
/* 0291C55C */ cpu->r[4] = 0x00000004u;
|
|
/* 0291C560 */ cpu->r[5] = cpu->r[23];
|
|
/* 0291C564 */ rbrew_dispatch(cpu, 0x02d06160u);
|
|
L_0291C568: ; // 0x291c568
|
|
/* 0291C568 */ _t315 = cpu->r[17] + 0x00000024u;
|
|
/* 0291C568 */ cpu->r[9] = rbrew_read32(cpu->mem, _t315);
|
|
/* 0291C56C */ _t316 = cpu->r[31] + 0x0000156Cu;
|
|
/* 0291C56C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t316);
|
|
/* 0291C570 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], 0x00000005u);
|
|
/* 0291C574 */ _t317 = cpu->r[17] + 0x00000028u;
|
|
/* 0291C574 */ cpu->r[11] = rbrew_read32(cpu->mem, _t317);
|
|
/* 0291C578 */ _t318 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291C578 */ _t319 = _t318 & 0x00000001u;
|
|
/* 0291C578 */ if (_t319) goto L_0291C57C; else goto L_0291C580;
|
|
L_0291C57C: ; // 0x291c57c
|
|
/* 0291C57C */ cpu->r[11] = cpu->r[11] + 0x00000050u;
|
|
L_0291C580: ; // 0x291c580
|
|
/* 0291C580 */ _t320 = cpu->r[1] + 0x00000058u;
|
|
/* 0291C580 */ rbrew_write_f32(cpu->mem, _t320, cpu->f[9]);
|
|
/* 0291C584 */ _t321 = cpu->r[11] + 0x00000008u;
|
|
/* 0291C584 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t321);
|
|
/* 0291C588 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0xFFFFFFFFu);
|
|
/* 0291C58C */ cpu->r[15] = cpu->r[11];
|
|
/* 0291C590 */ _t322 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291C590 */ _t323 = _t322 & 0x00000001u;
|
|
/* 0291C590 */ if (_t323) goto L_0291C5A4; else goto L_0291C594;
|
|
L_0291C594: ; // 0x291c594
|
|
/* 0291C594 */ _t324 = cpu->r[15] + 0x00000008u;
|
|
/* 0291C594 */ cpu->r[3] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t324);
|
|
/* 0291C598 */ cpu->r[5] = cpu->r[22];
|
|
/* 0291C59C */ cpu->r[4] = 0x00000004u;
|
|
/* 0291C5A0 */ rbrew_dispatch(cpu, 0x02d062a8u);
|
|
L_0291C5A4: ; // 0x291c5a4
|
|
/* 0291C5A4 */ _t325 = cpu->r[15] + 0x0000000Au;
|
|
/* 0291C5A4 */ cpu->r[3] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t325);
|
|
/* 0291C5A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0xFFFFFFFFu);
|
|
/* 0291C5AC */ _t326 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291C5AC */ _t327 = _t326 & 0x00000001u;
|
|
/* 0291C5AC */ if (_t327) goto L_0291C5BC; else goto L_0291C5B0;
|
|
L_0291C5B0: ; // 0x291c5b0
|
|
/* 0291C5B0 */ cpu->r[4] = 0x00000004u;
|
|
/* 0291C5B4 */ cpu->r[5] = cpu->r[22];
|
|
/* 0291C5B8 */ rbrew_dispatch(cpu, 0x02d06160u);
|
|
L_0291C5BC: ; // 0x291c5bc
|
|
/* 0291C5BC */ _t328 = cpu->r[17] + 0x00000024u;
|
|
/* 0291C5BC */ cpu->r[11] = rbrew_read32(cpu->mem, _t328);
|
|
/* 0291C5C0 */ _t329 = cpu->r[31] + 0x00001570u;
|
|
/* 0291C5C0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t329);
|
|
/* 0291C5C4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], 0x00000006u);
|
|
/* 0291C5C8 */ _t330 = cpu->r[17] + 0x00000028u;
|
|
/* 0291C5C8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t330);
|
|
/* 0291C5CC */ _t331 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291C5CC */ _t332 = _t331 & 0x00000001u;
|
|
/* 0291C5CC */ if (_t332) goto L_0291C5D0; else goto L_0291C5D4;
|
|
L_0291C5D0: ; // 0x291c5d0
|
|
/* 0291C5D0 */ cpu->r[8] = cpu->r[8] + 0x00000060u;
|
|
L_0291C5D4: ; // 0x291c5d4
|
|
/* 0291C5D4 */ _t333 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0291C5D4 */ rbrew_write_f32(cpu->mem, _t333, cpu->f[12]);
|
|
/* 0291C5D8 */ _t334 = cpu->r[8] + 0x00000008u;
|
|
/* 0291C5D8 */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t334);
|
|
/* 0291C5DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 0291C5E0 */ cpu->r[17] = cpu->r[8];
|
|
/* 0291C5E4 */ _t335 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291C5E4 */ _t336 = _t335 & 0x00000001u;
|
|
/* 0291C5E4 */ if (_t336) goto L_0291C5F8; else goto L_0291C5E8;
|
|
L_0291C5E8: ; // 0x291c5e8
|
|
/* 0291C5E8 */ _t337 = cpu->r[17] + 0x00000008u;
|
|
/* 0291C5E8 */ cpu->r[3] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t337);
|
|
/* 0291C5EC */ cpu->r[5] = cpu->r[20];
|
|
/* 0291C5F0 */ cpu->r[4] = 0x00000004u;
|
|
/* 0291C5F4 */ rbrew_dispatch(cpu, 0x02d062a8u);
|
|
L_0291C5F8: ; // 0x291c5f8
|
|
/* 0291C5F8 */ _t338 = cpu->r[17] + 0x0000000Au;
|
|
/* 0291C5F8 */ cpu->r[3] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t338);
|
|
/* 0291C5FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0xFFFFFFFFu);
|
|
/* 0291C600 */ _t339 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291C600 */ _t340 = _t339 & 0x00000001u;
|
|
/* 0291C600 */ if (_t340) goto L_0291C610; else goto L_0291C604;
|
|
L_0291C604: ; // 0x291c604
|
|
/* 0291C604 */ cpu->r[4] = 0x00000004u;
|
|
/* 0291C608 */ cpu->r[5] = cpu->r[20];
|
|
/* 0291C60C */ rbrew_dispatch(cpu, 0x02d06160u);
|
|
L_0291C610: ; // 0x291c610
|
|
/* 0291C610 */ _t341 = cpu->r[1] + 0x00000024u;
|
|
/* 0291C610 */ cpu->r[6] = rbrew_read32(cpu->mem, _t341);
|
|
/* 0291C614 */ _t342 = cpu->r[6] + 0x00000000u;
|
|
/* 0291C614 */ cpu->r[4] = rbrew_read32(cpu->mem, _t342);
|
|
/* 0291C618 */ cpu->r[3] = cpu->r[4] + 0x000006BCu;
|
|
/* 0291C61C */ Gambit_fn_028FB628(cpu);
|
|
/* 0291C620 */ _t343 = cpu->r[1] + 0x00000028u;
|
|
/* 0291C620 */ cpu->r[5] = rbrew_read32(cpu->mem, _t343);
|
|
/* 0291C624 */ _t344 = cpu->r[5] + 0x00000000u;
|
|
/* 0291C624 */ cpu->r[12] = rbrew_read32(cpu->mem, _t344);
|
|
/* 0291C628 */ _t345 = cpu->r[12] + 0x0000018Cu;
|
|
/* 0291C628 */ cpu->r[4] = rbrew_read32(cpu->mem, _t345);
|
|
/* 0291C62C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 0291C630 */ cpu->r[6] = cpu->r[12] + 0x00000180u;
|
|
/* 0291C634 */ _t346 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291C634 */ _t347 = _t346 & 0x00000001u;
|
|
/* 0291C634 */ if (_t347) goto L_0291C6B8; else goto L_0291C638;
|
|
L_0291C638: ; // 0x291c638
|
|
/* 0291C638 */ _t348 = cpu->r[6] + 0x00000004u;
|
|
/* 0291C638 */ cpu->r[3] = rbrew_read32(cpu->mem, _t348);
|
|
/* 0291C63C */ cpu->r[7] = 0x00000000u;
|
|
/* 0291C640 */ _t349 = cpu->r[6] + 0x00000000u;
|
|
/* 0291C640 */ cpu->r[5] = rbrew_read32(cpu->mem, _t349);
|
|
/* 0291C644 */ _t350 = cpu->r[6] + 0x00000008u;
|
|
/* 0291C644 */ cpu->r[6] = rbrew_read32(cpu->mem, _t350);
|
|
/* 0291C648 */ cpu->r[8] = 0x00000001u;
|
|
/* 0291C64C */ rbrew_dispatch(cpu, 0x02d05930u);
|
|
/* 0291C650 */ cpu->r[3] = cpu->r[1] + 0x00000120u;
|
|
/* 0291C654 */ Gambit_fn_028F1A48(cpu);
|
|
/* 0291C658 */ _t351 = cpu->r[1] + 0x00000040u;
|
|
/* 0291C658 */ cpu->r[5] = rbrew_read32(cpu->mem, _t351);
|
|
/* 0291C65C */ cpu->r[3] = cpu->r[16];
|
|
/* 0291C660 */ cpu->r[4] = cpu->r[18];
|
|
/* 0291C664 */ Gambit_fn_029625F8(cpu);
|
|
/* 0291C668 */ cpu->r[4] = cpu->r[29];
|
|
/* 0291C66C */ cpu->r[3] = cpu->r[1] + 0x00000088u;
|
|
/* 0291C670 */ Gambit_fn_0281D990(cpu);
|
|
/* 0291C674 */ cpu->r[4] = cpu->r[29];
|
|
/* 0291C678 */ Gambit_fn_0281DCCC(cpu);
|
|
/* 0291C67C */ cpu->r[3] = cpu->r[1] + 0x000000A8u;
|
|
/* 0291C680 */ Gambit_fn_0281E2C8(cpu);
|
|
/* 0291C684 */ cpu->r[3] = cpu->r[30];
|
|
/* 0291C688 */ Gambit_fn_028F714C(cpu);
|
|
/* 0291C68C */ _t352 = cpu->r[31] + 0x00000358u;
|
|
/* 0291C68C */ cpu->r[5] = rbrew_read8(cpu->mem, _t352);
|
|
/* 0291C690 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 0291C694 */ _t353 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291C694 */ _t354 = _t353 & 0x00000001u;
|
|
/* 0291C694 */ if (_t354) goto L_0291C758; else goto L_0291C698;
|
|
L_0291C698: ; // 0x291c698
|
|
/* 0291C698 */ goto L_0291C700;
|
|
L_0291C69C: ; // 0x291c69c
|
|
/* 0291C69C */ cpu->f[1] = cpu->f[30];
|
|
/* 0291C6A0 */ cpu->r[7] = 0x00000004u;
|
|
/* 0291C6A4 */ cpu->r[6] = cpu->r[18];
|
|
/* 0291C6A8 */ cpu->r[5] = cpu->r[19] + 0x00005EA0u;
|
|
/* 0291C6AC */ cpu->r[4] = cpu->r[27] + 0x000072A0u;
|
|
/* 0291C6B0 */ cpu->r[3] = cpu->r[14];
|
|
/* 0291C6B4 */ Gambit_fn_02943F1C(cpu);
|
|
L_0291C6B8: ; // 0x291c6b8
|
|
/* 0291C6B8 */ cpu->r[3] = cpu->r[1] + 0x00000120u;
|
|
/* 0291C6BC */ Gambit_fn_028F1A48(cpu);
|
|
/* 0291C6C0 */ _t355 = cpu->r[1] + 0x00000040u;
|
|
/* 0291C6C0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t355);
|
|
/* 0291C6C4 */ cpu->r[3] = cpu->r[16];
|
|
/* 0291C6C8 */ cpu->r[4] = cpu->r[18];
|
|
/* 0291C6CC */ Gambit_fn_029625F8(cpu);
|
|
/* 0291C6D0 */ cpu->r[4] = cpu->r[29];
|
|
/* 0291C6D4 */ cpu->r[3] = cpu->r[1] + 0x00000088u;
|
|
/* 0291C6D8 */ Gambit_fn_0281D990(cpu);
|
|
/* 0291C6DC */ cpu->r[4] = cpu->r[29];
|
|
/* 0291C6E0 */ Gambit_fn_0281DCCC(cpu);
|
|
/* 0291C6E4 */ cpu->r[3] = cpu->r[1] + 0x000000A8u;
|
|
/* 0291C6E8 */ Gambit_fn_0281E2C8(cpu);
|
|
/* 0291C6EC */ cpu->r[3] = cpu->r[30];
|
|
/* 0291C6F0 */ Gambit_fn_028F714C(cpu);
|
|
/* 0291C6F4 */ _t356 = cpu->r[31] + 0x00000358u;
|
|
/* 0291C6F4 */ cpu->r[5] = rbrew_read8(cpu->mem, _t356);
|
|
/* 0291C6F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 0291C6FC */ _t357 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291C6FC */ _t358 = _t357 & 0x00000001u;
|
|
/* 0291C6FC */ if (_t358) goto L_0291C758; else goto L_0291C700;
|
|
L_0291C700: ; // 0x291c700
|
|
/* 0291C700 */ _t359 = cpu->r[31] + 0x00001268u;
|
|
/* 0291C700 */ cpu->r[6] = rbrew_read32(cpu->mem, _t359);
|
|
/* 0291C704 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 0291C708 */ _t360 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291C708 */ _t361 = _t360 & 0x00000001u;
|
|
/* 0291C708 */ if (_t361) goto L_0291C758; else goto L_0291C70C;
|
|
L_0291C70C: ; // 0x291c70c
|
|
/* 0291C70C */ cpu->r[4] = cpu->r[28];
|
|
/* 0291C710 */ cpu->r[3] = cpu->r[31] + 0x000001A0u;
|
|
/* 0291C714 */ Gambit_fn_0293CA8C(cpu);
|
|
/* 0291C718 */ cpu->r[6] = cpu->r[3];
|
|
/* 0291C71C */ cpu->r[3] = cpu->r[31] + 0x000001A0u;
|
|
/* 0291C720 */ cpu->r[4] = cpu->r[29];
|
|
/* 0291C724 */ cpu->r[5] = cpu->r[30];
|
|
/* 0291C728 */ Gambit_fn_0293D300(cpu);
|
|
/* 0291C72C */ cpu->r[5] = cpu->r[3];
|
|
/* 0291C730 */ cpu->r[4] = 0x00000000u;
|
|
/* 0291C734 */ cpu->r[3] = cpu->r[16];
|
|
/* 0291C738 */ Gambit_fn_02962608(cpu);
|
|
/* 0291C73C */ _t362 = cpu->r[1] + 0x00000018u;
|
|
/* 0291C73C */ cpu->r[4] = rbrew_read32(cpu->mem, _t362);
|
|
/* 0291C740 */ cpu->r[18] = cpu->r[18] + 0x00000001u;
|
|
/* 0291C744 */ cpu->r[0] = cpu->r[4] + 0xFFFFFFFFu;
|
|
/* 0291C744 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0291C748 */ cpu->r[28] = cpu->r[3];
|
|
/* 0291C74C */ _t363 = cpu->r[1] + 0x00000018u;
|
|
/* 0291C74C */ rbrew_write32(cpu->mem, _t363, cpu->r[0]);
|
|
/* 0291C750 */ _t364 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291C750 */ _t365 = _t364 & 0x00000001u;
|
|
/* 0291C750 */ if (_t365) goto L_0291C754; else goto L_0291C31C;
|
|
L_0291C754: ; // 0x291c754
|
|
/* 0291C754 */ goto L_0291C798;
|
|
L_0291C758: ; // 0x291c758
|
|
/* 0291C758 */ _t366 = cpu->r[1] + 0x00000020u;
|
|
/* 0291C758 */ cpu->r[6] = rbrew_read32(cpu->mem, _t366);
|
|
/* 0291C75C */ cpu->r[3] = cpu->r[30];
|
|
/* 0291C760 */ cpu->r[4] = cpu->r[27] + 0x000072A0u;
|
|
/* 0291C764 */ cpu->r[5] = cpu->r[19] + 0x00005EA0u;
|
|
/* 0291C768 */ cpu->r[7] = cpu->r[28];
|
|
/* 0291C76C */ Gambit_fn_0294246C(cpu);
|
|
/* 0291C770 */ cpu->r[5] = cpu->r[3];
|
|
/* 0291C774 */ cpu->r[4] = 0x00000000u;
|
|
/* 0291C778 */ cpu->r[3] = cpu->r[16];
|
|
/* 0291C77C */ Gambit_fn_02962608(cpu);
|
|
/* 0291C780 */ _t367 = cpu->r[1] + 0x00000018u;
|
|
/* 0291C780 */ cpu->r[4] = rbrew_read32(cpu->mem, _t367);
|
|
/* 0291C784 */ cpu->r[18] = cpu->r[18] + 0x00000001u;
|
|
/* 0291C788 */ cpu->r[0] = cpu->r[4] + 0xFFFFFFFFu;
|
|
/* 0291C788 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0291C78C */ cpu->r[28] = cpu->r[3];
|
|
/* 0291C790 */ _t368 = cpu->r[1] + 0x00000018u;
|
|
/* 0291C790 */ rbrew_write32(cpu->mem, _t368, cpu->r[0]);
|
|
/* 0291C794 */ _t369 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291C794 */ _t370 = _t369 & 0x00000001u;
|
|
/* 0291C794 */ if (_t370) goto L_0291C798; else goto L_0291C31C;
|
|
L_0291C798: ; // 0x291c798
|
|
/* 0291C798 */ _t371 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0291C798 */ cpu->r[12] = rbrew_read32(cpu->mem, _t371);
|
|
/* 0291C79C */ _t372 = cpu->r[12] + 0x00000000u;
|
|
/* 0291C79C */ cpu->r[3] = rbrew_read32(cpu->mem, _t372);
|
|
/* 0291C7A0 */ cpu->r[4] = cpu->r[21];
|
|
/* 0291C7A4 */ Gambit_fn_02945C10(cpu);
|
|
/* 0291C7A8 */ _t373 = cpu->r[1] + 0x00000014u;
|
|
/* 0291C7A8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t373);
|
|
/* 0291C7AC */ _t374 = cpu->r[1] + 0x00000040u;
|
|
/* 0291C7AC */ cpu->r[9] = rbrew_read32(cpu->mem, _t374);
|
|
/* 0291C7B0 */ cpu->r[10] = cpu->r[11] + 0xFFFFFFFFu;
|
|
/* 0291C7B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0291C7B4 */ cpu->r[8] = cpu->r[9] + 0x00000001u;
|
|
/* 0291C7B8 */ _t375 = cpu->r[1] + 0x00000014u;
|
|
/* 0291C7B8 */ rbrew_write32(cpu->mem, _t375, cpu->r[10]);
|
|
/* 0291C7BC */ _t376 = cpu->r[1] + 0x00000040u;
|
|
/* 0291C7BC */ rbrew_write32(cpu->mem, _t376, cpu->r[8]);
|
|
/* 0291C7C0 */ _t377 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291C7C0 */ _t378 = _t377 & 0x00000001u;
|
|
/* 0291C7C0 */ if (_t378) goto L_0291C7C4; else goto L_0291C0F8;
|
|
L_0291C7C4: ; // 0x291c7c4
|
|
/* 0291C7C4 */ cpu->r[3] = cpu->r[16];
|
|
/* 0291C7C8 */ Gambit_fn_029621F4(cpu);
|
|
/* 0291C7CC */ cpu->r[3] = cpu->r[28];
|
|
/* 0291C7D0 */ /* nop */
|
|
/* 0291C7D4 */ _t379 = cpu->r[1] + 0x000002B0u;
|
|
/* 0291C7D4 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t379);
|
|
/* 0291C7D8 */ _t380 = cpu->r[1] + 0x000002C0u;
|
|
/* 0291C7D8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t380);
|
|
/* 0291C7DC */ _t381 = cpu->r[1] + 0x000002A8u;
|
|
/* 0291C7DC */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t381);
|
|
/* 0291C7E0 */ _t382 = cpu->r[1] + 0x000002B8u;
|
|
/* 0291C7E0 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t382);
|
|
/* 0291C7E4 */ _t383 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291C7E4 */ _t384 = _t383 & 0x00000001u;
|
|
/* 0291C7E4 */ if (_t384) goto L_0291C7E8; // else: addr-0 trap, fall-through
|
|
L_0291C7E8: ; // 0x291c7e8
|
|
/* 0291C7E8 */ _t385 = cpu->r[1] + 0x000002CCu;
|
|
/* 0291C7E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t385);
|
|
/* 0291C7EC */ cpu->lr = cpu->r[0];
|
|
/* 0291C7F0 */ cpu->r[1] = cpu->r[1] + 0x000002C8u;
|
|
/* 0291C7F4 */ return;
|
|
}
|
|
|
|
// fn_0291C7F8 @ 0x291c7f8
|
|
void Gambit_fn_0291C7F8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _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;
|
|
|
|
L_0291C7F8: ; // 0x291c7f8
|
|
/* 0291C7F8 */ _t0 = cpu->r[1] + 0xFFFFFF78u;
|
|
/* 0291C7F8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291C7F8 */ cpu->r[1] = _t0;
|
|
/* 0291C7FC */ /* nop */
|
|
/* 0291C800 */ _t1 = cpu->r[1] + 0x00000058u;
|
|
/* 0291C800 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[29]);
|
|
/* 0291C804 */ _t2 = cpu->r[1] + 0x00000068u;
|
|
/* 0291C804 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[30]);
|
|
/* 0291C808 */ /* nop */
|
|
/* 0291C80C */ _t3 = cpu->r[1] + 0x00000078u;
|
|
/* 0291C80C */ rbrew_write_f64(cpu->mem, _t3, cpu->f[31]);
|
|
/* 0291C810 */ /* nop */
|
|
/* 0291C814 */ _t4 = cpu->r[1] + 0x00000060u;
|
|
/* 0291C814 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[29]);
|
|
/* 0291C818 */ _t5 = cpu->r[1] + 0x00000070u;
|
|
/* 0291C818 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[30]);
|
|
/* 0291C81C */ /* nop */
|
|
/* 0291C820 */ cpu->r[0] = cpu->lr;
|
|
/* 0291C824 */ _t6 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0291C824 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0291C828 */ _t7 = cpu->r[1] + 0x00000080u;
|
|
/* 0291C828 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[31]);
|
|
/* 0291C82C */ cpu->r[29] = cpu->r[3];
|
|
/* 0291C830 */ _t8 = cpu->r[29] + 0x00000138u;
|
|
/* 0291C830 */ cpu->r[8] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0291C834 */ _t9 = cpu->r[29] + 0x00000170u;
|
|
/* 0291C834 */ cpu->r[5] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0291C838 */ cpu->r[12] = 0x00000001u;
|
|
/* 0291C83C */ _t10 = cpu->r[8] + 0x00000004u;
|
|
/* 0291C83C */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0291C840 */ _t11 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0291C840 */ rbrew_write8(cpu->mem, _t11, (uint8_t)cpu->r[12]);
|
|
/* 0291C844 */ _t12 = cpu->r[5] + 0x00000374u;
|
|
/* 0291C844 */ cpu->r[11] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0291C848 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0291C84C */ cpu->r[31] = cpu->r[4];
|
|
/* 0291C850 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291C850 */ _t14 = _t13 & 0x00000001u;
|
|
/* 0291C850 */ if (_t14) goto L_0291C87C; else goto L_0291C854;
|
|
L_0291C854: ; // 0x291c854
|
|
/* 0291C854 */ _t15 = cpu->r[1] + 0x00000018u;
|
|
/* 0291C854 */ rbrew_write32(cpu->mem, _t15, cpu->r[30]);
|
|
/* 0291C858 */ _t16 = cpu->r[5] + 0x00000374u;
|
|
/* 0291C858 */ cpu->r[3] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0291C85C */ _t17 = cpu->r[3] + 0x00000000u;
|
|
/* 0291C85C */ cpu->r[10] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0291C860 */ _t18 = cpu->r[10] + 0x0000000Cu;
|
|
/* 0291C860 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0291C864 */ cpu->ctr = cpu->r[0];
|
|
/* 0291C868 */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 0291C86C */ cpu->r[5] = cpu->r[31];
|
|
/* 0291C870 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291C874 */ _t19 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0291C874 */ cpu->r[12] = rbrew_read8(cpu->mem, _t19);
|
|
/* 0291C878 */ cpu->r[31] = cpu->r[3];
|
|
L_0291C87C: ; // 0x291c87c
|
|
/* 0291C87C */ cpu->r[27] = 0x101D0000u;
|
|
/* 0291C880 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0291C884 */ cpu->r[28] = 0x00000000u;
|
|
/* 0291C888 */ _t20 = cpu->r[27] + 0xFFFFA504u;
|
|
/* 0291C888 */ cpu->r[27] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0291C88C */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291C88C */ _t22 = _t21 & 0x00000001u;
|
|
/* 0291C88C */ if (_t22) goto L_0291CD60; else goto L_0291C890;
|
|
L_0291C890: ; // 0x291c890
|
|
/* 0291C890 */ _t23 = cpu->r[29] + 0x00000140u;
|
|
/* 0291C890 */ cpu->r[7] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0291C894 */ _t24 = cpu->r[7] + 0x00000004u;
|
|
/* 0291C894 */ cpu->r[3] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0291C898 */ cpu->r[25] = 0x00000000u;
|
|
/* 0291C89C */ cpu->r[26] = 0x00000001u;
|
|
/* 0291C8A0 */ Gambit_fn_028F713C(cpu);
|
|
/* 0291C8A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291C8A8 */ _t25 = cpu->r[29] + 0x00000170u;
|
|
/* 0291C8A8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0291C8AC */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291C8AC */ _t27 = _t26 & 0x00000001u;
|
|
/* 0291C8AC */ if (_t27) goto L_0291C8B0; else goto L_0291C914;
|
|
L_0291C8B0: ; // 0x291c8b0
|
|
/* 0291C8B0 */ _t28 = cpu->r[5] + 0x00000378u;
|
|
/* 0291C8B0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0291C8B4 */ cpu->r[8] = rbrew_rlwinm(cpu->r[7], 0x00000002u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0291C8B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0291C8B8 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291C8B8 */ _t30 = _t29 & 0x00000001u;
|
|
/* 0291C8B8 */ if (_t30) goto L_0291C914; else goto L_0291C8BC;
|
|
L_0291C8BC: ; // 0x291c8bc
|
|
/* 0291C8BC */ _t31 = cpu->r[29] + 0x00000148u;
|
|
/* 0291C8BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0291C8C0 */ _t32 = cpu->r[29] + 0x00000140u;
|
|
/* 0291C8C0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0291C8C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0291C8C8 */ _t33 = cpu->r[5] + 0x00000004u;
|
|
/* 0291C8C8 */ cpu->r[24] = rbrew_read32(cpu->mem, _t33);
|
|
/* 0291C8CC */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291C8CC */ _t35 = _t34 & 0x00000001u;
|
|
/* 0291C8CC */ if (_t35) goto L_0291C8D0; else goto L_0291C8D8;
|
|
L_0291C8D0: ; // 0x291c8d0
|
|
/* 0291C8D0 */ cpu->r[26] = 0x00000000u;
|
|
/* 0291C8D4 */ goto L_0291C96C;
|
|
L_0291C8D8: ; // 0x291c8d8
|
|
/* 0291C8D8 */ _t36 = cpu->r[29] + 0x0000013Cu;
|
|
/* 0291C8D8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0291C8DC */ _t37 = cpu->r[3] + 0x000000A8u;
|
|
/* 0291C8DC */ cpu->r[10] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0291C8E0 */ _t38 = cpu->r[10] + 0x0000002Cu;
|
|
/* 0291C8E0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t38);
|
|
/* 0291C8E4 */ cpu->ctr = cpu->r[12];
|
|
/* 0291C8E8 */ cpu->r[4] = cpu->r[24];
|
|
/* 0291C8EC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291C8F0 */ _t39 = cpu->r[29] + 0x00000140u;
|
|
/* 0291C8F0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t39);
|
|
/* 0291C8F4 */ _t40 = cpu->r[29] + 0x00000170u;
|
|
/* 0291C8F4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0291C8F8 */ _t41 = cpu->r[9] + 0x00000004u;
|
|
/* 0291C8F8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0291C8FC */ cpu->r[11] = 0x10140000u;
|
|
/* 0291C900 */ _t42 = cpu->r[11] + 0x0000202Cu;
|
|
/* 0291C900 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 0291C904 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 0291C908 */ _t43 = cpu->r[12] + 0x000001F8u;
|
|
/* 0291C908 */ cpu->r[26] = rbrew_read32(cpu->mem, _t43);
|
|
/* 0291C90C */ _t44 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291C90C */ _t45 = _t44 & 0x00000001u;
|
|
/* 0291C90C */ if (_t45) goto L_0291CA54; else goto L_0291C910;
|
|
L_0291C910: ; // 0x291c910
|
|
/* 0291C910 */ goto L_0291C9A4;
|
|
L_0291C914: ; // 0x291c914
|
|
/* 0291C914 */ cpu->r[10] = 0x10140000u;
|
|
/* 0291C918 */ cpu->r[0] = 0x10140000u;
|
|
/* 0291C91C */ cpu->r[10] = cpu->r[10] + 0x00001884u;
|
|
/* 0291C920 */ cpu->r[0] = cpu->r[0] + 0x00002414u;
|
|
/* 0291C924 */ _t46 = cpu->r[1] + 0x00000024u;
|
|
/* 0291C924 */ rbrew_write32(cpu->mem, _t46, cpu->r[10]);
|
|
/* 0291C928 */ cpu->r[8] = 0x00000000u;
|
|
/* 0291C92C */ _t47 = cpu->r[1] + 0x00000020u;
|
|
/* 0291C92C */ rbrew_write32(cpu->mem, _t47, cpu->r[0]);
|
|
/* 0291C930 */ _t48 = cpu->r[30] + 0x00000008u;
|
|
/* 0291C930 */ cpu->r[0] = rbrew_read32(cpu->mem, _t48);
|
|
/* 0291C934 */ cpu->r[3] = cpu->r[27];
|
|
/* 0291C938 */ cpu->r[7] = 0x0000000Eu;
|
|
/* 0291C93C */ _t49 = cpu->r[30] + 0x0000007Cu;
|
|
/* 0291C93C */ cpu->r[6] = rbrew_read8(cpu->mem, _t49);
|
|
/* 0291C940 */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 0291C944 */ cpu->r[9] = cpu->r[8];
|
|
/* 0291C948 */ _t50 = cpu->r[5] + 0x0000020Cu;
|
|
/* 0291C948 */ cpu->r[5] = rbrew_read32(cpu->mem, _t50);
|
|
/* 0291C94C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], cpu->r[6]);
|
|
/* 0291C950 */ _t51 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291C950 */ _t52 = _t51 & 0x00000001u;
|
|
/* 0291C950 */ if (_t52) goto L_0291C954; else goto L_0291C958;
|
|
L_0291C954: ; // 0x291c954
|
|
/* 0291C954 */ cpu->r[6] = cpu->r[0];
|
|
L_0291C958: ; // 0x291c958
|
|
/* 0291C958 */ cpu->r[10] = 0x00000001u;
|
|
/* 0291C95C */ _t53 = cpu->r[1] + 0x00000008u;
|
|
/* 0291C95C */ rbrew_write32(cpu->mem, _t53, cpu->r[8]);
|
|
/* 0291C960 */ Gambit_fn_029458C4(cpu);
|
|
/* 0291C964 */ cpu->r[25] = 0x00000001u;
|
|
/* 0291C968 */ cpu->r[24] = cpu->r[3];
|
|
L_0291C96C: ; // 0x291c96c
|
|
/* 0291C96C */ _t54 = cpu->r[29] + 0x0000013Cu;
|
|
/* 0291C96C */ cpu->r[3] = rbrew_read32(cpu->mem, _t54);
|
|
/* 0291C970 */ _t55 = cpu->r[3] + 0x000000A8u;
|
|
/* 0291C970 */ cpu->r[10] = rbrew_read32(cpu->mem, _t55);
|
|
/* 0291C974 */ _t56 = cpu->r[10] + 0x0000002Cu;
|
|
/* 0291C974 */ cpu->r[12] = rbrew_read32(cpu->mem, _t56);
|
|
/* 0291C978 */ cpu->ctr = cpu->r[12];
|
|
/* 0291C97C */ cpu->r[4] = cpu->r[24];
|
|
/* 0291C980 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291C984 */ _t57 = cpu->r[29] + 0x00000140u;
|
|
/* 0291C984 */ cpu->r[9] = rbrew_read32(cpu->mem, _t57);
|
|
/* 0291C988 */ _t58 = cpu->r[29] + 0x00000170u;
|
|
/* 0291C988 */ cpu->r[12] = rbrew_read32(cpu->mem, _t58);
|
|
/* 0291C98C */ _t59 = cpu->r[9] + 0x00000004u;
|
|
/* 0291C98C */ cpu->r[30] = rbrew_read32(cpu->mem, _t59);
|
|
/* 0291C990 */ cpu->r[11] = 0x10140000u;
|
|
/* 0291C994 */ _t60 = cpu->r[11] + 0x0000202Cu;
|
|
/* 0291C994 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t60);
|
|
/* 0291C998 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 0291C99C */ _t61 = cpu->r[12] + 0x000001F8u;
|
|
/* 0291C99C */ cpu->r[26] = rbrew_read32(cpu->mem, _t61);
|
|
/* 0291C9A0 */ _t62 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291C9A0 */ _t63 = _t62 & 0x00000001u;
|
|
/* 0291C9A0 */ if (_t63) goto L_0291CA54; else goto L_0291C9A4;
|
|
L_0291C9A4: ; // 0x291c9a4
|
|
/* 0291C9A4 */ _t64 = cpu->r[29] + 0x00000138u;
|
|
/* 0291C9A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t64);
|
|
/* 0291C9A8 */ _t65 = cpu->r[12] + 0x00000004u;
|
|
/* 0291C9A8 */ cpu->r[23] = rbrew_read32(cpu->mem, _t65);
|
|
/* 0291C9AC */ _t66 = cpu->r[29] + 0x0000013Cu;
|
|
/* 0291C9AC */ cpu->r[22] = rbrew_read32(cpu->mem, _t66);
|
|
/* 0291C9B0 */ cpu->r[3] = cpu->r[23];
|
|
/* 0291C9B4 */ _t67 = cpu->r[9] + 0x00001544u;
|
|
/* 0291C9B4 */ cpu->r[21] = rbrew_read32(cpu->mem, _t67);
|
|
/* 0291C9B8 */ Gambit_fn_028F714C(cpu);
|
|
/* 0291C9BC */ _t68 = cpu->r[22] + 0x00000004u;
|
|
/* 0291C9BC */ cpu->r[3] = rbrew_read32(cpu->mem, _t68);
|
|
/* 0291C9C0 */ cpu->r[4] = cpu->r[23];
|
|
/* 0291C9C4 */ cpu->r[5] = 0x00000000u;
|
|
/* 0291C9C8 */ cpu->r[8] = cpu->r[31];
|
|
/* 0291C9CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], 0x00000000u);
|
|
/* 0291C9D0 */ cpu->r[6] = cpu->r[5];
|
|
/* 0291C9D4 */ _t69 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291C9D4 */ _t70 = _t69 & 0x00000001u;
|
|
/* 0291C9D4 */ if (_t70) goto L_0291CA1C; else goto L_0291C9D8;
|
|
L_0291C9D8: ; // 0x291c9d8
|
|
/* 0291C9D8 */ cpu->r[12] = 0x10140000u;
|
|
/* 0291C9DC */ _t71 = cpu->r[1] + 0x00000014u;
|
|
/* 0291C9DC */ rbrew_write32(cpu->mem, _t71, cpu->r[21]);
|
|
/* 0291C9E0 */ cpu->r[0] = 0x43300000u;
|
|
/* 0291C9E4 */ _t72 = cpu->r[12] + 0x00002158u;
|
|
/* 0291C9E4 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t72);
|
|
/* 0291C9E8 */ _t73 = cpu->r[1] + 0x00000010u;
|
|
/* 0291C9E8 */ rbrew_write32(cpu->mem, _t73, cpu->r[0]);
|
|
/* 0291C9EC */ _t74 = cpu->r[1] + 0x00000010u;
|
|
/* 0291C9EC */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t74);
|
|
/* 0291C9F0 */ cpu->r[10] = 0x10140000u;
|
|
/* 0291C9F4 */ cpu->f[0] = cpu->f[13] - cpu->f[0];
|
|
/* 0291C9F8 */ _t75 = cpu->r[10] + 0x0000240Cu;
|
|
/* 0291C9F8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t75);
|
|
/* 0291C9FC */ cpu->r[11] = 0x10140000u;
|
|
/* 0291CA00 */ cpu->f[11] = (double)(float)cpu->f[0];
|
|
/* 0291CA04 */ _t76 = cpu->r[11] + 0x00002408u;
|
|
/* 0291CA04 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t76);
|
|
/* 0291CA08 */ cpu->f[1] = fma(cpu->f[11], cpu->f[13], cpu->f[12]);
|
|
/* 0291CA0C */ cpu->r[7] = cpu->r[21];
|
|
/* 0291CA10 */ Gambit_fn_02963084(cpu);
|
|
/* 0291CA14 */ cpu->r[31] = cpu->r[3];
|
|
/* 0291CA18 */ goto L_0291CA54;
|
|
L_0291CA1C: ; // 0x291ca1c
|
|
/* 0291CA1C */ _t77 = cpu->r[22] + 0x00000000u;
|
|
/* 0291CA1C */ cpu->r[7] = rbrew_read32(cpu->mem, _t77);
|
|
/* 0291CA20 */ _t78 = cpu->r[7] + 0x00000218u;
|
|
/* 0291CA20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t78);
|
|
/* 0291CA24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0291CA28 */ _t79 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291CA28 */ _t80 = _t79 & 0x00000001u;
|
|
/* 0291CA28 */ if (_t80) goto L_0291CA44; else goto L_0291CA2C;
|
|
L_0291CA2C: ; // 0x291ca2c
|
|
/* 0291CA2C */ cpu->r[7] = 0x10140000u;
|
|
/* 0291CA30 */ _t81 = cpu->r[7] + 0x00001FB4u;
|
|
/* 0291CA30 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t81);
|
|
/* 0291CA34 */ cpu->r[7] = cpu->r[6];
|
|
/* 0291CA38 */ Gambit_fn_02963084(cpu);
|
|
/* 0291CA3C */ cpu->r[31] = cpu->r[3];
|
|
/* 0291CA40 */ goto L_0291CA54;
|
|
L_0291CA44: ; // 0x291ca44
|
|
/* 0291CA44 */ cpu->f[1] = cpu->f[31];
|
|
/* 0291CA48 */ _t82 = cpu->r[7] + 0x00000214u;
|
|
/* 0291CA48 */ cpu->r[7] = rbrew_read32(cpu->mem, _t82);
|
|
/* 0291CA4C */ Gambit_fn_02963084(cpu);
|
|
/* 0291CA50 */ cpu->r[31] = cpu->r[3];
|
|
L_0291CA54: ; // 0x291ca54
|
|
/* 0291CA54 */ _t83 = cpu->r[29] + 0x0000013Cu;
|
|
/* 0291CA54 */ cpu->r[22] = rbrew_read32(cpu->mem, _t83);
|
|
/* 0291CA58 */ _t84 = cpu->r[22] + 0x00000000u;
|
|
/* 0291CA58 */ cpu->r[10] = rbrew_read32(cpu->mem, _t84);
|
|
/* 0291CA5C */ _t85 = cpu->r[10] + 0x00000218u;
|
|
/* 0291CA5C */ cpu->r[8] = rbrew_read32(cpu->mem, _t85);
|
|
/* 0291CA60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0291CA64 */ cpu->r[23] = 0xFFFFFFFFu;
|
|
/* 0291CA68 */ _t86 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291CA68 */ _t87 = _t86 & 0x00000001u;
|
|
/* 0291CA68 */ if (_t87) goto L_0291CAAC; else goto L_0291CA6C;
|
|
L_0291CA6C: ; // 0x291ca6c
|
|
/* 0291CA6C */ _t88 = cpu->r[10] + 0x00000218u;
|
|
/* 0291CA6C */ cpu->r[9] = rbrew_read32(cpu->mem, _t88);
|
|
/* 0291CA70 */ cpu->r[10] = 0x43300000u;
|
|
/* 0291CA74 */ _t89 = cpu->r[1] + 0x00000010u;
|
|
/* 0291CA74 */ rbrew_write32(cpu->mem, _t89, cpu->r[10]);
|
|
/* 0291CA78 */ cpu->r[8] = 0x10140000u;
|
|
/* 0291CA7C */ _t90 = cpu->r[1] + 0x00000014u;
|
|
/* 0291CA7C */ rbrew_write32(cpu->mem, _t90, cpu->r[9]);
|
|
/* 0291CA80 */ _t91 = cpu->r[1] + 0x00000010u;
|
|
/* 0291CA80 */ cpu->f[12] = rbrew_read_f64(cpu->mem, _t91);
|
|
/* 0291CA84 */ _t92 = cpu->r[8] + 0x00002158u;
|
|
/* 0291CA84 */ cpu->f[11] = rbrew_read_f64(cpu->mem, _t92);
|
|
/* 0291CA88 */ _t93 = cpu->r[22] + 0x00000004u;
|
|
/* 0291CA88 */ cpu->r[3] = rbrew_read32(cpu->mem, _t93);
|
|
/* 0291CA8C */ cpu->f[0] = cpu->f[12] - cpu->f[11];
|
|
/* 0291CA90 */ _t94 = cpu->r[3] + 0x00000014u;
|
|
/* 0291CA90 */ cpu->r[6] = rbrew_read32(cpu->mem, _t94);
|
|
/* 0291CA94 */ cpu->r[7] = 0xFFFFFFFFu;
|
|
/* 0291CA98 */ cpu->f[10] = (double)(float)cpu->f[0];
|
|
/* 0291CA9C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[7]);
|
|
/* 0291CAA0 */ cpu->f[29] = cpu->f[31] / cpu->f[10];
|
|
/* 0291CAA4 */ _t95 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291CAA4 */ _t96 = _t95 & 0x00000001u;
|
|
/* 0291CAA4 */ if (_t96) goto L_0291CAC4; else goto L_0291CAA8;
|
|
L_0291CAA8: ; // 0x291caa8
|
|
/* 0291CAA8 */ goto L_0291CAC8;
|
|
L_0291CAAC: ; // 0x291caac
|
|
/* 0291CAAC */ _t97 = cpu->r[22] + 0x00000004u;
|
|
/* 0291CAAC */ cpu->r[3] = rbrew_read32(cpu->mem, _t97);
|
|
/* 0291CAB0 */ cpu->r[7] = 0xFFFFFFFFu;
|
|
/* 0291CAB4 */ _t98 = cpu->r[3] + 0x00000014u;
|
|
/* 0291CAB4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t98);
|
|
/* 0291CAB8 */ cpu->f[29] = cpu->f[31] / cpu->f[31];
|
|
/* 0291CABC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[7]);
|
|
/* 0291CAC0 */ _t99 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291CAC0 */ _t100 = _t99 & 0x00000001u;
|
|
/* 0291CAC0 */ if (_t100) goto L_0291CAC4; else goto L_0291CAC8;
|
|
L_0291CAC4: ; // 0x291cac4
|
|
/* 0291CAC4 */ _t101 = cpu->r[3] + 0x00000014u;
|
|
/* 0291CAC4 */ cpu->r[23] = rbrew_read32(cpu->mem, _t101);
|
|
L_0291CAC8: ; // 0x291cac8
|
|
/* 0291CAC8 */ cpu->r[5] = 0x00000001u;
|
|
/* 0291CACC */ cpu->r[4] = 0x00000000u;
|
|
/* 0291CAD0 */ Gambit_fn_0296203C(cpu);
|
|
/* 0291CAD4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[23], 0x00000001u);
|
|
/* 0291CAD8 */ cpu->r[23] = cpu->r[23] + 0xFFFFFFFFu;
|
|
/* 0291CADC */ cpu->r[21] = 0x00000001u;
|
|
/* 0291CAE0 */ _t102 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291CAE0 */ _t103 = _t102 & 0x00000001u;
|
|
/* 0291CAE0 */ if (_t103) goto L_0291CAE4; else goto L_0291CB9C;
|
|
L_0291CAE4: ; // 0x291cae4
|
|
/* 0291CAE4 */ cpu->r[7] = 0x10140000u;
|
|
/* 0291CAE8 */ _t104 = cpu->r[7] + 0x00002410u;
|
|
/* 0291CAE8 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t104);
|
|
L_0291CAEC: ; // 0x291caec
|
|
/* 0291CAEC */ cpu->r[6] = 0x10140000u;
|
|
/* 0291CAF0 */ _t105 = cpu->r[1] + 0x00000014u;
|
|
/* 0291CAF0 */ rbrew_write32(cpu->mem, _t105, cpu->r[21]);
|
|
/* 0291CAF4 */ cpu->r[0] = 0x43300000u;
|
|
/* 0291CAF8 */ _t106 = cpu->r[6] + 0x00002158u;
|
|
/* 0291CAF8 */ cpu->f[10] = rbrew_read_f64(cpu->mem, _t106);
|
|
/* 0291CAFC */ _t107 = cpu->r[1] + 0x00000010u;
|
|
/* 0291CAFC */ rbrew_write32(cpu->mem, _t107, cpu->r[0]);
|
|
/* 0291CB00 */ _t108 = cpu->r[1] + 0x00000010u;
|
|
/* 0291CB00 */ cpu->f[11] = rbrew_read_f64(cpu->mem, _t108);
|
|
/* 0291CB04 */ cpu->f[0] = cpu->f[11] - cpu->f[10];
|
|
/* 0291CB08 */ _t109 = cpu->r[22] + 0x00000000u;
|
|
/* 0291CB08 */ cpu->r[5] = rbrew_read32(cpu->mem, _t109);
|
|
/* 0291CB0C */ cpu->f[13] = (double)(float)cpu->f[0];
|
|
/* 0291CB10 */ _t110 = cpu->r[5] + 0x0000021Cu;
|
|
/* 0291CB10 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t110);
|
|
/* 0291CB14 */ cpu->f[12] = cpu->f[13] * cpu->f[10];
|
|
/* 0291CB18 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[30]);
|
|
/* 0291CB1C */ cpu->f[1] = cpu->f[13] * cpu->f[29];
|
|
/* 0291CB20 */ _t111 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291CB20 */ _t112 = _t111 & 0x00000001u;
|
|
/* 0291CB20 */ if (_t112) goto L_0291CB24; else goto L_0291CB4C;
|
|
L_0291CB24: ; // 0x291cb24
|
|
/* 0291CB24 */ cpu->f[0] = (uint32_t)(int32_t)cpu->f[12];
|
|
/* 0291CB28 */ cpu->r[11] = cpu->r[1] + 0x00000010u;
|
|
/* 0291CB2C */ /* nop */
|
|
/* 0291CB30 */ _t113 = cpu->r[5] + 0x00000214u;
|
|
/* 0291CB30 */ cpu->r[9] = rbrew_read32(cpu->mem, _t113);
|
|
/* 0291CB34 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[31]);
|
|
/* 0291CB38 */ _t114 = cpu->r[1] + 0x00000010u;
|
|
/* 0291CB38 */ cpu->r[12] = rbrew_read32(cpu->mem, _t114);
|
|
/* 0291CB3C */ _t115 = cpu->r[22] + 0x00000004u;
|
|
/* 0291CB3C */ cpu->r[3] = rbrew_read32(cpu->mem, _t115);
|
|
/* 0291CB40 */ cpu->r[6] = cpu->r[9] + cpu->r[12];
|
|
/* 0291CB44 */ _t116 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291CB44 */ _t117 = _t116 & 0x00000001u;
|
|
/* 0291CB44 */ if (_t117) goto L_0291CB78; else goto L_0291CB48;
|
|
L_0291CB48: ; // 0x291cb48
|
|
/* 0291CB48 */ goto L_0291CB7C;
|
|
L_0291CB4C: ; // 0x291cb4c
|
|
/* 0291CB4C */ cpu->f[10] = cpu->f[12] - cpu->f[30];
|
|
/* 0291CB50 */ cpu->f[11] = (uint32_t)(int32_t)cpu->f[10];
|
|
/* 0291CB54 */ cpu->r[0] = cpu->r[1] + 0x00000010u;
|
|
/* 0291CB58 */ /* nop */
|
|
/* 0291CB5C */ _t118 = cpu->r[1] + 0x00000010u;
|
|
/* 0291CB5C */ cpu->r[8] = rbrew_read32(cpu->mem, _t118);
|
|
/* 0291CB60 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[31]);
|
|
/* 0291CB64 */ _t119 = cpu->r[5] + 0x00000214u;
|
|
/* 0291CB64 */ cpu->r[9] = rbrew_read32(cpu->mem, _t119);
|
|
/* 0291CB68 */ cpu->r[0] = cpu->r[8] + 0x80000000u;
|
|
/* 0291CB6C */ _t120 = cpu->r[22] + 0x00000004u;
|
|
/* 0291CB6C */ cpu->r[3] = rbrew_read32(cpu->mem, _t120);
|
|
/* 0291CB70 */ cpu->r[6] = cpu->r[9] + cpu->r[0];
|
|
/* 0291CB74 */ _t121 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291CB74 */ _t122 = _t121 & 0x00000001u;
|
|
/* 0291CB74 */ if (_t122) goto L_0291CB78; else goto L_0291CB7C;
|
|
L_0291CB78: ; // 0x291cb78
|
|
/* 0291CB78 */ cpu->f[1] = cpu->f[31];
|
|
L_0291CB7C: ; // 0x291cb7c
|
|
/* 0291CB7C */ cpu->r[7] = cpu->r[31];
|
|
/* 0291CB80 */ cpu->r[5] = cpu->r[21] + 0x00000001u;
|
|
/* 0291CB84 */ cpu->r[4] = cpu->r[21];
|
|
/* 0291CB88 */ Gambit_fn_02963284(cpu);
|
|
/* 0291CB8C */ cpu->r[23] = cpu->r[23] + 0xFFFFFFFFu;
|
|
/* 0291CB8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u);
|
|
/* 0291CB90 */ cpu->r[21] = cpu->r[21] + 0x00000001u;
|
|
/* 0291CB94 */ cpu->r[31] = cpu->r[3];
|
|
/* 0291CB98 */ _t123 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291CB98 */ _t124 = _t123 & 0x00000001u;
|
|
/* 0291CB98 */ if (_t124) goto L_0291CB9C; else goto L_0291CAEC;
|
|
L_0291CB9C: ; // 0x291cb9c
|
|
/* 0291CB9C */ _t125 = cpu->r[22] + 0x00000004u;
|
|
/* 0291CB9C */ cpu->r[3] = rbrew_read32(cpu->mem, _t125);
|
|
/* 0291CBA0 */ Gambit_fn_029621F4(cpu);
|
|
/* 0291CBA4 */ _t126 = cpu->r[29] + 0x0000013Cu;
|
|
/* 0291CBA4 */ cpu->r[21] = rbrew_read32(cpu->mem, _t126);
|
|
/* 0291CBA8 */ _t127 = cpu->r[21] + 0x00000004u;
|
|
/* 0291CBA8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t127);
|
|
/* 0291CBAC */ _t128 = cpu->r[3] + 0x00000014u;
|
|
/* 0291CBAC */ cpu->r[10] = rbrew_read32(cpu->mem, _t128);
|
|
/* 0291CBB0 */ cpu->r[23] = 0xFFFFFFFFu;
|
|
/* 0291CBB4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[23]);
|
|
/* 0291CBB8 */ _t129 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291CBB8 */ _t130 = _t129 & 0x00000001u;
|
|
/* 0291CBB8 */ if (_t130) goto L_0291CBBC; else goto L_0291CBC0;
|
|
L_0291CBBC: ; // 0x291cbbc
|
|
/* 0291CBBC */ _t131 = cpu->r[3] + 0x00000014u;
|
|
/* 0291CBBC */ cpu->r[23] = rbrew_read32(cpu->mem, _t131);
|
|
L_0291CBC0: ; // 0x291cbc0
|
|
/* 0291CBC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 0291CBC4 */ _t132 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291CBC4 */ _t133 = _t132 & 0x00000001u;
|
|
/* 0291CBC4 */ if (_t133) goto L_0291CBC8; else goto L_0291CBCC;
|
|
L_0291CBC8: ; // 0x291cbc8
|
|
/* 0291CBC8 */ cpu->r[26] = 0x00000001u;
|
|
L_0291CBCC: ; // 0x291cbcc
|
|
/* 0291CBCC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], cpu->r[23]);
|
|
/* 0291CBD0 */ _t134 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291CBD0 */ _t135 = _t134 & 0x00000001u;
|
|
/* 0291CBD0 */ if (_t135) goto L_0291CBD4; else goto L_0291CC28;
|
|
L_0291CBD4: ; // 0x291cbd4
|
|
/* 0291CBD4 */ cpu->r[5] = 0x00000001u;
|
|
/* 0291CBD8 */ cpu->r[4] = 0x00000000u;
|
|
/* 0291CBDC */ Gambit_fn_0296203C(cpu);
|
|
/* 0291CBE0 */ cpu->r[22] = cpu->r[23] + 0xFFFFFFFFu;
|
|
/* 0291CBE4 */ cpu->r[11] = cpu->r[22] - cpu->r[26];
|
|
/* 0291CBE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], cpu->r[22]);
|
|
/* 0291CBEC */ cpu->r[23] = cpu->r[11] + 0x00000001u;
|
|
/* 0291CBF0 */ _t136 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291CBF0 */ _t137 = _t136 & 0x00000001u;
|
|
/* 0291CBF0 */ if (_t137) goto L_0291CC20; else goto L_0291CBF4;
|
|
L_0291CBF4: ; // 0x291cbf4
|
|
/* 0291CBF4 */ cpu->r[26] = cpu->r[22] + 0xFFFFFFFFu;
|
|
L_0291CBF8: ; // 0x291cbf8
|
|
/* 0291CBF8 */ _t138 = cpu->r[21] + 0x00000004u;
|
|
/* 0291CBF8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t138);
|
|
/* 0291CBFC */ cpu->r[6] = cpu->r[31];
|
|
/* 0291CC00 */ cpu->r[5] = cpu->r[22];
|
|
/* 0291CC04 */ cpu->r[4] = cpu->r[26];
|
|
/* 0291CC08 */ Gambit_fn_0296329C(cpu);
|
|
/* 0291CC0C */ cpu->r[31] = cpu->r[3];
|
|
/* 0291CC10 */ cpu->r[23] = cpu->r[23] + 0xFFFFFFFFu;
|
|
/* 0291CC10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u);
|
|
/* 0291CC14 */ cpu->r[22] = cpu->r[22] + 0xFFFFFFFFu;
|
|
/* 0291CC18 */ cpu->r[26] = cpu->r[26] + 0xFFFFFFFFu;
|
|
/* 0291CC1C */ _t139 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291CC1C */ _t140 = _t139 & 0x00000001u;
|
|
/* 0291CC1C */ if (_t140) goto L_0291CC20; else goto L_0291CBF8;
|
|
L_0291CC20: ; // 0x291cc20
|
|
/* 0291CC20 */ _t141 = cpu->r[21] + 0x00000004u;
|
|
/* 0291CC20 */ cpu->r[3] = rbrew_read32(cpu->mem, _t141);
|
|
/* 0291CC24 */ Gambit_fn_029621F4(cpu);
|
|
L_0291CC28: ; // 0x291cc28
|
|
/* 0291CC28 */ cpu->r[3] = cpu->r[30];
|
|
/* 0291CC2C */ Gambit_fn_028F713C(cpu);
|
|
/* 0291CC30 */ _t142 = cpu->r[29] + 0x00000170u;
|
|
/* 0291CC30 */ cpu->r[5] = rbrew_read32(cpu->mem, _t142);
|
|
/* 0291CC34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291CC38 */ _t143 = cpu->r[5] + 0x00000378u;
|
|
/* 0291CC38 */ cpu->r[12] = rbrew_read32(cpu->mem, _t143);
|
|
/* 0291CC3C */ _t144 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291CC3C */ _t145 = _t144 & 0x00000001u;
|
|
/* 0291CC3C */ if (_t145) goto L_0291CC50; else goto L_0291CC40;
|
|
L_0291CC40: ; // 0x291cc40
|
|
/* 0291CC40 */ cpu->r[0] = rbrew_rlwinm(cpu->r[12], 0x00000002u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0291CC40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0291CC44 */ _t146 = cpu->r[29] + 0x0000013Cu;
|
|
/* 0291CC44 */ cpu->r[26] = rbrew_read32(cpu->mem, _t146);
|
|
/* 0291CC48 */ _t147 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291CC48 */ _t148 = _t147 & 0x00000001u;
|
|
/* 0291CC48 */ if (_t148) goto L_0291CC5C; else goto L_0291CC4C;
|
|
L_0291CC4C: ; // 0x291cc4c
|
|
/* 0291CC4C */ goto L_0291CC78;
|
|
L_0291CC50: ; // 0x291cc50
|
|
/* 0291CC50 */ cpu->r[0] = rbrew_rlwinm(cpu->r[12], 0x00000002u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0291CC50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0291CC54 */ _t149 = cpu->r[29] + 0x00000140u;
|
|
/* 0291CC54 */ cpu->r[26] = rbrew_read32(cpu->mem, _t149);
|
|
/* 0291CC58 */ _t150 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291CC58 */ _t151 = _t150 & 0x00000001u;
|
|
/* 0291CC58 */ if (_t151) goto L_0291CC5C; else goto L_0291CC78;
|
|
L_0291CC5C: ; // 0x291cc5c
|
|
/* 0291CC5C */ _t152 = cpu->r[29] + 0x00000140u;
|
|
/* 0291CC5C */ cpu->r[5] = rbrew_read32(cpu->mem, _t152);
|
|
/* 0291CC60 */ cpu->r[6] = cpu->r[31];
|
|
/* 0291CC64 */ _t153 = cpu->r[26] + 0x00000004u;
|
|
/* 0291CC64 */ cpu->r[4] = rbrew_read32(cpu->mem, _t153);
|
|
/* 0291CC68 */ _t154 = cpu->r[29] + 0x0000013Cu;
|
|
/* 0291CC68 */ cpu->r[3] = rbrew_read32(cpu->mem, _t154);
|
|
/* 0291CC6C */ Gambit_fn_0291BD10(cpu);
|
|
/* 0291CC70 */ _t155 = cpu->r[29] + 0x00000170u;
|
|
/* 0291CC70 */ cpu->r[5] = rbrew_read32(cpu->mem, _t155);
|
|
/* 0291CC74 */ cpu->r[31] = cpu->r[3];
|
|
L_0291CC78: ; // 0x291cc78
|
|
/* 0291CC78 */ _t156 = cpu->r[5] + 0x00000378u;
|
|
/* 0291CC78 */ cpu->r[5] = rbrew_read32(cpu->mem, _t156);
|
|
/* 0291CC7C */ cpu->r[6] = rbrew_rlwinm(cpu->r[5], 0x00000003u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0291CC7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 0291CC80 */ _t157 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291CC80 */ _t158 = _t157 & 0x00000001u;
|
|
/* 0291CC80 */ if (_t158) goto L_0291CCBC; else goto L_0291CC84;
|
|
L_0291CC84: ; // 0x291cc84
|
|
/* 0291CC84 */ _t159 = cpu->r[29] + 0x00000140u;
|
|
/* 0291CC84 */ cpu->r[9] = rbrew_read32(cpu->mem, _t159);
|
|
/* 0291CC88 */ cpu->r[8] = 0x10110000u;
|
|
/* 0291CC8C */ _t160 = cpu->r[9] + 0x00001574u;
|
|
/* 0291CC8C */ cpu->r[7] = rbrew_read32(cpu->mem, _t160);
|
|
/* 0291CC90 */ _t161 = cpu->r[8] + 0x00007399u;
|
|
/* 0291CC90 */ cpu->r[0] = rbrew_read8(cpu->mem, _t161);
|
|
/* 0291CC94 */ _t162 = cpu->r[7] + 0x00000000u;
|
|
/* 0291CC94 */ cpu->r[10] = rbrew_read8(cpu->mem, _t162);
|
|
/* 0291CC98 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[0]);
|
|
/* 0291CC9C */ _t163 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291CC9C */ _t164 = _t163 & 0x00000001u;
|
|
/* 0291CC9C */ if (_t164) goto L_0291CCBC; else goto L_0291CCA0;
|
|
L_0291CCA0: ; // 0x291cca0
|
|
/* 0291CCA0 */ _t165 = cpu->r[9] + 0x00001568u;
|
|
/* 0291CCA0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t165);
|
|
/* 0291CCA4 */ cpu->r[6] = 0x00000001u;
|
|
/* 0291CCA8 */ cpu->r[7] = cpu->r[31];
|
|
/* 0291CCAC */ cpu->r[4] = cpu->r[9] + 0x00001574u;
|
|
/* 0291CCB0 */ cpu->r[3] = cpu->r[26];
|
|
/* 0291CCB4 */ Gambit_fn_02918850(cpu);
|
|
/* 0291CCB8 */ cpu->r[31] = cpu->r[3];
|
|
L_0291CCBC: ; // 0x291ccbc
|
|
/* 0291CCBC */ cpu->r[3] = cpu->r[30];
|
|
/* 0291CCC0 */ Gambit_fn_028F713C(cpu);
|
|
/* 0291CCC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291CCC8 */ _t166 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291CCC8 */ _t167 = _t166 & 0x00000001u;
|
|
/* 0291CCC8 */ if (_t167) goto L_0291CD4C; else goto L_0291CCCC;
|
|
L_0291CCCC: ; // 0x291cccc
|
|
/* 0291CCCC */ _t168 = cpu->r[29] + 0x0000013Cu;
|
|
/* 0291CCCC */ cpu->r[12] = rbrew_read32(cpu->mem, _t168);
|
|
/* 0291CCD0 */ _t169 = cpu->r[29] + 0x00000170u;
|
|
/* 0291CCD0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t169);
|
|
/* 0291CCD4 */ _t170 = cpu->r[12] + 0x00000004u;
|
|
/* 0291CCD4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t170);
|
|
/* 0291CCD8 */ _t171 = cpu->r[30] + 0x00000014u;
|
|
/* 0291CCD8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t171);
|
|
/* 0291CCDC */ _t172 = cpu->r[3] + 0x00000014u;
|
|
/* 0291CCDC */ cpu->r[6] = rbrew_read32(cpu->mem, _t172);
|
|
/* 0291CCE0 */ _t173 = cpu->r[5] + 0x00000378u;
|
|
/* 0291CCE0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t173);
|
|
/* 0291CCE4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[6]);
|
|
/* 0291CCE8 */ _t174 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291CCE8 */ _t175 = _t174 & 0x00000001u;
|
|
/* 0291CCE8 */ if (_t175) goto L_0291CCEC; else goto L_0291CCF0;
|
|
L_0291CCEC: ; // 0x291ccec
|
|
/* 0291CCEC */ cpu->r[6] = cpu->r[0];
|
|
L_0291CCF0: ; // 0x291ccf0
|
|
/* 0291CCF0 */ cpu->r[7] = rbrew_rlwinm(cpu->r[5], 0x00000010u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0291CCF0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0291CCF4 */ _t176 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291CCF4 */ _t177 = _t176 & 0x00000001u;
|
|
/* 0291CCF4 */ if (_t177) goto L_0291CD28; else goto L_0291CCF8;
|
|
L_0291CCF8: ; // 0x291ccf8
|
|
/* 0291CCF8 */ _t178 = cpu->r[29] + 0x00000140u;
|
|
/* 0291CCF8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t178);
|
|
/* 0291CCFC */ _t179 = cpu->r[12] + 0x000000A4u;
|
|
/* 0291CCFC */ cpu->r[8] = rbrew_read32(cpu->mem, _t179);
|
|
/* 0291CD00 */ cpu->r[4] = cpu->r[30];
|
|
/* 0291CD04 */ cpu->r[7] = (uint32_t)((int32_t)cpu->r[8] * (int32_t)0x00000006u);
|
|
/* 0291CD08 */ cpu->r[8] = 0x00000000u;
|
|
/* 0291CD0C */ cpu->r[5] = 0x00000006u;
|
|
/* 0291CD10 */ cpu->r[10] = cpu->r[8];
|
|
/* 0291CD14 */ cpu->r[9] = cpu->r[8];
|
|
/* 0291CD18 */ _t180 = cpu->r[1] + 0x00000008u;
|
|
/* 0291CD18 */ rbrew_write32(cpu->mem, _t180, cpu->r[31]);
|
|
/* 0291CD1C */ Gambit_fn_028F7FEC(cpu);
|
|
/* 0291CD20 */ cpu->r[31] = cpu->r[3];
|
|
/* 0291CD24 */ goto L_0291CD4C;
|
|
L_0291CD28: ; // 0x291cd28
|
|
/* 0291CD28 */ cpu->r[7] = 0x00000000u;
|
|
/* 0291CD2C */ cpu->r[4] = cpu->r[30];
|
|
/* 0291CD30 */ cpu->r[9] = cpu->r[7];
|
|
/* 0291CD34 */ cpu->r[8] = cpu->r[7];
|
|
/* 0291CD38 */ cpu->r[5] = 0x00000006u;
|
|
/* 0291CD3C */ cpu->r[10] = cpu->r[9];
|
|
/* 0291CD40 */ _t181 = cpu->r[1] + 0x00000008u;
|
|
/* 0291CD40 */ rbrew_write32(cpu->mem, _t181, cpu->r[31]);
|
|
/* 0291CD44 */ Gambit_fn_028F7FEC(cpu);
|
|
/* 0291CD48 */ cpu->r[31] = cpu->r[3];
|
|
L_0291CD4C: ; // 0x291cd4c
|
|
/* 0291CD4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 0291CD50 */ _t182 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291CD50 */ _t183 = _t182 & 0x00000001u;
|
|
/* 0291CD50 */ if (_t183) goto L_0291CD60; else goto L_0291CD54;
|
|
L_0291CD54: ; // 0x291cd54
|
|
/* 0291CD54 */ cpu->r[3] = cpu->r[27];
|
|
/* 0291CD58 */ cpu->r[4] = cpu->r[24];
|
|
/* 0291CD5C */ Gambit_fn_02945C10(cpu);
|
|
L_0291CD60: ; // 0x291cd60
|
|
/* 0291CD60 */ _t184 = cpu->r[29] + 0x00000148u;
|
|
/* 0291CD60 */ cpu->r[4] = rbrew_read32(cpu->mem, _t184);
|
|
/* 0291CD64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 0291CD68 */ _t185 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291CD68 */ _t186 = _t185 & 0x00000001u;
|
|
/* 0291CD68 */ if (_t186) goto L_0291CD84; else goto L_0291CD6C;
|
|
L_0291CD6C: ; // 0x291cd6c
|
|
/* 0291CD6C */ _t187 = cpu->r[29] + 0x00000144u;
|
|
/* 0291CD6C */ cpu->r[9] = rbrew_read32(cpu->mem, _t187);
|
|
/* 0291CD70 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], 0x00000003u);
|
|
/* 0291CD74 */ _t188 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291CD74 */ _t189 = _t188 & 0x00000001u;
|
|
/* 0291CD74 */ if (_t189) goto L_0291CD80; else goto L_0291CD78;
|
|
L_0291CD78: ; // 0x291cd78
|
|
/* 0291CD78 */ cpu->r[3] = cpu->r[27];
|
|
/* 0291CD7C */ Gambit_fn_02945C10(cpu);
|
|
L_0291CD80: ; // 0x291cd80
|
|
/* 0291CD80 */ _t190 = cpu->r[29] + 0x00000148u;
|
|
/* 0291CD80 */ rbrew_write32(cpu->mem, _t190, cpu->r[28]);
|
|
L_0291CD84: ; // 0x291cd84
|
|
/* 0291CD84 */ _t191 = cpu->r[29] + 0x00000140u;
|
|
/* 0291CD84 */ cpu->r[11] = rbrew_read32(cpu->mem, _t191);
|
|
/* 0291CD88 */ _t192 = cpu->r[11] + 0x00001560u;
|
|
/* 0291CD88 */ cpu->r[10] = rbrew_read32(cpu->mem, _t192);
|
|
/* 0291CD8C */ cpu->r[10] = cpu->r[10] + 0xFFFFFFFFu;
|
|
/* 0291CD90 */ cpu->r[0] = 0x00000001u;
|
|
/* 0291CD94 */ _t193 = cpu->r[11] + 0x00001560u;
|
|
/* 0291CD94 */ rbrew_write32(cpu->mem, _t193, cpu->r[10]);
|
|
/* 0291CD98 */ cpu->r[3] = cpu->r[31];
|
|
/* 0291CD9C */ _t194 = cpu->r[29] + 0x0000016Du;
|
|
/* 0291CD9C */ rbrew_write8(cpu->mem, _t194, (uint8_t)cpu->r[0]);
|
|
/* 0291CDA0 */ /* nop */
|
|
/* 0291CDA4 */ _t195 = cpu->r[1] + 0x00000060u;
|
|
/* 0291CDA4 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t195);
|
|
/* 0291CDA8 */ _t196 = cpu->r[1] + 0x00000070u;
|
|
/* 0291CDA8 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t196);
|
|
/* 0291CDAC */ _t197 = cpu->r[1] + 0x00000058u;
|
|
/* 0291CDAC */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t197);
|
|
/* 0291CDB0 */ _t198 = cpu->r[1] + 0x00000080u;
|
|
/* 0291CDB0 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t198);
|
|
/* 0291CDB4 */ _t199 = cpu->r[1] + 0x00000068u;
|
|
/* 0291CDB4 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t199);
|
|
/* 0291CDB8 */ _t200 = cpu->r[1] + 0x00000078u;
|
|
/* 0291CDB8 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t200);
|
|
/* 0291CDBC */ _t201 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291CDBC */ _t202 = _t201 & 0x00000001u;
|
|
/* 0291CDBC */ if (_t202) goto L_0291CDC0; // else: addr-0 trap, fall-through
|
|
L_0291CDC0: ; // 0x291cdc0
|
|
/* 0291CDC0 */ _t203 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0291CDC0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t203);
|
|
/* 0291CDC4 */ cpu->lr = cpu->r[0];
|
|
/* 0291CDC8 */ cpu->r[1] = cpu->r[1] + 0x00000088u;
|
|
/* 0291CDCC */ return;
|
|
}
|
|
|
|
// fn_0291CDD0 @ 0x291cdd0
|
|
void Gambit_fn_0291CDD0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _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_0291CDD0: ; // 0x291cdd0
|
|
/* 0291CDD0 */ cpu->r[0] = cpu->lr;
|
|
/* 0291CDD4 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 0291CDD4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291CDD4 */ cpu->r[1] = _t0;
|
|
/* 0291CDD8 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0291CDD8 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 0291CDDC */ _t2 = cpu->r[1] + 0x00000018u;
|
|
/* 0291CDDC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0291CDE0 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0291CDE0 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 0291CDE4 */ cpu->r[30] = cpu->r[3];
|
|
/* 0291CDE8 */ _t4 = cpu->r[1] + 0x00000024u;
|
|
/* 0291CDE8 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0291CDEC */ _t5 = cpu->r[30] + 0x00000170u;
|
|
/* 0291CDEC */ cpu->r[8] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0291CDF0 */ _t6 = cpu->r[8] + 0x00000370u;
|
|
/* 0291CDF0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0291CDF4 */ _t7 = cpu->r[30] + 0x00000138u;
|
|
/* 0291CDF4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0291CDF8 */ cpu->r[31] = cpu->r[4];
|
|
/* 0291CDFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0291CE00 */ _t8 = cpu->r[6] + 0x00000004u;
|
|
/* 0291CE00 */ cpu->r[29] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0291CE04 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291CE04 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0291CE04 */ if (_t10) goto L_0291CE38; else goto L_0291CE08;
|
|
L_0291CE08: ; // 0x291ce08
|
|
/* 0291CE08 */ _t11 = cpu->r[30] + 0x00000160u;
|
|
/* 0291CE08 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0291CE0C */ cpu->r[10] = cpu->r[29] + 0x0000030Cu;
|
|
/* 0291CE10 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 0291CE10 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 0291CE14 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291CE14 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 0291CE18 */ _t14 = cpu->r[8] + 0x00000370u;
|
|
/* 0291CE18 */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0291CE1C */ _t15 = cpu->r[3] + 0x00000000u;
|
|
/* 0291CE1C */ cpu->r[12] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0291CE20 */ _t16 = cpu->r[12] + 0x0000000Cu;
|
|
/* 0291CE20 */ cpu->r[7] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0291CE24 */ cpu->ctr = cpu->r[7];
|
|
/* 0291CE28 */ cpu->r[5] = cpu->r[31];
|
|
/* 0291CE2C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0291CE30 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291CE34 */ cpu->r[31] = cpu->r[3];
|
|
L_0291CE38: ; // 0x291ce38
|
|
/* 0291CE38 */ cpu->r[4] = 0x00000001u;
|
|
/* 0291CE3C */ cpu->r[5] = cpu->r[31];
|
|
/* 0291CE40 */ cpu->r[3] = cpu->r[29];
|
|
/* 0291CE44 */ Gambit_fn_02962608(cpu);
|
|
/* 0291CE48 */ cpu->r[31] = cpu->r[3];
|
|
/* 0291CE4C */ cpu->r[3] = cpu->r[29];
|
|
/* 0291CE50 */ Gambit_fn_029621F4(cpu);
|
|
/* 0291CE54 */ _t17 = cpu->r[30] + 0x00000140u;
|
|
/* 0291CE54 */ cpu->r[7] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0291CE58 */ _t18 = cpu->r[7] + 0x000000D8u;
|
|
/* 0291CE58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0291CE5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0291CE60 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291CE60 */ _t20 = _t19 & 0x00000001u;
|
|
/* 0291CE60 */ if (_t20) goto L_0291CE64; else goto L_0291CE7C;
|
|
L_0291CE64: ; // 0x291ce64
|
|
/* 0291CE64 */ _t21 = cpu->r[7] + 0x000000D4u;
|
|
/* 0291CE64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0291CE68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0291CE6C */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291CE6C */ _t23 = _t22 & 0x00000001u;
|
|
/* 0291CE6C */ if (_t23) goto L_0291CE70; else goto L_0291CE7C;
|
|
L_0291CE70: ; // 0x291ce70
|
|
/* 0291CE70 */ cpu->r[6] = 0x00000001u;
|
|
/* 0291CE74 */ _t24 = cpu->r[30] + 0x0000016Du;
|
|
/* 0291CE74 */ rbrew_write8(cpu->mem, _t24, (uint8_t)cpu->r[6]);
|
|
/* 0291CE78 */ goto L_0291CEAC;
|
|
L_0291CE7C: ; // 0x291ce7c
|
|
/* 0291CE7C */ _t25 = cpu->r[30] + 0x00000160u;
|
|
/* 0291CE7C */ cpu->r[12] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0291CE80 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 0291CE84 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], 0x00000006u);
|
|
/* 0291CE88 */ _t26 = cpu->r[30] + 0x00000160u;
|
|
/* 0291CE88 */ rbrew_write32(cpu->mem, _t26, cpu->r[12]);
|
|
/* 0291CE8C */ _t27 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291CE8C */ _t28 = _t27 & 0x00000001u;
|
|
/* 0291CE8C */ if (_t28) goto L_0291CEAC; else goto L_0291CE90;
|
|
L_0291CE90: ; // 0x291ce90
|
|
/* 0291CE90 */ _t29 = cpu->r[30] + 0x0000016Cu;
|
|
/* 0291CE90 */ cpu->r[8] = rbrew_read8(cpu->mem, _t29);
|
|
/* 0291CE94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0291CE98 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291CE98 */ _t31 = _t30 & 0x00000001u;
|
|
/* 0291CE98 */ if (_t31) goto L_0291CEAC; else goto L_0291CE9C;
|
|
L_0291CE9C: ; // 0x291ce9c
|
|
/* 0291CE9C */ cpu->r[3] = cpu->r[30];
|
|
/* 0291CEA0 */ cpu->r[4] = cpu->r[31];
|
|
/* 0291CEA4 */ Gambit_fn_0291C7F8(cpu);
|
|
/* 0291CEA8 */ cpu->r[31] = cpu->r[3];
|
|
L_0291CEAC: ; // 0x291ceac
|
|
/* 0291CEAC */ _t32 = cpu->r[1] + 0x00000014u;
|
|
/* 0291CEAC */ cpu->r[29] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0291CEB0 */ _t33 = cpu->r[1] + 0x00000024u;
|
|
/* 0291CEB0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 0291CEB4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0291CEB8 */ _t34 = cpu->r[1] + 0x00000018u;
|
|
/* 0291CEB8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t34);
|
|
/* 0291CEBC */ cpu->lr = cpu->r[0];
|
|
/* 0291CEC0 */ _t35 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0291CEC0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t35);
|
|
/* 0291CEC4 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 0291CEC8 */ return;
|
|
}
|
|
|
|
// fn_0291CDD4 @ 0x291cdd4
|
|
void Gambit_fn_0291CDD4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _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_0291CDD4: ; // 0x291cdd4
|
|
/* 0291CDD4 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 0291CDD4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291CDD4 */ cpu->r[1] = _t0;
|
|
/* 0291CDD8 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0291CDD8 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 0291CDDC */ _t2 = cpu->r[1] + 0x00000018u;
|
|
/* 0291CDDC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0291CDE0 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0291CDE0 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 0291CDE4 */ cpu->r[30] = cpu->r[3];
|
|
/* 0291CDE8 */ _t4 = cpu->r[1] + 0x00000024u;
|
|
/* 0291CDE8 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0291CDEC */ _t5 = cpu->r[30] + 0x00000170u;
|
|
/* 0291CDEC */ cpu->r[8] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0291CDF0 */ _t6 = cpu->r[8] + 0x00000370u;
|
|
/* 0291CDF0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0291CDF4 */ _t7 = cpu->r[30] + 0x00000138u;
|
|
/* 0291CDF4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0291CDF8 */ cpu->r[31] = cpu->r[4];
|
|
/* 0291CDFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0291CE00 */ _t8 = cpu->r[6] + 0x00000004u;
|
|
/* 0291CE00 */ cpu->r[29] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0291CE04 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291CE04 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0291CE04 */ if (_t10) goto L_0291CE38; else goto L_0291CE08;
|
|
L_0291CE08: ; // 0x291ce08
|
|
/* 0291CE08 */ _t11 = cpu->r[30] + 0x00000160u;
|
|
/* 0291CE08 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0291CE0C */ cpu->r[10] = cpu->r[29] + 0x0000030Cu;
|
|
/* 0291CE10 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 0291CE10 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 0291CE14 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291CE14 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 0291CE18 */ _t14 = cpu->r[8] + 0x00000370u;
|
|
/* 0291CE18 */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0291CE1C */ _t15 = cpu->r[3] + 0x00000000u;
|
|
/* 0291CE1C */ cpu->r[12] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0291CE20 */ _t16 = cpu->r[12] + 0x0000000Cu;
|
|
/* 0291CE20 */ cpu->r[7] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0291CE24 */ cpu->ctr = cpu->r[7];
|
|
/* 0291CE28 */ cpu->r[5] = cpu->r[31];
|
|
/* 0291CE2C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0291CE30 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291CE34 */ cpu->r[31] = cpu->r[3];
|
|
L_0291CE38: ; // 0x291ce38
|
|
/* 0291CE38 */ cpu->r[4] = 0x00000001u;
|
|
/* 0291CE3C */ cpu->r[5] = cpu->r[31];
|
|
/* 0291CE40 */ cpu->r[3] = cpu->r[29];
|
|
/* 0291CE44 */ Gambit_fn_02962608(cpu);
|
|
/* 0291CE48 */ cpu->r[31] = cpu->r[3];
|
|
/* 0291CE4C */ cpu->r[3] = cpu->r[29];
|
|
/* 0291CE50 */ Gambit_fn_029621F4(cpu);
|
|
/* 0291CE54 */ _t17 = cpu->r[30] + 0x00000140u;
|
|
/* 0291CE54 */ cpu->r[7] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0291CE58 */ _t18 = cpu->r[7] + 0x000000D8u;
|
|
/* 0291CE58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0291CE5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0291CE60 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291CE60 */ _t20 = _t19 & 0x00000001u;
|
|
/* 0291CE60 */ if (_t20) goto L_0291CE64; else goto L_0291CE7C;
|
|
L_0291CE64: ; // 0x291ce64
|
|
/* 0291CE64 */ _t21 = cpu->r[7] + 0x000000D4u;
|
|
/* 0291CE64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0291CE68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0291CE6C */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291CE6C */ _t23 = _t22 & 0x00000001u;
|
|
/* 0291CE6C */ if (_t23) goto L_0291CE70; else goto L_0291CE7C;
|
|
L_0291CE70: ; // 0x291ce70
|
|
/* 0291CE70 */ cpu->r[6] = 0x00000001u;
|
|
/* 0291CE74 */ _t24 = cpu->r[30] + 0x0000016Du;
|
|
/* 0291CE74 */ rbrew_write8(cpu->mem, _t24, (uint8_t)cpu->r[6]);
|
|
/* 0291CE78 */ goto L_0291CEAC;
|
|
L_0291CE7C: ; // 0x291ce7c
|
|
/* 0291CE7C */ _t25 = cpu->r[30] + 0x00000160u;
|
|
/* 0291CE7C */ cpu->r[12] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0291CE80 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 0291CE84 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], 0x00000006u);
|
|
/* 0291CE88 */ _t26 = cpu->r[30] + 0x00000160u;
|
|
/* 0291CE88 */ rbrew_write32(cpu->mem, _t26, cpu->r[12]);
|
|
/* 0291CE8C */ _t27 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291CE8C */ _t28 = _t27 & 0x00000001u;
|
|
/* 0291CE8C */ if (_t28) goto L_0291CEAC; else goto L_0291CE90;
|
|
L_0291CE90: ; // 0x291ce90
|
|
/* 0291CE90 */ _t29 = cpu->r[30] + 0x0000016Cu;
|
|
/* 0291CE90 */ cpu->r[8] = rbrew_read8(cpu->mem, _t29);
|
|
/* 0291CE94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0291CE98 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291CE98 */ _t31 = _t30 & 0x00000001u;
|
|
/* 0291CE98 */ if (_t31) goto L_0291CEAC; else goto L_0291CE9C;
|
|
L_0291CE9C: ; // 0x291ce9c
|
|
/* 0291CE9C */ cpu->r[3] = cpu->r[30];
|
|
/* 0291CEA0 */ cpu->r[4] = cpu->r[31];
|
|
/* 0291CEA4 */ Gambit_fn_0291C7F8(cpu);
|
|
/* 0291CEA8 */ cpu->r[31] = cpu->r[3];
|
|
L_0291CEAC: ; // 0x291ceac
|
|
/* 0291CEAC */ _t32 = cpu->r[1] + 0x00000014u;
|
|
/* 0291CEAC */ cpu->r[29] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0291CEB0 */ _t33 = cpu->r[1] + 0x00000024u;
|
|
/* 0291CEB0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 0291CEB4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0291CEB8 */ _t34 = cpu->r[1] + 0x00000018u;
|
|
/* 0291CEB8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t34);
|
|
/* 0291CEBC */ cpu->lr = cpu->r[0];
|
|
/* 0291CEC0 */ _t35 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0291CEC0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t35);
|
|
/* 0291CEC4 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 0291CEC8 */ return;
|
|
}
|
|
|
|
// fn_0291CECC @ 0x291cecc
|
|
void Gambit_fn_0291CECC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28;
|
|
|
|
L_0291CECC: ; // 0x291cecc
|
|
/* 0291CECC */ _t0 = cpu->r[3] + 0x00000140u;
|
|
/* 0291CECC */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0291CED0 */ _t1 = cpu->r[12] + 0x000000E0u;
|
|
/* 0291CED0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0291CED4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0291CED8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291CED8 */ _t3 = _t2 & 0x00000001u;
|
|
/* 0291CED8 */ if (_t3) goto L_0291CEDC; else goto L_0291CF00;
|
|
L_0291CEDC: ; // 0x291cedc
|
|
/* 0291CEDC */ _t4 = cpu->r[12] + 0x000000DCu;
|
|
/* 0291CEDC */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0291CEE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0291CEE4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291CEE4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0291CEE4 */ if (_t6) goto L_0291CEE8; else goto L_0291CF00;
|
|
L_0291CEE8: ; // 0x291cee8
|
|
/* 0291CEE8 */ _t7 = cpu->r[12] + 0x00001560u;
|
|
/* 0291CEE8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0291CEEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0291CEF0 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291CEF0 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0291CEF0 */ if (_t9) goto L_0291CEF4; else goto L_0291CF00;
|
|
L_0291CEF4: ; // 0x291cef4
|
|
/* 0291CEF4 */ _t10 = cpu->r[12] + 0x00001864u;
|
|
/* 0291CEF4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0291CEF8 */ cpu->r[11] = cpu->r[11] | 0x00000001u;
|
|
/* 0291CEFC */ _t11 = cpu->r[12] + 0x00001864u;
|
|
/* 0291CEFC */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
L_0291CF00: ; // 0x291cf00
|
|
/* 0291CF00 */ cpu->r[0] = 0x00000000u;
|
|
/* 0291CF04 */ _t12 = cpu->r[3] + 0x00000140u;
|
|
/* 0291CF04 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 0291CF08 */ cpu->r[11] = 0x00000003u;
|
|
/* 0291CF0C */ _t13 = cpu->r[3] + 0x00000170u;
|
|
/* 0291CF0C */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 0291CF10 */ _t14 = cpu->r[3] + 0x00000144u;
|
|
/* 0291CF10 */ rbrew_write32(cpu->mem, _t14, cpu->r[11]);
|
|
/* 0291CF14 */ cpu->r[10] = 0xFFFFFFFFu;
|
|
/* 0291CF18 */ _t15 = cpu->r[3] + 0x00000138u;
|
|
/* 0291CF18 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 0291CF1C */ _t16 = cpu->r[3] + 0x00000164u;
|
|
/* 0291CF1C */ rbrew_write32(cpu->mem, _t16, cpu->r[10]);
|
|
/* 0291CF20 */ _t17 = cpu->r[3] + 0x00000160u;
|
|
/* 0291CF20 */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
/* 0291CF24 */ _t18 = cpu->r[3] + 0x0000013Cu;
|
|
/* 0291CF24 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
/* 0291CF28 */ cpu->r[12] = 0x101F0000u;
|
|
/* 0291CF2C */ _t19 = cpu->r[3] + 0x0000016Du;
|
|
/* 0291CF2C */ rbrew_write8(cpu->mem, _t19, (uint8_t)cpu->r[0]);
|
|
/* 0291CF30 */ _t20 = cpu->r[12] + 0x00006338u;
|
|
/* 0291CF30 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 0291CF30 */ cpu->r[12] = _t20;
|
|
/* 0291CF34 */ cpu->r[10] = 0x10140000u;
|
|
/* 0291CF38 */ _t21 = cpu->r[3] + 0x0000014Cu;
|
|
/* 0291CF38 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[13]);
|
|
/* 0291CF3C */ _t22 = cpu->r[12] + 0x00000004u;
|
|
/* 0291CF3C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 0291CF40 */ _t23 = cpu->r[10] + 0x00001FB4u;
|
|
/* 0291CF40 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 0291CF44 */ _t24 = cpu->r[3] + 0x00000150u;
|
|
/* 0291CF44 */ rbrew_write_f32(cpu->mem, _t24, cpu->f[13]);
|
|
/* 0291CF48 */ _t25 = cpu->r[12] + 0x00000008u;
|
|
/* 0291CF48 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 0291CF4C */ _t26 = cpu->r[3] + 0x0000015Cu;
|
|
/* 0291CF4C */ rbrew_write_f32(cpu->mem, _t26, cpu->f[0]);
|
|
/* 0291CF50 */ _t27 = cpu->r[3] + 0x00000154u;
|
|
/* 0291CF50 */ rbrew_write_f32(cpu->mem, _t27, cpu->f[13]);
|
|
/* 0291CF54 */ _t28 = cpu->r[3] + 0x00000158u;
|
|
/* 0291CF54 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[0]);
|
|
/* 0291CF58 */ return;
|
|
}
|
|
|
|
// fn_0291CF5C @ 0x291cf5c
|
|
void Gambit_fn_0291CF5C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_0291CF5C: ; // 0x291cf5c
|
|
/* 0291CF5C */ cpu->r[0] = cpu->lr;
|
|
/* 0291CF60 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0291CF60 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291CF60 */ cpu->r[1] = _t0;
|
|
/* 0291CF64 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291CF64 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0291CF68 */ cpu->r[31] = cpu->r[3];
|
|
/* 0291CF6C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0291CF6C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0291CF70 */ cpu->r[3] = 0x000005D4u;
|
|
/* 0291CF74 */ _t3 = cpu->r[31] + 0x00000000u;
|
|
/* 0291CF74 */ rbrew_write32(cpu->mem, _t3, cpu->r[5]);
|
|
/* 0291CF78 */ cpu->r[5] = 0x00000004u;
|
|
/* 0291CF7C */ Gambit_fn_02801AC8(cpu);
|
|
/* 0291CF80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291CF84 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291CF84 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0291CF84 */ if (_t5) goto L_0291CF8C; else goto L_0291CF88;
|
|
L_0291CF88: ; // 0x291cf88
|
|
/* 0291CF88 */ Gambit_fn_02961AA8(cpu);
|
|
L_0291CF8C: ; // 0x291cf8c
|
|
/* 0291CF8C */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 0291CF8C */ rbrew_write32(cpu->mem, _t6, cpu->r[3]);
|
|
/* 0291CF90 */ cpu->r[10] = 0x00000000u;
|
|
/* 0291CF94 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 0291CF98 */ _t7 = cpu->r[31] + 0x0000008Cu;
|
|
/* 0291CF98 */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[10]);
|
|
/* 0291CF9C */ _t8 = cpu->r[31] + 0x000000A4u;
|
|
/* 0291CF9C */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 0291CFA0 */ _t9 = cpu->r[31] + 0x00000090u;
|
|
/* 0291CFA0 */ rbrew_write32(cpu->mem, _t9, cpu->r[10]);
|
|
/* 0291CFA4 */ _t10 = cpu->r[31] + 0x000000A0u;
|
|
/* 0291CFA4 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 0291CFA8 */ _t11 = cpu->r[31] + 0x00000098u;
|
|
/* 0291CFA8 */ rbrew_write32(cpu->mem, _t11, cpu->r[10]);
|
|
/* 0291CFAC */ _t12 = cpu->r[31] + 0x0000009Cu;
|
|
/* 0291CFAC */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 0291CFB0 */ _t13 = cpu->r[31] + 0x00000094u;
|
|
/* 0291CFB0 */ rbrew_write32(cpu->mem, _t13, cpu->r[10]);
|
|
/* 0291CFB4 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 0291CFB4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0291CFB8 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291CFB8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0291CFBC */ cpu->lr = cpu->r[0];
|
|
/* 0291CFC0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0291CFC4 */ return;
|
|
}
|
|
|
|
// fn_0291CF60 @ 0x291cf60
|
|
void Gambit_fn_0291CF60(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_0291CF60: ; // 0x291cf60
|
|
/* 0291CF60 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0291CF60 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291CF60 */ cpu->r[1] = _t0;
|
|
/* 0291CF64 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291CF64 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0291CF68 */ cpu->r[31] = cpu->r[3];
|
|
/* 0291CF6C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0291CF6C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0291CF70 */ cpu->r[3] = 0x000005D4u;
|
|
/* 0291CF74 */ _t3 = cpu->r[31] + 0x00000000u;
|
|
/* 0291CF74 */ rbrew_write32(cpu->mem, _t3, cpu->r[5]);
|
|
/* 0291CF78 */ cpu->r[5] = 0x00000004u;
|
|
/* 0291CF7C */ Gambit_fn_02801AC8(cpu);
|
|
/* 0291CF80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291CF84 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291CF84 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0291CF84 */ if (_t5) goto L_0291CF8C; else goto L_0291CF88;
|
|
L_0291CF88: ; // 0x291cf88
|
|
/* 0291CF88 */ Gambit_fn_02961AA8(cpu);
|
|
L_0291CF8C: ; // 0x291cf8c
|
|
/* 0291CF8C */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 0291CF8C */ rbrew_write32(cpu->mem, _t6, cpu->r[3]);
|
|
/* 0291CF90 */ cpu->r[10] = 0x00000000u;
|
|
/* 0291CF94 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 0291CF98 */ _t7 = cpu->r[31] + 0x0000008Cu;
|
|
/* 0291CF98 */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[10]);
|
|
/* 0291CF9C */ _t8 = cpu->r[31] + 0x000000A4u;
|
|
/* 0291CF9C */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 0291CFA0 */ _t9 = cpu->r[31] + 0x00000090u;
|
|
/* 0291CFA0 */ rbrew_write32(cpu->mem, _t9, cpu->r[10]);
|
|
/* 0291CFA4 */ _t10 = cpu->r[31] + 0x000000A0u;
|
|
/* 0291CFA4 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 0291CFA8 */ _t11 = cpu->r[31] + 0x00000098u;
|
|
/* 0291CFA8 */ rbrew_write32(cpu->mem, _t11, cpu->r[10]);
|
|
/* 0291CFAC */ _t12 = cpu->r[31] + 0x0000009Cu;
|
|
/* 0291CFAC */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 0291CFB0 */ _t13 = cpu->r[31] + 0x00000094u;
|
|
/* 0291CFB0 */ rbrew_write32(cpu->mem, _t13, cpu->r[10]);
|
|
/* 0291CFB4 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 0291CFB4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0291CFB8 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291CFB8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0291CFBC */ cpu->lr = cpu->r[0];
|
|
/* 0291CFC0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0291CFC4 */ return;
|
|
}
|
|
|
|
// fn_0291CFC8 @ 0x291cfc8
|
|
void Gambit_fn_0291CFC8(CPUState* cpu) {
|
|
uint32_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_0291CFC8: ; // 0x291cfc8
|
|
/* 0291CFC8 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 0291CFC8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291CFC8 */ cpu->r[1] = _t0;
|
|
/* 0291CFCC */ cpu->r[0] = cpu->lr;
|
|
/* 0291CFD0 */ /* nop */
|
|
/* 0291CFD4 */ cpu->r[28] = cpu->r[6];
|
|
/* 0291CFD8 */ cpu->r[30] = cpu->r[8];
|
|
/* 0291CFDC */ cpu->r[27] = cpu->r[3];
|
|
/* 0291CFE0 */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0291CFE0 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0291CFE4 */ cpu->r[29] = cpu->r[7];
|
|
/* 0291CFE8 */ cpu->r[3] = 0x000005D4u;
|
|
/* 0291CFEC */ _t2 = cpu->r[27] + 0x00000000u;
|
|
/* 0291CFEC */ rbrew_write32(cpu->mem, _t2, cpu->r[5]);
|
|
/* 0291CFF0 */ cpu->r[5] = 0x00000004u;
|
|
/* 0291CFF4 */ cpu->r[31] = cpu->r[9];
|
|
/* 0291CFF8 */ Gambit_fn_02801AC8(cpu);
|
|
/* 0291CFFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291D000 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291D000 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0291D000 */ if (_t4) goto L_0291D008; else goto L_0291D004;
|
|
L_0291D004: ; // 0x291d004
|
|
/* 0291D004 */ Gambit_fn_02961AA8(cpu);
|
|
L_0291D008: ; // 0x291d008
|
|
/* 0291D008 */ _t5 = cpu->r[27] + 0x00000094u;
|
|
/* 0291D008 */ rbrew_write32(cpu->mem, _t5, cpu->r[29]);
|
|
/* 0291D00C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0291D010 */ _t6 = cpu->r[27] + 0x00000004u;
|
|
/* 0291D010 */ rbrew_write32(cpu->mem, _t6, cpu->r[3]);
|
|
/* 0291D014 */ _t7 = cpu->r[27] + 0x00000090u;
|
|
/* 0291D014 */ rbrew_write32(cpu->mem, _t7, cpu->r[28]);
|
|
/* 0291D018 */ _t8 = cpu->r[27] + 0x0000009Cu;
|
|
/* 0291D018 */ rbrew_write32(cpu->mem, _t8, cpu->r[31]);
|
|
/* 0291D01C */ _t9 = cpu->r[27] + 0x00000098u;
|
|
/* 0291D01C */ rbrew_write32(cpu->mem, _t9, cpu->r[30]);
|
|
/* 0291D020 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291D020 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0291D020 */ if (_t11) goto L_0291D078; else goto L_0291D024;
|
|
L_0291D024: ; // 0x291d024
|
|
/* 0291D024 */ cpu->r[4] = 0x00000001u;
|
|
/* 0291D028 */ cpu->r[10] = 0x00000000u;
|
|
/* 0291D02C */ cpu->r[5] = 0x00000014u;
|
|
/* 0291D030 */ cpu->r[8] = cpu->r[4];
|
|
/* 0291D034 */ cpu->r[6] = cpu->r[4];
|
|
/* 0291D038 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 0291D038 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 0291D03C */ cpu->r[9] = cpu->r[8];
|
|
/* 0291D040 */ cpu->r[7] = cpu->r[6];
|
|
/* 0291D044 */ cpu->r[3] = cpu->r[27] + 0x00000008u;
|
|
/* 0291D048 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291D048 */ rbrew_write32(cpu->mem, _t13, cpu->r[4]);
|
|
/* 0291D04C */ Gambit_fn_028F7664(cpu);
|
|
/* 0291D050 */ _t14 = cpu->r[27] + 0x00000044u;
|
|
/* 0291D050 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0291D054 */ _t15 = cpu->r[27] + 0x00000098u;
|
|
/* 0291D054 */ cpu->r[11] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0291D058 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000020u);
|
|
/* 0291D05C */ _t16 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291D05C */ _t17 = _t16 & 0x00000001u;
|
|
/* 0291D05C */ if (_t17) goto L_0291D060; else goto L_0291D064;
|
|
L_0291D060: ; // 0x291d060
|
|
/* 0291D060 */ cpu->r[0] = 0x00000020u;
|
|
L_0291D064: ; // 0x291d064
|
|
/* 0291D064 */ cpu->r[10] = cpu->r[11] + cpu->r[0];
|
|
/* 0291D068 */ cpu->r[12] = cpu->r[10] + 0xFFFFFFFFu;
|
|
/* 0291D06C */ cpu->r[9] = cpu->r[12] / cpu->r[0];
|
|
/* 0291D070 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[9] * (int32_t)cpu->r[0]);
|
|
/* 0291D074 */ _t18 = cpu->r[27] + 0x00000030u;
|
|
/* 0291D074 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
L_0291D078: ; // 0x291d078
|
|
/* 0291D078 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 0291D07C */ cpu->r[0] = 0x00000001u;
|
|
/* 0291D080 */ _t19 = cpu->r[27] + 0x000000A4u;
|
|
/* 0291D080 */ rbrew_write32(cpu->mem, _t19, cpu->r[11]);
|
|
/* 0291D084 */ _t20 = cpu->r[27] + 0x0000008Cu;
|
|
/* 0291D084 */ rbrew_write8(cpu->mem, _t20, (uint8_t)cpu->r[0]);
|
|
/* 0291D088 */ _t21 = cpu->r[27] + 0x000000A0u;
|
|
/* 0291D088 */ rbrew_write32(cpu->mem, _t21, cpu->r[11]);
|
|
/* 0291D08C */ /* nop */
|
|
/* 0291D090 */ _t22 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0291D090 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0291D094 */ cpu->lr = cpu->r[0];
|
|
/* 0291D098 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 0291D09C */ return;
|
|
}
|
|
|
|
// fn_0291D0A0 @ 0x291d0a0
|
|
void Gambit_fn_0291D0A0(CPUState* cpu) {
|
|
uint32_t _t0, _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_0291D0A0: ; // 0x291d0a0
|
|
/* 0291D0A0 */ cpu->r[0] = cpu->lr;
|
|
/* 0291D0A4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0291D0A4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291D0A4 */ cpu->r[1] = _t0;
|
|
/* 0291D0A8 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0291D0A8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0291D0AC */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 0291D0AC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0291D0B0 */ cpu->r[30] = cpu->r[3];
|
|
/* 0291D0B4 */ cpu->r[31] = 0x00000000u;
|
|
/* 0291D0B8 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0291D0B8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0291D0BC */ _t4 = cpu->r[30] + 0x00000090u;
|
|
/* 0291D0BC */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 0291D0C0 */ _t5 = cpu->r[30] + 0x0000009Cu;
|
|
/* 0291D0C0 */ rbrew_write32(cpu->mem, _t5, cpu->r[8]);
|
|
/* 0291D0C4 */ _t6 = cpu->r[30] + 0x00000098u;
|
|
/* 0291D0C4 */ rbrew_write32(cpu->mem, _t6, cpu->r[7]);
|
|
/* 0291D0C8 */ _t7 = cpu->r[30] + 0x00000094u;
|
|
/* 0291D0C8 */ rbrew_write32(cpu->mem, _t7, cpu->r[31]);
|
|
/* 0291D0CC */ _t8 = cpu->r[30] + 0x00000004u;
|
|
/* 0291D0CC */ rbrew_write32(cpu->mem, _t8, cpu->r[6]);
|
|
/* 0291D0D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0291D0D4 */ _t9 = cpu->r[30] + 0x00000000u;
|
|
/* 0291D0D4 */ rbrew_write32(cpu->mem, _t9, cpu->r[5]);
|
|
/* 0291D0D8 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291D0D8 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0291D0D8 */ if (_t11) goto L_0291D130; else goto L_0291D0DC;
|
|
L_0291D0DC: ; // 0x291d0dc
|
|
/* 0291D0DC */ cpu->r[4] = 0x00000001u;
|
|
/* 0291D0E0 */ cpu->r[3] = cpu->r[30] + 0x00000008u;
|
|
/* 0291D0E4 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 0291D0E4 */ rbrew_write32(cpu->mem, _t12, cpu->r[31]);
|
|
/* 0291D0E8 */ cpu->r[6] = cpu->r[4];
|
|
/* 0291D0EC */ cpu->r[8] = cpu->r[4];
|
|
/* 0291D0F0 */ cpu->r[10] = 0x00000000u;
|
|
/* 0291D0F4 */ cpu->r[7] = cpu->r[6];
|
|
/* 0291D0F8 */ cpu->r[9] = cpu->r[8];
|
|
/* 0291D0FC */ cpu->r[5] = 0x00000014u;
|
|
/* 0291D100 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291D100 */ rbrew_write32(cpu->mem, _t13, cpu->r[4]);
|
|
/* 0291D104 */ Gambit_fn_028F7664(cpu);
|
|
/* 0291D108 */ _t14 = cpu->r[30] + 0x00000044u;
|
|
/* 0291D108 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0291D10C */ _t15 = cpu->r[30] + 0x00000098u;
|
|
/* 0291D10C */ cpu->r[12] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0291D110 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000020u);
|
|
/* 0291D114 */ _t16 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291D114 */ _t17 = _t16 & 0x00000001u;
|
|
/* 0291D114 */ if (_t17) goto L_0291D118; else goto L_0291D11C;
|
|
L_0291D118: ; // 0x291d118
|
|
/* 0291D118 */ cpu->r[0] = 0x00000020u;
|
|
L_0291D11C: ; // 0x291d11c
|
|
/* 0291D11C */ cpu->r[11] = cpu->r[12] + cpu->r[0];
|
|
/* 0291D120 */ cpu->r[8] = cpu->r[11] + 0xFFFFFFFFu;
|
|
/* 0291D124 */ cpu->r[9] = cpu->r[8] / cpu->r[0];
|
|
/* 0291D128 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[9] * (int32_t)cpu->r[0]);
|
|
/* 0291D12C */ _t18 = cpu->r[30] + 0x00000030u;
|
|
/* 0291D12C */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
L_0291D130: ; // 0x291d130
|
|
/* 0291D130 */ _t19 = cpu->r[30] + 0x0000008Cu;
|
|
/* 0291D130 */ rbrew_write8(cpu->mem, _t19, (uint8_t)cpu->r[31]);
|
|
/* 0291D134 */ cpu->r[10] = 0xFFFFFFFFu;
|
|
/* 0291D138 */ _t20 = cpu->r[30] + 0x000000A4u;
|
|
/* 0291D138 */ rbrew_write32(cpu->mem, _t20, cpu->r[10]);
|
|
/* 0291D13C */ _t21 = cpu->r[30] + 0x000000A0u;
|
|
/* 0291D13C */ rbrew_write32(cpu->mem, _t21, cpu->r[10]);
|
|
/* 0291D140 */ _t22 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0291D140 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0291D144 */ _t23 = cpu->r[1] + 0x00000010u;
|
|
/* 0291D144 */ cpu->r[30] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0291D148 */ cpu->lr = cpu->r[0];
|
|
/* 0291D14C */ _t24 = cpu->r[1] + 0x00000014u;
|
|
/* 0291D14C */ cpu->r[31] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0291D150 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0291D154 */ return;
|
|
}
|
|
|
|
// fn_0291D0A4 @ 0x291d0a4
|
|
void Gambit_fn_0291D0A4(CPUState* cpu) {
|
|
uint32_t _t0, _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_0291D0A4: ; // 0x291d0a4
|
|
/* 0291D0A4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0291D0A4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291D0A4 */ cpu->r[1] = _t0;
|
|
/* 0291D0A8 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0291D0A8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0291D0AC */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 0291D0AC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0291D0B0 */ cpu->r[30] = cpu->r[3];
|
|
/* 0291D0B4 */ cpu->r[31] = 0x00000000u;
|
|
/* 0291D0B8 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0291D0B8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0291D0BC */ _t4 = cpu->r[30] + 0x00000090u;
|
|
/* 0291D0BC */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 0291D0C0 */ _t5 = cpu->r[30] + 0x0000009Cu;
|
|
/* 0291D0C0 */ rbrew_write32(cpu->mem, _t5, cpu->r[8]);
|
|
/* 0291D0C4 */ _t6 = cpu->r[30] + 0x00000098u;
|
|
/* 0291D0C4 */ rbrew_write32(cpu->mem, _t6, cpu->r[7]);
|
|
/* 0291D0C8 */ _t7 = cpu->r[30] + 0x00000094u;
|
|
/* 0291D0C8 */ rbrew_write32(cpu->mem, _t7, cpu->r[31]);
|
|
/* 0291D0CC */ _t8 = cpu->r[30] + 0x00000004u;
|
|
/* 0291D0CC */ rbrew_write32(cpu->mem, _t8, cpu->r[6]);
|
|
/* 0291D0D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0291D0D4 */ _t9 = cpu->r[30] + 0x00000000u;
|
|
/* 0291D0D4 */ rbrew_write32(cpu->mem, _t9, cpu->r[5]);
|
|
/* 0291D0D8 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291D0D8 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0291D0D8 */ if (_t11) goto L_0291D130; else goto L_0291D0DC;
|
|
L_0291D0DC: ; // 0x291d0dc
|
|
/* 0291D0DC */ cpu->r[4] = 0x00000001u;
|
|
/* 0291D0E0 */ cpu->r[3] = cpu->r[30] + 0x00000008u;
|
|
/* 0291D0E4 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 0291D0E4 */ rbrew_write32(cpu->mem, _t12, cpu->r[31]);
|
|
/* 0291D0E8 */ cpu->r[6] = cpu->r[4];
|
|
/* 0291D0EC */ cpu->r[8] = cpu->r[4];
|
|
/* 0291D0F0 */ cpu->r[10] = 0x00000000u;
|
|
/* 0291D0F4 */ cpu->r[7] = cpu->r[6];
|
|
/* 0291D0F8 */ cpu->r[9] = cpu->r[8];
|
|
/* 0291D0FC */ cpu->r[5] = 0x00000014u;
|
|
/* 0291D100 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291D100 */ rbrew_write32(cpu->mem, _t13, cpu->r[4]);
|
|
/* 0291D104 */ Gambit_fn_028F7664(cpu);
|
|
/* 0291D108 */ _t14 = cpu->r[30] + 0x00000044u;
|
|
/* 0291D108 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0291D10C */ _t15 = cpu->r[30] + 0x00000098u;
|
|
/* 0291D10C */ cpu->r[12] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0291D110 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000020u);
|
|
/* 0291D114 */ _t16 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291D114 */ _t17 = _t16 & 0x00000001u;
|
|
/* 0291D114 */ if (_t17) goto L_0291D118; else goto L_0291D11C;
|
|
L_0291D118: ; // 0x291d118
|
|
/* 0291D118 */ cpu->r[0] = 0x00000020u;
|
|
L_0291D11C: ; // 0x291d11c
|
|
/* 0291D11C */ cpu->r[11] = cpu->r[12] + cpu->r[0];
|
|
/* 0291D120 */ cpu->r[8] = cpu->r[11] + 0xFFFFFFFFu;
|
|
/* 0291D124 */ cpu->r[9] = cpu->r[8] / cpu->r[0];
|
|
/* 0291D128 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[9] * (int32_t)cpu->r[0]);
|
|
/* 0291D12C */ _t18 = cpu->r[30] + 0x00000030u;
|
|
/* 0291D12C */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
L_0291D130: ; // 0x291d130
|
|
/* 0291D130 */ _t19 = cpu->r[30] + 0x0000008Cu;
|
|
/* 0291D130 */ rbrew_write8(cpu->mem, _t19, (uint8_t)cpu->r[31]);
|
|
/* 0291D134 */ cpu->r[10] = 0xFFFFFFFFu;
|
|
/* 0291D138 */ _t20 = cpu->r[30] + 0x000000A4u;
|
|
/* 0291D138 */ rbrew_write32(cpu->mem, _t20, cpu->r[10]);
|
|
/* 0291D13C */ _t21 = cpu->r[30] + 0x000000A0u;
|
|
/* 0291D13C */ rbrew_write32(cpu->mem, _t21, cpu->r[10]);
|
|
/* 0291D140 */ _t22 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0291D140 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0291D144 */ _t23 = cpu->r[1] + 0x00000010u;
|
|
/* 0291D144 */ cpu->r[30] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0291D148 */ cpu->lr = cpu->r[0];
|
|
/* 0291D14C */ _t24 = cpu->r[1] + 0x00000014u;
|
|
/* 0291D14C */ cpu->r[31] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0291D150 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0291D154 */ return;
|
|
}
|
|
|
|
// fn_0291D158 @ 0x291d158
|
|
void Gambit_fn_0291D158(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _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_0291D158: ; // 0x291d158
|
|
/* 0291D158 */ _t0 = cpu->r[3] + 0x0000008Cu;
|
|
/* 0291D158 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0291D15C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0291D160 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291D160 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0291D160 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0291D160 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0291D160 */ goto L_0291D164;
|
|
L_0291D164: ; // 0x291d164
|
|
/* 0291D164 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0291D164 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0291D168 */ goto L_02961F50;
|
|
L_02961F50: ; // 0x2961f50
|
|
/* 02961F50 */ cpu->r[0] = cpu->lr;
|
|
/* 02961F54 */ _t5 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02961F54 */ rbrew_write32(cpu->mem, _t5, cpu->r[1]);
|
|
/* 02961F54 */ cpu->r[1] = _t5;
|
|
/* 02961F58 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 02961F58 */ rbrew_write32(cpu->mem, _t6, cpu->r[30]);
|
|
/* 02961F5C */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02961F5C */ rbrew_write32(cpu->mem, _t7, cpu->r[31]);
|
|
/* 02961F60 */ cpu->r[30] = cpu->r[3];
|
|
/* 02961F64 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 02961F64 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 02961F68 */ _t9 = cpu->r[30] + 0x000005D0u;
|
|
/* 02961F68 */ cpu->r[10] = rbrew_read8(cpu->mem, _t9);
|
|
/* 02961F6C */ cpu->r[0] = rbrew_rlwinm(cpu->r[10], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02961F6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02961F70 */ cpu->r[31] = cpu->r[4];
|
|
/* 02961F74 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02961F74 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02961F74 */ if (_t11) goto L_02961F80; else goto L_02961F78;
|
|
L_02961F78: ; // 0x2961f78
|
|
/* 02961F78 */ cpu->r[3] = cpu->r[30];
|
|
/* 02961F7C */ Gambit_fn_02961B74(cpu);
|
|
L_02961F80: ; // 0x2961f80
|
|
/* 02961F80 */ _t12 = cpu->r[31] + 0x00000000u;
|
|
/* 02961F80 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02961F84 */ cpu->r[10] = 0x0000001Du;
|
|
/* 02961F88 */ cpu->r[12] = cpu->r[30] + 0x0000015Cu;
|
|
/* 02961F8C */ cpu->r[9] = cpu->r[31];
|
|
/* 02961F90 */ cpu->ctr = cpu->r[10];
|
|
/* 02961F94 */ _t13 = cpu->r[30] + 0x0000015Cu;
|
|
/* 02961F94 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
L_02961F98: ; // 0x2961f98
|
|
/* 02961F98 */ _t14 = cpu->r[9] + 0x00000004u;
|
|
/* 02961F98 */ cpu->r[11] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02961F98 */ cpu->r[9] = _t14;
|
|
/* 02961F9C */ _t15 = cpu->r[12] + 0x00000004u;
|
|
/* 02961F9C */ rbrew_write32(cpu->mem, _t15, cpu->r[11]);
|
|
/* 02961F9C */ cpu->r[12] = _t15;
|
|
/* 02961FA0 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02961FA0 */ _t16 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02961FA0 */ _t17 = _t16 >> (0x00000002u & 31u);
|
|
/* 02961FA0 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02961FA0 */ if (_t18) goto L_02961F98; else goto L_02961FA4;
|
|
L_02961FA4: ; // 0x2961fa4
|
|
/* 02961FA4 */ _t19 = cpu->r[31] + 0x00000078u;
|
|
/* 02961FA4 */ cpu->r[12] = rbrew_read8(cpu->mem, _t19);
|
|
/* 02961FA8 */ _t20 = cpu->r[30] + 0x000001D4u;
|
|
/* 02961FA8 */ rbrew_write8(cpu->mem, _t20, (uint8_t)cpu->r[12]);
|
|
/* 02961FAC */ _t21 = cpu->r[31] + 0x00000079u;
|
|
/* 02961FAC */ cpu->r[0] = rbrew_read8(cpu->mem, _t21);
|
|
/* 02961FB0 */ _t22 = cpu->r[30] + 0x000001D5u;
|
|
/* 02961FB0 */ rbrew_write8(cpu->mem, _t22, (uint8_t)cpu->r[0]);
|
|
/* 02961FB4 */ _t23 = cpu->r[31] + 0x0000007Au;
|
|
/* 02961FB4 */ cpu->r[10] = rbrew_read8(cpu->mem, _t23);
|
|
/* 02961FB8 */ _t24 = cpu->r[30] + 0x000001D6u;
|
|
/* 02961FB8 */ rbrew_write8(cpu->mem, _t24, (uint8_t)cpu->r[10]);
|
|
/* 02961FBC */ _t25 = cpu->r[31] + 0x0000007Bu;
|
|
/* 02961FBC */ cpu->r[11] = rbrew_read8(cpu->mem, _t25);
|
|
/* 02961FC0 */ _t26 = cpu->r[30] + 0x000001D7u;
|
|
/* 02961FC0 */ rbrew_write8(cpu->mem, _t26, (uint8_t)cpu->r[11]);
|
|
/* 02961FC4 */ _t27 = cpu->r[31] + 0x0000007Cu;
|
|
/* 02961FC4 */ cpu->r[10] = rbrew_read8(cpu->mem, _t27);
|
|
/* 02961FC8 */ _t28 = cpu->r[30] + 0x000001D8u;
|
|
/* 02961FC8 */ rbrew_write8(cpu->mem, _t28, (uint8_t)cpu->r[10]);
|
|
/* 02961FCC */ _t29 = cpu->r[31] + 0x0000007Du;
|
|
/* 02961FCC */ cpu->r[11] = rbrew_read8(cpu->mem, _t29);
|
|
/* 02961FD0 */ _t30 = cpu->r[30] + 0x00000184u;
|
|
/* 02961FD0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02961FD4 */ _t31 = cpu->r[30] + 0x000001D9u;
|
|
/* 02961FD4 */ rbrew_write8(cpu->mem, _t31, (uint8_t)cpu->r[11]);
|
|
/* 02961FD8 */ _t32 = cpu->r[31] + 0x0000007Eu;
|
|
/* 02961FD8 */ cpu->r[12] = rbrew_read8(cpu->mem, _t32);
|
|
/* 02961FDC */ _t33 = cpu->r[30] + 0x0000018Cu;
|
|
/* 02961FDC */ cpu->r[11] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02961FE0 */ _t34 = cpu->r[30] + 0x000001DAu;
|
|
/* 02961FE0 */ rbrew_write8(cpu->mem, _t34, (uint8_t)cpu->r[12]);
|
|
/* 02961FE4 */ _t35 = cpu->r[31] + 0x0000007Fu;
|
|
/* 02961FE4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t35);
|
|
/* 02961FE8 */ _t36 = cpu->r[30] + 0x000001E0u;
|
|
/* 02961FE8 */ rbrew_write32(cpu->mem, _t36, cpu->r[10]);
|
|
/* 02961FEC */ _t37 = cpu->r[30] + 0x000001DBu;
|
|
/* 02961FEC */ rbrew_write8(cpu->mem, _t37, (uint8_t)cpu->r[0]);
|
|
/* 02961FF0 */ cpu->r[3] = cpu->r[30];
|
|
/* 02961FF4 */ _t38 = cpu->r[30] + 0x000001E4u;
|
|
/* 02961FF4 */ rbrew_write32(cpu->mem, _t38, cpu->r[11]);
|
|
/* 02961FF8 */ Gambit_fn_02961C58(cpu);
|
|
/* 02961FFC */ _t39 = cpu->r[30] + 0x000001DAu;
|
|
/* 02961FFC */ cpu->r[0] = rbrew_read8(cpu->mem, _t39);
|
|
/* 02962000 */ _t40 = cpu->r[30] + 0x0000016Cu;
|
|
/* 02962000 */ cpu->r[12] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02962004 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], cpu->r[12]);
|
|
/* 02962008 */ _t41 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02962008 */ _t42 = _t41 & 0x00000001u;
|
|
/* 02962008 */ if (_t42) goto L_0296200C; else goto L_02962010;
|
|
L_0296200C: ; // 0x296200c
|
|
/* 0296200C */ cpu->r[12] = cpu->r[0];
|
|
L_02962010: ; // 0x2962010
|
|
/* 02962010 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], 0x00000006u);
|
|
/* 02962014 */ _t43 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02962014 */ _t44 = _t43 & 0x00000001u;
|
|
/* 02962014 */ if (_t44) goto L_02962018; else goto L_02962024;
|
|
L_02962018: ; // 0x2962018
|
|
/* 02962018 */ _t45 = cpu->r[30] + 0x000005D0u;
|
|
/* 02962018 */ cpu->r[0] = rbrew_read8(cpu->mem, _t45);
|
|
/* 0296201C */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000019u, 0x00000017u);
|
|
/* 02962020 */ _t46 = cpu->r[30] + 0x000005D0u;
|
|
/* 02962020 */ rbrew_write8(cpu->mem, _t46, (uint8_t)cpu->r[0]);
|
|
L_02962024: ; // 0x2962024
|
|
/* 02962024 */ _t47 = cpu->r[1] + 0x00000014u;
|
|
/* 02962024 */ cpu->r[0] = rbrew_read32(cpu->mem, _t47);
|
|
/* 02962028 */ _t48 = cpu->r[1] + 0x00000008u;
|
|
/* 02962028 */ cpu->r[30] = rbrew_read32(cpu->mem, _t48);
|
|
/* 0296202C */ cpu->lr = cpu->r[0];
|
|
/* 02962030 */ _t49 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02962030 */ cpu->r[31] = rbrew_read32(cpu->mem, _t49);
|
|
/* 02962034 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02962038 */ return;
|
|
}
|
|
|
|
// fn_0291D16C @ 0x291d16c
|
|
void Gambit_fn_0291D16C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28;
|
|
|
|
L_0291D16C: ; // 0x291d16c
|
|
/* 0291D16C */ cpu->r[12] = cpu->r[3];
|
|
/* 0291D170 */ _t0 = cpu->r[12] + 0x0000008Cu;
|
|
/* 0291D170 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0291D174 */ cpu->r[8] = cpu->r[6];
|
|
/* 0291D178 */ cpu->r[7] = cpu->r[5];
|
|
/* 0291D17C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0291D180 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291D180 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0291D180 */ if (_t2) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0291D180 */ goto L_0291D184;
|
|
L_0291D184: ; // 0x291d184
|
|
/* 0291D184 */ _t3 = cpu->r[12] + 0x00000004u;
|
|
/* 0291D184 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0291D188 */ cpu->r[6] = cpu->r[4];
|
|
/* 0291D18C */ _t4 = cpu->r[12] + 0x00000090u;
|
|
/* 0291D18C */ cpu->r[4] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0291D190 */ _t5 = cpu->r[12] + 0x00000094u;
|
|
/* 0291D190 */ cpu->r[5] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0291D194 */ goto L_02961D8C;
|
|
L_02961D8C: ; // 0x2961d8c
|
|
/* 02961D8C */ _t6 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 02961D8C */ rbrew_write32(cpu->mem, _t6, cpu->r[1]);
|
|
/* 02961D8C */ cpu->r[1] = _t6;
|
|
/* 02961D90 */ /* nop */
|
|
/* 02961D94 */ cpu->r[0] = cpu->lr;
|
|
/* 02961D98 */ _t7 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02961D98 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 02961D9C */ cpu->r[29] = cpu->r[7];
|
|
/* 02961DA0 */ cpu->r[27] = cpu->r[3];
|
|
/* 02961DA4 */ _t8 = cpu->r[27] + 0x000005D0u;
|
|
/* 02961DA4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t8);
|
|
/* 02961DA8 */ cpu->r[31] = cpu->r[4];
|
|
/* 02961DAC */ cpu->r[28] = cpu->r[6];
|
|
/* 02961DB0 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02961DB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02961DB4 */ cpu->r[30] = cpu->r[8];
|
|
/* 02961DB8 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02961DB8 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02961DB8 */ if (_t10) goto L_02961DC4; else goto L_02961DBC;
|
|
L_02961DBC: ; // 0x2961dbc
|
|
/* 02961DBC */ cpu->r[3] = cpu->r[27];
|
|
/* 02961DC0 */ Gambit_fn_02961B74(cpu);
|
|
L_02961DC4: ; // 0x2961dc4
|
|
/* 02961DC4 */ cpu->r[3] = cpu->r[27] + 0x0000015Cu;
|
|
/* 02961DC8 */ cpu->r[5] = cpu->r[28];
|
|
/* 02961DCC */ cpu->r[6] = cpu->r[29];
|
|
/* 02961DD0 */ cpu->r[7] = cpu->r[29];
|
|
/* 02961DD4 */ cpu->r[10] = 0x00000000u;
|
|
/* 02961DD8 */ cpu->r[4] = 0x00000003u;
|
|
/* 02961DDC */ cpu->r[0] = 0x00000001u;
|
|
/* 02961DE0 */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 02961DE0 */ rbrew_write32(cpu->mem, _t11, cpu->r[10]);
|
|
/* 02961DE4 */ cpu->r[8] = 0x00000006u;
|
|
/* 02961DE8 */ cpu->r[9] = cpu->r[30];
|
|
/* 02961DEC */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02961DEC */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 02961DF0 */ Gambit_fn_028F7664(cpu);
|
|
/* 02961DF4 */ _t13 = cpu->r[27] + 0x00000180u;
|
|
/* 02961DF4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02961DF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02961DFC */ _t14 = cpu->r[27] + 0x00000188u;
|
|
/* 02961DFC */ cpu->r[7] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02961E00 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02961E00 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02961E00 */ if (_t16) goto L_02961E24; else goto L_02961E04;
|
|
L_02961E04: ; // 0x2961e04
|
|
/* 02961E04 */ _t17 = cpu->r[27] + 0x00000198u;
|
|
/* 02961E04 */ cpu->r[10] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02961E08 */ cpu->r[12] = cpu->r[31] + cpu->r[10];
|
|
/* 02961E0C */ cpu->r[5] = cpu->r[10] + 0xFFFFFFFFu;
|
|
/* 02961E10 */ cpu->r[0] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 02961E14 */ _t18 = cpu->r[27] + 0x00000180u;
|
|
/* 02961E14 */ cpu->r[6] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02961E18 */ _t19 = ~cpu->r[5];
|
|
/* 02961E18 */ cpu->r[31] = cpu->r[0] & _t19;
|
|
/* 02961E1C */ _t20 = cpu->r[27] + 0x000001E0u;
|
|
/* 02961E1C */ rbrew_write32(cpu->mem, _t20, cpu->r[31]);
|
|
/* 02961E20 */ cpu->r[31] = cpu->r[31] + cpu->r[6];
|
|
L_02961E24: ; // 0x2961e24
|
|
/* 02961E24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 02961E28 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02961E28 */ _t22 = _t21 & 0x00000001u;
|
|
/* 02961E28 */ if (_t22) goto L_02961E44; else goto L_02961E2C;
|
|
L_02961E2C: ; // 0x2961e2c
|
|
/* 02961E2C */ _t23 = cpu->r[27] + 0x00000198u;
|
|
/* 02961E2C */ cpu->r[12] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02961E30 */ cpu->r[8] = cpu->r[31] + cpu->r[12];
|
|
/* 02961E34 */ cpu->r[9] = cpu->r[8] + 0xFFFFFFFFu;
|
|
/* 02961E38 */ cpu->r[10] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 02961E3C */ _t24 = ~cpu->r[10];
|
|
/* 02961E3C */ cpu->r[31] = cpu->r[9] & _t24;
|
|
/* 02961E40 */ _t25 = cpu->r[27] + 0x000001E4u;
|
|
/* 02961E40 */ rbrew_write32(cpu->mem, _t25, cpu->r[31]);
|
|
L_02961E44: ; // 0x2961e44
|
|
/* 02961E44 */ cpu->r[3] = cpu->r[27];
|
|
/* 02961E48 */ Gambit_fn_02961C58(cpu);
|
|
/* 02961E4C */ _t26 = cpu->r[27] + 0x000005D0u;
|
|
/* 02961E4C */ cpu->r[0] = rbrew_read8(cpu->mem, _t26);
|
|
/* 02961E50 */ cpu->r[0] = cpu->r[0] | 0x00000004u;
|
|
/* 02961E54 */ _t27 = cpu->r[27] + 0x000005D0u;
|
|
/* 02961E54 */ rbrew_write8(cpu->mem, _t27, (uint8_t)cpu->r[0]);
|
|
/* 02961E58 */ /* nop */
|
|
/* 02961E5C */ _t28 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02961E5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02961E60 */ cpu->lr = cpu->r[0];
|
|
/* 02961E64 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 02961E68 */ return;
|
|
}
|
|
|
|
// fn_0291D198 @ 0x291d198
|
|
void Gambit_fn_0291D198(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_0291D198: ; // 0x291d198
|
|
/* 0291D198 */ cpu->r[0] = cpu->lr;
|
|
/* 0291D19C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0291D19C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291D19C */ cpu->r[1] = _t0;
|
|
/* 0291D1A0 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0291D1A0 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0291D1A4 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291D1A4 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0291D1A8 */ cpu->r[31] = cpu->r[4];
|
|
/* 0291D1AC */ cpu->r[30] = cpu->r[3];
|
|
/* 0291D1B0 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0291D1B0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0291D1B4 */ Gambit_fn_0291CFC8(cpu);
|
|
/* 0291D1B8 */ cpu->r[3] = cpu->r[30] + 0x000001A0u;
|
|
/* 0291D1BC */ cpu->r[4] = cpu->r[31];
|
|
/* 0291D1C0 */ cpu->r[5] = 0x00000001u;
|
|
/* 0291D1C4 */ Gambit_fn_0293C6D0(cpu);
|
|
/* 0291D1C8 */ cpu->r[0] = 0x00000000u;
|
|
/* 0291D1CC */ cpu->r[3] = cpu->r[30];
|
|
/* 0291D1D0 */ _t4 = cpu->r[30] + 0x00000358u;
|
|
/* 0291D1D0 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[0]);
|
|
/* 0291D1D4 */ Gambit_fn_029162A4(cpu);
|
|
/* 0291D1D8 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 0291D1D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0291D1DC */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291D1DC */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0291D1E0 */ cpu->lr = cpu->r[0];
|
|
/* 0291D1E4 */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 0291D1E4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0291D1E8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0291D1EC */ return;
|
|
}
|
|
|
|
// fn_0291D19C @ 0x291d19c
|
|
void Gambit_fn_0291D19C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_0291D19C: ; // 0x291d19c
|
|
/* 0291D19C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0291D19C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291D19C */ cpu->r[1] = _t0;
|
|
/* 0291D1A0 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0291D1A0 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0291D1A4 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291D1A4 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0291D1A8 */ cpu->r[31] = cpu->r[4];
|
|
/* 0291D1AC */ cpu->r[30] = cpu->r[3];
|
|
/* 0291D1B0 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0291D1B0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0291D1B4 */ Gambit_fn_0291CFC8(cpu);
|
|
/* 0291D1B8 */ cpu->r[3] = cpu->r[30] + 0x000001A0u;
|
|
/* 0291D1BC */ cpu->r[4] = cpu->r[31];
|
|
/* 0291D1C0 */ cpu->r[5] = 0x00000001u;
|
|
/* 0291D1C4 */ Gambit_fn_0293C6D0(cpu);
|
|
/* 0291D1C8 */ cpu->r[0] = 0x00000000u;
|
|
/* 0291D1CC */ cpu->r[3] = cpu->r[30];
|
|
/* 0291D1D0 */ _t4 = cpu->r[30] + 0x00000358u;
|
|
/* 0291D1D0 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[0]);
|
|
/* 0291D1D4 */ Gambit_fn_029162A4(cpu);
|
|
/* 0291D1D8 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 0291D1D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0291D1DC */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291D1DC */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0291D1E0 */ cpu->lr = cpu->r[0];
|
|
/* 0291D1E4 */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 0291D1E4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0291D1E8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0291D1EC */ return;
|
|
}
|
|
|
|
// fn_0291D1F0 @ 0x291d1f0
|
|
void Gambit_fn_0291D1F0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_0291D1F0: ; // 0x291d1f0
|
|
/* 0291D1F0 */ cpu->r[0] = cpu->lr;
|
|
/* 0291D1F4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0291D1F4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291D1F4 */ cpu->r[1] = _t0;
|
|
/* 0291D1F8 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0291D1F8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0291D1FC */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291D1FC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0291D200 */ cpu->r[31] = cpu->r[4];
|
|
/* 0291D204 */ cpu->r[30] = cpu->r[3];
|
|
/* 0291D208 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0291D208 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0291D20C */ Gambit_fn_0291D0A0(cpu);
|
|
/* 0291D210 */ cpu->r[3] = cpu->r[30] + 0x000001A0u;
|
|
/* 0291D214 */ cpu->r[4] = cpu->r[31];
|
|
/* 0291D218 */ cpu->r[5] = 0x00000001u;
|
|
/* 0291D21C */ Gambit_fn_0293C6D0(cpu);
|
|
/* 0291D220 */ cpu->r[0] = 0x00000000u;
|
|
/* 0291D224 */ cpu->r[3] = cpu->r[30];
|
|
/* 0291D228 */ _t4 = cpu->r[30] + 0x00000358u;
|
|
/* 0291D228 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[0]);
|
|
/* 0291D22C */ Gambit_fn_029162A4(cpu);
|
|
/* 0291D230 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 0291D230 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0291D234 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291D234 */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0291D238 */ cpu->lr = cpu->r[0];
|
|
/* 0291D23C */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 0291D23C */ cpu->r[30] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0291D240 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0291D244 */ return;
|
|
}
|
|
|
|
// fn_0291D1F4 @ 0x291d1f4
|
|
void Gambit_fn_0291D1F4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_0291D1F4: ; // 0x291d1f4
|
|
/* 0291D1F4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0291D1F4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291D1F4 */ cpu->r[1] = _t0;
|
|
/* 0291D1F8 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0291D1F8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0291D1FC */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291D1FC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0291D200 */ cpu->r[31] = cpu->r[4];
|
|
/* 0291D204 */ cpu->r[30] = cpu->r[3];
|
|
/* 0291D208 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0291D208 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0291D20C */ Gambit_fn_0291D0A0(cpu);
|
|
/* 0291D210 */ cpu->r[3] = cpu->r[30] + 0x000001A0u;
|
|
/* 0291D214 */ cpu->r[4] = cpu->r[31];
|
|
/* 0291D218 */ cpu->r[5] = 0x00000001u;
|
|
/* 0291D21C */ Gambit_fn_0293C6D0(cpu);
|
|
/* 0291D220 */ cpu->r[0] = 0x00000000u;
|
|
/* 0291D224 */ cpu->r[3] = cpu->r[30];
|
|
/* 0291D228 */ _t4 = cpu->r[30] + 0x00000358u;
|
|
/* 0291D228 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[0]);
|
|
/* 0291D22C */ Gambit_fn_029162A4(cpu);
|
|
/* 0291D230 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 0291D230 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0291D234 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291D234 */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0291D238 */ cpu->lr = cpu->r[0];
|
|
/* 0291D23C */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 0291D23C */ cpu->r[30] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0291D240 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0291D244 */ return;
|
|
}
|
|
|
|
// fn_0291D248 @ 0x291d248
|
|
void Gambit_fn_0291D248(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t117, _t118, _t119, _t120, _t121, _t122, _t123, _t124, _t125, _t126, _t127, _t128, _t129, _t130, _t131, _t132, _t133, _t134, _t135, _t136, _t137, _t138, _t139, _t140, _t141, _t142, _t143, _t144, _t145, _t146, _t147, _t148, _t149, _t150, _t151, _t152, _t153, _t154, _t155, _t156, _t157, _t158, _t159, _t160, _t161, _t162, _t163;
|
|
|
|
L_0291D248: ; // 0x291d248
|
|
/* 0291D248 */ cpu->r[0] = cpu->lr;
|
|
/* 0291D24C */ _t0 = cpu->r[1] + 0xFFFFFF70u;
|
|
/* 0291D24C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291D24C */ cpu->r[1] = _t0;
|
|
/* 0291D250 */ _t1 = cpu->r[1] + 0x00000084u;
|
|
/* 0291D250 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 0291D254 */ cpu->r[6] = 0x10140000u;
|
|
/* 0291D258 */ _t2 = cpu->r[1] + 0x00000088u;
|
|
/* 0291D258 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0291D25C */ cpu->r[8] = 0x10140000u;
|
|
/* 0291D260 */ _t3 = cpu->r[6] + 0x00001FB4u;
|
|
/* 0291D260 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 0291D264 */ _t4 = cpu->r[8] + 0x0000202Cu;
|
|
/* 0291D264 */ cpu->f[4] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 0291D268 */ _t5 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0291D268 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 0291D26C */ cpu->r[30] = 0x101F0000u;
|
|
/* 0291D270 */ _t6 = cpu->r[1] + 0x00000094u;
|
|
/* 0291D270 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0291D274 */ _t7 = cpu->r[30] + 0x000072D0u;
|
|
/* 0291D274 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[4]);
|
|
/* 0291D274 */ cpu->r[30] = _t7;
|
|
/* 0291D278 */ _t8 = cpu->r[30] + 0x00000050u;
|
|
/* 0291D278 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[12]);
|
|
/* 0291D27C */ _t9 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0291D27C */ rbrew_write_f32(cpu->mem, _t9, cpu->f[12]);
|
|
/* 0291D280 */ _t10 = cpu->r[30] + 0x00000020u;
|
|
/* 0291D280 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[12]);
|
|
/* 0291D284 */ _t11 = cpu->r[30] + 0x00000054u;
|
|
/* 0291D284 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[12]);
|
|
/* 0291D288 */ _t12 = cpu->r[30] + 0x00000048u;
|
|
/* 0291D288 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[12]);
|
|
/* 0291D28C */ _t13 = cpu->r[30] + 0x00000014u;
|
|
/* 0291D28C */ rbrew_write_f32(cpu->mem, _t13, cpu->f[12]);
|
|
/* 0291D290 */ _t14 = cpu->r[30] + 0x00000024u;
|
|
/* 0291D290 */ rbrew_write_f32(cpu->mem, _t14, cpu->f[12]);
|
|
/* 0291D294 */ _t15 = cpu->r[30] + 0x00000058u;
|
|
/* 0291D294 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[12]);
|
|
/* 0291D298 */ _t16 = cpu->r[30] + 0x00000040u;
|
|
/* 0291D298 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[12]);
|
|
/* 0291D29C */ _t17 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0291D29C */ rbrew_write_f32(cpu->mem, _t17, cpu->f[12]);
|
|
/* 0291D2A0 */ _t18 = cpu->r[30] + 0x0000002Cu;
|
|
/* 0291D2A0 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[12]);
|
|
/* 0291D2A4 */ _t19 = cpu->r[30] + 0x00000060u;
|
|
/* 0291D2A4 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[12]);
|
|
/* 0291D2A8 */ _t20 = cpu->r[30] + 0x0000003Cu;
|
|
/* 0291D2A8 */ rbrew_write_f32(cpu->mem, _t20, cpu->f[12]);
|
|
/* 0291D2AC */ cpu->r[11] = 0x10140000u;
|
|
/* 0291D2B0 */ _t21 = cpu->r[30] + 0x00000008u;
|
|
/* 0291D2B0 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[12]);
|
|
/* 0291D2B4 */ _t22 = cpu->r[11] + 0x00001F98u;
|
|
/* 0291D2B4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 0291D2B8 */ _t23 = cpu->r[30] + 0x0000008Cu;
|
|
/* 0291D2B8 */ rbrew_write_f32(cpu->mem, _t23, cpu->f[12]);
|
|
/* 0291D2BC */ _t24 = cpu->r[30] + 0x0000004Cu;
|
|
/* 0291D2BC */ rbrew_write_f32(cpu->mem, _t24, cpu->f[0]);
|
|
/* 0291D2C0 */ _t25 = cpu->r[30] + 0x00000068u;
|
|
/* 0291D2C0 */ rbrew_write_f32(cpu->mem, _t25, cpu->f[0]);
|
|
/* 0291D2C4 */ _t26 = cpu->r[30] + 0x00000044u;
|
|
/* 0291D2C4 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[4]);
|
|
/* 0291D2C8 */ _t27 = cpu->r[30] + 0x00000028u;
|
|
/* 0291D2C8 */ rbrew_write_f32(cpu->mem, _t27, cpu->f[4]);
|
|
/* 0291D2CC */ _t28 = cpu->r[30] + 0x00000010u;
|
|
/* 0291D2CC */ rbrew_write_f32(cpu->mem, _t28, cpu->f[4]);
|
|
/* 0291D2D0 */ _t29 = cpu->r[30] + 0x0000006Cu;
|
|
/* 0291D2D0 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[12]);
|
|
/* 0291D2D4 */ _t30 = cpu->r[30] + 0x00000074u;
|
|
/* 0291D2D4 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[12]);
|
|
/* 0291D2D8 */ _t31 = cpu->r[30] + 0x00000034u;
|
|
/* 0291D2D8 */ rbrew_write_f32(cpu->mem, _t31, cpu->f[4]);
|
|
/* 0291D2DC */ cpu->r[6] = 0x10140000u;
|
|
/* 0291D2E0 */ _t32 = cpu->r[30] + 0x00000004u;
|
|
/* 0291D2E0 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[12]);
|
|
/* 0291D2E4 */ _t33 = cpu->r[6] + 0x00002370u;
|
|
/* 0291D2E4 */ cpu->f[2] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 0291D2E8 */ cpu->r[3] = 0x101F0000u;
|
|
/* 0291D2EC */ _t34 = cpu->r[30] + 0x0000007Cu;
|
|
/* 0291D2EC */ rbrew_write_f32(cpu->mem, _t34, cpu->f[12]);
|
|
/* 0291D2F0 */ _t35 = cpu->r[30] + 0x00000084u;
|
|
/* 0291D2F0 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[12]);
|
|
/* 0291D2F4 */ _t36 = cpu->r[30] + 0x00000070u;
|
|
/* 0291D2F4 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[4]);
|
|
/* 0291D2F8 */ _t37 = cpu->r[30] + 0x00000038u;
|
|
/* 0291D2F8 */ rbrew_write_f32(cpu->mem, _t37, cpu->f[12]);
|
|
/* 0291D2FC */ _t38 = cpu->r[30] + 0x00000078u;
|
|
/* 0291D2FC */ rbrew_write_f32(cpu->mem, _t38, cpu->f[12]);
|
|
/* 0291D300 */ _t39 = cpu->r[30] + 0x0000005Cu;
|
|
/* 0291D300 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[0]);
|
|
/* 0291D304 */ _t40 = cpu->r[30] + 0x00000080u;
|
|
/* 0291D304 */ rbrew_write_f32(cpu->mem, _t40, cpu->f[4]);
|
|
/* 0291D308 */ _t41 = cpu->r[30] + 0x00000018u;
|
|
/* 0291D308 */ rbrew_write_f32(cpu->mem, _t41, cpu->f[0]);
|
|
/* 0291D30C */ cpu->r[9] = 0x10140000u;
|
|
/* 0291D310 */ _t42 = cpu->r[30] + 0x00000030u;
|
|
/* 0291D310 */ rbrew_write_f32(cpu->mem, _t42, cpu->f[12]);
|
|
/* 0291D314 */ cpu->f[1] = cpu->f[4];
|
|
/* 0291D318 */ _t43 = cpu->r[9] + 0x0000242Cu;
|
|
/* 0291D318 */ cpu->f[3] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 0291D31C */ _t44 = cpu->r[30] + 0x00000064u;
|
|
/* 0291D31C */ rbrew_write_f32(cpu->mem, _t44, cpu->f[12]);
|
|
/* 0291D320 */ cpu->r[3] = cpu->r[3] + 0x00007360u;
|
|
/* 0291D324 */ _t45 = cpu->r[30] + 0x00000088u;
|
|
/* 0291D324 */ rbrew_write_f32(cpu->mem, _t45, cpu->f[4]);
|
|
/* 0291D328 */ Gambit_fn_0281C3E4(cpu);
|
|
/* 0291D32C */ cpu->r[3] = 0x101D0000u;
|
|
/* 0291D330 */ cpu->r[3] = cpu->r[3] + 0xFFFFA434u;
|
|
/* 0291D334 */ Gambit_fn_02C83090(cpu);
|
|
/* 0291D338 */ cpu->r[11] = 0x10140000u;
|
|
/* 0291D33C */ _t46 = cpu->r[11] + 0x00002430u;
|
|
/* 0291D33C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 0291D340 */ cpu->f[2] = cpu->f[1];
|
|
/* 0291D344 */ cpu->f[3] = cpu->f[1];
|
|
/* 0291D348 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0291D34C */ Gambit_fn_02C698D0(cpu);
|
|
/* 0291D350 */ cpu->r[0] = 0x00000003u;
|
|
/* 0291D354 */ cpu->r[9] = cpu->r[1] + 0x00000004u;
|
|
/* 0291D358 */ cpu->r[11] = 0x101F0000u;
|
|
/* 0291D35C */ cpu->ctr = cpu->r[0];
|
|
/* 0291D360 */ cpu->r[11] = cpu->r[11] + 0x0000729Cu;
|
|
L_0291D364: ; // 0x291d364
|
|
/* 0291D364 */ _t47 = cpu->r[9] + 0x00000004u;
|
|
/* 0291D364 */ cpu->r[8] = rbrew_read32(cpu->mem, _t47);
|
|
/* 0291D368 */ _t48 = cpu->r[11] + 0x00000004u;
|
|
/* 0291D368 */ rbrew_write32(cpu->mem, _t48, cpu->r[8]);
|
|
/* 0291D36C */ _t49 = cpu->r[9] + 0x00000008u;
|
|
/* 0291D36C */ cpu->r[10] = rbrew_read32(cpu->mem, _t49);
|
|
/* 0291D370 */ _t50 = cpu->r[11] + 0x00000008u;
|
|
/* 0291D370 */ rbrew_write32(cpu->mem, _t50, cpu->r[10]);
|
|
/* 0291D374 */ _t51 = cpu->r[9] + 0x0000000Cu;
|
|
/* 0291D374 */ cpu->r[12] = rbrew_read32(cpu->mem, _t51);
|
|
/* 0291D378 */ _t52 = cpu->r[11] + 0x0000000Cu;
|
|
/* 0291D378 */ rbrew_write32(cpu->mem, _t52, cpu->r[12]);
|
|
/* 0291D37C */ _t53 = cpu->r[9] + 0x00000010u;
|
|
/* 0291D37C */ cpu->r[5] = rbrew_read32(cpu->mem, _t53);
|
|
/* 0291D37C */ cpu->r[9] = _t53;
|
|
/* 0291D380 */ _t54 = cpu->r[11] + 0x00000010u;
|
|
/* 0291D380 */ rbrew_write32(cpu->mem, _t54, cpu->r[5]);
|
|
/* 0291D380 */ cpu->r[11] = _t54;
|
|
/* 0291D384 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0291D384 */ _t55 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0291D384 */ _t56 = _t55 >> (0x00000002u & 31u);
|
|
/* 0291D384 */ _t57 = _t56 & 0x00000001u;
|
|
/* 0291D384 */ if (_t57) goto L_0291D364; else goto L_0291D388;
|
|
L_0291D388: ; // 0x291d388
|
|
/* 0291D388 */ cpu->r[31] = 0x101F0000u;
|
|
/* 0291D38C */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 0291D390 */ cpu->r[5] = cpu->r[30];
|
|
/* 0291D394 */ cpu->r[4] = cpu->r[31] + 0x00006338u;
|
|
/* 0291D398 */ cpu->r[6] = cpu->r[30] + 0x0000000Cu;
|
|
/* 0291D39C */ Gambit_fn_0281AC4C(cpu);
|
|
/* 0291D3A0 */ _t58 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0291D3A0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t58);
|
|
/* 0291D3A4 */ _t59 = cpu->r[8] + 0x00000024u;
|
|
/* 0291D3A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t59);
|
|
/* 0291D3A8 */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 0291D3AC */ cpu->ctr = cpu->r[0];
|
|
/* 0291D3B0 */ cpu->r[4] = cpu->r[3];
|
|
/* 0291D3B4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291D3B8 */ /* nop */
|
|
/* 0291D3BC */ /* nop */
|
|
/* 0291D3C0 */ /* nop */
|
|
/* 0291D3C4 */ _t60 = cpu->r[1] + 0x00000034u;
|
|
/* 0291D3C4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t60);
|
|
/* 0291D3C8 */ /* nop */
|
|
/* 0291D3CC */ _t61 = cpu->r[1] + 0x00000010u;
|
|
/* 0291D3CC */ rbrew_write_f32(cpu->mem, _t61, cpu->f[12]);
|
|
/* 0291D3D0 */ _t62 = cpu->r[1] + 0x00000044u;
|
|
/* 0291D3D0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 0291D3D4 */ /* nop */
|
|
/* 0291D3D8 */ _t63 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0291D3D8 */ rbrew_write_f32(cpu->mem, _t63, cpu->f[13]);
|
|
/* 0291D3DC */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 0291D3E0 */ _t64 = cpu->r[1] + 0x00000054u;
|
|
/* 0291D3E0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 0291D3E4 */ /* nop */
|
|
/* 0291D3E8 */ cpu->r[4] = 0x00000002u;
|
|
/* 0291D3EC */ _t65 = cpu->r[1] + 0x00000028u;
|
|
/* 0291D3EC */ rbrew_write_f32(cpu->mem, _t65, cpu->f[0]);
|
|
/* 0291D3F0 */ Gambit_fn_0281ADA0(cpu);
|
|
/* 0291D3F4 */ cpu->r[29] = 0x101F0000u;
|
|
/* 0291D3F8 */ cpu->r[10] = 0x00000003u;
|
|
/* 0291D3FC */ cpu->r[8] = cpu->r[1] + 0x00000004u;
|
|
/* 0291D400 */ cpu->r[29] = cpu->r[29] + 0x00007418u;
|
|
/* 0291D404 */ cpu->ctr = cpu->r[10];
|
|
/* 0291D408 */ cpu->r[9] = cpu->r[29] + 0xFFFFFFFCu;
|
|
L_0291D40C: ; // 0x291d40c
|
|
/* 0291D40C */ _t66 = cpu->r[8] + 0x00000004u;
|
|
/* 0291D40C */ cpu->r[11] = rbrew_read32(cpu->mem, _t66);
|
|
/* 0291D410 */ _t67 = cpu->r[9] + 0x00000004u;
|
|
/* 0291D410 */ rbrew_write32(cpu->mem, _t67, cpu->r[11]);
|
|
/* 0291D414 */ _t68 = cpu->r[8] + 0x00000008u;
|
|
/* 0291D414 */ cpu->r[12] = rbrew_read32(cpu->mem, _t68);
|
|
/* 0291D418 */ _t69 = cpu->r[9] + 0x00000008u;
|
|
/* 0291D418 */ rbrew_write32(cpu->mem, _t69, cpu->r[12]);
|
|
/* 0291D41C */ _t70 = cpu->r[8] + 0x0000000Cu;
|
|
/* 0291D41C */ cpu->r[0] = rbrew_read32(cpu->mem, _t70);
|
|
/* 0291D41C */ cpu->r[8] = _t70;
|
|
/* 0291D420 */ _t71 = cpu->r[9] + 0x0000000Cu;
|
|
/* 0291D420 */ rbrew_write32(cpu->mem, _t71, cpu->r[0]);
|
|
/* 0291D420 */ cpu->r[9] = _t71;
|
|
/* 0291D424 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0291D424 */ _t72 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0291D424 */ _t73 = _t72 >> (0x00000002u & 31u);
|
|
/* 0291D424 */ _t74 = _t73 & 0x00000001u;
|
|
/* 0291D424 */ if (_t74) goto L_0291D40C; else goto L_0291D428;
|
|
L_0291D428: ; // 0x291d428
|
|
/* 0291D428 */ cpu->r[4] = cpu->r[31] + 0x00006338u;
|
|
/* 0291D42C */ cpu->r[5] = cpu->r[30] + 0x00000018u;
|
|
/* 0291D430 */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 0291D434 */ cpu->r[6] = cpu->r[30] + 0x00000024u;
|
|
/* 0291D438 */ Gambit_fn_0281AC4C(cpu);
|
|
/* 0291D43C */ _t75 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0291D43C */ cpu->r[5] = rbrew_read32(cpu->mem, _t75);
|
|
/* 0291D440 */ _t76 = cpu->r[5] + 0x00000024u;
|
|
/* 0291D440 */ cpu->r[0] = rbrew_read32(cpu->mem, _t76);
|
|
/* 0291D444 */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 0291D448 */ cpu->ctr = cpu->r[0];
|
|
/* 0291D44C */ cpu->r[4] = cpu->r[3];
|
|
/* 0291D450 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291D454 */ /* nop */
|
|
/* 0291D458 */ /* nop */
|
|
/* 0291D45C */ /* nop */
|
|
/* 0291D460 */ /* nop */
|
|
/* 0291D464 */ /* nop */
|
|
/* 0291D468 */ /* nop */
|
|
/* 0291D46C */ _t77 = cpu->r[1] + 0x00000054u;
|
|
/* 0291D46C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t77);
|
|
/* 0291D470 */ _t78 = cpu->r[1] + 0x00000034u;
|
|
/* 0291D470 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t78);
|
|
/* 0291D474 */ _t79 = cpu->r[1] + 0x00000044u;
|
|
/* 0291D474 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t79);
|
|
/* 0291D478 */ _t80 = cpu->r[1] + 0x00000010u;
|
|
/* 0291D478 */ rbrew_write_f32(cpu->mem, _t80, cpu->f[0]);
|
|
/* 0291D47C */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 0291D480 */ _t81 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0291D480 */ rbrew_write_f32(cpu->mem, _t81, cpu->f[10]);
|
|
/* 0291D484 */ cpu->r[4] = 0x00000002u;
|
|
/* 0291D488 */ _t82 = cpu->r[1] + 0x00000028u;
|
|
/* 0291D488 */ rbrew_write_f32(cpu->mem, _t82, cpu->f[11]);
|
|
/* 0291D48C */ Gambit_fn_0281ADA0(cpu);
|
|
/* 0291D490 */ cpu->r[7] = 0x00000003u;
|
|
/* 0291D494 */ cpu->r[5] = cpu->r[1] + 0x00000004u;
|
|
/* 0291D498 */ cpu->ctr = cpu->r[7];
|
|
/* 0291D49C */ cpu->r[6] = cpu->r[29] + 0x00000020u;
|
|
L_0291D4A0: ; // 0x291d4a0
|
|
/* 0291D4A0 */ _t83 = cpu->r[5] + 0x00000004u;
|
|
/* 0291D4A0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t83);
|
|
/* 0291D4A4 */ _t84 = cpu->r[6] + 0x00000004u;
|
|
/* 0291D4A4 */ rbrew_write32(cpu->mem, _t84, cpu->r[8]);
|
|
/* 0291D4A8 */ _t85 = cpu->r[5] + 0x00000008u;
|
|
/* 0291D4A8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t85);
|
|
/* 0291D4AC */ _t86 = cpu->r[6] + 0x00000008u;
|
|
/* 0291D4AC */ rbrew_write32(cpu->mem, _t86, cpu->r[9]);
|
|
/* 0291D4B0 */ _t87 = cpu->r[5] + 0x0000000Cu;
|
|
/* 0291D4B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t87);
|
|
/* 0291D4B0 */ cpu->r[5] = _t87;
|
|
/* 0291D4B4 */ _t88 = cpu->r[6] + 0x0000000Cu;
|
|
/* 0291D4B4 */ rbrew_write32(cpu->mem, _t88, cpu->r[0]);
|
|
/* 0291D4B4 */ cpu->r[6] = _t88;
|
|
/* 0291D4B8 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0291D4B8 */ _t89 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0291D4B8 */ _t90 = _t89 >> (0x00000002u & 31u);
|
|
/* 0291D4B8 */ _t91 = _t90 & 0x00000001u;
|
|
/* 0291D4B8 */ if (_t91) goto L_0291D4A0; else goto L_0291D4BC;
|
|
L_0291D4BC: ; // 0x291d4bc
|
|
/* 0291D4BC */ cpu->r[4] = cpu->r[31] + 0x00006338u;
|
|
/* 0291D4C0 */ cpu->r[5] = cpu->r[30] + 0x00000030u;
|
|
/* 0291D4C4 */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 0291D4C8 */ cpu->r[6] = cpu->r[30] + 0x0000003Cu;
|
|
/* 0291D4CC */ Gambit_fn_0281AC4C(cpu);
|
|
/* 0291D4D0 */ _t92 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0291D4D0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t92);
|
|
/* 0291D4D4 */ _t93 = cpu->r[12] + 0x00000024u;
|
|
/* 0291D4D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t93);
|
|
/* 0291D4D8 */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 0291D4DC */ cpu->ctr = cpu->r[0];
|
|
/* 0291D4E0 */ cpu->r[4] = cpu->r[3];
|
|
/* 0291D4E4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291D4E8 */ /* nop */
|
|
/* 0291D4EC */ /* nop */
|
|
/* 0291D4F0 */ /* nop */
|
|
/* 0291D4F4 */ /* nop */
|
|
/* 0291D4F8 */ /* nop */
|
|
/* 0291D4FC */ /* nop */
|
|
/* 0291D500 */ _t94 = cpu->r[1] + 0x00000054u;
|
|
/* 0291D500 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t94);
|
|
/* 0291D504 */ _t95 = cpu->r[1] + 0x00000034u;
|
|
/* 0291D504 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t95);
|
|
/* 0291D508 */ _t96 = cpu->r[1] + 0x00000044u;
|
|
/* 0291D508 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t96);
|
|
/* 0291D50C */ _t97 = cpu->r[1] + 0x00000010u;
|
|
/* 0291D50C */ rbrew_write_f32(cpu->mem, _t97, cpu->f[10]);
|
|
/* 0291D510 */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 0291D514 */ _t98 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0291D514 */ rbrew_write_f32(cpu->mem, _t98, cpu->f[11]);
|
|
/* 0291D518 */ cpu->r[4] = 0x00000002u;
|
|
/* 0291D51C */ _t99 = cpu->r[1] + 0x00000028u;
|
|
/* 0291D51C */ rbrew_write_f32(cpu->mem, _t99, cpu->f[12]);
|
|
/* 0291D520 */ Gambit_fn_0281ADA0(cpu);
|
|
/* 0291D524 */ cpu->r[11] = 0x00000003u;
|
|
/* 0291D528 */ cpu->r[9] = cpu->r[1] + 0x00000004u;
|
|
/* 0291D52C */ cpu->ctr = cpu->r[11];
|
|
/* 0291D530 */ cpu->r[10] = cpu->r[29] + 0x00000044u;
|
|
L_0291D534: ; // 0x291d534
|
|
/* 0291D534 */ _t100 = cpu->r[9] + 0x00000004u;
|
|
/* 0291D534 */ cpu->r[12] = rbrew_read32(cpu->mem, _t100);
|
|
/* 0291D538 */ _t101 = cpu->r[10] + 0x00000004u;
|
|
/* 0291D538 */ rbrew_write32(cpu->mem, _t101, cpu->r[12]);
|
|
/* 0291D53C */ _t102 = cpu->r[9] + 0x00000008u;
|
|
/* 0291D53C */ cpu->r[0] = rbrew_read32(cpu->mem, _t102);
|
|
/* 0291D540 */ _t103 = cpu->r[10] + 0x00000008u;
|
|
/* 0291D540 */ rbrew_write32(cpu->mem, _t103, cpu->r[0]);
|
|
/* 0291D544 */ _t104 = cpu->r[9] + 0x0000000Cu;
|
|
/* 0291D544 */ cpu->r[5] = rbrew_read32(cpu->mem, _t104);
|
|
/* 0291D544 */ cpu->r[9] = _t104;
|
|
/* 0291D548 */ _t105 = cpu->r[10] + 0x0000000Cu;
|
|
/* 0291D548 */ rbrew_write32(cpu->mem, _t105, cpu->r[5]);
|
|
/* 0291D548 */ cpu->r[10] = _t105;
|
|
/* 0291D54C */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0291D54C */ _t106 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0291D54C */ _t107 = _t106 >> (0x00000002u & 31u);
|
|
/* 0291D54C */ _t108 = _t107 & 0x00000001u;
|
|
/* 0291D54C */ if (_t108) goto L_0291D534; else goto L_0291D550;
|
|
L_0291D550: ; // 0x291d550
|
|
/* 0291D550 */ cpu->r[4] = cpu->r[31] + 0x00006338u;
|
|
/* 0291D554 */ cpu->r[5] = cpu->r[30] + 0x00000048u;
|
|
/* 0291D558 */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 0291D55C */ cpu->r[6] = cpu->r[30] + 0x00000054u;
|
|
/* 0291D560 */ Gambit_fn_0281AC4C(cpu);
|
|
/* 0291D564 */ _t109 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0291D564 */ cpu->r[6] = rbrew_read32(cpu->mem, _t109);
|
|
/* 0291D568 */ _t110 = cpu->r[6] + 0x00000024u;
|
|
/* 0291D568 */ cpu->r[0] = rbrew_read32(cpu->mem, _t110);
|
|
/* 0291D56C */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 0291D570 */ cpu->ctr = cpu->r[0];
|
|
/* 0291D574 */ cpu->r[4] = cpu->r[3];
|
|
/* 0291D578 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291D57C */ /* nop */
|
|
/* 0291D580 */ /* nop */
|
|
/* 0291D584 */ /* nop */
|
|
/* 0291D588 */ /* nop */
|
|
/* 0291D58C */ _t111 = cpu->r[1] + 0x00000044u;
|
|
/* 0291D58C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t111);
|
|
/* 0291D590 */ _t112 = cpu->r[1] + 0x00000034u;
|
|
/* 0291D590 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t112);
|
|
/* 0291D594 */ _t113 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0291D594 */ rbrew_write_f32(cpu->mem, _t113, cpu->f[0]);
|
|
/* 0291D598 */ _t114 = cpu->r[1] + 0x00000010u;
|
|
/* 0291D598 */ rbrew_write_f32(cpu->mem, _t114, cpu->f[13]);
|
|
/* 0291D59C */ /* nop */
|
|
/* 0291D5A0 */ _t115 = cpu->r[1] + 0x00000054u;
|
|
/* 0291D5A0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t115);
|
|
/* 0291D5A4 */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 0291D5A8 */ /* nop */
|
|
/* 0291D5AC */ cpu->r[4] = 0x00000002u;
|
|
/* 0291D5B0 */ _t116 = cpu->r[1] + 0x00000028u;
|
|
/* 0291D5B0 */ rbrew_write_f32(cpu->mem, _t116, cpu->f[10]);
|
|
/* 0291D5B4 */ Gambit_fn_0281ADA0(cpu);
|
|
/* 0291D5B8 */ cpu->r[8] = 0x00000003u;
|
|
/* 0291D5BC */ cpu->r[6] = cpu->r[1] + 0x00000004u;
|
|
/* 0291D5C0 */ cpu->ctr = cpu->r[8];
|
|
/* 0291D5C4 */ cpu->r[7] = cpu->r[29] + 0x00000068u;
|
|
L_0291D5C8: ; // 0x291d5c8
|
|
/* 0291D5C8 */ _t117 = cpu->r[6] + 0x00000004u;
|
|
/* 0291D5C8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t117);
|
|
/* 0291D5CC */ _t118 = cpu->r[7] + 0x00000004u;
|
|
/* 0291D5CC */ rbrew_write32(cpu->mem, _t118, cpu->r[9]);
|
|
/* 0291D5D0 */ _t119 = cpu->r[6] + 0x00000008u;
|
|
/* 0291D5D0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t119);
|
|
/* 0291D5D4 */ _t120 = cpu->r[7] + 0x00000008u;
|
|
/* 0291D5D4 */ rbrew_write32(cpu->mem, _t120, cpu->r[10]);
|
|
/* 0291D5D8 */ _t121 = cpu->r[6] + 0x0000000Cu;
|
|
/* 0291D5D8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t121);
|
|
/* 0291D5D8 */ cpu->r[6] = _t121;
|
|
/* 0291D5DC */ _t122 = cpu->r[7] + 0x0000000Cu;
|
|
/* 0291D5DC */ rbrew_write32(cpu->mem, _t122, cpu->r[11]);
|
|
/* 0291D5DC */ cpu->r[7] = _t122;
|
|
/* 0291D5E0 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0291D5E0 */ _t123 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0291D5E0 */ _t124 = _t123 >> (0x00000002u & 31u);
|
|
/* 0291D5E0 */ _t125 = _t124 & 0x00000001u;
|
|
/* 0291D5E0 */ if (_t125) goto L_0291D5C8; else goto L_0291D5E4;
|
|
L_0291D5E4: ; // 0x291d5e4
|
|
/* 0291D5E4 */ cpu->r[4] = cpu->r[31] + 0x00006338u;
|
|
/* 0291D5E8 */ cpu->r[5] = cpu->r[30] + 0x00000060u;
|
|
/* 0291D5EC */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 0291D5F0 */ cpu->r[6] = cpu->r[30] + 0x0000006Cu;
|
|
/* 0291D5F4 */ Gambit_fn_0281AC4C(cpu);
|
|
/* 0291D5F8 */ _t126 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0291D5F8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t126);
|
|
/* 0291D5FC */ _t127 = cpu->r[12] + 0x00000024u;
|
|
/* 0291D5FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t127);
|
|
/* 0291D600 */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 0291D604 */ cpu->ctr = cpu->r[0];
|
|
/* 0291D608 */ cpu->r[4] = cpu->r[3];
|
|
/* 0291D60C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291D610 */ /* nop */
|
|
/* 0291D614 */ /* nop */
|
|
/* 0291D618 */ /* nop */
|
|
/* 0291D61C */ /* nop */
|
|
/* 0291D620 */ /* nop */
|
|
/* 0291D624 */ /* nop */
|
|
/* 0291D628 */ _t128 = cpu->r[1] + 0x00000054u;
|
|
/* 0291D628 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t128);
|
|
/* 0291D62C */ _t129 = cpu->r[1] + 0x00000034u;
|
|
/* 0291D62C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t129);
|
|
/* 0291D630 */ _t130 = cpu->r[1] + 0x00000044u;
|
|
/* 0291D630 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t130);
|
|
/* 0291D634 */ _t131 = cpu->r[1] + 0x00000010u;
|
|
/* 0291D634 */ rbrew_write_f32(cpu->mem, _t131, cpu->f[0]);
|
|
/* 0291D638 */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 0291D63C */ _t132 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0291D63C */ rbrew_write_f32(cpu->mem, _t132, cpu->f[11]);
|
|
/* 0291D640 */ cpu->r[4] = 0x00000002u;
|
|
/* 0291D644 */ _t133 = cpu->r[1] + 0x00000028u;
|
|
/* 0291D644 */ rbrew_write_f32(cpu->mem, _t133, cpu->f[12]);
|
|
/* 0291D648 */ Gambit_fn_0281ADA0(cpu);
|
|
/* 0291D64C */ cpu->r[5] = 0x00000003u;
|
|
/* 0291D650 */ cpu->r[11] = cpu->r[1] + 0x00000004u;
|
|
/* 0291D654 */ cpu->ctr = cpu->r[5];
|
|
/* 0291D658 */ cpu->r[12] = cpu->r[29] + 0x0000008Cu;
|
|
L_0291D65C: ; // 0x291d65c
|
|
/* 0291D65C */ _t134 = cpu->r[11] + 0x00000004u;
|
|
/* 0291D65C */ cpu->r[6] = rbrew_read32(cpu->mem, _t134);
|
|
/* 0291D660 */ _t135 = cpu->r[12] + 0x00000004u;
|
|
/* 0291D660 */ rbrew_write32(cpu->mem, _t135, cpu->r[6]);
|
|
/* 0291D664 */ _t136 = cpu->r[11] + 0x00000008u;
|
|
/* 0291D664 */ cpu->r[7] = rbrew_read32(cpu->mem, _t136);
|
|
/* 0291D668 */ _t137 = cpu->r[12] + 0x00000008u;
|
|
/* 0291D668 */ rbrew_write32(cpu->mem, _t137, cpu->r[7]);
|
|
/* 0291D66C */ _t138 = cpu->r[11] + 0x0000000Cu;
|
|
/* 0291D66C */ cpu->r[8] = rbrew_read32(cpu->mem, _t138);
|
|
/* 0291D66C */ cpu->r[11] = _t138;
|
|
/* 0291D670 */ _t139 = cpu->r[12] + 0x0000000Cu;
|
|
/* 0291D670 */ rbrew_write32(cpu->mem, _t139, cpu->r[8]);
|
|
/* 0291D670 */ cpu->r[12] = _t139;
|
|
/* 0291D674 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0291D674 */ _t140 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0291D674 */ _t141 = _t140 >> (0x00000002u & 31u);
|
|
/* 0291D674 */ _t142 = _t141 & 0x00000001u;
|
|
/* 0291D674 */ if (_t142) goto L_0291D65C; else goto L_0291D678;
|
|
L_0291D678: ; // 0x291d678
|
|
/* 0291D678 */ cpu->r[4] = cpu->r[31] + 0x00006338u;
|
|
/* 0291D67C */ cpu->r[5] = cpu->r[30] + 0x00000078u;
|
|
/* 0291D680 */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 0291D684 */ cpu->r[6] = cpu->r[30] + 0x00000084u;
|
|
/* 0291D688 */ Gambit_fn_0281AC4C(cpu);
|
|
/* 0291D68C */ _t143 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0291D68C */ cpu->r[9] = rbrew_read32(cpu->mem, _t143);
|
|
/* 0291D690 */ _t144 = cpu->r[9] + 0x00000024u;
|
|
/* 0291D690 */ cpu->r[0] = rbrew_read32(cpu->mem, _t144);
|
|
/* 0291D694 */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 0291D698 */ cpu->ctr = cpu->r[0];
|
|
/* 0291D69C */ cpu->r[4] = cpu->r[3];
|
|
/* 0291D6A0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291D6A4 */ /* nop */
|
|
/* 0291D6A8 */ /* nop */
|
|
/* 0291D6AC */ /* nop */
|
|
/* 0291D6B0 */ /* nop */
|
|
/* 0291D6B4 */ /* nop */
|
|
/* 0291D6B8 */ /* nop */
|
|
/* 0291D6BC */ _t145 = cpu->r[1] + 0x00000054u;
|
|
/* 0291D6BC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t145);
|
|
/* 0291D6C0 */ _t146 = cpu->r[1] + 0x00000034u;
|
|
/* 0291D6C0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t146);
|
|
/* 0291D6C4 */ _t147 = cpu->r[1] + 0x00000044u;
|
|
/* 0291D6C4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t147);
|
|
/* 0291D6C8 */ _t148 = cpu->r[1] + 0x00000010u;
|
|
/* 0291D6C8 */ rbrew_write_f32(cpu->mem, _t148, cpu->f[10]);
|
|
/* 0291D6CC */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 0291D6D0 */ _t149 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0291D6D0 */ rbrew_write_f32(cpu->mem, _t149, cpu->f[12]);
|
|
/* 0291D6D4 */ cpu->r[4] = 0x00000002u;
|
|
/* 0291D6D8 */ _t150 = cpu->r[1] + 0x00000028u;
|
|
/* 0291D6D8 */ rbrew_write_f32(cpu->mem, _t150, cpu->f[13]);
|
|
/* 0291D6DC */ Gambit_fn_0281ADA0(cpu);
|
|
/* 0291D6E0 */ cpu->r[11] = 0x00000003u;
|
|
/* 0291D6E4 */ cpu->r[5] = cpu->r[1] + 0x00000004u;
|
|
/* 0291D6E8 */ cpu->ctr = cpu->r[11];
|
|
/* 0291D6EC */ cpu->r[9] = cpu->r[29] + 0x000000B0u;
|
|
L_0291D6F0: ; // 0x291d6f0
|
|
/* 0291D6F0 */ _t151 = cpu->r[5] + 0x00000004u;
|
|
/* 0291D6F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t151);
|
|
/* 0291D6F4 */ _t152 = cpu->r[9] + 0x00000004u;
|
|
/* 0291D6F4 */ rbrew_write32(cpu->mem, _t152, cpu->r[0]);
|
|
/* 0291D6F8 */ _t153 = cpu->r[5] + 0x00000008u;
|
|
/* 0291D6F8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t153);
|
|
/* 0291D6FC */ _t154 = cpu->r[9] + 0x00000008u;
|
|
/* 0291D6FC */ rbrew_write32(cpu->mem, _t154, cpu->r[6]);
|
|
/* 0291D700 */ _t155 = cpu->r[5] + 0x0000000Cu;
|
|
/* 0291D700 */ cpu->r[7] = rbrew_read32(cpu->mem, _t155);
|
|
/* 0291D700 */ cpu->r[5] = _t155;
|
|
/* 0291D704 */ _t156 = cpu->r[9] + 0x0000000Cu;
|
|
/* 0291D704 */ rbrew_write32(cpu->mem, _t156, cpu->r[7]);
|
|
/* 0291D704 */ cpu->r[9] = _t156;
|
|
/* 0291D708 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0291D708 */ _t157 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0291D708 */ _t158 = _t157 >> (0x00000002u & 31u);
|
|
/* 0291D708 */ _t159 = _t158 & 0x00000001u;
|
|
/* 0291D708 */ if (_t159) goto L_0291D6F0; else goto L_0291D70C;
|
|
L_0291D70C: ; // 0x291d70c
|
|
/* 0291D70C */ _t160 = cpu->r[1] + 0x00000084u;
|
|
/* 0291D70C */ cpu->r[29] = rbrew_read32(cpu->mem, _t160);
|
|
/* 0291D710 */ _t161 = cpu->r[1] + 0x00000094u;
|
|
/* 0291D710 */ cpu->r[0] = rbrew_read32(cpu->mem, _t161);
|
|
/* 0291D714 */ _t162 = cpu->r[1] + 0x00000088u;
|
|
/* 0291D714 */ cpu->r[30] = rbrew_read32(cpu->mem, _t162);
|
|
/* 0291D718 */ cpu->lr = cpu->r[0];
|
|
/* 0291D71C */ _t163 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0291D71C */ cpu->r[31] = rbrew_read32(cpu->mem, _t163);
|
|
/* 0291D720 */ cpu->r[1] = cpu->r[1] + 0x00000090u;
|
|
/* 0291D724 */ return;
|
|
}
|
|
|
|
// fn_0291D24C @ 0x291d24c
|
|
void Gambit_fn_0291D24C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t117, _t118, _t119, _t120, _t121, _t122, _t123, _t124, _t125, _t126, _t127, _t128, _t129, _t130, _t131, _t132, _t133, _t134, _t135, _t136, _t137, _t138, _t139, _t140, _t141, _t142, _t143, _t144, _t145, _t146, _t147, _t148, _t149, _t150, _t151, _t152, _t153, _t154, _t155, _t156, _t157, _t158, _t159, _t160, _t161, _t162, _t163;
|
|
|
|
L_0291D24C: ; // 0x291d24c
|
|
/* 0291D24C */ _t0 = cpu->r[1] + 0xFFFFFF70u;
|
|
/* 0291D24C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291D24C */ cpu->r[1] = _t0;
|
|
/* 0291D250 */ _t1 = cpu->r[1] + 0x00000084u;
|
|
/* 0291D250 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 0291D254 */ cpu->r[6] = 0x10140000u;
|
|
/* 0291D258 */ _t2 = cpu->r[1] + 0x00000088u;
|
|
/* 0291D258 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0291D25C */ cpu->r[8] = 0x10140000u;
|
|
/* 0291D260 */ _t3 = cpu->r[6] + 0x00001FB4u;
|
|
/* 0291D260 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 0291D264 */ _t4 = cpu->r[8] + 0x0000202Cu;
|
|
/* 0291D264 */ cpu->f[4] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 0291D268 */ _t5 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0291D268 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 0291D26C */ cpu->r[30] = 0x101F0000u;
|
|
/* 0291D270 */ _t6 = cpu->r[1] + 0x00000094u;
|
|
/* 0291D270 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0291D274 */ _t7 = cpu->r[30] + 0x000072D0u;
|
|
/* 0291D274 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[4]);
|
|
/* 0291D274 */ cpu->r[30] = _t7;
|
|
/* 0291D278 */ _t8 = cpu->r[30] + 0x00000050u;
|
|
/* 0291D278 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[12]);
|
|
/* 0291D27C */ _t9 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0291D27C */ rbrew_write_f32(cpu->mem, _t9, cpu->f[12]);
|
|
/* 0291D280 */ _t10 = cpu->r[30] + 0x00000020u;
|
|
/* 0291D280 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[12]);
|
|
/* 0291D284 */ _t11 = cpu->r[30] + 0x00000054u;
|
|
/* 0291D284 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[12]);
|
|
/* 0291D288 */ _t12 = cpu->r[30] + 0x00000048u;
|
|
/* 0291D288 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[12]);
|
|
/* 0291D28C */ _t13 = cpu->r[30] + 0x00000014u;
|
|
/* 0291D28C */ rbrew_write_f32(cpu->mem, _t13, cpu->f[12]);
|
|
/* 0291D290 */ _t14 = cpu->r[30] + 0x00000024u;
|
|
/* 0291D290 */ rbrew_write_f32(cpu->mem, _t14, cpu->f[12]);
|
|
/* 0291D294 */ _t15 = cpu->r[30] + 0x00000058u;
|
|
/* 0291D294 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[12]);
|
|
/* 0291D298 */ _t16 = cpu->r[30] + 0x00000040u;
|
|
/* 0291D298 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[12]);
|
|
/* 0291D29C */ _t17 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0291D29C */ rbrew_write_f32(cpu->mem, _t17, cpu->f[12]);
|
|
/* 0291D2A0 */ _t18 = cpu->r[30] + 0x0000002Cu;
|
|
/* 0291D2A0 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[12]);
|
|
/* 0291D2A4 */ _t19 = cpu->r[30] + 0x00000060u;
|
|
/* 0291D2A4 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[12]);
|
|
/* 0291D2A8 */ _t20 = cpu->r[30] + 0x0000003Cu;
|
|
/* 0291D2A8 */ rbrew_write_f32(cpu->mem, _t20, cpu->f[12]);
|
|
/* 0291D2AC */ cpu->r[11] = 0x10140000u;
|
|
/* 0291D2B0 */ _t21 = cpu->r[30] + 0x00000008u;
|
|
/* 0291D2B0 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[12]);
|
|
/* 0291D2B4 */ _t22 = cpu->r[11] + 0x00001F98u;
|
|
/* 0291D2B4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 0291D2B8 */ _t23 = cpu->r[30] + 0x0000008Cu;
|
|
/* 0291D2B8 */ rbrew_write_f32(cpu->mem, _t23, cpu->f[12]);
|
|
/* 0291D2BC */ _t24 = cpu->r[30] + 0x0000004Cu;
|
|
/* 0291D2BC */ rbrew_write_f32(cpu->mem, _t24, cpu->f[0]);
|
|
/* 0291D2C0 */ _t25 = cpu->r[30] + 0x00000068u;
|
|
/* 0291D2C0 */ rbrew_write_f32(cpu->mem, _t25, cpu->f[0]);
|
|
/* 0291D2C4 */ _t26 = cpu->r[30] + 0x00000044u;
|
|
/* 0291D2C4 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[4]);
|
|
/* 0291D2C8 */ _t27 = cpu->r[30] + 0x00000028u;
|
|
/* 0291D2C8 */ rbrew_write_f32(cpu->mem, _t27, cpu->f[4]);
|
|
/* 0291D2CC */ _t28 = cpu->r[30] + 0x00000010u;
|
|
/* 0291D2CC */ rbrew_write_f32(cpu->mem, _t28, cpu->f[4]);
|
|
/* 0291D2D0 */ _t29 = cpu->r[30] + 0x0000006Cu;
|
|
/* 0291D2D0 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[12]);
|
|
/* 0291D2D4 */ _t30 = cpu->r[30] + 0x00000074u;
|
|
/* 0291D2D4 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[12]);
|
|
/* 0291D2D8 */ _t31 = cpu->r[30] + 0x00000034u;
|
|
/* 0291D2D8 */ rbrew_write_f32(cpu->mem, _t31, cpu->f[4]);
|
|
/* 0291D2DC */ cpu->r[6] = 0x10140000u;
|
|
/* 0291D2E0 */ _t32 = cpu->r[30] + 0x00000004u;
|
|
/* 0291D2E0 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[12]);
|
|
/* 0291D2E4 */ _t33 = cpu->r[6] + 0x00002370u;
|
|
/* 0291D2E4 */ cpu->f[2] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 0291D2E8 */ cpu->r[3] = 0x101F0000u;
|
|
/* 0291D2EC */ _t34 = cpu->r[30] + 0x0000007Cu;
|
|
/* 0291D2EC */ rbrew_write_f32(cpu->mem, _t34, cpu->f[12]);
|
|
/* 0291D2F0 */ _t35 = cpu->r[30] + 0x00000084u;
|
|
/* 0291D2F0 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[12]);
|
|
/* 0291D2F4 */ _t36 = cpu->r[30] + 0x00000070u;
|
|
/* 0291D2F4 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[4]);
|
|
/* 0291D2F8 */ _t37 = cpu->r[30] + 0x00000038u;
|
|
/* 0291D2F8 */ rbrew_write_f32(cpu->mem, _t37, cpu->f[12]);
|
|
/* 0291D2FC */ _t38 = cpu->r[30] + 0x00000078u;
|
|
/* 0291D2FC */ rbrew_write_f32(cpu->mem, _t38, cpu->f[12]);
|
|
/* 0291D300 */ _t39 = cpu->r[30] + 0x0000005Cu;
|
|
/* 0291D300 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[0]);
|
|
/* 0291D304 */ _t40 = cpu->r[30] + 0x00000080u;
|
|
/* 0291D304 */ rbrew_write_f32(cpu->mem, _t40, cpu->f[4]);
|
|
/* 0291D308 */ _t41 = cpu->r[30] + 0x00000018u;
|
|
/* 0291D308 */ rbrew_write_f32(cpu->mem, _t41, cpu->f[0]);
|
|
/* 0291D30C */ cpu->r[9] = 0x10140000u;
|
|
/* 0291D310 */ _t42 = cpu->r[30] + 0x00000030u;
|
|
/* 0291D310 */ rbrew_write_f32(cpu->mem, _t42, cpu->f[12]);
|
|
/* 0291D314 */ cpu->f[1] = cpu->f[4];
|
|
/* 0291D318 */ _t43 = cpu->r[9] + 0x0000242Cu;
|
|
/* 0291D318 */ cpu->f[3] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 0291D31C */ _t44 = cpu->r[30] + 0x00000064u;
|
|
/* 0291D31C */ rbrew_write_f32(cpu->mem, _t44, cpu->f[12]);
|
|
/* 0291D320 */ cpu->r[3] = cpu->r[3] + 0x00007360u;
|
|
/* 0291D324 */ _t45 = cpu->r[30] + 0x00000088u;
|
|
/* 0291D324 */ rbrew_write_f32(cpu->mem, _t45, cpu->f[4]);
|
|
/* 0291D328 */ Gambit_fn_0281C3E4(cpu);
|
|
/* 0291D32C */ cpu->r[3] = 0x101D0000u;
|
|
/* 0291D330 */ cpu->r[3] = cpu->r[3] + 0xFFFFA434u;
|
|
/* 0291D334 */ Gambit_fn_02C83090(cpu);
|
|
/* 0291D338 */ cpu->r[11] = 0x10140000u;
|
|
/* 0291D33C */ _t46 = cpu->r[11] + 0x00002430u;
|
|
/* 0291D33C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 0291D340 */ cpu->f[2] = cpu->f[1];
|
|
/* 0291D344 */ cpu->f[3] = cpu->f[1];
|
|
/* 0291D348 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0291D34C */ Gambit_fn_02C698D0(cpu);
|
|
/* 0291D350 */ cpu->r[0] = 0x00000003u;
|
|
/* 0291D354 */ cpu->r[9] = cpu->r[1] + 0x00000004u;
|
|
/* 0291D358 */ cpu->r[11] = 0x101F0000u;
|
|
/* 0291D35C */ cpu->ctr = cpu->r[0];
|
|
/* 0291D360 */ cpu->r[11] = cpu->r[11] + 0x0000729Cu;
|
|
L_0291D364: ; // 0x291d364
|
|
/* 0291D364 */ _t47 = cpu->r[9] + 0x00000004u;
|
|
/* 0291D364 */ cpu->r[8] = rbrew_read32(cpu->mem, _t47);
|
|
/* 0291D368 */ _t48 = cpu->r[11] + 0x00000004u;
|
|
/* 0291D368 */ rbrew_write32(cpu->mem, _t48, cpu->r[8]);
|
|
/* 0291D36C */ _t49 = cpu->r[9] + 0x00000008u;
|
|
/* 0291D36C */ cpu->r[10] = rbrew_read32(cpu->mem, _t49);
|
|
/* 0291D370 */ _t50 = cpu->r[11] + 0x00000008u;
|
|
/* 0291D370 */ rbrew_write32(cpu->mem, _t50, cpu->r[10]);
|
|
/* 0291D374 */ _t51 = cpu->r[9] + 0x0000000Cu;
|
|
/* 0291D374 */ cpu->r[12] = rbrew_read32(cpu->mem, _t51);
|
|
/* 0291D378 */ _t52 = cpu->r[11] + 0x0000000Cu;
|
|
/* 0291D378 */ rbrew_write32(cpu->mem, _t52, cpu->r[12]);
|
|
/* 0291D37C */ _t53 = cpu->r[9] + 0x00000010u;
|
|
/* 0291D37C */ cpu->r[5] = rbrew_read32(cpu->mem, _t53);
|
|
/* 0291D37C */ cpu->r[9] = _t53;
|
|
/* 0291D380 */ _t54 = cpu->r[11] + 0x00000010u;
|
|
/* 0291D380 */ rbrew_write32(cpu->mem, _t54, cpu->r[5]);
|
|
/* 0291D380 */ cpu->r[11] = _t54;
|
|
/* 0291D384 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0291D384 */ _t55 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0291D384 */ _t56 = _t55 >> (0x00000002u & 31u);
|
|
/* 0291D384 */ _t57 = _t56 & 0x00000001u;
|
|
/* 0291D384 */ if (_t57) goto L_0291D364; else goto L_0291D388;
|
|
L_0291D388: ; // 0x291d388
|
|
/* 0291D388 */ cpu->r[31] = 0x101F0000u;
|
|
/* 0291D38C */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 0291D390 */ cpu->r[5] = cpu->r[30];
|
|
/* 0291D394 */ cpu->r[4] = cpu->r[31] + 0x00006338u;
|
|
/* 0291D398 */ cpu->r[6] = cpu->r[30] + 0x0000000Cu;
|
|
/* 0291D39C */ Gambit_fn_0281AC4C(cpu);
|
|
/* 0291D3A0 */ _t58 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0291D3A0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t58);
|
|
/* 0291D3A4 */ _t59 = cpu->r[8] + 0x00000024u;
|
|
/* 0291D3A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t59);
|
|
/* 0291D3A8 */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 0291D3AC */ cpu->ctr = cpu->r[0];
|
|
/* 0291D3B0 */ cpu->r[4] = cpu->r[3];
|
|
/* 0291D3B4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291D3B8 */ /* nop */
|
|
/* 0291D3BC */ /* nop */
|
|
/* 0291D3C0 */ /* nop */
|
|
/* 0291D3C4 */ _t60 = cpu->r[1] + 0x00000034u;
|
|
/* 0291D3C4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t60);
|
|
/* 0291D3C8 */ /* nop */
|
|
/* 0291D3CC */ _t61 = cpu->r[1] + 0x00000010u;
|
|
/* 0291D3CC */ rbrew_write_f32(cpu->mem, _t61, cpu->f[12]);
|
|
/* 0291D3D0 */ _t62 = cpu->r[1] + 0x00000044u;
|
|
/* 0291D3D0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 0291D3D4 */ /* nop */
|
|
/* 0291D3D8 */ _t63 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0291D3D8 */ rbrew_write_f32(cpu->mem, _t63, cpu->f[13]);
|
|
/* 0291D3DC */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 0291D3E0 */ _t64 = cpu->r[1] + 0x00000054u;
|
|
/* 0291D3E0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 0291D3E4 */ /* nop */
|
|
/* 0291D3E8 */ cpu->r[4] = 0x00000002u;
|
|
/* 0291D3EC */ _t65 = cpu->r[1] + 0x00000028u;
|
|
/* 0291D3EC */ rbrew_write_f32(cpu->mem, _t65, cpu->f[0]);
|
|
/* 0291D3F0 */ Gambit_fn_0281ADA0(cpu);
|
|
/* 0291D3F4 */ cpu->r[29] = 0x101F0000u;
|
|
/* 0291D3F8 */ cpu->r[10] = 0x00000003u;
|
|
/* 0291D3FC */ cpu->r[8] = cpu->r[1] + 0x00000004u;
|
|
/* 0291D400 */ cpu->r[29] = cpu->r[29] + 0x00007418u;
|
|
/* 0291D404 */ cpu->ctr = cpu->r[10];
|
|
/* 0291D408 */ cpu->r[9] = cpu->r[29] + 0xFFFFFFFCu;
|
|
L_0291D40C: ; // 0x291d40c
|
|
/* 0291D40C */ _t66 = cpu->r[8] + 0x00000004u;
|
|
/* 0291D40C */ cpu->r[11] = rbrew_read32(cpu->mem, _t66);
|
|
/* 0291D410 */ _t67 = cpu->r[9] + 0x00000004u;
|
|
/* 0291D410 */ rbrew_write32(cpu->mem, _t67, cpu->r[11]);
|
|
/* 0291D414 */ _t68 = cpu->r[8] + 0x00000008u;
|
|
/* 0291D414 */ cpu->r[12] = rbrew_read32(cpu->mem, _t68);
|
|
/* 0291D418 */ _t69 = cpu->r[9] + 0x00000008u;
|
|
/* 0291D418 */ rbrew_write32(cpu->mem, _t69, cpu->r[12]);
|
|
/* 0291D41C */ _t70 = cpu->r[8] + 0x0000000Cu;
|
|
/* 0291D41C */ cpu->r[0] = rbrew_read32(cpu->mem, _t70);
|
|
/* 0291D41C */ cpu->r[8] = _t70;
|
|
/* 0291D420 */ _t71 = cpu->r[9] + 0x0000000Cu;
|
|
/* 0291D420 */ rbrew_write32(cpu->mem, _t71, cpu->r[0]);
|
|
/* 0291D420 */ cpu->r[9] = _t71;
|
|
/* 0291D424 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0291D424 */ _t72 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0291D424 */ _t73 = _t72 >> (0x00000002u & 31u);
|
|
/* 0291D424 */ _t74 = _t73 & 0x00000001u;
|
|
/* 0291D424 */ if (_t74) goto L_0291D40C; else goto L_0291D428;
|
|
L_0291D428: ; // 0x291d428
|
|
/* 0291D428 */ cpu->r[4] = cpu->r[31] + 0x00006338u;
|
|
/* 0291D42C */ cpu->r[5] = cpu->r[30] + 0x00000018u;
|
|
/* 0291D430 */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 0291D434 */ cpu->r[6] = cpu->r[30] + 0x00000024u;
|
|
/* 0291D438 */ Gambit_fn_0281AC4C(cpu);
|
|
/* 0291D43C */ _t75 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0291D43C */ cpu->r[5] = rbrew_read32(cpu->mem, _t75);
|
|
/* 0291D440 */ _t76 = cpu->r[5] + 0x00000024u;
|
|
/* 0291D440 */ cpu->r[0] = rbrew_read32(cpu->mem, _t76);
|
|
/* 0291D444 */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 0291D448 */ cpu->ctr = cpu->r[0];
|
|
/* 0291D44C */ cpu->r[4] = cpu->r[3];
|
|
/* 0291D450 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291D454 */ /* nop */
|
|
/* 0291D458 */ /* nop */
|
|
/* 0291D45C */ /* nop */
|
|
/* 0291D460 */ /* nop */
|
|
/* 0291D464 */ /* nop */
|
|
/* 0291D468 */ /* nop */
|
|
/* 0291D46C */ _t77 = cpu->r[1] + 0x00000054u;
|
|
/* 0291D46C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t77);
|
|
/* 0291D470 */ _t78 = cpu->r[1] + 0x00000034u;
|
|
/* 0291D470 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t78);
|
|
/* 0291D474 */ _t79 = cpu->r[1] + 0x00000044u;
|
|
/* 0291D474 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t79);
|
|
/* 0291D478 */ _t80 = cpu->r[1] + 0x00000010u;
|
|
/* 0291D478 */ rbrew_write_f32(cpu->mem, _t80, cpu->f[0]);
|
|
/* 0291D47C */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 0291D480 */ _t81 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0291D480 */ rbrew_write_f32(cpu->mem, _t81, cpu->f[10]);
|
|
/* 0291D484 */ cpu->r[4] = 0x00000002u;
|
|
/* 0291D488 */ _t82 = cpu->r[1] + 0x00000028u;
|
|
/* 0291D488 */ rbrew_write_f32(cpu->mem, _t82, cpu->f[11]);
|
|
/* 0291D48C */ Gambit_fn_0281ADA0(cpu);
|
|
/* 0291D490 */ cpu->r[7] = 0x00000003u;
|
|
/* 0291D494 */ cpu->r[5] = cpu->r[1] + 0x00000004u;
|
|
/* 0291D498 */ cpu->ctr = cpu->r[7];
|
|
/* 0291D49C */ cpu->r[6] = cpu->r[29] + 0x00000020u;
|
|
L_0291D4A0: ; // 0x291d4a0
|
|
/* 0291D4A0 */ _t83 = cpu->r[5] + 0x00000004u;
|
|
/* 0291D4A0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t83);
|
|
/* 0291D4A4 */ _t84 = cpu->r[6] + 0x00000004u;
|
|
/* 0291D4A4 */ rbrew_write32(cpu->mem, _t84, cpu->r[8]);
|
|
/* 0291D4A8 */ _t85 = cpu->r[5] + 0x00000008u;
|
|
/* 0291D4A8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t85);
|
|
/* 0291D4AC */ _t86 = cpu->r[6] + 0x00000008u;
|
|
/* 0291D4AC */ rbrew_write32(cpu->mem, _t86, cpu->r[9]);
|
|
/* 0291D4B0 */ _t87 = cpu->r[5] + 0x0000000Cu;
|
|
/* 0291D4B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t87);
|
|
/* 0291D4B0 */ cpu->r[5] = _t87;
|
|
/* 0291D4B4 */ _t88 = cpu->r[6] + 0x0000000Cu;
|
|
/* 0291D4B4 */ rbrew_write32(cpu->mem, _t88, cpu->r[0]);
|
|
/* 0291D4B4 */ cpu->r[6] = _t88;
|
|
/* 0291D4B8 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0291D4B8 */ _t89 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0291D4B8 */ _t90 = _t89 >> (0x00000002u & 31u);
|
|
/* 0291D4B8 */ _t91 = _t90 & 0x00000001u;
|
|
/* 0291D4B8 */ if (_t91) goto L_0291D4A0; else goto L_0291D4BC;
|
|
L_0291D4BC: ; // 0x291d4bc
|
|
/* 0291D4BC */ cpu->r[4] = cpu->r[31] + 0x00006338u;
|
|
/* 0291D4C0 */ cpu->r[5] = cpu->r[30] + 0x00000030u;
|
|
/* 0291D4C4 */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 0291D4C8 */ cpu->r[6] = cpu->r[30] + 0x0000003Cu;
|
|
/* 0291D4CC */ Gambit_fn_0281AC4C(cpu);
|
|
/* 0291D4D0 */ _t92 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0291D4D0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t92);
|
|
/* 0291D4D4 */ _t93 = cpu->r[12] + 0x00000024u;
|
|
/* 0291D4D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t93);
|
|
/* 0291D4D8 */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 0291D4DC */ cpu->ctr = cpu->r[0];
|
|
/* 0291D4E0 */ cpu->r[4] = cpu->r[3];
|
|
/* 0291D4E4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291D4E8 */ /* nop */
|
|
/* 0291D4EC */ /* nop */
|
|
/* 0291D4F0 */ /* nop */
|
|
/* 0291D4F4 */ /* nop */
|
|
/* 0291D4F8 */ /* nop */
|
|
/* 0291D4FC */ /* nop */
|
|
/* 0291D500 */ _t94 = cpu->r[1] + 0x00000054u;
|
|
/* 0291D500 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t94);
|
|
/* 0291D504 */ _t95 = cpu->r[1] + 0x00000034u;
|
|
/* 0291D504 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t95);
|
|
/* 0291D508 */ _t96 = cpu->r[1] + 0x00000044u;
|
|
/* 0291D508 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t96);
|
|
/* 0291D50C */ _t97 = cpu->r[1] + 0x00000010u;
|
|
/* 0291D50C */ rbrew_write_f32(cpu->mem, _t97, cpu->f[10]);
|
|
/* 0291D510 */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 0291D514 */ _t98 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0291D514 */ rbrew_write_f32(cpu->mem, _t98, cpu->f[11]);
|
|
/* 0291D518 */ cpu->r[4] = 0x00000002u;
|
|
/* 0291D51C */ _t99 = cpu->r[1] + 0x00000028u;
|
|
/* 0291D51C */ rbrew_write_f32(cpu->mem, _t99, cpu->f[12]);
|
|
/* 0291D520 */ Gambit_fn_0281ADA0(cpu);
|
|
/* 0291D524 */ cpu->r[11] = 0x00000003u;
|
|
/* 0291D528 */ cpu->r[9] = cpu->r[1] + 0x00000004u;
|
|
/* 0291D52C */ cpu->ctr = cpu->r[11];
|
|
/* 0291D530 */ cpu->r[10] = cpu->r[29] + 0x00000044u;
|
|
L_0291D534: ; // 0x291d534
|
|
/* 0291D534 */ _t100 = cpu->r[9] + 0x00000004u;
|
|
/* 0291D534 */ cpu->r[12] = rbrew_read32(cpu->mem, _t100);
|
|
/* 0291D538 */ _t101 = cpu->r[10] + 0x00000004u;
|
|
/* 0291D538 */ rbrew_write32(cpu->mem, _t101, cpu->r[12]);
|
|
/* 0291D53C */ _t102 = cpu->r[9] + 0x00000008u;
|
|
/* 0291D53C */ cpu->r[0] = rbrew_read32(cpu->mem, _t102);
|
|
/* 0291D540 */ _t103 = cpu->r[10] + 0x00000008u;
|
|
/* 0291D540 */ rbrew_write32(cpu->mem, _t103, cpu->r[0]);
|
|
/* 0291D544 */ _t104 = cpu->r[9] + 0x0000000Cu;
|
|
/* 0291D544 */ cpu->r[5] = rbrew_read32(cpu->mem, _t104);
|
|
/* 0291D544 */ cpu->r[9] = _t104;
|
|
/* 0291D548 */ _t105 = cpu->r[10] + 0x0000000Cu;
|
|
/* 0291D548 */ rbrew_write32(cpu->mem, _t105, cpu->r[5]);
|
|
/* 0291D548 */ cpu->r[10] = _t105;
|
|
/* 0291D54C */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0291D54C */ _t106 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0291D54C */ _t107 = _t106 >> (0x00000002u & 31u);
|
|
/* 0291D54C */ _t108 = _t107 & 0x00000001u;
|
|
/* 0291D54C */ if (_t108) goto L_0291D534; else goto L_0291D550;
|
|
L_0291D550: ; // 0x291d550
|
|
/* 0291D550 */ cpu->r[4] = cpu->r[31] + 0x00006338u;
|
|
/* 0291D554 */ cpu->r[5] = cpu->r[30] + 0x00000048u;
|
|
/* 0291D558 */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 0291D55C */ cpu->r[6] = cpu->r[30] + 0x00000054u;
|
|
/* 0291D560 */ Gambit_fn_0281AC4C(cpu);
|
|
/* 0291D564 */ _t109 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0291D564 */ cpu->r[6] = rbrew_read32(cpu->mem, _t109);
|
|
/* 0291D568 */ _t110 = cpu->r[6] + 0x00000024u;
|
|
/* 0291D568 */ cpu->r[0] = rbrew_read32(cpu->mem, _t110);
|
|
/* 0291D56C */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 0291D570 */ cpu->ctr = cpu->r[0];
|
|
/* 0291D574 */ cpu->r[4] = cpu->r[3];
|
|
/* 0291D578 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291D57C */ /* nop */
|
|
/* 0291D580 */ /* nop */
|
|
/* 0291D584 */ /* nop */
|
|
/* 0291D588 */ /* nop */
|
|
/* 0291D58C */ _t111 = cpu->r[1] + 0x00000044u;
|
|
/* 0291D58C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t111);
|
|
/* 0291D590 */ _t112 = cpu->r[1] + 0x00000034u;
|
|
/* 0291D590 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t112);
|
|
/* 0291D594 */ _t113 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0291D594 */ rbrew_write_f32(cpu->mem, _t113, cpu->f[0]);
|
|
/* 0291D598 */ _t114 = cpu->r[1] + 0x00000010u;
|
|
/* 0291D598 */ rbrew_write_f32(cpu->mem, _t114, cpu->f[13]);
|
|
/* 0291D59C */ /* nop */
|
|
/* 0291D5A0 */ _t115 = cpu->r[1] + 0x00000054u;
|
|
/* 0291D5A0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t115);
|
|
/* 0291D5A4 */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 0291D5A8 */ /* nop */
|
|
/* 0291D5AC */ cpu->r[4] = 0x00000002u;
|
|
/* 0291D5B0 */ _t116 = cpu->r[1] + 0x00000028u;
|
|
/* 0291D5B0 */ rbrew_write_f32(cpu->mem, _t116, cpu->f[10]);
|
|
/* 0291D5B4 */ Gambit_fn_0281ADA0(cpu);
|
|
/* 0291D5B8 */ cpu->r[8] = 0x00000003u;
|
|
/* 0291D5BC */ cpu->r[6] = cpu->r[1] + 0x00000004u;
|
|
/* 0291D5C0 */ cpu->ctr = cpu->r[8];
|
|
/* 0291D5C4 */ cpu->r[7] = cpu->r[29] + 0x00000068u;
|
|
L_0291D5C8: ; // 0x291d5c8
|
|
/* 0291D5C8 */ _t117 = cpu->r[6] + 0x00000004u;
|
|
/* 0291D5C8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t117);
|
|
/* 0291D5CC */ _t118 = cpu->r[7] + 0x00000004u;
|
|
/* 0291D5CC */ rbrew_write32(cpu->mem, _t118, cpu->r[9]);
|
|
/* 0291D5D0 */ _t119 = cpu->r[6] + 0x00000008u;
|
|
/* 0291D5D0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t119);
|
|
/* 0291D5D4 */ _t120 = cpu->r[7] + 0x00000008u;
|
|
/* 0291D5D4 */ rbrew_write32(cpu->mem, _t120, cpu->r[10]);
|
|
/* 0291D5D8 */ _t121 = cpu->r[6] + 0x0000000Cu;
|
|
/* 0291D5D8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t121);
|
|
/* 0291D5D8 */ cpu->r[6] = _t121;
|
|
/* 0291D5DC */ _t122 = cpu->r[7] + 0x0000000Cu;
|
|
/* 0291D5DC */ rbrew_write32(cpu->mem, _t122, cpu->r[11]);
|
|
/* 0291D5DC */ cpu->r[7] = _t122;
|
|
/* 0291D5E0 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0291D5E0 */ _t123 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0291D5E0 */ _t124 = _t123 >> (0x00000002u & 31u);
|
|
/* 0291D5E0 */ _t125 = _t124 & 0x00000001u;
|
|
/* 0291D5E0 */ if (_t125) goto L_0291D5C8; else goto L_0291D5E4;
|
|
L_0291D5E4: ; // 0x291d5e4
|
|
/* 0291D5E4 */ cpu->r[4] = cpu->r[31] + 0x00006338u;
|
|
/* 0291D5E8 */ cpu->r[5] = cpu->r[30] + 0x00000060u;
|
|
/* 0291D5EC */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 0291D5F0 */ cpu->r[6] = cpu->r[30] + 0x0000006Cu;
|
|
/* 0291D5F4 */ Gambit_fn_0281AC4C(cpu);
|
|
/* 0291D5F8 */ _t126 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0291D5F8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t126);
|
|
/* 0291D5FC */ _t127 = cpu->r[12] + 0x00000024u;
|
|
/* 0291D5FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t127);
|
|
/* 0291D600 */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 0291D604 */ cpu->ctr = cpu->r[0];
|
|
/* 0291D608 */ cpu->r[4] = cpu->r[3];
|
|
/* 0291D60C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291D610 */ /* nop */
|
|
/* 0291D614 */ /* nop */
|
|
/* 0291D618 */ /* nop */
|
|
/* 0291D61C */ /* nop */
|
|
/* 0291D620 */ /* nop */
|
|
/* 0291D624 */ /* nop */
|
|
/* 0291D628 */ _t128 = cpu->r[1] + 0x00000054u;
|
|
/* 0291D628 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t128);
|
|
/* 0291D62C */ _t129 = cpu->r[1] + 0x00000034u;
|
|
/* 0291D62C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t129);
|
|
/* 0291D630 */ _t130 = cpu->r[1] + 0x00000044u;
|
|
/* 0291D630 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t130);
|
|
/* 0291D634 */ _t131 = cpu->r[1] + 0x00000010u;
|
|
/* 0291D634 */ rbrew_write_f32(cpu->mem, _t131, cpu->f[0]);
|
|
/* 0291D638 */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 0291D63C */ _t132 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0291D63C */ rbrew_write_f32(cpu->mem, _t132, cpu->f[11]);
|
|
/* 0291D640 */ cpu->r[4] = 0x00000002u;
|
|
/* 0291D644 */ _t133 = cpu->r[1] + 0x00000028u;
|
|
/* 0291D644 */ rbrew_write_f32(cpu->mem, _t133, cpu->f[12]);
|
|
/* 0291D648 */ Gambit_fn_0281ADA0(cpu);
|
|
/* 0291D64C */ cpu->r[5] = 0x00000003u;
|
|
/* 0291D650 */ cpu->r[11] = cpu->r[1] + 0x00000004u;
|
|
/* 0291D654 */ cpu->ctr = cpu->r[5];
|
|
/* 0291D658 */ cpu->r[12] = cpu->r[29] + 0x0000008Cu;
|
|
L_0291D65C: ; // 0x291d65c
|
|
/* 0291D65C */ _t134 = cpu->r[11] + 0x00000004u;
|
|
/* 0291D65C */ cpu->r[6] = rbrew_read32(cpu->mem, _t134);
|
|
/* 0291D660 */ _t135 = cpu->r[12] + 0x00000004u;
|
|
/* 0291D660 */ rbrew_write32(cpu->mem, _t135, cpu->r[6]);
|
|
/* 0291D664 */ _t136 = cpu->r[11] + 0x00000008u;
|
|
/* 0291D664 */ cpu->r[7] = rbrew_read32(cpu->mem, _t136);
|
|
/* 0291D668 */ _t137 = cpu->r[12] + 0x00000008u;
|
|
/* 0291D668 */ rbrew_write32(cpu->mem, _t137, cpu->r[7]);
|
|
/* 0291D66C */ _t138 = cpu->r[11] + 0x0000000Cu;
|
|
/* 0291D66C */ cpu->r[8] = rbrew_read32(cpu->mem, _t138);
|
|
/* 0291D66C */ cpu->r[11] = _t138;
|
|
/* 0291D670 */ _t139 = cpu->r[12] + 0x0000000Cu;
|
|
/* 0291D670 */ rbrew_write32(cpu->mem, _t139, cpu->r[8]);
|
|
/* 0291D670 */ cpu->r[12] = _t139;
|
|
/* 0291D674 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0291D674 */ _t140 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0291D674 */ _t141 = _t140 >> (0x00000002u & 31u);
|
|
/* 0291D674 */ _t142 = _t141 & 0x00000001u;
|
|
/* 0291D674 */ if (_t142) goto L_0291D65C; else goto L_0291D678;
|
|
L_0291D678: ; // 0x291d678
|
|
/* 0291D678 */ cpu->r[4] = cpu->r[31] + 0x00006338u;
|
|
/* 0291D67C */ cpu->r[5] = cpu->r[30] + 0x00000078u;
|
|
/* 0291D680 */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 0291D684 */ cpu->r[6] = cpu->r[30] + 0x00000084u;
|
|
/* 0291D688 */ Gambit_fn_0281AC4C(cpu);
|
|
/* 0291D68C */ _t143 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0291D68C */ cpu->r[9] = rbrew_read32(cpu->mem, _t143);
|
|
/* 0291D690 */ _t144 = cpu->r[9] + 0x00000024u;
|
|
/* 0291D690 */ cpu->r[0] = rbrew_read32(cpu->mem, _t144);
|
|
/* 0291D694 */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 0291D698 */ cpu->ctr = cpu->r[0];
|
|
/* 0291D69C */ cpu->r[4] = cpu->r[3];
|
|
/* 0291D6A0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291D6A4 */ /* nop */
|
|
/* 0291D6A8 */ /* nop */
|
|
/* 0291D6AC */ /* nop */
|
|
/* 0291D6B0 */ /* nop */
|
|
/* 0291D6B4 */ /* nop */
|
|
/* 0291D6B8 */ /* nop */
|
|
/* 0291D6BC */ _t145 = cpu->r[1] + 0x00000054u;
|
|
/* 0291D6BC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t145);
|
|
/* 0291D6C0 */ _t146 = cpu->r[1] + 0x00000034u;
|
|
/* 0291D6C0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t146);
|
|
/* 0291D6C4 */ _t147 = cpu->r[1] + 0x00000044u;
|
|
/* 0291D6C4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t147);
|
|
/* 0291D6C8 */ _t148 = cpu->r[1] + 0x00000010u;
|
|
/* 0291D6C8 */ rbrew_write_f32(cpu->mem, _t148, cpu->f[10]);
|
|
/* 0291D6CC */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 0291D6D0 */ _t149 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0291D6D0 */ rbrew_write_f32(cpu->mem, _t149, cpu->f[12]);
|
|
/* 0291D6D4 */ cpu->r[4] = 0x00000002u;
|
|
/* 0291D6D8 */ _t150 = cpu->r[1] + 0x00000028u;
|
|
/* 0291D6D8 */ rbrew_write_f32(cpu->mem, _t150, cpu->f[13]);
|
|
/* 0291D6DC */ Gambit_fn_0281ADA0(cpu);
|
|
/* 0291D6E0 */ cpu->r[11] = 0x00000003u;
|
|
/* 0291D6E4 */ cpu->r[5] = cpu->r[1] + 0x00000004u;
|
|
/* 0291D6E8 */ cpu->ctr = cpu->r[11];
|
|
/* 0291D6EC */ cpu->r[9] = cpu->r[29] + 0x000000B0u;
|
|
L_0291D6F0: ; // 0x291d6f0
|
|
/* 0291D6F0 */ _t151 = cpu->r[5] + 0x00000004u;
|
|
/* 0291D6F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t151);
|
|
/* 0291D6F4 */ _t152 = cpu->r[9] + 0x00000004u;
|
|
/* 0291D6F4 */ rbrew_write32(cpu->mem, _t152, cpu->r[0]);
|
|
/* 0291D6F8 */ _t153 = cpu->r[5] + 0x00000008u;
|
|
/* 0291D6F8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t153);
|
|
/* 0291D6FC */ _t154 = cpu->r[9] + 0x00000008u;
|
|
/* 0291D6FC */ rbrew_write32(cpu->mem, _t154, cpu->r[6]);
|
|
/* 0291D700 */ _t155 = cpu->r[5] + 0x0000000Cu;
|
|
/* 0291D700 */ cpu->r[7] = rbrew_read32(cpu->mem, _t155);
|
|
/* 0291D700 */ cpu->r[5] = _t155;
|
|
/* 0291D704 */ _t156 = cpu->r[9] + 0x0000000Cu;
|
|
/* 0291D704 */ rbrew_write32(cpu->mem, _t156, cpu->r[7]);
|
|
/* 0291D704 */ cpu->r[9] = _t156;
|
|
/* 0291D708 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0291D708 */ _t157 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0291D708 */ _t158 = _t157 >> (0x00000002u & 31u);
|
|
/* 0291D708 */ _t159 = _t158 & 0x00000001u;
|
|
/* 0291D708 */ if (_t159) goto L_0291D6F0; else goto L_0291D70C;
|
|
L_0291D70C: ; // 0x291d70c
|
|
/* 0291D70C */ _t160 = cpu->r[1] + 0x00000084u;
|
|
/* 0291D70C */ cpu->r[29] = rbrew_read32(cpu->mem, _t160);
|
|
/* 0291D710 */ _t161 = cpu->r[1] + 0x00000094u;
|
|
/* 0291D710 */ cpu->r[0] = rbrew_read32(cpu->mem, _t161);
|
|
/* 0291D714 */ _t162 = cpu->r[1] + 0x00000088u;
|
|
/* 0291D714 */ cpu->r[30] = rbrew_read32(cpu->mem, _t162);
|
|
/* 0291D718 */ cpu->lr = cpu->r[0];
|
|
/* 0291D71C */ _t163 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0291D71C */ cpu->r[31] = rbrew_read32(cpu->mem, _t163);
|
|
/* 0291D720 */ cpu->r[1] = cpu->r[1] + 0x00000090u;
|
|
/* 0291D724 */ return;
|
|
}
|
|
|
|
// fn_0291D728 @ 0x291d728
|
|
void Gambit_fn_0291D728(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_0291D728: ; // 0x291d728
|
|
/* 0291D728 */ cpu->r[0] = cpu->lr;
|
|
/* 0291D72C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0291D72C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291D72C */ cpu->r[1] = _t0;
|
|
/* 0291D730 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291D730 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0291D734 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0291D734 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0291D738 */ cpu->r[30] = cpu->r[3];
|
|
/* 0291D738 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0291D73C */ cpu->r[31] = cpu->r[4];
|
|
/* 0291D740 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0291D740 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0291D744 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291D744 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0291D744 */ if (_t5) goto L_0291D784; else goto L_0291D748;
|
|
L_0291D748: ; // 0x291d748
|
|
/* 0291D748 */ cpu->r[0] = 0x10140000u;
|
|
/* 0291D74C */ cpu->r[12] = 0x10140000u;
|
|
/* 0291D750 */ cpu->r[0] = cpu->r[0] + 0x0000191Cu;
|
|
/* 0291D754 */ cpu->r[12] = cpu->r[12] + 0x0000192Cu;
|
|
/* 0291D758 */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0291D758 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0291D75C */ cpu->r[3] = cpu->r[30];
|
|
/* 0291D760 */ _t7 = cpu->r[30] + 0x00000010u;
|
|
/* 0291D760 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 0291D764 */ Gambit_fn_02941EAC(cpu);
|
|
/* 0291D768 */ cpu->r[3] = cpu->r[30];
|
|
/* 0291D76C */ cpu->r[4] = 0x00000000u;
|
|
/* 0291D770 */ Gambit_fn_02821E68(cpu);
|
|
/* 0291D774 */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0291D774 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0291D778 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291D778 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0291D778 */ if (_t9) goto L_0291D784; else goto L_0291D77C;
|
|
L_0291D77C: ; // 0x291d77c
|
|
/* 0291D77C */ cpu->r[3] = cpu->r[30];
|
|
/* 0291D780 */ Gambit_fn_02801BB0(cpu);
|
|
L_0291D784: ; // 0x291d784
|
|
/* 0291D784 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0291D784 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0291D788 */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 0291D788 */ cpu->r[30] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0291D78C */ cpu->lr = cpu->r[0];
|
|
/* 0291D790 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291D790 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0291D794 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0291D798 */ return;
|
|
}
|
|
|
|
// fn_0291D72C @ 0x291d72c
|
|
void Gambit_fn_0291D72C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_0291D72C: ; // 0x291d72c
|
|
/* 0291D72C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0291D72C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291D72C */ cpu->r[1] = _t0;
|
|
/* 0291D730 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291D730 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0291D734 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0291D734 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0291D738 */ cpu->r[30] = cpu->r[3];
|
|
/* 0291D738 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0291D73C */ cpu->r[31] = cpu->r[4];
|
|
/* 0291D740 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0291D740 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0291D744 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291D744 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0291D744 */ if (_t5) goto L_0291D784; else goto L_0291D748;
|
|
L_0291D748: ; // 0x291d748
|
|
/* 0291D748 */ cpu->r[0] = 0x10140000u;
|
|
/* 0291D74C */ cpu->r[12] = 0x10140000u;
|
|
/* 0291D750 */ cpu->r[0] = cpu->r[0] + 0x0000191Cu;
|
|
/* 0291D754 */ cpu->r[12] = cpu->r[12] + 0x0000192Cu;
|
|
/* 0291D758 */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0291D758 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0291D75C */ cpu->r[3] = cpu->r[30];
|
|
/* 0291D760 */ _t7 = cpu->r[30] + 0x00000010u;
|
|
/* 0291D760 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 0291D764 */ Gambit_fn_02941EAC(cpu);
|
|
/* 0291D768 */ cpu->r[3] = cpu->r[30];
|
|
/* 0291D76C */ cpu->r[4] = 0x00000000u;
|
|
/* 0291D770 */ Gambit_fn_02821E68(cpu);
|
|
/* 0291D774 */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0291D774 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0291D778 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291D778 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0291D778 */ if (_t9) goto L_0291D784; else goto L_0291D77C;
|
|
L_0291D77C: ; // 0x291d77c
|
|
/* 0291D77C */ cpu->r[3] = cpu->r[30];
|
|
/* 0291D780 */ Gambit_fn_02801BB0(cpu);
|
|
L_0291D784: ; // 0x291d784
|
|
/* 0291D784 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0291D784 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0291D788 */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 0291D788 */ cpu->r[30] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0291D78C */ cpu->lr = cpu->r[0];
|
|
/* 0291D790 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291D790 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0291D794 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0291D798 */ return;
|
|
}
|
|
|
|
// fn_0291D79C @ 0x291d79c
|
|
void Gambit_fn_0291D79C(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_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t0;
|
|
/* 02801B38 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02801B48 */ _t3 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02801B50 */ if (_t5) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02801B60 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 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 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B74 */ if (_t9) 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 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02801B84 */ if (_t11) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t12 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02801B8C */ _t13 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02801BA0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
L_0291D79C: ; // 0x291d79c
|
|
/* 0291D79C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291D7A0 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291D7A0 */ _t17 = _t16 & 0x00000001u;
|
|
/* 0291D7A0 */ if (_t17) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0291D7A0 */ goto L_0291D7A4;
|
|
L_0291D7A4: ; // 0x291d7a4
|
|
/* 0291D7A4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0291D7A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0291D7A8 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291D7A8 */ _t19 = _t18 & 0x00000001u;
|
|
/* 0291D7A8 */ if (_t19) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0291D7A8 */ goto L_0291D7AC;
|
|
L_0291D7AC: ; // 0x291d7ac
|
|
/* 0291D7AC */ goto L_02801BB0;
|
|
}
|
|
|
|
// fn_0291D7B0 @ 0x291d7b0
|
|
void Gambit_fn_0291D7B0(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_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t0;
|
|
/* 02801B38 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02801B48 */ _t3 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02801B50 */ if (_t5) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02801B60 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 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 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B74 */ if (_t9) 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 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02801B84 */ if (_t11) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t12 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02801B8C */ _t13 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02801BA0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
L_0291D7B0: ; // 0x291d7b0
|
|
/* 0291D7B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291D7B4 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291D7B4 */ _t17 = _t16 & 0x00000001u;
|
|
/* 0291D7B4 */ if (_t17) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0291D7B4 */ goto L_0291D7B8;
|
|
L_0291D7B8: ; // 0x291d7b8
|
|
/* 0291D7B8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0291D7B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0291D7BC */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291D7BC */ _t19 = _t18 & 0x00000001u;
|
|
/* 0291D7BC */ if (_t19) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0291D7BC */ goto L_0291D7C0;
|
|
L_0291D7C0: ; // 0x291d7c0
|
|
/* 0291D7C0 */ goto L_02801BB0;
|
|
}
|
|
|
|
// fn_0291D7C4 @ 0x291d7c4
|
|
void Gambit_fn_0291D7C4(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_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t0;
|
|
/* 02801B38 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02801B48 */ _t3 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02801B50 */ if (_t5) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02801B60 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 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 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B74 */ if (_t9) 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 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02801B84 */ if (_t11) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t12 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02801B8C */ _t13 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02801BA0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
L_0291D7C4: ; // 0x291d7c4
|
|
/* 0291D7C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291D7C8 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291D7C8 */ _t17 = _t16 & 0x00000001u;
|
|
/* 0291D7C8 */ if (_t17) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0291D7C8 */ goto L_0291D7CC;
|
|
L_0291D7CC: ; // 0x291d7cc
|
|
/* 0291D7CC */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0291D7CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0291D7D0 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291D7D0 */ _t19 = _t18 & 0x00000001u;
|
|
/* 0291D7D0 */ if (_t19) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0291D7D0 */ goto L_0291D7D4;
|
|
L_0291D7D4: ; // 0x291d7d4
|
|
/* 0291D7D4 */ goto L_02801BB0;
|
|
}
|
|
|
|
// fn_0291D7D8 @ 0x291d7d8
|
|
void Gambit_fn_0291D7D8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_0291D7D8: ; // 0x291d7d8
|
|
/* 0291D7D8 */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 0291D7D8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0291D7DC */ _t1 = cpu->r[3] + 0x00000008u;
|
|
/* 0291D7DC */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0291D7E0 */ cpu->r[12] = cpu->r[11] + cpu->r[12];
|
|
/* 0291D7E4 */ cpu->r[11] = 0x10110000u;
|
|
/* 0291D7E8 */ _t2 = cpu->r[11] + 0x00007399u;
|
|
/* 0291D7E8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t2);
|
|
/* 0291D7EC */ _t3 = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 0291D7EC */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]);
|
|
/* 0291D7F0 */ return;
|
|
}
|
|
|
|
// fn_0291D7F4 @ 0x291d7f4
|
|
void Gambit_fn_0291D7F4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _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_0291D7F4: ; // 0x291d7f4
|
|
/* 0291D7F4 */ cpu->r[0] = cpu->lr;
|
|
/* 0291D7F8 */ _t0 = cpu->r[1] + 0xFFFFFF78u;
|
|
/* 0291D7F8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291D7F8 */ cpu->r[1] = _t0;
|
|
/* 0291D7FC */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 0291D7FC */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 0291D800 */ _t2 = cpu->r[1] + 0x00000084u;
|
|
/* 0291D800 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0291D804 */ _t3 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0291D804 */ rbrew_write32(cpu->mem, _t3, cpu->r[8]);
|
|
/* 0291D808 */ _t4 = cpu->r[1] + 0x00000020u;
|
|
/* 0291D808 */ rbrew_write32(cpu->mem, _t4, cpu->r[5]);
|
|
/* 0291D80C */ _t5 = cpu->r[1] + 0x00000018u;
|
|
/* 0291D80C */ rbrew_write32(cpu->mem, _t5, cpu->r[3]);
|
|
/* 0291D810 */ _t6 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0291D810 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0291D814 */ _t7 = cpu->r[1] + 0x00000078u;
|
|
/* 0291D814 */ rbrew_write32(cpu->mem, _t7, cpu->r[28]);
|
|
/* 0291D818 */ _t8 = cpu->r[1] + 0x00000080u;
|
|
/* 0291D818 */ rbrew_write32(cpu->mem, _t8, cpu->r[30]);
|
|
/* 0291D81C */ _t9 = cpu->r[1] + 0x00000024u;
|
|
/* 0291D81C */ rbrew_write32(cpu->mem, _t9, cpu->r[6]);
|
|
/* 0291D820 */ _t10 = cpu->r[1] + 0x00000030u;
|
|
/* 0291D820 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 0291D824 */ _t11 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0291D824 */ rbrew_write32(cpu->mem, _t11, cpu->r[29]);
|
|
/* 0291D828 */ _t12 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0291D828 */ rbrew_write32(cpu->mem, _t12, cpu->r[4]);
|
|
/* 0291D82C */ _t13 = cpu->r[1] + 0x00000028u;
|
|
/* 0291D82C */ rbrew_write32(cpu->mem, _t13, cpu->r[7]);
|
|
/* 0291D830 */ _t14 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 0291D830 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0291D830 */ if (_t15) goto L_0291D834; else goto L_0291D854;
|
|
L_0291D834: ; // 0x291d834
|
|
/* 0291D834 */ _t16 = cpu->r[1] + 0x00000048u;
|
|
/* 0291D834 */ rbrew_write_f64(cpu->mem, _t16, cpu->f[3]);
|
|
/* 0291D838 */ _t17 = cpu->r[1] + 0x00000068u;
|
|
/* 0291D838 */ rbrew_write_f64(cpu->mem, _t17, cpu->f[7]);
|
|
/* 0291D83C */ _t18 = cpu->r[1] + 0x00000060u;
|
|
/* 0291D83C */ rbrew_write_f64(cpu->mem, _t18, cpu->f[6]);
|
|
/* 0291D840 */ _t19 = cpu->r[1] + 0x00000040u;
|
|
/* 0291D840 */ rbrew_write_f64(cpu->mem, _t19, cpu->f[2]);
|
|
/* 0291D844 */ _t20 = cpu->r[1] + 0x00000050u;
|
|
/* 0291D844 */ rbrew_write_f64(cpu->mem, _t20, cpu->f[4]);
|
|
/* 0291D848 */ _t21 = cpu->r[1] + 0x00000070u;
|
|
/* 0291D848 */ rbrew_write_f64(cpu->mem, _t21, cpu->f[8]);
|
|
/* 0291D84C */ _t22 = cpu->r[1] + 0x00000058u;
|
|
/* 0291D84C */ rbrew_write_f64(cpu->mem, _t22, cpu->f[5]);
|
|
/* 0291D850 */ _t23 = cpu->r[1] + 0x00000038u;
|
|
/* 0291D850 */ rbrew_write_f64(cpu->mem, _t23, cpu->f[1]);
|
|
L_0291D854: ; // 0x291d854
|
|
/* 0291D854 */ cpu->r[31] = cpu->r[3];
|
|
/* 0291D854 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0291D858 */ cpu->r[30] = cpu->r[4];
|
|
/* 0291D85C */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291D85C */ _t25 = _t24 & 0x00000001u;
|
|
/* 0291D85C */ if (_t25) goto L_0291D860; else goto L_0291D870;
|
|
L_0291D860: ; // 0x291d860
|
|
/* 0291D860 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0291D864 */ Gambit_fn_02801A78(cpu);
|
|
/* 0291D868 */ cpu->r[31] = cpu->r[3];
|
|
/* 0291D868 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0291D86C */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291D86C */ _t27 = _t26 & 0x00000001u;
|
|
/* 0291D86C */ if (_t27) goto L_0291D934; else goto L_0291D870;
|
|
L_0291D870: ; // 0x291d870
|
|
/* 0291D870 */ cpu->r[29] = cpu->r[31];
|
|
/* 0291D870 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0291D874 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291D874 */ _t29 = _t28 & 0x00000001u;
|
|
/* 0291D874 */ if (_t29) goto L_0291D878; else goto L_0291D888;
|
|
L_0291D878: ; // 0x291d878
|
|
/* 0291D878 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0291D87C */ Gambit_fn_02801A78(cpu);
|
|
/* 0291D880 */ cpu->r[29] = cpu->r[3];
|
|
/* 0291D880 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0291D884 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291D884 */ _t31 = _t30 & 0x00000001u;
|
|
/* 0291D884 */ if (_t31) goto L_0291D8F8; else goto L_0291D888;
|
|
L_0291D888: ; // 0x291d888
|
|
/* 0291D888 */ cpu->r[3] = cpu->r[29];
|
|
/* 0291D888 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291D88C */ cpu->r[28] = 0x10110000u;
|
|
/* 0291D890 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291D890 */ _t33 = _t32 & 0x00000001u;
|
|
/* 0291D890 */ if (_t33) goto L_0291D894; else goto L_0291D8C0;
|
|
L_0291D894: ; // 0x291d894
|
|
/* 0291D894 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0291D898 */ Gambit_fn_02801A78(cpu);
|
|
/* 0291D89C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291D8A0 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291D8A0 */ _t35 = _t34 & 0x00000001u;
|
|
/* 0291D8A0 */ if (_t35) goto L_0291D8A4; else goto L_0291D8C0;
|
|
L_0291D8A4: ; // 0x291d8a4
|
|
/* 0291D8A4 */ cpu->r[7] = 0x10140000u;
|
|
/* 0291D8A8 */ _t36 = cpu->r[28] + 0x00007399u;
|
|
/* 0291D8A8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t36);
|
|
/* 0291D8AC */ cpu->r[7] = cpu->r[7] + 0x000018ECu;
|
|
/* 0291D8B0 */ _t37 = cpu->r[29] + 0x00000000u;
|
|
/* 0291D8B0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0291D8B4 */ _t38 = cpu->r[29] + 0x00000004u;
|
|
/* 0291D8B4 */ rbrew_write32(cpu->mem, _t38, cpu->r[7]);
|
|
/* 0291D8B8 */ _t39 = cpu->r[8] + 0x00000000u;
|
|
/* 0291D8B8 */ rbrew_write8(cpu->mem, _t39, (uint8_t)cpu->r[0]);
|
|
/* 0291D8BC */ goto L_0291D8F8;
|
|
L_0291D8C0: ; // 0x291d8c0
|
|
/* 0291D8C0 */ cpu->r[5] = 0x10140000u;
|
|
/* 0291D8C4 */ cpu->r[0] = cpu->r[29] + 0x0000000Cu;
|
|
/* 0291D8C8 */ cpu->r[5] = cpu->r[5] + 0x0000189Cu;
|
|
/* 0291D8CC */ _t40 = cpu->r[3] + 0x00000000u;
|
|
/* 0291D8CC */ rbrew_write32(cpu->mem, _t40, cpu->r[0]);
|
|
/* 0291D8D0 */ cpu->r[6] = 0x00000020u;
|
|
/* 0291D8D4 */ _t41 = cpu->r[3] + 0x00000004u;
|
|
/* 0291D8D4 */ rbrew_write32(cpu->mem, _t41, cpu->r[5]);
|
|
/* 0291D8D8 */ _t42 = cpu->r[3] + 0x00000008u;
|
|
/* 0291D8D8 */ rbrew_write32(cpu->mem, _t42, cpu->r[6]);
|
|
/* 0291D8DC */ _t43 = cpu->r[28] + 0x00007399u;
|
|
/* 0291D8DC */ cpu->r[0] = rbrew_read8(cpu->mem, _t43);
|
|
/* 0291D8E0 */ cpu->r[7] = 0x10140000u;
|
|
/* 0291D8E4 */ _t44 = cpu->r[29] + 0x00000000u;
|
|
/* 0291D8E4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t44);
|
|
/* 0291D8E8 */ cpu->r[7] = cpu->r[7] + 0x000018ECu;
|
|
/* 0291D8EC */ _t45 = cpu->r[29] + 0x0000002Bu;
|
|
/* 0291D8EC */ rbrew_write8(cpu->mem, _t45, (uint8_t)cpu->r[0]);
|
|
/* 0291D8F0 */ _t46 = cpu->r[29] + 0x00000004u;
|
|
/* 0291D8F0 */ rbrew_write32(cpu->mem, _t46, cpu->r[7]);
|
|
/* 0291D8F4 */ _t47 = cpu->r[8] + 0x00000000u;
|
|
/* 0291D8F4 */ rbrew_write8(cpu->mem, _t47, (uint8_t)cpu->r[0]);
|
|
L_0291D8F8: ; // 0x291d8f8
|
|
/* 0291D8F8 */ cpu->r[9] = 0x10140000u;
|
|
/* 0291D8FC */ cpu->r[12] = 0x00000002u;
|
|
/* 0291D900 */ cpu->r[9] = cpu->r[9] + 0x00001A4Cu;
|
|
/* 0291D904 */ cpu->r[0] = cpu->r[1] + 0x00000090u;
|
|
/* 0291D908 */ _t48 = cpu->r[31] + 0x00000004u;
|
|
/* 0291D908 */ rbrew_write32(cpu->mem, _t48, cpu->r[9]);
|
|
/* 0291D90C */ cpu->r[11] = cpu->r[1] + 0x00000018u;
|
|
/* 0291D910 */ _t49 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291D910 */ rbrew_write32(cpu->mem, _t49, cpu->r[0]);
|
|
/* 0291D914 */ cpu->r[0] = 0x00000000u;
|
|
/* 0291D918 */ _t50 = cpu->r[1] + 0x00000010u;
|
|
/* 0291D918 */ rbrew_write32(cpu->mem, _t50, cpu->r[11]);
|
|
/* 0291D91C */ cpu->r[3] = cpu->r[31];
|
|
/* 0291D920 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0291D924 */ _t51 = cpu->r[1] + 0x00000009u;
|
|
/* 0291D924 */ rbrew_write8(cpu->mem, _t51, (uint8_t)cpu->r[0]);
|
|
/* 0291D928 */ cpu->r[4] = cpu->r[30];
|
|
/* 0291D92C */ _t52 = cpu->r[1] + 0x00000008u;
|
|
/* 0291D92C */ rbrew_write8(cpu->mem, _t52, (uint8_t)cpu->r[12]);
|
|
/* 0291D930 */ Gambit_fn_0282A5DC(cpu);
|
|
L_0291D934: ; // 0x291d934
|
|
/* 0291D934 */ _t53 = cpu->r[1] + 0x00000078u;
|
|
/* 0291D934 */ cpu->r[28] = rbrew_read32(cpu->mem, _t53);
|
|
/* 0291D938 */ _t54 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0291D938 */ cpu->r[29] = rbrew_read32(cpu->mem, _t54);
|
|
/* 0291D93C */ _t55 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0291D93C */ cpu->r[0] = rbrew_read32(cpu->mem, _t55);
|
|
/* 0291D940 */ cpu->r[3] = cpu->r[31];
|
|
/* 0291D944 */ _t56 = cpu->r[1] + 0x00000080u;
|
|
/* 0291D944 */ cpu->r[30] = rbrew_read32(cpu->mem, _t56);
|
|
/* 0291D948 */ cpu->lr = cpu->r[0];
|
|
/* 0291D94C */ _t57 = cpu->r[1] + 0x00000084u;
|
|
/* 0291D94C */ cpu->r[31] = rbrew_read32(cpu->mem, _t57);
|
|
/* 0291D950 */ cpu->r[1] = cpu->r[1] + 0x00000088u;
|
|
/* 0291D954 */ return;
|
|
}
|
|
|
|
// fn_0291D7F8 @ 0x291d7f8
|
|
void Gambit_fn_0291D7F8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _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_0291D7F8: ; // 0x291d7f8
|
|
/* 0291D7F8 */ _t0 = cpu->r[1] + 0xFFFFFF78u;
|
|
/* 0291D7F8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291D7F8 */ cpu->r[1] = _t0;
|
|
/* 0291D7FC */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 0291D7FC */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 0291D800 */ _t2 = cpu->r[1] + 0x00000084u;
|
|
/* 0291D800 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0291D804 */ _t3 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0291D804 */ rbrew_write32(cpu->mem, _t3, cpu->r[8]);
|
|
/* 0291D808 */ _t4 = cpu->r[1] + 0x00000020u;
|
|
/* 0291D808 */ rbrew_write32(cpu->mem, _t4, cpu->r[5]);
|
|
/* 0291D80C */ _t5 = cpu->r[1] + 0x00000018u;
|
|
/* 0291D80C */ rbrew_write32(cpu->mem, _t5, cpu->r[3]);
|
|
/* 0291D810 */ _t6 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0291D810 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0291D814 */ _t7 = cpu->r[1] + 0x00000078u;
|
|
/* 0291D814 */ rbrew_write32(cpu->mem, _t7, cpu->r[28]);
|
|
/* 0291D818 */ _t8 = cpu->r[1] + 0x00000080u;
|
|
/* 0291D818 */ rbrew_write32(cpu->mem, _t8, cpu->r[30]);
|
|
/* 0291D81C */ _t9 = cpu->r[1] + 0x00000024u;
|
|
/* 0291D81C */ rbrew_write32(cpu->mem, _t9, cpu->r[6]);
|
|
/* 0291D820 */ _t10 = cpu->r[1] + 0x00000030u;
|
|
/* 0291D820 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 0291D824 */ _t11 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0291D824 */ rbrew_write32(cpu->mem, _t11, cpu->r[29]);
|
|
/* 0291D828 */ _t12 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0291D828 */ rbrew_write32(cpu->mem, _t12, cpu->r[4]);
|
|
/* 0291D82C */ _t13 = cpu->r[1] + 0x00000028u;
|
|
/* 0291D82C */ rbrew_write32(cpu->mem, _t13, cpu->r[7]);
|
|
/* 0291D830 */ _t14 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 0291D830 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0291D830 */ if (_t15) goto L_0291D834; else goto L_0291D854;
|
|
L_0291D834: ; // 0x291d834
|
|
/* 0291D834 */ _t16 = cpu->r[1] + 0x00000048u;
|
|
/* 0291D834 */ rbrew_write_f64(cpu->mem, _t16, cpu->f[3]);
|
|
/* 0291D838 */ _t17 = cpu->r[1] + 0x00000068u;
|
|
/* 0291D838 */ rbrew_write_f64(cpu->mem, _t17, cpu->f[7]);
|
|
/* 0291D83C */ _t18 = cpu->r[1] + 0x00000060u;
|
|
/* 0291D83C */ rbrew_write_f64(cpu->mem, _t18, cpu->f[6]);
|
|
/* 0291D840 */ _t19 = cpu->r[1] + 0x00000040u;
|
|
/* 0291D840 */ rbrew_write_f64(cpu->mem, _t19, cpu->f[2]);
|
|
/* 0291D844 */ _t20 = cpu->r[1] + 0x00000050u;
|
|
/* 0291D844 */ rbrew_write_f64(cpu->mem, _t20, cpu->f[4]);
|
|
/* 0291D848 */ _t21 = cpu->r[1] + 0x00000070u;
|
|
/* 0291D848 */ rbrew_write_f64(cpu->mem, _t21, cpu->f[8]);
|
|
/* 0291D84C */ _t22 = cpu->r[1] + 0x00000058u;
|
|
/* 0291D84C */ rbrew_write_f64(cpu->mem, _t22, cpu->f[5]);
|
|
/* 0291D850 */ _t23 = cpu->r[1] + 0x00000038u;
|
|
/* 0291D850 */ rbrew_write_f64(cpu->mem, _t23, cpu->f[1]);
|
|
L_0291D854: ; // 0x291d854
|
|
/* 0291D854 */ cpu->r[31] = cpu->r[3];
|
|
/* 0291D854 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0291D858 */ cpu->r[30] = cpu->r[4];
|
|
/* 0291D85C */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291D85C */ _t25 = _t24 & 0x00000001u;
|
|
/* 0291D85C */ if (_t25) goto L_0291D860; else goto L_0291D870;
|
|
L_0291D860: ; // 0x291d860
|
|
/* 0291D860 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0291D864 */ Gambit_fn_02801A78(cpu);
|
|
/* 0291D868 */ cpu->r[31] = cpu->r[3];
|
|
/* 0291D868 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0291D86C */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291D86C */ _t27 = _t26 & 0x00000001u;
|
|
/* 0291D86C */ if (_t27) goto L_0291D934; else goto L_0291D870;
|
|
L_0291D870: ; // 0x291d870
|
|
/* 0291D870 */ cpu->r[29] = cpu->r[31];
|
|
/* 0291D870 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0291D874 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291D874 */ _t29 = _t28 & 0x00000001u;
|
|
/* 0291D874 */ if (_t29) goto L_0291D878; else goto L_0291D888;
|
|
L_0291D878: ; // 0x291d878
|
|
/* 0291D878 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0291D87C */ Gambit_fn_02801A78(cpu);
|
|
/* 0291D880 */ cpu->r[29] = cpu->r[3];
|
|
/* 0291D880 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0291D884 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291D884 */ _t31 = _t30 & 0x00000001u;
|
|
/* 0291D884 */ if (_t31) goto L_0291D8F8; else goto L_0291D888;
|
|
L_0291D888: ; // 0x291d888
|
|
/* 0291D888 */ cpu->r[3] = cpu->r[29];
|
|
/* 0291D888 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291D88C */ cpu->r[28] = 0x10110000u;
|
|
/* 0291D890 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291D890 */ _t33 = _t32 & 0x00000001u;
|
|
/* 0291D890 */ if (_t33) goto L_0291D894; else goto L_0291D8C0;
|
|
L_0291D894: ; // 0x291d894
|
|
/* 0291D894 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0291D898 */ Gambit_fn_02801A78(cpu);
|
|
/* 0291D89C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291D8A0 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291D8A0 */ _t35 = _t34 & 0x00000001u;
|
|
/* 0291D8A0 */ if (_t35) goto L_0291D8A4; else goto L_0291D8C0;
|
|
L_0291D8A4: ; // 0x291d8a4
|
|
/* 0291D8A4 */ cpu->r[7] = 0x10140000u;
|
|
/* 0291D8A8 */ _t36 = cpu->r[28] + 0x00007399u;
|
|
/* 0291D8A8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t36);
|
|
/* 0291D8AC */ cpu->r[7] = cpu->r[7] + 0x000018ECu;
|
|
/* 0291D8B0 */ _t37 = cpu->r[29] + 0x00000000u;
|
|
/* 0291D8B0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0291D8B4 */ _t38 = cpu->r[29] + 0x00000004u;
|
|
/* 0291D8B4 */ rbrew_write32(cpu->mem, _t38, cpu->r[7]);
|
|
/* 0291D8B8 */ _t39 = cpu->r[8] + 0x00000000u;
|
|
/* 0291D8B8 */ rbrew_write8(cpu->mem, _t39, (uint8_t)cpu->r[0]);
|
|
/* 0291D8BC */ goto L_0291D8F8;
|
|
L_0291D8C0: ; // 0x291d8c0
|
|
/* 0291D8C0 */ cpu->r[5] = 0x10140000u;
|
|
/* 0291D8C4 */ cpu->r[0] = cpu->r[29] + 0x0000000Cu;
|
|
/* 0291D8C8 */ cpu->r[5] = cpu->r[5] + 0x0000189Cu;
|
|
/* 0291D8CC */ _t40 = cpu->r[3] + 0x00000000u;
|
|
/* 0291D8CC */ rbrew_write32(cpu->mem, _t40, cpu->r[0]);
|
|
/* 0291D8D0 */ cpu->r[6] = 0x00000020u;
|
|
/* 0291D8D4 */ _t41 = cpu->r[3] + 0x00000004u;
|
|
/* 0291D8D4 */ rbrew_write32(cpu->mem, _t41, cpu->r[5]);
|
|
/* 0291D8D8 */ _t42 = cpu->r[3] + 0x00000008u;
|
|
/* 0291D8D8 */ rbrew_write32(cpu->mem, _t42, cpu->r[6]);
|
|
/* 0291D8DC */ _t43 = cpu->r[28] + 0x00007399u;
|
|
/* 0291D8DC */ cpu->r[0] = rbrew_read8(cpu->mem, _t43);
|
|
/* 0291D8E0 */ cpu->r[7] = 0x10140000u;
|
|
/* 0291D8E4 */ _t44 = cpu->r[29] + 0x00000000u;
|
|
/* 0291D8E4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t44);
|
|
/* 0291D8E8 */ cpu->r[7] = cpu->r[7] + 0x000018ECu;
|
|
/* 0291D8EC */ _t45 = cpu->r[29] + 0x0000002Bu;
|
|
/* 0291D8EC */ rbrew_write8(cpu->mem, _t45, (uint8_t)cpu->r[0]);
|
|
/* 0291D8F0 */ _t46 = cpu->r[29] + 0x00000004u;
|
|
/* 0291D8F0 */ rbrew_write32(cpu->mem, _t46, cpu->r[7]);
|
|
/* 0291D8F4 */ _t47 = cpu->r[8] + 0x00000000u;
|
|
/* 0291D8F4 */ rbrew_write8(cpu->mem, _t47, (uint8_t)cpu->r[0]);
|
|
L_0291D8F8: ; // 0x291d8f8
|
|
/* 0291D8F8 */ cpu->r[9] = 0x10140000u;
|
|
/* 0291D8FC */ cpu->r[12] = 0x00000002u;
|
|
/* 0291D900 */ cpu->r[9] = cpu->r[9] + 0x00001A4Cu;
|
|
/* 0291D904 */ cpu->r[0] = cpu->r[1] + 0x00000090u;
|
|
/* 0291D908 */ _t48 = cpu->r[31] + 0x00000004u;
|
|
/* 0291D908 */ rbrew_write32(cpu->mem, _t48, cpu->r[9]);
|
|
/* 0291D90C */ cpu->r[11] = cpu->r[1] + 0x00000018u;
|
|
/* 0291D910 */ _t49 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291D910 */ rbrew_write32(cpu->mem, _t49, cpu->r[0]);
|
|
/* 0291D914 */ cpu->r[0] = 0x00000000u;
|
|
/* 0291D918 */ _t50 = cpu->r[1] + 0x00000010u;
|
|
/* 0291D918 */ rbrew_write32(cpu->mem, _t50, cpu->r[11]);
|
|
/* 0291D91C */ cpu->r[3] = cpu->r[31];
|
|
/* 0291D920 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0291D924 */ _t51 = cpu->r[1] + 0x00000009u;
|
|
/* 0291D924 */ rbrew_write8(cpu->mem, _t51, (uint8_t)cpu->r[0]);
|
|
/* 0291D928 */ cpu->r[4] = cpu->r[30];
|
|
/* 0291D92C */ _t52 = cpu->r[1] + 0x00000008u;
|
|
/* 0291D92C */ rbrew_write8(cpu->mem, _t52, (uint8_t)cpu->r[12]);
|
|
/* 0291D930 */ Gambit_fn_0282A5DC(cpu);
|
|
L_0291D934: ; // 0x291d934
|
|
/* 0291D934 */ _t53 = cpu->r[1] + 0x00000078u;
|
|
/* 0291D934 */ cpu->r[28] = rbrew_read32(cpu->mem, _t53);
|
|
/* 0291D938 */ _t54 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0291D938 */ cpu->r[29] = rbrew_read32(cpu->mem, _t54);
|
|
/* 0291D93C */ _t55 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0291D93C */ cpu->r[0] = rbrew_read32(cpu->mem, _t55);
|
|
/* 0291D940 */ cpu->r[3] = cpu->r[31];
|
|
/* 0291D944 */ _t56 = cpu->r[1] + 0x00000080u;
|
|
/* 0291D944 */ cpu->r[30] = rbrew_read32(cpu->mem, _t56);
|
|
/* 0291D948 */ cpu->lr = cpu->r[0];
|
|
/* 0291D94C */ _t57 = cpu->r[1] + 0x00000084u;
|
|
/* 0291D94C */ cpu->r[31] = rbrew_read32(cpu->mem, _t57);
|
|
/* 0291D950 */ cpu->r[1] = cpu->r[1] + 0x00000088u;
|
|
/* 0291D954 */ return;
|
|
}
|
|
|
|
// fn_0291D958 @ 0x291d958
|
|
void Gambit_fn_0291D958(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_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t0;
|
|
/* 02801B38 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02801B48 */ _t3 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02801B50 */ if (_t5) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02801B60 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 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 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B74 */ if (_t9) 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 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02801B84 */ if (_t11) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t12 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02801B8C */ _t13 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02801BA0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
L_0291D958: ; // 0x291d958
|
|
/* 0291D958 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291D95C */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291D95C */ _t17 = _t16 & 0x00000001u;
|
|
/* 0291D95C */ if (_t17) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0291D95C */ goto L_0291D960;
|
|
L_0291D960: ; // 0x291d960
|
|
/* 0291D960 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0291D960 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0291D964 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291D964 */ _t19 = _t18 & 0x00000001u;
|
|
/* 0291D964 */ if (_t19) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0291D964 */ goto L_0291D968;
|
|
L_0291D968: ; // 0x291d968
|
|
/* 0291D968 */ goto L_02801BB0;
|
|
}
|
|
|
|
// fn_0291D96C @ 0x291d96c
|
|
void Gambit_fn_0291D96C(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_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t0;
|
|
/* 02801B38 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02801B48 */ _t3 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02801B50 */ if (_t5) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02801B60 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 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 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B74 */ if (_t9) 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 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02801B84 */ if (_t11) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t12 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02801B8C */ _t13 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02801BA0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
L_0291D96C: ; // 0x291d96c
|
|
/* 0291D96C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291D970 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291D970 */ _t17 = _t16 & 0x00000001u;
|
|
/* 0291D970 */ if (_t17) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0291D970 */ goto L_0291D974;
|
|
L_0291D974: ; // 0x291d974
|
|
/* 0291D974 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0291D974 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0291D978 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291D978 */ _t19 = _t18 & 0x00000001u;
|
|
/* 0291D978 */ if (_t19) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0291D978 */ goto L_0291D97C;
|
|
L_0291D97C: ; // 0x291d97c
|
|
/* 0291D97C */ goto L_02801BB0;
|
|
}
|
|
|
|
// fn_0291D994 @ 0x291d994
|
|
void Gambit_fn_0291D994(CPUState* cpu) {
|
|
L_0291D994: ; // 0x291d994
|
|
/* 0291D994 */ cpu->r[3] = cpu->r[3] + 0x0000000Cu;
|
|
/* 0291D998 */ return;
|
|
}
|
|
|
|
// fn_0291D99C @ 0x291d99c
|
|
void Gambit_fn_0291D99C(CPUState* cpu) {
|
|
L_0291D99C: ; // 0x291d99c
|
|
/* 0291D99C */ return;
|
|
}
|
|
|
|
// fn_0291D9A0 @ 0x291d9a0
|
|
void Gambit_fn_0291D9A0(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_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t0;
|
|
/* 02801B38 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02801B48 */ _t3 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02801B50 */ if (_t5) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02801B60 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 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 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B74 */ if (_t9) 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 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02801B84 */ if (_t11) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t12 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02801B8C */ _t13 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02801BA0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
L_0291D9A0: ; // 0x291d9a0
|
|
/* 0291D9A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291D9A4 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291D9A4 */ _t17 = _t16 & 0x00000001u;
|
|
/* 0291D9A4 */ if (_t17) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0291D9A4 */ goto L_0291D9A8;
|
|
L_0291D9A8: ; // 0x291d9a8
|
|
/* 0291D9A8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0291D9A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0291D9AC */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291D9AC */ _t19 = _t18 & 0x00000001u;
|
|
/* 0291D9AC */ if (_t19) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0291D9AC */ goto L_0291D9B0;
|
|
L_0291D9B0: ; // 0x291d9b0
|
|
/* 0291D9B0 */ goto L_02801BB0;
|
|
}
|
|
|
|
// fn_0291D9B4 @ 0x291d9b4
|
|
void Gambit_fn_0291D9B4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_0291D9B4: ; // 0x291d9b4
|
|
/* 0291D9B4 */ cpu->r[0] = cpu->lr;
|
|
/* 0291D9B8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0291D9B8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291D9B8 */ cpu->r[1] = _t0;
|
|
/* 0291D9BC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291D9BC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0291D9C0 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0291D9C0 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0291D9C4 */ cpu->r[30] = cpu->r[3];
|
|
/* 0291D9C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0291D9C8 */ cpu->r[31] = cpu->r[4];
|
|
/* 0291D9CC */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0291D9CC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0291D9D0 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291D9D0 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0291D9D0 */ if (_t5) goto L_0291DA00; else goto L_0291D9D4;
|
|
L_0291D9D4: ; // 0x291d9d4
|
|
/* 0291D9D4 */ _t6 = cpu->r[30] + 0x00000000u;
|
|
/* 0291D9D4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0291D9D8 */ cpu->r[0] = 0x10140000u;
|
|
/* 0291D9DC */ cpu->r[0] = cpu->r[0] + 0x000018B4u;
|
|
/* 0291D9E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291D9E4 */ _t7 = cpu->r[30] + 0x00000004u;
|
|
/* 0291D9E4 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 0291D9E8 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291D9E8 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0291D9E8 */ if (_t9) goto L_0291D9F0; else goto L_0291D9EC;
|
|
L_0291D9EC: ; // 0x291d9ec
|
|
/* 0291D9EC */ Gambit_fn_02801BB4(cpu);
|
|
L_0291D9F0: ; // 0x291d9f0
|
|
/* 0291D9F0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0291D9F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0291D9F4 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291D9F4 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0291D9F4 */ if (_t11) goto L_0291DA00; else goto L_0291D9F8;
|
|
L_0291D9F8: ; // 0x291d9f8
|
|
/* 0291D9F8 */ cpu->r[3] = cpu->r[30];
|
|
/* 0291D9FC */ Gambit_fn_02801BB0(cpu);
|
|
L_0291DA00: ; // 0x291da00
|
|
/* 0291DA00 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0291DA00 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0291DA04 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 0291DA04 */ cpu->r[30] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0291DA08 */ cpu->lr = cpu->r[0];
|
|
/* 0291DA0C */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291DA0C */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0291DA10 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0291DA14 */ return;
|
|
}
|
|
|
|
// fn_0291D9B8 @ 0x291d9b8
|
|
void Gambit_fn_0291D9B8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_0291D9B8: ; // 0x291d9b8
|
|
/* 0291D9B8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0291D9B8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291D9B8 */ cpu->r[1] = _t0;
|
|
/* 0291D9BC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291D9BC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0291D9C0 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0291D9C0 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0291D9C4 */ cpu->r[30] = cpu->r[3];
|
|
/* 0291D9C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0291D9C8 */ cpu->r[31] = cpu->r[4];
|
|
/* 0291D9CC */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0291D9CC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0291D9D0 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291D9D0 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0291D9D0 */ if (_t5) goto L_0291DA00; else goto L_0291D9D4;
|
|
L_0291D9D4: ; // 0x291d9d4
|
|
/* 0291D9D4 */ _t6 = cpu->r[30] + 0x00000000u;
|
|
/* 0291D9D4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0291D9D8 */ cpu->r[0] = 0x10140000u;
|
|
/* 0291D9DC */ cpu->r[0] = cpu->r[0] + 0x000018B4u;
|
|
/* 0291D9E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291D9E4 */ _t7 = cpu->r[30] + 0x00000004u;
|
|
/* 0291D9E4 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 0291D9E8 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291D9E8 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0291D9E8 */ if (_t9) goto L_0291D9F0; else goto L_0291D9EC;
|
|
L_0291D9EC: ; // 0x291d9ec
|
|
/* 0291D9EC */ Gambit_fn_02801BB4(cpu);
|
|
L_0291D9F0: ; // 0x291d9f0
|
|
/* 0291D9F0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0291D9F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0291D9F4 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291D9F4 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0291D9F4 */ if (_t11) goto L_0291DA00; else goto L_0291D9F8;
|
|
L_0291D9F8: ; // 0x291d9f8
|
|
/* 0291D9F8 */ cpu->r[3] = cpu->r[30];
|
|
/* 0291D9FC */ Gambit_fn_02801BB0(cpu);
|
|
L_0291DA00: ; // 0x291da00
|
|
/* 0291DA00 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0291DA00 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0291DA04 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 0291DA04 */ cpu->r[30] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0291DA08 */ cpu->lr = cpu->r[0];
|
|
/* 0291DA0C */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291DA0C */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0291DA10 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0291DA14 */ return;
|
|
}
|
|
|
|
// fn_0291DA18 @ 0x291da18
|
|
void Gambit_fn_0291DA18(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0291DA18: ; // 0x291da18
|
|
/* 0291DA18 */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 0291DA18 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0291DA1C */ cpu->r[0] = cpu->r[0] | cpu->r[4];
|
|
/* 0291DA20 */ _t1 = cpu->r[3] + 0x00000000u;
|
|
/* 0291DA20 */ rbrew_write8(cpu->mem, _t1, (uint8_t)cpu->r[0]);
|
|
/* 0291DA24 */ return;
|
|
}
|
|
|
|
// fn_0291DA28 @ 0x291da28
|
|
void Gambit_fn_0291DA28(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _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_0291DA28: ; // 0x291da28
|
|
/* 0291DA28 */ cpu->r[0] = cpu->lr;
|
|
/* 0291DA2C */ _t0 = cpu->r[1] + 0xFFFFFF78u;
|
|
/* 0291DA2C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291DA2C */ cpu->r[1] = _t0;
|
|
/* 0291DA30 */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 0291DA30 */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 0291DA34 */ _t2 = cpu->r[1] + 0x00000084u;
|
|
/* 0291DA34 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0291DA38 */ _t3 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0291DA38 */ rbrew_write32(cpu->mem, _t3, cpu->r[8]);
|
|
/* 0291DA3C */ _t4 = cpu->r[1] + 0x00000020u;
|
|
/* 0291DA3C */ rbrew_write32(cpu->mem, _t4, cpu->r[5]);
|
|
/* 0291DA40 */ _t5 = cpu->r[1] + 0x00000018u;
|
|
/* 0291DA40 */ rbrew_write32(cpu->mem, _t5, cpu->r[3]);
|
|
/* 0291DA44 */ _t6 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0291DA44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0291DA48 */ _t7 = cpu->r[1] + 0x00000078u;
|
|
/* 0291DA48 */ rbrew_write32(cpu->mem, _t7, cpu->r[28]);
|
|
/* 0291DA4C */ _t8 = cpu->r[1] + 0x00000080u;
|
|
/* 0291DA4C */ rbrew_write32(cpu->mem, _t8, cpu->r[30]);
|
|
/* 0291DA50 */ _t9 = cpu->r[1] + 0x00000024u;
|
|
/* 0291DA50 */ rbrew_write32(cpu->mem, _t9, cpu->r[6]);
|
|
/* 0291DA54 */ _t10 = cpu->r[1] + 0x00000030u;
|
|
/* 0291DA54 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 0291DA58 */ _t11 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0291DA58 */ rbrew_write32(cpu->mem, _t11, cpu->r[29]);
|
|
/* 0291DA5C */ _t12 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0291DA5C */ rbrew_write32(cpu->mem, _t12, cpu->r[4]);
|
|
/* 0291DA60 */ _t13 = cpu->r[1] + 0x00000028u;
|
|
/* 0291DA60 */ rbrew_write32(cpu->mem, _t13, cpu->r[7]);
|
|
/* 0291DA64 */ _t14 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 0291DA64 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0291DA64 */ if (_t15) goto L_0291DA68; else goto L_0291DA88;
|
|
L_0291DA68: ; // 0x291da68
|
|
/* 0291DA68 */ _t16 = cpu->r[1] + 0x00000048u;
|
|
/* 0291DA68 */ rbrew_write_f64(cpu->mem, _t16, cpu->f[3]);
|
|
/* 0291DA6C */ _t17 = cpu->r[1] + 0x00000068u;
|
|
/* 0291DA6C */ rbrew_write_f64(cpu->mem, _t17, cpu->f[7]);
|
|
/* 0291DA70 */ _t18 = cpu->r[1] + 0x00000060u;
|
|
/* 0291DA70 */ rbrew_write_f64(cpu->mem, _t18, cpu->f[6]);
|
|
/* 0291DA74 */ _t19 = cpu->r[1] + 0x00000040u;
|
|
/* 0291DA74 */ rbrew_write_f64(cpu->mem, _t19, cpu->f[2]);
|
|
/* 0291DA78 */ _t20 = cpu->r[1] + 0x00000050u;
|
|
/* 0291DA78 */ rbrew_write_f64(cpu->mem, _t20, cpu->f[4]);
|
|
/* 0291DA7C */ _t21 = cpu->r[1] + 0x00000070u;
|
|
/* 0291DA7C */ rbrew_write_f64(cpu->mem, _t21, cpu->f[8]);
|
|
/* 0291DA80 */ _t22 = cpu->r[1] + 0x00000058u;
|
|
/* 0291DA80 */ rbrew_write_f64(cpu->mem, _t22, cpu->f[5]);
|
|
/* 0291DA84 */ _t23 = cpu->r[1] + 0x00000038u;
|
|
/* 0291DA84 */ rbrew_write_f64(cpu->mem, _t23, cpu->f[1]);
|
|
L_0291DA88: ; // 0x291da88
|
|
/* 0291DA88 */ cpu->r[31] = cpu->r[3];
|
|
/* 0291DA88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0291DA8C */ cpu->r[30] = cpu->r[4];
|
|
/* 0291DA90 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291DA90 */ _t25 = _t24 & 0x00000001u;
|
|
/* 0291DA90 */ if (_t25) goto L_0291DA94; else goto L_0291DAA4;
|
|
L_0291DA94: ; // 0x291da94
|
|
/* 0291DA94 */ cpu->r[3] = 0x00000110u;
|
|
/* 0291DA98 */ Gambit_fn_02801A78(cpu);
|
|
/* 0291DA9C */ cpu->r[31] = cpu->r[3];
|
|
/* 0291DA9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0291DAA0 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291DAA0 */ _t27 = _t26 & 0x00000001u;
|
|
/* 0291DAA0 */ if (_t27) goto L_0291DB68; else goto L_0291DAA4;
|
|
L_0291DAA4: ; // 0x291daa4
|
|
/* 0291DAA4 */ cpu->r[29] = cpu->r[31];
|
|
/* 0291DAA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0291DAA8 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291DAA8 */ _t29 = _t28 & 0x00000001u;
|
|
/* 0291DAA8 */ if (_t29) goto L_0291DAAC; else goto L_0291DABC;
|
|
L_0291DAAC: ; // 0x291daac
|
|
/* 0291DAAC */ cpu->r[3] = 0x00000110u;
|
|
/* 0291DAB0 */ Gambit_fn_02801A78(cpu);
|
|
/* 0291DAB4 */ cpu->r[29] = cpu->r[3];
|
|
/* 0291DAB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0291DAB8 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291DAB8 */ _t31 = _t30 & 0x00000001u;
|
|
/* 0291DAB8 */ if (_t31) goto L_0291DB2C; else goto L_0291DABC;
|
|
L_0291DABC: ; // 0x291dabc
|
|
/* 0291DABC */ cpu->r[3] = cpu->r[29];
|
|
/* 0291DABC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291DAC0 */ cpu->r[28] = 0x10110000u;
|
|
/* 0291DAC4 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291DAC4 */ _t33 = _t32 & 0x00000001u;
|
|
/* 0291DAC4 */ if (_t33) goto L_0291DAC8; else goto L_0291DAF4;
|
|
L_0291DAC8: ; // 0x291dac8
|
|
/* 0291DAC8 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0291DACC */ Gambit_fn_02801A78(cpu);
|
|
/* 0291DAD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291DAD4 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291DAD4 */ _t35 = _t34 & 0x00000001u;
|
|
/* 0291DAD4 */ if (_t35) goto L_0291DAD8; else goto L_0291DAF4;
|
|
L_0291DAD8: ; // 0x291dad8
|
|
/* 0291DAD8 */ cpu->r[7] = 0x10140000u;
|
|
/* 0291DADC */ _t36 = cpu->r[28] + 0x00007399u;
|
|
/* 0291DADC */ cpu->r[0] = rbrew_read8(cpu->mem, _t36);
|
|
/* 0291DAE0 */ cpu->r[7] = cpu->r[7] + 0x000019CCu;
|
|
/* 0291DAE4 */ _t37 = cpu->r[29] + 0x00000000u;
|
|
/* 0291DAE4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0291DAE8 */ _t38 = cpu->r[29] + 0x00000004u;
|
|
/* 0291DAE8 */ rbrew_write32(cpu->mem, _t38, cpu->r[7]);
|
|
/* 0291DAEC */ _t39 = cpu->r[8] + 0x00000000u;
|
|
/* 0291DAEC */ rbrew_write8(cpu->mem, _t39, (uint8_t)cpu->r[0]);
|
|
/* 0291DAF0 */ goto L_0291DB2C;
|
|
L_0291DAF4: ; // 0x291daf4
|
|
/* 0291DAF4 */ cpu->r[5] = 0x10140000u;
|
|
/* 0291DAF8 */ cpu->r[0] = cpu->r[29] + 0x0000000Cu;
|
|
/* 0291DAFC */ cpu->r[5] = cpu->r[5] + 0x0000189Cu;
|
|
/* 0291DB00 */ _t40 = cpu->r[3] + 0x00000000u;
|
|
/* 0291DB00 */ rbrew_write32(cpu->mem, _t40, cpu->r[0]);
|
|
/* 0291DB04 */ cpu->r[6] = 0x00000104u;
|
|
/* 0291DB08 */ _t41 = cpu->r[3] + 0x00000004u;
|
|
/* 0291DB08 */ rbrew_write32(cpu->mem, _t41, cpu->r[5]);
|
|
/* 0291DB0C */ _t42 = cpu->r[3] + 0x00000008u;
|
|
/* 0291DB0C */ rbrew_write32(cpu->mem, _t42, cpu->r[6]);
|
|
/* 0291DB10 */ _t43 = cpu->r[28] + 0x00007399u;
|
|
/* 0291DB10 */ cpu->r[0] = rbrew_read8(cpu->mem, _t43);
|
|
/* 0291DB14 */ cpu->r[7] = 0x10140000u;
|
|
/* 0291DB18 */ _t44 = cpu->r[29] + 0x00000000u;
|
|
/* 0291DB18 */ cpu->r[8] = rbrew_read32(cpu->mem, _t44);
|
|
/* 0291DB1C */ cpu->r[7] = cpu->r[7] + 0x000019CCu;
|
|
/* 0291DB20 */ _t45 = cpu->r[29] + 0x0000010Fu;
|
|
/* 0291DB20 */ rbrew_write8(cpu->mem, _t45, (uint8_t)cpu->r[0]);
|
|
/* 0291DB24 */ _t46 = cpu->r[29] + 0x00000004u;
|
|
/* 0291DB24 */ rbrew_write32(cpu->mem, _t46, cpu->r[7]);
|
|
/* 0291DB28 */ _t47 = cpu->r[8] + 0x00000000u;
|
|
/* 0291DB28 */ rbrew_write8(cpu->mem, _t47, (uint8_t)cpu->r[0]);
|
|
L_0291DB2C: ; // 0x291db2c
|
|
/* 0291DB2C */ cpu->r[9] = 0x10140000u;
|
|
/* 0291DB30 */ cpu->r[12] = 0x00000002u;
|
|
/* 0291DB34 */ cpu->r[9] = cpu->r[9] + 0x00001A34u;
|
|
/* 0291DB38 */ cpu->r[0] = cpu->r[1] + 0x00000090u;
|
|
/* 0291DB3C */ _t48 = cpu->r[31] + 0x00000004u;
|
|
/* 0291DB3C */ rbrew_write32(cpu->mem, _t48, cpu->r[9]);
|
|
/* 0291DB40 */ cpu->r[11] = cpu->r[1] + 0x00000018u;
|
|
/* 0291DB44 */ _t49 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291DB44 */ rbrew_write32(cpu->mem, _t49, cpu->r[0]);
|
|
/* 0291DB48 */ cpu->r[0] = 0x00000000u;
|
|
/* 0291DB4C */ _t50 = cpu->r[1] + 0x00000010u;
|
|
/* 0291DB4C */ rbrew_write32(cpu->mem, _t50, cpu->r[11]);
|
|
/* 0291DB50 */ cpu->r[3] = cpu->r[31];
|
|
/* 0291DB54 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0291DB58 */ _t51 = cpu->r[1] + 0x00000009u;
|
|
/* 0291DB58 */ rbrew_write8(cpu->mem, _t51, (uint8_t)cpu->r[0]);
|
|
/* 0291DB5C */ cpu->r[4] = cpu->r[30];
|
|
/* 0291DB60 */ _t52 = cpu->r[1] + 0x00000008u;
|
|
/* 0291DB60 */ rbrew_write8(cpu->mem, _t52, (uint8_t)cpu->r[12]);
|
|
/* 0291DB64 */ Gambit_fn_0282A5DC(cpu);
|
|
L_0291DB68: ; // 0x291db68
|
|
/* 0291DB68 */ _t53 = cpu->r[1] + 0x00000078u;
|
|
/* 0291DB68 */ cpu->r[28] = rbrew_read32(cpu->mem, _t53);
|
|
/* 0291DB6C */ _t54 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0291DB6C */ cpu->r[29] = rbrew_read32(cpu->mem, _t54);
|
|
/* 0291DB70 */ _t55 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0291DB70 */ cpu->r[0] = rbrew_read32(cpu->mem, _t55);
|
|
/* 0291DB74 */ cpu->r[3] = cpu->r[31];
|
|
/* 0291DB78 */ _t56 = cpu->r[1] + 0x00000080u;
|
|
/* 0291DB78 */ cpu->r[30] = rbrew_read32(cpu->mem, _t56);
|
|
/* 0291DB7C */ cpu->lr = cpu->r[0];
|
|
/* 0291DB80 */ _t57 = cpu->r[1] + 0x00000084u;
|
|
/* 0291DB80 */ cpu->r[31] = rbrew_read32(cpu->mem, _t57);
|
|
/* 0291DB84 */ cpu->r[1] = cpu->r[1] + 0x00000088u;
|
|
/* 0291DB88 */ return;
|
|
}
|
|
|
|
// fn_0291DA2C @ 0x291da2c
|
|
void Gambit_fn_0291DA2C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _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_0291DA2C: ; // 0x291da2c
|
|
/* 0291DA2C */ _t0 = cpu->r[1] + 0xFFFFFF78u;
|
|
/* 0291DA2C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291DA2C */ cpu->r[1] = _t0;
|
|
/* 0291DA30 */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 0291DA30 */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 0291DA34 */ _t2 = cpu->r[1] + 0x00000084u;
|
|
/* 0291DA34 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0291DA38 */ _t3 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0291DA38 */ rbrew_write32(cpu->mem, _t3, cpu->r[8]);
|
|
/* 0291DA3C */ _t4 = cpu->r[1] + 0x00000020u;
|
|
/* 0291DA3C */ rbrew_write32(cpu->mem, _t4, cpu->r[5]);
|
|
/* 0291DA40 */ _t5 = cpu->r[1] + 0x00000018u;
|
|
/* 0291DA40 */ rbrew_write32(cpu->mem, _t5, cpu->r[3]);
|
|
/* 0291DA44 */ _t6 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0291DA44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0291DA48 */ _t7 = cpu->r[1] + 0x00000078u;
|
|
/* 0291DA48 */ rbrew_write32(cpu->mem, _t7, cpu->r[28]);
|
|
/* 0291DA4C */ _t8 = cpu->r[1] + 0x00000080u;
|
|
/* 0291DA4C */ rbrew_write32(cpu->mem, _t8, cpu->r[30]);
|
|
/* 0291DA50 */ _t9 = cpu->r[1] + 0x00000024u;
|
|
/* 0291DA50 */ rbrew_write32(cpu->mem, _t9, cpu->r[6]);
|
|
/* 0291DA54 */ _t10 = cpu->r[1] + 0x00000030u;
|
|
/* 0291DA54 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 0291DA58 */ _t11 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0291DA58 */ rbrew_write32(cpu->mem, _t11, cpu->r[29]);
|
|
/* 0291DA5C */ _t12 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0291DA5C */ rbrew_write32(cpu->mem, _t12, cpu->r[4]);
|
|
/* 0291DA60 */ _t13 = cpu->r[1] + 0x00000028u;
|
|
/* 0291DA60 */ rbrew_write32(cpu->mem, _t13, cpu->r[7]);
|
|
/* 0291DA64 */ _t14 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 0291DA64 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0291DA64 */ if (_t15) goto L_0291DA68; else goto L_0291DA88;
|
|
L_0291DA68: ; // 0x291da68
|
|
/* 0291DA68 */ _t16 = cpu->r[1] + 0x00000048u;
|
|
/* 0291DA68 */ rbrew_write_f64(cpu->mem, _t16, cpu->f[3]);
|
|
/* 0291DA6C */ _t17 = cpu->r[1] + 0x00000068u;
|
|
/* 0291DA6C */ rbrew_write_f64(cpu->mem, _t17, cpu->f[7]);
|
|
/* 0291DA70 */ _t18 = cpu->r[1] + 0x00000060u;
|
|
/* 0291DA70 */ rbrew_write_f64(cpu->mem, _t18, cpu->f[6]);
|
|
/* 0291DA74 */ _t19 = cpu->r[1] + 0x00000040u;
|
|
/* 0291DA74 */ rbrew_write_f64(cpu->mem, _t19, cpu->f[2]);
|
|
/* 0291DA78 */ _t20 = cpu->r[1] + 0x00000050u;
|
|
/* 0291DA78 */ rbrew_write_f64(cpu->mem, _t20, cpu->f[4]);
|
|
/* 0291DA7C */ _t21 = cpu->r[1] + 0x00000070u;
|
|
/* 0291DA7C */ rbrew_write_f64(cpu->mem, _t21, cpu->f[8]);
|
|
/* 0291DA80 */ _t22 = cpu->r[1] + 0x00000058u;
|
|
/* 0291DA80 */ rbrew_write_f64(cpu->mem, _t22, cpu->f[5]);
|
|
/* 0291DA84 */ _t23 = cpu->r[1] + 0x00000038u;
|
|
/* 0291DA84 */ rbrew_write_f64(cpu->mem, _t23, cpu->f[1]);
|
|
L_0291DA88: ; // 0x291da88
|
|
/* 0291DA88 */ cpu->r[31] = cpu->r[3];
|
|
/* 0291DA88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0291DA8C */ cpu->r[30] = cpu->r[4];
|
|
/* 0291DA90 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291DA90 */ _t25 = _t24 & 0x00000001u;
|
|
/* 0291DA90 */ if (_t25) goto L_0291DA94; else goto L_0291DAA4;
|
|
L_0291DA94: ; // 0x291da94
|
|
/* 0291DA94 */ cpu->r[3] = 0x00000110u;
|
|
/* 0291DA98 */ Gambit_fn_02801A78(cpu);
|
|
/* 0291DA9C */ cpu->r[31] = cpu->r[3];
|
|
/* 0291DA9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0291DAA0 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291DAA0 */ _t27 = _t26 & 0x00000001u;
|
|
/* 0291DAA0 */ if (_t27) goto L_0291DB68; else goto L_0291DAA4;
|
|
L_0291DAA4: ; // 0x291daa4
|
|
/* 0291DAA4 */ cpu->r[29] = cpu->r[31];
|
|
/* 0291DAA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0291DAA8 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291DAA8 */ _t29 = _t28 & 0x00000001u;
|
|
/* 0291DAA8 */ if (_t29) goto L_0291DAAC; else goto L_0291DABC;
|
|
L_0291DAAC: ; // 0x291daac
|
|
/* 0291DAAC */ cpu->r[3] = 0x00000110u;
|
|
/* 0291DAB0 */ Gambit_fn_02801A78(cpu);
|
|
/* 0291DAB4 */ cpu->r[29] = cpu->r[3];
|
|
/* 0291DAB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0291DAB8 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291DAB8 */ _t31 = _t30 & 0x00000001u;
|
|
/* 0291DAB8 */ if (_t31) goto L_0291DB2C; else goto L_0291DABC;
|
|
L_0291DABC: ; // 0x291dabc
|
|
/* 0291DABC */ cpu->r[3] = cpu->r[29];
|
|
/* 0291DABC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291DAC0 */ cpu->r[28] = 0x10110000u;
|
|
/* 0291DAC4 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291DAC4 */ _t33 = _t32 & 0x00000001u;
|
|
/* 0291DAC4 */ if (_t33) goto L_0291DAC8; else goto L_0291DAF4;
|
|
L_0291DAC8: ; // 0x291dac8
|
|
/* 0291DAC8 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0291DACC */ Gambit_fn_02801A78(cpu);
|
|
/* 0291DAD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291DAD4 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291DAD4 */ _t35 = _t34 & 0x00000001u;
|
|
/* 0291DAD4 */ if (_t35) goto L_0291DAD8; else goto L_0291DAF4;
|
|
L_0291DAD8: ; // 0x291dad8
|
|
/* 0291DAD8 */ cpu->r[7] = 0x10140000u;
|
|
/* 0291DADC */ _t36 = cpu->r[28] + 0x00007399u;
|
|
/* 0291DADC */ cpu->r[0] = rbrew_read8(cpu->mem, _t36);
|
|
/* 0291DAE0 */ cpu->r[7] = cpu->r[7] + 0x000019CCu;
|
|
/* 0291DAE4 */ _t37 = cpu->r[29] + 0x00000000u;
|
|
/* 0291DAE4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0291DAE8 */ _t38 = cpu->r[29] + 0x00000004u;
|
|
/* 0291DAE8 */ rbrew_write32(cpu->mem, _t38, cpu->r[7]);
|
|
/* 0291DAEC */ _t39 = cpu->r[8] + 0x00000000u;
|
|
/* 0291DAEC */ rbrew_write8(cpu->mem, _t39, (uint8_t)cpu->r[0]);
|
|
/* 0291DAF0 */ goto L_0291DB2C;
|
|
L_0291DAF4: ; // 0x291daf4
|
|
/* 0291DAF4 */ cpu->r[5] = 0x10140000u;
|
|
/* 0291DAF8 */ cpu->r[0] = cpu->r[29] + 0x0000000Cu;
|
|
/* 0291DAFC */ cpu->r[5] = cpu->r[5] + 0x0000189Cu;
|
|
/* 0291DB00 */ _t40 = cpu->r[3] + 0x00000000u;
|
|
/* 0291DB00 */ rbrew_write32(cpu->mem, _t40, cpu->r[0]);
|
|
/* 0291DB04 */ cpu->r[6] = 0x00000104u;
|
|
/* 0291DB08 */ _t41 = cpu->r[3] + 0x00000004u;
|
|
/* 0291DB08 */ rbrew_write32(cpu->mem, _t41, cpu->r[5]);
|
|
/* 0291DB0C */ _t42 = cpu->r[3] + 0x00000008u;
|
|
/* 0291DB0C */ rbrew_write32(cpu->mem, _t42, cpu->r[6]);
|
|
/* 0291DB10 */ _t43 = cpu->r[28] + 0x00007399u;
|
|
/* 0291DB10 */ cpu->r[0] = rbrew_read8(cpu->mem, _t43);
|
|
/* 0291DB14 */ cpu->r[7] = 0x10140000u;
|
|
/* 0291DB18 */ _t44 = cpu->r[29] + 0x00000000u;
|
|
/* 0291DB18 */ cpu->r[8] = rbrew_read32(cpu->mem, _t44);
|
|
/* 0291DB1C */ cpu->r[7] = cpu->r[7] + 0x000019CCu;
|
|
/* 0291DB20 */ _t45 = cpu->r[29] + 0x0000010Fu;
|
|
/* 0291DB20 */ rbrew_write8(cpu->mem, _t45, (uint8_t)cpu->r[0]);
|
|
/* 0291DB24 */ _t46 = cpu->r[29] + 0x00000004u;
|
|
/* 0291DB24 */ rbrew_write32(cpu->mem, _t46, cpu->r[7]);
|
|
/* 0291DB28 */ _t47 = cpu->r[8] + 0x00000000u;
|
|
/* 0291DB28 */ rbrew_write8(cpu->mem, _t47, (uint8_t)cpu->r[0]);
|
|
L_0291DB2C: ; // 0x291db2c
|
|
/* 0291DB2C */ cpu->r[9] = 0x10140000u;
|
|
/* 0291DB30 */ cpu->r[12] = 0x00000002u;
|
|
/* 0291DB34 */ cpu->r[9] = cpu->r[9] + 0x00001A34u;
|
|
/* 0291DB38 */ cpu->r[0] = cpu->r[1] + 0x00000090u;
|
|
/* 0291DB3C */ _t48 = cpu->r[31] + 0x00000004u;
|
|
/* 0291DB3C */ rbrew_write32(cpu->mem, _t48, cpu->r[9]);
|
|
/* 0291DB40 */ cpu->r[11] = cpu->r[1] + 0x00000018u;
|
|
/* 0291DB44 */ _t49 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291DB44 */ rbrew_write32(cpu->mem, _t49, cpu->r[0]);
|
|
/* 0291DB48 */ cpu->r[0] = 0x00000000u;
|
|
/* 0291DB4C */ _t50 = cpu->r[1] + 0x00000010u;
|
|
/* 0291DB4C */ rbrew_write32(cpu->mem, _t50, cpu->r[11]);
|
|
/* 0291DB50 */ cpu->r[3] = cpu->r[31];
|
|
/* 0291DB54 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0291DB58 */ _t51 = cpu->r[1] + 0x00000009u;
|
|
/* 0291DB58 */ rbrew_write8(cpu->mem, _t51, (uint8_t)cpu->r[0]);
|
|
/* 0291DB5C */ cpu->r[4] = cpu->r[30];
|
|
/* 0291DB60 */ _t52 = cpu->r[1] + 0x00000008u;
|
|
/* 0291DB60 */ rbrew_write8(cpu->mem, _t52, (uint8_t)cpu->r[12]);
|
|
/* 0291DB64 */ Gambit_fn_0282A5DC(cpu);
|
|
L_0291DB68: ; // 0x291db68
|
|
/* 0291DB68 */ _t53 = cpu->r[1] + 0x00000078u;
|
|
/* 0291DB68 */ cpu->r[28] = rbrew_read32(cpu->mem, _t53);
|
|
/* 0291DB6C */ _t54 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0291DB6C */ cpu->r[29] = rbrew_read32(cpu->mem, _t54);
|
|
/* 0291DB70 */ _t55 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0291DB70 */ cpu->r[0] = rbrew_read32(cpu->mem, _t55);
|
|
/* 0291DB74 */ cpu->r[3] = cpu->r[31];
|
|
/* 0291DB78 */ _t56 = cpu->r[1] + 0x00000080u;
|
|
/* 0291DB78 */ cpu->r[30] = rbrew_read32(cpu->mem, _t56);
|
|
/* 0291DB7C */ cpu->lr = cpu->r[0];
|
|
/* 0291DB80 */ _t57 = cpu->r[1] + 0x00000084u;
|
|
/* 0291DB80 */ cpu->r[31] = rbrew_read32(cpu->mem, _t57);
|
|
/* 0291DB84 */ cpu->r[1] = cpu->r[1] + 0x00000088u;
|
|
/* 0291DB88 */ return;
|
|
}
|
|
|
|
// fn_0291DB8C @ 0x291db8c
|
|
void Gambit_fn_0291DB8C(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_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t0;
|
|
/* 02801B38 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02801B48 */ _t3 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02801B50 */ if (_t5) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02801B60 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 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 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B74 */ if (_t9) 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 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02801B84 */ if (_t11) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t12 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02801B8C */ _t13 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02801BA0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
L_0291DB8C: ; // 0x291db8c
|
|
/* 0291DB8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291DB90 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291DB90 */ _t17 = _t16 & 0x00000001u;
|
|
/* 0291DB90 */ if (_t17) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0291DB90 */ goto L_0291DB94;
|
|
L_0291DB94: ; // 0x291db94
|
|
/* 0291DB94 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0291DB94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0291DB98 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291DB98 */ _t19 = _t18 & 0x00000001u;
|
|
/* 0291DB98 */ if (_t19) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0291DB98 */ goto L_0291DB9C;
|
|
L_0291DB9C: ; // 0x291db9c
|
|
/* 0291DB9C */ goto L_02801BB0;
|
|
}
|
|
|
|
// fn_0291DBA0 @ 0x291dba0
|
|
void Gambit_fn_0291DBA0(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_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t0;
|
|
/* 02801B38 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02801B48 */ _t3 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02801B50 */ if (_t5) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02801B60 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 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 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B74 */ if (_t9) 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 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02801B84 */ if (_t11) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t12 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02801B8C */ _t13 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02801BA0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
L_0291DBA0: ; // 0x291dba0
|
|
/* 0291DBA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291DBA4 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291DBA4 */ _t17 = _t16 & 0x00000001u;
|
|
/* 0291DBA4 */ if (_t17) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0291DBA4 */ goto L_0291DBA8;
|
|
L_0291DBA8: ; // 0x291dba8
|
|
/* 0291DBA8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0291DBA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0291DBAC */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291DBAC */ _t19 = _t18 & 0x00000001u;
|
|
/* 0291DBAC */ if (_t19) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0291DBAC */ goto L_0291DBB0;
|
|
L_0291DBB0: ; // 0x291dbb0
|
|
/* 0291DBB0 */ goto L_02801BB0;
|
|
}
|
|
|
|
// fn_0291DBB4 @ 0x291dbb4
|
|
void Gambit_fn_0291DBB4(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_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t0;
|
|
/* 02801B38 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02801B48 */ _t3 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02801B50 */ if (_t5) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02801B60 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 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 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B74 */ if (_t9) 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 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02801B84 */ if (_t11) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t12 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02801B8C */ _t13 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02801BA0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
L_0291DBB4: ; // 0x291dbb4
|
|
/* 0291DBB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291DBB8 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291DBB8 */ _t17 = _t16 & 0x00000001u;
|
|
/* 0291DBB8 */ if (_t17) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0291DBB8 */ goto L_0291DBBC;
|
|
L_0291DBBC: ; // 0x291dbbc
|
|
/* 0291DBBC */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0291DBBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0291DBC0 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291DBC0 */ _t19 = _t18 & 0x00000001u;
|
|
/* 0291DBC0 */ if (_t19) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0291DBC0 */ goto L_0291DBC4;
|
|
L_0291DBC4: ; // 0x291dbc4
|
|
/* 0291DBC4 */ goto L_02801BB0;
|
|
}
|
|
|
|
// fn_0291DBC8 @ 0x291dbc8
|
|
void Gambit_fn_0291DBC8(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_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t0;
|
|
/* 02801B38 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02801B48 */ _t3 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02801B50 */ if (_t5) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02801B60 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 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 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B74 */ if (_t9) 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 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02801B84 */ if (_t11) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t12 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02801B8C */ _t13 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02801BA0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
L_0291DBC8: ; // 0x291dbc8
|
|
/* 0291DBC8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291DBCC */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291DBCC */ _t17 = _t16 & 0x00000001u;
|
|
/* 0291DBCC */ if (_t17) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0291DBCC */ goto L_0291DBD0;
|
|
L_0291DBD0: ; // 0x291dbd0
|
|
/* 0291DBD0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0291DBD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0291DBD4 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291DBD4 */ _t19 = _t18 & 0x00000001u;
|
|
/* 0291DBD4 */ if (_t19) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0291DBD4 */ goto L_0291DBD8;
|
|
L_0291DBD8: ; // 0x291dbd8
|
|
/* 0291DBD8 */ goto L_02801BB0;
|
|
}
|
|
|
|
// fn_0291DBDC @ 0x291dbdc
|
|
void Gambit_fn_0291DBDC(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_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t0;
|
|
/* 02801B38 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02801B48 */ _t3 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02801B50 */ if (_t5) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02801B60 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 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 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B74 */ if (_t9) 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 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02801B84 */ if (_t11) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t12 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02801B8C */ _t13 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02801BA0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
L_0291DBDC: ; // 0x291dbdc
|
|
/* 0291DBDC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291DBE0 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291DBE0 */ _t17 = _t16 & 0x00000001u;
|
|
/* 0291DBE0 */ if (_t17) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0291DBE0 */ goto L_0291DBE4;
|
|
L_0291DBE4: ; // 0x291dbe4
|
|
/* 0291DBE4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0291DBE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0291DBE8 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291DBE8 */ _t19 = _t18 & 0x00000001u;
|
|
/* 0291DBE8 */ if (_t19) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0291DBE8 */ goto L_0291DBEC;
|
|
L_0291DBEC: ; // 0x291dbec
|
|
/* 0291DBEC */ goto L_02801BB0;
|
|
}
|
|
|
|
// fn_0291DBF0 @ 0x291dbf0
|
|
void Gambit_fn_0291DBF0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _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_0291DBF0: ; // 0x291dbf0
|
|
/* 0291DBF0 */ cpu->r[0] = cpu->lr;
|
|
/* 0291DBF4 */ _t0 = cpu->r[1] + 0xFFFFFF78u;
|
|
/* 0291DBF4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291DBF4 */ cpu->r[1] = _t0;
|
|
/* 0291DBF8 */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 0291DBF8 */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 0291DBFC */ _t2 = cpu->r[1] + 0x00000084u;
|
|
/* 0291DBFC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0291DC00 */ _t3 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0291DC00 */ rbrew_write32(cpu->mem, _t3, cpu->r[8]);
|
|
/* 0291DC04 */ _t4 = cpu->r[1] + 0x00000020u;
|
|
/* 0291DC04 */ rbrew_write32(cpu->mem, _t4, cpu->r[5]);
|
|
/* 0291DC08 */ _t5 = cpu->r[1] + 0x00000018u;
|
|
/* 0291DC08 */ rbrew_write32(cpu->mem, _t5, cpu->r[3]);
|
|
/* 0291DC0C */ _t6 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0291DC0C */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0291DC10 */ _t7 = cpu->r[1] + 0x00000078u;
|
|
/* 0291DC10 */ rbrew_write32(cpu->mem, _t7, cpu->r[28]);
|
|
/* 0291DC14 */ _t8 = cpu->r[1] + 0x00000080u;
|
|
/* 0291DC14 */ rbrew_write32(cpu->mem, _t8, cpu->r[30]);
|
|
/* 0291DC18 */ _t9 = cpu->r[1] + 0x00000024u;
|
|
/* 0291DC18 */ rbrew_write32(cpu->mem, _t9, cpu->r[6]);
|
|
/* 0291DC1C */ _t10 = cpu->r[1] + 0x00000030u;
|
|
/* 0291DC1C */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 0291DC20 */ _t11 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0291DC20 */ rbrew_write32(cpu->mem, _t11, cpu->r[29]);
|
|
/* 0291DC24 */ _t12 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0291DC24 */ rbrew_write32(cpu->mem, _t12, cpu->r[4]);
|
|
/* 0291DC28 */ _t13 = cpu->r[1] + 0x00000028u;
|
|
/* 0291DC28 */ rbrew_write32(cpu->mem, _t13, cpu->r[7]);
|
|
/* 0291DC2C */ _t14 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 0291DC2C */ _t15 = _t14 & 0x00000001u;
|
|
/* 0291DC2C */ if (_t15) goto L_0291DC30; else goto L_0291DC50;
|
|
L_0291DC30: ; // 0x291dc30
|
|
/* 0291DC30 */ _t16 = cpu->r[1] + 0x00000048u;
|
|
/* 0291DC30 */ rbrew_write_f64(cpu->mem, _t16, cpu->f[3]);
|
|
/* 0291DC34 */ _t17 = cpu->r[1] + 0x00000068u;
|
|
/* 0291DC34 */ rbrew_write_f64(cpu->mem, _t17, cpu->f[7]);
|
|
/* 0291DC38 */ _t18 = cpu->r[1] + 0x00000060u;
|
|
/* 0291DC38 */ rbrew_write_f64(cpu->mem, _t18, cpu->f[6]);
|
|
/* 0291DC3C */ _t19 = cpu->r[1] + 0x00000040u;
|
|
/* 0291DC3C */ rbrew_write_f64(cpu->mem, _t19, cpu->f[2]);
|
|
/* 0291DC40 */ _t20 = cpu->r[1] + 0x00000050u;
|
|
/* 0291DC40 */ rbrew_write_f64(cpu->mem, _t20, cpu->f[4]);
|
|
/* 0291DC44 */ _t21 = cpu->r[1] + 0x00000070u;
|
|
/* 0291DC44 */ rbrew_write_f64(cpu->mem, _t21, cpu->f[8]);
|
|
/* 0291DC48 */ _t22 = cpu->r[1] + 0x00000058u;
|
|
/* 0291DC48 */ rbrew_write_f64(cpu->mem, _t22, cpu->f[5]);
|
|
/* 0291DC4C */ _t23 = cpu->r[1] + 0x00000038u;
|
|
/* 0291DC4C */ rbrew_write_f64(cpu->mem, _t23, cpu->f[1]);
|
|
L_0291DC50: ; // 0x291dc50
|
|
/* 0291DC50 */ cpu->r[31] = cpu->r[3];
|
|
/* 0291DC50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0291DC54 */ cpu->r[30] = cpu->r[4];
|
|
/* 0291DC58 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291DC58 */ _t25 = _t24 & 0x00000001u;
|
|
/* 0291DC58 */ if (_t25) goto L_0291DC5C; else goto L_0291DC6C;
|
|
L_0291DC5C: ; // 0x291dc5c
|
|
/* 0291DC5C */ cpu->r[3] = 0x0000004Cu;
|
|
/* 0291DC60 */ Gambit_fn_02801A78(cpu);
|
|
/* 0291DC64 */ cpu->r[31] = cpu->r[3];
|
|
/* 0291DC64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0291DC68 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291DC68 */ _t27 = _t26 & 0x00000001u;
|
|
/* 0291DC68 */ if (_t27) goto L_0291DD30; else goto L_0291DC6C;
|
|
L_0291DC6C: ; // 0x291dc6c
|
|
/* 0291DC6C */ cpu->r[29] = cpu->r[31];
|
|
/* 0291DC6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0291DC70 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291DC70 */ _t29 = _t28 & 0x00000001u;
|
|
/* 0291DC70 */ if (_t29) goto L_0291DC74; else goto L_0291DC84;
|
|
L_0291DC74: ; // 0x291dc74
|
|
/* 0291DC74 */ cpu->r[3] = 0x0000004Cu;
|
|
/* 0291DC78 */ Gambit_fn_02801A78(cpu);
|
|
/* 0291DC7C */ cpu->r[29] = cpu->r[3];
|
|
/* 0291DC7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0291DC80 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291DC80 */ _t31 = _t30 & 0x00000001u;
|
|
/* 0291DC80 */ if (_t31) goto L_0291DCF4; else goto L_0291DC84;
|
|
L_0291DC84: ; // 0x291dc84
|
|
/* 0291DC84 */ cpu->r[3] = cpu->r[29];
|
|
/* 0291DC84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291DC88 */ cpu->r[28] = 0x10110000u;
|
|
/* 0291DC8C */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291DC8C */ _t33 = _t32 & 0x00000001u;
|
|
/* 0291DC8C */ if (_t33) goto L_0291DC90; else goto L_0291DCBC;
|
|
L_0291DC90: ; // 0x291dc90
|
|
/* 0291DC90 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0291DC94 */ Gambit_fn_02801A78(cpu);
|
|
/* 0291DC98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291DC9C */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291DC9C */ _t35 = _t34 & 0x00000001u;
|
|
/* 0291DC9C */ if (_t35) goto L_0291DCA0; else goto L_0291DCBC;
|
|
L_0291DCA0: ; // 0x291dca0
|
|
/* 0291DCA0 */ cpu->r[7] = 0x10140000u;
|
|
/* 0291DCA4 */ _t36 = cpu->r[28] + 0x00007399u;
|
|
/* 0291DCA4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t36);
|
|
/* 0291DCA8 */ cpu->r[7] = cpu->r[7] + 0x0000193Cu;
|
|
/* 0291DCAC */ _t37 = cpu->r[29] + 0x00000000u;
|
|
/* 0291DCAC */ cpu->r[8] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0291DCB0 */ _t38 = cpu->r[29] + 0x00000004u;
|
|
/* 0291DCB0 */ rbrew_write32(cpu->mem, _t38, cpu->r[7]);
|
|
/* 0291DCB4 */ _t39 = cpu->r[8] + 0x00000000u;
|
|
/* 0291DCB4 */ rbrew_write8(cpu->mem, _t39, (uint8_t)cpu->r[0]);
|
|
/* 0291DCB8 */ goto L_0291DCF4;
|
|
L_0291DCBC: ; // 0x291dcbc
|
|
/* 0291DCBC */ cpu->r[5] = 0x10140000u;
|
|
/* 0291DCC0 */ cpu->r[0] = cpu->r[29] + 0x0000000Cu;
|
|
/* 0291DCC4 */ cpu->r[5] = cpu->r[5] + 0x0000189Cu;
|
|
/* 0291DCC8 */ _t40 = cpu->r[3] + 0x00000000u;
|
|
/* 0291DCC8 */ rbrew_write32(cpu->mem, _t40, cpu->r[0]);
|
|
/* 0291DCCC */ cpu->r[6] = 0x00000040u;
|
|
/* 0291DCD0 */ _t41 = cpu->r[3] + 0x00000004u;
|
|
/* 0291DCD0 */ rbrew_write32(cpu->mem, _t41, cpu->r[5]);
|
|
/* 0291DCD4 */ _t42 = cpu->r[3] + 0x00000008u;
|
|
/* 0291DCD4 */ rbrew_write32(cpu->mem, _t42, cpu->r[6]);
|
|
/* 0291DCD8 */ _t43 = cpu->r[28] + 0x00007399u;
|
|
/* 0291DCD8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t43);
|
|
/* 0291DCDC */ cpu->r[7] = 0x10140000u;
|
|
/* 0291DCE0 */ _t44 = cpu->r[29] + 0x00000000u;
|
|
/* 0291DCE0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t44);
|
|
/* 0291DCE4 */ cpu->r[7] = cpu->r[7] + 0x0000193Cu;
|
|
/* 0291DCE8 */ _t45 = cpu->r[29] + 0x0000004Bu;
|
|
/* 0291DCE8 */ rbrew_write8(cpu->mem, _t45, (uint8_t)cpu->r[0]);
|
|
/* 0291DCEC */ _t46 = cpu->r[29] + 0x00000004u;
|
|
/* 0291DCEC */ rbrew_write32(cpu->mem, _t46, cpu->r[7]);
|
|
/* 0291DCF0 */ _t47 = cpu->r[8] + 0x00000000u;
|
|
/* 0291DCF0 */ rbrew_write8(cpu->mem, _t47, (uint8_t)cpu->r[0]);
|
|
L_0291DCF4: ; // 0x291dcf4
|
|
/* 0291DCF4 */ cpu->r[9] = 0x10140000u;
|
|
/* 0291DCF8 */ cpu->r[12] = 0x00000002u;
|
|
/* 0291DCFC */ cpu->r[9] = cpu->r[9] + 0x00001AACu;
|
|
/* 0291DD00 */ cpu->r[0] = cpu->r[1] + 0x00000090u;
|
|
/* 0291DD04 */ _t48 = cpu->r[31] + 0x00000004u;
|
|
/* 0291DD04 */ rbrew_write32(cpu->mem, _t48, cpu->r[9]);
|
|
/* 0291DD08 */ cpu->r[11] = cpu->r[1] + 0x00000018u;
|
|
/* 0291DD0C */ _t49 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291DD0C */ rbrew_write32(cpu->mem, _t49, cpu->r[0]);
|
|
/* 0291DD10 */ cpu->r[0] = 0x00000000u;
|
|
/* 0291DD14 */ _t50 = cpu->r[1] + 0x00000010u;
|
|
/* 0291DD14 */ rbrew_write32(cpu->mem, _t50, cpu->r[11]);
|
|
/* 0291DD18 */ cpu->r[3] = cpu->r[31];
|
|
/* 0291DD1C */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0291DD20 */ _t51 = cpu->r[1] + 0x00000009u;
|
|
/* 0291DD20 */ rbrew_write8(cpu->mem, _t51, (uint8_t)cpu->r[0]);
|
|
/* 0291DD24 */ cpu->r[4] = cpu->r[30];
|
|
/* 0291DD28 */ _t52 = cpu->r[1] + 0x00000008u;
|
|
/* 0291DD28 */ rbrew_write8(cpu->mem, _t52, (uint8_t)cpu->r[12]);
|
|
/* 0291DD2C */ Gambit_fn_0282A5DC(cpu);
|
|
L_0291DD30: ; // 0x291dd30
|
|
/* 0291DD30 */ _t53 = cpu->r[1] + 0x00000078u;
|
|
/* 0291DD30 */ cpu->r[28] = rbrew_read32(cpu->mem, _t53);
|
|
/* 0291DD34 */ _t54 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0291DD34 */ cpu->r[29] = rbrew_read32(cpu->mem, _t54);
|
|
/* 0291DD38 */ _t55 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0291DD38 */ cpu->r[0] = rbrew_read32(cpu->mem, _t55);
|
|
/* 0291DD3C */ cpu->r[3] = cpu->r[31];
|
|
/* 0291DD40 */ _t56 = cpu->r[1] + 0x00000080u;
|
|
/* 0291DD40 */ cpu->r[30] = rbrew_read32(cpu->mem, _t56);
|
|
/* 0291DD44 */ cpu->lr = cpu->r[0];
|
|
/* 0291DD48 */ _t57 = cpu->r[1] + 0x00000084u;
|
|
/* 0291DD48 */ cpu->r[31] = rbrew_read32(cpu->mem, _t57);
|
|
/* 0291DD4C */ cpu->r[1] = cpu->r[1] + 0x00000088u;
|
|
/* 0291DD50 */ return;
|
|
}
|
|
|
|
// fn_0291DBF4 @ 0x291dbf4
|
|
void Gambit_fn_0291DBF4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _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_0291DBF4: ; // 0x291dbf4
|
|
/* 0291DBF4 */ _t0 = cpu->r[1] + 0xFFFFFF78u;
|
|
/* 0291DBF4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291DBF4 */ cpu->r[1] = _t0;
|
|
/* 0291DBF8 */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 0291DBF8 */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 0291DBFC */ _t2 = cpu->r[1] + 0x00000084u;
|
|
/* 0291DBFC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0291DC00 */ _t3 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0291DC00 */ rbrew_write32(cpu->mem, _t3, cpu->r[8]);
|
|
/* 0291DC04 */ _t4 = cpu->r[1] + 0x00000020u;
|
|
/* 0291DC04 */ rbrew_write32(cpu->mem, _t4, cpu->r[5]);
|
|
/* 0291DC08 */ _t5 = cpu->r[1] + 0x00000018u;
|
|
/* 0291DC08 */ rbrew_write32(cpu->mem, _t5, cpu->r[3]);
|
|
/* 0291DC0C */ _t6 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0291DC0C */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0291DC10 */ _t7 = cpu->r[1] + 0x00000078u;
|
|
/* 0291DC10 */ rbrew_write32(cpu->mem, _t7, cpu->r[28]);
|
|
/* 0291DC14 */ _t8 = cpu->r[1] + 0x00000080u;
|
|
/* 0291DC14 */ rbrew_write32(cpu->mem, _t8, cpu->r[30]);
|
|
/* 0291DC18 */ _t9 = cpu->r[1] + 0x00000024u;
|
|
/* 0291DC18 */ rbrew_write32(cpu->mem, _t9, cpu->r[6]);
|
|
/* 0291DC1C */ _t10 = cpu->r[1] + 0x00000030u;
|
|
/* 0291DC1C */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 0291DC20 */ _t11 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0291DC20 */ rbrew_write32(cpu->mem, _t11, cpu->r[29]);
|
|
/* 0291DC24 */ _t12 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0291DC24 */ rbrew_write32(cpu->mem, _t12, cpu->r[4]);
|
|
/* 0291DC28 */ _t13 = cpu->r[1] + 0x00000028u;
|
|
/* 0291DC28 */ rbrew_write32(cpu->mem, _t13, cpu->r[7]);
|
|
/* 0291DC2C */ _t14 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 0291DC2C */ _t15 = _t14 & 0x00000001u;
|
|
/* 0291DC2C */ if (_t15) goto L_0291DC30; else goto L_0291DC50;
|
|
L_0291DC30: ; // 0x291dc30
|
|
/* 0291DC30 */ _t16 = cpu->r[1] + 0x00000048u;
|
|
/* 0291DC30 */ rbrew_write_f64(cpu->mem, _t16, cpu->f[3]);
|
|
/* 0291DC34 */ _t17 = cpu->r[1] + 0x00000068u;
|
|
/* 0291DC34 */ rbrew_write_f64(cpu->mem, _t17, cpu->f[7]);
|
|
/* 0291DC38 */ _t18 = cpu->r[1] + 0x00000060u;
|
|
/* 0291DC38 */ rbrew_write_f64(cpu->mem, _t18, cpu->f[6]);
|
|
/* 0291DC3C */ _t19 = cpu->r[1] + 0x00000040u;
|
|
/* 0291DC3C */ rbrew_write_f64(cpu->mem, _t19, cpu->f[2]);
|
|
/* 0291DC40 */ _t20 = cpu->r[1] + 0x00000050u;
|
|
/* 0291DC40 */ rbrew_write_f64(cpu->mem, _t20, cpu->f[4]);
|
|
/* 0291DC44 */ _t21 = cpu->r[1] + 0x00000070u;
|
|
/* 0291DC44 */ rbrew_write_f64(cpu->mem, _t21, cpu->f[8]);
|
|
/* 0291DC48 */ _t22 = cpu->r[1] + 0x00000058u;
|
|
/* 0291DC48 */ rbrew_write_f64(cpu->mem, _t22, cpu->f[5]);
|
|
/* 0291DC4C */ _t23 = cpu->r[1] + 0x00000038u;
|
|
/* 0291DC4C */ rbrew_write_f64(cpu->mem, _t23, cpu->f[1]);
|
|
L_0291DC50: ; // 0x291dc50
|
|
/* 0291DC50 */ cpu->r[31] = cpu->r[3];
|
|
/* 0291DC50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0291DC54 */ cpu->r[30] = cpu->r[4];
|
|
/* 0291DC58 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291DC58 */ _t25 = _t24 & 0x00000001u;
|
|
/* 0291DC58 */ if (_t25) goto L_0291DC5C; else goto L_0291DC6C;
|
|
L_0291DC5C: ; // 0x291dc5c
|
|
/* 0291DC5C */ cpu->r[3] = 0x0000004Cu;
|
|
/* 0291DC60 */ Gambit_fn_02801A78(cpu);
|
|
/* 0291DC64 */ cpu->r[31] = cpu->r[3];
|
|
/* 0291DC64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0291DC68 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291DC68 */ _t27 = _t26 & 0x00000001u;
|
|
/* 0291DC68 */ if (_t27) goto L_0291DD30; else goto L_0291DC6C;
|
|
L_0291DC6C: ; // 0x291dc6c
|
|
/* 0291DC6C */ cpu->r[29] = cpu->r[31];
|
|
/* 0291DC6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0291DC70 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291DC70 */ _t29 = _t28 & 0x00000001u;
|
|
/* 0291DC70 */ if (_t29) goto L_0291DC74; else goto L_0291DC84;
|
|
L_0291DC74: ; // 0x291dc74
|
|
/* 0291DC74 */ cpu->r[3] = 0x0000004Cu;
|
|
/* 0291DC78 */ Gambit_fn_02801A78(cpu);
|
|
/* 0291DC7C */ cpu->r[29] = cpu->r[3];
|
|
/* 0291DC7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0291DC80 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291DC80 */ _t31 = _t30 & 0x00000001u;
|
|
/* 0291DC80 */ if (_t31) goto L_0291DCF4; else goto L_0291DC84;
|
|
L_0291DC84: ; // 0x291dc84
|
|
/* 0291DC84 */ cpu->r[3] = cpu->r[29];
|
|
/* 0291DC84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291DC88 */ cpu->r[28] = 0x10110000u;
|
|
/* 0291DC8C */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291DC8C */ _t33 = _t32 & 0x00000001u;
|
|
/* 0291DC8C */ if (_t33) goto L_0291DC90; else goto L_0291DCBC;
|
|
L_0291DC90: ; // 0x291dc90
|
|
/* 0291DC90 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0291DC94 */ Gambit_fn_02801A78(cpu);
|
|
/* 0291DC98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291DC9C */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291DC9C */ _t35 = _t34 & 0x00000001u;
|
|
/* 0291DC9C */ if (_t35) goto L_0291DCA0; else goto L_0291DCBC;
|
|
L_0291DCA0: ; // 0x291dca0
|
|
/* 0291DCA0 */ cpu->r[7] = 0x10140000u;
|
|
/* 0291DCA4 */ _t36 = cpu->r[28] + 0x00007399u;
|
|
/* 0291DCA4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t36);
|
|
/* 0291DCA8 */ cpu->r[7] = cpu->r[7] + 0x0000193Cu;
|
|
/* 0291DCAC */ _t37 = cpu->r[29] + 0x00000000u;
|
|
/* 0291DCAC */ cpu->r[8] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0291DCB0 */ _t38 = cpu->r[29] + 0x00000004u;
|
|
/* 0291DCB0 */ rbrew_write32(cpu->mem, _t38, cpu->r[7]);
|
|
/* 0291DCB4 */ _t39 = cpu->r[8] + 0x00000000u;
|
|
/* 0291DCB4 */ rbrew_write8(cpu->mem, _t39, (uint8_t)cpu->r[0]);
|
|
/* 0291DCB8 */ goto L_0291DCF4;
|
|
L_0291DCBC: ; // 0x291dcbc
|
|
/* 0291DCBC */ cpu->r[5] = 0x10140000u;
|
|
/* 0291DCC0 */ cpu->r[0] = cpu->r[29] + 0x0000000Cu;
|
|
/* 0291DCC4 */ cpu->r[5] = cpu->r[5] + 0x0000189Cu;
|
|
/* 0291DCC8 */ _t40 = cpu->r[3] + 0x00000000u;
|
|
/* 0291DCC8 */ rbrew_write32(cpu->mem, _t40, cpu->r[0]);
|
|
/* 0291DCCC */ cpu->r[6] = 0x00000040u;
|
|
/* 0291DCD0 */ _t41 = cpu->r[3] + 0x00000004u;
|
|
/* 0291DCD0 */ rbrew_write32(cpu->mem, _t41, cpu->r[5]);
|
|
/* 0291DCD4 */ _t42 = cpu->r[3] + 0x00000008u;
|
|
/* 0291DCD4 */ rbrew_write32(cpu->mem, _t42, cpu->r[6]);
|
|
/* 0291DCD8 */ _t43 = cpu->r[28] + 0x00007399u;
|
|
/* 0291DCD8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t43);
|
|
/* 0291DCDC */ cpu->r[7] = 0x10140000u;
|
|
/* 0291DCE0 */ _t44 = cpu->r[29] + 0x00000000u;
|
|
/* 0291DCE0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t44);
|
|
/* 0291DCE4 */ cpu->r[7] = cpu->r[7] + 0x0000193Cu;
|
|
/* 0291DCE8 */ _t45 = cpu->r[29] + 0x0000004Bu;
|
|
/* 0291DCE8 */ rbrew_write8(cpu->mem, _t45, (uint8_t)cpu->r[0]);
|
|
/* 0291DCEC */ _t46 = cpu->r[29] + 0x00000004u;
|
|
/* 0291DCEC */ rbrew_write32(cpu->mem, _t46, cpu->r[7]);
|
|
/* 0291DCF0 */ _t47 = cpu->r[8] + 0x00000000u;
|
|
/* 0291DCF0 */ rbrew_write8(cpu->mem, _t47, (uint8_t)cpu->r[0]);
|
|
L_0291DCF4: ; // 0x291dcf4
|
|
/* 0291DCF4 */ cpu->r[9] = 0x10140000u;
|
|
/* 0291DCF8 */ cpu->r[12] = 0x00000002u;
|
|
/* 0291DCFC */ cpu->r[9] = cpu->r[9] + 0x00001AACu;
|
|
/* 0291DD00 */ cpu->r[0] = cpu->r[1] + 0x00000090u;
|
|
/* 0291DD04 */ _t48 = cpu->r[31] + 0x00000004u;
|
|
/* 0291DD04 */ rbrew_write32(cpu->mem, _t48, cpu->r[9]);
|
|
/* 0291DD08 */ cpu->r[11] = cpu->r[1] + 0x00000018u;
|
|
/* 0291DD0C */ _t49 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291DD0C */ rbrew_write32(cpu->mem, _t49, cpu->r[0]);
|
|
/* 0291DD10 */ cpu->r[0] = 0x00000000u;
|
|
/* 0291DD14 */ _t50 = cpu->r[1] + 0x00000010u;
|
|
/* 0291DD14 */ rbrew_write32(cpu->mem, _t50, cpu->r[11]);
|
|
/* 0291DD18 */ cpu->r[3] = cpu->r[31];
|
|
/* 0291DD1C */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0291DD20 */ _t51 = cpu->r[1] + 0x00000009u;
|
|
/* 0291DD20 */ rbrew_write8(cpu->mem, _t51, (uint8_t)cpu->r[0]);
|
|
/* 0291DD24 */ cpu->r[4] = cpu->r[30];
|
|
/* 0291DD28 */ _t52 = cpu->r[1] + 0x00000008u;
|
|
/* 0291DD28 */ rbrew_write8(cpu->mem, _t52, (uint8_t)cpu->r[12]);
|
|
/* 0291DD2C */ Gambit_fn_0282A5DC(cpu);
|
|
L_0291DD30: ; // 0x291dd30
|
|
/* 0291DD30 */ _t53 = cpu->r[1] + 0x00000078u;
|
|
/* 0291DD30 */ cpu->r[28] = rbrew_read32(cpu->mem, _t53);
|
|
/* 0291DD34 */ _t54 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0291DD34 */ cpu->r[29] = rbrew_read32(cpu->mem, _t54);
|
|
/* 0291DD38 */ _t55 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0291DD38 */ cpu->r[0] = rbrew_read32(cpu->mem, _t55);
|
|
/* 0291DD3C */ cpu->r[3] = cpu->r[31];
|
|
/* 0291DD40 */ _t56 = cpu->r[1] + 0x00000080u;
|
|
/* 0291DD40 */ cpu->r[30] = rbrew_read32(cpu->mem, _t56);
|
|
/* 0291DD44 */ cpu->lr = cpu->r[0];
|
|
/* 0291DD48 */ _t57 = cpu->r[1] + 0x00000084u;
|
|
/* 0291DD48 */ cpu->r[31] = rbrew_read32(cpu->mem, _t57);
|
|
/* 0291DD4C */ cpu->r[1] = cpu->r[1] + 0x00000088u;
|
|
/* 0291DD50 */ return;
|
|
}
|
|
|
|
// fn_0291DD54 @ 0x291dd54
|
|
void Gambit_fn_0291DD54(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_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t0;
|
|
/* 02801B38 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02801B48 */ _t3 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02801B50 */ if (_t5) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02801B60 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 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 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B74 */ if (_t9) 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 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02801B84 */ if (_t11) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t12 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02801B8C */ _t13 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02801BA0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
L_0291DD54: ; // 0x291dd54
|
|
/* 0291DD54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291DD58 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291DD58 */ _t17 = _t16 & 0x00000001u;
|
|
/* 0291DD58 */ if (_t17) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0291DD58 */ goto L_0291DD5C;
|
|
L_0291DD5C: ; // 0x291dd5c
|
|
/* 0291DD5C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0291DD5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0291DD60 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291DD60 */ _t19 = _t18 & 0x00000001u;
|
|
/* 0291DD60 */ if (_t19) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0291DD60 */ goto L_0291DD64;
|
|
L_0291DD64: ; // 0x291dd64
|
|
/* 0291DD64 */ goto L_02801BB0;
|
|
}
|
|
|
|
// fn_0291DD6C @ 0x291dd6c
|
|
void Gambit_fn_0291DD6C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _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_0291DD6C: ; // 0x291dd6c
|
|
/* 0291DD6C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0291DD6C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291DD6C */ cpu->r[1] = _t0;
|
|
/* 0291DD70 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291DD70 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 0291DD74 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0291DD74 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0291DD78 */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 0291DD78 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 0291DD7C */ cpu->r[31] = cpu->r[3];
|
|
/* 0291DD7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0291DD80 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0291DD80 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0291DD84 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291DD84 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0291DD84 */ if (_t6) goto L_0291DD88; else goto L_0291DD98;
|
|
L_0291DD88: ; // 0x291dd88
|
|
/* 0291DD88 */ cpu->r[3] = 0x0000003Cu;
|
|
/* 0291DD8C */ Gambit_fn_02801A78(cpu);
|
|
/* 0291DD90 */ cpu->r[31] = cpu->r[3];
|
|
/* 0291DD90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0291DD94 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291DD94 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0291DD94 */ if (_t8) goto L_0291DE20; else goto L_0291DD98;
|
|
L_0291DD98: ; // 0x291dd98
|
|
/* 0291DD98 */ cpu->r[29] = 0x10140000u;
|
|
/* 0291DD9C */ cpu->r[3] = cpu->r[31] + 0x00000004u;
|
|
/* 0291DD9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291DDA0 */ cpu->r[30] = 0x10110000u;
|
|
/* 0291DDA4 */ cpu->r[29] = cpu->r[29] + 0x00001884u;
|
|
/* 0291DDA8 */ cpu->r[30] = cpu->r[30] + 0x00007399u;
|
|
/* 0291DDAC */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291DDAC */ _t10 = _t9 & 0x00000001u;
|
|
/* 0291DDAC */ if (_t10) goto L_0291DDB0; else goto L_0291DDC0;
|
|
L_0291DDB0: ; // 0x291ddb0
|
|
/* 0291DDB0 */ cpu->r[3] = 0x00000008u;
|
|
/* 0291DDB4 */ Gambit_fn_02801A78(cpu);
|
|
/* 0291DDB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291DDBC */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291DDBC */ _t12 = _t11 & 0x00000001u;
|
|
/* 0291DDBC */ if (_t12) goto L_0291DDC8; else goto L_0291DDC0;
|
|
L_0291DDC0: ; // 0x291ddc0
|
|
/* 0291DDC0 */ _t13 = cpu->r[3] + 0x00000000u;
|
|
/* 0291DDC0 */ rbrew_write32(cpu->mem, _t13, cpu->r[30]);
|
|
/* 0291DDC4 */ _t14 = cpu->r[3] + 0x00000004u;
|
|
/* 0291DDC4 */ rbrew_write32(cpu->mem, _t14, cpu->r[29]);
|
|
L_0291DDC8: ; // 0x291ddc8
|
|
/* 0291DDC8 */ cpu->r[3] = cpu->r[31] + 0x00000010u;
|
|
/* 0291DDC8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291DDCC */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291DDCC */ _t16 = _t15 & 0x00000001u;
|
|
/* 0291DDCC */ if (_t16) goto L_0291DDD0; else goto L_0291DDE0;
|
|
L_0291DDD0: ; // 0x291ddd0
|
|
/* 0291DDD0 */ cpu->r[3] = 0x00000008u;
|
|
/* 0291DDD4 */ Gambit_fn_02801A78(cpu);
|
|
/* 0291DDD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291DDDC */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291DDDC */ _t18 = _t17 & 0x00000001u;
|
|
/* 0291DDDC */ if (_t18) goto L_0291DDE8; else goto L_0291DDE0;
|
|
L_0291DDE0: ; // 0x291dde0
|
|
/* 0291DDE0 */ _t19 = cpu->r[3] + 0x00000000u;
|
|
/* 0291DDE0 */ rbrew_write32(cpu->mem, _t19, cpu->r[30]);
|
|
/* 0291DDE4 */ _t20 = cpu->r[3] + 0x00000004u;
|
|
/* 0291DDE4 */ rbrew_write32(cpu->mem, _t20, cpu->r[29]);
|
|
L_0291DDE8: ; // 0x291dde8
|
|
/* 0291DDE8 */ cpu->r[3] = cpu->r[31] + 0x00000024u;
|
|
/* 0291DDE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291DDEC */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291DDEC */ _t22 = _t21 & 0x00000001u;
|
|
/* 0291DDEC */ if (_t22) goto L_0291DDF0; else goto L_0291DE00;
|
|
L_0291DDF0: ; // 0x291ddf0
|
|
/* 0291DDF0 */ cpu->r[3] = 0x00000010u;
|
|
/* 0291DDF4 */ Gambit_fn_02801A78(cpu);
|
|
/* 0291DDF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291DDFC */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291DDFC */ _t24 = _t23 & 0x00000001u;
|
|
/* 0291DDFC */ if (_t24) goto L_0291DE20; else goto L_0291DE00;
|
|
L_0291DE00: ; // 0x291de00
|
|
/* 0291DE00 */ cpu->r[11] = 0x10110000u;
|
|
/* 0291DE04 */ _t25 = cpu->r[11] + 0x00004468u;
|
|
/* 0291DE04 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 0291DE08 */ _t26 = cpu->r[3] + 0x00000000u;
|
|
/* 0291DE08 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[0]);
|
|
/* 0291DE0C */ _t27 = cpu->r[3] + 0x00000004u;
|
|
/* 0291DE0C */ rbrew_write_f32(cpu->mem, _t27, cpu->f[0]);
|
|
/* 0291DE10 */ cpu->r[12] = 0x10110000u;
|
|
/* 0291DE14 */ _t28 = cpu->r[3] + 0x00000008u;
|
|
/* 0291DE14 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[0]);
|
|
/* 0291DE18 */ _t29 = cpu->r[12] + 0x00004464u;
|
|
/* 0291DE18 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 0291DE1C */ _t30 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0291DE1C */ rbrew_write_f32(cpu->mem, _t30, cpu->f[0]);
|
|
L_0291DE20: ; // 0x291de20
|
|
/* 0291DE20 */ _t31 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291DE20 */ cpu->r[29] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0291DE24 */ _t32 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0291DE24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0291DE28 */ cpu->r[3] = cpu->r[31];
|
|
/* 0291DE2C */ _t33 = cpu->r[1] + 0x00000010u;
|
|
/* 0291DE2C */ cpu->r[30] = rbrew_read32(cpu->mem, _t33);
|
|
/* 0291DE30 */ cpu->lr = cpu->r[0];
|
|
/* 0291DE34 */ _t34 = cpu->r[1] + 0x00000014u;
|
|
/* 0291DE34 */ cpu->r[31] = rbrew_read32(cpu->mem, _t34);
|
|
/* 0291DE38 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0291DE3C */ return;
|
|
}
|
|
|
|
// fn_0291DE40 @ 0x291de40
|
|
void Gambit_fn_0291DE40(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_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t0;
|
|
/* 02801B38 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02801B48 */ _t3 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02801B50 */ if (_t5) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02801B60 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 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 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B74 */ if (_t9) 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 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02801B84 */ if (_t11) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t12 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02801B8C */ _t13 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02801BA0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
L_0291DE40: ; // 0x291de40
|
|
/* 0291DE40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291DE44 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291DE44 */ _t17 = _t16 & 0x00000001u;
|
|
/* 0291DE44 */ if (_t17) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0291DE44 */ goto L_0291DE48;
|
|
L_0291DE48: ; // 0x291de48
|
|
/* 0291DE48 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0291DE48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0291DE4C */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291DE4C */ _t19 = _t18 & 0x00000001u;
|
|
/* 0291DE4C */ if (_t19) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0291DE4C */ goto L_0291DE50;
|
|
L_0291DE50: ; // 0x291de50
|
|
/* 0291DE50 */ goto L_02801BB0;
|
|
}
|
|
|
|
// fn_0291DE54 @ 0x291de54
|
|
void Gambit_fn_0291DE54(CPUState* cpu) {
|
|
L_0291DE54: ; // 0x291de54
|
|
/* 0291DE54 */ return;
|
|
}
|
|
|
|
// fn_0291DE58 @ 0x291de58
|
|
void Gambit_fn_0291DE58(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_0291DE58: ; // 0x291de58
|
|
/* 0291DE58 */ cpu->r[0] = cpu->lr;
|
|
/* 0291DE5C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0291DE5C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291DE5C */ cpu->r[1] = _t0;
|
|
/* 0291DE60 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291DE60 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0291DE64 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0291DE64 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0291DE68 */ cpu->r[30] = cpu->r[3];
|
|
/* 0291DE68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0291DE6C */ cpu->r[31] = cpu->r[4];
|
|
/* 0291DE70 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0291DE70 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0291DE74 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291DE74 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0291DE74 */ if (_t5) goto L_0291DECC; else goto L_0291DE78;
|
|
L_0291DE78: ; // 0x291de78
|
|
/* 0291DE78 */ cpu->r[0] = 0x10140000u;
|
|
/* 0291DE7C */ cpu->r[12] = 0x00000001u;
|
|
/* 0291DE80 */ cpu->r[4] = 0x00000002u;
|
|
/* 0291DE84 */ cpu->r[0] = cpu->r[0] + 0x000019FCu;
|
|
/* 0291DE88 */ _t6 = cpu->r[30] + 0x0000008Cu;
|
|
/* 0291DE88 */ rbrew_write8(cpu->mem, _t6, (uint8_t)cpu->r[12]);
|
|
/* 0291DE8C */ cpu->r[3] = cpu->r[30] + 0x00000364u;
|
|
/* 0291DE90 */ _t7 = cpu->r[30] + 0x000000A8u;
|
|
/* 0291DE90 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 0291DE94 */ Gambit_fn_028FA208(cpu);
|
|
/* 0291DE98 */ cpu->r[4] = 0x00000002u;
|
|
/* 0291DE9C */ cpu->r[3] = cpu->r[30] + 0x00000208u;
|
|
/* 0291DEA0 */ Gambit_fn_028FA208(cpu);
|
|
/* 0291DEA4 */ cpu->r[4] = 0x00000002u;
|
|
/* 0291DEA8 */ cpu->r[3] = cpu->r[30] + 0x000000ACu;
|
|
/* 0291DEAC */ Gambit_fn_028FA208(cpu);
|
|
/* 0291DEB0 */ cpu->r[4] = 0x00000000u;
|
|
/* 0291DEB4 */ cpu->r[3] = cpu->r[30];
|
|
/* 0291DEB8 */ Gambit_fn_02915770(cpu);
|
|
/* 0291DEBC */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0291DEBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0291DEC0 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291DEC0 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0291DEC0 */ if (_t9) goto L_0291DECC; else goto L_0291DEC4;
|
|
L_0291DEC4: ; // 0x291dec4
|
|
/* 0291DEC4 */ cpu->r[3] = cpu->r[30];
|
|
/* 0291DEC8 */ Gambit_fn_02801BB0(cpu);
|
|
L_0291DECC: ; // 0x291decc
|
|
/* 0291DECC */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0291DECC */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0291DED0 */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 0291DED0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0291DED4 */ cpu->lr = cpu->r[0];
|
|
/* 0291DED8 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291DED8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0291DEDC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0291DEE0 */ return;
|
|
}
|
|
|
|
// fn_0291DE5C @ 0x291de5c
|
|
void Gambit_fn_0291DE5C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_0291DE5C: ; // 0x291de5c
|
|
/* 0291DE5C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0291DE5C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291DE5C */ cpu->r[1] = _t0;
|
|
/* 0291DE60 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291DE60 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0291DE64 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0291DE64 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0291DE68 */ cpu->r[30] = cpu->r[3];
|
|
/* 0291DE68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0291DE6C */ cpu->r[31] = cpu->r[4];
|
|
/* 0291DE70 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0291DE70 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0291DE74 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291DE74 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0291DE74 */ if (_t5) goto L_0291DECC; else goto L_0291DE78;
|
|
L_0291DE78: ; // 0x291de78
|
|
/* 0291DE78 */ cpu->r[0] = 0x10140000u;
|
|
/* 0291DE7C */ cpu->r[12] = 0x00000001u;
|
|
/* 0291DE80 */ cpu->r[4] = 0x00000002u;
|
|
/* 0291DE84 */ cpu->r[0] = cpu->r[0] + 0x000019FCu;
|
|
/* 0291DE88 */ _t6 = cpu->r[30] + 0x0000008Cu;
|
|
/* 0291DE88 */ rbrew_write8(cpu->mem, _t6, (uint8_t)cpu->r[12]);
|
|
/* 0291DE8C */ cpu->r[3] = cpu->r[30] + 0x00000364u;
|
|
/* 0291DE90 */ _t7 = cpu->r[30] + 0x000000A8u;
|
|
/* 0291DE90 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 0291DE94 */ Gambit_fn_028FA208(cpu);
|
|
/* 0291DE98 */ cpu->r[4] = 0x00000002u;
|
|
/* 0291DE9C */ cpu->r[3] = cpu->r[30] + 0x00000208u;
|
|
/* 0291DEA0 */ Gambit_fn_028FA208(cpu);
|
|
/* 0291DEA4 */ cpu->r[4] = 0x00000002u;
|
|
/* 0291DEA8 */ cpu->r[3] = cpu->r[30] + 0x000000ACu;
|
|
/* 0291DEAC */ Gambit_fn_028FA208(cpu);
|
|
/* 0291DEB0 */ cpu->r[4] = 0x00000000u;
|
|
/* 0291DEB4 */ cpu->r[3] = cpu->r[30];
|
|
/* 0291DEB8 */ Gambit_fn_02915770(cpu);
|
|
/* 0291DEBC */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0291DEBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0291DEC0 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291DEC0 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0291DEC0 */ if (_t9) goto L_0291DECC; else goto L_0291DEC4;
|
|
L_0291DEC4: ; // 0x291dec4
|
|
/* 0291DEC4 */ cpu->r[3] = cpu->r[30];
|
|
/* 0291DEC8 */ Gambit_fn_02801BB0(cpu);
|
|
L_0291DECC: ; // 0x291decc
|
|
/* 0291DECC */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0291DECC */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0291DED0 */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 0291DED0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0291DED4 */ cpu->lr = cpu->r[0];
|
|
/* 0291DED8 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291DED8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0291DEDC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0291DEE0 */ return;
|
|
}
|
|
|
|
// fn_0291DEE4 @ 0x291dee4
|
|
void Gambit_fn_0291DEE4(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_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t0;
|
|
/* 02801B38 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02801B48 */ _t3 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02801B50 */ if (_t5) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02801B60 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 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 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B74 */ if (_t9) 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 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02801B84 */ if (_t11) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t12 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02801B8C */ _t13 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02801BA0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
L_0291DEE4: ; // 0x291dee4
|
|
/* 0291DEE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291DEE8 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291DEE8 */ _t17 = _t16 & 0x00000001u;
|
|
/* 0291DEE8 */ if (_t17) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0291DEE8 */ goto L_0291DEEC;
|
|
L_0291DEEC: ; // 0x291deec
|
|
/* 0291DEEC */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0291DEEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0291DEF0 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291DEF0 */ _t19 = _t18 & 0x00000001u;
|
|
/* 0291DEF0 */ if (_t19) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0291DEF0 */ goto L_0291DEF4;
|
|
L_0291DEF4: ; // 0x291def4
|
|
/* 0291DEF4 */ goto L_02801BB0;
|
|
}
|
|
|
|
// fn_0291DEF8 @ 0x291def8
|
|
void Gambit_fn_0291DEF8(CPUState* cpu) {
|
|
L_0291DEF8: ; // 0x291def8
|
|
/* 0291DEF8 */ return;
|
|
}
|
|
|
|
// fn_0291DEFC @ 0x291defc
|
|
void Gambit_fn_0291DEFC(CPUState* cpu) {
|
|
L_0291DEFC: ; // 0x291defc
|
|
/* 0291DEFC */ cpu->r[3] = 0x00000001u;
|
|
/* 0291DF00 */ return;
|
|
}
|
|
|
|
// fn_0291DF04 @ 0x291df04
|
|
void Gambit_fn_0291DF04(CPUState* cpu) {
|
|
L_0291DF04: ; // 0x291df04
|
|
/* 0291DF04 */ cpu->r[3] = 0x00000000u;
|
|
/* 0291DF08 */ return;
|
|
}
|
|
|
|
// fn_0291DF0C @ 0x291df0c
|
|
void Gambit_fn_0291DF0C(CPUState* cpu) {
|
|
L_0291DF0C: ; // 0x291df0c
|
|
/* 0291DF0C */ cpu->r[3] = cpu->r[3] + 0x0000000Cu;
|
|
/* 0291DF10 */ return;
|
|
}
|
|
|
|
// fn_0291DF14 @ 0x291df14
|
|
void Gambit_fn_0291DF14(CPUState* cpu) {
|
|
L_0291DF14: ; // 0x291df14
|
|
/* 0291DF14 */ cpu->r[3] = cpu->r[3] + 0x0000000Cu;
|
|
/* 0291DF18 */ return;
|
|
}
|
|
|
|
// fn_0291DF1C @ 0x291df1c
|
|
void Gambit_fn_0291DF1C(CPUState* cpu) {
|
|
L_0291DF1C: ; // 0x291df1c
|
|
/* 0291DF1C */ cpu->r[3] = cpu->r[3] + 0x0000000Cu;
|
|
/* 0291DF20 */ return;
|
|
}
|
|
|
|
// fn_0291DF24 @ 0x291df24
|
|
void Gambit_fn_0291DF24(CPUState* cpu) {
|
|
L_0291DF24: ; // 0x291df24
|
|
/* 0291DF24 */ cpu->r[3] = cpu->r[3] + 0x0000000Cu;
|
|
/* 0291DF28 */ return;
|
|
}
|
|
|
|
// fn_0291DF2C @ 0x291df2c
|
|
void Gambit_fn_0291DF2C(CPUState* cpu) {
|
|
L_0291DF2C: ; // 0x291df2c
|
|
/* 0291DF2C */ cpu->r[3] = 0x00000001u;
|
|
/* 0291DF30 */ return;
|
|
}
|
|
|
|
// fn_0291DF34 @ 0x291df34
|
|
void Gambit_fn_0291DF34(CPUState* cpu) {
|
|
L_0291DF34: ; // 0x291df34
|
|
/* 0291DF34 */ cpu->r[3] = 0x00000002u;
|
|
/* 0291DF38 */ return;
|
|
}
|
|
|
|
// fn_0291DF3C @ 0x291df3c
|
|
void Gambit_fn_0291DF3C(CPUState* cpu) {
|
|
L_0291DF3C: ; // 0x291df3c
|
|
/* 0291DF3C */ cpu->r[3] = cpu->r[3] + 0x0000000Cu;
|
|
/* 0291DF40 */ return;
|
|
}
|
|
|
|
// fn_0291DF44 @ 0x291df44
|
|
void Gambit_fn_0291DF44(CPUState* cpu) {
|
|
L_0291DF44: ; // 0x291df44
|
|
/* 0291DF44 */ cpu->r[3] = cpu->r[3] + 0x0000000Cu;
|
|
/* 0291DF48 */ return;
|
|
}
|
|
|
|
// fn_0291DF4C @ 0x291df4c
|
|
void Gambit_fn_0291DF4C(CPUState* cpu) {
|
|
L_0291DF4C: ; // 0x291df4c
|
|
/* 0291DF4C */ cpu->r[3] = cpu->r[3] + 0x0000000Cu;
|
|
/* 0291DF50 */ return;
|
|
}
|
|
|
|
// fn_0291DF54 @ 0x291df54
|
|
void Gambit_fn_0291DF54(CPUState* cpu) {
|
|
L_0291DF54: ; // 0x291df54
|
|
/* 0291DF54 */ cpu->r[3] = cpu->r[3] + 0x0000000Cu;
|
|
/* 0291DF58 */ return;
|
|
}
|
|
|
|
// fn_0291DF5C @ 0x291df5c
|
|
void Gambit_fn_0291DF5C(CPUState* cpu) {
|
|
L_0291DF5C: ; // 0x291df5c
|
|
/* 0291DF5C */ cpu->r[3] = 0x00000004u;
|
|
/* 0291DF60 */ return;
|
|
}
|
|
|
|
// fn_0291DF64 @ 0x291df64
|
|
void Gambit_fn_0291DF64(CPUState* cpu) {
|
|
L_0291DF64: ; // 0x291df64
|
|
/* 0291DF64 */ cpu->r[3] = 0x00000001u;
|
|
/* 0291DF68 */ return;
|
|
}
|
|
|
|
// fn_0291DF6C @ 0x291df6c
|
|
void Gambit_fn_0291DF6C(CPUState* cpu) {
|
|
L_0291DF6C: ; // 0x291df6c
|
|
/* 0291DF6C */ cpu->r[3] = cpu->r[3] + 0x0000000Cu;
|
|
/* 0291DF70 */ return;
|
|
}
|
|
|
|
// fn_0291DF74 @ 0x291df74
|
|
void Gambit_fn_0291DF74(CPUState* cpu) {
|
|
L_0291DF74: ; // 0x291df74
|
|
/* 0291DF74 */ cpu->r[3] = cpu->r[3] + 0x0000000Cu;
|
|
/* 0291DF78 */ return;
|
|
}
|
|
|
|
// fn_0291DF7C @ 0x291df7c
|
|
void Gambit_fn_0291DF7C(CPUState* cpu) {
|
|
L_0291DF7C: ; // 0x291df7c
|
|
/* 0291DF7C */ cpu->r[3] = cpu->r[3] + 0x0000000Cu;
|
|
/* 0291DF80 */ return;
|
|
}
|
|
|
|
// fn_0291DF84 @ 0x291df84
|
|
void Gambit_fn_0291DF84(CPUState* cpu) {
|
|
L_0291DF84: ; // 0x291df84
|
|
/* 0291DF84 */ cpu->r[3] = 0x00000004u;
|
|
/* 0291DF88 */ return;
|
|
}
|
|
|
|
// fn_0291DF8C @ 0x291df8c
|
|
void Gambit_fn_0291DF8C(CPUState* cpu) {
|
|
L_0291DF8C: ; // 0x291df8c
|
|
/* 0291DF8C */ cpu->r[3] = 0x00000004u;
|
|
/* 0291DF90 */ return;
|
|
}
|
|
|
|
// fn_0291DF94 @ 0x291df94
|
|
void Gambit_fn_0291DF94(CPUState* cpu) {
|
|
L_0291DF94: ; // 0x291df94
|
|
/* 0291DF94 */ cpu->r[3] = cpu->r[3] + 0x0000000Cu;
|
|
/* 0291DF98 */ return;
|
|
}
|
|
|
|
// fn_0291DF9C @ 0x291df9c
|
|
void Gambit_fn_0291DF9C(CPUState* cpu) {
|
|
L_0291DF9C: ; // 0x291df9c
|
|
/* 0291DF9C */ cpu->r[3] = cpu->r[3] + 0x0000000Cu;
|
|
/* 0291DFA0 */ return;
|
|
}
|
|
|
|
// fn_0291DFA4 @ 0x291dfa4
|
|
void Gambit_fn_0291DFA4(CPUState* cpu) {
|
|
L_0291DFA4: ; // 0x291dfa4
|
|
/* 0291DFA4 */ cpu->r[3] = cpu->r[3] + 0x0000000Cu;
|
|
/* 0291DFA8 */ return;
|
|
}
|
|
|
|
// fn_0291DFAC @ 0x291dfac
|
|
void Gambit_fn_0291DFAC(CPUState* cpu) {
|
|
L_0291DFAC: ; // 0x291dfac
|
|
/* 0291DFAC */ cpu->r[3] = cpu->r[3] + 0x0000000Cu;
|
|
/* 0291DFB0 */ return;
|
|
}
|
|
|
|
// fn_0291DFB4 @ 0x291dfb4
|
|
void Gambit_fn_0291DFB4(CPUState* cpu) {
|
|
L_0291DFB4: ; // 0x291dfb4
|
|
/* 0291DFB4 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0291DFB8 */ return;
|
|
}
|
|
|
|
// fn_0291DFBC @ 0x291dfbc
|
|
void Gambit_fn_0291DFBC(CPUState* cpu) {
|
|
L_0291DFBC: ; // 0x291dfbc
|
|
/* 0291DFBC */ cpu->r[3] = 0x00000006u;
|
|
/* 0291DFC0 */ return;
|
|
}
|
|
|
|
// fn_0291DFC4 @ 0x291dfc4
|
|
void Gambit_fn_0291DFC4(CPUState* cpu) {
|
|
L_0291DFC4: ; // 0x291dfc4
|
|
/* 0291DFC4 */ cpu->r[3] = cpu->r[3] + 0x0000000Cu;
|
|
/* 0291DFC8 */ return;
|
|
}
|
|
|
|
// fn_0291DFCC @ 0x291dfcc
|
|
void Gambit_fn_0291DFCC(CPUState* cpu) {
|
|
L_0291DFCC: ; // 0x291dfcc
|
|
/* 0291DFCC */ cpu->r[3] = cpu->r[3] + 0x0000000Cu;
|
|
/* 0291DFD0 */ return;
|
|
}
|
|
|
|
// fn_0291DFD4 @ 0x291dfd4
|
|
void Gambit_fn_0291DFD4(CPUState* cpu) {
|
|
L_0291DFD4: ; // 0x291dfd4
|
|
/* 0291DFD4 */ cpu->r[3] = cpu->r[3] + 0x0000000Cu;
|
|
/* 0291DFD8 */ return;
|
|
}
|
|
|
|
// fn_0291DFDC @ 0x291dfdc
|
|
void Gambit_fn_0291DFDC(CPUState* cpu) {
|
|
L_0291DFDC: ; // 0x291dfdc
|
|
/* 0291DFDC */ cpu->r[3] = cpu->r[3] + 0x0000000Cu;
|
|
/* 0291DFE0 */ return;
|
|
}
|
|
|
|
// fn_0291DFE4 @ 0x291dfe4
|
|
void Gambit_fn_0291DFE4(CPUState* cpu) {
|
|
L_0291DFE4: ; // 0x291dfe4
|
|
/* 0291DFE4 */ cpu->r[3] = 0x00000010u;
|
|
/* 0291DFE8 */ return;
|
|
}
|
|
|
|
// fn_0291DFEC @ 0x291dfec
|
|
void Gambit_fn_0291DFEC(CPUState* cpu) {
|
|
L_0291DFEC: ; // 0x291dfec
|
|
/* 0291DFEC */ cpu->r[3] = 0x00000007u;
|
|
/* 0291DFF0 */ return;
|
|
}
|
|
|
|
// fn_0291DFF4 @ 0x291dff4
|
|
void Gambit_fn_0291DFF4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_0291DFF4: ; // 0x291dff4
|
|
/* 0291DFF4 */ cpu->r[0] = cpu->lr;
|
|
/* 0291DFF8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0291DFF8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291DFF8 */ cpu->r[1] = _t0;
|
|
/* 0291DFFC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291DFFC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0291E000 */ cpu->r[31] = cpu->r[3];
|
|
/* 0291E004 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0291E004 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0291E008 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0291E008 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0291E00C */ _t4 = cpu->r[12] + 0x00000014u;
|
|
/* 0291E00C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0291E010 */ cpu->ctr = cpu->r[0];
|
|
/* 0291E014 */ cpu->r[3] = cpu->r[31] + 0x0000000Cu;
|
|
/* 0291E018 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291E01C */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 0291E01C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0291E020 */ _t6 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0291E020 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0291E024 */ cpu->lr = cpu->r[0];
|
|
/* 0291E028 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291E028 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0291E02C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0291E030 */ return;
|
|
}
|
|
|
|
// fn_0291DFF8 @ 0x291dff8
|
|
void Gambit_fn_0291DFF8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_0291DFF8: ; // 0x291dff8
|
|
/* 0291DFF8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0291DFF8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291DFF8 */ cpu->r[1] = _t0;
|
|
/* 0291DFFC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291DFFC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0291E000 */ cpu->r[31] = cpu->r[3];
|
|
/* 0291E004 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0291E004 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0291E008 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0291E008 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0291E00C */ _t4 = cpu->r[12] + 0x00000014u;
|
|
/* 0291E00C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0291E010 */ cpu->ctr = cpu->r[0];
|
|
/* 0291E014 */ cpu->r[3] = cpu->r[31] + 0x0000000Cu;
|
|
/* 0291E018 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291E01C */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 0291E01C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0291E020 */ _t6 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0291E020 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0291E024 */ cpu->lr = cpu->r[0];
|
|
/* 0291E028 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291E028 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0291E02C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0291E030 */ return;
|
|
}
|
|
|
|
// fn_0291E034 @ 0x291e034
|
|
void Gambit_fn_0291E034(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_0291E034: ; // 0x291e034
|
|
/* 0291E034 */ cpu->r[0] = cpu->lr;
|
|
/* 0291E038 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0291E038 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291E038 */ cpu->r[1] = _t0;
|
|
/* 0291E03C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291E03C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0291E040 */ cpu->r[31] = cpu->r[3];
|
|
/* 0291E044 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0291E044 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0291E048 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0291E048 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0291E04C */ _t4 = cpu->r[12] + 0x00000014u;
|
|
/* 0291E04C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0291E050 */ cpu->ctr = cpu->r[0];
|
|
/* 0291E054 */ cpu->r[3] = cpu->r[31] + 0x0000000Cu;
|
|
/* 0291E058 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291E05C */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 0291E05C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0291E060 */ _t6 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0291E060 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0291E064 */ cpu->lr = cpu->r[0];
|
|
/* 0291E068 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291E068 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0291E06C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0291E070 */ return;
|
|
}
|
|
|
|
// fn_0291E038 @ 0x291e038
|
|
void Gambit_fn_0291E038(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_0291E038: ; // 0x291e038
|
|
/* 0291E038 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0291E038 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291E038 */ cpu->r[1] = _t0;
|
|
/* 0291E03C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291E03C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0291E040 */ cpu->r[31] = cpu->r[3];
|
|
/* 0291E044 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0291E044 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0291E048 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0291E048 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0291E04C */ _t4 = cpu->r[12] + 0x00000014u;
|
|
/* 0291E04C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0291E050 */ cpu->ctr = cpu->r[0];
|
|
/* 0291E054 */ cpu->r[3] = cpu->r[31] + 0x0000000Cu;
|
|
/* 0291E058 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291E05C */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 0291E05C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0291E060 */ _t6 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0291E060 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0291E064 */ cpu->lr = cpu->r[0];
|
|
/* 0291E068 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291E068 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0291E06C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0291E070 */ return;
|
|
}
|
|
|
|
// fn_0291E074 @ 0x291e074
|
|
void Gambit_fn_0291E074(CPUState* cpu) {
|
|
L_0291E074: ; // 0x291e074
|
|
/* 0291E074 */ cpu->r[3] = cpu->r[3] + 0x0000000Cu;
|
|
/* 0291E078 */ return;
|
|
}
|
|
|
|
// fn_0291E07C @ 0x291e07c
|
|
void Gambit_fn_0291E07C(CPUState* cpu) {
|
|
L_0291E07C: ; // 0x291e07c
|
|
/* 0291E07C */ cpu->r[3] = cpu->r[3] + 0x0000000Cu;
|
|
/* 0291E080 */ return;
|
|
}
|
|
|
|
// fn_0291E084 @ 0x291e084
|
|
void Gambit_fn_0291E084(CPUState* cpu) {
|
|
L_0291E084: ; // 0x291e084
|
|
/* 0291E084 */ cpu->r[3] = 0x00000020u;
|
|
/* 0291E088 */ return;
|
|
}
|
|
|
|
// fn_0291E08C @ 0x291e08c
|
|
void Gambit_fn_0291E08C(CPUState* cpu) {
|
|
L_0291E08C: ; // 0x291e08c
|
|
/* 0291E08C */ cpu->r[3] = 0x00000008u;
|
|
/* 0291E090 */ return;
|
|
}
|
|
|
|
// fn_0291E094 @ 0x291e094
|
|
void Gambit_fn_0291E094(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_0291E094: ; // 0x291e094
|
|
/* 0291E094 */ cpu->r[0] = cpu->lr;
|
|
/* 0291E098 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0291E098 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291E098 */ cpu->r[1] = _t0;
|
|
/* 0291E09C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291E09C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0291E0A0 */ cpu->r[31] = cpu->r[3];
|
|
/* 0291E0A4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0291E0A4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0291E0A8 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0291E0A8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0291E0AC */ _t4 = cpu->r[12] + 0x00000014u;
|
|
/* 0291E0AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0291E0B0 */ cpu->ctr = cpu->r[0];
|
|
/* 0291E0B4 */ cpu->r[3] = cpu->r[31] + 0x0000000Cu;
|
|
/* 0291E0B8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291E0BC */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 0291E0BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0291E0C0 */ _t6 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0291E0C0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0291E0C4 */ cpu->lr = cpu->r[0];
|
|
/* 0291E0C8 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291E0C8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0291E0CC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0291E0D0 */ return;
|
|
}
|
|
|
|
// fn_0291E098 @ 0x291e098
|
|
void Gambit_fn_0291E098(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_0291E098: ; // 0x291e098
|
|
/* 0291E098 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0291E098 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291E098 */ cpu->r[1] = _t0;
|
|
/* 0291E09C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291E09C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0291E0A0 */ cpu->r[31] = cpu->r[3];
|
|
/* 0291E0A4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0291E0A4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0291E0A8 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0291E0A8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0291E0AC */ _t4 = cpu->r[12] + 0x00000014u;
|
|
/* 0291E0AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0291E0B0 */ cpu->ctr = cpu->r[0];
|
|
/* 0291E0B4 */ cpu->r[3] = cpu->r[31] + 0x0000000Cu;
|
|
/* 0291E0B8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291E0BC */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 0291E0BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0291E0C0 */ _t6 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0291E0C0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0291E0C4 */ cpu->lr = cpu->r[0];
|
|
/* 0291E0C8 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291E0C8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0291E0CC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0291E0D0 */ return;
|
|
}
|
|
|
|
// fn_0291E0D4 @ 0x291e0d4
|
|
void Gambit_fn_0291E0D4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_0291E0D4: ; // 0x291e0d4
|
|
/* 0291E0D4 */ cpu->r[0] = cpu->lr;
|
|
/* 0291E0D8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0291E0D8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291E0D8 */ cpu->r[1] = _t0;
|
|
/* 0291E0DC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291E0DC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0291E0E0 */ cpu->r[31] = cpu->r[3];
|
|
/* 0291E0E4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0291E0E4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0291E0E8 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0291E0E8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0291E0EC */ _t4 = cpu->r[12] + 0x00000014u;
|
|
/* 0291E0EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0291E0F0 */ cpu->ctr = cpu->r[0];
|
|
/* 0291E0F4 */ cpu->r[3] = cpu->r[31] + 0x0000000Cu;
|
|
/* 0291E0F8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291E0FC */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 0291E0FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0291E100 */ _t6 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0291E100 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0291E104 */ cpu->lr = cpu->r[0];
|
|
/* 0291E108 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291E108 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0291E10C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0291E110 */ return;
|
|
}
|
|
|
|
// fn_0291E0D8 @ 0x291e0d8
|
|
void Gambit_fn_0291E0D8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_0291E0D8: ; // 0x291e0d8
|
|
/* 0291E0D8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0291E0D8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291E0D8 */ cpu->r[1] = _t0;
|
|
/* 0291E0DC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291E0DC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0291E0E0 */ cpu->r[31] = cpu->r[3];
|
|
/* 0291E0E4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0291E0E4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0291E0E8 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0291E0E8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0291E0EC */ _t4 = cpu->r[12] + 0x00000014u;
|
|
/* 0291E0EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0291E0F0 */ cpu->ctr = cpu->r[0];
|
|
/* 0291E0F4 */ cpu->r[3] = cpu->r[31] + 0x0000000Cu;
|
|
/* 0291E0F8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291E0FC */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 0291E0FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0291E100 */ _t6 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0291E100 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0291E104 */ cpu->lr = cpu->r[0];
|
|
/* 0291E108 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291E108 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0291E10C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0291E110 */ return;
|
|
}
|
|
|
|
// fn_0291E114 @ 0x291e114
|
|
void Gambit_fn_0291E114(CPUState* cpu) {
|
|
L_0291E114: ; // 0x291e114
|
|
/* 0291E114 */ cpu->r[3] = cpu->r[3] + 0x0000000Cu;
|
|
/* 0291E118 */ return;
|
|
}
|
|
|
|
// fn_0291E11C @ 0x291e11c
|
|
void Gambit_fn_0291E11C(CPUState* cpu) {
|
|
L_0291E11C: ; // 0x291e11c
|
|
/* 0291E11C */ cpu->r[3] = cpu->r[3] + 0x0000000Cu;
|
|
/* 0291E120 */ return;
|
|
}
|
|
|
|
// fn_0291E124 @ 0x291e124
|
|
void Gambit_fn_0291E124(CPUState* cpu) {
|
|
L_0291E124: ; // 0x291e124
|
|
/* 0291E124 */ cpu->r[3] = 0x00000040u;
|
|
/* 0291E128 */ return;
|
|
}
|
|
|
|
// fn_0291E12C @ 0x291e12c
|
|
void Gambit_fn_0291E12C(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_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t0;
|
|
/* 02801B38 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02801B48 */ _t3 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02801B50 */ if (_t5) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02801B60 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 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 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B74 */ if (_t9) 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 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02801B84 */ if (_t11) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t12 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02801B8C */ _t13 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02801BA0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
L_0291E12C: ; // 0x291e12c
|
|
/* 0291E12C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291E130 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291E130 */ _t17 = _t16 & 0x00000001u;
|
|
/* 0291E130 */ if (_t17) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0291E130 */ goto L_0291E134;
|
|
L_0291E134: ; // 0x291e134
|
|
/* 0291E134 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0291E134 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0291E138 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291E138 */ _t19 = _t18 & 0x00000001u;
|
|
/* 0291E138 */ if (_t19) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0291E138 */ goto L_0291E13C;
|
|
L_0291E13C: ; // 0x291e13c
|
|
/* 0291E13C */ goto L_02801BB0;
|
|
}
|
|
|
|
// fn_0291E140 @ 0x291e140
|
|
void Gambit_fn_0291E140(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_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t0;
|
|
/* 02801B38 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02801B48 */ _t3 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02801B50 */ if (_t5) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02801B60 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 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 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B74 */ if (_t9) 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 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02801B84 */ if (_t11) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t12 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02801B8C */ _t13 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02801BA0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
L_0291E140: ; // 0x291e140
|
|
/* 0291E140 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291E144 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291E144 */ _t17 = _t16 & 0x00000001u;
|
|
/* 0291E144 */ if (_t17) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0291E144 */ goto L_0291E148;
|
|
L_0291E148: ; // 0x291e148
|
|
/* 0291E148 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0291E148 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0291E14C */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291E14C */ _t19 = _t18 & 0x00000001u;
|
|
/* 0291E14C */ if (_t19) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0291E14C */ goto L_0291E150;
|
|
L_0291E150: ; // 0x291e150
|
|
/* 0291E150 */ goto L_02801BB0;
|
|
}
|
|
|
|
// fn_0291E154 @ 0x291e154
|
|
void Gambit_fn_0291E154(CPUState* cpu) {
|
|
L_0291E154: ; // 0x291e154
|
|
/* 0291E154 */ cpu->r[3] = 0x00000001u;
|
|
/* 0291E158 */ return;
|
|
}
|
|
|
|
// fn_0291E15C @ 0x291e15c
|
|
void Gambit_fn_0291E15C(CPUState* cpu) {
|
|
L_0291E15C: ; // 0x291e15c
|
|
/* 0291E15C */ return;
|
|
}
|
|
|
|
// fn_0291E160 @ 0x291e160
|
|
void Gambit_fn_0291E160(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_0291E160: ; // 0x291e160
|
|
/* 0291E160 */ _t0 = cpu->r[4] + 0x00000000u;
|
|
/* 0291E160 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0291E164 */ _t1 = cpu->r[3] + 0x00000010u;
|
|
/* 0291E164 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0291E168 */ _t2 = cpu->r[11] + 0x00000004u;
|
|
/* 0291E168 */ cpu->r[11] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0291E16C */ cpu->r[0] = cpu->r[11] ^ cpu->r[12];
|
|
/* 0291E170 */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 0291E174 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 0291E178 */ return;
|
|
}
|
|
|
|
// fn_0291E17C @ 0x291e17c
|
|
void Gambit_fn_0291E17C(CPUState* cpu) {
|
|
L_0291E17C: ; // 0x291e17c
|
|
/* 0291E17C */ return;
|
|
}
|
|
|
|
// fn_0291E180 @ 0x291e180
|
|
void Gambit_fn_0291E180(CPUState* cpu) {
|
|
L_0291E180: ; // 0x291e180
|
|
/* 0291E180 */ return;
|
|
}
|
|
|
|
// fn_0291E184 @ 0x291e184
|
|
void Gambit_fn_0291E184(CPUState* cpu) {
|
|
L_0291E184: ; // 0x291e184
|
|
/* 0291E184 */ return;
|
|
}
|
|
|
|
// fn_0291E188 @ 0x291e188
|
|
void Gambit_fn_0291E188(CPUState* cpu) {
|
|
L_0291E188: ; // 0x291e188
|
|
/* 0291E188 */ cpu->r[3] = 0x00000001u;
|
|
/* 0291E18C */ return;
|
|
}
|
|
|
|
// fn_0291E190 @ 0x291e190
|
|
void Gambit_fn_0291E190(CPUState* cpu) {
|
|
L_0291E190: ; // 0x291e190
|
|
/* 0291E190 */ return;
|
|
}
|
|
|
|
// fn_0291E194 @ 0x291e194
|
|
void Gambit_fn_0291E194(CPUState* cpu) {
|
|
L_0291E194: ; // 0x291e194
|
|
/* 0291E194 */ cpu->r[3] = 0x00000001u;
|
|
/* 0291E198 */ return;
|
|
}
|
|
|
|
// fn_0291E19C @ 0x291e19c
|
|
void Gambit_fn_0291E19C(CPUState* cpu) {
|
|
L_0291E19C: ; // 0x291e19c
|
|
/* 0291E19C */ return;
|
|
}
|
|
|
|
// fn_0291E1A0 @ 0x291e1a0
|
|
void Gambit_fn_0291E1A0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_0291E1A0: ; // 0x291e1a0
|
|
/* 0291E1A0 */ _t0 = cpu->r[4] + 0x00000000u;
|
|
/* 0291E1A0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0291E1A4 */ _t1 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0291E1A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0291E1A8 */ _t2 = cpu->r[11] + 0x00000008u;
|
|
/* 0291E1A8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0291E1AC */ cpu->r[0] = cpu->r[11] ^ cpu->r[12];
|
|
/* 0291E1B0 */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 0291E1B4 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 0291E1B8 */ return;
|
|
}
|
|
|
|
// fn_0291E1BC @ 0x291e1bc
|
|
void Gambit_fn_0291E1BC(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_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t0;
|
|
/* 02801B38 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02801B48 */ _t3 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02801B50 */ if (_t5) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02801B60 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 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 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B74 */ if (_t9) 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 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02801B84 */ if (_t11) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t12 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02801B8C */ _t13 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02801BA0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
L_0291E1BC: ; // 0x291e1bc
|
|
/* 0291E1BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291E1C0 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291E1C0 */ _t17 = _t16 & 0x00000001u;
|
|
/* 0291E1C0 */ if (_t17) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0291E1C0 */ goto L_0291E1C4;
|
|
L_0291E1C4: ; // 0x291e1c4
|
|
/* 0291E1C4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0291E1C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0291E1C8 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291E1C8 */ _t19 = _t18 & 0x00000001u;
|
|
/* 0291E1C8 */ if (_t19) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0291E1C8 */ goto L_0291E1CC;
|
|
L_0291E1CC: ; // 0x291e1cc
|
|
/* 0291E1CC */ goto L_02801BB0;
|
|
}
|
|
|
|
// fn_0291E1D0 @ 0x291e1d0
|
|
void Gambit_fn_0291E1D0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0291E1D0: ; // 0x291e1d0
|
|
/* 0291E1D0 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[5] * (int32_t)0x0000000Cu);
|
|
/* 0291E1D4 */ _t0 = cpu->r[4] + cpu->r[0];
|
|
/* 0291E1D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0291E1D8 */ cpu->r[12] = cpu->r[4] + cpu->r[0];
|
|
/* 0291E1DC */ _t1 = cpu->r[3] + 0x00000000u;
|
|
/* 0291E1DC */ rbrew_write_f32(cpu->mem, _t1, cpu->f[0]);
|
|
/* 0291E1E0 */ _t2 = cpu->r[12] + 0x00000004u;
|
|
/* 0291E1E0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 0291E1E4 */ _t3 = cpu->r[3] + 0x00000004u;
|
|
/* 0291E1E4 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[0]);
|
|
/* 0291E1E8 */ _t4 = cpu->r[12] + 0x00000008u;
|
|
/* 0291E1E8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 0291E1EC */ _t5 = cpu->r[3] + 0x00000008u;
|
|
/* 0291E1EC */ rbrew_write_f32(cpu->mem, _t5, cpu->f[0]);
|
|
/* 0291E1F0 */ return;
|
|
}
|
|
|
|
// fn_0291E1F4 @ 0x291e1f4
|
|
void Gambit_fn_0291E1F4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0291E1F4: ; // 0x291e1f4
|
|
/* 0291E1F4 */ cpu->r[0] = cpu->lr;
|
|
/* 0291E1F8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0291E1F8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291E1F8 */ cpu->r[1] = _t0;
|
|
/* 0291E1FC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291E1FC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0291E200 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0291E200 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0291E204 */ cpu->r[30] = cpu->r[3];
|
|
/* 0291E204 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0291E208 */ cpu->r[31] = cpu->r[4];
|
|
/* 0291E20C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0291E20C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0291E210 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291E210 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0291E210 */ if (_t5) goto L_0291E23C; else goto L_0291E214;
|
|
L_0291E214: ; // 0x291e214
|
|
/* 0291E214 */ cpu->r[0] = 0x10140000u;
|
|
/* 0291E218 */ cpu->r[3] = cpu->r[30] + 0x0000001Cu;
|
|
/* 0291E21C */ cpu->r[0] = cpu->r[0] + 0x000028E0u;
|
|
/* 0291E220 */ cpu->r[4] = 0x00000000u;
|
|
/* 0291E224 */ _t6 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0291E224 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0291E228 */ Gambit_fn_0294D9D0(cpu);
|
|
/* 0291E22C */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0291E22C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0291E230 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291E230 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0291E230 */ if (_t8) goto L_0291E23C; else goto L_0291E234;
|
|
L_0291E234: ; // 0x291e234
|
|
/* 0291E234 */ cpu->r[3] = cpu->r[30];
|
|
/* 0291E238 */ Gambit_fn_02801BB0(cpu);
|
|
L_0291E23C: ; // 0x291e23c
|
|
/* 0291E23C */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0291E23C */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0291E240 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 0291E240 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0291E244 */ cpu->lr = cpu->r[0];
|
|
/* 0291E248 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291E248 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0291E24C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0291E250 */ return;
|
|
}
|
|
|
|
// fn_0291E1F8 @ 0x291e1f8
|
|
void Gambit_fn_0291E1F8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0291E1F8: ; // 0x291e1f8
|
|
/* 0291E1F8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0291E1F8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291E1F8 */ cpu->r[1] = _t0;
|
|
/* 0291E1FC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291E1FC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0291E200 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0291E200 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0291E204 */ cpu->r[30] = cpu->r[3];
|
|
/* 0291E204 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0291E208 */ cpu->r[31] = cpu->r[4];
|
|
/* 0291E20C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0291E20C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0291E210 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291E210 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0291E210 */ if (_t5) goto L_0291E23C; else goto L_0291E214;
|
|
L_0291E214: ; // 0x291e214
|
|
/* 0291E214 */ cpu->r[0] = 0x10140000u;
|
|
/* 0291E218 */ cpu->r[3] = cpu->r[30] + 0x0000001Cu;
|
|
/* 0291E21C */ cpu->r[0] = cpu->r[0] + 0x000028E0u;
|
|
/* 0291E220 */ cpu->r[4] = 0x00000000u;
|
|
/* 0291E224 */ _t6 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0291E224 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0291E228 */ Gambit_fn_0294D9D0(cpu);
|
|
/* 0291E22C */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0291E22C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0291E230 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291E230 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0291E230 */ if (_t8) goto L_0291E23C; else goto L_0291E234;
|
|
L_0291E234: ; // 0x291e234
|
|
/* 0291E234 */ cpu->r[3] = cpu->r[30];
|
|
/* 0291E238 */ Gambit_fn_02801BB0(cpu);
|
|
L_0291E23C: ; // 0x291e23c
|
|
/* 0291E23C */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0291E23C */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0291E240 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 0291E240 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0291E244 */ cpu->lr = cpu->r[0];
|
|
/* 0291E248 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291E248 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0291E24C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0291E250 */ return;
|
|
}
|
|
|
|
// fn_0291E254 @ 0x291e254
|
|
void Gambit_fn_0291E254(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0291E254: ; // 0x291e254
|
|
/* 0291E254 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFE4u;
|
|
/* 0291E258 */ goto L_0291EEE0;
|
|
L_0291EEE0: ; // 0x291eee0
|
|
/* 0291EEE0 */ _t0 = cpu->r[3] + 0x00000018u;
|
|
/* 0291EEE0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0291EEE4 */ _t1 = cpu->r[12] + 0x00000084u;
|
|
/* 0291EEE4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0291EEE8 */ cpu->ctr = cpu->r[0];
|
|
/* 0291EEEC */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0291E25C @ 0x291e25c
|
|
void Gambit_fn_0291E25C(CPUState* cpu) {
|
|
L_0291E25C: ; // 0x291e25c
|
|
/* 0291E25C */ cpu->r[3] = cpu->r[3] + 0xFFFFFFE4u;
|
|
/* 0291E260 */ goto L_0291EEF0;
|
|
L_0291EEF0: ; // 0x291eef0
|
|
/* 0291EEF0 */ cpu->r[3] = cpu->r[3] + 0x0000007Cu;
|
|
/* 0291EEF4 */ return;
|
|
}
|
|
|
|
// fn_0291E264 @ 0x291e264
|
|
void Gambit_fn_0291E264(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0291E264: ; // 0x291e264
|
|
/* 0291E264 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFE4u;
|
|
/* 0291E268 */ goto L_0291EEF8;
|
|
L_0291EEF8: ; // 0x291eef8
|
|
/* 0291EEF8 */ _t0 = cpu->r[3] + 0x00000018u;
|
|
/* 0291EEF8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0291EEFC */ _t1 = cpu->r[12] + 0x000000B4u;
|
|
/* 0291EEFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0291EF00 */ cpu->ctr = cpu->r[0];
|
|
/* 0291EF04 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0291E26C @ 0x291e26c
|
|
void Gambit_fn_0291E26C(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0291E26C: ; // 0x291e26c
|
|
/* 0291E26C */ cpu->r[3] = cpu->r[3] + 0xFFFFFFE4u;
|
|
/* 0291E270 */ goto L_0291EF08;
|
|
L_0291EF08: ; // 0x291ef08
|
|
/* 0291EF08 */ _t0 = cpu->r[3] + 0x0000006Eu;
|
|
/* 0291EF08 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0291EF0C */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0291EF10 */ return;
|
|
}
|
|
|
|
// fn_0291E274 @ 0x291e274
|
|
void Gambit_fn_0291E274(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t117, _t118, _t119, _t120, _t121, _t122, _t123, _t124, _t125, _t126, _t127, _t128, _t129, _t130, _t131, _t132, _t133, _t134, _t135, _t136, _t137, _t138, _t139, _t140, _t141, _t142, _t143, _t144, _t145, _t146, _t147, _t148, _t149, _t150, _t151, _t152, _t153, _t154, _t155, _t156, _t157, _t158, _t159, _t160, _t161, _t162, _t163, _t164, _t165, _t166, _t167;
|
|
|
|
L_0291E274: ; // 0x291e274
|
|
/* 0291E274 */ cpu->r[0] = cpu->lr;
|
|
/* 0291E278 */ _t0 = cpu->r[1] + 0xFFFFFF20u;
|
|
/* 0291E278 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291E278 */ cpu->r[1] = _t0;
|
|
/* 0291E27C */ _t1 = cpu->r[1] + 0x000000E4u;
|
|
/* 0291E27C */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0291E280 */ /* nop */
|
|
/* 0291E284 */ cpu->r[31] = cpu->r[3];
|
|
/* 0291E284 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0291E288 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291E288 */ _t3 = _t2 & 0x00000001u;
|
|
/* 0291E288 */ if (_t3) goto L_0291E28C; else goto L_0291E29C;
|
|
L_0291E28C: ; // 0x291e28c
|
|
/* 0291E28C */ cpu->r[3] = 0x000000ACu;
|
|
/* 0291E290 */ Gambit_fn_02801A78(cpu);
|
|
/* 0291E294 */ cpu->r[31] = cpu->r[3];
|
|
/* 0291E294 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0291E298 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291E298 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0291E298 */ if (_t5) goto L_0291E798; else goto L_0291E29C;
|
|
L_0291E29C: ; // 0x291e29c
|
|
/* 0291E29C */ cpu->r[3] = cpu->r[31];
|
|
/* 0291E2A0 */ Gambit_fn_02952E48(cpu);
|
|
/* 0291E2A4 */ cpu->r[3] = cpu->r[31] + 0x0000001Cu;
|
|
/* 0291E2A8 */ Gambit_fn_0294D990(cpu);
|
|
/* 0291E2AC */ cpu->r[8] = 0x10140000u;
|
|
/* 0291E2B0 */ cpu->r[24] = 0x00000000u;
|
|
/* 0291E2B4 */ cpu->r[8] = cpu->r[8] + 0x00002828u;
|
|
/* 0291E2B8 */ cpu->r[0] = 0x10140000u;
|
|
/* 0291E2BC */ cpu->r[26] = 0x10140000u;
|
|
/* 0291E2C0 */ _t6 = cpu->r[31] + 0x00000018u;
|
|
/* 0291E2C0 */ rbrew_write32(cpu->mem, _t6, cpu->r[8]);
|
|
/* 0291E2C4 */ cpu->r[0] = cpu->r[0] + 0x000028E0u;
|
|
/* 0291E2C8 */ _t7 = cpu->r[31] + 0x00000020u;
|
|
/* 0291E2C8 */ rbrew_write32(cpu->mem, _t7, cpu->r[24]);
|
|
/* 0291E2CC */ cpu->r[26] = cpu->r[26] + 0x000025A8u;
|
|
/* 0291E2D0 */ cpu->r[10] = 0x10140000u;
|
|
/* 0291E2D4 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0291E2D4 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0291E2D8 */ cpu->r[0] = 0x10140000u;
|
|
/* 0291E2DC */ cpu->r[10] = cpu->r[10] + 0x0000278Cu;
|
|
/* 0291E2E0 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0291E2E0 */ rbrew_write32(cpu->mem, _t9, cpu->r[26]);
|
|
/* 0291E2E4 */ cpu->r[0] = cpu->r[0] + 0x00002794u;
|
|
/* 0291E2E8 */ _t10 = cpu->r[1] + 0x00000010u;
|
|
/* 0291E2E8 */ rbrew_write32(cpu->mem, _t10, cpu->r[10]);
|
|
/* 0291E2EC */ _t11 = cpu->r[1] + 0x00000018u;
|
|
/* 0291E2EC */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 0291E2F0 */ cpu->r[30] = cpu->r[31] + 0x00000024u;
|
|
/* 0291E2F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0291E2F4 */ _t12 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0291E2F4 */ rbrew_write32(cpu->mem, _t12, cpu->r[26]);
|
|
/* 0291E2F8 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291E2F8 */ _t14 = _t13 & 0x00000001u;
|
|
/* 0291E2F8 */ if (_t14) goto L_0291E2FC; else goto L_0291E30C;
|
|
L_0291E2FC: ; // 0x291e2fc
|
|
/* 0291E2FC */ cpu->r[3] = 0x00000010u;
|
|
/* 0291E300 */ Gambit_fn_02801A78(cpu);
|
|
/* 0291E304 */ cpu->r[30] = cpu->r[3];
|
|
/* 0291E304 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0291E308 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291E308 */ _t16 = _t15 & 0x00000001u;
|
|
/* 0291E308 */ if (_t16) goto L_0291E34C; else goto L_0291E30C;
|
|
L_0291E30C: ; // 0x291e30c
|
|
/* 0291E30C */ cpu->r[3] = cpu->r[30];
|
|
/* 0291E310 */ Gambit_fn_0294F7F0(cpu);
|
|
/* 0291E314 */ cpu->r[12] = 0x10140000u;
|
|
/* 0291E318 */ cpu->r[3] = cpu->r[30];
|
|
/* 0291E31C */ cpu->r[12] = cpu->r[12] + 0x00002660u;
|
|
/* 0291E320 */ cpu->r[0] = 0x10140000u;
|
|
/* 0291E324 */ cpu->r[7] = cpu->r[31];
|
|
/* 0291E328 */ _t17 = cpu->r[30] + 0x00000008u;
|
|
/* 0291E328 */ rbrew_write32(cpu->mem, _t17, cpu->r[12]);
|
|
/* 0291E32C */ cpu->r[0] = cpu->r[0] + 0x000025A4u;
|
|
/* 0291E330 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 0291E334 */ _t18 = cpu->r[1] + 0x00000054u;
|
|
/* 0291E334 */ rbrew_write32(cpu->mem, _t18, cpu->r[26]);
|
|
/* 0291E338 */ cpu->r[6] = cpu->r[1] + 0x00000050u;
|
|
/* 0291E33C */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 0291E340 */ _t19 = cpu->r[1] + 0x00000050u;
|
|
/* 0291E340 */ rbrew_write32(cpu->mem, _t19, cpu->r[0]);
|
|
/* 0291E344 */ Gambit_fn_0294F794(cpu);
|
|
/* 0291E348 */ _t20 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0291E348 */ rbrew_write8(cpu->mem, _t20, (uint8_t)cpu->r[24]);
|
|
L_0291E34C: ; // 0x291e34c
|
|
/* 0291E34C */ cpu->r[5] = 0x10140000u;
|
|
/* 0291E350 */ _t21 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291E350 */ rbrew_write32(cpu->mem, _t21, cpu->r[26]);
|
|
/* 0291E354 */ cpu->r[25] = cpu->r[1] + 0x00000064u;
|
|
/* 0291E358 */ cpu->r[5] = cpu->r[5] + 0x00002780u;
|
|
/* 0291E35C */ _t22 = cpu->r[1] + 0x00000058u;
|
|
/* 0291E35C */ rbrew_write32(cpu->mem, _t22, cpu->r[25]);
|
|
/* 0291E360 */ cpu->r[0] = 0x00000020u;
|
|
/* 0291E364 */ _t23 = cpu->r[1] + 0x00000008u;
|
|
/* 0291E364 */ rbrew_write32(cpu->mem, _t23, cpu->r[5]);
|
|
/* 0291E368 */ cpu->r[30] = 0x10110000u;
|
|
/* 0291E36C */ cpu->r[28] = 0x10140000u;
|
|
/* 0291E370 */ _t24 = cpu->r[1] + 0x00000060u;
|
|
/* 0291E370 */ rbrew_write32(cpu->mem, _t24, cpu->r[0]);
|
|
/* 0291E374 */ cpu->r[28] = cpu->r[28] + 0x000025D8u;
|
|
/* 0291E378 */ _t25 = cpu->r[30] + 0x00007399u;
|
|
/* 0291E378 */ cpu->r[30] = rbrew_read8(cpu->mem, _t25);
|
|
/* 0291E37C */ cpu->r[27] = 0x10140000u;
|
|
/* 0291E380 */ _t26 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0291E380 */ rbrew_write32(cpu->mem, _t26, cpu->r[28]);
|
|
/* 0291E384 */ cpu->r[27] = cpu->r[27] + 0x000025C0u;
|
|
/* 0291E388 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0291E38C */ _t27 = cpu->r[1] + 0x00000083u;
|
|
/* 0291E38C */ rbrew_write8(cpu->mem, _t27, (uint8_t)cpu->r[30]);
|
|
/* 0291E390 */ Gambit_fn_0291EF28(cpu);
|
|
/* 0291E394 */ _t28 = cpu->r[1] + 0x00000008u;
|
|
/* 0291E394 */ cpu->r[12] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0291E398 */ _t29 = cpu->r[12] + 0x00000000u;
|
|
/* 0291E398 */ cpu->r[7] = rbrew_read8(cpu->mem, _t29);
|
|
/* 0291E39C */ cpu->r[6] = 0x00080000u;
|
|
/* 0291E3A0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[30]);
|
|
/* 0291E3A4 */ cpu->r[29] = 0x00000000u;
|
|
/* 0291E3A8 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291E3A8 */ _t31 = _t30 & 0x00000001u;
|
|
/* 0291E3A8 */ if (_t31) goto L_0291E3D0; else goto L_0291E3AC;
|
|
L_0291E3AC: ; // 0x291e3ac
|
|
/* 0291E3AC */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 0291E3B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[6]);
|
|
/* 0291E3B4 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 0291E3B8 */ _t32 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291E3B8 */ _t33 = _t32 & 0x00000001u;
|
|
/* 0291E3B8 */ if (_t33) goto L_0291E3CC; else goto L_0291E3BC;
|
|
L_0291E3BC: ; // 0x291e3bc
|
|
/* 0291E3BC */ _t34 = cpu->r[12] + 0x00000000u;
|
|
/* 0291E3BC */ cpu->r[0] = rbrew_read8(cpu->mem, _t34);
|
|
/* 0291E3C0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]);
|
|
/* 0291E3C4 */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291E3C4 */ _t36 = _t35 & 0x00000001u;
|
|
/* 0291E3C4 */ if (_t36) goto L_0291E3C8; else goto L_0291E3AC;
|
|
L_0291E3C8: ; // 0x291e3c8
|
|
/* 0291E3C8 */ goto L_0291E3D0;
|
|
L_0291E3CC: ; // 0x291e3cc
|
|
/* 0291E3CC */ cpu->r[29] = 0x00000000u;
|
|
L_0291E3D0: ; // 0x291e3d0
|
|
/* 0291E3D0 */ _t37 = cpu->r[1] + 0x00000060u;
|
|
/* 0291E3D0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0291E3D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[10]);
|
|
/* 0291E3D8 */ _t38 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291E3D8 */ _t39 = _t38 & 0x00000001u;
|
|
/* 0291E3D8 */ if (_t39) goto L_0291E3E0; else goto L_0291E3DC;
|
|
L_0291E3DC: ; // 0x291e3dc
|
|
/* 0291E3DC */ cpu->r[29] = cpu->r[10] + 0xFFFFFFFFu;
|
|
L_0291E3E0: ; // 0x291e3e0
|
|
/* 0291E3E0 */ _t40 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291E3E0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0291E3E4 */ _t41 = cpu->r[9] + 0x00000014u;
|
|
/* 0291E3E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0291E3E8 */ cpu->ctr = cpu->r[0];
|
|
/* 0291E3EC */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0291E3F0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291E3F4 */ _t42 = cpu->r[1] + 0x00000008u;
|
|
/* 0291E3F4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t42);
|
|
/* 0291E3F8 */ cpu->r[3] = cpu->r[25];
|
|
/* 0291E3FC */ cpu->r[5] = cpu->r[29];
|
|
/* 0291E400 */ cpu->r[6] = 0x00000000u;
|
|
/* 0291E404 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0291E408 */ _t43 = cpu->r[1] + 0x00000024u;
|
|
/* 0291E408 */ rbrew_write32(cpu->mem, _t43, cpu->r[26]);
|
|
/* 0291E40C */ cpu->r[0] = 0x10140000u;
|
|
/* 0291E410 */ _t44 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0291E410 */ rbrew_write32(cpu->mem, _t44, cpu->r[26]);
|
|
/* 0291E414 */ cpu->r[11] = 0x10140000u;
|
|
/* 0291E418 */ _t45 = cpu->r[25] + cpu->r[29];
|
|
/* 0291E418 */ rbrew_write8(cpu->mem, _t45, (uint8_t)cpu->r[30]);
|
|
/* 0291E41C */ cpu->r[11] = cpu->r[11] + 0x0000279Cu;
|
|
/* 0291E420 */ cpu->r[0] = cpu->r[0] + 0x000027A4u;
|
|
/* 0291E424 */ _t46 = cpu->r[1] + 0x00000034u;
|
|
/* 0291E424 */ rbrew_write32(cpu->mem, _t46, cpu->r[26]);
|
|
/* 0291E428 */ cpu->r[21] = cpu->r[31] + 0x00000034u;
|
|
/* 0291E428 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], 0x00000000u);
|
|
/* 0291E42C */ cpu->r[23] = 0x10140000u;
|
|
/* 0291E430 */ _t47 = cpu->r[1] + 0x00000028u;
|
|
/* 0291E430 */ rbrew_write32(cpu->mem, _t47, cpu->r[0]);
|
|
/* 0291E434 */ cpu->r[22] = 0x10140000u;
|
|
/* 0291E438 */ cpu->r[23] = cpu->r[23] + 0x000025F0u;
|
|
/* 0291E43C */ _t48 = cpu->r[1] + 0x00000020u;
|
|
/* 0291E43C */ rbrew_write32(cpu->mem, _t48, cpu->r[11]);
|
|
/* 0291E440 */ cpu->r[22] = cpu->r[22] + 0x000027B4u;
|
|
/* 0291E444 */ cpu->r[25] = 0x10140000u;
|
|
/* 0291E448 */ _t49 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0291E448 */ rbrew_write32(cpu->mem, _t49, cpu->r[23]);
|
|
/* 0291E44C */ cpu->r[25] = cpu->r[25] + 0x000026F0u;
|
|
/* 0291E450 */ _t50 = cpu->r[1] + 0x00000030u;
|
|
/* 0291E450 */ rbrew_write32(cpu->mem, _t50, cpu->r[22]);
|
|
/* 0291E454 */ _t51 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291E454 */ _t52 = _t51 & 0x00000001u;
|
|
/* 0291E454 */ if (_t52) goto L_0291E458; else goto L_0291E468;
|
|
L_0291E458: ; // 0x291e458
|
|
/* 0291E458 */ cpu->r[3] = 0x00000038u;
|
|
/* 0291E45C */ Gambit_fn_02801A78(cpu);
|
|
/* 0291E460 */ cpu->r[21] = cpu->r[3];
|
|
/* 0291E460 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], 0x00000000u);
|
|
/* 0291E464 */ _t53 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291E464 */ _t54 = _t53 & 0x00000001u;
|
|
/* 0291E464 */ if (_t54) goto L_0291E574; else goto L_0291E468;
|
|
L_0291E468: ; // 0x291e468
|
|
/* 0291E468 */ cpu->r[3] = cpu->r[21];
|
|
/* 0291E46C */ Gambit_fn_0294F7F0(cpu);
|
|
/* 0291E470 */ cpu->r[29] = cpu->r[21] + 0x0000000Cu;
|
|
/* 0291E470 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0291E474 */ _t55 = cpu->r[21] + 0x00000008u;
|
|
/* 0291E474 */ rbrew_write32(cpu->mem, _t55, cpu->r[25]);
|
|
/* 0291E478 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291E478 */ _t57 = _t56 & 0x00000001u;
|
|
/* 0291E478 */ if (_t57) goto L_0291E47C; else goto L_0291E48C;
|
|
L_0291E47C: ; // 0x291e47c
|
|
/* 0291E47C */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0291E480 */ Gambit_fn_02801A78(cpu);
|
|
/* 0291E484 */ cpu->r[29] = cpu->r[3];
|
|
/* 0291E484 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0291E488 */ _t58 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291E488 */ _t59 = _t58 & 0x00000001u;
|
|
/* 0291E488 */ if (_t59) goto L_0291E4C8; else goto L_0291E48C;
|
|
L_0291E48C: ; // 0x291e48c
|
|
/* 0291E48C */ cpu->r[3] = cpu->r[29];
|
|
/* 0291E48C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291E490 */ _t60 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291E490 */ _t61 = _t60 & 0x00000001u;
|
|
/* 0291E490 */ if (_t61) goto L_0291E494; else goto L_0291E4A4;
|
|
L_0291E494: ; // 0x291e494
|
|
/* 0291E494 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0291E498 */ Gambit_fn_02801A78(cpu);
|
|
/* 0291E49C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291E4A0 */ _t62 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291E4A0 */ _t63 = _t62 & 0x00000001u;
|
|
/* 0291E4A0 */ if (_t63) goto L_0291E4BC; else goto L_0291E4A4;
|
|
L_0291E4A4: ; // 0x291e4a4
|
|
/* 0291E4A4 */ cpu->r[0] = cpu->r[29] + 0x0000000Cu;
|
|
/* 0291E4A8 */ _t64 = cpu->r[3] + 0x00000004u;
|
|
/* 0291E4A8 */ rbrew_write32(cpu->mem, _t64, cpu->r[27]);
|
|
/* 0291E4AC */ cpu->r[9] = 0x00000020u;
|
|
/* 0291E4B0 */ _t65 = cpu->r[3] + 0x00000000u;
|
|
/* 0291E4B0 */ rbrew_write32(cpu->mem, _t65, cpu->r[0]);
|
|
/* 0291E4B4 */ _t66 = cpu->r[3] + 0x00000008u;
|
|
/* 0291E4B4 */ rbrew_write32(cpu->mem, _t66, cpu->r[9]);
|
|
/* 0291E4B8 */ _t67 = cpu->r[29] + 0x0000002Bu;
|
|
/* 0291E4B8 */ rbrew_write8(cpu->mem, _t67, (uint8_t)cpu->r[30]);
|
|
L_0291E4BC: ; // 0x291e4bc
|
|
/* 0291E4BC */ _t68 = cpu->r[29] + 0x00000000u;
|
|
/* 0291E4BC */ cpu->r[10] = rbrew_read32(cpu->mem, _t68);
|
|
/* 0291E4C0 */ _t69 = cpu->r[29] + 0x00000004u;
|
|
/* 0291E4C0 */ rbrew_write32(cpu->mem, _t69, cpu->r[28]);
|
|
/* 0291E4C4 */ _t70 = cpu->r[10] + 0x00000000u;
|
|
/* 0291E4C4 */ rbrew_write8(cpu->mem, _t70, (uint8_t)cpu->r[30]);
|
|
L_0291E4C8: ; // 0x291e4c8
|
|
/* 0291E4C8 */ cpu->r[6] = cpu->r[1] + 0x00000030u;
|
|
/* 0291E4CC */ cpu->r[3] = cpu->r[21];
|
|
/* 0291E4D0 */ cpu->r[7] = cpu->r[31];
|
|
/* 0291E4D4 */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 0291E4D8 */ cpu->r[5] = cpu->r[1] + 0x00000028u;
|
|
/* 0291E4DC */ _t71 = cpu->r[21] + 0x00000010u;
|
|
/* 0291E4DC */ rbrew_write32(cpu->mem, _t71, cpu->r[23]);
|
|
/* 0291E4E0 */ Gambit_fn_0294F794(cpu);
|
|
/* 0291E4E4 */ _t72 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0291E4E4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t72);
|
|
/* 0291E4E8 */ _t73 = cpu->r[11] + 0x00000014u;
|
|
/* 0291E4E8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t73);
|
|
/* 0291E4EC */ cpu->ctr = cpu->r[12];
|
|
/* 0291E4F0 */ _t74 = cpu->r[21] + 0x0000000Cu;
|
|
/* 0291E4F0 */ cpu->r[20] = rbrew_read32(cpu->mem, _t74);
|
|
/* 0291E4F4 */ cpu->r[3] = cpu->r[1] + 0x00000058u;
|
|
/* 0291E4F8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291E4FC */ _t75 = cpu->r[1] + 0x00000058u;
|
|
/* 0291E4FC */ cpu->r[7] = rbrew_read32(cpu->mem, _t75);
|
|
/* 0291E500 */ _t76 = cpu->r[7] + 0x00000000u;
|
|
/* 0291E500 */ cpu->r[0] = rbrew_read8(cpu->mem, _t76);
|
|
/* 0291E504 */ cpu->r[9] = 0x00080000u;
|
|
/* 0291E508 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]);
|
|
/* 0291E50C */ cpu->r[29] = 0x00000000u;
|
|
/* 0291E510 */ _t77 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291E510 */ _t78 = _t77 & 0x00000001u;
|
|
/* 0291E510 */ if (_t78) goto L_0291E538; else goto L_0291E514;
|
|
L_0291E514: ; // 0x291e514
|
|
/* 0291E514 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 0291E518 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[9]);
|
|
/* 0291E51C */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 0291E520 */ _t79 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291E520 */ _t80 = _t79 & 0x00000001u;
|
|
/* 0291E520 */ if (_t80) goto L_0291E534; else goto L_0291E524;
|
|
L_0291E524: ; // 0x291e524
|
|
/* 0291E524 */ _t81 = cpu->r[7] + 0x00000000u;
|
|
/* 0291E524 */ cpu->r[0] = rbrew_read8(cpu->mem, _t81);
|
|
/* 0291E528 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]);
|
|
/* 0291E52C */ _t82 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291E52C */ _t83 = _t82 & 0x00000001u;
|
|
/* 0291E52C */ if (_t83) goto L_0291E530; else goto L_0291E514;
|
|
L_0291E530: ; // 0x291e530
|
|
/* 0291E530 */ goto L_0291E538;
|
|
L_0291E534: ; // 0x291e534
|
|
/* 0291E534 */ cpu->r[29] = 0x00000000u;
|
|
L_0291E538: ; // 0x291e538
|
|
/* 0291E538 */ _t84 = cpu->r[21] + 0x00000014u;
|
|
/* 0291E538 */ cpu->r[10] = rbrew_read32(cpu->mem, _t84);
|
|
/* 0291E53C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[10]);
|
|
/* 0291E540 */ _t85 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291E540 */ _t86 = _t85 & 0x00000001u;
|
|
/* 0291E540 */ if (_t86) goto L_0291E548; else goto L_0291E544;
|
|
L_0291E544: ; // 0x291e544
|
|
/* 0291E544 */ cpu->r[29] = cpu->r[10] + 0xFFFFFFFFu;
|
|
L_0291E548: ; // 0x291e548
|
|
/* 0291E548 */ _t87 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0291E548 */ cpu->r[7] = rbrew_read32(cpu->mem, _t87);
|
|
/* 0291E54C */ _t88 = cpu->r[7] + 0x00000014u;
|
|
/* 0291E54C */ cpu->r[9] = rbrew_read32(cpu->mem, _t88);
|
|
/* 0291E550 */ cpu->ctr = cpu->r[9];
|
|
/* 0291E554 */ cpu->r[3] = cpu->r[1] + 0x00000058u;
|
|
/* 0291E558 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291E55C */ _t89 = cpu->r[1] + 0x00000058u;
|
|
/* 0291E55C */ cpu->r[4] = rbrew_read32(cpu->mem, _t89);
|
|
/* 0291E560 */ cpu->r[6] = 0x00000000u;
|
|
/* 0291E564 */ cpu->r[5] = cpu->r[29];
|
|
/* 0291E568 */ cpu->r[3] = cpu->r[20];
|
|
/* 0291E56C */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0291E570 */ _t90 = cpu->r[20] + cpu->r[29];
|
|
/* 0291E570 */ rbrew_write8(cpu->mem, _t90, (uint8_t)cpu->r[30]);
|
|
L_0291E574: ; // 0x291e574
|
|
/* 0291E574 */ cpu->r[3] = cpu->r[31] + 0x0000006Eu;
|
|
/* 0291E574 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291E578 */ _t91 = cpu->r[31] + 0x0000006Cu;
|
|
/* 0291E578 */ rbrew_write16(cpu->mem, _t91, (uint16_t)cpu->r[24]);
|
|
/* 0291E57C */ _t92 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291E57C */ _t93 = _t92 & 0x00000001u;
|
|
/* 0291E57C */ if (_t93) goto L_0291E580; else goto L_0291E590;
|
|
L_0291E580: ; // 0x291e580
|
|
/* 0291E580 */ cpu->r[3] = 0x00000001u;
|
|
/* 0291E584 */ Gambit_fn_02801A78(cpu);
|
|
/* 0291E588 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291E58C */ _t94 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291E58C */ _t95 = _t94 & 0x00000001u;
|
|
/* 0291E58C */ if (_t95) goto L_0291E598; else goto L_0291E590;
|
|
L_0291E590: ; // 0x291e590
|
|
/* 0291E590 */ cpu->r[0] = 0x00000001u;
|
|
/* 0291E594 */ _t96 = cpu->r[3] + 0x00000000u;
|
|
/* 0291E594 */ rbrew_write8(cpu->mem, _t96, (uint8_t)cpu->r[0]);
|
|
L_0291E598: ; // 0x291e598
|
|
/* 0291E598 */ Gambit_fn_0294D9E4(cpu);
|
|
/* 0291E59C */ _t97 = cpu->r[1] + 0x000000AFu;
|
|
/* 0291E59C */ rbrew_write8(cpu->mem, _t97, (uint8_t)cpu->r[30]);
|
|
/* 0291E5A0 */ cpu->r[24] = cpu->r[1] + 0x00000090u;
|
|
/* 0291E5A4 */ _t98 = cpu->r[1] + 0x00000088u;
|
|
/* 0291E5A4 */ rbrew_write32(cpu->mem, _t98, cpu->r[28]);
|
|
/* 0291E5A8 */ cpu->r[5] = 0x00000020u;
|
|
/* 0291E5AC */ _t99 = cpu->r[1] + 0x00000084u;
|
|
/* 0291E5AC */ rbrew_write32(cpu->mem, _t99, cpu->r[24]);
|
|
/* 0291E5B0 */ _t100 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0291E5B0 */ rbrew_write32(cpu->mem, _t100, cpu->r[5]);
|
|
/* 0291E5B4 */ _t101 = cpu->r[3] + 0x00000004u;
|
|
/* 0291E5B4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t101);
|
|
/* 0291E5B8 */ _t102 = cpu->r[6] + 0x00000014u;
|
|
/* 0291E5B8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t102);
|
|
/* 0291E5BC */ cpu->ctr = cpu->r[8];
|
|
/* 0291E5C0 */ cpu->r[21] = cpu->r[3];
|
|
/* 0291E5C4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291E5C8 */ _t103 = cpu->r[21] + 0x00000000u;
|
|
/* 0291E5C8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t103);
|
|
/* 0291E5CC */ _t104 = cpu->r[11] + 0x00000000u;
|
|
/* 0291E5CC */ cpu->r[10] = rbrew_read8(cpu->mem, _t104);
|
|
/* 0291E5D0 */ cpu->r[12] = 0x00080000u;
|
|
/* 0291E5D4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[30]);
|
|
/* 0291E5D8 */ cpu->r[29] = 0x00000000u;
|
|
/* 0291E5DC */ _t105 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291E5DC */ _t106 = _t105 & 0x00000001u;
|
|
/* 0291E5DC */ if (_t106) goto L_0291E604; else goto L_0291E5E0;
|
|
L_0291E5E0: ; // 0x291e5e0
|
|
/* 0291E5E0 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 0291E5E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[12]);
|
|
/* 0291E5E8 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 0291E5EC */ _t107 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291E5EC */ _t108 = _t107 & 0x00000001u;
|
|
/* 0291E5EC */ if (_t108) goto L_0291E600; else goto L_0291E5F0;
|
|
L_0291E5F0: ; // 0x291e5f0
|
|
/* 0291E5F0 */ _t109 = cpu->r[11] + 0x00000000u;
|
|
/* 0291E5F0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t109);
|
|
/* 0291E5F4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]);
|
|
/* 0291E5F8 */ _t110 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291E5F8 */ _t111 = _t110 & 0x00000001u;
|
|
/* 0291E5F8 */ if (_t111) goto L_0291E5FC; else goto L_0291E5E0;
|
|
L_0291E5FC: ; // 0x291e5fc
|
|
/* 0291E5FC */ goto L_0291E604;
|
|
L_0291E600: ; // 0x291e600
|
|
/* 0291E600 */ cpu->r[29] = 0x00000000u;
|
|
L_0291E604: ; // 0x291e604
|
|
/* 0291E604 */ _t112 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0291E604 */ cpu->r[12] = rbrew_read32(cpu->mem, _t112);
|
|
/* 0291E608 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[12]);
|
|
/* 0291E60C */ _t113 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291E60C */ _t114 = _t113 & 0x00000001u;
|
|
/* 0291E60C */ if (_t114) goto L_0291E614; else goto L_0291E610;
|
|
L_0291E610: ; // 0x291e610
|
|
/* 0291E610 */ cpu->r[29] = cpu->r[12] + 0xFFFFFFFFu;
|
|
L_0291E614: ; // 0x291e614
|
|
/* 0291E614 */ _t115 = cpu->r[21] + 0x00000004u;
|
|
/* 0291E614 */ cpu->r[5] = rbrew_read32(cpu->mem, _t115);
|
|
/* 0291E618 */ _t116 = cpu->r[5] + 0x00000014u;
|
|
/* 0291E618 */ cpu->r[7] = rbrew_read32(cpu->mem, _t116);
|
|
/* 0291E61C */ cpu->ctr = cpu->r[7];
|
|
/* 0291E620 */ cpu->r[3] = cpu->r[21];
|
|
/* 0291E624 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291E628 */ _t117 = cpu->r[21] + 0x00000000u;
|
|
/* 0291E628 */ cpu->r[4] = rbrew_read32(cpu->mem, _t117);
|
|
/* 0291E62C */ cpu->r[6] = 0x00000000u;
|
|
/* 0291E630 */ cpu->r[5] = cpu->r[29];
|
|
/* 0291E634 */ cpu->r[3] = cpu->r[24];
|
|
/* 0291E638 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0291E63C */ _t118 = cpu->r[24] + cpu->r[29];
|
|
/* 0291E63C */ rbrew_write8(cpu->mem, _t118, (uint8_t)cpu->r[30]);
|
|
/* 0291E640 */ cpu->r[0] = 0x10140000u;
|
|
/* 0291E644 */ _t119 = cpu->r[1] + 0x00000044u;
|
|
/* 0291E644 */ rbrew_write32(cpu->mem, _t119, cpu->r[26]);
|
|
/* 0291E648 */ cpu->r[9] = 0x10140000u;
|
|
/* 0291E64C */ cpu->r[0] = cpu->r[0] + 0x00002784u;
|
|
/* 0291E650 */ _t120 = cpu->r[1] + 0x00000088u;
|
|
/* 0291E650 */ rbrew_write32(cpu->mem, _t120, cpu->r[23]);
|
|
/* 0291E654 */ cpu->r[9] = cpu->r[9] + 0x000027CCu;
|
|
/* 0291E658 */ _t121 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0291E658 */ rbrew_write32(cpu->mem, _t121, cpu->r[26]);
|
|
/* 0291E65C */ _t122 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0291E65C */ rbrew_write32(cpu->mem, _t122, cpu->r[26]);
|
|
/* 0291E660 */ _t123 = cpu->r[1] + 0x00000048u;
|
|
/* 0291E660 */ rbrew_write32(cpu->mem, _t123, cpu->r[22]);
|
|
/* 0291E664 */ cpu->r[26] = cpu->r[31] + 0x00000070u;
|
|
/* 0291E664 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 0291E668 */ _t124 = cpu->r[1] + 0x00000040u;
|
|
/* 0291E668 */ rbrew_write32(cpu->mem, _t124, cpu->r[9]);
|
|
/* 0291E66C */ _t125 = cpu->r[1] + 0x00000038u;
|
|
/* 0291E66C */ rbrew_write32(cpu->mem, _t125, cpu->r[0]);
|
|
/* 0291E670 */ _t126 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291E670 */ _t127 = _t126 & 0x00000001u;
|
|
/* 0291E670 */ if (_t127) goto L_0291E674; else goto L_0291E684;
|
|
L_0291E674: ; // 0x291e674
|
|
/* 0291E674 */ cpu->r[3] = 0x00000038u;
|
|
/* 0291E678 */ Gambit_fn_02801A78(cpu);
|
|
/* 0291E67C */ cpu->r[26] = cpu->r[3];
|
|
/* 0291E67C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 0291E680 */ _t128 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291E680 */ _t129 = _t128 & 0x00000001u;
|
|
/* 0291E680 */ if (_t129) goto L_0291E790; else goto L_0291E684;
|
|
L_0291E684: ; // 0x291e684
|
|
/* 0291E684 */ cpu->r[3] = cpu->r[26];
|
|
/* 0291E688 */ Gambit_fn_0294F7F0(cpu);
|
|
/* 0291E68C */ cpu->r[29] = cpu->r[26] + 0x0000000Cu;
|
|
/* 0291E68C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0291E690 */ _t130 = cpu->r[26] + 0x00000008u;
|
|
/* 0291E690 */ rbrew_write32(cpu->mem, _t130, cpu->r[25]);
|
|
/* 0291E694 */ _t131 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291E694 */ _t132 = _t131 & 0x00000001u;
|
|
/* 0291E694 */ if (_t132) goto L_0291E698; else goto L_0291E6A8;
|
|
L_0291E698: ; // 0x291e698
|
|
/* 0291E698 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0291E69C */ Gambit_fn_02801A78(cpu);
|
|
/* 0291E6A0 */ cpu->r[29] = cpu->r[3];
|
|
/* 0291E6A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0291E6A4 */ _t133 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291E6A4 */ _t134 = _t133 & 0x00000001u;
|
|
/* 0291E6A4 */ if (_t134) goto L_0291E6E4; else goto L_0291E6A8;
|
|
L_0291E6A8: ; // 0x291e6a8
|
|
/* 0291E6A8 */ cpu->r[3] = cpu->r[29];
|
|
/* 0291E6A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291E6AC */ _t135 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291E6AC */ _t136 = _t135 & 0x00000001u;
|
|
/* 0291E6AC */ if (_t136) goto L_0291E6B0; else goto L_0291E6C0;
|
|
L_0291E6B0: ; // 0x291e6b0
|
|
/* 0291E6B0 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0291E6B4 */ Gambit_fn_02801A78(cpu);
|
|
/* 0291E6B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291E6BC */ _t137 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291E6BC */ _t138 = _t137 & 0x00000001u;
|
|
/* 0291E6BC */ if (_t138) goto L_0291E6D8; else goto L_0291E6C0;
|
|
L_0291E6C0: ; // 0x291e6c0
|
|
/* 0291E6C0 */ cpu->r[0] = cpu->r[29] + 0x0000000Cu;
|
|
/* 0291E6C4 */ _t139 = cpu->r[3] + 0x00000004u;
|
|
/* 0291E6C4 */ rbrew_write32(cpu->mem, _t139, cpu->r[27]);
|
|
/* 0291E6C8 */ cpu->r[5] = 0x00000020u;
|
|
/* 0291E6CC */ _t140 = cpu->r[3] + 0x00000000u;
|
|
/* 0291E6CC */ rbrew_write32(cpu->mem, _t140, cpu->r[0]);
|
|
/* 0291E6D0 */ _t141 = cpu->r[3] + 0x00000008u;
|
|
/* 0291E6D0 */ rbrew_write32(cpu->mem, _t141, cpu->r[5]);
|
|
/* 0291E6D4 */ _t142 = cpu->r[29] + 0x0000002Bu;
|
|
/* 0291E6D4 */ rbrew_write8(cpu->mem, _t142, (uint8_t)cpu->r[30]);
|
|
L_0291E6D8: ; // 0x291e6d8
|
|
/* 0291E6D8 */ _t143 = cpu->r[29] + 0x00000000u;
|
|
/* 0291E6D8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t143);
|
|
/* 0291E6DC */ _t144 = cpu->r[29] + 0x00000004u;
|
|
/* 0291E6DC */ rbrew_write32(cpu->mem, _t144, cpu->r[28]);
|
|
/* 0291E6E0 */ _t145 = cpu->r[6] + 0x00000000u;
|
|
/* 0291E6E0 */ rbrew_write8(cpu->mem, _t145, (uint8_t)cpu->r[30]);
|
|
L_0291E6E4: ; // 0x291e6e4
|
|
/* 0291E6E4 */ cpu->r[6] = cpu->r[1] + 0x00000048u;
|
|
/* 0291E6E8 */ cpu->r[3] = cpu->r[26];
|
|
/* 0291E6EC */ cpu->r[7] = cpu->r[31];
|
|
/* 0291E6F0 */ cpu->r[4] = cpu->r[1] + 0x00000038u;
|
|
/* 0291E6F4 */ cpu->r[5] = cpu->r[1] + 0x00000040u;
|
|
/* 0291E6F8 */ _t146 = cpu->r[26] + 0x00000010u;
|
|
/* 0291E6F8 */ rbrew_write32(cpu->mem, _t146, cpu->r[23]);
|
|
/* 0291E6FC */ Gambit_fn_0294F794(cpu);
|
|
/* 0291E700 */ _t147 = cpu->r[1] + 0x00000088u;
|
|
/* 0291E700 */ cpu->r[7] = rbrew_read32(cpu->mem, _t147);
|
|
/* 0291E704 */ _t148 = cpu->r[7] + 0x00000014u;
|
|
/* 0291E704 */ cpu->r[0] = rbrew_read32(cpu->mem, _t148);
|
|
/* 0291E708 */ cpu->ctr = cpu->r[0];
|
|
/* 0291E70C */ _t149 = cpu->r[26] + 0x0000000Cu;
|
|
/* 0291E70C */ cpu->r[28] = rbrew_read32(cpu->mem, _t149);
|
|
/* 0291E710 */ cpu->r[3] = cpu->r[1] + 0x00000084u;
|
|
/* 0291E714 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291E718 */ _t150 = cpu->r[1] + 0x00000084u;
|
|
/* 0291E718 */ cpu->r[6] = rbrew_read32(cpu->mem, _t150);
|
|
/* 0291E71C */ _t151 = cpu->r[6] + 0x00000000u;
|
|
/* 0291E71C */ cpu->r[9] = rbrew_read8(cpu->mem, _t151);
|
|
/* 0291E720 */ cpu->r[8] = 0x00080000u;
|
|
/* 0291E724 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[30]);
|
|
/* 0291E728 */ cpu->r[29] = 0x00000000u;
|
|
/* 0291E72C */ _t152 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291E72C */ _t153 = _t152 & 0x00000001u;
|
|
/* 0291E72C */ if (_t153) goto L_0291E754; else goto L_0291E730;
|
|
L_0291E730: ; // 0x291e730
|
|
/* 0291E730 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 0291E734 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[8]);
|
|
/* 0291E738 */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 0291E73C */ _t154 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291E73C */ _t155 = _t154 & 0x00000001u;
|
|
/* 0291E73C */ if (_t155) goto L_0291E750; else goto L_0291E740;
|
|
L_0291E740: ; // 0x291e740
|
|
/* 0291E740 */ _t156 = cpu->r[6] + 0x00000000u;
|
|
/* 0291E740 */ cpu->r[0] = rbrew_read8(cpu->mem, _t156);
|
|
/* 0291E744 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]);
|
|
/* 0291E748 */ _t157 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291E748 */ _t158 = _t157 & 0x00000001u;
|
|
/* 0291E748 */ if (_t158) goto L_0291E74C; else goto L_0291E730;
|
|
L_0291E74C: ; // 0x291e74c
|
|
/* 0291E74C */ goto L_0291E754;
|
|
L_0291E750: ; // 0x291e750
|
|
/* 0291E750 */ cpu->r[29] = 0x00000000u;
|
|
L_0291E754: ; // 0x291e754
|
|
/* 0291E754 */ _t159 = cpu->r[26] + 0x00000014u;
|
|
/* 0291E754 */ cpu->r[5] = rbrew_read32(cpu->mem, _t159);
|
|
/* 0291E758 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[5]);
|
|
/* 0291E75C */ _t160 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291E75C */ _t161 = _t160 & 0x00000001u;
|
|
/* 0291E75C */ if (_t161) goto L_0291E764; else goto L_0291E760;
|
|
L_0291E760: ; // 0x291e760
|
|
/* 0291E760 */ cpu->r[29] = cpu->r[5] + 0xFFFFFFFFu;
|
|
L_0291E764: ; // 0x291e764
|
|
/* 0291E764 */ _t162 = cpu->r[1] + 0x00000088u;
|
|
/* 0291E764 */ cpu->r[12] = rbrew_read32(cpu->mem, _t162);
|
|
/* 0291E768 */ _t163 = cpu->r[12] + 0x00000014u;
|
|
/* 0291E768 */ cpu->r[6] = rbrew_read32(cpu->mem, _t163);
|
|
/* 0291E76C */ cpu->ctr = cpu->r[6];
|
|
/* 0291E770 */ cpu->r[3] = cpu->r[1] + 0x00000084u;
|
|
/* 0291E774 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291E778 */ _t164 = cpu->r[1] + 0x00000084u;
|
|
/* 0291E778 */ cpu->r[4] = rbrew_read32(cpu->mem, _t164);
|
|
/* 0291E77C */ cpu->r[6] = 0x00000000u;
|
|
/* 0291E780 */ cpu->r[5] = cpu->r[29];
|
|
/* 0291E784 */ cpu->r[3] = cpu->r[28];
|
|
/* 0291E788 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0291E78C */ _t165 = cpu->r[28] + cpu->r[29];
|
|
/* 0291E78C */ rbrew_write8(cpu->mem, _t165, (uint8_t)cpu->r[30]);
|
|
L_0291E790: ; // 0x291e790
|
|
/* 0291E790 */ cpu->r[7] = 0xFFFFFFFFu;
|
|
/* 0291E794 */ _t166 = cpu->r[31] + 0x000000A8u;
|
|
/* 0291E794 */ rbrew_write16(cpu->mem, _t166, (uint16_t)cpu->r[7]);
|
|
L_0291E798: ; // 0x291e798
|
|
/* 0291E798 */ cpu->r[3] = cpu->r[31];
|
|
/* 0291E79C */ /* nop */
|
|
/* 0291E7A0 */ _t167 = cpu->r[1] + 0x000000E4u;
|
|
/* 0291E7A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t167);
|
|
/* 0291E7A4 */ cpu->lr = cpu->r[0];
|
|
/* 0291E7A8 */ cpu->r[1] = cpu->r[1] + 0x000000E0u;
|
|
/* 0291E7AC */ return;
|
|
}
|
|
|
|
// fn_0291E278 @ 0x291e278
|
|
void Gambit_fn_0291E278(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t117, _t118, _t119, _t120, _t121, _t122, _t123, _t124, _t125, _t126, _t127, _t128, _t129, _t130, _t131, _t132, _t133, _t134, _t135, _t136, _t137, _t138, _t139, _t140, _t141, _t142, _t143, _t144, _t145, _t146, _t147, _t148, _t149, _t150, _t151, _t152, _t153, _t154, _t155, _t156, _t157, _t158, _t159, _t160, _t161, _t162, _t163, _t164, _t165, _t166, _t167;
|
|
|
|
L_0291E278: ; // 0x291e278
|
|
/* 0291E278 */ _t0 = cpu->r[1] + 0xFFFFFF20u;
|
|
/* 0291E278 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291E278 */ cpu->r[1] = _t0;
|
|
/* 0291E27C */ _t1 = cpu->r[1] + 0x000000E4u;
|
|
/* 0291E27C */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0291E280 */ /* nop */
|
|
/* 0291E284 */ cpu->r[31] = cpu->r[3];
|
|
/* 0291E284 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0291E288 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291E288 */ _t3 = _t2 & 0x00000001u;
|
|
/* 0291E288 */ if (_t3) goto L_0291E28C; else goto L_0291E29C;
|
|
L_0291E28C: ; // 0x291e28c
|
|
/* 0291E28C */ cpu->r[3] = 0x000000ACu;
|
|
/* 0291E290 */ Gambit_fn_02801A78(cpu);
|
|
/* 0291E294 */ cpu->r[31] = cpu->r[3];
|
|
/* 0291E294 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0291E298 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291E298 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0291E298 */ if (_t5) goto L_0291E798; else goto L_0291E29C;
|
|
L_0291E29C: ; // 0x291e29c
|
|
/* 0291E29C */ cpu->r[3] = cpu->r[31];
|
|
/* 0291E2A0 */ Gambit_fn_02952E48(cpu);
|
|
/* 0291E2A4 */ cpu->r[3] = cpu->r[31] + 0x0000001Cu;
|
|
/* 0291E2A8 */ Gambit_fn_0294D990(cpu);
|
|
/* 0291E2AC */ cpu->r[8] = 0x10140000u;
|
|
/* 0291E2B0 */ cpu->r[24] = 0x00000000u;
|
|
/* 0291E2B4 */ cpu->r[8] = cpu->r[8] + 0x00002828u;
|
|
/* 0291E2B8 */ cpu->r[0] = 0x10140000u;
|
|
/* 0291E2BC */ cpu->r[26] = 0x10140000u;
|
|
/* 0291E2C0 */ _t6 = cpu->r[31] + 0x00000018u;
|
|
/* 0291E2C0 */ rbrew_write32(cpu->mem, _t6, cpu->r[8]);
|
|
/* 0291E2C4 */ cpu->r[0] = cpu->r[0] + 0x000028E0u;
|
|
/* 0291E2C8 */ _t7 = cpu->r[31] + 0x00000020u;
|
|
/* 0291E2C8 */ rbrew_write32(cpu->mem, _t7, cpu->r[24]);
|
|
/* 0291E2CC */ cpu->r[26] = cpu->r[26] + 0x000025A8u;
|
|
/* 0291E2D0 */ cpu->r[10] = 0x10140000u;
|
|
/* 0291E2D4 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0291E2D4 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0291E2D8 */ cpu->r[0] = 0x10140000u;
|
|
/* 0291E2DC */ cpu->r[10] = cpu->r[10] + 0x0000278Cu;
|
|
/* 0291E2E0 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0291E2E0 */ rbrew_write32(cpu->mem, _t9, cpu->r[26]);
|
|
/* 0291E2E4 */ cpu->r[0] = cpu->r[0] + 0x00002794u;
|
|
/* 0291E2E8 */ _t10 = cpu->r[1] + 0x00000010u;
|
|
/* 0291E2E8 */ rbrew_write32(cpu->mem, _t10, cpu->r[10]);
|
|
/* 0291E2EC */ _t11 = cpu->r[1] + 0x00000018u;
|
|
/* 0291E2EC */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 0291E2F0 */ cpu->r[30] = cpu->r[31] + 0x00000024u;
|
|
/* 0291E2F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0291E2F4 */ _t12 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0291E2F4 */ rbrew_write32(cpu->mem, _t12, cpu->r[26]);
|
|
/* 0291E2F8 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291E2F8 */ _t14 = _t13 & 0x00000001u;
|
|
/* 0291E2F8 */ if (_t14) goto L_0291E2FC; else goto L_0291E30C;
|
|
L_0291E2FC: ; // 0x291e2fc
|
|
/* 0291E2FC */ cpu->r[3] = 0x00000010u;
|
|
/* 0291E300 */ Gambit_fn_02801A78(cpu);
|
|
/* 0291E304 */ cpu->r[30] = cpu->r[3];
|
|
/* 0291E304 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0291E308 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291E308 */ _t16 = _t15 & 0x00000001u;
|
|
/* 0291E308 */ if (_t16) goto L_0291E34C; else goto L_0291E30C;
|
|
L_0291E30C: ; // 0x291e30c
|
|
/* 0291E30C */ cpu->r[3] = cpu->r[30];
|
|
/* 0291E310 */ Gambit_fn_0294F7F0(cpu);
|
|
/* 0291E314 */ cpu->r[12] = 0x10140000u;
|
|
/* 0291E318 */ cpu->r[3] = cpu->r[30];
|
|
/* 0291E31C */ cpu->r[12] = cpu->r[12] + 0x00002660u;
|
|
/* 0291E320 */ cpu->r[0] = 0x10140000u;
|
|
/* 0291E324 */ cpu->r[7] = cpu->r[31];
|
|
/* 0291E328 */ _t17 = cpu->r[30] + 0x00000008u;
|
|
/* 0291E328 */ rbrew_write32(cpu->mem, _t17, cpu->r[12]);
|
|
/* 0291E32C */ cpu->r[0] = cpu->r[0] + 0x000025A4u;
|
|
/* 0291E330 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 0291E334 */ _t18 = cpu->r[1] + 0x00000054u;
|
|
/* 0291E334 */ rbrew_write32(cpu->mem, _t18, cpu->r[26]);
|
|
/* 0291E338 */ cpu->r[6] = cpu->r[1] + 0x00000050u;
|
|
/* 0291E33C */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 0291E340 */ _t19 = cpu->r[1] + 0x00000050u;
|
|
/* 0291E340 */ rbrew_write32(cpu->mem, _t19, cpu->r[0]);
|
|
/* 0291E344 */ Gambit_fn_0294F794(cpu);
|
|
/* 0291E348 */ _t20 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0291E348 */ rbrew_write8(cpu->mem, _t20, (uint8_t)cpu->r[24]);
|
|
L_0291E34C: ; // 0x291e34c
|
|
/* 0291E34C */ cpu->r[5] = 0x10140000u;
|
|
/* 0291E350 */ _t21 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291E350 */ rbrew_write32(cpu->mem, _t21, cpu->r[26]);
|
|
/* 0291E354 */ cpu->r[25] = cpu->r[1] + 0x00000064u;
|
|
/* 0291E358 */ cpu->r[5] = cpu->r[5] + 0x00002780u;
|
|
/* 0291E35C */ _t22 = cpu->r[1] + 0x00000058u;
|
|
/* 0291E35C */ rbrew_write32(cpu->mem, _t22, cpu->r[25]);
|
|
/* 0291E360 */ cpu->r[0] = 0x00000020u;
|
|
/* 0291E364 */ _t23 = cpu->r[1] + 0x00000008u;
|
|
/* 0291E364 */ rbrew_write32(cpu->mem, _t23, cpu->r[5]);
|
|
/* 0291E368 */ cpu->r[30] = 0x10110000u;
|
|
/* 0291E36C */ cpu->r[28] = 0x10140000u;
|
|
/* 0291E370 */ _t24 = cpu->r[1] + 0x00000060u;
|
|
/* 0291E370 */ rbrew_write32(cpu->mem, _t24, cpu->r[0]);
|
|
/* 0291E374 */ cpu->r[28] = cpu->r[28] + 0x000025D8u;
|
|
/* 0291E378 */ _t25 = cpu->r[30] + 0x00007399u;
|
|
/* 0291E378 */ cpu->r[30] = rbrew_read8(cpu->mem, _t25);
|
|
/* 0291E37C */ cpu->r[27] = 0x10140000u;
|
|
/* 0291E380 */ _t26 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0291E380 */ rbrew_write32(cpu->mem, _t26, cpu->r[28]);
|
|
/* 0291E384 */ cpu->r[27] = cpu->r[27] + 0x000025C0u;
|
|
/* 0291E388 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0291E38C */ _t27 = cpu->r[1] + 0x00000083u;
|
|
/* 0291E38C */ rbrew_write8(cpu->mem, _t27, (uint8_t)cpu->r[30]);
|
|
/* 0291E390 */ Gambit_fn_0291EF28(cpu);
|
|
/* 0291E394 */ _t28 = cpu->r[1] + 0x00000008u;
|
|
/* 0291E394 */ cpu->r[12] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0291E398 */ _t29 = cpu->r[12] + 0x00000000u;
|
|
/* 0291E398 */ cpu->r[7] = rbrew_read8(cpu->mem, _t29);
|
|
/* 0291E39C */ cpu->r[6] = 0x00080000u;
|
|
/* 0291E3A0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[30]);
|
|
/* 0291E3A4 */ cpu->r[29] = 0x00000000u;
|
|
/* 0291E3A8 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291E3A8 */ _t31 = _t30 & 0x00000001u;
|
|
/* 0291E3A8 */ if (_t31) goto L_0291E3D0; else goto L_0291E3AC;
|
|
L_0291E3AC: ; // 0x291e3ac
|
|
/* 0291E3AC */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 0291E3B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[6]);
|
|
/* 0291E3B4 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 0291E3B8 */ _t32 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291E3B8 */ _t33 = _t32 & 0x00000001u;
|
|
/* 0291E3B8 */ if (_t33) goto L_0291E3CC; else goto L_0291E3BC;
|
|
L_0291E3BC: ; // 0x291e3bc
|
|
/* 0291E3BC */ _t34 = cpu->r[12] + 0x00000000u;
|
|
/* 0291E3BC */ cpu->r[0] = rbrew_read8(cpu->mem, _t34);
|
|
/* 0291E3C0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]);
|
|
/* 0291E3C4 */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291E3C4 */ _t36 = _t35 & 0x00000001u;
|
|
/* 0291E3C4 */ if (_t36) goto L_0291E3C8; else goto L_0291E3AC;
|
|
L_0291E3C8: ; // 0x291e3c8
|
|
/* 0291E3C8 */ goto L_0291E3D0;
|
|
L_0291E3CC: ; // 0x291e3cc
|
|
/* 0291E3CC */ cpu->r[29] = 0x00000000u;
|
|
L_0291E3D0: ; // 0x291e3d0
|
|
/* 0291E3D0 */ _t37 = cpu->r[1] + 0x00000060u;
|
|
/* 0291E3D0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0291E3D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[10]);
|
|
/* 0291E3D8 */ _t38 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291E3D8 */ _t39 = _t38 & 0x00000001u;
|
|
/* 0291E3D8 */ if (_t39) goto L_0291E3E0; else goto L_0291E3DC;
|
|
L_0291E3DC: ; // 0x291e3dc
|
|
/* 0291E3DC */ cpu->r[29] = cpu->r[10] + 0xFFFFFFFFu;
|
|
L_0291E3E0: ; // 0x291e3e0
|
|
/* 0291E3E0 */ _t40 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291E3E0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0291E3E4 */ _t41 = cpu->r[9] + 0x00000014u;
|
|
/* 0291E3E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0291E3E8 */ cpu->ctr = cpu->r[0];
|
|
/* 0291E3EC */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0291E3F0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291E3F4 */ _t42 = cpu->r[1] + 0x00000008u;
|
|
/* 0291E3F4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t42);
|
|
/* 0291E3F8 */ cpu->r[3] = cpu->r[25];
|
|
/* 0291E3FC */ cpu->r[5] = cpu->r[29];
|
|
/* 0291E400 */ cpu->r[6] = 0x00000000u;
|
|
/* 0291E404 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0291E408 */ _t43 = cpu->r[1] + 0x00000024u;
|
|
/* 0291E408 */ rbrew_write32(cpu->mem, _t43, cpu->r[26]);
|
|
/* 0291E40C */ cpu->r[0] = 0x10140000u;
|
|
/* 0291E410 */ _t44 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0291E410 */ rbrew_write32(cpu->mem, _t44, cpu->r[26]);
|
|
/* 0291E414 */ cpu->r[11] = 0x10140000u;
|
|
/* 0291E418 */ _t45 = cpu->r[25] + cpu->r[29];
|
|
/* 0291E418 */ rbrew_write8(cpu->mem, _t45, (uint8_t)cpu->r[30]);
|
|
/* 0291E41C */ cpu->r[11] = cpu->r[11] + 0x0000279Cu;
|
|
/* 0291E420 */ cpu->r[0] = cpu->r[0] + 0x000027A4u;
|
|
/* 0291E424 */ _t46 = cpu->r[1] + 0x00000034u;
|
|
/* 0291E424 */ rbrew_write32(cpu->mem, _t46, cpu->r[26]);
|
|
/* 0291E428 */ cpu->r[21] = cpu->r[31] + 0x00000034u;
|
|
/* 0291E428 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], 0x00000000u);
|
|
/* 0291E42C */ cpu->r[23] = 0x10140000u;
|
|
/* 0291E430 */ _t47 = cpu->r[1] + 0x00000028u;
|
|
/* 0291E430 */ rbrew_write32(cpu->mem, _t47, cpu->r[0]);
|
|
/* 0291E434 */ cpu->r[22] = 0x10140000u;
|
|
/* 0291E438 */ cpu->r[23] = cpu->r[23] + 0x000025F0u;
|
|
/* 0291E43C */ _t48 = cpu->r[1] + 0x00000020u;
|
|
/* 0291E43C */ rbrew_write32(cpu->mem, _t48, cpu->r[11]);
|
|
/* 0291E440 */ cpu->r[22] = cpu->r[22] + 0x000027B4u;
|
|
/* 0291E444 */ cpu->r[25] = 0x10140000u;
|
|
/* 0291E448 */ _t49 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0291E448 */ rbrew_write32(cpu->mem, _t49, cpu->r[23]);
|
|
/* 0291E44C */ cpu->r[25] = cpu->r[25] + 0x000026F0u;
|
|
/* 0291E450 */ _t50 = cpu->r[1] + 0x00000030u;
|
|
/* 0291E450 */ rbrew_write32(cpu->mem, _t50, cpu->r[22]);
|
|
/* 0291E454 */ _t51 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291E454 */ _t52 = _t51 & 0x00000001u;
|
|
/* 0291E454 */ if (_t52) goto L_0291E458; else goto L_0291E468;
|
|
L_0291E458: ; // 0x291e458
|
|
/* 0291E458 */ cpu->r[3] = 0x00000038u;
|
|
/* 0291E45C */ Gambit_fn_02801A78(cpu);
|
|
/* 0291E460 */ cpu->r[21] = cpu->r[3];
|
|
/* 0291E460 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], 0x00000000u);
|
|
/* 0291E464 */ _t53 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291E464 */ _t54 = _t53 & 0x00000001u;
|
|
/* 0291E464 */ if (_t54) goto L_0291E574; else goto L_0291E468;
|
|
L_0291E468: ; // 0x291e468
|
|
/* 0291E468 */ cpu->r[3] = cpu->r[21];
|
|
/* 0291E46C */ Gambit_fn_0294F7F0(cpu);
|
|
/* 0291E470 */ cpu->r[29] = cpu->r[21] + 0x0000000Cu;
|
|
/* 0291E470 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0291E474 */ _t55 = cpu->r[21] + 0x00000008u;
|
|
/* 0291E474 */ rbrew_write32(cpu->mem, _t55, cpu->r[25]);
|
|
/* 0291E478 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291E478 */ _t57 = _t56 & 0x00000001u;
|
|
/* 0291E478 */ if (_t57) goto L_0291E47C; else goto L_0291E48C;
|
|
L_0291E47C: ; // 0x291e47c
|
|
/* 0291E47C */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0291E480 */ Gambit_fn_02801A78(cpu);
|
|
/* 0291E484 */ cpu->r[29] = cpu->r[3];
|
|
/* 0291E484 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0291E488 */ _t58 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291E488 */ _t59 = _t58 & 0x00000001u;
|
|
/* 0291E488 */ if (_t59) goto L_0291E4C8; else goto L_0291E48C;
|
|
L_0291E48C: ; // 0x291e48c
|
|
/* 0291E48C */ cpu->r[3] = cpu->r[29];
|
|
/* 0291E48C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291E490 */ _t60 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291E490 */ _t61 = _t60 & 0x00000001u;
|
|
/* 0291E490 */ if (_t61) goto L_0291E494; else goto L_0291E4A4;
|
|
L_0291E494: ; // 0x291e494
|
|
/* 0291E494 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0291E498 */ Gambit_fn_02801A78(cpu);
|
|
/* 0291E49C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291E4A0 */ _t62 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291E4A0 */ _t63 = _t62 & 0x00000001u;
|
|
/* 0291E4A0 */ if (_t63) goto L_0291E4BC; else goto L_0291E4A4;
|
|
L_0291E4A4: ; // 0x291e4a4
|
|
/* 0291E4A4 */ cpu->r[0] = cpu->r[29] + 0x0000000Cu;
|
|
/* 0291E4A8 */ _t64 = cpu->r[3] + 0x00000004u;
|
|
/* 0291E4A8 */ rbrew_write32(cpu->mem, _t64, cpu->r[27]);
|
|
/* 0291E4AC */ cpu->r[9] = 0x00000020u;
|
|
/* 0291E4B0 */ _t65 = cpu->r[3] + 0x00000000u;
|
|
/* 0291E4B0 */ rbrew_write32(cpu->mem, _t65, cpu->r[0]);
|
|
/* 0291E4B4 */ _t66 = cpu->r[3] + 0x00000008u;
|
|
/* 0291E4B4 */ rbrew_write32(cpu->mem, _t66, cpu->r[9]);
|
|
/* 0291E4B8 */ _t67 = cpu->r[29] + 0x0000002Bu;
|
|
/* 0291E4B8 */ rbrew_write8(cpu->mem, _t67, (uint8_t)cpu->r[30]);
|
|
L_0291E4BC: ; // 0x291e4bc
|
|
/* 0291E4BC */ _t68 = cpu->r[29] + 0x00000000u;
|
|
/* 0291E4BC */ cpu->r[10] = rbrew_read32(cpu->mem, _t68);
|
|
/* 0291E4C0 */ _t69 = cpu->r[29] + 0x00000004u;
|
|
/* 0291E4C0 */ rbrew_write32(cpu->mem, _t69, cpu->r[28]);
|
|
/* 0291E4C4 */ _t70 = cpu->r[10] + 0x00000000u;
|
|
/* 0291E4C4 */ rbrew_write8(cpu->mem, _t70, (uint8_t)cpu->r[30]);
|
|
L_0291E4C8: ; // 0x291e4c8
|
|
/* 0291E4C8 */ cpu->r[6] = cpu->r[1] + 0x00000030u;
|
|
/* 0291E4CC */ cpu->r[3] = cpu->r[21];
|
|
/* 0291E4D0 */ cpu->r[7] = cpu->r[31];
|
|
/* 0291E4D4 */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 0291E4D8 */ cpu->r[5] = cpu->r[1] + 0x00000028u;
|
|
/* 0291E4DC */ _t71 = cpu->r[21] + 0x00000010u;
|
|
/* 0291E4DC */ rbrew_write32(cpu->mem, _t71, cpu->r[23]);
|
|
/* 0291E4E0 */ Gambit_fn_0294F794(cpu);
|
|
/* 0291E4E4 */ _t72 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0291E4E4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t72);
|
|
/* 0291E4E8 */ _t73 = cpu->r[11] + 0x00000014u;
|
|
/* 0291E4E8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t73);
|
|
/* 0291E4EC */ cpu->ctr = cpu->r[12];
|
|
/* 0291E4F0 */ _t74 = cpu->r[21] + 0x0000000Cu;
|
|
/* 0291E4F0 */ cpu->r[20] = rbrew_read32(cpu->mem, _t74);
|
|
/* 0291E4F4 */ cpu->r[3] = cpu->r[1] + 0x00000058u;
|
|
/* 0291E4F8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291E4FC */ _t75 = cpu->r[1] + 0x00000058u;
|
|
/* 0291E4FC */ cpu->r[7] = rbrew_read32(cpu->mem, _t75);
|
|
/* 0291E500 */ _t76 = cpu->r[7] + 0x00000000u;
|
|
/* 0291E500 */ cpu->r[0] = rbrew_read8(cpu->mem, _t76);
|
|
/* 0291E504 */ cpu->r[9] = 0x00080000u;
|
|
/* 0291E508 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]);
|
|
/* 0291E50C */ cpu->r[29] = 0x00000000u;
|
|
/* 0291E510 */ _t77 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291E510 */ _t78 = _t77 & 0x00000001u;
|
|
/* 0291E510 */ if (_t78) goto L_0291E538; else goto L_0291E514;
|
|
L_0291E514: ; // 0x291e514
|
|
/* 0291E514 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 0291E518 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[9]);
|
|
/* 0291E51C */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 0291E520 */ _t79 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291E520 */ _t80 = _t79 & 0x00000001u;
|
|
/* 0291E520 */ if (_t80) goto L_0291E534; else goto L_0291E524;
|
|
L_0291E524: ; // 0x291e524
|
|
/* 0291E524 */ _t81 = cpu->r[7] + 0x00000000u;
|
|
/* 0291E524 */ cpu->r[0] = rbrew_read8(cpu->mem, _t81);
|
|
/* 0291E528 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]);
|
|
/* 0291E52C */ _t82 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291E52C */ _t83 = _t82 & 0x00000001u;
|
|
/* 0291E52C */ if (_t83) goto L_0291E530; else goto L_0291E514;
|
|
L_0291E530: ; // 0x291e530
|
|
/* 0291E530 */ goto L_0291E538;
|
|
L_0291E534: ; // 0x291e534
|
|
/* 0291E534 */ cpu->r[29] = 0x00000000u;
|
|
L_0291E538: ; // 0x291e538
|
|
/* 0291E538 */ _t84 = cpu->r[21] + 0x00000014u;
|
|
/* 0291E538 */ cpu->r[10] = rbrew_read32(cpu->mem, _t84);
|
|
/* 0291E53C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[10]);
|
|
/* 0291E540 */ _t85 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291E540 */ _t86 = _t85 & 0x00000001u;
|
|
/* 0291E540 */ if (_t86) goto L_0291E548; else goto L_0291E544;
|
|
L_0291E544: ; // 0x291e544
|
|
/* 0291E544 */ cpu->r[29] = cpu->r[10] + 0xFFFFFFFFu;
|
|
L_0291E548: ; // 0x291e548
|
|
/* 0291E548 */ _t87 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0291E548 */ cpu->r[7] = rbrew_read32(cpu->mem, _t87);
|
|
/* 0291E54C */ _t88 = cpu->r[7] + 0x00000014u;
|
|
/* 0291E54C */ cpu->r[9] = rbrew_read32(cpu->mem, _t88);
|
|
/* 0291E550 */ cpu->ctr = cpu->r[9];
|
|
/* 0291E554 */ cpu->r[3] = cpu->r[1] + 0x00000058u;
|
|
/* 0291E558 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291E55C */ _t89 = cpu->r[1] + 0x00000058u;
|
|
/* 0291E55C */ cpu->r[4] = rbrew_read32(cpu->mem, _t89);
|
|
/* 0291E560 */ cpu->r[6] = 0x00000000u;
|
|
/* 0291E564 */ cpu->r[5] = cpu->r[29];
|
|
/* 0291E568 */ cpu->r[3] = cpu->r[20];
|
|
/* 0291E56C */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0291E570 */ _t90 = cpu->r[20] + cpu->r[29];
|
|
/* 0291E570 */ rbrew_write8(cpu->mem, _t90, (uint8_t)cpu->r[30]);
|
|
L_0291E574: ; // 0x291e574
|
|
/* 0291E574 */ cpu->r[3] = cpu->r[31] + 0x0000006Eu;
|
|
/* 0291E574 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291E578 */ _t91 = cpu->r[31] + 0x0000006Cu;
|
|
/* 0291E578 */ rbrew_write16(cpu->mem, _t91, (uint16_t)cpu->r[24]);
|
|
/* 0291E57C */ _t92 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291E57C */ _t93 = _t92 & 0x00000001u;
|
|
/* 0291E57C */ if (_t93) goto L_0291E580; else goto L_0291E590;
|
|
L_0291E580: ; // 0x291e580
|
|
/* 0291E580 */ cpu->r[3] = 0x00000001u;
|
|
/* 0291E584 */ Gambit_fn_02801A78(cpu);
|
|
/* 0291E588 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291E58C */ _t94 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291E58C */ _t95 = _t94 & 0x00000001u;
|
|
/* 0291E58C */ if (_t95) goto L_0291E598; else goto L_0291E590;
|
|
L_0291E590: ; // 0x291e590
|
|
/* 0291E590 */ cpu->r[0] = 0x00000001u;
|
|
/* 0291E594 */ _t96 = cpu->r[3] + 0x00000000u;
|
|
/* 0291E594 */ rbrew_write8(cpu->mem, _t96, (uint8_t)cpu->r[0]);
|
|
L_0291E598: ; // 0x291e598
|
|
/* 0291E598 */ Gambit_fn_0294D9E4(cpu);
|
|
/* 0291E59C */ _t97 = cpu->r[1] + 0x000000AFu;
|
|
/* 0291E59C */ rbrew_write8(cpu->mem, _t97, (uint8_t)cpu->r[30]);
|
|
/* 0291E5A0 */ cpu->r[24] = cpu->r[1] + 0x00000090u;
|
|
/* 0291E5A4 */ _t98 = cpu->r[1] + 0x00000088u;
|
|
/* 0291E5A4 */ rbrew_write32(cpu->mem, _t98, cpu->r[28]);
|
|
/* 0291E5A8 */ cpu->r[5] = 0x00000020u;
|
|
/* 0291E5AC */ _t99 = cpu->r[1] + 0x00000084u;
|
|
/* 0291E5AC */ rbrew_write32(cpu->mem, _t99, cpu->r[24]);
|
|
/* 0291E5B0 */ _t100 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0291E5B0 */ rbrew_write32(cpu->mem, _t100, cpu->r[5]);
|
|
/* 0291E5B4 */ _t101 = cpu->r[3] + 0x00000004u;
|
|
/* 0291E5B4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t101);
|
|
/* 0291E5B8 */ _t102 = cpu->r[6] + 0x00000014u;
|
|
/* 0291E5B8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t102);
|
|
/* 0291E5BC */ cpu->ctr = cpu->r[8];
|
|
/* 0291E5C0 */ cpu->r[21] = cpu->r[3];
|
|
/* 0291E5C4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291E5C8 */ _t103 = cpu->r[21] + 0x00000000u;
|
|
/* 0291E5C8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t103);
|
|
/* 0291E5CC */ _t104 = cpu->r[11] + 0x00000000u;
|
|
/* 0291E5CC */ cpu->r[10] = rbrew_read8(cpu->mem, _t104);
|
|
/* 0291E5D0 */ cpu->r[12] = 0x00080000u;
|
|
/* 0291E5D4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[30]);
|
|
/* 0291E5D8 */ cpu->r[29] = 0x00000000u;
|
|
/* 0291E5DC */ _t105 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291E5DC */ _t106 = _t105 & 0x00000001u;
|
|
/* 0291E5DC */ if (_t106) goto L_0291E604; else goto L_0291E5E0;
|
|
L_0291E5E0: ; // 0x291e5e0
|
|
/* 0291E5E0 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 0291E5E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[12]);
|
|
/* 0291E5E8 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 0291E5EC */ _t107 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291E5EC */ _t108 = _t107 & 0x00000001u;
|
|
/* 0291E5EC */ if (_t108) goto L_0291E600; else goto L_0291E5F0;
|
|
L_0291E5F0: ; // 0x291e5f0
|
|
/* 0291E5F0 */ _t109 = cpu->r[11] + 0x00000000u;
|
|
/* 0291E5F0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t109);
|
|
/* 0291E5F4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]);
|
|
/* 0291E5F8 */ _t110 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291E5F8 */ _t111 = _t110 & 0x00000001u;
|
|
/* 0291E5F8 */ if (_t111) goto L_0291E5FC; else goto L_0291E5E0;
|
|
L_0291E5FC: ; // 0x291e5fc
|
|
/* 0291E5FC */ goto L_0291E604;
|
|
L_0291E600: ; // 0x291e600
|
|
/* 0291E600 */ cpu->r[29] = 0x00000000u;
|
|
L_0291E604: ; // 0x291e604
|
|
/* 0291E604 */ _t112 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0291E604 */ cpu->r[12] = rbrew_read32(cpu->mem, _t112);
|
|
/* 0291E608 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[12]);
|
|
/* 0291E60C */ _t113 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291E60C */ _t114 = _t113 & 0x00000001u;
|
|
/* 0291E60C */ if (_t114) goto L_0291E614; else goto L_0291E610;
|
|
L_0291E610: ; // 0x291e610
|
|
/* 0291E610 */ cpu->r[29] = cpu->r[12] + 0xFFFFFFFFu;
|
|
L_0291E614: ; // 0x291e614
|
|
/* 0291E614 */ _t115 = cpu->r[21] + 0x00000004u;
|
|
/* 0291E614 */ cpu->r[5] = rbrew_read32(cpu->mem, _t115);
|
|
/* 0291E618 */ _t116 = cpu->r[5] + 0x00000014u;
|
|
/* 0291E618 */ cpu->r[7] = rbrew_read32(cpu->mem, _t116);
|
|
/* 0291E61C */ cpu->ctr = cpu->r[7];
|
|
/* 0291E620 */ cpu->r[3] = cpu->r[21];
|
|
/* 0291E624 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291E628 */ _t117 = cpu->r[21] + 0x00000000u;
|
|
/* 0291E628 */ cpu->r[4] = rbrew_read32(cpu->mem, _t117);
|
|
/* 0291E62C */ cpu->r[6] = 0x00000000u;
|
|
/* 0291E630 */ cpu->r[5] = cpu->r[29];
|
|
/* 0291E634 */ cpu->r[3] = cpu->r[24];
|
|
/* 0291E638 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0291E63C */ _t118 = cpu->r[24] + cpu->r[29];
|
|
/* 0291E63C */ rbrew_write8(cpu->mem, _t118, (uint8_t)cpu->r[30]);
|
|
/* 0291E640 */ cpu->r[0] = 0x10140000u;
|
|
/* 0291E644 */ _t119 = cpu->r[1] + 0x00000044u;
|
|
/* 0291E644 */ rbrew_write32(cpu->mem, _t119, cpu->r[26]);
|
|
/* 0291E648 */ cpu->r[9] = 0x10140000u;
|
|
/* 0291E64C */ cpu->r[0] = cpu->r[0] + 0x00002784u;
|
|
/* 0291E650 */ _t120 = cpu->r[1] + 0x00000088u;
|
|
/* 0291E650 */ rbrew_write32(cpu->mem, _t120, cpu->r[23]);
|
|
/* 0291E654 */ cpu->r[9] = cpu->r[9] + 0x000027CCu;
|
|
/* 0291E658 */ _t121 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0291E658 */ rbrew_write32(cpu->mem, _t121, cpu->r[26]);
|
|
/* 0291E65C */ _t122 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0291E65C */ rbrew_write32(cpu->mem, _t122, cpu->r[26]);
|
|
/* 0291E660 */ _t123 = cpu->r[1] + 0x00000048u;
|
|
/* 0291E660 */ rbrew_write32(cpu->mem, _t123, cpu->r[22]);
|
|
/* 0291E664 */ cpu->r[26] = cpu->r[31] + 0x00000070u;
|
|
/* 0291E664 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 0291E668 */ _t124 = cpu->r[1] + 0x00000040u;
|
|
/* 0291E668 */ rbrew_write32(cpu->mem, _t124, cpu->r[9]);
|
|
/* 0291E66C */ _t125 = cpu->r[1] + 0x00000038u;
|
|
/* 0291E66C */ rbrew_write32(cpu->mem, _t125, cpu->r[0]);
|
|
/* 0291E670 */ _t126 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291E670 */ _t127 = _t126 & 0x00000001u;
|
|
/* 0291E670 */ if (_t127) goto L_0291E674; else goto L_0291E684;
|
|
L_0291E674: ; // 0x291e674
|
|
/* 0291E674 */ cpu->r[3] = 0x00000038u;
|
|
/* 0291E678 */ Gambit_fn_02801A78(cpu);
|
|
/* 0291E67C */ cpu->r[26] = cpu->r[3];
|
|
/* 0291E67C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 0291E680 */ _t128 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291E680 */ _t129 = _t128 & 0x00000001u;
|
|
/* 0291E680 */ if (_t129) goto L_0291E790; else goto L_0291E684;
|
|
L_0291E684: ; // 0x291e684
|
|
/* 0291E684 */ cpu->r[3] = cpu->r[26];
|
|
/* 0291E688 */ Gambit_fn_0294F7F0(cpu);
|
|
/* 0291E68C */ cpu->r[29] = cpu->r[26] + 0x0000000Cu;
|
|
/* 0291E68C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0291E690 */ _t130 = cpu->r[26] + 0x00000008u;
|
|
/* 0291E690 */ rbrew_write32(cpu->mem, _t130, cpu->r[25]);
|
|
/* 0291E694 */ _t131 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291E694 */ _t132 = _t131 & 0x00000001u;
|
|
/* 0291E694 */ if (_t132) goto L_0291E698; else goto L_0291E6A8;
|
|
L_0291E698: ; // 0x291e698
|
|
/* 0291E698 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 0291E69C */ Gambit_fn_02801A78(cpu);
|
|
/* 0291E6A0 */ cpu->r[29] = cpu->r[3];
|
|
/* 0291E6A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0291E6A4 */ _t133 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291E6A4 */ _t134 = _t133 & 0x00000001u;
|
|
/* 0291E6A4 */ if (_t134) goto L_0291E6E4; else goto L_0291E6A8;
|
|
L_0291E6A8: ; // 0x291e6a8
|
|
/* 0291E6A8 */ cpu->r[3] = cpu->r[29];
|
|
/* 0291E6A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291E6AC */ _t135 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291E6AC */ _t136 = _t135 & 0x00000001u;
|
|
/* 0291E6AC */ if (_t136) goto L_0291E6B0; else goto L_0291E6C0;
|
|
L_0291E6B0: ; // 0x291e6b0
|
|
/* 0291E6B0 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0291E6B4 */ Gambit_fn_02801A78(cpu);
|
|
/* 0291E6B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291E6BC */ _t137 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291E6BC */ _t138 = _t137 & 0x00000001u;
|
|
/* 0291E6BC */ if (_t138) goto L_0291E6D8; else goto L_0291E6C0;
|
|
L_0291E6C0: ; // 0x291e6c0
|
|
/* 0291E6C0 */ cpu->r[0] = cpu->r[29] + 0x0000000Cu;
|
|
/* 0291E6C4 */ _t139 = cpu->r[3] + 0x00000004u;
|
|
/* 0291E6C4 */ rbrew_write32(cpu->mem, _t139, cpu->r[27]);
|
|
/* 0291E6C8 */ cpu->r[5] = 0x00000020u;
|
|
/* 0291E6CC */ _t140 = cpu->r[3] + 0x00000000u;
|
|
/* 0291E6CC */ rbrew_write32(cpu->mem, _t140, cpu->r[0]);
|
|
/* 0291E6D0 */ _t141 = cpu->r[3] + 0x00000008u;
|
|
/* 0291E6D0 */ rbrew_write32(cpu->mem, _t141, cpu->r[5]);
|
|
/* 0291E6D4 */ _t142 = cpu->r[29] + 0x0000002Bu;
|
|
/* 0291E6D4 */ rbrew_write8(cpu->mem, _t142, (uint8_t)cpu->r[30]);
|
|
L_0291E6D8: ; // 0x291e6d8
|
|
/* 0291E6D8 */ _t143 = cpu->r[29] + 0x00000000u;
|
|
/* 0291E6D8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t143);
|
|
/* 0291E6DC */ _t144 = cpu->r[29] + 0x00000004u;
|
|
/* 0291E6DC */ rbrew_write32(cpu->mem, _t144, cpu->r[28]);
|
|
/* 0291E6E0 */ _t145 = cpu->r[6] + 0x00000000u;
|
|
/* 0291E6E0 */ rbrew_write8(cpu->mem, _t145, (uint8_t)cpu->r[30]);
|
|
L_0291E6E4: ; // 0x291e6e4
|
|
/* 0291E6E4 */ cpu->r[6] = cpu->r[1] + 0x00000048u;
|
|
/* 0291E6E8 */ cpu->r[3] = cpu->r[26];
|
|
/* 0291E6EC */ cpu->r[7] = cpu->r[31];
|
|
/* 0291E6F0 */ cpu->r[4] = cpu->r[1] + 0x00000038u;
|
|
/* 0291E6F4 */ cpu->r[5] = cpu->r[1] + 0x00000040u;
|
|
/* 0291E6F8 */ _t146 = cpu->r[26] + 0x00000010u;
|
|
/* 0291E6F8 */ rbrew_write32(cpu->mem, _t146, cpu->r[23]);
|
|
/* 0291E6FC */ Gambit_fn_0294F794(cpu);
|
|
/* 0291E700 */ _t147 = cpu->r[1] + 0x00000088u;
|
|
/* 0291E700 */ cpu->r[7] = rbrew_read32(cpu->mem, _t147);
|
|
/* 0291E704 */ _t148 = cpu->r[7] + 0x00000014u;
|
|
/* 0291E704 */ cpu->r[0] = rbrew_read32(cpu->mem, _t148);
|
|
/* 0291E708 */ cpu->ctr = cpu->r[0];
|
|
/* 0291E70C */ _t149 = cpu->r[26] + 0x0000000Cu;
|
|
/* 0291E70C */ cpu->r[28] = rbrew_read32(cpu->mem, _t149);
|
|
/* 0291E710 */ cpu->r[3] = cpu->r[1] + 0x00000084u;
|
|
/* 0291E714 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291E718 */ _t150 = cpu->r[1] + 0x00000084u;
|
|
/* 0291E718 */ cpu->r[6] = rbrew_read32(cpu->mem, _t150);
|
|
/* 0291E71C */ _t151 = cpu->r[6] + 0x00000000u;
|
|
/* 0291E71C */ cpu->r[9] = rbrew_read8(cpu->mem, _t151);
|
|
/* 0291E720 */ cpu->r[8] = 0x00080000u;
|
|
/* 0291E724 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[30]);
|
|
/* 0291E728 */ cpu->r[29] = 0x00000000u;
|
|
/* 0291E72C */ _t152 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291E72C */ _t153 = _t152 & 0x00000001u;
|
|
/* 0291E72C */ if (_t153) goto L_0291E754; else goto L_0291E730;
|
|
L_0291E730: ; // 0x291e730
|
|
/* 0291E730 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 0291E734 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[8]);
|
|
/* 0291E738 */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 0291E73C */ _t154 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291E73C */ _t155 = _t154 & 0x00000001u;
|
|
/* 0291E73C */ if (_t155) goto L_0291E750; else goto L_0291E740;
|
|
L_0291E740: ; // 0x291e740
|
|
/* 0291E740 */ _t156 = cpu->r[6] + 0x00000000u;
|
|
/* 0291E740 */ cpu->r[0] = rbrew_read8(cpu->mem, _t156);
|
|
/* 0291E744 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]);
|
|
/* 0291E748 */ _t157 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291E748 */ _t158 = _t157 & 0x00000001u;
|
|
/* 0291E748 */ if (_t158) goto L_0291E74C; else goto L_0291E730;
|
|
L_0291E74C: ; // 0x291e74c
|
|
/* 0291E74C */ goto L_0291E754;
|
|
L_0291E750: ; // 0x291e750
|
|
/* 0291E750 */ cpu->r[29] = 0x00000000u;
|
|
L_0291E754: ; // 0x291e754
|
|
/* 0291E754 */ _t159 = cpu->r[26] + 0x00000014u;
|
|
/* 0291E754 */ cpu->r[5] = rbrew_read32(cpu->mem, _t159);
|
|
/* 0291E758 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[5]);
|
|
/* 0291E75C */ _t160 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291E75C */ _t161 = _t160 & 0x00000001u;
|
|
/* 0291E75C */ if (_t161) goto L_0291E764; else goto L_0291E760;
|
|
L_0291E760: ; // 0x291e760
|
|
/* 0291E760 */ cpu->r[29] = cpu->r[5] + 0xFFFFFFFFu;
|
|
L_0291E764: ; // 0x291e764
|
|
/* 0291E764 */ _t162 = cpu->r[1] + 0x00000088u;
|
|
/* 0291E764 */ cpu->r[12] = rbrew_read32(cpu->mem, _t162);
|
|
/* 0291E768 */ _t163 = cpu->r[12] + 0x00000014u;
|
|
/* 0291E768 */ cpu->r[6] = rbrew_read32(cpu->mem, _t163);
|
|
/* 0291E76C */ cpu->ctr = cpu->r[6];
|
|
/* 0291E770 */ cpu->r[3] = cpu->r[1] + 0x00000084u;
|
|
/* 0291E774 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291E778 */ _t164 = cpu->r[1] + 0x00000084u;
|
|
/* 0291E778 */ cpu->r[4] = rbrew_read32(cpu->mem, _t164);
|
|
/* 0291E77C */ cpu->r[6] = 0x00000000u;
|
|
/* 0291E780 */ cpu->r[5] = cpu->r[29];
|
|
/* 0291E784 */ cpu->r[3] = cpu->r[28];
|
|
/* 0291E788 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0291E78C */ _t165 = cpu->r[28] + cpu->r[29];
|
|
/* 0291E78C */ rbrew_write8(cpu->mem, _t165, (uint8_t)cpu->r[30]);
|
|
L_0291E790: ; // 0x291e790
|
|
/* 0291E790 */ cpu->r[7] = 0xFFFFFFFFu;
|
|
/* 0291E794 */ _t166 = cpu->r[31] + 0x000000A8u;
|
|
/* 0291E794 */ rbrew_write16(cpu->mem, _t166, (uint16_t)cpu->r[7]);
|
|
L_0291E798: ; // 0x291e798
|
|
/* 0291E798 */ cpu->r[3] = cpu->r[31];
|
|
/* 0291E79C */ /* nop */
|
|
/* 0291E7A0 */ _t167 = cpu->r[1] + 0x000000E4u;
|
|
/* 0291E7A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t167);
|
|
/* 0291E7A4 */ cpu->lr = cpu->r[0];
|
|
/* 0291E7A8 */ cpu->r[1] = cpu->r[1] + 0x000000E0u;
|
|
/* 0291E7AC */ return;
|
|
}
|
|
|
|
// fn_0291E7B0 @ 0x291e7b0
|
|
void Gambit_fn_0291E7B0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _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_0291E7B0: ; // 0x291e7b0
|
|
/* 0291E7B0 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 0291E7B0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291E7B0 */ cpu->r[1] = _t0;
|
|
/* 0291E7B4 */ /* nop */
|
|
/* 0291E7B8 */ cpu->r[0] = cpu->lr;
|
|
/* 0291E7BC */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 0291E7BC */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0291E7C0 */ cpu->r[27] = cpu->r[3];
|
|
/* 0291E7C4 */ _t2 = cpu->r[27] + 0x00000048u;
|
|
/* 0291E7C4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0291E7C8 */ cpu->r[28] = cpu->r[4];
|
|
/* 0291E7CC */ cpu->r[31] = 0x10110000u;
|
|
/* 0291E7D0 */ cpu->r[30] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 0291E7D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0291E7D4 */ _t3 = cpu->r[27] + 0x00000040u;
|
|
/* 0291E7D4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0291E7D8 */ _t4 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291E7D8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0291E7D8 */ if (_t5) goto L_0291E7F4; else goto L_0291E7DC;
|
|
L_0291E7DC: ; // 0x291e7dc
|
|
/* 0291E7DC */ _t6 = cpu->r[28] + 0x00000004u;
|
|
/* 0291E7DC */ cpu->r[8] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0291E7E0 */ _t7 = cpu->r[31] + 0x00007399u;
|
|
/* 0291E7E0 */ cpu->r[31] = rbrew_read8(cpu->mem, _t7);
|
|
/* 0291E7E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[12]);
|
|
/* 0291E7E8 */ _t8 = cpu->r[8] + 0x00000014u;
|
|
/* 0291E7E8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0291E7EC */ _t9 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291E7EC */ _t10 = _t9 & 0x00000001u;
|
|
/* 0291E7EC */ if (_t10) goto L_0291E7F0; else goto L_0291E878;
|
|
L_0291E7F0: ; // 0x291e7f0
|
|
/* 0291E7F0 */ goto L_0291E87C;
|
|
L_0291E7F4: ; // 0x291e7f4
|
|
/* 0291E7F4 */ _t11 = cpu->r[28] + 0x00000004u;
|
|
/* 0291E7F4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0291E7F8 */ _t12 = cpu->r[11] + 0x00000014u;
|
|
/* 0291E7F8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0291E7FC */ cpu->ctr = cpu->r[7];
|
|
/* 0291E800 */ cpu->r[3] = cpu->r[28];
|
|
/* 0291E804 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291E808 */ _t13 = cpu->r[28] + 0x00000000u;
|
|
/* 0291E808 */ cpu->r[10] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0291E80C */ _t14 = cpu->r[31] + 0x00007399u;
|
|
/* 0291E80C */ cpu->r[31] = rbrew_read8(cpu->mem, _t14);
|
|
/* 0291E810 */ _t15 = cpu->r[10] + 0x00000000u;
|
|
/* 0291E810 */ cpu->r[0] = rbrew_read8(cpu->mem, _t15);
|
|
/* 0291E814 */ cpu->r[30] = 0x00000000u;
|
|
/* 0291E818 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 0291E81C */ cpu->r[0] = 0x00080000u;
|
|
/* 0291E820 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291E820 */ _t17 = _t16 & 0x00000001u;
|
|
/* 0291E820 */ if (_t17) goto L_0291E864; else goto L_0291E824;
|
|
L_0291E824: ; // 0x291e824
|
|
/* 0291E824 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 0291E828 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]);
|
|
/* 0291E82C */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 0291E830 */ _t18 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291E830 */ _t19 = _t18 & 0x00000001u;
|
|
/* 0291E830 */ if (_t19) goto L_0291E848; else goto L_0291E834;
|
|
L_0291E834: ; // 0x291e834
|
|
/* 0291E834 */ _t20 = cpu->r[10] + 0x00000000u;
|
|
/* 0291E834 */ cpu->r[12] = rbrew_read8(cpu->mem, _t20);
|
|
/* 0291E838 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[31]);
|
|
/* 0291E83C */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291E83C */ _t22 = _t21 & 0x00000001u;
|
|
/* 0291E83C */ if (_t22) goto L_0291E840; else goto L_0291E824;
|
|
L_0291E840: ; // 0x291e840
|
|
/* 0291E840 */ _t23 = cpu->r[27] + 0x00000048u;
|
|
/* 0291E840 */ cpu->r[12] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0291E844 */ goto L_0291E868;
|
|
L_0291E848: ; // 0x291e848
|
|
/* 0291E848 */ _t24 = cpu->r[27] + 0x00000048u;
|
|
/* 0291E848 */ cpu->r[12] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0291E84C */ _t25 = cpu->r[28] + 0x00000004u;
|
|
/* 0291E84C */ cpu->r[8] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0291E850 */ cpu->r[30] = 0x00000000u;
|
|
/* 0291E854 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[12]);
|
|
/* 0291E858 */ _t26 = cpu->r[8] + 0x00000014u;
|
|
/* 0291E858 */ cpu->r[9] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0291E85C */ _t27 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291E85C */ _t28 = _t27 & 0x00000001u;
|
|
/* 0291E85C */ if (_t28) goto L_0291E860; else goto L_0291E878;
|
|
L_0291E860: ; // 0x291e860
|
|
/* 0291E860 */ goto L_0291E87C;
|
|
L_0291E864: ; // 0x291e864
|
|
/* 0291E864 */ _t29 = cpu->r[27] + 0x00000048u;
|
|
/* 0291E864 */ cpu->r[12] = rbrew_read32(cpu->mem, _t29);
|
|
L_0291E868: ; // 0x291e868
|
|
/* 0291E868 */ _t30 = cpu->r[28] + 0x00000004u;
|
|
/* 0291E868 */ cpu->r[8] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0291E86C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[12]);
|
|
/* 0291E870 */ _t31 = cpu->r[8] + 0x00000014u;
|
|
/* 0291E870 */ cpu->r[9] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0291E874 */ _t32 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291E874 */ _t33 = _t32 & 0x00000001u;
|
|
/* 0291E874 */ if (_t33) goto L_0291E87C; else goto L_0291E878;
|
|
L_0291E878: ; // 0x291e878
|
|
/* 0291E878 */ cpu->r[30] = cpu->r[12] + 0xFFFFFFFFu;
|
|
L_0291E87C: ; // 0x291e87c
|
|
/* 0291E87C */ cpu->ctr = cpu->r[9];
|
|
/* 0291E880 */ cpu->r[3] = cpu->r[28];
|
|
/* 0291E884 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291E888 */ _t34 = cpu->r[28] + 0x00000000u;
|
|
/* 0291E888 */ cpu->r[4] = rbrew_read32(cpu->mem, _t34);
|
|
/* 0291E88C */ cpu->r[6] = 0x00000000u;
|
|
/* 0291E890 */ cpu->r[5] = cpu->r[30];
|
|
/* 0291E894 */ cpu->r[3] = cpu->r[29];
|
|
/* 0291E898 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0291E89C */ _t35 = cpu->r[29] + cpu->r[30];
|
|
/* 0291E89C */ rbrew_write8(cpu->mem, _t35, (uint8_t)cpu->r[31]);
|
|
/* 0291E8A0 */ _t36 = cpu->r[27] + 0x00000020u;
|
|
/* 0291E8A0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0291E8A4 */ _t37 = cpu->r[9] + 0x000001E4u;
|
|
/* 0291E8A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0291E8A8 */ cpu->r[0] = cpu->r[0] | 0x00000001u;
|
|
/* 0291E8AC */ _t38 = cpu->r[9] + 0x000001E4u;
|
|
/* 0291E8AC */ rbrew_write32(cpu->mem, _t38, cpu->r[0]);
|
|
/* 0291E8B0 */ /* nop */
|
|
/* 0291E8B4 */ _t39 = cpu->r[1] + 0x00000024u;
|
|
/* 0291E8B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t39);
|
|
/* 0291E8B8 */ cpu->lr = cpu->r[0];
|
|
/* 0291E8BC */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 0291E8C0 */ return;
|
|
}
|
|
|
|
// fn_0291E8C4 @ 0x291e8c4
|
|
void Gambit_fn_0291E8C4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _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_0291E8C4: ; // 0x291e8c4
|
|
/* 0291E8C4 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 0291E8C4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291E8C4 */ cpu->r[1] = _t0;
|
|
/* 0291E8C8 */ /* nop */
|
|
/* 0291E8CC */ cpu->r[0] = cpu->lr;
|
|
/* 0291E8D0 */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 0291E8D0 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0291E8D4 */ cpu->r[27] = cpu->r[3];
|
|
/* 0291E8D8 */ _t2 = cpu->r[27] + 0x00000084u;
|
|
/* 0291E8D8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0291E8DC */ cpu->r[28] = cpu->r[4];
|
|
/* 0291E8E0 */ cpu->r[31] = 0x10110000u;
|
|
/* 0291E8E4 */ cpu->r[30] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 0291E8E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0291E8E8 */ _t3 = cpu->r[27] + 0x0000007Cu;
|
|
/* 0291E8E8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0291E8EC */ _t4 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291E8EC */ _t5 = _t4 & 0x00000001u;
|
|
/* 0291E8EC */ if (_t5) goto L_0291E908; else goto L_0291E8F0;
|
|
L_0291E8F0: ; // 0x291e8f0
|
|
/* 0291E8F0 */ _t6 = cpu->r[28] + 0x00000004u;
|
|
/* 0291E8F0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0291E8F4 */ _t7 = cpu->r[31] + 0x00007399u;
|
|
/* 0291E8F4 */ cpu->r[31] = rbrew_read8(cpu->mem, _t7);
|
|
/* 0291E8F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[12]);
|
|
/* 0291E8FC */ _t8 = cpu->r[8] + 0x00000014u;
|
|
/* 0291E8FC */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0291E900 */ _t9 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291E900 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0291E900 */ if (_t10) goto L_0291E904; else goto L_0291E98C;
|
|
L_0291E904: ; // 0x291e904
|
|
/* 0291E904 */ goto L_0291E990;
|
|
L_0291E908: ; // 0x291e908
|
|
/* 0291E908 */ _t11 = cpu->r[28] + 0x00000004u;
|
|
/* 0291E908 */ cpu->r[11] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0291E90C */ _t12 = cpu->r[11] + 0x00000014u;
|
|
/* 0291E90C */ cpu->r[7] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0291E910 */ cpu->ctr = cpu->r[7];
|
|
/* 0291E914 */ cpu->r[3] = cpu->r[28];
|
|
/* 0291E918 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291E91C */ _t13 = cpu->r[28] + 0x00000000u;
|
|
/* 0291E91C */ cpu->r[10] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0291E920 */ _t14 = cpu->r[31] + 0x00007399u;
|
|
/* 0291E920 */ cpu->r[31] = rbrew_read8(cpu->mem, _t14);
|
|
/* 0291E924 */ _t15 = cpu->r[10] + 0x00000000u;
|
|
/* 0291E924 */ cpu->r[0] = rbrew_read8(cpu->mem, _t15);
|
|
/* 0291E928 */ cpu->r[30] = 0x00000000u;
|
|
/* 0291E92C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 0291E930 */ cpu->r[0] = 0x00080000u;
|
|
/* 0291E934 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291E934 */ _t17 = _t16 & 0x00000001u;
|
|
/* 0291E934 */ if (_t17) goto L_0291E978; else goto L_0291E938;
|
|
L_0291E938: ; // 0x291e938
|
|
/* 0291E938 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 0291E93C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]);
|
|
/* 0291E940 */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 0291E944 */ _t18 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291E944 */ _t19 = _t18 & 0x00000001u;
|
|
/* 0291E944 */ if (_t19) goto L_0291E95C; else goto L_0291E948;
|
|
L_0291E948: ; // 0x291e948
|
|
/* 0291E948 */ _t20 = cpu->r[10] + 0x00000000u;
|
|
/* 0291E948 */ cpu->r[12] = rbrew_read8(cpu->mem, _t20);
|
|
/* 0291E94C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[31]);
|
|
/* 0291E950 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291E950 */ _t22 = _t21 & 0x00000001u;
|
|
/* 0291E950 */ if (_t22) goto L_0291E954; else goto L_0291E938;
|
|
L_0291E954: ; // 0x291e954
|
|
/* 0291E954 */ _t23 = cpu->r[27] + 0x00000084u;
|
|
/* 0291E954 */ cpu->r[12] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0291E958 */ goto L_0291E97C;
|
|
L_0291E95C: ; // 0x291e95c
|
|
/* 0291E95C */ _t24 = cpu->r[27] + 0x00000084u;
|
|
/* 0291E95C */ cpu->r[12] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0291E960 */ _t25 = cpu->r[28] + 0x00000004u;
|
|
/* 0291E960 */ cpu->r[8] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0291E964 */ cpu->r[30] = 0x00000000u;
|
|
/* 0291E968 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[12]);
|
|
/* 0291E96C */ _t26 = cpu->r[8] + 0x00000014u;
|
|
/* 0291E96C */ cpu->r[9] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0291E970 */ _t27 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291E970 */ _t28 = _t27 & 0x00000001u;
|
|
/* 0291E970 */ if (_t28) goto L_0291E974; else goto L_0291E98C;
|
|
L_0291E974: ; // 0x291e974
|
|
/* 0291E974 */ goto L_0291E990;
|
|
L_0291E978: ; // 0x291e978
|
|
/* 0291E978 */ _t29 = cpu->r[27] + 0x00000084u;
|
|
/* 0291E978 */ cpu->r[12] = rbrew_read32(cpu->mem, _t29);
|
|
L_0291E97C: ; // 0x291e97c
|
|
/* 0291E97C */ _t30 = cpu->r[28] + 0x00000004u;
|
|
/* 0291E97C */ cpu->r[8] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0291E980 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[12]);
|
|
/* 0291E984 */ _t31 = cpu->r[8] + 0x00000014u;
|
|
/* 0291E984 */ cpu->r[9] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0291E988 */ _t32 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291E988 */ _t33 = _t32 & 0x00000001u;
|
|
/* 0291E988 */ if (_t33) goto L_0291E990; else goto L_0291E98C;
|
|
L_0291E98C: ; // 0x291e98c
|
|
/* 0291E98C */ cpu->r[30] = cpu->r[12] + 0xFFFFFFFFu;
|
|
L_0291E990: ; // 0x291e990
|
|
/* 0291E990 */ cpu->ctr = cpu->r[9];
|
|
/* 0291E994 */ cpu->r[3] = cpu->r[28];
|
|
/* 0291E998 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291E99C */ _t34 = cpu->r[28] + 0x00000000u;
|
|
/* 0291E99C */ cpu->r[4] = rbrew_read32(cpu->mem, _t34);
|
|
/* 0291E9A0 */ cpu->r[6] = 0x00000000u;
|
|
/* 0291E9A4 */ cpu->r[5] = cpu->r[30];
|
|
/* 0291E9A8 */ cpu->r[3] = cpu->r[29];
|
|
/* 0291E9AC */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0291E9B0 */ _t35 = cpu->r[29] + cpu->r[30];
|
|
/* 0291E9B0 */ rbrew_write8(cpu->mem, _t35, (uint8_t)cpu->r[31]);
|
|
/* 0291E9B4 */ _t36 = cpu->r[27] + 0x00000020u;
|
|
/* 0291E9B4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0291E9B8 */ _t37 = cpu->r[9] + 0x000001E4u;
|
|
/* 0291E9B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0291E9BC */ cpu->r[0] = cpu->r[0] | 0x00000001u;
|
|
/* 0291E9C0 */ _t38 = cpu->r[9] + 0x000001E4u;
|
|
/* 0291E9C0 */ rbrew_write32(cpu->mem, _t38, cpu->r[0]);
|
|
/* 0291E9C4 */ /* nop */
|
|
/* 0291E9C8 */ _t39 = cpu->r[1] + 0x00000024u;
|
|
/* 0291E9C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t39);
|
|
/* 0291E9CC */ cpu->lr = cpu->r[0];
|
|
/* 0291E9D0 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 0291E9D4 */ return;
|
|
}
|
|
|
|
// fn_0291E9D8 @ 0x291e9d8
|
|
void Gambit_fn_0291E9D8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_0291E9D8: ; // 0x291e9d8
|
|
/* 0291E9D8 */ _t0 = cpu->r[3] + 0x00000030u;
|
|
/* 0291E9D8 */ cpu->r[10] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0291E9DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0291E9E0 */ cpu->r[0] = 0x00000000u;
|
|
/* 0291E9E4 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291E9E4 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0291E9E4 */ if (_t2) goto L_0291E9EC; else goto L_0291E9E8;
|
|
L_0291E9E8: ; // 0x291e9e8
|
|
/* 0291E9E8 */ cpu->r[0] = 0x00000001u;
|
|
L_0291E9EC: ; // 0x291e9ec
|
|
/* 0291E9EC */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 0291E9F0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[4]);
|
|
/* 0291E9F4 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291E9F4 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0291E9F4 */ if (_t4) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0291E9F4 */ goto L_0291E9F8;
|
|
L_0291E9F8: ; // 0x291e9f8
|
|
/* 0291E9F8 */ _t5 = cpu->r[3] + 0x00000020u;
|
|
/* 0291E9F8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0291E9FC */ _t6 = cpu->r[3] + 0x00000030u;
|
|
/* 0291E9FC */ rbrew_write8(cpu->mem, _t6, (uint8_t)cpu->r[4]);
|
|
/* 0291EA00 */ _t7 = cpu->r[12] + 0x000001E4u;
|
|
/* 0291EA00 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0291EA04 */ cpu->r[11] = cpu->r[11] | 0x00000001u;
|
|
/* 0291EA08 */ _t8 = cpu->r[12] + 0x000001E4u;
|
|
/* 0291EA08 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 0291EA0C */ return;
|
|
}
|
|
|
|
// fn_0291EA10 @ 0x291ea10
|
|
void Gambit_fn_0291EA10(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0291EA10: ; // 0x291ea10
|
|
/* 0291EA10 */ _t0 = cpu->r[3] + 0x0000006Eu;
|
|
/* 0291EA10 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0291EA14 */ cpu->r[11] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0291EA18 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[4]);
|
|
/* 0291EA1C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291EA1C */ _t2 = _t1 & 0x00000001u;
|
|
/* 0291EA1C */ if (_t2) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0291EA1C */ goto L_0291EA20;
|
|
L_0291EA20: ; // 0x291ea20
|
|
/* 0291EA20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 0291EA24 */ _t3 = cpu->r[3] + 0x00000020u;
|
|
/* 0291EA24 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0291EA28 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291EA28 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0291EA28 */ if (_t5) goto L_0291EA44; else goto L_0291EA2C;
|
|
L_0291EA2C: ; // 0x291ea2c
|
|
/* 0291EA2C */ cpu->r[12] = cpu->r[0] | 0x00000001u;
|
|
/* 0291EA30 */ _t6 = cpu->r[3] + 0x0000006Eu;
|
|
/* 0291EA30 */ rbrew_write8(cpu->mem, _t6, (uint8_t)cpu->r[12]);
|
|
/* 0291EA34 */ _t7 = cpu->r[11] + 0x00000054u;
|
|
/* 0291EA34 */ cpu->r[10] = rbrew_read16(cpu->mem, _t7);
|
|
/* 0291EA38 */ cpu->r[10] = cpu->r[10] | 0x00000001u;
|
|
/* 0291EA3C */ _t8 = cpu->r[11] + 0x00000054u;
|
|
/* 0291EA3C */ rbrew_write16(cpu->mem, _t8, (uint16_t)cpu->r[10]);
|
|
/* 0291EA40 */ return;
|
|
L_0291EA44: ; // 0x291ea44
|
|
/* 0291EA44 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000000u, 0x0000001Eu);
|
|
/* 0291EA48 */ _t9 = cpu->r[3] + 0x0000006Eu;
|
|
/* 0291EA48 */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[12]);
|
|
/* 0291EA4C */ _t10 = cpu->r[11] + 0x00000054u;
|
|
/* 0291EA4C */ cpu->r[10] = rbrew_read16(cpu->mem, _t10);
|
|
/* 0291EA50 */ cpu->r[10] = cpu->r[10] | 0x00000001u;
|
|
/* 0291EA54 */ _t11 = cpu->r[11] + 0x00000054u;
|
|
/* 0291EA54 */ rbrew_write16(cpu->mem, _t11, (uint16_t)cpu->r[10]);
|
|
/* 0291EA58 */ return;
|
|
}
|
|
|
|
// fn_0291EA5C @ 0x291ea5c
|
|
void Gambit_fn_0291EA5C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0291EA5C: ; // 0x291ea5c
|
|
/* 0291EA5C */ cpu->r[0] = cpu->lr;
|
|
/* 0291EA60 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0291EA60 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291EA60 */ cpu->r[1] = _t0;
|
|
/* 0291EA64 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0291EA64 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0291EA68 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0291EA68 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0291EA6C */ _t3 = cpu->r[3] + 0x00000018u;
|
|
/* 0291EA6C */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0291EA70 */ _t4 = cpu->r[11] + 0x000000B4u;
|
|
/* 0291EA70 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0291EA74 */ cpu->ctr = cpu->r[0];
|
|
/* 0291EA78 */ cpu->r[31] = cpu->r[3];
|
|
/* 0291EA7C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291EA80 */ cpu->r[9] = (uint32_t)((int32_t)cpu->r[3] * (int32_t)0x00000018u);
|
|
/* 0291EA84 */ cpu->r[10] = 0x101F0000u;
|
|
/* 0291EA88 */ cpu->r[12] = 0x10140000u;
|
|
/* 0291EA8C */ cpu->r[10] = cpu->r[10] + 0x000075F0u;
|
|
/* 0291EA90 */ cpu->r[12] = cpu->r[12] + 0x000025A8u;
|
|
/* 0291EA94 */ _t5 = cpu->r[9] + cpu->r[10];
|
|
/* 0291EA94 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0291EA98 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291EA98 */ rbrew_write32(cpu->mem, _t6, cpu->r[12]);
|
|
/* 0291EA9C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0291EAA0 */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 0291EAA0 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 0291EAA4 */ Gambit_fn_0291EF28(cpu);
|
|
/* 0291EAA8 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 0291EAA8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0291EAAC */ cpu->r[4] = 0x10140000u;
|
|
/* 0291EAB0 */ _t9 = cpu->r[31] + 0x0000006Cu;
|
|
/* 0291EAB0 */ cpu->r[6] = rbrew_read16(cpu->mem, _t9);
|
|
/* 0291EAB4 */ cpu->r[4] = cpu->r[4] + 0x000027D8u;
|
|
/* 0291EAB8 */ cpu->r[3] = cpu->r[31] + 0x00000040u;
|
|
/* 0291EABC */ _t10 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 0291EABC */ _t11 = _t10 & 0x00000001u;
|
|
/* 0291EABC */ if (_t11) goto L_0291EAC0; // else: addr-0 trap, fall-through
|
|
L_0291EAC0: ; // 0x291eac0
|
|
/* 0291EAC0 */ Gambit_fn_0282A5F4(cpu);
|
|
/* 0291EAC4 */ _t12 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0291EAC4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0291EAC8 */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 0291EAC8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0291EACC */ cpu->lr = cpu->r[0];
|
|
/* 0291EAD0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0291EAD4 */ return;
|
|
}
|
|
|
|
// fn_0291EA60 @ 0x291ea60
|
|
void Gambit_fn_0291EA60(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0291EA60: ; // 0x291ea60
|
|
/* 0291EA60 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0291EA60 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291EA60 */ cpu->r[1] = _t0;
|
|
/* 0291EA64 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0291EA64 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0291EA68 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0291EA68 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0291EA6C */ _t3 = cpu->r[3] + 0x00000018u;
|
|
/* 0291EA6C */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0291EA70 */ _t4 = cpu->r[11] + 0x000000B4u;
|
|
/* 0291EA70 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0291EA74 */ cpu->ctr = cpu->r[0];
|
|
/* 0291EA78 */ cpu->r[31] = cpu->r[3];
|
|
/* 0291EA7C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291EA80 */ cpu->r[9] = (uint32_t)((int32_t)cpu->r[3] * (int32_t)0x00000018u);
|
|
/* 0291EA84 */ cpu->r[10] = 0x101F0000u;
|
|
/* 0291EA88 */ cpu->r[12] = 0x10140000u;
|
|
/* 0291EA8C */ cpu->r[10] = cpu->r[10] + 0x000075F0u;
|
|
/* 0291EA90 */ cpu->r[12] = cpu->r[12] + 0x000025A8u;
|
|
/* 0291EA94 */ _t5 = cpu->r[9] + cpu->r[10];
|
|
/* 0291EA94 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0291EA98 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291EA98 */ rbrew_write32(cpu->mem, _t6, cpu->r[12]);
|
|
/* 0291EA9C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0291EAA0 */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 0291EAA0 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 0291EAA4 */ Gambit_fn_0291EF28(cpu);
|
|
/* 0291EAA8 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 0291EAA8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0291EAAC */ cpu->r[4] = 0x10140000u;
|
|
/* 0291EAB0 */ _t9 = cpu->r[31] + 0x0000006Cu;
|
|
/* 0291EAB0 */ cpu->r[6] = rbrew_read16(cpu->mem, _t9);
|
|
/* 0291EAB4 */ cpu->r[4] = cpu->r[4] + 0x000027D8u;
|
|
/* 0291EAB8 */ cpu->r[3] = cpu->r[31] + 0x00000040u;
|
|
/* 0291EABC */ _t10 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 0291EABC */ _t11 = _t10 & 0x00000001u;
|
|
/* 0291EABC */ if (_t11) goto L_0291EAC0; // else: addr-0 trap, fall-through
|
|
L_0291EAC0: ; // 0x291eac0
|
|
/* 0291EAC0 */ Gambit_fn_0282A5F4(cpu);
|
|
/* 0291EAC4 */ _t12 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0291EAC4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0291EAC8 */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 0291EAC8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0291EACC */ cpu->lr = cpu->r[0];
|
|
/* 0291EAD0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0291EAD4 */ return;
|
|
}
|
|
|
|
// fn_0291EAD8 @ 0x291ead8
|
|
void Gambit_fn_0291EAD8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94;
|
|
|
|
L_0291EAD8: ; // 0x291ead8
|
|
/* 0291EAD8 */ _t0 = cpu->r[1] + 0xFFFFFFB0u;
|
|
/* 0291EAD8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291EAD8 */ cpu->r[1] = _t0;
|
|
/* 0291EADC */ /* nop */
|
|
/* 0291EAE0 */ cpu->r[0] = cpu->lr;
|
|
/* 0291EAE4 */ _t1 = cpu->r[1] + 0x00000054u;
|
|
/* 0291EAE4 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0291EAE8 */ cpu->r[30] = cpu->r[7];
|
|
/* 0291EAEC */ cpu->r[11] = 0x101D0000u;
|
|
/* 0291EAF0 */ cpu->r[28] = cpu->r[4];
|
|
/* 0291EAF4 */ _t2 = cpu->r[11] + 0xFFFFA45Cu;
|
|
/* 0291EAF4 */ cpu->r[4] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t2);
|
|
/* 0291EAF8 */ cpu->r[7] = 0x101D0000u;
|
|
/* 0291EAFC */ cpu->r[31] = cpu->r[4];
|
|
/* 0291EB00 */ cpu->r[4] = cpu->r[4] + 0x00000001u;
|
|
/* 0291EB04 */ cpu->r[25] = 0x101F0000u;
|
|
/* 0291EB08 */ /* nop */
|
|
/* 0291EB0C */ _t3 = cpu->r[11] + 0xFFFFA45Cu;
|
|
/* 0291EB0C */ rbrew_write16(cpu->mem, _t3, (uint16_t)cpu->r[4]);
|
|
/* 0291EB10 */ cpu->r[29] = cpu->r[6];
|
|
/* 0291EB14 */ _t4 = cpu->r[7] + 0xFFFFA470u;
|
|
/* 0291EB14 */ rbrew_write32(cpu->mem, _t4, cpu->r[8]);
|
|
/* 0291EB18 */ _t5 = cpu->r[3] + 0x00000004u;
|
|
/* 0291EB18 */ cpu->r[10] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0291EB1C */ cpu->r[25] = cpu->r[25] + 0x000075F0u;
|
|
/* 0291EB20 */ _t6 = cpu->r[10] + 0x00000014u;
|
|
/* 0291EB20 */ cpu->r[11] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0291EB24 */ cpu->r[9] = (uint32_t)((int32_t)cpu->r[31] * (int32_t)0x00000018u);
|
|
/* 0291EB28 */ cpu->ctr = cpu->r[11];
|
|
/* 0291EB2C */ cpu->r[26] = cpu->r[25] + cpu->r[9];
|
|
/* 0291EB30 */ cpu->r[27] = cpu->r[5];
|
|
/* 0291EB34 */ cpu->r[24] = cpu->r[3];
|
|
/* 0291EB38 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291EB3C */ _t7 = cpu->r[24] + 0x00000000u;
|
|
/* 0291EB3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0291EB40 */ _t8 = cpu->r[26] + 0x00000000u;
|
|
/* 0291EB40 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0291EB44 */ _t9 = cpu->r[28] + 0x00000004u;
|
|
/* 0291EB44 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0291EB48 */ _t10 = cpu->r[12] + 0x00000014u;
|
|
/* 0291EB48 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0291EB4C */ cpu->ctr = cpu->r[0];
|
|
/* 0291EB50 */ cpu->r[3] = cpu->r[28];
|
|
/* 0291EB54 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291EB58 */ _t11 = cpu->r[28] + 0x00000000u;
|
|
/* 0291EB58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0291EB5C */ cpu->r[28] = 0x101F0000u;
|
|
/* 0291EB60 */ _t12 = cpu->r[26] + 0x0000000Cu;
|
|
/* 0291EB60 */ rbrew_write32(cpu->mem, _t12, cpu->r[29]);
|
|
/* 0291EB64 */ cpu->r[28] = cpu->r[28] + 0x000074F0u;
|
|
/* 0291EB68 */ cpu->r[4] = rbrew_rlwinm(cpu->r[31], 0x00000001u, 0x00000000u, 0x0000001Eu);
|
|
/* 0291EB6C */ _t13 = cpu->r[26] + 0x00000014u;
|
|
/* 0291EB6C */ rbrew_write32(cpu->mem, _t13, cpu->r[30]);
|
|
/* 0291EB70 */ _t14 = cpu->r[28] + cpu->r[4];
|
|
/* 0291EB70 */ rbrew_write16(cpu->mem, _t14, (uint16_t)cpu->r[31]);
|
|
/* 0291EB74 */ cpu->r[29] = cpu->r[28] + cpu->r[4];
|
|
/* 0291EB78 */ _t15 = cpu->r[26] + 0x00000008u;
|
|
/* 0291EB78 */ rbrew_write32(cpu->mem, _t15, cpu->r[27]);
|
|
/* 0291EB7C */ _t16 = cpu->r[26] + 0x00000010u;
|
|
/* 0291EB7C */ rbrew_write32(cpu->mem, _t16, cpu->r[31]);
|
|
/* 0291EB80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0291EB84 */ _t17 = cpu->r[26] + 0x00000004u;
|
|
/* 0291EB84 */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
/* 0291EB88 */ _t18 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291EB88 */ _t19 = _t18 & 0x00000001u;
|
|
/* 0291EB88 */ if (_t19) goto L_0291EB8C; else goto L_0291ED1C;
|
|
L_0291EB8C: ; // 0x291eb8c
|
|
/* 0291EB8C */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[31] * (int32_t)0x00000018u);
|
|
/* 0291EB90 */ cpu->r[6] = cpu->r[25] + 0xFFFFFFE8u;
|
|
/* 0291EB94 */ cpu->r[30] = 0x10110000u;
|
|
/* 0291EB98 */ _t20 = cpu->r[30] + 0x00007399u;
|
|
/* 0291EB98 */ cpu->r[30] = rbrew_read8(cpu->mem, _t20);
|
|
/* 0291EB9C */ cpu->r[27] = cpu->r[6] + cpu->r[0];
|
|
L_0291EBA0: ; // 0x291eba0
|
|
/* 0291EBA0 */ cpu->r[5] = 0x00000000u;
|
|
/* 0291EBA4 */ _t21 = cpu->r[27] + 0x0000000Cu;
|
|
/* 0291EBA4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0291EBA8 */ cpu->r[6] = cpu->r[5];
|
|
/* 0291EBAC */ _t22 = cpu->r[27] + 0x00000024u;
|
|
/* 0291EBAC */ cpu->r[5] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0291EBB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], cpu->r[5]);
|
|
/* 0291EBB4 */ cpu->r[25] = 0x00000001u;
|
|
/* 0291EBB8 */ _t23 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291EBB8 */ _t24 = _t23 & 0x00000001u;
|
|
/* 0291EBB8 */ if (_t24) goto L_0291EC68; else goto L_0291EBBC;
|
|
L_0291EBBC: ; // 0x291ebbc
|
|
/* 0291EBBC */ _t25 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291EBBC */ _t26 = _t25 & 0x00000001u;
|
|
/* 0291EBBC */ if (_t26) goto L_0291EC64; else goto L_0291EBC0;
|
|
L_0291EBC0: ; // 0x291ebc0
|
|
/* 0291EBC0 */ _t27 = cpu->r[27] + 0x00000018u;
|
|
/* 0291EBC0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0291EBC4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0291EBC8 */ _t28 = cpu->r[27] + 0x00000000u;
|
|
/* 0291EBC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0291EBCC */ cpu->r[10] = 0x10140000u;
|
|
/* 0291EBD0 */ _t29 = cpu->r[1] + 0x00000008u;
|
|
/* 0291EBD0 */ rbrew_write32(cpu->mem, _t29, cpu->r[11]);
|
|
/* 0291EBD4 */ cpu->r[10] = cpu->r[10] + 0x000025A8u;
|
|
/* 0291EBD8 */ _t30 = cpu->r[1] + 0x00000010u;
|
|
/* 0291EBD8 */ rbrew_write32(cpu->mem, _t30, cpu->r[0]);
|
|
/* 0291EBDC */ cpu->r[6] = 0x00000001u;
|
|
/* 0291EBE0 */ _t31 = cpu->r[1] + 0x00000014u;
|
|
/* 0291EBE0 */ rbrew_write32(cpu->mem, _t31, cpu->r[10]);
|
|
/* 0291EBE4 */ cpu->r[5] = cpu->r[6];
|
|
/* 0291EBE8 */ _t32 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291EBE8 */ rbrew_write32(cpu->mem, _t32, cpu->r[10]);
|
|
/* 0291EBEC */ Gambit_fn_0291EF28(cpu);
|
|
/* 0291EBF0 */ _t33 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291EBF0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t33);
|
|
/* 0291EBF4 */ _t34 = cpu->r[8] + 0x00000014u;
|
|
/* 0291EBF4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t34);
|
|
/* 0291EBF8 */ cpu->ctr = cpu->r[0];
|
|
/* 0291EBFC */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0291EC00 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291EC04 */ _t35 = cpu->r[1] + 0x00000014u;
|
|
/* 0291EC04 */ cpu->r[10] = rbrew_read32(cpu->mem, _t35);
|
|
/* 0291EC08 */ _t36 = cpu->r[10] + 0x00000014u;
|
|
/* 0291EC08 */ cpu->r[12] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0291EC0C */ cpu->ctr = cpu->r[12];
|
|
/* 0291EC10 */ _t37 = cpu->r[1] + 0x00000008u;
|
|
/* 0291EC10 */ cpu->r[26] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0291EC14 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 0291EC18 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291EC1C */ _t38 = cpu->r[1] + 0x00000010u;
|
|
/* 0291EC1C */ cpu->r[11] = rbrew_read32(cpu->mem, _t38);
|
|
/* 0291EC20 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], cpu->r[11]);
|
|
/* 0291EC24 */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291EC24 */ _t40 = _t39 & 0x00000001u;
|
|
/* 0291EC24 */ if (_t40) goto L_0291EC64; else goto L_0291EC28;
|
|
L_0291EC28: ; // 0x291ec28
|
|
/* 0291EC28 */ cpu->r[0] = 0x00080000u;
|
|
/* 0291EC2C */ cpu->ctr = cpu->r[0];
|
|
/* 0291EC30 */ _t41 = cpu->r[1] + 0x00000008u;
|
|
/* 0291EC30 */ cpu->r[6] = rbrew_read32(cpu->mem, _t41);
|
|
L_0291EC34: ; // 0x291ec34
|
|
/* 0291EC34 */ _t42 = cpu->r[11] + 0x00000000u;
|
|
/* 0291EC34 */ cpu->r[7] = rbrew_read8(cpu->mem, _t42);
|
|
/* 0291EC38 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[30]);
|
|
/* 0291EC3C */ _t43 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291EC3C */ _t44 = _t43 & 0x00000001u;
|
|
/* 0291EC3C */ if (_t44) goto L_0291EC64; else goto L_0291EC40;
|
|
L_0291EC40: ; // 0x291ec40
|
|
/* 0291EC40 */ _t45 = cpu->r[6] + 0x00000000u;
|
|
/* 0291EC40 */ cpu->r[8] = rbrew_read8(cpu->mem, _t45);
|
|
/* 0291EC44 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[30]);
|
|
/* 0291EC48 */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291EC48 */ _t47 = _t46 & 0x00000001u;
|
|
/* 0291EC48 */ if (_t47) goto L_0291EC68; else goto L_0291EC4C;
|
|
L_0291EC4C: ; // 0x291ec4c
|
|
/* 0291EC4C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[8]);
|
|
/* 0291EC50 */ _t48 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291EC50 */ _t49 = _t48 & 0x00000001u;
|
|
/* 0291EC50 */ if (_t49) goto L_0291EC68; else goto L_0291EC54;
|
|
L_0291EC54: ; // 0x291ec54
|
|
/* 0291EC54 */ _t50 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291EC54 */ _t51 = _t50 & 0x00000001u;
|
|
/* 0291EC54 */ if (_t51) goto L_0291EC64; else goto L_0291EC58;
|
|
L_0291EC58: ; // 0x291ec58
|
|
/* 0291EC58 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 0291EC5C */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 0291EC60 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0291EC60 */ _t52 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0291EC60 */ _t53 = _t52 >> (0x00000002u & 31u);
|
|
/* 0291EC60 */ _t54 = _t53 & 0x00000001u;
|
|
/* 0291EC60 */ if (_t54) goto L_0291EC34; else goto L_0291EC64;
|
|
L_0291EC64: ; // 0x291ec64
|
|
/* 0291EC64 */ cpu->r[25] = 0x00000000u;
|
|
L_0291EC68: ; // 0x291ec68
|
|
/* 0291EC68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 0291EC6C */ _t55 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291EC6C */ _t56 = _t55 & 0x00000001u;
|
|
/* 0291EC6C */ if (_t56) goto L_0291ED1C; else goto L_0291EC70;
|
|
L_0291EC70: ; // 0x291ec70
|
|
/* 0291EC70 */ _t57 = cpu->r[27] + 0x00000028u;
|
|
/* 0291EC70 */ cpu->r[24] = rbrew_read32(cpu->mem, _t57);
|
|
/* 0291EC74 */ _t58 = cpu->r[27] + 0x0000000Cu;
|
|
/* 0291EC74 */ cpu->r[8] = rbrew_read32(cpu->mem, _t58);
|
|
/* 0291EC78 */ cpu->r[0] = rbrew_rlwinm(cpu->r[24], 0x00000001u, 0x00000000u, 0x0000001Eu);
|
|
/* 0291EC7C */ _t59 = cpu->r[27] + 0x00000008u;
|
|
/* 0291EC7C */ cpu->r[12] = rbrew_read32(cpu->mem, _t59);
|
|
/* 0291EC80 */ _t60 = cpu->r[28] + cpu->r[0];
|
|
/* 0291EC80 */ cpu->r[4] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t60);
|
|
/* 0291EC84 */ _t61 = cpu->r[27] + 0x00000024u;
|
|
/* 0291EC84 */ cpu->r[6] = rbrew_read32(cpu->mem, _t61);
|
|
/* 0291EC88 */ cpu->r[4] = cpu->r[4] + 0xFFFFFFFFu;
|
|
/* 0291EC8C */ _t62 = cpu->r[27] + 0x00000010u;
|
|
/* 0291EC8C */ cpu->r[25] = rbrew_read32(cpu->mem, _t62);
|
|
/* 0291EC90 */ _t63 = cpu->r[1] + 0x00000020u;
|
|
/* 0291EC90 */ rbrew_write32(cpu->mem, _t63, cpu->r[12]);
|
|
/* 0291EC94 */ _t64 = cpu->r[27] + 0x00000000u;
|
|
/* 0291EC94 */ cpu->r[5] = rbrew_read32(cpu->mem, _t64);
|
|
/* 0291EC98 */ _t65 = cpu->r[1] + 0x00000024u;
|
|
/* 0291EC98 */ rbrew_write32(cpu->mem, _t65, cpu->r[8]);
|
|
/* 0291EC9C */ _t66 = cpu->r[1] + 0x00000018u;
|
|
/* 0291EC9C */ rbrew_write32(cpu->mem, _t66, cpu->r[5]);
|
|
/* 0291ECA0 */ cpu->r[9] = rbrew_rlwinm(cpu->r[25], 0x00000001u, 0x00000000u, 0x0000001Eu);
|
|
/* 0291ECA4 */ _t67 = cpu->r[27] + 0x00000018u;
|
|
/* 0291ECA4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t67);
|
|
/* 0291ECA8 */ _t68 = cpu->r[28] + cpu->r[0];
|
|
/* 0291ECA8 */ rbrew_write16(cpu->mem, _t68, (uint16_t)cpu->r[4]);
|
|
/* 0291ECAC */ _t69 = cpu->r[28] + cpu->r[9];
|
|
/* 0291ECAC */ cpu->r[26] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t69);
|
|
/* 0291ECB0 */ _t70 = cpu->r[27] + 0x0000001Cu;
|
|
/* 0291ECB0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t70);
|
|
/* 0291ECB4 */ _t71 = cpu->r[27] + 0x00000000u;
|
|
/* 0291ECB4 */ rbrew_write32(cpu->mem, _t71, cpu->r[5]);
|
|
/* 0291ECB8 */ _t72 = cpu->r[27] + 0x0000000Cu;
|
|
/* 0291ECB8 */ rbrew_write32(cpu->mem, _t72, cpu->r[6]);
|
|
/* 0291ECBC */ _t73 = cpu->r[27] + 0x00000004u;
|
|
/* 0291ECBC */ cpu->r[6] = rbrew_read32(cpu->mem, _t73);
|
|
/* 0291ECC0 */ _t74 = cpu->r[27] + 0x00000004u;
|
|
/* 0291ECC0 */ rbrew_write32(cpu->mem, _t74, cpu->r[0]);
|
|
/* 0291ECC4 */ _t75 = cpu->r[27] + 0x00000014u;
|
|
/* 0291ECC4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t75);
|
|
/* 0291ECC8 */ cpu->r[4] = cpu->r[8];
|
|
/* 0291ECCC */ _t76 = cpu->r[27] + 0x0000002Cu;
|
|
/* 0291ECCC */ cpu->r[8] = rbrew_read32(cpu->mem, _t76);
|
|
/* 0291ECD0 */ _t77 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0291ECD0 */ rbrew_write32(cpu->mem, _t77, cpu->r[0]);
|
|
/* 0291ECD4 */ _t78 = cpu->r[27] + 0x00000014u;
|
|
/* 0291ECD4 */ rbrew_write32(cpu->mem, _t78, cpu->r[8]);
|
|
/* 0291ECD8 */ _t79 = cpu->r[1] + 0x00000018u;
|
|
/* 0291ECD8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t79);
|
|
/* 0291ECDC */ _t80 = cpu->r[27] + 0x0000002Cu;
|
|
/* 0291ECDC */ rbrew_write32(cpu->mem, _t80, cpu->r[0]);
|
|
/* 0291ECE0 */ _t81 = cpu->r[27] + 0x00000018u;
|
|
/* 0291ECE0 */ rbrew_write32(cpu->mem, _t81, cpu->r[8]);
|
|
/* 0291ECE4 */ _t82 = cpu->r[27] + 0x00000020u;
|
|
/* 0291ECE4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t82);
|
|
/* 0291ECE8 */ _t83 = cpu->r[27] + 0x00000020u;
|
|
/* 0291ECE8 */ rbrew_write32(cpu->mem, _t83, cpu->r[12]);
|
|
/* 0291ECEC */ _t84 = cpu->r[27] + 0x00000008u;
|
|
/* 0291ECEC */ rbrew_write32(cpu->mem, _t84, cpu->r[7]);
|
|
/* 0291ECF0 */ _t85 = cpu->r[27] + 0x00000024u;
|
|
/* 0291ECF0 */ rbrew_write32(cpu->mem, _t85, cpu->r[4]);
|
|
/* 0291ECF4 */ _t86 = cpu->r[27] + 0x00000028u;
|
|
/* 0291ECF4 */ rbrew_write32(cpu->mem, _t86, cpu->r[25]);
|
|
/* 0291ECF8 */ _t87 = cpu->r[27] + 0x0000001Cu;
|
|
/* 0291ECF8 */ rbrew_write32(cpu->mem, _t87, cpu->r[6]);
|
|
/* 0291ECFC */ _t88 = cpu->r[27] + 0x00000010u;
|
|
/* 0291ECFC */ rbrew_write32(cpu->mem, _t88, cpu->r[24]);
|
|
/* 0291ED00 */ _t89 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0291ED00 */ rbrew_write32(cpu->mem, _t89, cpu->r[6]);
|
|
/* 0291ED04 */ cpu->r[27] = cpu->r[27] + 0xFFFFFFE8u;
|
|
/* 0291ED08 */ cpu->r[26] = cpu->r[26] + 0x00000001u;
|
|
/* 0291ED0C */ _t90 = cpu->r[1] + 0x00000028u;
|
|
/* 0291ED0C */ rbrew_write32(cpu->mem, _t90, cpu->r[25]);
|
|
/* 0291ED10 */ cpu->r[31] = cpu->r[31] + 0xFFFFFFFFu;
|
|
/* 0291ED10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0291ED14 */ _t91 = cpu->r[28] + cpu->r[9];
|
|
/* 0291ED14 */ rbrew_write16(cpu->mem, _t91, (uint16_t)cpu->r[26]);
|
|
/* 0291ED18 */ _t92 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291ED18 */ _t93 = _t92 & 0x00000001u;
|
|
/* 0291ED18 */ if (_t93) goto L_0291ED1C; else goto L_0291EBA0;
|
|
L_0291ED1C: ; // 0x291ed1c
|
|
/* 0291ED1C */ cpu->r[3] = cpu->r[29];
|
|
/* 0291ED20 */ /* nop */
|
|
/* 0291ED24 */ _t94 = cpu->r[1] + 0x00000054u;
|
|
/* 0291ED24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t94);
|
|
/* 0291ED28 */ cpu->lr = cpu->r[0];
|
|
/* 0291ED2C */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 0291ED30 */ return;
|
|
}
|
|
|
|
// fn_0291ED34 @ 0x291ed34
|
|
void Gambit_fn_0291ED34(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_0291ED34: ; // 0x291ed34
|
|
/* 0291ED34 */ cpu->r[0] = cpu->lr;
|
|
/* 0291ED38 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0291ED38 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291ED38 */ cpu->r[1] = _t0;
|
|
/* 0291ED3C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291ED3C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0291ED40 */ cpu->r[31] = cpu->r[3];
|
|
/* 0291ED44 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0291ED44 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0291ED48 */ Gambit_fn_0291EA5C(cpu);
|
|
/* 0291ED4C */ Gambit_fn_0294D9E4(cpu);
|
|
/* 0291ED50 */ cpu->r[4] = cpu->r[3];
|
|
/* 0291ED54 */ cpu->r[3] = cpu->r[31];
|
|
/* 0291ED58 */ Gambit_fn_0291E8C4(cpu);
|
|
/* 0291ED5C */ cpu->r[4] = 0x00000000u;
|
|
/* 0291ED60 */ cpu->r[3] = cpu->r[31];
|
|
/* 0291ED64 */ Gambit_fn_0291E9D8(cpu);
|
|
/* 0291ED68 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0291ED68 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0291ED6C */ cpu->lr = cpu->r[0];
|
|
/* 0291ED70 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291ED70 */ cpu->r[31] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0291ED74 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0291ED78 */ return;
|
|
}
|
|
|
|
// fn_0291ED38 @ 0x291ed38
|
|
void Gambit_fn_0291ED38(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_0291ED38: ; // 0x291ed38
|
|
/* 0291ED38 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0291ED38 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291ED38 */ cpu->r[1] = _t0;
|
|
/* 0291ED3C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291ED3C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0291ED40 */ cpu->r[31] = cpu->r[3];
|
|
/* 0291ED44 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0291ED44 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0291ED48 */ Gambit_fn_0291EA5C(cpu);
|
|
/* 0291ED4C */ Gambit_fn_0294D9E4(cpu);
|
|
/* 0291ED50 */ cpu->r[4] = cpu->r[3];
|
|
/* 0291ED54 */ cpu->r[3] = cpu->r[31];
|
|
/* 0291ED58 */ Gambit_fn_0291E8C4(cpu);
|
|
/* 0291ED5C */ cpu->r[4] = 0x00000000u;
|
|
/* 0291ED60 */ cpu->r[3] = cpu->r[31];
|
|
/* 0291ED64 */ Gambit_fn_0291E9D8(cpu);
|
|
/* 0291ED68 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0291ED68 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0291ED6C */ cpu->lr = cpu->r[0];
|
|
/* 0291ED70 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291ED70 */ cpu->r[31] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0291ED74 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0291ED78 */ return;
|
|
}
|
|
|
|
// fn_0291ED7C @ 0x291ed7c
|
|
void Gambit_fn_0291ED7C(CPUState* cpu) {
|
|
uint32_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_0291ED7C: ; // 0x291ed7c
|
|
/* 0291ED7C */ cpu->r[0] = cpu->lr;
|
|
/* 0291ED80 */ _t0 = cpu->r[1] + 0xFFFFFBD8u;
|
|
/* 0291ED80 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291ED80 */ cpu->r[1] = _t0;
|
|
/* 0291ED84 */ _t1 = cpu->r[1] + 0x0000041Cu;
|
|
/* 0291ED84 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 0291ED88 */ _t2 = cpu->r[1] + 0x00000418u;
|
|
/* 0291ED88 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 0291ED8C */ _t3 = cpu->r[1] + 0x00000420u;
|
|
/* 0291ED8C */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 0291ED90 */ _t4 = cpu->r[1] + 0x00000424u;
|
|
/* 0291ED90 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 0291ED94 */ _t5 = cpu->r[1] + 0x0000042Cu;
|
|
/* 0291ED94 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0291ED98 */ _t6 = cpu->r[3] + 0x00000018u;
|
|
/* 0291ED98 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0291ED9C */ _t7 = cpu->r[3] + 0x00000020u;
|
|
/* 0291ED9C */ rbrew_write32(cpu->mem, _t7, cpu->r[6]);
|
|
/* 0291EDA0 */ _t8 = cpu->r[3] + 0x0000006Cu;
|
|
/* 0291EDA0 */ rbrew_write16(cpu->mem, _t8, (uint16_t)cpu->r[4]);
|
|
/* 0291EDA4 */ _t9 = cpu->r[12] + 0x00000084u;
|
|
/* 0291EDA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0291EDA8 */ cpu->ctr = cpu->r[0];
|
|
/* 0291EDAC */ cpu->r[29] = cpu->r[3];
|
|
/* 0291EDB0 */ cpu->r[30] = cpu->r[5];
|
|
/* 0291EDB4 */ cpu->r[31] = cpu->r[7];
|
|
/* 0291EDB8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291EDBC */ _t10 = cpu->r[29] + 0x00000018u;
|
|
/* 0291EDBC */ cpu->r[5] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0291EDC0 */ _t11 = cpu->r[5] + 0x000000B4u;
|
|
/* 0291EDC0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0291EDC4 */ cpu->r[28] = 0x101F0000u;
|
|
/* 0291EDC8 */ cpu->ctr = cpu->r[7];
|
|
/* 0291EDCC */ cpu->r[28] = cpu->r[28] + 0x000075FCu;
|
|
/* 0291EDD0 */ cpu->r[3] = cpu->r[29];
|
|
/* 0291EDD4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291EDD8 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[3] * (int32_t)0x00000018u);
|
|
/* 0291EDDC */ _t12 = cpu->r[28] + cpu->r[0];
|
|
/* 0291EDDC */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0291EDE0 */ cpu->r[9] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0291EDE4 */ cpu->r[4] = 0x10140000u;
|
|
/* 0291EDE8 */ cpu->r[10] = cpu->r[9] + 0x101D0000u;
|
|
/* 0291EDEC */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0291EDF0 */ _t13 = cpu->r[10] + 0xFFFFA460u;
|
|
/* 0291EDF0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0291EDF4 */ cpu->r[4] = cpu->r[4] + 0x000027E0u;
|
|
/* 0291EDF8 */ _t14 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 0291EDF8 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0291EDF8 */ if (_t15) goto L_0291EDFC; // else: addr-0 trap, fall-through
|
|
L_0291EDFC: ; // 0x291edfc
|
|
/* 0291EDFC */ Gambit_fn_0291EF84(cpu);
|
|
/* 0291EE00 */ cpu->r[4] = cpu->r[3];
|
|
/* 0291EE04 */ cpu->r[3] = cpu->r[29] + 0x0000001Cu;
|
|
/* 0291EE08 */ Gambit_fn_028FD6EC(cpu);
|
|
/* 0291EE0C */ _t16 = cpu->r[29] + 0x00000018u;
|
|
/* 0291EE0C */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0291EE10 */ _t17 = cpu->r[12] + 0x0000005Cu;
|
|
/* 0291EE10 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0291EE14 */ cpu->ctr = cpu->r[0];
|
|
/* 0291EE18 */ cpu->r[3] = cpu->r[29];
|
|
/* 0291EE1C */ cpu->r[4] = cpu->r[30];
|
|
/* 0291EE20 */ cpu->r[5] = cpu->r[31];
|
|
/* 0291EE24 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291EE28 */ cpu->r[3] = cpu->r[29];
|
|
/* 0291EE2C */ Gambit_fn_0291ED34(cpu);
|
|
/* 0291EE30 */ _t18 = cpu->r[1] + 0x00000418u;
|
|
/* 0291EE30 */ cpu->r[28] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0291EE34 */ _t19 = cpu->r[1] + 0x0000041Cu;
|
|
/* 0291EE34 */ cpu->r[29] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0291EE38 */ _t20 = cpu->r[1] + 0x0000042Cu;
|
|
/* 0291EE38 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0291EE3C */ _t21 = cpu->r[1] + 0x00000420u;
|
|
/* 0291EE3C */ cpu->r[30] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0291EE40 */ cpu->lr = cpu->r[0];
|
|
/* 0291EE44 */ _t22 = cpu->r[1] + 0x00000424u;
|
|
/* 0291EE44 */ cpu->r[31] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0291EE48 */ cpu->r[1] = cpu->r[1] + 0x00000428u;
|
|
/* 0291EE4C */ return;
|
|
}
|
|
|
|
// fn_0291ED80 @ 0x291ed80
|
|
void Gambit_fn_0291ED80(CPUState* cpu) {
|
|
uint32_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_0291ED80: ; // 0x291ed80
|
|
/* 0291ED80 */ _t0 = cpu->r[1] + 0xFFFFFBD8u;
|
|
/* 0291ED80 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291ED80 */ cpu->r[1] = _t0;
|
|
/* 0291ED84 */ _t1 = cpu->r[1] + 0x0000041Cu;
|
|
/* 0291ED84 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 0291ED88 */ _t2 = cpu->r[1] + 0x00000418u;
|
|
/* 0291ED88 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 0291ED8C */ _t3 = cpu->r[1] + 0x00000420u;
|
|
/* 0291ED8C */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 0291ED90 */ _t4 = cpu->r[1] + 0x00000424u;
|
|
/* 0291ED90 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 0291ED94 */ _t5 = cpu->r[1] + 0x0000042Cu;
|
|
/* 0291ED94 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0291ED98 */ _t6 = cpu->r[3] + 0x00000018u;
|
|
/* 0291ED98 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0291ED9C */ _t7 = cpu->r[3] + 0x00000020u;
|
|
/* 0291ED9C */ rbrew_write32(cpu->mem, _t7, cpu->r[6]);
|
|
/* 0291EDA0 */ _t8 = cpu->r[3] + 0x0000006Cu;
|
|
/* 0291EDA0 */ rbrew_write16(cpu->mem, _t8, (uint16_t)cpu->r[4]);
|
|
/* 0291EDA4 */ _t9 = cpu->r[12] + 0x00000084u;
|
|
/* 0291EDA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0291EDA8 */ cpu->ctr = cpu->r[0];
|
|
/* 0291EDAC */ cpu->r[29] = cpu->r[3];
|
|
/* 0291EDB0 */ cpu->r[30] = cpu->r[5];
|
|
/* 0291EDB4 */ cpu->r[31] = cpu->r[7];
|
|
/* 0291EDB8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291EDBC */ _t10 = cpu->r[29] + 0x00000018u;
|
|
/* 0291EDBC */ cpu->r[5] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0291EDC0 */ _t11 = cpu->r[5] + 0x000000B4u;
|
|
/* 0291EDC0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0291EDC4 */ cpu->r[28] = 0x101F0000u;
|
|
/* 0291EDC8 */ cpu->ctr = cpu->r[7];
|
|
/* 0291EDCC */ cpu->r[28] = cpu->r[28] + 0x000075FCu;
|
|
/* 0291EDD0 */ cpu->r[3] = cpu->r[29];
|
|
/* 0291EDD4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291EDD8 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[3] * (int32_t)0x00000018u);
|
|
/* 0291EDDC */ _t12 = cpu->r[28] + cpu->r[0];
|
|
/* 0291EDDC */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0291EDE0 */ cpu->r[9] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0291EDE4 */ cpu->r[4] = 0x10140000u;
|
|
/* 0291EDE8 */ cpu->r[10] = cpu->r[9] + 0x101D0000u;
|
|
/* 0291EDEC */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0291EDF0 */ _t13 = cpu->r[10] + 0xFFFFA460u;
|
|
/* 0291EDF0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0291EDF4 */ cpu->r[4] = cpu->r[4] + 0x000027E0u;
|
|
/* 0291EDF8 */ _t14 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 0291EDF8 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0291EDF8 */ if (_t15) goto L_0291EDFC; // else: addr-0 trap, fall-through
|
|
L_0291EDFC: ; // 0x291edfc
|
|
/* 0291EDFC */ Gambit_fn_0291EF84(cpu);
|
|
/* 0291EE00 */ cpu->r[4] = cpu->r[3];
|
|
/* 0291EE04 */ cpu->r[3] = cpu->r[29] + 0x0000001Cu;
|
|
/* 0291EE08 */ Gambit_fn_028FD6EC(cpu);
|
|
/* 0291EE0C */ _t16 = cpu->r[29] + 0x00000018u;
|
|
/* 0291EE0C */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0291EE10 */ _t17 = cpu->r[12] + 0x0000005Cu;
|
|
/* 0291EE10 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0291EE14 */ cpu->ctr = cpu->r[0];
|
|
/* 0291EE18 */ cpu->r[3] = cpu->r[29];
|
|
/* 0291EE1C */ cpu->r[4] = cpu->r[30];
|
|
/* 0291EE20 */ cpu->r[5] = cpu->r[31];
|
|
/* 0291EE24 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291EE28 */ cpu->r[3] = cpu->r[29];
|
|
/* 0291EE2C */ Gambit_fn_0291ED34(cpu);
|
|
/* 0291EE30 */ _t18 = cpu->r[1] + 0x00000418u;
|
|
/* 0291EE30 */ cpu->r[28] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0291EE34 */ _t19 = cpu->r[1] + 0x0000041Cu;
|
|
/* 0291EE34 */ cpu->r[29] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0291EE38 */ _t20 = cpu->r[1] + 0x0000042Cu;
|
|
/* 0291EE38 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0291EE3C */ _t21 = cpu->r[1] + 0x00000420u;
|
|
/* 0291EE3C */ cpu->r[30] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0291EE40 */ cpu->lr = cpu->r[0];
|
|
/* 0291EE44 */ _t22 = cpu->r[1] + 0x00000424u;
|
|
/* 0291EE44 */ cpu->r[31] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0291EE48 */ cpu->r[1] = cpu->r[1] + 0x00000428u;
|
|
/* 0291EE4C */ return;
|
|
}
|
|
|
|
// fn_0291EE50 @ 0x291ee50
|
|
void Gambit_fn_0291EE50(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_0291EE50: ; // 0x291ee50
|
|
/* 0291EE50 */ cpu->r[0] = cpu->lr;
|
|
/* 0291EE54 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0291EE54 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291EE54 */ cpu->r[1] = _t0;
|
|
/* 0291EE58 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291EE58 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0291EE5C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0291EE5C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0291EE60 */ _t3 = cpu->r[3] + 0x00000018u;
|
|
/* 0291EE60 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0291EE64 */ _t4 = cpu->r[11] + 0x00000064u;
|
|
/* 0291EE64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0291EE68 */ cpu->ctr = cpu->r[0];
|
|
/* 0291EE6C */ cpu->r[31] = cpu->r[3];
|
|
/* 0291EE70 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291EE74 */ _t5 = cpu->r[31] + 0x0000006Eu;
|
|
/* 0291EE74 */ cpu->r[12] = rbrew_read8(cpu->mem, _t5);
|
|
/* 0291EE78 */ cpu->r[12] = rbrew_rlwinm(cpu->r[12], 0x00000000u, 0x0000001Bu, 0x00000019u);
|
|
/* 0291EE7C */ _t6 = cpu->r[31] + 0x0000006Eu;
|
|
/* 0291EE7C */ rbrew_write8(cpu->mem, _t6, (uint8_t)cpu->r[12]);
|
|
/* 0291EE80 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 0291EE80 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0291EE84 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291EE84 */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0291EE88 */ cpu->lr = cpu->r[0];
|
|
/* 0291EE8C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0291EE90 */ return;
|
|
}
|
|
|
|
// fn_0291EE54 @ 0x291ee54
|
|
void Gambit_fn_0291EE54(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_0291EE54: ; // 0x291ee54
|
|
/* 0291EE54 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0291EE54 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291EE54 */ cpu->r[1] = _t0;
|
|
/* 0291EE58 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291EE58 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0291EE5C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0291EE5C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0291EE60 */ _t3 = cpu->r[3] + 0x00000018u;
|
|
/* 0291EE60 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0291EE64 */ _t4 = cpu->r[11] + 0x00000064u;
|
|
/* 0291EE64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0291EE68 */ cpu->ctr = cpu->r[0];
|
|
/* 0291EE6C */ cpu->r[31] = cpu->r[3];
|
|
/* 0291EE70 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291EE74 */ _t5 = cpu->r[31] + 0x0000006Eu;
|
|
/* 0291EE74 */ cpu->r[12] = rbrew_read8(cpu->mem, _t5);
|
|
/* 0291EE78 */ cpu->r[12] = rbrew_rlwinm(cpu->r[12], 0x00000000u, 0x0000001Bu, 0x00000019u);
|
|
/* 0291EE7C */ _t6 = cpu->r[31] + 0x0000006Eu;
|
|
/* 0291EE7C */ rbrew_write8(cpu->mem, _t6, (uint8_t)cpu->r[12]);
|
|
/* 0291EE80 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 0291EE80 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0291EE84 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291EE84 */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0291EE88 */ cpu->lr = cpu->r[0];
|
|
/* 0291EE8C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0291EE90 */ return;
|
|
}
|
|
|
|
// fn_0291EE94 @ 0x291ee94
|
|
void Gambit_fn_0291EE94(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_0291EE94: ; // 0x291ee94
|
|
/* 0291EE94 */ cpu->r[11] = cpu->r[3];
|
|
/* 0291EE98 */ _t0 = cpu->r[11] + 0x00000048u;
|
|
/* 0291EE98 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0291EE9C */ _t1 = cpu->r[3] + 0x00000000u;
|
|
/* 0291EE9C */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0291EEA0 */ _t2 = cpu->r[12] + 0x0000001Cu;
|
|
/* 0291EEA0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0291EEA4 */ cpu->ctr = cpu->r[0];
|
|
/* 0291EEA8 */ _t3 = cpu->r[11] + 0x0000004Cu;
|
|
/* 0291EEA8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0291EEAC */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0291EEB0 @ 0x291eeb0
|
|
void Gambit_fn_0291EEB0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_0291EEB0: ; // 0x291eeb0
|
|
/* 0291EEB0 */ cpu->r[11] = cpu->r[3];
|
|
/* 0291EEB4 */ _t0 = cpu->r[11] + 0x00000048u;
|
|
/* 0291EEB4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0291EEB8 */ _t1 = cpu->r[3] + 0x00000000u;
|
|
/* 0291EEB8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0291EEBC */ _t2 = cpu->r[12] + 0x00000024u;
|
|
/* 0291EEBC */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0291EEC0 */ cpu->ctr = cpu->r[0];
|
|
/* 0291EEC4 */ _t3 = cpu->r[11] + 0x0000004Cu;
|
|
/* 0291EEC4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0291EEC8 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0291EECC @ 0x291eecc
|
|
void Gambit_fn_0291EECC(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_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t0;
|
|
/* 02801B38 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02801B48 */ _t3 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02801B50 */ if (_t5) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02801B60 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 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 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B74 */ if (_t9) 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 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02801B84 */ if (_t11) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t12 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02801B8C */ _t13 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02801BA0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
L_0291EECC: ; // 0x291eecc
|
|
/* 0291EECC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291EED0 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291EED0 */ _t17 = _t16 & 0x00000001u;
|
|
/* 0291EED0 */ if (_t17) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0291EED0 */ goto L_0291EED4;
|
|
L_0291EED4: ; // 0x291eed4
|
|
/* 0291EED4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0291EED4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0291EED8 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291EED8 */ _t19 = _t18 & 0x00000001u;
|
|
/* 0291EED8 */ if (_t19) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0291EED8 */ goto L_0291EEDC;
|
|
L_0291EEDC: ; // 0x291eedc
|
|
/* 0291EEDC */ goto L_02801BB0;
|
|
}
|
|
|
|
// fn_0291EEE0 @ 0x291eee0
|
|
void Gambit_fn_0291EEE0(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0291EEE0: ; // 0x291eee0
|
|
/* 0291EEE0 */ _t0 = cpu->r[3] + 0x00000018u;
|
|
/* 0291EEE0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0291EEE4 */ _t1 = cpu->r[12] + 0x00000084u;
|
|
/* 0291EEE4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0291EEE8 */ cpu->ctr = cpu->r[0];
|
|
/* 0291EEEC */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0291EEF0 @ 0x291eef0
|
|
void Gambit_fn_0291EEF0(CPUState* cpu) {
|
|
L_0291EEF0: ; // 0x291eef0
|
|
/* 0291EEF0 */ cpu->r[3] = cpu->r[3] + 0x0000007Cu;
|
|
/* 0291EEF4 */ return;
|
|
}
|
|
|
|
// fn_0291EEF8 @ 0x291eef8
|
|
void Gambit_fn_0291EEF8(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0291EEF8: ; // 0x291eef8
|
|
/* 0291EEF8 */ _t0 = cpu->r[3] + 0x00000018u;
|
|
/* 0291EEF8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0291EEFC */ _t1 = cpu->r[12] + 0x000000B4u;
|
|
/* 0291EEFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0291EF00 */ cpu->ctr = cpu->r[0];
|
|
/* 0291EF04 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0291EF08 @ 0x291ef08
|
|
void Gambit_fn_0291EF08(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0291EF08: ; // 0x291ef08
|
|
/* 0291EF08 */ _t0 = cpu->r[3] + 0x0000006Eu;
|
|
/* 0291EF08 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0291EF0C */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0291EF10 */ return;
|
|
}
|
|
|
|
// fn_0291EF14 @ 0x291ef14
|
|
void Gambit_fn_0291EF14(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_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t0;
|
|
/* 02801B38 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02801B48 */ _t3 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02801B50 */ if (_t5) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02801B60 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 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 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B74 */ if (_t9) 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 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02801B84 */ if (_t11) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t12 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02801B8C */ _t13 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02801BA0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
L_0291EF14: ; // 0x291ef14
|
|
/* 0291EF14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291EF18 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291EF18 */ _t17 = _t16 & 0x00000001u;
|
|
/* 0291EF18 */ if (_t17) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0291EF18 */ goto L_0291EF1C;
|
|
L_0291EF1C: ; // 0x291ef1c
|
|
/* 0291EF1C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0291EF1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0291EF20 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291EF20 */ _t19 = _t18 & 0x00000001u;
|
|
/* 0291EF20 */ if (_t19) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0291EF20 */ goto L_0291EF24;
|
|
L_0291EF24: ; // 0x291ef24
|
|
/* 0291EF24 */ goto L_02801BB0;
|
|
}
|
|
|
|
// fn_0291EF28 @ 0x291ef28
|
|
void Gambit_fn_0291EF28(CPUState* cpu) {
|
|
L_0291EF28: ; // 0x291ef28
|
|
/* 0291EF28 */ return;
|
|
}
|
|
|
|
// fn_0291EF2C @ 0x291ef2c
|
|
void Gambit_fn_0291EF2C(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_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t0;
|
|
/* 02801B38 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02801B48 */ _t3 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02801B50 */ if (_t5) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02801B60 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 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 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B74 */ if (_t9) 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 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02801B84 */ if (_t11) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t12 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02801B8C */ _t13 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02801BA0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
L_0291EF2C: ; // 0x291ef2c
|
|
/* 0291EF2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291EF30 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291EF30 */ _t17 = _t16 & 0x00000001u;
|
|
/* 0291EF30 */ if (_t17) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0291EF30 */ goto L_0291EF34;
|
|
L_0291EF34: ; // 0x291ef34
|
|
/* 0291EF34 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0291EF34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0291EF38 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291EF38 */ _t19 = _t18 & 0x00000001u;
|
|
/* 0291EF38 */ if (_t19) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0291EF38 */ goto L_0291EF3C;
|
|
L_0291EF3C: ; // 0x291ef3c
|
|
/* 0291EF3C */ goto L_02801BB0;
|
|
}
|
|
|
|
// fn_0291EF40 @ 0x291ef40
|
|
void Gambit_fn_0291EF40(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_0291EF40: ; // 0x291ef40
|
|
/* 0291EF40 */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 0291EF40 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0291EF44 */ _t1 = cpu->r[3] + 0x00000008u;
|
|
/* 0291EF44 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0291EF48 */ cpu->r[12] = cpu->r[11] + cpu->r[12];
|
|
/* 0291EF4C */ cpu->r[11] = 0x10110000u;
|
|
/* 0291EF50 */ _t2 = cpu->r[11] + 0x00007399u;
|
|
/* 0291EF50 */ cpu->r[0] = rbrew_read8(cpu->mem, _t2);
|
|
/* 0291EF54 */ _t3 = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 0291EF54 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]);
|
|
/* 0291EF58 */ return;
|
|
}
|
|
|
|
// fn_0291EF5C @ 0x291ef5c
|
|
void Gambit_fn_0291EF5C(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_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t0;
|
|
/* 02801B38 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02801B48 */ _t3 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02801B50 */ if (_t5) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02801B60 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 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 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B74 */ if (_t9) 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 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02801B84 */ if (_t11) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t12 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02801B8C */ _t13 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02801BA0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
L_0291EF5C: ; // 0x291ef5c
|
|
/* 0291EF5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291EF60 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291EF60 */ _t17 = _t16 & 0x00000001u;
|
|
/* 0291EF60 */ if (_t17) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0291EF60 */ goto L_0291EF64;
|
|
L_0291EF64: ; // 0x291ef64
|
|
/* 0291EF64 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0291EF64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0291EF68 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291EF68 */ _t19 = _t18 & 0x00000001u;
|
|
/* 0291EF68 */ if (_t19) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0291EF68 */ goto L_0291EF6C;
|
|
L_0291EF6C: ; // 0x291ef6c
|
|
/* 0291EF6C */ goto L_02801BB0;
|
|
}
|
|
|
|
// fn_0291EF70 @ 0x291ef70
|
|
void Gambit_fn_0291EF70(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_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t0;
|
|
/* 02801B38 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02801B48 */ _t3 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02801B50 */ if (_t5) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02801B60 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 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 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B74 */ if (_t9) 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 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02801B84 */ if (_t11) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t12 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02801B8C */ _t13 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02801BA0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
L_0291EF70: ; // 0x291ef70
|
|
/* 0291EF70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291EF74 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291EF74 */ _t17 = _t16 & 0x00000001u;
|
|
/* 0291EF74 */ if (_t17) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0291EF74 */ goto L_0291EF78;
|
|
L_0291EF78: ; // 0x291ef78
|
|
/* 0291EF78 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0291EF78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0291EF7C */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291EF7C */ _t19 = _t18 & 0x00000001u;
|
|
/* 0291EF7C */ if (_t19) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0291EF7C */ goto L_0291EF80;
|
|
L_0291EF80: ; // 0x291ef80
|
|
/* 0291EF80 */ goto L_02801BB0;
|
|
}
|
|
|
|
// fn_0291EF84 @ 0x291ef84
|
|
void Gambit_fn_0291EF84(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _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_0291EF84: ; // 0x291ef84
|
|
/* 0291EF84 */ cpu->r[0] = cpu->lr;
|
|
/* 0291EF88 */ _t0 = cpu->r[1] + 0xFFFFFF78u;
|
|
/* 0291EF88 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291EF88 */ cpu->r[1] = _t0;
|
|
/* 0291EF8C */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 0291EF8C */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 0291EF90 */ _t2 = cpu->r[1] + 0x00000084u;
|
|
/* 0291EF90 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0291EF94 */ _t3 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0291EF94 */ rbrew_write32(cpu->mem, _t3, cpu->r[8]);
|
|
/* 0291EF98 */ _t4 = cpu->r[1] + 0x00000020u;
|
|
/* 0291EF98 */ rbrew_write32(cpu->mem, _t4, cpu->r[5]);
|
|
/* 0291EF9C */ _t5 = cpu->r[1] + 0x00000018u;
|
|
/* 0291EF9C */ rbrew_write32(cpu->mem, _t5, cpu->r[3]);
|
|
/* 0291EFA0 */ _t6 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0291EFA0 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0291EFA4 */ _t7 = cpu->r[1] + 0x00000078u;
|
|
/* 0291EFA4 */ rbrew_write32(cpu->mem, _t7, cpu->r[28]);
|
|
/* 0291EFA8 */ _t8 = cpu->r[1] + 0x00000080u;
|
|
/* 0291EFA8 */ rbrew_write32(cpu->mem, _t8, cpu->r[30]);
|
|
/* 0291EFAC */ _t9 = cpu->r[1] + 0x00000024u;
|
|
/* 0291EFAC */ rbrew_write32(cpu->mem, _t9, cpu->r[6]);
|
|
/* 0291EFB0 */ _t10 = cpu->r[1] + 0x00000030u;
|
|
/* 0291EFB0 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 0291EFB4 */ _t11 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0291EFB4 */ rbrew_write32(cpu->mem, _t11, cpu->r[29]);
|
|
/* 0291EFB8 */ _t12 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0291EFB8 */ rbrew_write32(cpu->mem, _t12, cpu->r[4]);
|
|
/* 0291EFBC */ _t13 = cpu->r[1] + 0x00000028u;
|
|
/* 0291EFBC */ rbrew_write32(cpu->mem, _t13, cpu->r[7]);
|
|
/* 0291EFC0 */ _t14 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 0291EFC0 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0291EFC0 */ if (_t15) goto L_0291EFC4; else goto L_0291EFE4;
|
|
L_0291EFC4: ; // 0x291efc4
|
|
/* 0291EFC4 */ _t16 = cpu->r[1] + 0x00000048u;
|
|
/* 0291EFC4 */ rbrew_write_f64(cpu->mem, _t16, cpu->f[3]);
|
|
/* 0291EFC8 */ _t17 = cpu->r[1] + 0x00000068u;
|
|
/* 0291EFC8 */ rbrew_write_f64(cpu->mem, _t17, cpu->f[7]);
|
|
/* 0291EFCC */ _t18 = cpu->r[1] + 0x00000060u;
|
|
/* 0291EFCC */ rbrew_write_f64(cpu->mem, _t18, cpu->f[6]);
|
|
/* 0291EFD0 */ _t19 = cpu->r[1] + 0x00000040u;
|
|
/* 0291EFD0 */ rbrew_write_f64(cpu->mem, _t19, cpu->f[2]);
|
|
/* 0291EFD4 */ _t20 = cpu->r[1] + 0x00000050u;
|
|
/* 0291EFD4 */ rbrew_write_f64(cpu->mem, _t20, cpu->f[4]);
|
|
/* 0291EFD8 */ _t21 = cpu->r[1] + 0x00000070u;
|
|
/* 0291EFD8 */ rbrew_write_f64(cpu->mem, _t21, cpu->f[8]);
|
|
/* 0291EFDC */ _t22 = cpu->r[1] + 0x00000058u;
|
|
/* 0291EFDC */ rbrew_write_f64(cpu->mem, _t22, cpu->f[5]);
|
|
/* 0291EFE0 */ _t23 = cpu->r[1] + 0x00000038u;
|
|
/* 0291EFE0 */ rbrew_write_f64(cpu->mem, _t23, cpu->f[1]);
|
|
L_0291EFE4: ; // 0x291efe4
|
|
/* 0291EFE4 */ cpu->r[31] = cpu->r[3];
|
|
/* 0291EFE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0291EFE8 */ cpu->r[30] = cpu->r[4];
|
|
/* 0291EFEC */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291EFEC */ _t25 = _t24 & 0x00000001u;
|
|
/* 0291EFEC */ if (_t25) goto L_0291EFF0; else goto L_0291F000;
|
|
L_0291EFF0: ; // 0x291eff0
|
|
/* 0291EFF0 */ cpu->r[3] = 0x0000040Cu;
|
|
/* 0291EFF4 */ Gambit_fn_02801A78(cpu);
|
|
/* 0291EFF8 */ cpu->r[31] = cpu->r[3];
|
|
/* 0291EFF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0291EFFC */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291EFFC */ _t27 = _t26 & 0x00000001u;
|
|
/* 0291EFFC */ if (_t27) goto L_0291F0C4; else goto L_0291F000;
|
|
L_0291F000: ; // 0x291f000
|
|
/* 0291F000 */ cpu->r[29] = cpu->r[31];
|
|
/* 0291F000 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0291F004 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291F004 */ _t29 = _t28 & 0x00000001u;
|
|
/* 0291F004 */ if (_t29) goto L_0291F008; else goto L_0291F018;
|
|
L_0291F008: ; // 0x291f008
|
|
/* 0291F008 */ cpu->r[3] = 0x0000040Cu;
|
|
/* 0291F00C */ Gambit_fn_02801A78(cpu);
|
|
/* 0291F010 */ cpu->r[29] = cpu->r[3];
|
|
/* 0291F010 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0291F014 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291F014 */ _t31 = _t30 & 0x00000001u;
|
|
/* 0291F014 */ if (_t31) goto L_0291F088; else goto L_0291F018;
|
|
L_0291F018: ; // 0x291f018
|
|
/* 0291F018 */ cpu->r[3] = cpu->r[29];
|
|
/* 0291F018 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291F01C */ cpu->r[28] = 0x10110000u;
|
|
/* 0291F020 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291F020 */ _t33 = _t32 & 0x00000001u;
|
|
/* 0291F020 */ if (_t33) goto L_0291F024; else goto L_0291F050;
|
|
L_0291F024: ; // 0x291f024
|
|
/* 0291F024 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0291F028 */ Gambit_fn_02801A78(cpu);
|
|
/* 0291F02C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291F030 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291F030 */ _t35 = _t34 & 0x00000001u;
|
|
/* 0291F030 */ if (_t35) goto L_0291F034; else goto L_0291F050;
|
|
L_0291F034: ; // 0x291f034
|
|
/* 0291F034 */ cpu->r[7] = 0x10140000u;
|
|
/* 0291F038 */ _t36 = cpu->r[28] + 0x00007399u;
|
|
/* 0291F038 */ cpu->r[0] = rbrew_read8(cpu->mem, _t36);
|
|
/* 0291F03C */ cpu->r[7] = cpu->r[7] + 0x00002618u;
|
|
/* 0291F040 */ _t37 = cpu->r[29] + 0x00000000u;
|
|
/* 0291F040 */ cpu->r[8] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0291F044 */ _t38 = cpu->r[29] + 0x00000004u;
|
|
/* 0291F044 */ rbrew_write32(cpu->mem, _t38, cpu->r[7]);
|
|
/* 0291F048 */ _t39 = cpu->r[8] + 0x00000000u;
|
|
/* 0291F048 */ rbrew_write8(cpu->mem, _t39, (uint8_t)cpu->r[0]);
|
|
/* 0291F04C */ goto L_0291F088;
|
|
L_0291F050: ; // 0x291f050
|
|
/* 0291F050 */ cpu->r[5] = 0x10140000u;
|
|
/* 0291F054 */ cpu->r[0] = cpu->r[29] + 0x0000000Cu;
|
|
/* 0291F058 */ cpu->r[5] = cpu->r[5] + 0x000025C0u;
|
|
/* 0291F05C */ _t40 = cpu->r[3] + 0x00000000u;
|
|
/* 0291F05C */ rbrew_write32(cpu->mem, _t40, cpu->r[0]);
|
|
/* 0291F060 */ cpu->r[6] = 0x00000400u;
|
|
/* 0291F064 */ _t41 = cpu->r[3] + 0x00000004u;
|
|
/* 0291F064 */ rbrew_write32(cpu->mem, _t41, cpu->r[5]);
|
|
/* 0291F068 */ _t42 = cpu->r[3] + 0x00000008u;
|
|
/* 0291F068 */ rbrew_write32(cpu->mem, _t42, cpu->r[6]);
|
|
/* 0291F06C */ _t43 = cpu->r[28] + 0x00007399u;
|
|
/* 0291F06C */ cpu->r[0] = rbrew_read8(cpu->mem, _t43);
|
|
/* 0291F070 */ cpu->r[7] = 0x10140000u;
|
|
/* 0291F074 */ _t44 = cpu->r[29] + 0x00000000u;
|
|
/* 0291F074 */ cpu->r[8] = rbrew_read32(cpu->mem, _t44);
|
|
/* 0291F078 */ cpu->r[7] = cpu->r[7] + 0x00002618u;
|
|
/* 0291F07C */ _t45 = cpu->r[29] + 0x0000040Bu;
|
|
/* 0291F07C */ rbrew_write8(cpu->mem, _t45, (uint8_t)cpu->r[0]);
|
|
/* 0291F080 */ _t46 = cpu->r[29] + 0x00000004u;
|
|
/* 0291F080 */ rbrew_write32(cpu->mem, _t46, cpu->r[7]);
|
|
/* 0291F084 */ _t47 = cpu->r[8] + 0x00000000u;
|
|
/* 0291F084 */ rbrew_write8(cpu->mem, _t47, (uint8_t)cpu->r[0]);
|
|
L_0291F088: ; // 0x291f088
|
|
/* 0291F088 */ cpu->r[9] = 0x10140000u;
|
|
/* 0291F08C */ cpu->r[12] = 0x00000002u;
|
|
/* 0291F090 */ cpu->r[9] = cpu->r[9] + 0x00002648u;
|
|
/* 0291F094 */ cpu->r[0] = cpu->r[1] + 0x00000090u;
|
|
/* 0291F098 */ _t48 = cpu->r[31] + 0x00000004u;
|
|
/* 0291F098 */ rbrew_write32(cpu->mem, _t48, cpu->r[9]);
|
|
/* 0291F09C */ cpu->r[11] = cpu->r[1] + 0x00000018u;
|
|
/* 0291F0A0 */ _t49 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291F0A0 */ rbrew_write32(cpu->mem, _t49, cpu->r[0]);
|
|
/* 0291F0A4 */ cpu->r[0] = 0x00000000u;
|
|
/* 0291F0A8 */ _t50 = cpu->r[1] + 0x00000010u;
|
|
/* 0291F0A8 */ rbrew_write32(cpu->mem, _t50, cpu->r[11]);
|
|
/* 0291F0AC */ cpu->r[3] = cpu->r[31];
|
|
/* 0291F0B0 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0291F0B4 */ _t51 = cpu->r[1] + 0x00000009u;
|
|
/* 0291F0B4 */ rbrew_write8(cpu->mem, _t51, (uint8_t)cpu->r[0]);
|
|
/* 0291F0B8 */ cpu->r[4] = cpu->r[30];
|
|
/* 0291F0BC */ _t52 = cpu->r[1] + 0x00000008u;
|
|
/* 0291F0BC */ rbrew_write8(cpu->mem, _t52, (uint8_t)cpu->r[12]);
|
|
/* 0291F0C0 */ Gambit_fn_0282A5DC(cpu);
|
|
L_0291F0C4: ; // 0x291f0c4
|
|
/* 0291F0C4 */ _t53 = cpu->r[1] + 0x00000078u;
|
|
/* 0291F0C4 */ cpu->r[28] = rbrew_read32(cpu->mem, _t53);
|
|
/* 0291F0C8 */ _t54 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0291F0C8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t54);
|
|
/* 0291F0CC */ _t55 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0291F0CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t55);
|
|
/* 0291F0D0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0291F0D4 */ _t56 = cpu->r[1] + 0x00000080u;
|
|
/* 0291F0D4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t56);
|
|
/* 0291F0D8 */ cpu->lr = cpu->r[0];
|
|
/* 0291F0DC */ _t57 = cpu->r[1] + 0x00000084u;
|
|
/* 0291F0DC */ cpu->r[31] = rbrew_read32(cpu->mem, _t57);
|
|
/* 0291F0E0 */ cpu->r[1] = cpu->r[1] + 0x00000088u;
|
|
/* 0291F0E4 */ return;
|
|
}
|
|
|
|
// fn_0291EF88 @ 0x291ef88
|
|
void Gambit_fn_0291EF88(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _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_0291EF88: ; // 0x291ef88
|
|
/* 0291EF88 */ _t0 = cpu->r[1] + 0xFFFFFF78u;
|
|
/* 0291EF88 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291EF88 */ cpu->r[1] = _t0;
|
|
/* 0291EF8C */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 0291EF8C */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 0291EF90 */ _t2 = cpu->r[1] + 0x00000084u;
|
|
/* 0291EF90 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0291EF94 */ _t3 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0291EF94 */ rbrew_write32(cpu->mem, _t3, cpu->r[8]);
|
|
/* 0291EF98 */ _t4 = cpu->r[1] + 0x00000020u;
|
|
/* 0291EF98 */ rbrew_write32(cpu->mem, _t4, cpu->r[5]);
|
|
/* 0291EF9C */ _t5 = cpu->r[1] + 0x00000018u;
|
|
/* 0291EF9C */ rbrew_write32(cpu->mem, _t5, cpu->r[3]);
|
|
/* 0291EFA0 */ _t6 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0291EFA0 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0291EFA4 */ _t7 = cpu->r[1] + 0x00000078u;
|
|
/* 0291EFA4 */ rbrew_write32(cpu->mem, _t7, cpu->r[28]);
|
|
/* 0291EFA8 */ _t8 = cpu->r[1] + 0x00000080u;
|
|
/* 0291EFA8 */ rbrew_write32(cpu->mem, _t8, cpu->r[30]);
|
|
/* 0291EFAC */ _t9 = cpu->r[1] + 0x00000024u;
|
|
/* 0291EFAC */ rbrew_write32(cpu->mem, _t9, cpu->r[6]);
|
|
/* 0291EFB0 */ _t10 = cpu->r[1] + 0x00000030u;
|
|
/* 0291EFB0 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 0291EFB4 */ _t11 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0291EFB4 */ rbrew_write32(cpu->mem, _t11, cpu->r[29]);
|
|
/* 0291EFB8 */ _t12 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0291EFB8 */ rbrew_write32(cpu->mem, _t12, cpu->r[4]);
|
|
/* 0291EFBC */ _t13 = cpu->r[1] + 0x00000028u;
|
|
/* 0291EFBC */ rbrew_write32(cpu->mem, _t13, cpu->r[7]);
|
|
/* 0291EFC0 */ _t14 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 0291EFC0 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0291EFC0 */ if (_t15) goto L_0291EFC4; else goto L_0291EFE4;
|
|
L_0291EFC4: ; // 0x291efc4
|
|
/* 0291EFC4 */ _t16 = cpu->r[1] + 0x00000048u;
|
|
/* 0291EFC4 */ rbrew_write_f64(cpu->mem, _t16, cpu->f[3]);
|
|
/* 0291EFC8 */ _t17 = cpu->r[1] + 0x00000068u;
|
|
/* 0291EFC8 */ rbrew_write_f64(cpu->mem, _t17, cpu->f[7]);
|
|
/* 0291EFCC */ _t18 = cpu->r[1] + 0x00000060u;
|
|
/* 0291EFCC */ rbrew_write_f64(cpu->mem, _t18, cpu->f[6]);
|
|
/* 0291EFD0 */ _t19 = cpu->r[1] + 0x00000040u;
|
|
/* 0291EFD0 */ rbrew_write_f64(cpu->mem, _t19, cpu->f[2]);
|
|
/* 0291EFD4 */ _t20 = cpu->r[1] + 0x00000050u;
|
|
/* 0291EFD4 */ rbrew_write_f64(cpu->mem, _t20, cpu->f[4]);
|
|
/* 0291EFD8 */ _t21 = cpu->r[1] + 0x00000070u;
|
|
/* 0291EFD8 */ rbrew_write_f64(cpu->mem, _t21, cpu->f[8]);
|
|
/* 0291EFDC */ _t22 = cpu->r[1] + 0x00000058u;
|
|
/* 0291EFDC */ rbrew_write_f64(cpu->mem, _t22, cpu->f[5]);
|
|
/* 0291EFE0 */ _t23 = cpu->r[1] + 0x00000038u;
|
|
/* 0291EFE0 */ rbrew_write_f64(cpu->mem, _t23, cpu->f[1]);
|
|
L_0291EFE4: ; // 0x291efe4
|
|
/* 0291EFE4 */ cpu->r[31] = cpu->r[3];
|
|
/* 0291EFE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0291EFE8 */ cpu->r[30] = cpu->r[4];
|
|
/* 0291EFEC */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291EFEC */ _t25 = _t24 & 0x00000001u;
|
|
/* 0291EFEC */ if (_t25) goto L_0291EFF0; else goto L_0291F000;
|
|
L_0291EFF0: ; // 0x291eff0
|
|
/* 0291EFF0 */ cpu->r[3] = 0x0000040Cu;
|
|
/* 0291EFF4 */ Gambit_fn_02801A78(cpu);
|
|
/* 0291EFF8 */ cpu->r[31] = cpu->r[3];
|
|
/* 0291EFF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0291EFFC */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291EFFC */ _t27 = _t26 & 0x00000001u;
|
|
/* 0291EFFC */ if (_t27) goto L_0291F0C4; else goto L_0291F000;
|
|
L_0291F000: ; // 0x291f000
|
|
/* 0291F000 */ cpu->r[29] = cpu->r[31];
|
|
/* 0291F000 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0291F004 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291F004 */ _t29 = _t28 & 0x00000001u;
|
|
/* 0291F004 */ if (_t29) goto L_0291F008; else goto L_0291F018;
|
|
L_0291F008: ; // 0x291f008
|
|
/* 0291F008 */ cpu->r[3] = 0x0000040Cu;
|
|
/* 0291F00C */ Gambit_fn_02801A78(cpu);
|
|
/* 0291F010 */ cpu->r[29] = cpu->r[3];
|
|
/* 0291F010 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0291F014 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291F014 */ _t31 = _t30 & 0x00000001u;
|
|
/* 0291F014 */ if (_t31) goto L_0291F088; else goto L_0291F018;
|
|
L_0291F018: ; // 0x291f018
|
|
/* 0291F018 */ cpu->r[3] = cpu->r[29];
|
|
/* 0291F018 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291F01C */ cpu->r[28] = 0x10110000u;
|
|
/* 0291F020 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291F020 */ _t33 = _t32 & 0x00000001u;
|
|
/* 0291F020 */ if (_t33) goto L_0291F024; else goto L_0291F050;
|
|
L_0291F024: ; // 0x291f024
|
|
/* 0291F024 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0291F028 */ Gambit_fn_02801A78(cpu);
|
|
/* 0291F02C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291F030 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291F030 */ _t35 = _t34 & 0x00000001u;
|
|
/* 0291F030 */ if (_t35) goto L_0291F034; else goto L_0291F050;
|
|
L_0291F034: ; // 0x291f034
|
|
/* 0291F034 */ cpu->r[7] = 0x10140000u;
|
|
/* 0291F038 */ _t36 = cpu->r[28] + 0x00007399u;
|
|
/* 0291F038 */ cpu->r[0] = rbrew_read8(cpu->mem, _t36);
|
|
/* 0291F03C */ cpu->r[7] = cpu->r[7] + 0x00002618u;
|
|
/* 0291F040 */ _t37 = cpu->r[29] + 0x00000000u;
|
|
/* 0291F040 */ cpu->r[8] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0291F044 */ _t38 = cpu->r[29] + 0x00000004u;
|
|
/* 0291F044 */ rbrew_write32(cpu->mem, _t38, cpu->r[7]);
|
|
/* 0291F048 */ _t39 = cpu->r[8] + 0x00000000u;
|
|
/* 0291F048 */ rbrew_write8(cpu->mem, _t39, (uint8_t)cpu->r[0]);
|
|
/* 0291F04C */ goto L_0291F088;
|
|
L_0291F050: ; // 0x291f050
|
|
/* 0291F050 */ cpu->r[5] = 0x10140000u;
|
|
/* 0291F054 */ cpu->r[0] = cpu->r[29] + 0x0000000Cu;
|
|
/* 0291F058 */ cpu->r[5] = cpu->r[5] + 0x000025C0u;
|
|
/* 0291F05C */ _t40 = cpu->r[3] + 0x00000000u;
|
|
/* 0291F05C */ rbrew_write32(cpu->mem, _t40, cpu->r[0]);
|
|
/* 0291F060 */ cpu->r[6] = 0x00000400u;
|
|
/* 0291F064 */ _t41 = cpu->r[3] + 0x00000004u;
|
|
/* 0291F064 */ rbrew_write32(cpu->mem, _t41, cpu->r[5]);
|
|
/* 0291F068 */ _t42 = cpu->r[3] + 0x00000008u;
|
|
/* 0291F068 */ rbrew_write32(cpu->mem, _t42, cpu->r[6]);
|
|
/* 0291F06C */ _t43 = cpu->r[28] + 0x00007399u;
|
|
/* 0291F06C */ cpu->r[0] = rbrew_read8(cpu->mem, _t43);
|
|
/* 0291F070 */ cpu->r[7] = 0x10140000u;
|
|
/* 0291F074 */ _t44 = cpu->r[29] + 0x00000000u;
|
|
/* 0291F074 */ cpu->r[8] = rbrew_read32(cpu->mem, _t44);
|
|
/* 0291F078 */ cpu->r[7] = cpu->r[7] + 0x00002618u;
|
|
/* 0291F07C */ _t45 = cpu->r[29] + 0x0000040Bu;
|
|
/* 0291F07C */ rbrew_write8(cpu->mem, _t45, (uint8_t)cpu->r[0]);
|
|
/* 0291F080 */ _t46 = cpu->r[29] + 0x00000004u;
|
|
/* 0291F080 */ rbrew_write32(cpu->mem, _t46, cpu->r[7]);
|
|
/* 0291F084 */ _t47 = cpu->r[8] + 0x00000000u;
|
|
/* 0291F084 */ rbrew_write8(cpu->mem, _t47, (uint8_t)cpu->r[0]);
|
|
L_0291F088: ; // 0x291f088
|
|
/* 0291F088 */ cpu->r[9] = 0x10140000u;
|
|
/* 0291F08C */ cpu->r[12] = 0x00000002u;
|
|
/* 0291F090 */ cpu->r[9] = cpu->r[9] + 0x00002648u;
|
|
/* 0291F094 */ cpu->r[0] = cpu->r[1] + 0x00000090u;
|
|
/* 0291F098 */ _t48 = cpu->r[31] + 0x00000004u;
|
|
/* 0291F098 */ rbrew_write32(cpu->mem, _t48, cpu->r[9]);
|
|
/* 0291F09C */ cpu->r[11] = cpu->r[1] + 0x00000018u;
|
|
/* 0291F0A0 */ _t49 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291F0A0 */ rbrew_write32(cpu->mem, _t49, cpu->r[0]);
|
|
/* 0291F0A4 */ cpu->r[0] = 0x00000000u;
|
|
/* 0291F0A8 */ _t50 = cpu->r[1] + 0x00000010u;
|
|
/* 0291F0A8 */ rbrew_write32(cpu->mem, _t50, cpu->r[11]);
|
|
/* 0291F0AC */ cpu->r[3] = cpu->r[31];
|
|
/* 0291F0B0 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0291F0B4 */ _t51 = cpu->r[1] + 0x00000009u;
|
|
/* 0291F0B4 */ rbrew_write8(cpu->mem, _t51, (uint8_t)cpu->r[0]);
|
|
/* 0291F0B8 */ cpu->r[4] = cpu->r[30];
|
|
/* 0291F0BC */ _t52 = cpu->r[1] + 0x00000008u;
|
|
/* 0291F0BC */ rbrew_write8(cpu->mem, _t52, (uint8_t)cpu->r[12]);
|
|
/* 0291F0C0 */ Gambit_fn_0282A5DC(cpu);
|
|
L_0291F0C4: ; // 0x291f0c4
|
|
/* 0291F0C4 */ _t53 = cpu->r[1] + 0x00000078u;
|
|
/* 0291F0C4 */ cpu->r[28] = rbrew_read32(cpu->mem, _t53);
|
|
/* 0291F0C8 */ _t54 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0291F0C8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t54);
|
|
/* 0291F0CC */ _t55 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0291F0CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t55);
|
|
/* 0291F0D0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0291F0D4 */ _t56 = cpu->r[1] + 0x00000080u;
|
|
/* 0291F0D4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t56);
|
|
/* 0291F0D8 */ cpu->lr = cpu->r[0];
|
|
/* 0291F0DC */ _t57 = cpu->r[1] + 0x00000084u;
|
|
/* 0291F0DC */ cpu->r[31] = rbrew_read32(cpu->mem, _t57);
|
|
/* 0291F0E0 */ cpu->r[1] = cpu->r[1] + 0x00000088u;
|
|
/* 0291F0E4 */ return;
|
|
}
|
|
|
|
// fn_0291F0E8 @ 0x291f0e8
|
|
void Gambit_fn_0291F0E8(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_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t0;
|
|
/* 02801B38 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02801B48 */ _t3 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02801B50 */ if (_t5) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02801B60 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 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 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B74 */ if (_t9) 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 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02801B84 */ if (_t11) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t12 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02801B8C */ _t13 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02801BA0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
L_0291F0E8: ; // 0x291f0e8
|
|
/* 0291F0E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291F0EC */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291F0EC */ _t17 = _t16 & 0x00000001u;
|
|
/* 0291F0EC */ if (_t17) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0291F0EC */ goto L_0291F0F0;
|
|
L_0291F0F0: ; // 0x291f0f0
|
|
/* 0291F0F0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0291F0F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0291F0F4 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291F0F4 */ _t19 = _t18 & 0x00000001u;
|
|
/* 0291F0F4 */ if (_t19) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0291F0F4 */ goto L_0291F0F8;
|
|
L_0291F0F8: ; // 0x291f0f8
|
|
/* 0291F0F8 */ goto L_02801BB0;
|
|
}
|
|
|
|
// fn_0291F0FC @ 0x291f0fc
|
|
void Gambit_fn_0291F0FC(CPUState* cpu) {
|
|
L_0291F0FC: ; // 0x291f0fc
|
|
/* 0291F0FC */ return;
|
|
}
|
|
|
|
// fn_0291F100 @ 0x291f100
|
|
void Gambit_fn_0291F100(CPUState* cpu) {
|
|
L_0291F100: ; // 0x291f100
|
|
/* 0291F100 */ cpu->r[3] = 0x00000001u;
|
|
/* 0291F104 */ return;
|
|
}
|
|
|
|
// fn_0291F108 @ 0x291f108
|
|
void Gambit_fn_0291F108(CPUState* cpu) {
|
|
L_0291F108: ; // 0x291f108
|
|
/* 0291F108 */ cpu->r[3] = 0x00000000u;
|
|
/* 0291F10C */ return;
|
|
}
|
|
|
|
// fn_0291F110 @ 0x291f110
|
|
void Gambit_fn_0291F110(CPUState* cpu) {
|
|
L_0291F110: ; // 0x291f110
|
|
/* 0291F110 */ cpu->r[3] = cpu->r[3] + 0x0000000Cu;
|
|
/* 0291F114 */ return;
|
|
}
|
|
|
|
// fn_0291F118 @ 0x291f118
|
|
void Gambit_fn_0291F118(CPUState* cpu) {
|
|
L_0291F118: ; // 0x291f118
|
|
/* 0291F118 */ cpu->r[3] = cpu->r[3] + 0x0000000Cu;
|
|
/* 0291F11C */ return;
|
|
}
|
|
|
|
// fn_0291F120 @ 0x291f120
|
|
void Gambit_fn_0291F120(CPUState* cpu) {
|
|
L_0291F120: ; // 0x291f120
|
|
/* 0291F120 */ cpu->r[3] = cpu->r[3] + 0x0000000Cu;
|
|
/* 0291F124 */ return;
|
|
}
|
|
|
|
// fn_0291F128 @ 0x291f128
|
|
void Gambit_fn_0291F128(CPUState* cpu) {
|
|
L_0291F128: ; // 0x291f128
|
|
/* 0291F128 */ cpu->r[3] = cpu->r[3] + 0x0000000Cu;
|
|
/* 0291F12C */ return;
|
|
}
|
|
|
|
// fn_0291F130 @ 0x291f130
|
|
void Gambit_fn_0291F130(CPUState* cpu) {
|
|
L_0291F130: ; // 0x291f130
|
|
/* 0291F130 */ cpu->r[3] = 0x00000001u;
|
|
/* 0291F134 */ return;
|
|
}
|
|
|
|
// fn_0291F138 @ 0x291f138
|
|
void Gambit_fn_0291F138(CPUState* cpu) {
|
|
L_0291F138: ; // 0x291f138
|
|
/* 0291F138 */ cpu->r[3] = 0x00000007u;
|
|
/* 0291F13C */ return;
|
|
}
|
|
|
|
// fn_0291F140 @ 0x291f140
|
|
void Gambit_fn_0291F140(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_0291F140: ; // 0x291f140
|
|
/* 0291F140 */ cpu->r[0] = cpu->lr;
|
|
/* 0291F144 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0291F144 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291F144 */ cpu->r[1] = _t0;
|
|
/* 0291F148 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291F148 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0291F14C */ cpu->r[31] = cpu->r[3];
|
|
/* 0291F150 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0291F150 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0291F154 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0291F154 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0291F158 */ _t4 = cpu->r[12] + 0x00000014u;
|
|
/* 0291F158 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0291F15C */ cpu->ctr = cpu->r[0];
|
|
/* 0291F160 */ cpu->r[3] = cpu->r[31] + 0x0000000Cu;
|
|
/* 0291F164 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291F168 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 0291F168 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0291F16C */ _t6 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0291F16C */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0291F170 */ cpu->lr = cpu->r[0];
|
|
/* 0291F174 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291F174 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0291F178 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0291F17C */ return;
|
|
}
|
|
|
|
// fn_0291F144 @ 0x291f144
|
|
void Gambit_fn_0291F144(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_0291F144: ; // 0x291f144
|
|
/* 0291F144 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0291F144 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291F144 */ cpu->r[1] = _t0;
|
|
/* 0291F148 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291F148 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0291F14C */ cpu->r[31] = cpu->r[3];
|
|
/* 0291F150 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0291F150 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0291F154 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0291F154 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0291F158 */ _t4 = cpu->r[12] + 0x00000014u;
|
|
/* 0291F158 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0291F15C */ cpu->ctr = cpu->r[0];
|
|
/* 0291F160 */ cpu->r[3] = cpu->r[31] + 0x0000000Cu;
|
|
/* 0291F164 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291F168 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 0291F168 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0291F16C */ _t6 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0291F16C */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0291F170 */ cpu->lr = cpu->r[0];
|
|
/* 0291F174 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291F174 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0291F178 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0291F17C */ return;
|
|
}
|
|
|
|
// fn_0291F180 @ 0x291f180
|
|
void Gambit_fn_0291F180(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_0291F180: ; // 0x291f180
|
|
/* 0291F180 */ cpu->r[0] = cpu->lr;
|
|
/* 0291F184 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0291F184 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291F184 */ cpu->r[1] = _t0;
|
|
/* 0291F188 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291F188 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0291F18C */ cpu->r[31] = cpu->r[3];
|
|
/* 0291F190 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0291F190 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0291F194 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0291F194 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0291F198 */ _t4 = cpu->r[12] + 0x00000014u;
|
|
/* 0291F198 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0291F19C */ cpu->ctr = cpu->r[0];
|
|
/* 0291F1A0 */ cpu->r[3] = cpu->r[31] + 0x0000000Cu;
|
|
/* 0291F1A4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291F1A8 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 0291F1A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0291F1AC */ _t6 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0291F1AC */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0291F1B0 */ cpu->lr = cpu->r[0];
|
|
/* 0291F1B4 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291F1B4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0291F1B8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0291F1BC */ return;
|
|
}
|
|
|
|
// fn_0291F184 @ 0x291f184
|
|
void Gambit_fn_0291F184(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_0291F184: ; // 0x291f184
|
|
/* 0291F184 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0291F184 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291F184 */ cpu->r[1] = _t0;
|
|
/* 0291F188 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291F188 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0291F18C */ cpu->r[31] = cpu->r[3];
|
|
/* 0291F190 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0291F190 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0291F194 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0291F194 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0291F198 */ _t4 = cpu->r[12] + 0x00000014u;
|
|
/* 0291F198 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0291F19C */ cpu->ctr = cpu->r[0];
|
|
/* 0291F1A0 */ cpu->r[3] = cpu->r[31] + 0x0000000Cu;
|
|
/* 0291F1A4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291F1A8 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 0291F1A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0291F1AC */ _t6 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0291F1AC */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0291F1B0 */ cpu->lr = cpu->r[0];
|
|
/* 0291F1B4 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291F1B4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0291F1B8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0291F1BC */ return;
|
|
}
|
|
|
|
// fn_0291F1C0 @ 0x291f1c0
|
|
void Gambit_fn_0291F1C0(CPUState* cpu) {
|
|
L_0291F1C0: ; // 0x291f1c0
|
|
/* 0291F1C0 */ cpu->r[3] = cpu->r[3] + 0x0000000Cu;
|
|
/* 0291F1C4 */ return;
|
|
}
|
|
|
|
// fn_0291F1C8 @ 0x291f1c8
|
|
void Gambit_fn_0291F1C8(CPUState* cpu) {
|
|
L_0291F1C8: ; // 0x291f1c8
|
|
/* 0291F1C8 */ cpu->r[3] = cpu->r[3] + 0x0000000Cu;
|
|
/* 0291F1CC */ return;
|
|
}
|
|
|
|
// fn_0291F1D0 @ 0x291f1d0
|
|
void Gambit_fn_0291F1D0(CPUState* cpu) {
|
|
L_0291F1D0: ; // 0x291f1d0
|
|
/* 0291F1D0 */ cpu->r[3] = 0x00000020u;
|
|
/* 0291F1D4 */ return;
|
|
}
|
|
|
|
// fn_0291F1D8 @ 0x291f1d8
|
|
void Gambit_fn_0291F1D8(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_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t0;
|
|
/* 02801B38 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02801B48 */ _t3 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02801B50 */ if (_t5) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02801B60 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 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 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B74 */ if (_t9) 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 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02801B84 */ if (_t11) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t12 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02801B8C */ _t13 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02801BA0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
L_0291F1D8: ; // 0x291f1d8
|
|
/* 0291F1D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291F1DC */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291F1DC */ _t17 = _t16 & 0x00000001u;
|
|
/* 0291F1DC */ if (_t17) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0291F1DC */ goto L_0291F1E0;
|
|
L_0291F1E0: ; // 0x291f1e0
|
|
/* 0291F1E0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0291F1E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0291F1E4 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291F1E4 */ _t19 = _t18 & 0x00000001u;
|
|
/* 0291F1E4 */ if (_t19) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0291F1E4 */ goto L_0291F1E8;
|
|
L_0291F1E8: ; // 0x291f1e8
|
|
/* 0291F1E8 */ goto L_02801BB0;
|
|
}
|
|
|
|
// fn_0291F1EC @ 0x291f1ec
|
|
void Gambit_fn_0291F1EC(CPUState* cpu) {
|
|
L_0291F1EC: ; // 0x291f1ec
|
|
/* 0291F1EC */ cpu->r[3] = 0x00000001u;
|
|
/* 0291F1F0 */ return;
|
|
}
|
|
|
|
// fn_0291F1F4 @ 0x291f1f4
|
|
void Gambit_fn_0291F1F4(CPUState* cpu) {
|
|
L_0291F1F4: ; // 0x291f1f4
|
|
/* 0291F1F4 */ cpu->r[3] = 0x00000001u;
|
|
/* 0291F1F8 */ return;
|
|
}
|
|
|
|
// fn_0291F1FC @ 0x291f1fc
|
|
void Gambit_fn_0291F1FC(CPUState* cpu) {
|
|
L_0291F1FC: ; // 0x291f1fc
|
|
/* 0291F1FC */ return;
|
|
}
|
|
|
|
// fn_0291F200 @ 0x291f200
|
|
void Gambit_fn_0291F200(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_0291F200: ; // 0x291f200
|
|
/* 0291F200 */ _t0 = cpu->r[4] + 0x00000000u;
|
|
/* 0291F200 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0291F204 */ _t1 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0291F204 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0291F208 */ _t2 = cpu->r[11] + 0x00000008u;
|
|
/* 0291F208 */ cpu->r[11] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0291F20C */ cpu->r[0] = cpu->r[11] ^ cpu->r[12];
|
|
/* 0291F210 */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 0291F214 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 0291F218 */ return;
|
|
}
|
|
|
|
// fn_0291F21C @ 0x291f21c
|
|
void Gambit_fn_0291F21C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_0291F21C: ; // 0x291f21c
|
|
/* 0291F21C */ cpu->r[11] = 0x101D0000u;
|
|
/* 0291F220 */ _t0 = cpu->r[11] + 0xFFFFDB10u;
|
|
/* 0291F220 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0291F220 */ cpu->r[11] = _t0;
|
|
/* 0291F224 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0291F228 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0291F22C */ cpu->r[12] = cpu->r[12] + 0xFFFFE1CCu;
|
|
/* 0291F230 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291F230 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0291F230 */ if (_t2) goto L_0291F234; else goto L_0291F248;
|
|
L_0291F234: ; // 0x291f234
|
|
/* 0291F234 */ cpu->r[9] = 0x10140000u;
|
|
/* 0291F238 */ cpu->r[8] = 0x00000001u;
|
|
/* 0291F23C */ cpu->r[9] = cpu->r[9] + 0x00002608u;
|
|
/* 0291F240 */ _t3 = cpu->r[11] + 0x00000000u;
|
|
/* 0291F240 */ rbrew_write32(cpu->mem, _t3, cpu->r[8]);
|
|
/* 0291F244 */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 0291F244 */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
L_0291F248: ; // 0x291f248
|
|
/* 0291F248 */ cpu->r[10] = cpu->r[4] ^ cpu->r[12];
|
|
/* 0291F24C */ cpu->r[0] = rbrew_clz32(cpu->r[10]);
|
|
/* 0291F250 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 0291F254 */ return;
|
|
}
|
|
|
|
// fn_0291F258 @ 0x291f258
|
|
void Gambit_fn_0291F258(CPUState* cpu) {
|
|
L_0291F258: ; // 0x291f258
|
|
/* 0291F258 */ return;
|
|
}
|
|
|
|
// fn_0291F25C @ 0x291f25c
|
|
void Gambit_fn_0291F25C(CPUState* cpu) {
|
|
L_0291F25C: ; // 0x291f25c
|
|
/* 0291F25C */ return;
|
|
}
|
|
|
|
// fn_0291F260 @ 0x291f260
|
|
void Gambit_fn_0291F260(CPUState* cpu) {
|
|
L_0291F260: ; // 0x291f260
|
|
/* 0291F260 */ return;
|
|
}
|
|
|
|
// fn_0291F264 @ 0x291f264
|
|
void Gambit_fn_0291F264(CPUState* cpu) {
|
|
L_0291F264: ; // 0x291f264
|
|
/* 0291F264 */ return;
|
|
}
|
|
|
|
// fn_0291F268 @ 0x291f268
|
|
void Gambit_fn_0291F268(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0291F268: ; // 0x291f268
|
|
/* 0291F268 */ _t0 = cpu->r[3] + 0x00000018u;
|
|
/* 0291F268 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0291F26C */ _t1 = cpu->r[12] + 0x0000007Cu;
|
|
/* 0291F26C */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0291F270 */ cpu->ctr = cpu->r[0];
|
|
/* 0291F274 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0291F278 @ 0x291f278
|
|
void Gambit_fn_0291F278(CPUState* cpu) {
|
|
L_0291F278: ; // 0x291f278
|
|
/* 0291F278 */ cpu->r[3] = cpu->r[3] + 0x00000040u;
|
|
/* 0291F27C */ return;
|
|
}
|
|
|
|
// fn_0291F280 @ 0x291f280
|
|
void Gambit_fn_0291F280(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _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_0291F280: ; // 0x291f280
|
|
/* 0291F280 */ cpu->r[0] = cpu->lr;
|
|
/* 0291F284 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0291F284 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291F284 */ cpu->r[1] = _t0;
|
|
/* 0291F288 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291F288 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0291F28C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0291F28C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0291F290 */ cpu->r[31] = cpu->r[3];
|
|
/* 0291F290 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0291F294 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0291F294 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0291F298 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291F298 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0291F298 */ if (_t5) goto L_0291F29C; else goto L_0291F2AC;
|
|
L_0291F29C: ; // 0x291f29c
|
|
/* 0291F29C */ cpu->r[3] = 0x0000001Cu;
|
|
/* 0291F2A0 */ Gambit_fn_02801A78(cpu);
|
|
/* 0291F2A4 */ cpu->r[31] = cpu->r[3];
|
|
/* 0291F2A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0291F2A8 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291F2A8 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0291F2A8 */ if (_t7) goto L_0291F304; else goto L_0291F2AC;
|
|
L_0291F2AC: ; // 0x291f2ac
|
|
/* 0291F2AC */ cpu->r[30] = 0x00000000u;
|
|
/* 0291F2B0 */ cpu->r[0] = 0x10140000u;
|
|
/* 0291F2B4 */ _t8 = cpu->r[31] + 0x00000000u;
|
|
/* 0291F2B4 */ rbrew_write32(cpu->mem, _t8, cpu->r[30]);
|
|
/* 0291F2B8 */ cpu->r[0] = cpu->r[0] + 0x000029C8u;
|
|
/* 0291F2BC */ _t9 = cpu->r[31] + 0x00000004u;
|
|
/* 0291F2BC */ rbrew_write32(cpu->mem, _t9, cpu->r[30]);
|
|
/* 0291F2C0 */ cpu->r[3] = cpu->r[31] + 0x00000008u;
|
|
/* 0291F2C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291F2C4 */ _t10 = cpu->r[31] + 0x00000018u;
|
|
/* 0291F2C4 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 0291F2C8 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291F2C8 */ _t12 = _t11 & 0x00000001u;
|
|
/* 0291F2C8 */ if (_t12) goto L_0291F2CC; else goto L_0291F2DC;
|
|
L_0291F2CC: ; // 0x291f2cc
|
|
/* 0291F2CC */ cpu->r[3] = 0x00000008u;
|
|
/* 0291F2D0 */ Gambit_fn_02801A78(cpu);
|
|
/* 0291F2D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291F2D8 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291F2D8 */ _t14 = _t13 & 0x00000001u;
|
|
/* 0291F2D8 */ if (_t14) goto L_0291F2E4; else goto L_0291F2DC;
|
|
L_0291F2DC: ; // 0x291f2dc
|
|
/* 0291F2DC */ _t15 = cpu->r[3] + 0x00000004u;
|
|
/* 0291F2DC */ rbrew_write32(cpu->mem, _t15, cpu->r[30]);
|
|
/* 0291F2E0 */ _t16 = cpu->r[3] + 0x00000000u;
|
|
/* 0291F2E0 */ rbrew_write32(cpu->mem, _t16, cpu->r[30]);
|
|
L_0291F2E4: ; // 0x291f2e4
|
|
/* 0291F2E4 */ cpu->r[3] = cpu->r[31] + 0x00000010u;
|
|
/* 0291F2E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291F2E8 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291F2E8 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0291F2E8 */ if (_t18) goto L_0291F2EC; else goto L_0291F2FC;
|
|
L_0291F2EC: ; // 0x291f2ec
|
|
/* 0291F2EC */ cpu->r[3] = 0x00000008u;
|
|
/* 0291F2F0 */ Gambit_fn_02801A78(cpu);
|
|
/* 0291F2F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291F2F8 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291F2F8 */ _t20 = _t19 & 0x00000001u;
|
|
/* 0291F2F8 */ if (_t20) goto L_0291F304; else goto L_0291F2FC;
|
|
L_0291F2FC: ; // 0x291f2fc
|
|
/* 0291F2FC */ _t21 = cpu->r[3] + 0x00000004u;
|
|
/* 0291F2FC */ rbrew_write32(cpu->mem, _t21, cpu->r[30]);
|
|
/* 0291F300 */ _t22 = cpu->r[3] + 0x00000000u;
|
|
/* 0291F300 */ rbrew_write32(cpu->mem, _t22, cpu->r[30]);
|
|
L_0291F304: ; // 0x291f304
|
|
/* 0291F304 */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 0291F304 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0291F308 */ cpu->r[3] = cpu->r[31];
|
|
/* 0291F30C */ _t24 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291F30C */ cpu->r[31] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0291F310 */ cpu->lr = cpu->r[0];
|
|
/* 0291F314 */ _t25 = cpu->r[1] + 0x00000008u;
|
|
/* 0291F314 */ cpu->r[30] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0291F318 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0291F31C */ return;
|
|
}
|
|
|
|
// fn_0291F284 @ 0x291f284
|
|
void Gambit_fn_0291F284(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _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_0291F284: ; // 0x291f284
|
|
/* 0291F284 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0291F284 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291F284 */ cpu->r[1] = _t0;
|
|
/* 0291F288 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291F288 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0291F28C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0291F28C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0291F290 */ cpu->r[31] = cpu->r[3];
|
|
/* 0291F290 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0291F294 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0291F294 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0291F298 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291F298 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0291F298 */ if (_t5) goto L_0291F29C; else goto L_0291F2AC;
|
|
L_0291F29C: ; // 0x291f29c
|
|
/* 0291F29C */ cpu->r[3] = 0x0000001Cu;
|
|
/* 0291F2A0 */ Gambit_fn_02801A78(cpu);
|
|
/* 0291F2A4 */ cpu->r[31] = cpu->r[3];
|
|
/* 0291F2A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0291F2A8 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291F2A8 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0291F2A8 */ if (_t7) goto L_0291F304; else goto L_0291F2AC;
|
|
L_0291F2AC: ; // 0x291f2ac
|
|
/* 0291F2AC */ cpu->r[30] = 0x00000000u;
|
|
/* 0291F2B0 */ cpu->r[0] = 0x10140000u;
|
|
/* 0291F2B4 */ _t8 = cpu->r[31] + 0x00000000u;
|
|
/* 0291F2B4 */ rbrew_write32(cpu->mem, _t8, cpu->r[30]);
|
|
/* 0291F2B8 */ cpu->r[0] = cpu->r[0] + 0x000029C8u;
|
|
/* 0291F2BC */ _t9 = cpu->r[31] + 0x00000004u;
|
|
/* 0291F2BC */ rbrew_write32(cpu->mem, _t9, cpu->r[30]);
|
|
/* 0291F2C0 */ cpu->r[3] = cpu->r[31] + 0x00000008u;
|
|
/* 0291F2C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291F2C4 */ _t10 = cpu->r[31] + 0x00000018u;
|
|
/* 0291F2C4 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 0291F2C8 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291F2C8 */ _t12 = _t11 & 0x00000001u;
|
|
/* 0291F2C8 */ if (_t12) goto L_0291F2CC; else goto L_0291F2DC;
|
|
L_0291F2CC: ; // 0x291f2cc
|
|
/* 0291F2CC */ cpu->r[3] = 0x00000008u;
|
|
/* 0291F2D0 */ Gambit_fn_02801A78(cpu);
|
|
/* 0291F2D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291F2D8 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291F2D8 */ _t14 = _t13 & 0x00000001u;
|
|
/* 0291F2D8 */ if (_t14) goto L_0291F2E4; else goto L_0291F2DC;
|
|
L_0291F2DC: ; // 0x291f2dc
|
|
/* 0291F2DC */ _t15 = cpu->r[3] + 0x00000004u;
|
|
/* 0291F2DC */ rbrew_write32(cpu->mem, _t15, cpu->r[30]);
|
|
/* 0291F2E0 */ _t16 = cpu->r[3] + 0x00000000u;
|
|
/* 0291F2E0 */ rbrew_write32(cpu->mem, _t16, cpu->r[30]);
|
|
L_0291F2E4: ; // 0x291f2e4
|
|
/* 0291F2E4 */ cpu->r[3] = cpu->r[31] + 0x00000010u;
|
|
/* 0291F2E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291F2E8 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291F2E8 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0291F2E8 */ if (_t18) goto L_0291F2EC; else goto L_0291F2FC;
|
|
L_0291F2EC: ; // 0x291f2ec
|
|
/* 0291F2EC */ cpu->r[3] = 0x00000008u;
|
|
/* 0291F2F0 */ Gambit_fn_02801A78(cpu);
|
|
/* 0291F2F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291F2F8 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291F2F8 */ _t20 = _t19 & 0x00000001u;
|
|
/* 0291F2F8 */ if (_t20) goto L_0291F304; else goto L_0291F2FC;
|
|
L_0291F2FC: ; // 0x291f2fc
|
|
/* 0291F2FC */ _t21 = cpu->r[3] + 0x00000004u;
|
|
/* 0291F2FC */ rbrew_write32(cpu->mem, _t21, cpu->r[30]);
|
|
/* 0291F300 */ _t22 = cpu->r[3] + 0x00000000u;
|
|
/* 0291F300 */ rbrew_write32(cpu->mem, _t22, cpu->r[30]);
|
|
L_0291F304: ; // 0x291f304
|
|
/* 0291F304 */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 0291F304 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0291F308 */ cpu->r[3] = cpu->r[31];
|
|
/* 0291F30C */ _t24 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291F30C */ cpu->r[31] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0291F310 */ cpu->lr = cpu->r[0];
|
|
/* 0291F314 */ _t25 = cpu->r[1] + 0x00000008u;
|
|
/* 0291F314 */ cpu->r[30] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0291F318 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0291F31C */ return;
|
|
}
|
|
|
|
// fn_0291F320 @ 0x291f320
|
|
void Gambit_fn_0291F320(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28;
|
|
|
|
L_0291F320: ; // 0x291f320
|
|
/* 0291F320 */ cpu->r[0] = cpu->lr;
|
|
/* 0291F324 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0291F324 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291F324 */ cpu->r[1] = _t0;
|
|
/* 0291F328 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291F328 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 0291F32C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0291F32C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0291F330 */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 0291F330 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 0291F334 */ cpu->r[31] = cpu->r[3];
|
|
/* 0291F338 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0291F338 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0291F33C */ _t5 = cpu->r[31] + 0x00000014u;
|
|
/* 0291F33C */ cpu->r[4] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0291F340 */ cpu->r[30] = 0x00000000u;
|
|
/* 0291F344 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 0291F348 */ cpu->r[29] = 0x101D0000u;
|
|
/* 0291F34C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291F34C */ _t7 = _t6 & 0x00000001u;
|
|
/* 0291F34C */ if (_t7) goto L_0291F37C; else goto L_0291F350;
|
|
L_0291F350: ; // 0x291f350
|
|
/* 0291F350 */ _t8 = cpu->r[31] + 0x00000010u;
|
|
/* 0291F350 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0291F354 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0291F358 */ _t9 = cpu->r[29] + 0xFFFF98F0u;
|
|
/* 0291F358 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0291F35C */ Gambit_fn_02826B90(cpu);
|
|
/* 0291F360 */ _t10 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0291F360 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0291F364 */ _t11 = cpu->r[12] + 0x0000003Cu;
|
|
/* 0291F364 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0291F368 */ cpu->ctr = cpu->r[0];
|
|
/* 0291F36C */ _t12 = cpu->r[31] + 0x00000014u;
|
|
/* 0291F36C */ cpu->r[4] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0291F370 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291F374 */ _t13 = cpu->r[31] + 0x00000010u;
|
|
/* 0291F374 */ rbrew_write32(cpu->mem, _t13, cpu->r[30]);
|
|
/* 0291F378 */ _t14 = cpu->r[31] + 0x00000014u;
|
|
/* 0291F378 */ rbrew_write32(cpu->mem, _t14, cpu->r[30]);
|
|
L_0291F37C: ; // 0x291f37c
|
|
/* 0291F37C */ _t15 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0291F37C */ cpu->r[4] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0291F380 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 0291F384 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291F384 */ _t17 = _t16 & 0x00000001u;
|
|
/* 0291F384 */ if (_t17) goto L_0291F3B4; else goto L_0291F388;
|
|
L_0291F388: ; // 0x291f388
|
|
/* 0291F388 */ _t18 = cpu->r[31] + 0x00000008u;
|
|
/* 0291F388 */ cpu->r[10] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0291F38C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0291F390 */ _t19 = cpu->r[29] + 0xFFFF98F0u;
|
|
/* 0291F390 */ cpu->r[3] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0291F394 */ Gambit_fn_02826B90(cpu);
|
|
/* 0291F398 */ _t20 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0291F398 */ cpu->r[8] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0291F39C */ _t21 = cpu->r[8] + 0x0000003Cu;
|
|
/* 0291F39C */ cpu->r[9] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0291F3A0 */ cpu->ctr = cpu->r[9];
|
|
/* 0291F3A4 */ _t22 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0291F3A4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0291F3A8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291F3AC */ _t23 = cpu->r[31] + 0x00000008u;
|
|
/* 0291F3AC */ rbrew_write32(cpu->mem, _t23, cpu->r[30]);
|
|
/* 0291F3B0 */ _t24 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0291F3B0 */ rbrew_write32(cpu->mem, _t24, cpu->r[30]);
|
|
L_0291F3B4: ; // 0x291f3b4
|
|
/* 0291F3B4 */ _t25 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291F3B4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0291F3B8 */ _t26 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0291F3B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0291F3BC */ _t27 = cpu->r[1] + 0x00000010u;
|
|
/* 0291F3BC */ cpu->r[30] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0291F3C0 */ cpu->lr = cpu->r[0];
|
|
/* 0291F3C4 */ _t28 = cpu->r[1] + 0x00000014u;
|
|
/* 0291F3C4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0291F3C8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0291F3CC */ return;
|
|
}
|
|
|
|
// fn_0291F324 @ 0x291f324
|
|
void Gambit_fn_0291F324(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28;
|
|
|
|
L_0291F324: ; // 0x291f324
|
|
/* 0291F324 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0291F324 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291F324 */ cpu->r[1] = _t0;
|
|
/* 0291F328 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291F328 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 0291F32C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0291F32C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0291F330 */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 0291F330 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 0291F334 */ cpu->r[31] = cpu->r[3];
|
|
/* 0291F338 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0291F338 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0291F33C */ _t5 = cpu->r[31] + 0x00000014u;
|
|
/* 0291F33C */ cpu->r[4] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0291F340 */ cpu->r[30] = 0x00000000u;
|
|
/* 0291F344 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 0291F348 */ cpu->r[29] = 0x101D0000u;
|
|
/* 0291F34C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291F34C */ _t7 = _t6 & 0x00000001u;
|
|
/* 0291F34C */ if (_t7) goto L_0291F37C; else goto L_0291F350;
|
|
L_0291F350: ; // 0x291f350
|
|
/* 0291F350 */ _t8 = cpu->r[31] + 0x00000010u;
|
|
/* 0291F350 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0291F354 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0291F358 */ _t9 = cpu->r[29] + 0xFFFF98F0u;
|
|
/* 0291F358 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0291F35C */ Gambit_fn_02826B90(cpu);
|
|
/* 0291F360 */ _t10 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0291F360 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0291F364 */ _t11 = cpu->r[12] + 0x0000003Cu;
|
|
/* 0291F364 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0291F368 */ cpu->ctr = cpu->r[0];
|
|
/* 0291F36C */ _t12 = cpu->r[31] + 0x00000014u;
|
|
/* 0291F36C */ cpu->r[4] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0291F370 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291F374 */ _t13 = cpu->r[31] + 0x00000010u;
|
|
/* 0291F374 */ rbrew_write32(cpu->mem, _t13, cpu->r[30]);
|
|
/* 0291F378 */ _t14 = cpu->r[31] + 0x00000014u;
|
|
/* 0291F378 */ rbrew_write32(cpu->mem, _t14, cpu->r[30]);
|
|
L_0291F37C: ; // 0x291f37c
|
|
/* 0291F37C */ _t15 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0291F37C */ cpu->r[4] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0291F380 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 0291F384 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291F384 */ _t17 = _t16 & 0x00000001u;
|
|
/* 0291F384 */ if (_t17) goto L_0291F3B4; else goto L_0291F388;
|
|
L_0291F388: ; // 0x291f388
|
|
/* 0291F388 */ _t18 = cpu->r[31] + 0x00000008u;
|
|
/* 0291F388 */ cpu->r[10] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0291F38C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0291F390 */ _t19 = cpu->r[29] + 0xFFFF98F0u;
|
|
/* 0291F390 */ cpu->r[3] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0291F394 */ Gambit_fn_02826B90(cpu);
|
|
/* 0291F398 */ _t20 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0291F398 */ cpu->r[8] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0291F39C */ _t21 = cpu->r[8] + 0x0000003Cu;
|
|
/* 0291F39C */ cpu->r[9] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0291F3A0 */ cpu->ctr = cpu->r[9];
|
|
/* 0291F3A4 */ _t22 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0291F3A4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0291F3A8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291F3AC */ _t23 = cpu->r[31] + 0x00000008u;
|
|
/* 0291F3AC */ rbrew_write32(cpu->mem, _t23, cpu->r[30]);
|
|
/* 0291F3B0 */ _t24 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0291F3B0 */ rbrew_write32(cpu->mem, _t24, cpu->r[30]);
|
|
L_0291F3B4: ; // 0x291f3b4
|
|
/* 0291F3B4 */ _t25 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291F3B4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0291F3B8 */ _t26 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0291F3B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0291F3BC */ _t27 = cpu->r[1] + 0x00000010u;
|
|
/* 0291F3BC */ cpu->r[30] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0291F3C0 */ cpu->lr = cpu->r[0];
|
|
/* 0291F3C4 */ _t28 = cpu->r[1] + 0x00000014u;
|
|
/* 0291F3C4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0291F3C8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0291F3CC */ return;
|
|
}
|
|
|
|
// fn_0291F3D0 @ 0x291f3d0
|
|
void Gambit_fn_0291F3D0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0291F3D0: ; // 0x291f3d0
|
|
/* 0291F3D0 */ cpu->r[0] = cpu->lr;
|
|
/* 0291F3D4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0291F3D4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291F3D4 */ cpu->r[1] = _t0;
|
|
/* 0291F3D8 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0291F3D8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0291F3DC */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291F3DC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0291F3E0 */ cpu->r[31] = cpu->r[3];
|
|
/* 0291F3E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0291F3E4 */ cpu->r[30] = cpu->r[4];
|
|
/* 0291F3E8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0291F3E8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0291F3EC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291F3EC */ _t5 = _t4 & 0x00000001u;
|
|
/* 0291F3EC */ if (_t5) goto L_0291F414; else goto L_0291F3F0;
|
|
L_0291F3F0: ; // 0x291f3f0
|
|
/* 0291F3F0 */ cpu->r[0] = 0x10140000u;
|
|
/* 0291F3F4 */ cpu->r[0] = cpu->r[0] + 0x000029C8u;
|
|
/* 0291F3F8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0291F3FC */ _t6 = cpu->r[31] + 0x00000018u;
|
|
/* 0291F3FC */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0291F400 */ Gambit_fn_0291F320(cpu);
|
|
/* 0291F404 */ cpu->r[0] = rbrew_rlwinm(cpu->r[30], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0291F404 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0291F408 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291F408 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0291F408 */ if (_t8) goto L_0291F414; else goto L_0291F40C;
|
|
L_0291F40C: ; // 0x291f40c
|
|
/* 0291F40C */ cpu->r[3] = cpu->r[31];
|
|
/* 0291F410 */ Gambit_fn_02801BB0(cpu);
|
|
L_0291F414: ; // 0x291f414
|
|
/* 0291F414 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0291F414 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0291F418 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 0291F418 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0291F41C */ cpu->lr = cpu->r[0];
|
|
/* 0291F420 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291F420 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0291F424 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0291F428 */ return;
|
|
}
|
|
|
|
// fn_0291F3D4 @ 0x291f3d4
|
|
void Gambit_fn_0291F3D4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0291F3D4: ; // 0x291f3d4
|
|
/* 0291F3D4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0291F3D4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291F3D4 */ cpu->r[1] = _t0;
|
|
/* 0291F3D8 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0291F3D8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0291F3DC */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291F3DC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0291F3E0 */ cpu->r[31] = cpu->r[3];
|
|
/* 0291F3E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0291F3E4 */ cpu->r[30] = cpu->r[4];
|
|
/* 0291F3E8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0291F3E8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0291F3EC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291F3EC */ _t5 = _t4 & 0x00000001u;
|
|
/* 0291F3EC */ if (_t5) goto L_0291F414; else goto L_0291F3F0;
|
|
L_0291F3F0: ; // 0x291f3f0
|
|
/* 0291F3F0 */ cpu->r[0] = 0x10140000u;
|
|
/* 0291F3F4 */ cpu->r[0] = cpu->r[0] + 0x000029C8u;
|
|
/* 0291F3F8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0291F3FC */ _t6 = cpu->r[31] + 0x00000018u;
|
|
/* 0291F3FC */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0291F400 */ Gambit_fn_0291F320(cpu);
|
|
/* 0291F404 */ cpu->r[0] = rbrew_rlwinm(cpu->r[30], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0291F404 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0291F408 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291F408 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0291F408 */ if (_t8) goto L_0291F414; else goto L_0291F40C;
|
|
L_0291F40C: ; // 0x291f40c
|
|
/* 0291F40C */ cpu->r[3] = cpu->r[31];
|
|
/* 0291F410 */ Gambit_fn_02801BB0(cpu);
|
|
L_0291F414: ; // 0x291f414
|
|
/* 0291F414 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0291F414 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0291F418 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 0291F418 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0291F41C */ cpu->lr = cpu->r[0];
|
|
/* 0291F420 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291F420 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0291F424 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0291F428 */ return;
|
|
}
|
|
|
|
// fn_0291F42C @ 0x291f42c
|
|
void Gambit_fn_0291F42C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _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;
|
|
|
|
L_0291F42C: ; // 0x291f42c
|
|
/* 0291F42C */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 0291F42C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291F42C */ cpu->r[1] = _t0;
|
|
/* 0291F430 */ /* nop */
|
|
/* 0291F434 */ cpu->r[0] = cpu->lr;
|
|
/* 0291F438 */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 0291F438 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0291F43C */ cpu->r[29] = cpu->r[4];
|
|
/* 0291F440 */ _t2 = cpu->r[29] + 0x00000200u;
|
|
/* 0291F440 */ cpu->r[31] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0291F444 */ cpu->r[28] = cpu->r[3];
|
|
/* 0291F448 */ cpu->r[30] = cpu->r[5];
|
|
/* 0291F44C */ cpu->r[27] = 0x101D0000u;
|
|
/* 0291F450 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0291F454 */ cpu->r[3] = cpu->r[30];
|
|
/* 0291F458 */ _t3 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291F458 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0291F458 */ if (_t4) goto L_0291F45C; else goto L_0291F4A4;
|
|
L_0291F45C: ; // 0x291f45c
|
|
/* 0291F45C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291F460 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291F460 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0291F460 */ if (_t6) goto L_0291F464; else goto L_0291F46C;
|
|
L_0291F464: ; // 0x291f464
|
|
/* 0291F464 */ _t7 = cpu->r[27] + 0xFFFF98F0u;
|
|
/* 0291F464 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0291F468 */ Gambit_fn_02826F20(cpu);
|
|
L_0291F46C: ; // 0x291f46c
|
|
/* 0291F46C */ _t8 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0291F46C */ cpu->r[7] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0291F470 */ _t9 = cpu->r[7] + 0x00000034u;
|
|
/* 0291F470 */ cpu->r[8] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0291F474 */ cpu->ctr = cpu->r[8];
|
|
/* 0291F478 */ cpu->r[5] = 0x00000004u;
|
|
/* 0291F47C */ cpu->r[4] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0291F480 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291F484 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0291F488 */ cpu->r[0] = cpu->r[31];
|
|
/* 0291F48C */ _t10 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291F48C */ _t11 = _t10 & 0x00000001u;
|
|
/* 0291F48C */ if (_t11) goto L_0291F494; else goto L_0291F490;
|
|
L_0291F490: ; // 0x291f490
|
|
/* 0291F490 */ cpu->r[0] = 0x00000001u;
|
|
L_0291F494: ; // 0x291f494
|
|
/* 0291F494 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291F498 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291F498 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0291F498 */ if (_t13) goto L_0291F4A4; else goto L_0291F49C;
|
|
L_0291F49C: ; // 0x291f49c
|
|
/* 0291F49C */ _t14 = cpu->r[28] + 0x00000014u;
|
|
/* 0291F49C */ rbrew_write32(cpu->mem, _t14, cpu->r[3]);
|
|
/* 0291F4A0 */ _t15 = cpu->r[28] + 0x00000010u;
|
|
/* 0291F4A0 */ rbrew_write32(cpu->mem, _t15, cpu->r[31]);
|
|
L_0291F4A4: ; // 0x291f4a4
|
|
/* 0291F4A4 */ cpu->r[31] = 0x101D0000u;
|
|
/* 0291F4A8 */ _t16 = cpu->r[31] + 0xFFFFA470u;
|
|
/* 0291F4A8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0291F4AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0291F4B0 */ cpu->r[3] = cpu->r[30];
|
|
/* 0291F4B4 */ _t17 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291F4B4 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0291F4B4 */ if (_t18) goto L_0291F4B8; else goto L_0291F4F8;
|
|
L_0291F4B8: ; // 0x291f4b8
|
|
/* 0291F4B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291F4BC */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291F4BC */ _t20 = _t19 & 0x00000001u;
|
|
/* 0291F4BC */ if (_t20) goto L_0291F4C0; else goto L_0291F4C8;
|
|
L_0291F4C0: ; // 0x291f4c0
|
|
/* 0291F4C0 */ _t21 = cpu->r[27] + 0xFFFF98F0u;
|
|
/* 0291F4C0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0291F4C4 */ Gambit_fn_02826F20(cpu);
|
|
L_0291F4C8: ; // 0x291f4c8
|
|
/* 0291F4C8 */ _t22 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0291F4C8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0291F4CC */ _t23 = cpu->r[9] + 0x00000034u;
|
|
/* 0291F4CC */ cpu->r[11] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0291F4D0 */ cpu->ctr = cpu->r[11];
|
|
/* 0291F4D4 */ cpu->r[5] = 0x00000004u;
|
|
/* 0291F4D8 */ cpu->r[4] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0291F4DC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291F4E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0291F4E4 */ cpu->r[12] = cpu->r[31];
|
|
/* 0291F4E8 */ _t24 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291F4E8 */ _t25 = _t24 & 0x00000001u;
|
|
/* 0291F4E8 */ if (_t25) goto L_0291F4F0; else goto L_0291F4EC;
|
|
L_0291F4EC: ; // 0x291f4ec
|
|
/* 0291F4EC */ cpu->r[12] = 0x00000001u;
|
|
L_0291F4F0: ; // 0x291f4f0
|
|
/* 0291F4F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291F4F4 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291F4F4 */ _t27 = _t26 & 0x00000001u;
|
|
/* 0291F4F4 */ if (_t27) goto L_0291F4F8; else goto L_0291F51C;
|
|
L_0291F4F8: ; // 0x291f4f8
|
|
/* 0291F4F8 */ _t28 = cpu->r[28] + 0x00000008u;
|
|
/* 0291F4F8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0291F4FC */ _t29 = cpu->r[28] + 0x0000000Cu;
|
|
/* 0291F4FC */ cpu->r[3] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0291F500 */ cpu->r[0] = rbrew_rlwinm(cpu->r[10], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0291F504 */ cpu->r[8] = cpu->r[3] + cpu->r[0];
|
|
/* 0291F508 */ cpu->r[10] = 0x00000000u;
|
|
/* 0291F50C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], cpu->r[8]);
|
|
/* 0291F510 */ cpu->r[11] = cpu->r[3];
|
|
/* 0291F514 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291F514 */ _t31 = _t30 & 0x00000001u;
|
|
/* 0291F514 */ if (_t31) goto L_0291F590; else goto L_0291F518;
|
|
L_0291F518: ; // 0x291f518
|
|
/* 0291F518 */ goto L_0291F53C;
|
|
L_0291F51C: ; // 0x291f51c
|
|
/* 0291F51C */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0291F520 */ _t32 = cpu->r[28] + 0x0000000Cu;
|
|
/* 0291F520 */ rbrew_write32(cpu->mem, _t32, cpu->r[3]);
|
|
/* 0291F524 */ cpu->r[8] = cpu->r[3] + cpu->r[0];
|
|
/* 0291F528 */ cpu->r[10] = 0x00000000u;
|
|
/* 0291F52C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], cpu->r[8]);
|
|
/* 0291F530 */ _t33 = cpu->r[28] + 0x00000008u;
|
|
/* 0291F530 */ rbrew_write32(cpu->mem, _t33, cpu->r[31]);
|
|
/* 0291F534 */ cpu->r[11] = cpu->r[3];
|
|
/* 0291F538 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291F538 */ _t35 = _t34 & 0x00000001u;
|
|
/* 0291F538 */ if (_t35) goto L_0291F590; else goto L_0291F53C;
|
|
L_0291F53C: ; // 0x291f53c
|
|
/* 0291F53C */ cpu->r[0] = cpu->r[3] - cpu->r[11];
|
|
/* 0291F540 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Eu, 0x00000002u, 0x0000001Fu);
|
|
/* 0291F544 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], 0x00000080u);
|
|
/* 0291F548 */ _t36 = cpu->r[3] + 0x00000000u;
|
|
/* 0291F548 */ rbrew_write16(cpu->mem, _t36, (uint16_t)cpu->r[10]);
|
|
/* 0291F54C */ _t37 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291F54C */ _t38 = _t37 & 0x00000001u;
|
|
/* 0291F54C */ if (_t38) goto L_0291F550; else goto L_0291F574;
|
|
L_0291F550: ; // 0x291f550
|
|
/* 0291F550 */ cpu->r[6] = rbrew_rlwinm(cpu->r[12], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0291F554 */ _t39 = cpu->r[29] + cpu->r[6];
|
|
/* 0291F554 */ cpu->r[6] = rbrew_read32(cpu->mem, _t39);
|
|
/* 0291F558 */ _t40 = cpu->r[3] + 0x00000002u;
|
|
/* 0291F558 */ rbrew_write16(cpu->mem, _t40, (uint16_t)cpu->r[6]);
|
|
/* 0291F55C */ cpu->r[3] = cpu->r[3] + 0x00000004u;
|
|
/* 0291F560 */ cpu->r[0] = rbrew_rlwinm(cpu->r[6], 0x00000000u, 0x00000010u, 0x0000001Fu);
|
|
/* 0291F564 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], cpu->r[8]);
|
|
/* 0291F568 */ cpu->r[10] = cpu->r[10] + cpu->r[0];
|
|
/* 0291F56C */ _t41 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291F56C */ _t42 = _t41 & 0x00000001u;
|
|
/* 0291F56C */ if (_t42) goto L_0291F570; else goto L_0291F53C;
|
|
L_0291F570: ; // 0x291f570
|
|
/* 0291F570 */ goto L_0291F590;
|
|
L_0291F574: ; // 0x291f574
|
|
/* 0291F574 */ _t43 = cpu->r[29] + 0x00000000u;
|
|
/* 0291F574 */ cpu->r[6] = rbrew_read32(cpu->mem, _t43);
|
|
/* 0291F578 */ _t44 = cpu->r[3] + 0x00000002u;
|
|
/* 0291F578 */ rbrew_write16(cpu->mem, _t44, (uint16_t)cpu->r[6]);
|
|
/* 0291F57C */ cpu->r[3] = cpu->r[3] + 0x00000004u;
|
|
/* 0291F580 */ cpu->r[0] = rbrew_rlwinm(cpu->r[6], 0x00000000u, 0x00000010u, 0x0000001Fu);
|
|
/* 0291F584 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], cpu->r[8]);
|
|
/* 0291F588 */ cpu->r[10] = cpu->r[10] + cpu->r[0];
|
|
/* 0291F58C */ _t45 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291F58C */ _t46 = _t45 & 0x00000001u;
|
|
/* 0291F58C */ if (_t46) goto L_0291F590; else goto L_0291F53C;
|
|
L_0291F590: ; // 0x291f590
|
|
/* 0291F590 */ _t47 = cpu->r[28] + 0x00000010u;
|
|
/* 0291F590 */ cpu->r[0] = rbrew_read32(cpu->mem, _t47);
|
|
/* 0291F594 */ _t48 = cpu->r[28] + 0x00000014u;
|
|
/* 0291F594 */ cpu->r[10] = rbrew_read32(cpu->mem, _t48);
|
|
/* 0291F598 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0291F59C */ cpu->r[0] = cpu->r[10] + cpu->r[0];
|
|
/* 0291F5A0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[0]);
|
|
/* 0291F5A4 */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291F5A4 */ _t50 = _t49 & 0x00000001u;
|
|
/* 0291F5A4 */ if (_t50) goto L_0291F5BC; else goto L_0291F5A8;
|
|
L_0291F5A8: ; // 0x291f5a8
|
|
/* 0291F5A8 */ cpu->r[5] = 0x00000000u;
|
|
L_0291F5AC: ; // 0x291f5ac
|
|
/* 0291F5AC */ _t51 = cpu->r[10] + 0x00000000u;
|
|
/* 0291F5AC */ rbrew_write32(cpu->mem, _t51, cpu->r[5]);
|
|
/* 0291F5B0 */ cpu->r[10] = cpu->r[10] + 0x00000004u;
|
|
/* 0291F5B4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[0]);
|
|
/* 0291F5B8 */ _t52 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291F5B8 */ _t53 = _t52 & 0x00000001u;
|
|
/* 0291F5B8 */ if (_t53) goto L_0291F5BC; else goto L_0291F5AC;
|
|
L_0291F5BC: ; // 0x291f5bc
|
|
/* 0291F5BC */ /* nop */
|
|
/* 0291F5C0 */ _t54 = cpu->r[1] + 0x00000024u;
|
|
/* 0291F5C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t54);
|
|
/* 0291F5C4 */ cpu->lr = cpu->r[0];
|
|
/* 0291F5C8 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 0291F5CC */ return;
|
|
}
|
|
|
|
// fn_0291F5D4 @ 0x291f5d4
|
|
void Gambit_fn_0291F5D4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _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_0291F5D4: ; // 0x291f5d4
|
|
/* 0291F5D4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0291F5D4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291F5D4 */ cpu->r[1] = _t0;
|
|
/* 0291F5D8 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 0291F5D8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0291F5DC */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291F5DC */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 0291F5E0 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0291F5E0 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 0291F5E4 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0291F5E4 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0291F5E8 */ _t5 = cpu->r[3] + 0x00000000u;
|
|
/* 0291F5E8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0291F5EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291F5F0 */ cpu->r[31] = cpu->r[4];
|
|
/* 0291F5F4 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291F5F4 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0291F5F4 */ if (_t7) goto L_0291F6F0; else goto L_0291F5F8;
|
|
L_0291F5F8: ; // 0x291f5f8
|
|
/* 0291F5F8 */ _t8 = cpu->r[31] + 0x00000000u;
|
|
/* 0291F5F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0291F5FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0291F600 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291F600 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0291F600 */ if (_t10) goto L_0291F6D0; else goto L_0291F604;
|
|
L_0291F604: ; // 0x291f604
|
|
/* 0291F604 */ _t11 = cpu->r[3] + 0x00000018u;
|
|
/* 0291F604 */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0291F608 */ _t12 = cpu->r[10] + 0x00000084u;
|
|
/* 0291F608 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0291F60C */ cpu->ctr = cpu->r[0];
|
|
/* 0291F610 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291F614 */ cpu->r[30] = cpu->r[3];
|
|
/* 0291F618 */ _t13 = cpu->r[31] + 0x00000000u;
|
|
/* 0291F618 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0291F61C */ _t14 = cpu->r[3] + 0x00000018u;
|
|
/* 0291F61C */ cpu->r[11] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0291F620 */ _t15 = cpu->r[11] + 0x00000084u;
|
|
/* 0291F620 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0291F624 */ cpu->ctr = cpu->r[0];
|
|
/* 0291F628 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291F62C */ _t16 = cpu->r[30] + 0x00000004u;
|
|
/* 0291F62C */ cpu->r[6] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0291F630 */ cpu->r[29] = cpu->r[3];
|
|
/* 0291F634 */ _t17 = cpu->r[6] + 0x00000014u;
|
|
/* 0291F634 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0291F638 */ cpu->ctr = cpu->r[0];
|
|
/* 0291F63C */ cpu->r[3] = cpu->r[30];
|
|
/* 0291F640 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291F644 */ _t18 = cpu->r[30] + 0x00000004u;
|
|
/* 0291F644 */ cpu->r[8] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0291F648 */ _t19 = cpu->r[8] + 0x00000014u;
|
|
/* 0291F648 */ cpu->r[9] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0291F64C */ cpu->ctr = cpu->r[9];
|
|
/* 0291F650 */ cpu->r[3] = cpu->r[30];
|
|
/* 0291F654 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291F658 */ _t20 = cpu->r[29] + 0x00000004u;
|
|
/* 0291F658 */ cpu->r[10] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0291F65C */ _t21 = cpu->r[10] + 0x00000014u;
|
|
/* 0291F65C */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0291F660 */ cpu->ctr = cpu->r[0];
|
|
/* 0291F664 */ _t22 = cpu->r[30] + 0x00000000u;
|
|
/* 0291F664 */ cpu->r[31] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0291F668 */ cpu->r[3] = cpu->r[29];
|
|
/* 0291F66C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291F670 */ _t23 = cpu->r[29] + 0x00000000u;
|
|
/* 0291F670 */ cpu->r[6] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0291F674 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[6]);
|
|
/* 0291F678 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291F678 */ _t25 = _t24 & 0x00000001u;
|
|
/* 0291F678 */ if (_t25) goto L_0291F6F0; else goto L_0291F67C;
|
|
L_0291F67C: ; // 0x291f67c
|
|
/* 0291F67C */ cpu->r[12] = 0x10110000u;
|
|
/* 0291F680 */ cpu->r[8] = 0x00080000u;
|
|
/* 0291F684 */ _t26 = cpu->r[29] + 0x00000000u;
|
|
/* 0291F684 */ cpu->r[9] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0291F688 */ cpu->r[11] = 0x00000000u;
|
|
/* 0291F68C */ cpu->ctr = cpu->r[8];
|
|
/* 0291F690 */ _t27 = cpu->r[12] + 0x00007399u;
|
|
/* 0291F690 */ cpu->r[12] = rbrew_read8(cpu->mem, _t27);
|
|
/* 0291F694 */ cpu->r[9] = cpu->r[9] + 0xFFFFFFFFu;
|
|
L_0291F698: ; // 0x291f698
|
|
/* 0291F698 */ _t28 = cpu->r[9] + 0x00000001u;
|
|
/* 0291F698 */ cpu->r[0] = rbrew_read8(cpu->mem, _t28);
|
|
/* 0291F698 */ cpu->r[9] = _t28;
|
|
/* 0291F69C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[12]);
|
|
/* 0291F6A0 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291F6A0 */ _t30 = _t29 & 0x00000001u;
|
|
/* 0291F6A0 */ if (_t30) goto L_0291F6F0; else goto L_0291F6A4;
|
|
L_0291F6A4: ; // 0x291f6a4
|
|
/* 0291F6A4 */ _t31 = cpu->r[30] + 0x00000000u;
|
|
/* 0291F6A4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0291F6A8 */ _t32 = cpu->r[7] + cpu->r[11];
|
|
/* 0291F6A8 */ cpu->r[10] = rbrew_read8(cpu->mem, _t32);
|
|
/* 0291F6AC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[12]);
|
|
/* 0291F6B0 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291F6B0 */ _t34 = _t33 & 0x00000001u;
|
|
/* 0291F6B0 */ if (_t34) goto L_0291F6D0; else goto L_0291F6B4;
|
|
L_0291F6B4: ; // 0x291f6b4
|
|
/* 0291F6B4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[10]);
|
|
/* 0291F6B8 */ _t35 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291F6B8 */ _t36 = _t35 & 0x00000001u;
|
|
/* 0291F6B8 */ if (_t36) goto L_0291F6D0; else goto L_0291F6BC;
|
|
L_0291F6BC: ; // 0x291f6bc
|
|
/* 0291F6BC */ _t37 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291F6BC */ _t38 = _t37 & 0x00000001u;
|
|
/* 0291F6BC */ if (_t38) goto L_0291F6F0; else goto L_0291F6C0;
|
|
L_0291F6C0: ; // 0x291f6c0
|
|
/* 0291F6C0 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 0291F6C4 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0291F6C4 */ _t39 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0291F6C4 */ _t40 = _t39 >> (0x00000002u & 31u);
|
|
/* 0291F6C4 */ _t41 = _t40 & 0x00000001u;
|
|
/* 0291F6C4 */ if (_t41) goto L_0291F698; else goto L_0291F6C8;
|
|
L_0291F6C8: ; // 0x291f6c8
|
|
/* 0291F6C8 */ cpu->r[3] = 0x00000001u;
|
|
/* 0291F6CC */ goto L_0291F6F4;
|
|
L_0291F6D0: ; // 0x291f6d0
|
|
/* 0291F6D0 */ _t42 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291F6D0 */ cpu->r[29] = rbrew_read32(cpu->mem, _t42);
|
|
/* 0291F6D4 */ _t43 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0291F6D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t43);
|
|
/* 0291F6D8 */ _t44 = cpu->r[1] + 0x00000010u;
|
|
/* 0291F6D8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t44);
|
|
/* 0291F6DC */ cpu->lr = cpu->r[0];
|
|
/* 0291F6E0 */ _t45 = cpu->r[1] + 0x00000014u;
|
|
/* 0291F6E0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t45);
|
|
/* 0291F6E4 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0291F6E8 */ cpu->r[3] = 0xFFFFFFFFu;
|
|
/* 0291F6EC */ return;
|
|
L_0291F6F0: ; // 0x291f6f0
|
|
/* 0291F6F0 */ cpu->r[3] = 0x00000001u;
|
|
L_0291F6F4: ; // 0x291f6f4
|
|
/* 0291F6F4 */ _t46 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291F6F4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t46);
|
|
/* 0291F6F8 */ _t47 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0291F6F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t47);
|
|
/* 0291F6FC */ _t48 = cpu->r[1] + 0x00000010u;
|
|
/* 0291F6FC */ cpu->r[30] = rbrew_read32(cpu->mem, _t48);
|
|
/* 0291F700 */ cpu->lr = cpu->r[0];
|
|
/* 0291F704 */ _t49 = cpu->r[1] + 0x00000014u;
|
|
/* 0291F704 */ cpu->r[31] = rbrew_read32(cpu->mem, _t49);
|
|
/* 0291F708 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0291F70C */ return;
|
|
}
|
|
|
|
// fn_0291F710 @ 0x291f710
|
|
void Gambit_fn_0291F710(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75;
|
|
|
|
L_0291F710: ; // 0x291f710
|
|
/* 0291F710 */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 0291F710 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0291F714 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[0]);
|
|
/* 0291F718 */ _t1 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0291F718 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0291F71C */ _t2 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291F71C */ _t3 = _t2 & 0x00000001u;
|
|
/* 0291F71C */ if (_t3) goto L_0291F720; else goto L_0291F738;
|
|
L_0291F720: ; // 0x291f720
|
|
/* 0291F720 */ cpu->r[7] = rbrew_rlwinm(cpu->r[4], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0291F724 */ cpu->r[6] = cpu->r[12] + cpu->r[7];
|
|
/* 0291F728 */ _t4 = cpu->r[6] + 0x00000002u;
|
|
/* 0291F728 */ cpu->r[8] = rbrew_read16(cpu->mem, _t4);
|
|
/* 0291F72C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0291F730 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291F730 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0291F730 */ if (_t6) goto L_0291F734; else goto L_0291F744;
|
|
L_0291F734: ; // 0x291f734
|
|
/* 0291F734 */ return;
|
|
L_0291F738: ; // 0x291f738
|
|
/* 0291F738 */ _t7 = cpu->r[12] + 0x00000002u;
|
|
/* 0291F738 */ cpu->r[8] = rbrew_read16(cpu->mem, _t7);
|
|
/* 0291F73C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0291F740 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291F740 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0291F740 */ if (_t9) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0291F740 */ goto L_0291F744;
|
|
L_0291F744: ; // 0x291f744
|
|
/* 0291F744 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[0]);
|
|
/* 0291F748 */ _t10 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291F748 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0291F748 */ if (_t11) goto L_0291F74C; else goto L_0291F760;
|
|
L_0291F74C: ; // 0x291f74c
|
|
/* 0291F74C */ cpu->r[9] = rbrew_rlwinm(cpu->r[4], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0291F750 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[0]);
|
|
/* 0291F754 */ _t12 = cpu->r[9] + cpu->r[12];
|
|
/* 0291F754 */ cpu->r[5] = rbrew_read16(cpu->mem, _t12);
|
|
/* 0291F758 */ _t13 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291F758 */ _t14 = _t13 & 0x00000001u;
|
|
/* 0291F758 */ if (_t14) goto L_0291F76C; else goto L_0291F75C;
|
|
L_0291F75C: ; // 0x291f75c
|
|
/* 0291F75C */ goto L_0291F780;
|
|
L_0291F760: ; // 0x291f760
|
|
/* 0291F760 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[0]);
|
|
/* 0291F764 */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 0291F764 */ cpu->r[5] = rbrew_read16(cpu->mem, _t15);
|
|
/* 0291F768 */ _t16 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291F768 */ _t17 = _t16 & 0x00000001u;
|
|
/* 0291F768 */ if (_t17) goto L_0291F76C; else goto L_0291F780;
|
|
L_0291F76C: ; // 0x291f76c
|
|
/* 0291F76C */ cpu->r[10] = rbrew_rlwinm(cpu->r[4], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0291F770 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[0]);
|
|
/* 0291F774 */ _t18 = cpu->r[12] + cpu->r[10];
|
|
/* 0291F774 */ cpu->r[8] = rbrew_read16(cpu->mem, _t18);
|
|
/* 0291F778 */ _t19 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291F778 */ _t20 = _t19 & 0x00000001u;
|
|
/* 0291F778 */ if (_t20) goto L_0291F78C; else goto L_0291F77C;
|
|
L_0291F77C: ; // 0x291f77c
|
|
/* 0291F77C */ goto L_0291F794;
|
|
L_0291F780: ; // 0x291f780
|
|
/* 0291F780 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[0]);
|
|
/* 0291F784 */ _t21 = cpu->r[12] + 0x00000000u;
|
|
/* 0291F784 */ cpu->r[8] = rbrew_read16(cpu->mem, _t21);
|
|
/* 0291F788 */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291F788 */ _t23 = _t22 & 0x00000001u;
|
|
/* 0291F788 */ if (_t23) goto L_0291F78C; else goto L_0291F77C;
|
|
L_0291F78C: ; // 0x291f78c
|
|
/* 0291F78C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0291F790 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_0291F794: ; // 0x291f794
|
|
/* 0291F794 */ _t24 = cpu->r[12] + 0x00000002u;
|
|
/* 0291F794 */ cpu->r[6] = rbrew_read16(cpu->mem, _t24);
|
|
/* 0291F798 */ cpu->r[4] = 0x02920000u;
|
|
/* 0291F79C */ cpu->r[3] = cpu->r[3] + 0x00000010u;
|
|
/* 0291F7A0 */ cpu->r[10] = cpu->r[8] + cpu->r[6];
|
|
/* 0291F7A4 */ cpu->r[4] = cpu->r[4] + 0xFFFFF5D0u;
|
|
/* 0291F7A8 */ cpu->r[6] = cpu->r[10] + 0xFFFFFFFFu;
|
|
/* 0291F7AC */ goto L_0291FB9C;
|
|
L_0291FB9C: ; // 0x291fb9c
|
|
/* 0291FB9C */ _t25 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 0291FB9C */ rbrew_write32(cpu->mem, _t25, cpu->r[1]);
|
|
/* 0291FB9C */ cpu->r[1] = _t25;
|
|
/* 0291FBA0 */ /* nop */
|
|
/* 0291FBA4 */ cpu->r[0] = cpu->lr;
|
|
/* 0291FBA8 */ _t26 = cpu->r[1] + 0x00000034u;
|
|
/* 0291FBA8 */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 0291FBAC */ _t27 = cpu->r[3] + 0x00000000u;
|
|
/* 0291FBAC */ cpu->r[8] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0291FBB0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[8]);
|
|
/* 0291FBB4 */ cpu->r[31] = cpu->r[4];
|
|
/* 0291FBB8 */ _t28 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291FBB8 */ _t29 = _t28 & 0x00000001u;
|
|
/* 0291FBB8 */ if (_t29) goto L_0291FBBC; else goto L_0291FD50;
|
|
L_0291FBBC: ; // 0x291fbbc
|
|
/* 0291FBBC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[8]);
|
|
/* 0291FBC0 */ _t30 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291FBC0 */ _t31 = _t30 & 0x00000001u;
|
|
/* 0291FBC0 */ if (_t31) goto L_0291FBC4; else goto L_0291FD50;
|
|
L_0291FBC4: ; // 0x291fbc4
|
|
/* 0291FBC4 */ cpu->r[10] = cpu->r[6] - cpu->r[5];
|
|
/* 0291FBC8 */ cpu->r[27] = cpu->r[10] + 0x00000001u;
|
|
/* 0291FBCC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000001u);
|
|
/* 0291FBD0 */ _t32 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291FBD0 */ _t33 = _t32 & 0x00000001u;
|
|
/* 0291FBD0 */ if (_t33) goto L_0291FBD4; else goto L_0291FD50;
|
|
L_0291FBD4: ; // 0x291fbd4
|
|
/* 0291FBD4 */ _t34 = cpu->r[3] + 0x00000004u;
|
|
/* 0291FBD4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t34);
|
|
/* 0291FBD8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[5], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0291FBDC */ cpu->r[26] = cpu->r[12] + cpu->r[0];
|
|
/* 0291FBE0 */ /* nop */
|
|
/* 0291FBE4 */ cpu->r[23] = cpu->r[0];
|
|
/* 0291FBE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u);
|
|
/* 0291FBE8 */ cpu->r[28] = cpu->r[23];
|
|
/* 0291FBEC */ _t35 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291FBEC */ _t36 = _t35 & 0x00000001u;
|
|
/* 0291FBEC */ if (_t36) goto L_0291FBF0; else goto L_0291FCA0;
|
|
L_0291FBF0: ; // 0x291fbf0
|
|
/* 0291FBF0 */ cpu->r[5] = cpu->r[26] + 0xFFFFFFFCu;
|
|
/* 0291FBF4 */ cpu->r[6] = rbrew_rlwinm(cpu->r[23], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0291FBF8 */ cpu->r[29] = cpu->r[5] + cpu->r[6];
|
|
/* 0291FBFC */ cpu->r[29] = cpu->r[29] + 0x00000004u;
|
|
L_0291FC00: ; // 0x291fc00
|
|
/* 0291FC00 */ cpu->r[24] = cpu->r[23];
|
|
/* 0291FC04 */ _t37 = cpu->r[29] + 0xFFFFFFFCu;
|
|
/* 0291FC04 */ cpu->r[10] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0291FC04 */ cpu->r[29] = _t37;
|
|
/* 0291FC08 */ cpu->r[25] = rbrew_rlwinm(cpu->r[24], 0x00000001u, 0x00000000u, 0x0000001Eu);
|
|
/* 0291FC0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], cpu->r[27]);
|
|
/* 0291FC10 */ _t38 = cpu->r[1] + 0x00000008u;
|
|
/* 0291FC10 */ rbrew_write32(cpu->mem, _t38, cpu->r[10]);
|
|
/* 0291FC14 */ _t39 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291FC14 */ _t40 = _t39 & 0x00000001u;
|
|
/* 0291FC14 */ if (_t40) goto L_0291FC88; else goto L_0291FC18;
|
|
L_0291FC18: ; // 0x291fc18
|
|
/* 0291FC18 */ cpu->r[6] = rbrew_rlwinm(cpu->r[25], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0291FC1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], cpu->r[27]);
|
|
/* 0291FC20 */ cpu->r[30] = cpu->r[26] + cpu->r[6];
|
|
/* 0291FC24 */ _t41 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291FC24 */ _t42 = _t41 & 0x00000001u;
|
|
/* 0291FC24 */ if (_t42) goto L_0291FC28; else goto L_0291FC4C;
|
|
L_0291FC28: ; // 0x291fc28
|
|
/* 0291FC28 */ cpu->ctr = cpu->r[31];
|
|
/* 0291FC2C */ cpu->r[4] = cpu->r[30];
|
|
/* 0291FC30 */ cpu->r[3] = cpu->r[30] + 0xFFFFFFFCu;
|
|
/* 0291FC34 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291FC38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291FC3C */ _t43 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291FC3C */ _t44 = _t43 & 0x00000001u;
|
|
/* 0291FC3C */ if (_t44) goto L_0291FC40; else goto L_0291FC4C;
|
|
L_0291FC40: ; // 0x291fc40
|
|
/* 0291FC40 */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 0291FC44 */ cpu->r[6] = rbrew_rlwinm(cpu->r[25], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0291FC48 */ cpu->r[30] = cpu->r[26] + cpu->r[6];
|
|
L_0291FC4C: ; // 0x291fc4c
|
|
/* 0291FC4C */ cpu->ctr = cpu->r[31];
|
|
/* 0291FC50 */ cpu->r[4] = cpu->r[30] + 0xFFFFFFFCu;
|
|
/* 0291FC54 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0291FC58 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291FC5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291FC60 */ _t45 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291FC60 */ _t46 = _t45 & 0x00000001u;
|
|
/* 0291FC60 */ if (_t46) goto L_0291FC64; else goto L_0291FC84;
|
|
L_0291FC64: ; // 0x291fc64
|
|
/* 0291FC64 */ cpu->r[7] = rbrew_rlwinm(cpu->r[24], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0291FC68 */ cpu->r[24] = cpu->r[25];
|
|
/* 0291FC6C */ _t47 = cpu->r[30] + 0xFFFFFFFCu;
|
|
/* 0291FC6C */ cpu->r[9] = rbrew_read32(cpu->mem, _t47);
|
|
/* 0291FC70 */ cpu->r[25] = rbrew_rlwinm(cpu->r[24], 0x00000001u, 0x00000000u, 0x0000001Eu);
|
|
/* 0291FC74 */ cpu->r[8] = cpu->r[26] + cpu->r[7];
|
|
/* 0291FC78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], cpu->r[27]);
|
|
/* 0291FC7C */ _t48 = cpu->r[8] + 0xFFFFFFFCu;
|
|
/* 0291FC7C */ rbrew_write32(cpu->mem, _t48, cpu->r[9]);
|
|
/* 0291FC80 */ _t49 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291FC80 */ _t50 = _t49 & 0x00000001u;
|
|
/* 0291FC80 */ if (_t50) goto L_0291FC84; else goto L_0291FC18;
|
|
L_0291FC84: ; // 0x291fc84
|
|
/* 0291FC84 */ _t51 = cpu->r[1] + 0x00000008u;
|
|
/* 0291FC84 */ cpu->r[10] = rbrew_read32(cpu->mem, _t51);
|
|
L_0291FC88: ; // 0x291fc88
|
|
/* 0291FC88 */ cpu->r[0] = rbrew_rlwinm(cpu->r[24], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0291FC8C */ cpu->r[28] = cpu->r[28] + 0xFFFFFFFFu;
|
|
/* 0291FC8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0291FC90 */ cpu->r[11] = cpu->r[26] + cpu->r[0];
|
|
/* 0291FC94 */ cpu->r[23] = cpu->r[23] + 0xFFFFFFFFu;
|
|
/* 0291FC98 */ _t52 = cpu->r[11] + 0xFFFFFFFCu;
|
|
/* 0291FC98 */ rbrew_write32(cpu->mem, _t52, cpu->r[10]);
|
|
/* 0291FC9C */ _t53 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291FC9C */ _t54 = _t53 & 0x00000001u;
|
|
/* 0291FC9C */ if (_t54) goto L_0291FCA0; else goto L_0291FC00;
|
|
L_0291FCA0: ; // 0x291fca0
|
|
/* 0291FCA0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[27], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0291FCA4 */ cpu->r[29] = cpu->r[26] + cpu->r[0];
|
|
L_0291FCA8: ; // 0x291fca8
|
|
/* 0291FCA8 */ _t55 = cpu->r[29] + 0xFFFFFFFCu;
|
|
/* 0291FCA8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t55);
|
|
/* 0291FCA8 */ cpu->r[29] = _t55;
|
|
/* 0291FCAC */ cpu->r[25] = 0x00000002u;
|
|
/* 0291FCB0 */ cpu->r[27] = cpu->r[27] + 0xFFFFFFFFu;
|
|
/* 0291FCB4 */ _t56 = cpu->r[1] + 0x00000008u;
|
|
/* 0291FCB4 */ rbrew_write32(cpu->mem, _t56, cpu->r[0]);
|
|
/* 0291FCB8 */ _t57 = cpu->r[26] + 0x00000000u;
|
|
/* 0291FCB8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t57);
|
|
/* 0291FCBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], cpu->r[27]);
|
|
/* 0291FCC0 */ cpu->r[24] = 0x00000001u;
|
|
/* 0291FCC4 */ _t58 = cpu->r[29] + 0x00000000u;
|
|
/* 0291FCC4 */ rbrew_write32(cpu->mem, _t58, cpu->r[0]);
|
|
/* 0291FCC8 */ _t59 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291FCC8 */ _t60 = _t59 & 0x00000001u;
|
|
/* 0291FCC8 */ if (_t60) goto L_0291FD38; else goto L_0291FCCC;
|
|
L_0291FCCC: ; // 0x291fccc
|
|
/* 0291FCCC */ cpu->r[6] = rbrew_rlwinm(cpu->r[25], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0291FCD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], cpu->r[27]);
|
|
/* 0291FCD4 */ cpu->r[30] = cpu->r[26] + cpu->r[6];
|
|
/* 0291FCD8 */ _t61 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291FCD8 */ _t62 = _t61 & 0x00000001u;
|
|
/* 0291FCD8 */ if (_t62) goto L_0291FCDC; else goto L_0291FD00;
|
|
L_0291FCDC: ; // 0x291fcdc
|
|
/* 0291FCDC */ cpu->ctr = cpu->r[31];
|
|
/* 0291FCE0 */ cpu->r[4] = cpu->r[30];
|
|
/* 0291FCE4 */ cpu->r[3] = cpu->r[30] + 0xFFFFFFFCu;
|
|
/* 0291FCE8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291FCEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291FCF0 */ _t63 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291FCF0 */ _t64 = _t63 & 0x00000001u;
|
|
/* 0291FCF0 */ if (_t64) goto L_0291FCF4; else goto L_0291FD00;
|
|
L_0291FCF4: ; // 0x291fcf4
|
|
/* 0291FCF4 */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 0291FCF8 */ cpu->r[6] = rbrew_rlwinm(cpu->r[25], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0291FCFC */ cpu->r[30] = cpu->r[26] + cpu->r[6];
|
|
L_0291FD00: ; // 0x291fd00
|
|
/* 0291FD00 */ cpu->ctr = cpu->r[31];
|
|
/* 0291FD04 */ cpu->r[4] = cpu->r[30] + 0xFFFFFFFCu;
|
|
/* 0291FD08 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0291FD0C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291FD10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291FD14 */ _t65 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291FD14 */ _t66 = _t65 & 0x00000001u;
|
|
/* 0291FD14 */ if (_t66) goto L_0291FD18; else goto L_0291FD38;
|
|
L_0291FD18: ; // 0x291fd18
|
|
/* 0291FD18 */ cpu->r[5] = rbrew_rlwinm(cpu->r[24], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0291FD1C */ cpu->r[24] = cpu->r[25];
|
|
/* 0291FD20 */ _t67 = cpu->r[30] + 0xFFFFFFFCu;
|
|
/* 0291FD20 */ cpu->r[9] = rbrew_read32(cpu->mem, _t67);
|
|
/* 0291FD24 */ cpu->r[25] = rbrew_rlwinm(cpu->r[24], 0x00000001u, 0x00000000u, 0x0000001Eu);
|
|
/* 0291FD28 */ cpu->r[7] = cpu->r[26] + cpu->r[5];
|
|
/* 0291FD2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], cpu->r[27]);
|
|
/* 0291FD30 */ _t68 = cpu->r[7] + 0xFFFFFFFCu;
|
|
/* 0291FD30 */ rbrew_write32(cpu->mem, _t68, cpu->r[9]);
|
|
/* 0291FD34 */ _t69 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291FD34 */ _t70 = _t69 & 0x00000001u;
|
|
/* 0291FD34 */ if (_t70) goto L_0291FD38; else goto L_0291FCCC;
|
|
L_0291FD38: ; // 0x291fd38
|
|
/* 0291FD38 */ cpu->r[11] = rbrew_rlwinm(cpu->r[24], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0291FD3C */ _t71 = cpu->r[1] + 0x00000008u;
|
|
/* 0291FD3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t71);
|
|
/* 0291FD40 */ cpu->r[12] = cpu->r[26] + cpu->r[11];
|
|
/* 0291FD44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000001u);
|
|
/* 0291FD48 */ _t72 = cpu->r[12] + 0xFFFFFFFCu;
|
|
/* 0291FD48 */ rbrew_write32(cpu->mem, _t72, cpu->r[0]);
|
|
/* 0291FD4C */ _t73 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291FD4C */ _t74 = _t73 & 0x00000001u;
|
|
/* 0291FD4C */ if (_t74) goto L_0291FCA8; else goto L_0291FD50;
|
|
L_0291FD50: ; // 0x291fd50
|
|
/* 0291FD50 */ /* nop */
|
|
/* 0291FD54 */ _t75 = cpu->r[1] + 0x00000034u;
|
|
/* 0291FD54 */ cpu->r[0] = rbrew_read32(cpu->mem, _t75);
|
|
/* 0291FD58 */ cpu->lr = cpu->r[0];
|
|
/* 0291FD5C */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 0291FD60 */ return;
|
|
}
|
|
|
|
// fn_0291F7B0 @ 0x291f7b0
|
|
void Gambit_fn_0291F7B0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72;
|
|
|
|
L_0291F7B0: ; // 0x291f7b0
|
|
/* 0291F7B0 */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 0291F7B0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291F7B0 */ cpu->r[1] = _t0;
|
|
/* 0291F7B4 */ /* nop */
|
|
/* 0291F7B8 */ cpu->r[0] = cpu->lr;
|
|
/* 0291F7BC */ _t1 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0291F7BC */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0291F7C0 */ _t2 = cpu->r[3] + 0x00000008u;
|
|
/* 0291F7C0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0291F7C4 */ cpu->r[27] = cpu->r[5];
|
|
/* 0291F7C8 */ _t3 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0291F7C8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0291F7CC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[9]);
|
|
/* 0291F7D0 */ _t4 = cpu->r[3] + 0x00000010u;
|
|
/* 0291F7D0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0291F7D4 */ _t5 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291F7D4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0291F7D4 */ if (_t6) goto L_0291F7D8; else goto L_0291F7F4;
|
|
L_0291F7D8: ; // 0x291f7d8
|
|
/* 0291F7D8 */ cpu->r[5] = rbrew_rlwinm(cpu->r[4], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0291F7DC */ _t7 = cpu->r[12] + cpu->r[5];
|
|
/* 0291F7DC */ cpu->r[7] = rbrew_read16(cpu->mem, _t7);
|
|
/* 0291F7E0 */ _t8 = cpu->r[3] + 0x00000014u;
|
|
/* 0291F7E0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0291F7E4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[10]);
|
|
/* 0291F7E8 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291F7E8 */ rbrew_write32(cpu->mem, _t9, cpu->r[8]);
|
|
/* 0291F7EC */ _t10 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291F7EC */ _t11 = _t10 & 0x00000001u;
|
|
/* 0291F7EC */ if (_t11) goto L_0291F7F0; else goto L_0291F808;
|
|
L_0291F7F0: ; // 0x291f7f0
|
|
/* 0291F7F0 */ goto L_0291F824;
|
|
L_0291F7F4: ; // 0x291f7f4
|
|
/* 0291F7F4 */ _t12 = cpu->r[12] + 0x00000000u;
|
|
/* 0291F7F4 */ cpu->r[7] = rbrew_read16(cpu->mem, _t12);
|
|
/* 0291F7F8 */ _t13 = cpu->r[3] + 0x00000014u;
|
|
/* 0291F7F8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0291F7FC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[10]);
|
|
/* 0291F800 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291F800 */ rbrew_write32(cpu->mem, _t14, cpu->r[8]);
|
|
/* 0291F804 */ _t15 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291F804 */ _t16 = _t15 & 0x00000001u;
|
|
/* 0291F804 */ if (_t16) goto L_0291F824; else goto L_0291F808;
|
|
L_0291F808: ; // 0x291f808
|
|
/* 0291F808 */ cpu->r[0] = rbrew_rlwinm(cpu->r[7], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0291F80C */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291F80C */ cpu->r[31] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0291F810 */ cpu->r[28] = cpu->r[8] + cpu->r[0];
|
|
/* 0291F814 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[9]);
|
|
/* 0291F818 */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 0291F818 */ rbrew_write32(cpu->mem, _t18, cpu->r[28]);
|
|
/* 0291F81C */ _t19 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291F81C */ _t20 = _t19 & 0x00000001u;
|
|
/* 0291F81C */ if (_t20) goto L_0291F820; else goto L_0291F850;
|
|
L_0291F820: ; // 0x291f820
|
|
/* 0291F820 */ goto L_0291F83C;
|
|
L_0291F824: ; // 0x291f824
|
|
/* 0291F824 */ cpu->r[5] = rbrew_rlwinm(cpu->r[10], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0291F828 */ _t21 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291F828 */ cpu->r[31] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0291F82C */ cpu->r[28] = cpu->r[8] + cpu->r[5];
|
|
/* 0291F830 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[9]);
|
|
/* 0291F834 */ _t22 = cpu->r[1] + 0x00000008u;
|
|
/* 0291F834 */ rbrew_write32(cpu->mem, _t22, cpu->r[28]);
|
|
/* 0291F838 */ _t23 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291F838 */ _t24 = _t23 & 0x00000001u;
|
|
/* 0291F838 */ if (_t24) goto L_0291F83C; else goto L_0291F850;
|
|
L_0291F83C: ; // 0x291f83c
|
|
/* 0291F83C */ cpu->r[6] = rbrew_rlwinm(cpu->r[4], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0291F840 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[9]);
|
|
/* 0291F844 */ _t25 = cpu->r[12] + cpu->r[6];
|
|
/* 0291F844 */ cpu->r[7] = rbrew_read16(cpu->mem, _t25);
|
|
/* 0291F848 */ _t26 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291F848 */ _t27 = _t26 & 0x00000001u;
|
|
/* 0291F848 */ if (_t27) goto L_0291F85C; else goto L_0291F84C;
|
|
L_0291F84C: ; // 0x291f84c
|
|
/* 0291F84C */ goto L_0291F864;
|
|
L_0291F850: ; // 0x291f850
|
|
/* 0291F850 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[9]);
|
|
/* 0291F854 */ _t28 = cpu->r[12] + 0x00000000u;
|
|
/* 0291F854 */ cpu->r[7] = rbrew_read16(cpu->mem, _t28);
|
|
/* 0291F858 */ _t29 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291F858 */ _t30 = _t29 & 0x00000001u;
|
|
/* 0291F858 */ if (_t30) goto L_0291F85C; else goto L_0291F864;
|
|
L_0291F85C: ; // 0x291f85c
|
|
/* 0291F85C */ cpu->r[9] = rbrew_rlwinm(cpu->r[4], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0291F860 */ cpu->r[12] = cpu->r[12] + cpu->r[9];
|
|
L_0291F864: ; // 0x291f864
|
|
/* 0291F864 */ _t31 = cpu->r[12] + 0x00000002u;
|
|
/* 0291F864 */ cpu->r[11] = rbrew_read16(cpu->mem, _t31);
|
|
/* 0291F868 */ cpu->r[0] = cpu->r[7] + cpu->r[11];
|
|
/* 0291F86C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[10]);
|
|
/* 0291F870 */ _t32 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291F870 */ _t33 = _t32 & 0x00000001u;
|
|
/* 0291F870 */ if (_t33) goto L_0291F88C; else goto L_0291F874;
|
|
L_0291F874: ; // 0x291f874
|
|
/* 0291F874 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0291F878 */ cpu->r[30] = cpu->r[8] + cpu->r[12];
|
|
/* 0291F87C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[30]);
|
|
/* 0291F880 */ _t34 = cpu->r[1] + 0x00000010u;
|
|
/* 0291F880 */ rbrew_write32(cpu->mem, _t34, cpu->r[30]);
|
|
/* 0291F884 */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291F884 */ _t36 = _t35 & 0x00000001u;
|
|
/* 0291F884 */ if (_t36) goto L_0291F980; else goto L_0291F888;
|
|
L_0291F888: ; // 0x291f888
|
|
/* 0291F888 */ goto L_0291F8A0;
|
|
L_0291F88C: ; // 0x291f88c
|
|
/* 0291F88C */ cpu->r[4] = rbrew_rlwinm(cpu->r[10], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0291F890 */ cpu->r[30] = cpu->r[8] + cpu->r[4];
|
|
/* 0291F894 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[30]);
|
|
/* 0291F898 */ _t37 = cpu->r[1] + 0x00000010u;
|
|
/* 0291F898 */ rbrew_write32(cpu->mem, _t37, cpu->r[30]);
|
|
/* 0291F89C */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291F89C */ _t39 = _t38 & 0x00000001u;
|
|
/* 0291F89C */ if (_t39) goto L_0291F980; else goto L_0291F8A0;
|
|
L_0291F8A0: ; // 0x291f8a0
|
|
/* 0291F8A0 */ cpu->r[29] = 0x10110000u;
|
|
/* 0291F8A4 */ cpu->r[26] = 0x00080000u;
|
|
/* 0291F8A8 */ _t40 = cpu->r[29] + 0x00007399u;
|
|
/* 0291F8A8 */ cpu->r[29] = rbrew_read8(cpu->mem, _t40);
|
|
/* 0291F8AC */ cpu->r[26] = cpu->r[26] + 0x00000001u;
|
|
L_0291F8B0: ; // 0x291f8b0
|
|
/* 0291F8B0 */ _t41 = cpu->r[28] + 0x00000000u;
|
|
/* 0291F8B0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0291F8B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291F8B8 */ _t42 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291F8B8 */ _t43 = _t42 & 0x00000001u;
|
|
/* 0291F8B8 */ if (_t43) goto L_0291F974; else goto L_0291F8BC;
|
|
L_0291F8BC: ; // 0x291f8bc
|
|
/* 0291F8BC */ _t44 = cpu->r[3] + 0x00000018u;
|
|
/* 0291F8BC */ cpu->r[5] = rbrew_read32(cpu->mem, _t44);
|
|
/* 0291F8C0 */ _t45 = cpu->r[5] + 0x00000084u;
|
|
/* 0291F8C0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t45);
|
|
/* 0291F8C4 */ cpu->ctr = cpu->r[7];
|
|
/* 0291F8C8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291F8CC */ _t46 = cpu->r[3] + 0x00000004u;
|
|
/* 0291F8CC */ cpu->r[6] = rbrew_read32(cpu->mem, _t46);
|
|
/* 0291F8D0 */ _t47 = cpu->r[6] + 0x00000014u;
|
|
/* 0291F8D0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t47);
|
|
/* 0291F8D4 */ cpu->ctr = cpu->r[8];
|
|
/* 0291F8D8 */ cpu->r[24] = cpu->r[3];
|
|
/* 0291F8DC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291F8E0 */ _t48 = cpu->r[24] + 0x00000004u;
|
|
/* 0291F8E0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t48);
|
|
/* 0291F8E4 */ _t49 = cpu->r[9] + 0x00000014u;
|
|
/* 0291F8E4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t49);
|
|
/* 0291F8E8 */ cpu->ctr = cpu->r[10];
|
|
/* 0291F8EC */ cpu->r[3] = cpu->r[24];
|
|
/* 0291F8F0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291F8F4 */ _t50 = cpu->r[27] + 0x00000004u;
|
|
/* 0291F8F4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t50);
|
|
/* 0291F8F8 */ _t51 = cpu->r[11] + 0x00000014u;
|
|
/* 0291F8F8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t51);
|
|
/* 0291F8FC */ cpu->ctr = cpu->r[12];
|
|
/* 0291F900 */ _t52 = cpu->r[24] + 0x00000000u;
|
|
/* 0291F900 */ cpu->r[25] = rbrew_read32(cpu->mem, _t52);
|
|
/* 0291F904 */ cpu->r[3] = cpu->r[27];
|
|
/* 0291F908 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291F90C */ _t53 = cpu->r[27] + 0x00000000u;
|
|
/* 0291F90C */ cpu->r[0] = rbrew_read32(cpu->mem, _t53);
|
|
/* 0291F910 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], cpu->r[0]);
|
|
/* 0291F914 */ _t54 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291F914 */ _t55 = _t54 & 0x00000001u;
|
|
/* 0291F914 */ if (_t55) goto L_0291F958; else goto L_0291F918;
|
|
L_0291F918: ; // 0x291f918
|
|
/* 0291F918 */ _t56 = cpu->r[27] + 0x00000000u;
|
|
/* 0291F918 */ cpu->r[7] = rbrew_read32(cpu->mem, _t56);
|
|
/* 0291F91C */ cpu->ctr = cpu->r[26];
|
|
/* 0291F920 */ _t57 = cpu->r[24] + 0x00000000u;
|
|
/* 0291F920 */ cpu->r[6] = rbrew_read32(cpu->mem, _t57);
|
|
/* 0291F924 */ cpu->r[7] = cpu->r[7] + 0xFFFFFFFFu;
|
|
L_0291F928: ; // 0x291f928
|
|
/* 0291F928 */ _t58 = cpu->r[6] + 0x00000000u;
|
|
/* 0291F928 */ cpu->r[0] = rbrew_read8(cpu->mem, _t58);
|
|
/* 0291F92C */ _t59 = cpu->r[7] + 0x00000001u;
|
|
/* 0291F92C */ cpu->r[4] = rbrew_read8(cpu->mem, _t59);
|
|
/* 0291F92C */ cpu->r[7] = _t59;
|
|
/* 0291F930 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[4]);
|
|
/* 0291F934 */ _t60 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291F934 */ _t61 = _t60 & 0x00000001u;
|
|
/* 0291F934 */ if (_t61) goto L_0291F938; else goto L_0291F974;
|
|
L_0291F938: ; // 0x291f938
|
|
/* 0291F938 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[29]);
|
|
/* 0291F93C */ _t62 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291F93C */ _t63 = _t62 & 0x00000001u;
|
|
/* 0291F93C */ if (_t63) goto L_0291F958; else goto L_0291F940;
|
|
L_0291F940: ; // 0x291f940
|
|
/* 0291F940 */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 0291F944 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0291F944 */ _t64 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0291F944 */ _t65 = _t64 >> (0x00000002u & 31u);
|
|
/* 0291F944 */ _t66 = _t65 & 0x00000001u;
|
|
/* 0291F944 */ if (_t66) goto L_0291F928; else goto L_0291F948;
|
|
L_0291F948: ; // 0x291f948
|
|
/* 0291F948 */ cpu->r[28] = cpu->r[28] + 0x00000004u;
|
|
/* 0291F94C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[30]);
|
|
/* 0291F950 */ _t67 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291F950 */ _t68 = _t67 & 0x00000001u;
|
|
/* 0291F950 */ if (_t68) goto L_0291F954; else goto L_0291F8B0;
|
|
L_0291F954: ; // 0x291f954
|
|
/* 0291F954 */ goto L_0291F980;
|
|
L_0291F958: ; // 0x291f958
|
|
/* 0291F958 */ cpu->r[0] = cpu->r[28] - cpu->r[31];
|
|
/* 0291F95C */ /* nop */
|
|
/* 0291F960 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Eu, 0x00000002u, 0x0000001Fu);
|
|
/* 0291F964 */ _t69 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0291F964 */ cpu->r[0] = rbrew_read32(cpu->mem, _t69);
|
|
/* 0291F968 */ cpu->lr = cpu->r[0];
|
|
/* 0291F96C */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 0291F970 */ return;
|
|
L_0291F974: ; // 0x291f974
|
|
/* 0291F974 */ cpu->r[28] = cpu->r[28] + 0x00000004u;
|
|
/* 0291F978 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[30]);
|
|
/* 0291F97C */ _t70 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291F97C */ _t71 = _t70 & 0x00000001u;
|
|
/* 0291F97C */ if (_t71) goto L_0291F980; else goto L_0291F8B0;
|
|
L_0291F980: ; // 0x291f980
|
|
/* 0291F980 */ /* nop */
|
|
/* 0291F984 */ _t72 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0291F984 */ cpu->r[0] = rbrew_read32(cpu->mem, _t72);
|
|
/* 0291F988 */ cpu->lr = cpu->r[0];
|
|
/* 0291F98C */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 0291F990 */ cpu->r[3] = 0xFFFFFFFFu;
|
|
/* 0291F994 */ return;
|
|
}
|
|
|
|
// fn_0291F998 @ 0x291f998
|
|
void Gambit_fn_0291F998(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_0291F998: ; // 0x291f998
|
|
/* 0291F998 */ cpu->r[0] = cpu->lr;
|
|
/* 0291F99C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0291F99C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291F99C */ cpu->r[1] = _t0;
|
|
/* 0291F9A0 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0291F9A0 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0291F9A4 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291F9A4 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0291F9A8 */ cpu->r[31] = cpu->r[4];
|
|
/* 0291F9AC */ cpu->r[30] = cpu->r[3];
|
|
/* 0291F9B0 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0291F9B0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0291F9B4 */ Gambit_fn_0291F7B0(cpu);
|
|
/* 0291F9B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291F9BC */ _t4 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291F9BC */ _t5 = _t4 & 0x00000001u;
|
|
/* 0291F9BC */ if (_t5) goto L_0291F9F8; else goto L_0291F9C0;
|
|
L_0291F9C0: ; // 0x291f9c0
|
|
/* 0291F9C0 */ _t6 = cpu->r[30] + 0x00000008u;
|
|
/* 0291F9C0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0291F9C4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[10]);
|
|
/* 0291F9C8 */ _t7 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0291F9C8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0291F9CC */ _t8 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291F9CC */ _t9 = _t8 & 0x00000001u;
|
|
/* 0291F9CC */ if (_t9) goto L_0291F9D0; else goto L_0291F9D8;
|
|
L_0291F9D0: ; // 0x291f9d0
|
|
/* 0291F9D0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0291F9D4 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_0291F9D8: ; // 0x291f9d8
|
|
/* 0291F9D8 */ _t10 = cpu->r[12] + 0x00000000u;
|
|
/* 0291F9D8 */ cpu->r[0] = rbrew_read16(cpu->mem, _t10);
|
|
/* 0291F9DC */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 0291F9DC */ cpu->r[30] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0291F9E0 */ cpu->r[3] = cpu->r[3] - cpu->r[0];
|
|
/* 0291F9E4 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0291F9E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0291F9E8 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291F9E8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0291F9EC */ cpu->lr = cpu->r[0];
|
|
/* 0291F9F0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0291F9F4 */ return;
|
|
L_0291F9F8: ; // 0x291f9f8
|
|
/* 0291F9F8 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 0291F9F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0291F9FC */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 0291F9FC */ cpu->r[30] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0291FA00 */ cpu->lr = cpu->r[0];
|
|
/* 0291FA04 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291FA04 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0291FA08 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0291FA0C */ cpu->r[3] = 0xFFFFFFFFu;
|
|
/* 0291FA10 */ return;
|
|
}
|
|
|
|
// fn_0291F99C @ 0x291f99c
|
|
void Gambit_fn_0291F99C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_0291F99C: ; // 0x291f99c
|
|
/* 0291F99C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0291F99C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291F99C */ cpu->r[1] = _t0;
|
|
/* 0291F9A0 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0291F9A0 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0291F9A4 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291F9A4 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0291F9A8 */ cpu->r[31] = cpu->r[4];
|
|
/* 0291F9AC */ cpu->r[30] = cpu->r[3];
|
|
/* 0291F9B0 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0291F9B0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0291F9B4 */ Gambit_fn_0291F7B0(cpu);
|
|
/* 0291F9B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291F9BC */ _t4 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291F9BC */ _t5 = _t4 & 0x00000001u;
|
|
/* 0291F9BC */ if (_t5) goto L_0291F9F8; else goto L_0291F9C0;
|
|
L_0291F9C0: ; // 0x291f9c0
|
|
/* 0291F9C0 */ _t6 = cpu->r[30] + 0x00000008u;
|
|
/* 0291F9C0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0291F9C4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[10]);
|
|
/* 0291F9C8 */ _t7 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0291F9C8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0291F9CC */ _t8 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291F9CC */ _t9 = _t8 & 0x00000001u;
|
|
/* 0291F9CC */ if (_t9) goto L_0291F9D0; else goto L_0291F9D8;
|
|
L_0291F9D0: ; // 0x291f9d0
|
|
/* 0291F9D0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0291F9D4 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_0291F9D8: ; // 0x291f9d8
|
|
/* 0291F9D8 */ _t10 = cpu->r[12] + 0x00000000u;
|
|
/* 0291F9D8 */ cpu->r[0] = rbrew_read16(cpu->mem, _t10);
|
|
/* 0291F9DC */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 0291F9DC */ cpu->r[30] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0291F9E0 */ cpu->r[3] = cpu->r[3] - cpu->r[0];
|
|
/* 0291F9E4 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0291F9E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0291F9E8 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291F9E8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0291F9EC */ cpu->lr = cpu->r[0];
|
|
/* 0291F9F0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0291F9F4 */ return;
|
|
L_0291F9F8: ; // 0x291f9f8
|
|
/* 0291F9F8 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 0291F9F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0291F9FC */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 0291F9FC */ cpu->r[30] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0291FA00 */ cpu->lr = cpu->r[0];
|
|
/* 0291FA04 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291FA04 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0291FA08 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0291FA0C */ cpu->r[3] = 0xFFFFFFFFu;
|
|
/* 0291FA10 */ return;
|
|
}
|
|
|
|
// fn_0291FA14 @ 0x291fa14
|
|
void Gambit_fn_0291FA14(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _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_0291FA14: ; // 0x291fa14
|
|
/* 0291FA14 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0291FA18 */ _t0 = cpu->r[12] + 0xFFFFA470u;
|
|
/* 0291FA18 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0291FA1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0291FA20 */ cpu->r[9] = 0x00000000u;
|
|
/* 0291FA24 */ _t1 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291FA24 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0291FA24 */ if (_t2) goto L_0291FA28; else goto L_0291FABC;
|
|
L_0291FA28: ; // 0x291fa28
|
|
/* 0291FA28 */ _t3 = cpu->r[3] + 0x00000008u;
|
|
/* 0291FA28 */ cpu->r[8] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0291FA2C */ cpu->ctr = cpu->r[12];
|
|
/* 0291FA30 */ _t4 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0291FA30 */ cpu->r[10] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0291FA34 */ cpu->r[7] = 0x00000000u;
|
|
L_0291FA38: ; // 0x291fa38
|
|
/* 0291FA38 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[8]);
|
|
/* 0291FA3C */ _t5 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291FA3C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0291FA3C */ if (_t6) goto L_0291FA40; else goto L_0291FA50;
|
|
L_0291FA40: ; // 0x291fa40
|
|
/* 0291FA40 */ _t7 = cpu->r[10] + cpu->r[7];
|
|
/* 0291FA40 */ cpu->r[0] = rbrew_read16(cpu->mem, _t7);
|
|
/* 0291FA44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], cpu->r[4]);
|
|
/* 0291FA48 */ _t8 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291FA48 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0291FA48 */ if (_t9) goto L_0291FAB0; else goto L_0291FA4C;
|
|
L_0291FA4C: ; // 0x291fa4c
|
|
/* 0291FA4C */ goto L_0291FA5C;
|
|
L_0291FA50: ; // 0x291fa50
|
|
/* 0291FA50 */ _t10 = cpu->r[10] + 0x00000000u;
|
|
/* 0291FA50 */ cpu->r[0] = rbrew_read16(cpu->mem, _t10);
|
|
/* 0291FA54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], cpu->r[4]);
|
|
/* 0291FA58 */ _t11 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291FA58 */ _t12 = _t11 & 0x00000001u;
|
|
/* 0291FA58 */ if (_t12) goto L_0291FAB0; else goto L_0291FA5C;
|
|
L_0291FA5C: ; // 0x291fa5c
|
|
/* 0291FA5C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[8]);
|
|
/* 0291FA60 */ _t13 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291FA60 */ _t14 = _t13 & 0x00000001u;
|
|
/* 0291FA60 */ if (_t14) goto L_0291FA64; else goto L_0291FA74;
|
|
L_0291FA64: ; // 0x291fa64
|
|
/* 0291FA64 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[8]);
|
|
/* 0291FA68 */ cpu->r[11] = cpu->r[10] + cpu->r[7];
|
|
/* 0291FA6C */ _t15 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291FA6C */ _t16 = _t15 & 0x00000001u;
|
|
/* 0291FA6C */ if (_t16) goto L_0291FA80; else goto L_0291FA70;
|
|
L_0291FA70: ; // 0x291fa70
|
|
/* 0291FA70 */ goto L_0291FA9C;
|
|
L_0291FA74: ; // 0x291fa74
|
|
/* 0291FA74 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[8]);
|
|
/* 0291FA78 */ cpu->r[11] = cpu->r[10];
|
|
/* 0291FA7C */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291FA7C */ _t18 = _t17 & 0x00000001u;
|
|
/* 0291FA7C */ if (_t18) goto L_0291FA80; else goto L_0291FA9C;
|
|
L_0291FA80: ; // 0x291fa80
|
|
/* 0291FA80 */ cpu->r[12] = cpu->r[10] + cpu->r[7];
|
|
/* 0291FA84 */ _t19 = cpu->r[12] + 0x00000002u;
|
|
/* 0291FA84 */ cpu->r[0] = rbrew_read16(cpu->mem, _t19);
|
|
/* 0291FA88 */ _t20 = cpu->r[11] + 0x00000000u;
|
|
/* 0291FA88 */ cpu->r[12] = rbrew_read16(cpu->mem, _t20);
|
|
/* 0291FA8C */ cpu->r[0] = cpu->r[12] + cpu->r[0];
|
|
/* 0291FA90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], cpu->r[0]);
|
|
/* 0291FA94 */ _t21 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291FA94 */ _t22 = _t21 & 0x00000001u;
|
|
/* 0291FA94 */ if (_t22) goto L_0291FAC0; else goto L_0291FA98;
|
|
L_0291FA98: ; // 0x291fa98
|
|
/* 0291FA98 */ goto L_0291FAB0;
|
|
L_0291FA9C: ; // 0x291fa9c
|
|
/* 0291FA9C */ _t23 = cpu->r[11] + 0x00000000u;
|
|
/* 0291FA9C */ cpu->r[12] = rbrew_read16(cpu->mem, _t23);
|
|
/* 0291FAA0 */ _t24 = cpu->r[10] + 0x00000002u;
|
|
/* 0291FAA0 */ cpu->r[0] = rbrew_read16(cpu->mem, _t24);
|
|
/* 0291FAA4 */ cpu->r[0] = cpu->r[12] + cpu->r[0];
|
|
/* 0291FAA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], cpu->r[0]);
|
|
/* 0291FAAC */ _t25 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291FAAC */ _t26 = _t25 & 0x00000001u;
|
|
/* 0291FAAC */ if (_t26) goto L_0291FAC0; else goto L_0291FAB0;
|
|
L_0291FAB0: ; // 0x291fab0
|
|
/* 0291FAB0 */ cpu->r[7] = cpu->r[7] + 0x00000004u;
|
|
/* 0291FAB4 */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 0291FAB8 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0291FAB8 */ _t27 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0291FAB8 */ _t28 = _t27 >> (0x00000002u & 31u);
|
|
/* 0291FAB8 */ _t29 = _t28 & 0x00000001u;
|
|
/* 0291FAB8 */ if (_t29) goto L_0291FA38; else goto L_0291FABC;
|
|
L_0291FABC: ; // 0x291fabc
|
|
/* 0291FABC */ cpu->r[9] = 0xFFFFFFFFu;
|
|
L_0291FAC0: ; // 0x291fac0
|
|
/* 0291FAC0 */ cpu->r[3] = cpu->r[9];
|
|
/* 0291FAC4 */ return;
|
|
}
|
|
|
|
// fn_0291FAC8 @ 0x291fac8
|
|
void Gambit_fn_0291FAC8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0291FAC8: ; // 0x291fac8
|
|
/* 0291FAC8 */ cpu->r[0] = cpu->lr;
|
|
/* 0291FACC */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 0291FACC */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 0291FAD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291FAD4 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 0291FAD4 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 0291FAD4 */ cpu->r[1] = _t1;
|
|
/* 0291FAD8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291FAD8 */ _t3 = _t2 & 0x00000001u;
|
|
/* 0291FAD8 */ if (_t3) goto L_0291FADC; else goto L_0291FAEC;
|
|
L_0291FADC: ; // 0x291fadc
|
|
/* 0291FADC */ cpu->r[3] = 0x00000208u;
|
|
/* 0291FAE0 */ Gambit_fn_02801A78(cpu);
|
|
/* 0291FAE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291FAE8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291FAE8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0291FAE8 */ if (_t5) goto L_0291FB24; else goto L_0291FAEC;
|
|
L_0291FAEC: ; // 0x291faec
|
|
/* 0291FAEC */ cpu->r[10] = 0x10140000u;
|
|
/* 0291FAF0 */ cpu->r[10] = cpu->r[10] + 0x000029B8u;
|
|
/* 0291FAF4 */ cpu->r[0] = cpu->r[3] + 0x00000200u;
|
|
/* 0291FAF8 */ _t6 = cpu->r[3] + 0x00000204u;
|
|
/* 0291FAF8 */ rbrew_write32(cpu->mem, _t6, cpu->r[10]);
|
|
/* 0291FAFC */ cpu->r[10] = 0x00000000u;
|
|
/* 0291FB00 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], cpu->r[0]);
|
|
/* 0291FB04 */ _t7 = cpu->r[3] + 0x00000200u;
|
|
/* 0291FB04 */ rbrew_write32(cpu->mem, _t7, cpu->r[10]);
|
|
/* 0291FB08 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291FB08 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0291FB08 */ if (_t9) goto L_0291FB24; else goto L_0291FB0C;
|
|
L_0291FB0C: ; // 0x291fb0c
|
|
/* 0291FB0C */ cpu->r[11] = 0x00000000u;
|
|
/* 0291FB10 */ cpu->r[12] = cpu->r[3];
|
|
L_0291FB14: ; // 0x291fb14
|
|
/* 0291FB14 */ _t10 = cpu->r[12] + 0x00000000u;
|
|
/* 0291FB14 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 0291FB18 */ cpu->r[12] = cpu->r[12] + 0x00000004u;
|
|
/* 0291FB1C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[0]);
|
|
/* 0291FB20 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291FB20 */ _t12 = _t11 & 0x00000001u;
|
|
/* 0291FB20 */ if (_t12) goto L_0291FB24; else goto L_0291FB14;
|
|
L_0291FB24: ; // 0x291fb24
|
|
/* 0291FB24 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291FB24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0291FB28 */ cpu->lr = cpu->r[0];
|
|
/* 0291FB2C */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 0291FB30 */ return;
|
|
}
|
|
|
|
// fn_0291FAD4 @ 0x291fad4
|
|
void Gambit_fn_0291FAD4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_0291FAD4: ; // 0x291fad4
|
|
/* 0291FAD4 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 0291FAD4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291FAD4 */ cpu->r[1] = _t0;
|
|
/* 0291FAD8 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291FAD8 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0291FAD8 */ if (_t2) goto L_0291FADC; else goto L_0291FAEC;
|
|
L_0291FADC: ; // 0x291fadc
|
|
/* 0291FADC */ cpu->r[3] = 0x00000208u;
|
|
/* 0291FAE0 */ Gambit_fn_02801A78(cpu);
|
|
/* 0291FAE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291FAE8 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291FAE8 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0291FAE8 */ if (_t4) goto L_0291FB24; else goto L_0291FAEC;
|
|
L_0291FAEC: ; // 0x291faec
|
|
/* 0291FAEC */ cpu->r[10] = 0x10140000u;
|
|
/* 0291FAF0 */ cpu->r[10] = cpu->r[10] + 0x000029B8u;
|
|
/* 0291FAF4 */ cpu->r[0] = cpu->r[3] + 0x00000200u;
|
|
/* 0291FAF8 */ _t5 = cpu->r[3] + 0x00000204u;
|
|
/* 0291FAF8 */ rbrew_write32(cpu->mem, _t5, cpu->r[10]);
|
|
/* 0291FAFC */ cpu->r[10] = 0x00000000u;
|
|
/* 0291FB00 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], cpu->r[0]);
|
|
/* 0291FB04 */ _t6 = cpu->r[3] + 0x00000200u;
|
|
/* 0291FB04 */ rbrew_write32(cpu->mem, _t6, cpu->r[10]);
|
|
/* 0291FB08 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291FB08 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0291FB08 */ if (_t8) goto L_0291FB24; else goto L_0291FB0C;
|
|
L_0291FB0C: ; // 0x291fb0c
|
|
/* 0291FB0C */ cpu->r[11] = 0x00000000u;
|
|
/* 0291FB10 */ cpu->r[12] = cpu->r[3];
|
|
L_0291FB14: ; // 0x291fb14
|
|
/* 0291FB14 */ _t9 = cpu->r[12] + 0x00000000u;
|
|
/* 0291FB14 */ rbrew_write32(cpu->mem, _t9, cpu->r[11]);
|
|
/* 0291FB18 */ cpu->r[12] = cpu->r[12] + 0x00000004u;
|
|
/* 0291FB1C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[0]);
|
|
/* 0291FB20 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291FB20 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0291FB20 */ if (_t11) goto L_0291FB24; else goto L_0291FB14;
|
|
L_0291FB24: ; // 0x291fb24
|
|
/* 0291FB24 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0291FB24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0291FB28 */ cpu->lr = cpu->r[0];
|
|
/* 0291FB2C */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 0291FB30 */ return;
|
|
}
|
|
|
|
// fn_0291FB34 @ 0x291fb34
|
|
void Gambit_fn_0291FB34(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_0291FB34: ; // 0x291fb34
|
|
/* 0291FB34 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], 0x00000080u);
|
|
/* 0291FB38 */ _t0 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291FB38 */ _t1 = _t0 & 0x00000001u;
|
|
/* 0291FB38 */ if (_t1) goto L_0291FB3C; else goto L_0291FB6C;
|
|
L_0291FB3C: ; // 0x291fb3c
|
|
/* 0291FB3C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0291FB40 */ _t2 = cpu->r[3] + 0x00000200u;
|
|
/* 0291FB40 */ cpu->r[9] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0291FB44 */ _t3 = cpu->r[3] + cpu->r[0];
|
|
/* 0291FB44 */ cpu->r[10] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0291FB48 */ cpu->r[9] = cpu->r[9] - cpu->r[10];
|
|
/* 0291FB4C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], 0x00000080u);
|
|
/* 0291FB50 */ _t4 = cpu->r[3] + 0x00000200u;
|
|
/* 0291FB50 */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
/* 0291FB54 */ _t5 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291FB54 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0291FB54 */ if (_t6) goto L_0291FB84; else goto L_0291FB58;
|
|
L_0291FB58: ; // 0x291fb58
|
|
/* 0291FB58 */ _t7 = cpu->r[3] + 0x00000200u;
|
|
/* 0291FB58 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0291FB5C */ _t8 = cpu->r[3] + 0x00000000u;
|
|
/* 0291FB5C */ rbrew_write32(cpu->mem, _t8, cpu->r[5]);
|
|
/* 0291FB60 */ cpu->r[12] = cpu->r[12] + cpu->r[5];
|
|
/* 0291FB64 */ _t9 = cpu->r[3] + 0x00000200u;
|
|
/* 0291FB64 */ rbrew_write32(cpu->mem, _t9, cpu->r[12]);
|
|
/* 0291FB68 */ return;
|
|
L_0291FB6C: ; // 0x291fb6c
|
|
/* 0291FB6C */ _t10 = cpu->r[3] + 0x00000200u;
|
|
/* 0291FB6C */ cpu->r[9] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0291FB70 */ _t11 = cpu->r[3] + 0x00000000u;
|
|
/* 0291FB70 */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0291FB74 */ cpu->r[9] = cpu->r[9] - cpu->r[10];
|
|
/* 0291FB78 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], 0x00000080u);
|
|
/* 0291FB7C */ _t12 = cpu->r[3] + 0x00000200u;
|
|
/* 0291FB7C */ rbrew_write32(cpu->mem, _t12, cpu->r[9]);
|
|
/* 0291FB80 */ _t13 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291FB80 */ _t14 = _t13 & 0x00000001u;
|
|
/* 0291FB80 */ if (_t14) goto L_0291FB84; else goto L_0291FB58;
|
|
L_0291FB84: ; // 0x291fb84
|
|
/* 0291FB84 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0291FB88 */ _t15 = cpu->r[3] + cpu->r[0];
|
|
/* 0291FB88 */ rbrew_write32(cpu->mem, _t15, cpu->r[5]);
|
|
/* 0291FB8C */ _t16 = cpu->r[3] + 0x00000200u;
|
|
/* 0291FB8C */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0291FB90 */ cpu->r[12] = cpu->r[12] + cpu->r[5];
|
|
/* 0291FB94 */ _t17 = cpu->r[3] + 0x00000200u;
|
|
/* 0291FB94 */ rbrew_write32(cpu->mem, _t17, cpu->r[12]);
|
|
/* 0291FB98 */ return;
|
|
}
|
|
|
|
// fn_0291FB9C @ 0x291fb9c
|
|
void Gambit_fn_0291FB9C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _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_0291FB9C: ; // 0x291fb9c
|
|
/* 0291FB9C */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 0291FB9C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291FB9C */ cpu->r[1] = _t0;
|
|
/* 0291FBA0 */ /* nop */
|
|
/* 0291FBA4 */ cpu->r[0] = cpu->lr;
|
|
/* 0291FBA8 */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 0291FBA8 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0291FBAC */ _t2 = cpu->r[3] + 0x00000000u;
|
|
/* 0291FBAC */ cpu->r[8] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0291FBB0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[8]);
|
|
/* 0291FBB4 */ cpu->r[31] = cpu->r[4];
|
|
/* 0291FBB8 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291FBB8 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0291FBB8 */ if (_t4) goto L_0291FBBC; else goto L_0291FD50;
|
|
L_0291FBBC: ; // 0x291fbbc
|
|
/* 0291FBBC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[8]);
|
|
/* 0291FBC0 */ _t5 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291FBC0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0291FBC0 */ if (_t6) goto L_0291FBC4; else goto L_0291FD50;
|
|
L_0291FBC4: ; // 0x291fbc4
|
|
/* 0291FBC4 */ cpu->r[10] = cpu->r[6] - cpu->r[5];
|
|
/* 0291FBC8 */ cpu->r[27] = cpu->r[10] + 0x00000001u;
|
|
/* 0291FBCC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000001u);
|
|
/* 0291FBD0 */ _t7 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291FBD0 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0291FBD0 */ if (_t8) goto L_0291FBD4; else goto L_0291FD50;
|
|
L_0291FBD4: ; // 0x291fbd4
|
|
/* 0291FBD4 */ _t9 = cpu->r[3] + 0x00000004u;
|
|
/* 0291FBD4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0291FBD8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[5], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0291FBDC */ cpu->r[26] = cpu->r[12] + cpu->r[0];
|
|
/* 0291FBE0 */ /* nop */
|
|
/* 0291FBE4 */ cpu->r[23] = cpu->r[0];
|
|
/* 0291FBE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u);
|
|
/* 0291FBE8 */ cpu->r[28] = cpu->r[23];
|
|
/* 0291FBEC */ _t10 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291FBEC */ _t11 = _t10 & 0x00000001u;
|
|
/* 0291FBEC */ if (_t11) goto L_0291FBF0; else goto L_0291FCA0;
|
|
L_0291FBF0: ; // 0x291fbf0
|
|
/* 0291FBF0 */ cpu->r[5] = cpu->r[26] + 0xFFFFFFFCu;
|
|
/* 0291FBF4 */ cpu->r[6] = rbrew_rlwinm(cpu->r[23], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0291FBF8 */ cpu->r[29] = cpu->r[5] + cpu->r[6];
|
|
/* 0291FBFC */ cpu->r[29] = cpu->r[29] + 0x00000004u;
|
|
L_0291FC00: ; // 0x291fc00
|
|
/* 0291FC00 */ cpu->r[24] = cpu->r[23];
|
|
/* 0291FC04 */ _t12 = cpu->r[29] + 0xFFFFFFFCu;
|
|
/* 0291FC04 */ cpu->r[10] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0291FC04 */ cpu->r[29] = _t12;
|
|
/* 0291FC08 */ cpu->r[25] = rbrew_rlwinm(cpu->r[24], 0x00000001u, 0x00000000u, 0x0000001Eu);
|
|
/* 0291FC0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], cpu->r[27]);
|
|
/* 0291FC10 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 0291FC10 */ rbrew_write32(cpu->mem, _t13, cpu->r[10]);
|
|
/* 0291FC14 */ _t14 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291FC14 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0291FC14 */ if (_t15) goto L_0291FC88; else goto L_0291FC18;
|
|
L_0291FC18: ; // 0x291fc18
|
|
/* 0291FC18 */ cpu->r[6] = rbrew_rlwinm(cpu->r[25], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0291FC1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], cpu->r[27]);
|
|
/* 0291FC20 */ cpu->r[30] = cpu->r[26] + cpu->r[6];
|
|
/* 0291FC24 */ _t16 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291FC24 */ _t17 = _t16 & 0x00000001u;
|
|
/* 0291FC24 */ if (_t17) goto L_0291FC28; else goto L_0291FC4C;
|
|
L_0291FC28: ; // 0x291fc28
|
|
/* 0291FC28 */ cpu->ctr = cpu->r[31];
|
|
/* 0291FC2C */ cpu->r[4] = cpu->r[30];
|
|
/* 0291FC30 */ cpu->r[3] = cpu->r[30] + 0xFFFFFFFCu;
|
|
/* 0291FC34 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291FC38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291FC3C */ _t18 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291FC3C */ _t19 = _t18 & 0x00000001u;
|
|
/* 0291FC3C */ if (_t19) goto L_0291FC40; else goto L_0291FC4C;
|
|
L_0291FC40: ; // 0x291fc40
|
|
/* 0291FC40 */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 0291FC44 */ cpu->r[6] = rbrew_rlwinm(cpu->r[25], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0291FC48 */ cpu->r[30] = cpu->r[26] + cpu->r[6];
|
|
L_0291FC4C: ; // 0x291fc4c
|
|
/* 0291FC4C */ cpu->ctr = cpu->r[31];
|
|
/* 0291FC50 */ cpu->r[4] = cpu->r[30] + 0xFFFFFFFCu;
|
|
/* 0291FC54 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0291FC58 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291FC5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291FC60 */ _t20 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291FC60 */ _t21 = _t20 & 0x00000001u;
|
|
/* 0291FC60 */ if (_t21) goto L_0291FC64; else goto L_0291FC84;
|
|
L_0291FC64: ; // 0x291fc64
|
|
/* 0291FC64 */ cpu->r[7] = rbrew_rlwinm(cpu->r[24], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0291FC68 */ cpu->r[24] = cpu->r[25];
|
|
/* 0291FC6C */ _t22 = cpu->r[30] + 0xFFFFFFFCu;
|
|
/* 0291FC6C */ cpu->r[9] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0291FC70 */ cpu->r[25] = rbrew_rlwinm(cpu->r[24], 0x00000001u, 0x00000000u, 0x0000001Eu);
|
|
/* 0291FC74 */ cpu->r[8] = cpu->r[26] + cpu->r[7];
|
|
/* 0291FC78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], cpu->r[27]);
|
|
/* 0291FC7C */ _t23 = cpu->r[8] + 0xFFFFFFFCu;
|
|
/* 0291FC7C */ rbrew_write32(cpu->mem, _t23, cpu->r[9]);
|
|
/* 0291FC80 */ _t24 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291FC80 */ _t25 = _t24 & 0x00000001u;
|
|
/* 0291FC80 */ if (_t25) goto L_0291FC84; else goto L_0291FC18;
|
|
L_0291FC84: ; // 0x291fc84
|
|
/* 0291FC84 */ _t26 = cpu->r[1] + 0x00000008u;
|
|
/* 0291FC84 */ cpu->r[10] = rbrew_read32(cpu->mem, _t26);
|
|
L_0291FC88: ; // 0x291fc88
|
|
/* 0291FC88 */ cpu->r[0] = rbrew_rlwinm(cpu->r[24], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0291FC8C */ cpu->r[28] = cpu->r[28] + 0xFFFFFFFFu;
|
|
/* 0291FC8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0291FC90 */ cpu->r[11] = cpu->r[26] + cpu->r[0];
|
|
/* 0291FC94 */ cpu->r[23] = cpu->r[23] + 0xFFFFFFFFu;
|
|
/* 0291FC98 */ _t27 = cpu->r[11] + 0xFFFFFFFCu;
|
|
/* 0291FC98 */ rbrew_write32(cpu->mem, _t27, cpu->r[10]);
|
|
/* 0291FC9C */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291FC9C */ _t29 = _t28 & 0x00000001u;
|
|
/* 0291FC9C */ if (_t29) goto L_0291FCA0; else goto L_0291FC00;
|
|
L_0291FCA0: ; // 0x291fca0
|
|
/* 0291FCA0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[27], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0291FCA4 */ cpu->r[29] = cpu->r[26] + cpu->r[0];
|
|
L_0291FCA8: ; // 0x291fca8
|
|
/* 0291FCA8 */ _t30 = cpu->r[29] + 0xFFFFFFFCu;
|
|
/* 0291FCA8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0291FCA8 */ cpu->r[29] = _t30;
|
|
/* 0291FCAC */ cpu->r[25] = 0x00000002u;
|
|
/* 0291FCB0 */ cpu->r[27] = cpu->r[27] + 0xFFFFFFFFu;
|
|
/* 0291FCB4 */ _t31 = cpu->r[1] + 0x00000008u;
|
|
/* 0291FCB4 */ rbrew_write32(cpu->mem, _t31, cpu->r[0]);
|
|
/* 0291FCB8 */ _t32 = cpu->r[26] + 0x00000000u;
|
|
/* 0291FCB8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0291FCBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], cpu->r[27]);
|
|
/* 0291FCC0 */ cpu->r[24] = 0x00000001u;
|
|
/* 0291FCC4 */ _t33 = cpu->r[29] + 0x00000000u;
|
|
/* 0291FCC4 */ rbrew_write32(cpu->mem, _t33, cpu->r[0]);
|
|
/* 0291FCC8 */ _t34 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291FCC8 */ _t35 = _t34 & 0x00000001u;
|
|
/* 0291FCC8 */ if (_t35) goto L_0291FD38; else goto L_0291FCCC;
|
|
L_0291FCCC: ; // 0x291fccc
|
|
/* 0291FCCC */ cpu->r[6] = rbrew_rlwinm(cpu->r[25], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0291FCD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], cpu->r[27]);
|
|
/* 0291FCD4 */ cpu->r[30] = cpu->r[26] + cpu->r[6];
|
|
/* 0291FCD8 */ _t36 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291FCD8 */ _t37 = _t36 & 0x00000001u;
|
|
/* 0291FCD8 */ if (_t37) goto L_0291FCDC; else goto L_0291FD00;
|
|
L_0291FCDC: ; // 0x291fcdc
|
|
/* 0291FCDC */ cpu->ctr = cpu->r[31];
|
|
/* 0291FCE0 */ cpu->r[4] = cpu->r[30];
|
|
/* 0291FCE4 */ cpu->r[3] = cpu->r[30] + 0xFFFFFFFCu;
|
|
/* 0291FCE8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291FCEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291FCF0 */ _t38 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291FCF0 */ _t39 = _t38 & 0x00000001u;
|
|
/* 0291FCF0 */ if (_t39) goto L_0291FCF4; else goto L_0291FD00;
|
|
L_0291FCF4: ; // 0x291fcf4
|
|
/* 0291FCF4 */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 0291FCF8 */ cpu->r[6] = rbrew_rlwinm(cpu->r[25], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0291FCFC */ cpu->r[30] = cpu->r[26] + cpu->r[6];
|
|
L_0291FD00: ; // 0x291fd00
|
|
/* 0291FD00 */ cpu->ctr = cpu->r[31];
|
|
/* 0291FD04 */ cpu->r[4] = cpu->r[30] + 0xFFFFFFFCu;
|
|
/* 0291FD08 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0291FD0C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291FD10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291FD14 */ _t40 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291FD14 */ _t41 = _t40 & 0x00000001u;
|
|
/* 0291FD14 */ if (_t41) goto L_0291FD18; else goto L_0291FD38;
|
|
L_0291FD18: ; // 0x291fd18
|
|
/* 0291FD18 */ cpu->r[5] = rbrew_rlwinm(cpu->r[24], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0291FD1C */ cpu->r[24] = cpu->r[25];
|
|
/* 0291FD20 */ _t42 = cpu->r[30] + 0xFFFFFFFCu;
|
|
/* 0291FD20 */ cpu->r[9] = rbrew_read32(cpu->mem, _t42);
|
|
/* 0291FD24 */ cpu->r[25] = rbrew_rlwinm(cpu->r[24], 0x00000001u, 0x00000000u, 0x0000001Eu);
|
|
/* 0291FD28 */ cpu->r[7] = cpu->r[26] + cpu->r[5];
|
|
/* 0291FD2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], cpu->r[27]);
|
|
/* 0291FD30 */ _t43 = cpu->r[7] + 0xFFFFFFFCu;
|
|
/* 0291FD30 */ rbrew_write32(cpu->mem, _t43, cpu->r[9]);
|
|
/* 0291FD34 */ _t44 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291FD34 */ _t45 = _t44 & 0x00000001u;
|
|
/* 0291FD34 */ if (_t45) goto L_0291FD38; else goto L_0291FCCC;
|
|
L_0291FD38: ; // 0x291fd38
|
|
/* 0291FD38 */ cpu->r[11] = rbrew_rlwinm(cpu->r[24], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0291FD3C */ _t46 = cpu->r[1] + 0x00000008u;
|
|
/* 0291FD3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t46);
|
|
/* 0291FD40 */ cpu->r[12] = cpu->r[26] + cpu->r[11];
|
|
/* 0291FD44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000001u);
|
|
/* 0291FD48 */ _t47 = cpu->r[12] + 0xFFFFFFFCu;
|
|
/* 0291FD48 */ rbrew_write32(cpu->mem, _t47, cpu->r[0]);
|
|
/* 0291FD4C */ _t48 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0291FD4C */ _t49 = _t48 & 0x00000001u;
|
|
/* 0291FD4C */ if (_t49) goto L_0291FCA8; else goto L_0291FD50;
|
|
L_0291FD50: ; // 0x291fd50
|
|
/* 0291FD50 */ /* nop */
|
|
/* 0291FD54 */ _t50 = cpu->r[1] + 0x00000034u;
|
|
/* 0291FD54 */ cpu->r[0] = rbrew_read32(cpu->mem, _t50);
|
|
/* 0291FD58 */ cpu->lr = cpu->r[0];
|
|
/* 0291FD5C */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 0291FD60 */ return;
|
|
}
|
|
|
|
// fn_0291FD64 @ 0x291fd64
|
|
void Gambit_fn_0291FD64(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _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;
|
|
|
|
L_0291FD64: ; // 0x291fd64
|
|
/* 0291FD64 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 0291FD64 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291FD64 */ cpu->r[1] = _t0;
|
|
/* 0291FD68 */ cpu->r[0] = cpu->lr;
|
|
/* 0291FD6C */ /* nop */
|
|
/* 0291FD70 */ cpu->r[28] = cpu->r[3];
|
|
/* 0291FD70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0291FD74 */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 0291FD74 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0291FD78 */ cpu->r[29] = cpu->r[4];
|
|
/* 0291FD7C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291FD7C */ _t3 = _t2 & 0x00000001u;
|
|
/* 0291FD7C */ if (_t3) goto L_0291FF10; else goto L_0291FD80;
|
|
L_0291FD80: ; // 0x291fd80
|
|
/* 0291FD80 */ cpu->r[12] = 0x10140000u;
|
|
/* 0291FD84 */ _t4 = cpu->r[28] + 0x00000010u;
|
|
/* 0291FD84 */ cpu->r[10] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0291FD88 */ cpu->r[9] = 0x10140000u;
|
|
/* 0291FD8C */ cpu->r[11] = 0x10140000u;
|
|
/* 0291FD90 */ _t5 = cpu->r[28] + 0x00000014u;
|
|
/* 0291FD90 */ cpu->r[30] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0291FD94 */ cpu->r[9] = cpu->r[9] + 0x00002B6Cu;
|
|
/* 0291FD98 */ cpu->r[0] = rbrew_rlwinm(cpu->r[10], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0291FD9C */ cpu->r[12] = cpu->r[12] + 0x00002C04u;
|
|
/* 0291FDA0 */ _t6 = cpu->r[28] + 0x00000018u;
|
|
/* 0291FDA0 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 0291FDA4 */ cpu->r[31] = cpu->r[30] + cpu->r[0];
|
|
/* 0291FDA8 */ cpu->r[11] = cpu->r[11] + 0x00002BC4u;
|
|
/* 0291FDAC */ _t7 = cpu->r[28] + 0x00000078u;
|
|
/* 0291FDAC */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 0291FDB0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[31]);
|
|
/* 0291FDB4 */ _t8 = cpu->r[28] + 0x0000001Cu;
|
|
/* 0291FDB4 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 0291FDB8 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291FDB8 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0291FDB8 */ if (_t10) goto L_0291FDE8; else goto L_0291FDBC;
|
|
L_0291FDBC: ; // 0x291fdbc
|
|
/* 0291FDBC */ _t11 = cpu->r[30] + 0x00000000u;
|
|
/* 0291FDBC */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0291FDC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0291FDC4 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291FDC4 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0291FDC4 */ if (_t13) goto L_0291FDDC; else goto L_0291FDC8;
|
|
L_0291FDC8: ; // 0x291fdc8
|
|
/* 0291FDC8 */ _t14 = cpu->r[3] + 0x00000018u;
|
|
/* 0291FDC8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0291FDCC */ _t15 = cpu->r[8] + 0x0000000Cu;
|
|
/* 0291FDCC */ cpu->r[9] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0291FDD0 */ cpu->ctr = cpu->r[9];
|
|
/* 0291FDD4 */ cpu->r[4] = 0x00000003u;
|
|
/* 0291FDD8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0291FDDC: ; // 0x291fddc
|
|
/* 0291FDDC */ cpu->r[30] = cpu->r[30] + 0x00000004u;
|
|
/* 0291FDE0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[31]);
|
|
/* 0291FDE4 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291FDE4 */ _t17 = _t16 & 0x00000001u;
|
|
/* 0291FDE4 */ if (_t17) goto L_0291FDE8; else goto L_0291FDBC;
|
|
L_0291FDE8: ; // 0x291fde8
|
|
/* 0291FDE8 */ _t18 = cpu->r[28] + 0x000001F4u;
|
|
/* 0291FDE8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0291FDEC */ _t19 = cpu->r[28] + 0x000001F8u;
|
|
/* 0291FDEC */ cpu->r[12] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0291FDF0 */ cpu->r[7] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x00000088u);
|
|
/* 0291FDF4 */ cpu->r[0] = cpu->r[12] + cpu->r[7];
|
|
/* 0291FDF8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[0]);
|
|
/* 0291FDFC */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291FDFC */ _t21 = _t20 & 0x00000001u;
|
|
/* 0291FDFC */ if (_t21) goto L_0291FE0C; else goto L_0291FE00;
|
|
L_0291FE00: ; // 0x291fe00
|
|
/* 0291FE00 */ cpu->r[12] = cpu->r[12] + 0x00000088u;
|
|
/* 0291FE04 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[0]);
|
|
/* 0291FE08 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291FE08 */ _t23 = _t22 & 0x00000001u;
|
|
/* 0291FE08 */ if (_t23) goto L_0291FE0C; else goto L_0291FE00;
|
|
L_0291FE0C: ; // 0x291fe0c
|
|
/* 0291FE0C */ cpu->r[3] = cpu->r[28] + 0x000001E8u;
|
|
/* 0291FE10 */ Gambit_fn_02802424(cpu);
|
|
/* 0291FE14 */ _t24 = cpu->r[28] + 0x00000320u;
|
|
/* 0291FE14 */ cpu->r[4] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0291FE18 */ cpu->r[26] = 0x101D0000u;
|
|
/* 0291FE1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 0291FE20 */ cpu->r[27] = 0x00000000u;
|
|
/* 0291FE24 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291FE24 */ _t26 = _t25 & 0x00000001u;
|
|
/* 0291FE24 */ if (_t26) goto L_0291FE90; else goto L_0291FE28;
|
|
L_0291FE28: ; // 0x291fe28
|
|
/* 0291FE28 */ _t27 = cpu->r[28] + 0x0000031Cu;
|
|
/* 0291FE28 */ cpu->r[10] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0291FE2C */ cpu->r[31] = 0x00000000u;
|
|
/* 0291FE30 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[10]);
|
|
/* 0291FE34 */ _t28 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291FE34 */ _t29 = _t28 & 0x00000001u;
|
|
/* 0291FE34 */ if (_t29) goto L_0291FE38; else goto L_0291FE6C;
|
|
L_0291FE38: ; // 0x291fe38
|
|
/* 0291FE38 */ cpu->r[30] = 0x00000000u;
|
|
L_0291FE3C: ; // 0x291fe3c
|
|
/* 0291FE3C */ cpu->r[3] = cpu->r[4] + cpu->r[30];
|
|
/* 0291FE40 */ _t30 = cpu->r[3] + 0x00000020u;
|
|
/* 0291FE40 */ cpu->r[11] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0291FE44 */ _t31 = cpu->r[11] + 0x0000000Cu;
|
|
/* 0291FE44 */ cpu->r[12] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0291FE48 */ cpu->ctr = cpu->r[12];
|
|
/* 0291FE4C */ cpu->r[4] = 0x00000002u;
|
|
/* 0291FE50 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291FE54 */ _t32 = cpu->r[28] + 0x0000031Cu;
|
|
/* 0291FE54 */ cpu->r[0] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0291FE58 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 0291FE5C */ cpu->r[30] = cpu->r[30] + 0x00000030u;
|
|
/* 0291FE60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[0]);
|
|
/* 0291FE64 */ _t33 = cpu->r[28] + 0x00000320u;
|
|
/* 0291FE64 */ cpu->r[4] = rbrew_read32(cpu->mem, _t33);
|
|
/* 0291FE68 */ _t34 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291FE68 */ _t35 = _t34 & 0x00000001u;
|
|
/* 0291FE68 */ if (_t35) goto L_0291FE3C; else goto L_0291FE6C;
|
|
L_0291FE6C: ; // 0x291fe6c
|
|
/* 0291FE6C */ _t36 = cpu->r[26] + 0xFFFF98F0u;
|
|
/* 0291FE6C */ cpu->r[3] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0291FE70 */ Gambit_fn_02826B90(cpu);
|
|
/* 0291FE74 */ _t37 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0291FE74 */ cpu->r[7] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0291FE78 */ _t38 = cpu->r[7] + 0x0000003Cu;
|
|
/* 0291FE78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t38);
|
|
/* 0291FE7C */ cpu->ctr = cpu->r[0];
|
|
/* 0291FE80 */ _t39 = cpu->r[28] + 0x00000320u;
|
|
/* 0291FE80 */ cpu->r[4] = rbrew_read32(cpu->mem, _t39);
|
|
/* 0291FE84 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291FE88 */ _t40 = cpu->r[28] + 0x0000031Cu;
|
|
/* 0291FE88 */ rbrew_write32(cpu->mem, _t40, cpu->r[27]);
|
|
/* 0291FE8C */ _t41 = cpu->r[28] + 0x00000320u;
|
|
/* 0291FE8C */ rbrew_write32(cpu->mem, _t41, cpu->r[27]);
|
|
L_0291FE90: ; // 0x291fe90
|
|
/* 0291FE90 */ _t42 = cpu->r[28] + 0x000001F8u;
|
|
/* 0291FE90 */ cpu->r[4] = rbrew_read32(cpu->mem, _t42);
|
|
/* 0291FE94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 0291FE98 */ _t43 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291FE98 */ _t44 = _t43 & 0x00000001u;
|
|
/* 0291FE98 */ if (_t44) goto L_0291FEC8; else goto L_0291FE9C;
|
|
L_0291FE9C: ; // 0x291fe9c
|
|
/* 0291FE9C */ _t45 = cpu->r[28] + 0x000001F4u;
|
|
/* 0291FE9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t45);
|
|
/* 0291FEA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0291FEA4 */ _t46 = cpu->r[26] + 0xFFFF98F0u;
|
|
/* 0291FEA4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t46);
|
|
/* 0291FEA8 */ Gambit_fn_02826B90(cpu);
|
|
/* 0291FEAC */ _t47 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0291FEAC */ cpu->r[9] = rbrew_read32(cpu->mem, _t47);
|
|
/* 0291FEB0 */ _t48 = cpu->r[9] + 0x0000003Cu;
|
|
/* 0291FEB0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t48);
|
|
/* 0291FEB4 */ cpu->ctr = cpu->r[0];
|
|
/* 0291FEB8 */ _t49 = cpu->r[28] + 0x000001F8u;
|
|
/* 0291FEB8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t49);
|
|
/* 0291FEBC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0291FEC0 */ _t50 = cpu->r[28] + 0x000001F4u;
|
|
/* 0291FEC0 */ rbrew_write32(cpu->mem, _t50, cpu->r[27]);
|
|
/* 0291FEC4 */ _t51 = cpu->r[28] + 0x000001F8u;
|
|
/* 0291FEC4 */ rbrew_write32(cpu->mem, _t51, cpu->r[27]);
|
|
L_0291FEC8: ; // 0x291fec8
|
|
/* 0291FEC8 */ cpu->r[3] = cpu->r[28] + 0x0000023Cu;
|
|
/* 0291FECC */ Gambit_fn_0291F320(cpu);
|
|
/* 0291FED0 */ cpu->r[3] = cpu->r[28] + 0x0000023Cu;
|
|
/* 0291FED4 */ cpu->r[4] = 0x00000002u;
|
|
/* 0291FED8 */ Gambit_fn_02921E94(cpu);
|
|
/* 0291FEDC */ cpu->r[3] = cpu->r[28] + 0x00000200u;
|
|
/* 0291FEE0 */ cpu->r[4] = 0x00000002u;
|
|
/* 0291FEE4 */ Gambit_fn_02836FA8(cpu);
|
|
/* 0291FEE8 */ cpu->r[3] = cpu->r[28] + 0x0000001Cu;
|
|
/* 0291FEEC */ cpu->r[4] = 0x00000000u;
|
|
/* 0291FEF0 */ Gambit_fn_0294E6AC(cpu);
|
|
/* 0291FEF4 */ cpu->r[3] = cpu->r[28];
|
|
/* 0291FEF8 */ cpu->r[4] = 0x00000000u;
|
|
/* 0291FEFC */ Gambit_fn_0291F3D0(cpu);
|
|
/* 0291FF00 */ cpu->r[0] = rbrew_rlwinm(cpu->r[29], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0291FF00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0291FF04 */ _t52 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291FF04 */ _t53 = _t52 & 0x00000001u;
|
|
/* 0291FF04 */ if (_t53) goto L_0291FF10; else goto L_0291FF08;
|
|
L_0291FF08: ; // 0x291ff08
|
|
/* 0291FF08 */ cpu->r[3] = cpu->r[28];
|
|
/* 0291FF0C */ Gambit_fn_02801BB0(cpu);
|
|
L_0291FF10: ; // 0x291ff10
|
|
/* 0291FF10 */ /* nop */
|
|
/* 0291FF14 */ _t54 = cpu->r[1] + 0x00000024u;
|
|
/* 0291FF14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t54);
|
|
/* 0291FF18 */ cpu->lr = cpu->r[0];
|
|
/* 0291FF1C */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 0291FF20 */ return;
|
|
}
|
|
|
|
// fn_0291FF24 @ 0x291ff24
|
|
void Gambit_fn_0291FF24(CPUState* cpu) {
|
|
uint32_t _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_0291FF24: ; // 0x291ff24
|
|
/* 0291FF24 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFE4u;
|
|
/* 0291FF28 */ goto L_029219B0;
|
|
L_029219B0: ; // 0x29219b0
|
|
/* 029219B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 029219B4 */ _t0 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 029219B4 */ _t1 = _t0 & 0x00000001u;
|
|
/* 029219B4 */ if (_t1) goto L_029219DC; else goto L_029219B8;
|
|
L_029219B8: ; // 0x29219b8
|
|
/* 029219B8 */ _t2 = cpu->r[3] + 0x00000008u;
|
|
/* 029219B8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t2);
|
|
/* 029219BC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[6]);
|
|
/* 029219C0 */ _t3 = cpu->r[3] + 0x0000000Cu;
|
|
/* 029219C0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 029219C4 */ _t4 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 029219C4 */ _t5 = _t4 & 0x00000001u;
|
|
/* 029219C4 */ if (_t5) goto L_029219C8; else goto L_029219F0;
|
|
L_029219C8: ; // 0x29219c8
|
|
/* 029219C8 */ cpu->r[11] = rbrew_rlwinm(cpu->r[5], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 029219CC */ cpu->r[8] = cpu->r[12] + cpu->r[11];
|
|
/* 029219D0 */ _t6 = cpu->r[8] + 0x00000002u;
|
|
/* 029219D0 */ cpu->r[0] = rbrew_read16(cpu->mem, _t6);
|
|
/* 029219D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], cpu->r[0]);
|
|
/* 029219D8 */ _t7 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 029219D8 */ _t8 = _t7 & 0x00000001u;
|
|
/* 029219D8 */ if (_t8) goto L_029219FC; else goto L_029219DC;
|
|
L_029219DC: ; // 0x29219dc
|
|
/* 029219DC */ cpu->r[3] = 0x00000000u;
|
|
/* 029219E0 */ _t9 = cpu->r[3] + 0x00000018u;
|
|
/* 029219E0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t9);
|
|
/* 029219E4 */ _t10 = cpu->r[11] + 0x00000084u;
|
|
/* 029219E4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t10);
|
|
/* 029219E8 */ cpu->ctr = cpu->r[7];
|
|
/* 029219EC */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
L_029219F0: ; // 0x29219f0
|
|
/* 029219F0 */ _t11 = cpu->r[12] + 0x00000002u;
|
|
/* 029219F0 */ cpu->r[0] = rbrew_read16(cpu->mem, _t11);
|
|
/* 029219F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], cpu->r[0]);
|
|
/* 029219F8 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 029219F8 */ _t13 = _t12 & 0x00000001u;
|
|
/* 029219F8 */ if (_t13) goto L_029219FC; else goto L_029219DC;
|
|
L_029219FC: ; // 0x29219fc
|
|
/* 029219FC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[6]);
|
|
/* 02921A00 */ _t14 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02921A00 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02921A00 */ if (_t15) goto L_02921A04; else goto L_02921A0C;
|
|
L_02921A04: ; // 0x2921a04
|
|
/* 02921A04 */ cpu->r[6] = rbrew_rlwinm(cpu->r[5], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02921A08 */ cpu->r[12] = cpu->r[12] + cpu->r[6];
|
|
L_02921A0C: ; // 0x2921a0c
|
|
/* 02921A0C */ _t16 = cpu->r[12] + 0x00000000u;
|
|
/* 02921A0C */ cpu->r[7] = rbrew_read16(cpu->mem, _t16);
|
|
/* 02921A10 */ _t17 = cpu->r[3] + 0x00000010u;
|
|
/* 02921A10 */ cpu->r[8] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02921A14 */ cpu->r[9] = cpu->r[7] + cpu->r[4];
|
|
/* 02921A18 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[8]);
|
|
/* 02921A1C */ cpu->r[10] = 0x00000000u;
|
|
/* 02921A20 */ _t18 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02921A20 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02921A20 */ if (_t19) goto L_02921A24; else goto L_02921A30;
|
|
L_02921A24: ; // 0x2921a24
|
|
/* 02921A24 */ _t20 = cpu->r[3] + 0x00000014u;
|
|
/* 02921A24 */ cpu->r[10] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02921A28 */ cpu->r[0] = rbrew_rlwinm(cpu->r[9], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02921A2C */ cpu->r[10] = cpu->r[10] + cpu->r[0];
|
|
L_02921A30: ; // 0x2921a30
|
|
/* 02921A30 */ _t21 = cpu->r[10] + 0x00000000u;
|
|
/* 02921A30 */ cpu->r[3] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02921A34 */ _t22 = cpu->r[3] + 0x00000018u;
|
|
/* 02921A34 */ cpu->r[11] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02921A38 */ _t23 = cpu->r[11] + 0x00000084u;
|
|
/* 02921A38 */ cpu->r[7] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02921A3C */ cpu->ctr = cpu->r[7];
|
|
/* 02921A40 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0291FF2C @ 0x291ff2c
|
|
void Gambit_fn_0291FF2C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_0291FF2C: ; // 0x291ff2c
|
|
/* 0291FF2C */ cpu->r[3] = cpu->r[3] + 0xFFFFFFE4u;
|
|
/* 0291FF30 */ goto L_02921A44;
|
|
L_02921A44: ; // 0x2921a44
|
|
/* 02921A44 */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 02921A44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02921A48 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[0]);
|
|
/* 02921A4C */ _t1 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02921A4C */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02921A50 */ _t2 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02921A50 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02921A50 */ if (_t3) goto L_02921A54; else goto L_02921A5C;
|
|
L_02921A54: ; // 0x2921a54
|
|
/* 02921A54 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02921A58 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_02921A5C: ; // 0x2921a5c
|
|
/* 02921A5C */ _t4 = cpu->r[12] + 0x00000002u;
|
|
/* 02921A5C */ cpu->r[3] = rbrew_read16(cpu->mem, _t4);
|
|
/* 02921A60 */ return;
|
|
}
|
|
|
|
// fn_0291FF34 @ 0x291ff34
|
|
void Gambit_fn_0291FF34(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111;
|
|
|
|
L_0291FF34: ; // 0x291ff34
|
|
/* 0291FF34 */ _t0 = cpu->r[1] + 0xFFFFFFB8u;
|
|
/* 0291FF34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291FF34 */ cpu->r[1] = _t0;
|
|
/* 0291FF38 */ /* nop */
|
|
/* 0291FF3C */ cpu->r[0] = cpu->lr;
|
|
/* 0291FF40 */ _t1 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0291FF40 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0291FF44 */ cpu->r[26] = cpu->r[3];
|
|
/* 0291FF48 */ _t2 = cpu->r[26] + 0x00000010u;
|
|
/* 0291FF48 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0291FF4C */ _t3 = cpu->r[26] + 0x00000014u;
|
|
/* 0291FF4C */ cpu->r[10] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0291FF50 */ cpu->r[12] = rbrew_rlwinm(cpu->r[12], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0291FF54 */ cpu->r[0] = cpu->r[10] + cpu->r[12];
|
|
/* 0291FF58 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[0]);
|
|
/* 0291FF5C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291FF5C */ _t5 = _t4 & 0x00000001u;
|
|
/* 0291FF5C */ if (_t5) goto L_0291FF6C; else goto L_0291FF60;
|
|
L_0291FF60: ; // 0x291ff60
|
|
/* 0291FF60 */ cpu->r[10] = cpu->r[10] + 0x00000004u;
|
|
/* 0291FF64 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[0]);
|
|
/* 0291FF68 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291FF68 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0291FF68 */ if (_t7) goto L_0291FF6C; else goto L_0291FF60;
|
|
L_0291FF6C: ; // 0x291ff6c
|
|
/* 0291FF6C */ _t8 = cpu->r[26] + 0x0000031Cu;
|
|
/* 0291FF6C */ cpu->r[5] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0291FF70 */ _t9 = cpu->r[26] + 0x00000320u;
|
|
/* 0291FF70 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0291FF74 */ cpu->r[4] = (uint32_t)((int32_t)cpu->r[5] * (int32_t)0x00000030u);
|
|
/* 0291FF78 */ cpu->r[0] = cpu->r[12] + cpu->r[4];
|
|
/* 0291FF7C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[0]);
|
|
/* 0291FF80 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291FF80 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0291FF80 */ if (_t11) goto L_0291FF90; else goto L_0291FF84;
|
|
L_0291FF84: ; // 0x291ff84
|
|
/* 0291FF84 */ cpu->r[12] = cpu->r[12] + 0x00000030u;
|
|
/* 0291FF88 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[0]);
|
|
/* 0291FF8C */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291FF8C */ _t13 = _t12 & 0x00000001u;
|
|
/* 0291FF8C */ if (_t13) goto L_0291FF90; else goto L_0291FF84;
|
|
L_0291FF90: ; // 0x291ff90
|
|
/* 0291FF90 */ cpu->r[3] = cpu->r[26] + 0x0000001Cu;
|
|
/* 0291FF94 */ Gambit_fn_0294F124(cpu);
|
|
/* 0291FF98 */ _t14 = cpu->r[26] + 0x00000318u;
|
|
/* 0291FF98 */ cpu->r[5] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0291FF9C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], 0x00000001u);
|
|
/* 0291FFA0 */ _t15 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291FFA0 */ _t16 = _t15 & 0x00000001u;
|
|
/* 0291FFA0 */ if (_t16) goto L_02920220; else goto L_0291FFA4;
|
|
L_0291FFA4: ; // 0x291ffa4
|
|
/* 0291FFA4 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291FFA4 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0291FFA4 */ if (_t18) goto L_0291FFC4; else goto L_0291FFA8;
|
|
L_0291FFA8: ; // 0x291ffa8
|
|
/* 0291FFA8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], 0x00000002u);
|
|
/* 0291FFAC */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291FFAC */ _t20 = _t19 & 0x00000001u;
|
|
/* 0291FFAC */ if (_t20) goto L_029201FC; else goto L_0291FFB0;
|
|
L_0291FFB0: ; // 0x291ffb0
|
|
/* 0291FFB0 */ /* nop */
|
|
/* 0291FFB4 */ _t21 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0291FFB4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0291FFB8 */ cpu->lr = cpu->r[0];
|
|
/* 0291FFBC */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 0291FFC0 */ return;
|
|
L_0291FFC4: ; // 0x291ffc4
|
|
/* 0291FFC4 */ _t22 = cpu->r[26] + 0x0000031Cu;
|
|
/* 0291FFC4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0291FFC8 */ _t23 = cpu->r[26] + 0x00000320u;
|
|
/* 0291FFC8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0291FFCC */ cpu->r[6] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x00000030u);
|
|
/* 0291FFD0 */ cpu->r[28] = cpu->r[29] + cpu->r[6];
|
|
/* 0291FFD4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[28]);
|
|
/* 0291FFD8 */ cpu->r[30] = cpu->r[29];
|
|
/* 0291FFDC */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291FFDC */ _t25 = _t24 & 0x00000001u;
|
|
/* 0291FFDC */ if (_t25) goto L_02920230; else goto L_0291FFE0;
|
|
L_0291FFE0: ; // 0x291ffe0
|
|
/* 0291FFE0 */ cpu->r[31] = 0x10110000u;
|
|
/* 0291FFE4 */ _t26 = cpu->r[31] + 0x00007399u;
|
|
/* 0291FFE4 */ cpu->r[31] = rbrew_read8(cpu->mem, _t26);
|
|
L_0291FFE8: ; // 0x291ffe8
|
|
/* 0291FFE8 */ cpu->r[8] = 0xAAAB0000u;
|
|
/* 0291FFEC */ cpu->r[7] = cpu->r[29] - cpu->r[30];
|
|
/* 0291FFF0 */ cpu->r[8] = cpu->r[8] + 0xFFFFAAABu;
|
|
/* 0291FFF4 */ /* nop */
|
|
/* 0291FFF8 */ _t27 = cpu->r[26] + 0x00000008u;
|
|
/* 0291FFF8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0291FFFC */ cpu->r[27] = rbrew_rlwinm(cpu->r[27], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 02920000 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], cpu->r[9]);
|
|
/* 02920004 */ _t28 = cpu->r[26] + 0x0000000Cu;
|
|
/* 02920004 */ cpu->r[9] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02920008 */ _t29 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02920008 */ _t30 = _t29 & 0x00000001u;
|
|
/* 02920008 */ if (_t30) goto L_0292000C; else goto L_02920014;
|
|
L_0292000C: ; // 0x292000c
|
|
/* 0292000C */ cpu->r[10] = rbrew_rlwinm(cpu->r[27], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02920010 */ cpu->r[9] = cpu->r[9] + cpu->r[10];
|
|
L_02920014: ; // 0x2920014
|
|
/* 02920014 */ _t31 = cpu->r[9] + 0x00000002u;
|
|
/* 02920014 */ cpu->r[5] = rbrew_read16(cpu->mem, _t31);
|
|
/* 02920018 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 0292001C */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292001C */ _t33 = _t32 & 0x00000001u;
|
|
/* 0292001C */ if (_t33) goto L_029201DC; else goto L_02920020;
|
|
L_02920020: ; // 0x2920020
|
|
/* 02920020 */ cpu->r[3] = cpu->r[26] + 0x0000023Cu;
|
|
/* 02920024 */ cpu->r[4] = cpu->r[27];
|
|
/* 02920028 */ Gambit_fn_0291F710(cpu);
|
|
/* 0292002C */ _t34 = cpu->r[26] + 0x00000244u;
|
|
/* 0292002C */ cpu->r[5] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02920030 */ _t35 = cpu->r[26] + 0x00000248u;
|
|
/* 02920030 */ cpu->r[8] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02920034 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], cpu->r[5]);
|
|
/* 02920038 */ _t36 = cpu->r[26] + 0x0000024Cu;
|
|
/* 02920038 */ cpu->r[3] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0292003C */ _t37 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0292003C */ _t38 = _t37 & 0x00000001u;
|
|
/* 0292003C */ if (_t38) goto L_02920040; else goto L_02920058;
|
|
L_02920040: ; // 0x2920040
|
|
/* 02920040 */ cpu->r[6] = rbrew_rlwinm(cpu->r[27], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02920044 */ _t39 = cpu->r[8] + cpu->r[6];
|
|
/* 02920044 */ cpu->r[0] = rbrew_read16(cpu->mem, _t39);
|
|
/* 02920048 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[3]);
|
|
/* 0292004C */ _t40 = cpu->r[26] + 0x00000250u;
|
|
/* 0292004C */ cpu->r[11] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02920050 */ _t41 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02920050 */ _t42 = _t41 & 0x00000001u;
|
|
/* 02920050 */ if (_t42) goto L_02920054; else goto L_02920068;
|
|
L_02920054: ; // 0x2920054
|
|
/* 02920054 */ goto L_02920080;
|
|
L_02920058: ; // 0x2920058
|
|
/* 02920058 */ _t43 = cpu->r[8] + 0x00000000u;
|
|
/* 02920058 */ cpu->r[0] = rbrew_read16(cpu->mem, _t43);
|
|
/* 0292005C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[3]);
|
|
/* 02920060 */ _t44 = cpu->r[26] + 0x00000250u;
|
|
/* 02920060 */ cpu->r[11] = rbrew_read32(cpu->mem, _t44);
|
|
/* 02920064 */ _t45 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02920064 */ _t46 = _t45 & 0x00000001u;
|
|
/* 02920064 */ if (_t46) goto L_02920080; else goto L_02920068;
|
|
L_02920068: ; // 0x2920068
|
|
/* 02920068 */ cpu->r[7] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0292006C */ cpu->r[25] = cpu->r[11] + cpu->r[7];
|
|
/* 02920070 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], cpu->r[5]);
|
|
/* 02920074 */ _t47 = cpu->r[1] + 0x00000008u;
|
|
/* 02920074 */ rbrew_write32(cpu->mem, _t47, cpu->r[25]);
|
|
/* 02920078 */ _t48 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02920078 */ _t49 = _t48 & 0x00000001u;
|
|
/* 02920078 */ if (_t49) goto L_0292007C; else goto L_029200A8;
|
|
L_0292007C: ; // 0x292007c
|
|
/* 0292007C */ goto L_02920094;
|
|
L_02920080: ; // 0x2920080
|
|
/* 02920080 */ cpu->r[9] = rbrew_rlwinm(cpu->r[3], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02920084 */ cpu->r[25] = cpu->r[11] + cpu->r[9];
|
|
/* 02920088 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], cpu->r[5]);
|
|
/* 0292008C */ _t50 = cpu->r[1] + 0x00000008u;
|
|
/* 0292008C */ rbrew_write32(cpu->mem, _t50, cpu->r[25]);
|
|
/* 02920090 */ _t51 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02920090 */ _t52 = _t51 & 0x00000001u;
|
|
/* 02920090 */ if (_t52) goto L_02920094; else goto L_029200A8;
|
|
L_02920094: ; // 0x2920094
|
|
/* 02920094 */ cpu->r[10] = rbrew_rlwinm(cpu->r[27], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02920098 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], cpu->r[5]);
|
|
/* 0292009C */ _t53 = cpu->r[8] + cpu->r[10];
|
|
/* 0292009C */ cpu->r[12] = rbrew_read16(cpu->mem, _t53);
|
|
/* 029200A0 */ _t54 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 029200A0 */ _t55 = _t54 & 0x00000001u;
|
|
/* 029200A0 */ if (_t55) goto L_029200B4; else goto L_029200A4;
|
|
L_029200A4: ; // 0x29200a4
|
|
/* 029200A4 */ goto L_029200BC;
|
|
L_029200A8: ; // 0x29200a8
|
|
/* 029200A8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], cpu->r[5]);
|
|
/* 029200AC */ _t56 = cpu->r[8] + 0x00000000u;
|
|
/* 029200AC */ cpu->r[12] = rbrew_read16(cpu->mem, _t56);
|
|
/* 029200B0 */ _t57 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 029200B0 */ _t58 = _t57 & 0x00000001u;
|
|
/* 029200B0 */ if (_t58) goto L_029200B4; else goto L_029200BC;
|
|
L_029200B4: ; // 0x29200b4
|
|
/* 029200B4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[27], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 029200B8 */ cpu->r[8] = cpu->r[8] + cpu->r[0];
|
|
L_029200BC: ; // 0x29200bc
|
|
/* 029200BC */ _t59 = cpu->r[8] + 0x00000002u;
|
|
/* 029200BC */ cpu->r[4] = rbrew_read16(cpu->mem, _t59);
|
|
/* 029200C0 */ cpu->r[9] = cpu->r[12] + cpu->r[4];
|
|
/* 029200C4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[3]);
|
|
/* 029200C8 */ _t60 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 029200C8 */ _t61 = _t60 & 0x00000001u;
|
|
/* 029200C8 */ if (_t61) goto L_029200E4; else goto L_029200CC;
|
|
L_029200CC: ; // 0x29200cc
|
|
/* 029200CC */ cpu->r[5] = rbrew_rlwinm(cpu->r[9], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 029200D0 */ cpu->r[27] = cpu->r[11] + cpu->r[5];
|
|
/* 029200D4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], cpu->r[27]);
|
|
/* 029200D8 */ _t62 = cpu->r[1] + 0x00000010u;
|
|
/* 029200D8 */ rbrew_write32(cpu->mem, _t62, cpu->r[27]);
|
|
/* 029200DC */ _t63 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029200DC */ _t64 = _t63 & 0x00000001u;
|
|
/* 029200DC */ if (_t64) goto L_029201DC; else goto L_029200E0;
|
|
L_029200E0: ; // 0x29200e0
|
|
/* 029200E0 */ goto L_029200F8;
|
|
L_029200E4: ; // 0x29200e4
|
|
/* 029200E4 */ cpu->r[6] = rbrew_rlwinm(cpu->r[3], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 029200E8 */ cpu->r[27] = cpu->r[11] + cpu->r[6];
|
|
/* 029200EC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], cpu->r[27]);
|
|
/* 029200F0 */ _t65 = cpu->r[1] + 0x00000010u;
|
|
/* 029200F0 */ rbrew_write32(cpu->mem, _t65, cpu->r[27]);
|
|
/* 029200F4 */ _t66 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029200F4 */ _t67 = _t66 & 0x00000001u;
|
|
/* 029200F4 */ if (_t67) goto L_029201DC; else goto L_029200F8;
|
|
L_029200F8: ; // 0x29200f8
|
|
/* 029200F8 */ cpu->r[23] = 0x00080000u;
|
|
/* 029200FC */ cpu->r[24] = cpu->r[31];
|
|
/* 02920100 */ cpu->r[23] = cpu->r[23] + 0x00000001u;
|
|
L_02920104: ; // 0x2920104
|
|
/* 02920104 */ _t68 = cpu->r[25] + 0x00000000u;
|
|
/* 02920104 */ cpu->r[3] = rbrew_read32(cpu->mem, _t68);
|
|
/* 02920108 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0292010C */ _t69 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292010C */ _t70 = _t69 & 0x00000001u;
|
|
/* 0292010C */ if (_t70) goto L_029201D0; else goto L_02920110;
|
|
L_02920110: ; // 0x2920110
|
|
/* 02920110 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02920114 */ _t71 = cpu->r[26] + 0x00000050u;
|
|
/* 02920114 */ cpu->r[0] = rbrew_read32(cpu->mem, _t71);
|
|
/* 02920118 */ _t72 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920118 */ _t73 = _t72 & 0x00000001u;
|
|
/* 02920118 */ if (_t73) goto L_02920120; else goto L_0292011C;
|
|
L_0292011C: ; // 0x292011c
|
|
/* 0292011C */ cpu->r[3] = cpu->r[3] + 0x0000001Cu;
|
|
L_02920120: ; // 0x2920120
|
|
/* 02920120 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 02920124 */ _t74 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920124 */ _t75 = _t74 & 0x00000001u;
|
|
/* 02920124 */ if (_t75) goto L_029201D0; else goto L_02920128;
|
|
L_02920128: ; // 0x2920128
|
|
/* 02920128 */ _t76 = cpu->r[26] + 0x0000002Cu;
|
|
/* 02920128 */ cpu->r[7] = rbrew_read32(cpu->mem, _t76);
|
|
/* 0292012C */ _t77 = cpu->r[26] + 0x00000030u;
|
|
/* 0292012C */ cpu->r[21] = rbrew_read32(cpu->mem, _t77);
|
|
/* 02920130 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 02920134 */ _t78 = cpu->r[3] + 0x00000000u;
|
|
/* 02920134 */ cpu->r[9] = rbrew_read32(cpu->mem, _t78);
|
|
/* 02920138 */ _t79 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02920138 */ _t80 = _t79 & 0x00000001u;
|
|
/* 02920138 */ if (_t80) goto L_0292013C; else goto L_02920144;
|
|
L_0292013C: ; // 0x292013c
|
|
/* 0292013C */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x00000144u);
|
|
/* 02920140 */ cpu->r[21] = cpu->r[21] + cpu->r[0];
|
|
L_02920144: ; // 0x2920144
|
|
/* 02920144 */ _t81 = cpu->r[9] + 0x00000024u;
|
|
/* 02920144 */ cpu->r[0] = rbrew_read32(cpu->mem, _t81);
|
|
/* 02920148 */ cpu->ctr = cpu->r[0];
|
|
/* 0292014C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02920150 */ _t82 = cpu->r[21] + 0x00000010u;
|
|
/* 02920150 */ cpu->r[4] = rbrew_read32(cpu->mem, _t82);
|
|
/* 02920154 */ _t83 = cpu->r[4] + 0x00000014u;
|
|
/* 02920154 */ cpu->r[0] = rbrew_read32(cpu->mem, _t83);
|
|
/* 02920158 */ cpu->r[20] = cpu->r[3];
|
|
/* 0292015C */ cpu->ctr = cpu->r[0];
|
|
/* 02920160 */ cpu->r[3] = cpu->r[21] + 0x0000000Cu;
|
|
/* 02920164 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02920168 */ _t84 = cpu->r[21] + 0x00000010u;
|
|
/* 02920168 */ cpu->r[7] = rbrew_read32(cpu->mem, _t84);
|
|
/* 0292016C */ _t85 = cpu->r[7] + 0x00000014u;
|
|
/* 0292016C */ cpu->r[8] = rbrew_read32(cpu->mem, _t85);
|
|
/* 02920170 */ cpu->ctr = cpu->r[8];
|
|
/* 02920174 */ cpu->r[3] = cpu->r[21] + 0x0000000Cu;
|
|
/* 02920178 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0292017C */ _t86 = cpu->r[20] + 0x00000004u;
|
|
/* 0292017C */ cpu->r[10] = rbrew_read32(cpu->mem, _t86);
|
|
/* 02920180 */ _t87 = cpu->r[10] + 0x00000014u;
|
|
/* 02920180 */ cpu->r[11] = rbrew_read32(cpu->mem, _t87);
|
|
/* 02920184 */ cpu->ctr = cpu->r[11];
|
|
/* 02920188 */ _t88 = cpu->r[21] + 0x0000000Cu;
|
|
/* 02920188 */ cpu->r[22] = rbrew_read32(cpu->mem, _t88);
|
|
/* 0292018C */ cpu->r[3] = cpu->r[20];
|
|
/* 02920190 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02920194 */ _t89 = cpu->r[20] + 0x00000000u;
|
|
/* 02920194 */ cpu->r[0] = rbrew_read32(cpu->mem, _t89);
|
|
/* 02920198 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[22], cpu->r[0]);
|
|
/* 0292019C */ _t90 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292019C */ _t91 = _t90 & 0x00000001u;
|
|
/* 0292019C */ if (_t91) goto L_029201D0; else goto L_029201A0;
|
|
L_029201A0: ; // 0x29201a0
|
|
/* 029201A0 */ _t92 = cpu->r[21] + 0x0000000Cu;
|
|
/* 029201A0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t92);
|
|
/* 029201A4 */ _t93 = cpu->r[20] + 0x00000000u;
|
|
/* 029201A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t93);
|
|
/* 029201A8 */ cpu->r[4] = cpu->r[4] + 0xFFFFFFFFu;
|
|
/* 029201AC */ cpu->ctr = cpu->r[23];
|
|
/* 029201B0 */ cpu->r[12] = cpu->r[12] + 0xFFFFFFFFu;
|
|
L_029201B4: ; // 0x29201b4
|
|
/* 029201B4 */ _t94 = cpu->r[4] + 0x00000001u;
|
|
/* 029201B4 */ cpu->r[11] = rbrew_read8(cpu->mem, _t94);
|
|
/* 029201B4 */ cpu->r[4] = _t94;
|
|
/* 029201B8 */ _t95 = cpu->r[12] + 0x00000001u;
|
|
/* 029201B8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t95);
|
|
/* 029201B8 */ cpu->r[12] = _t95;
|
|
/* 029201BC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[0]);
|
|
/* 029201C0 */ _t96 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029201C0 */ _t97 = _t96 & 0x00000001u;
|
|
/* 029201C0 */ if (_t97) goto L_029201C4; else goto L_029201D0;
|
|
L_029201C4: ; // 0x29201c4
|
|
/* 029201C4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[24]);
|
|
/* 029201C8 */ _t98 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029201C8 */ _t99 = _t98 & 0x00000001u;
|
|
/* 029201C8 */ if (_t99) goto L_029201D0; else goto L_029201CC;
|
|
L_029201CC: ; // 0x29201cc
|
|
/* 029201CC */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 029201CC */ _t100 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 029201CC */ _t101 = _t100 >> (0x00000002u & 31u);
|
|
/* 029201CC */ _t102 = _t101 & 0x00000001u;
|
|
/* 029201CC */ if (_t102) goto L_029201B4; else goto L_029201D0;
|
|
L_029201D0: ; // 0x29201d0
|
|
/* 029201D0 */ cpu->r[25] = cpu->r[25] + 0x00000004u;
|
|
/* 029201D4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], cpu->r[27]);
|
|
/* 029201D8 */ _t103 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029201D8 */ _t104 = _t103 & 0x00000001u;
|
|
/* 029201D8 */ if (_t104) goto L_029201DC; else goto L_02920104;
|
|
L_029201DC: ; // 0x29201dc
|
|
/* 029201DC */ cpu->r[29] = cpu->r[29] + 0x00000030u;
|
|
/* 029201E0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[28]);
|
|
/* 029201E4 */ _t105 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029201E4 */ _t106 = _t105 & 0x00000001u;
|
|
/* 029201E4 */ if (_t106) goto L_029201E8; else goto L_0291FFE8;
|
|
L_029201E8: ; // 0x29201e8
|
|
/* 029201E8 */ /* nop */
|
|
/* 029201EC */ _t107 = cpu->r[1] + 0x0000004Cu;
|
|
/* 029201EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t107);
|
|
/* 029201F0 */ cpu->lr = cpu->r[0];
|
|
/* 029201F4 */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 029201F8 */ return;
|
|
L_029201FC: ; // 0x29201fc
|
|
/* 029201FC */ _t108 = cpu->r[26] + 0x000001E4u;
|
|
/* 029201FC */ cpu->r[4] = rbrew_read32(cpu->mem, _t108);
|
|
/* 02920200 */ cpu->r[3] = cpu->r[26] + 0x0000001Cu;
|
|
/* 02920204 */ cpu->r[4] = rbrew_rlwinm(cpu->r[4], 0x00000018u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02920208 */ Gambit_fn_0294F464(cpu);
|
|
/* 0292020C */ /* nop */
|
|
/* 02920210 */ _t109 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02920210 */ cpu->r[0] = rbrew_read32(cpu->mem, _t109);
|
|
/* 02920214 */ cpu->lr = cpu->r[0];
|
|
/* 02920218 */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 0292021C */ return;
|
|
L_02920220: ; // 0x2920220
|
|
/* 02920220 */ _t110 = cpu->r[26] + 0x000001E4u;
|
|
/* 02920220 */ cpu->r[0] = rbrew_read32(cpu->mem, _t110);
|
|
/* 02920224 */ cpu->r[3] = cpu->r[26] + 0x0000001Cu;
|
|
/* 02920228 */ cpu->r[4] = rbrew_rlwinm(cpu->r[0], 0x00000018u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0292022C */ Gambit_fn_0294F318(cpu);
|
|
L_02920230: ; // 0x2920230
|
|
/* 02920230 */ /* nop */
|
|
/* 02920234 */ _t111 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02920234 */ cpu->r[0] = rbrew_read32(cpu->mem, _t111);
|
|
/* 02920238 */ cpu->lr = cpu->r[0];
|
|
/* 0292023C */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 02920240 */ return;
|
|
}
|
|
|
|
// fn_02920244 @ 0x2920244
|
|
void Gambit_fn_02920244(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111;
|
|
|
|
L_0291FF34: ; // 0x291ff34
|
|
/* 0291FF34 */ _t0 = cpu->r[1] + 0xFFFFFFB8u;
|
|
/* 0291FF34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0291FF34 */ cpu->r[1] = _t0;
|
|
/* 0291FF38 */ /* nop */
|
|
/* 0291FF3C */ cpu->r[0] = cpu->lr;
|
|
/* 0291FF40 */ _t1 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0291FF40 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0291FF44 */ cpu->r[26] = cpu->r[3];
|
|
/* 0291FF48 */ _t2 = cpu->r[26] + 0x00000010u;
|
|
/* 0291FF48 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0291FF4C */ _t3 = cpu->r[26] + 0x00000014u;
|
|
/* 0291FF4C */ cpu->r[10] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0291FF50 */ cpu->r[12] = rbrew_rlwinm(cpu->r[12], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0291FF54 */ cpu->r[0] = cpu->r[10] + cpu->r[12];
|
|
/* 0291FF58 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[0]);
|
|
/* 0291FF5C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291FF5C */ _t5 = _t4 & 0x00000001u;
|
|
/* 0291FF5C */ if (_t5) goto L_0291FF6C; else goto L_0291FF60;
|
|
L_0291FF60: ; // 0x291ff60
|
|
/* 0291FF60 */ cpu->r[10] = cpu->r[10] + 0x00000004u;
|
|
/* 0291FF64 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[0]);
|
|
/* 0291FF68 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291FF68 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0291FF68 */ if (_t7) goto L_0291FF6C; else goto L_0291FF60;
|
|
L_0291FF6C: ; // 0x291ff6c
|
|
/* 0291FF6C */ _t8 = cpu->r[26] + 0x0000031Cu;
|
|
/* 0291FF6C */ cpu->r[5] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0291FF70 */ _t9 = cpu->r[26] + 0x00000320u;
|
|
/* 0291FF70 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0291FF74 */ cpu->r[4] = (uint32_t)((int32_t)cpu->r[5] * (int32_t)0x00000030u);
|
|
/* 0291FF78 */ cpu->r[0] = cpu->r[12] + cpu->r[4];
|
|
/* 0291FF7C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[0]);
|
|
/* 0291FF80 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291FF80 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0291FF80 */ if (_t11) goto L_0291FF90; else goto L_0291FF84;
|
|
L_0291FF84: ; // 0x291ff84
|
|
/* 0291FF84 */ cpu->r[12] = cpu->r[12] + 0x00000030u;
|
|
/* 0291FF88 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[0]);
|
|
/* 0291FF8C */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291FF8C */ _t13 = _t12 & 0x00000001u;
|
|
/* 0291FF8C */ if (_t13) goto L_0291FF90; else goto L_0291FF84;
|
|
L_0291FF90: ; // 0x291ff90
|
|
/* 0291FF90 */ cpu->r[3] = cpu->r[26] + 0x0000001Cu;
|
|
/* 0291FF94 */ Gambit_fn_0294F124(cpu);
|
|
/* 0291FF98 */ _t14 = cpu->r[26] + 0x00000318u;
|
|
/* 0291FF98 */ cpu->r[5] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0291FF9C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], 0x00000001u);
|
|
/* 0291FFA0 */ _t15 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0291FFA0 */ _t16 = _t15 & 0x00000001u;
|
|
/* 0291FFA0 */ if (_t16) goto L_02920220; else goto L_0291FFA4;
|
|
L_0291FFA4: ; // 0x291ffa4
|
|
/* 0291FFA4 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291FFA4 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0291FFA4 */ if (_t18) goto L_0291FFC4; else goto L_0291FFA8;
|
|
L_0291FFA8: ; // 0x291ffa8
|
|
/* 0291FFA8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], 0x00000002u);
|
|
/* 0291FFAC */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291FFAC */ _t20 = _t19 & 0x00000001u;
|
|
/* 0291FFAC */ if (_t20) goto L_029201FC; else goto L_0291FFB0;
|
|
L_0291FFB0: ; // 0x291ffb0
|
|
/* 0291FFB0 */ /* nop */
|
|
/* 0291FFB4 */ _t21 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0291FFB4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0291FFB8 */ cpu->lr = cpu->r[0];
|
|
/* 0291FFBC */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 0291FFC0 */ return;
|
|
L_0291FFC4: ; // 0x291ffc4
|
|
/* 0291FFC4 */ _t22 = cpu->r[26] + 0x0000031Cu;
|
|
/* 0291FFC4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0291FFC8 */ _t23 = cpu->r[26] + 0x00000320u;
|
|
/* 0291FFC8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0291FFCC */ cpu->r[6] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x00000030u);
|
|
/* 0291FFD0 */ cpu->r[28] = cpu->r[29] + cpu->r[6];
|
|
/* 0291FFD4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[28]);
|
|
/* 0291FFD8 */ cpu->r[30] = cpu->r[29];
|
|
/* 0291FFDC */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0291FFDC */ _t25 = _t24 & 0x00000001u;
|
|
/* 0291FFDC */ if (_t25) goto L_02920230; else goto L_0291FFE0;
|
|
L_0291FFE0: ; // 0x291ffe0
|
|
/* 0291FFE0 */ cpu->r[31] = 0x10110000u;
|
|
/* 0291FFE4 */ _t26 = cpu->r[31] + 0x00007399u;
|
|
/* 0291FFE4 */ cpu->r[31] = rbrew_read8(cpu->mem, _t26);
|
|
L_0291FFE8: ; // 0x291ffe8
|
|
/* 0291FFE8 */ cpu->r[8] = 0xAAAB0000u;
|
|
/* 0291FFEC */ cpu->r[7] = cpu->r[29] - cpu->r[30];
|
|
/* 0291FFF0 */ cpu->r[8] = cpu->r[8] + 0xFFFFAAABu;
|
|
/* 0291FFF4 */ /* nop */
|
|
/* 0291FFF8 */ _t27 = cpu->r[26] + 0x00000008u;
|
|
/* 0291FFF8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0291FFFC */ cpu->r[27] = rbrew_rlwinm(cpu->r[27], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 02920000 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], cpu->r[9]);
|
|
/* 02920004 */ _t28 = cpu->r[26] + 0x0000000Cu;
|
|
/* 02920004 */ cpu->r[9] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02920008 */ _t29 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02920008 */ _t30 = _t29 & 0x00000001u;
|
|
/* 02920008 */ if (_t30) goto L_0292000C; else goto L_02920014;
|
|
L_0292000C: ; // 0x292000c
|
|
/* 0292000C */ cpu->r[10] = rbrew_rlwinm(cpu->r[27], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02920010 */ cpu->r[9] = cpu->r[9] + cpu->r[10];
|
|
L_02920014: ; // 0x2920014
|
|
/* 02920014 */ _t31 = cpu->r[9] + 0x00000002u;
|
|
/* 02920014 */ cpu->r[5] = rbrew_read16(cpu->mem, _t31);
|
|
/* 02920018 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 0292001C */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292001C */ _t33 = _t32 & 0x00000001u;
|
|
/* 0292001C */ if (_t33) goto L_029201DC; else goto L_02920020;
|
|
L_02920020: ; // 0x2920020
|
|
/* 02920020 */ cpu->r[3] = cpu->r[26] + 0x0000023Cu;
|
|
/* 02920024 */ cpu->r[4] = cpu->r[27];
|
|
/* 02920028 */ Gambit_fn_0291F710(cpu);
|
|
/* 0292002C */ _t34 = cpu->r[26] + 0x00000244u;
|
|
/* 0292002C */ cpu->r[5] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02920030 */ _t35 = cpu->r[26] + 0x00000248u;
|
|
/* 02920030 */ cpu->r[8] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02920034 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], cpu->r[5]);
|
|
/* 02920038 */ _t36 = cpu->r[26] + 0x0000024Cu;
|
|
/* 02920038 */ cpu->r[3] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0292003C */ _t37 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0292003C */ _t38 = _t37 & 0x00000001u;
|
|
/* 0292003C */ if (_t38) goto L_02920040; else goto L_02920058;
|
|
L_02920040: ; // 0x2920040
|
|
/* 02920040 */ cpu->r[6] = rbrew_rlwinm(cpu->r[27], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02920044 */ _t39 = cpu->r[8] + cpu->r[6];
|
|
/* 02920044 */ cpu->r[0] = rbrew_read16(cpu->mem, _t39);
|
|
/* 02920048 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[3]);
|
|
/* 0292004C */ _t40 = cpu->r[26] + 0x00000250u;
|
|
/* 0292004C */ cpu->r[11] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02920050 */ _t41 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02920050 */ _t42 = _t41 & 0x00000001u;
|
|
/* 02920050 */ if (_t42) goto L_02920054; else goto L_02920068;
|
|
L_02920054: ; // 0x2920054
|
|
/* 02920054 */ goto L_02920080;
|
|
L_02920058: ; // 0x2920058
|
|
/* 02920058 */ _t43 = cpu->r[8] + 0x00000000u;
|
|
/* 02920058 */ cpu->r[0] = rbrew_read16(cpu->mem, _t43);
|
|
/* 0292005C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[3]);
|
|
/* 02920060 */ _t44 = cpu->r[26] + 0x00000250u;
|
|
/* 02920060 */ cpu->r[11] = rbrew_read32(cpu->mem, _t44);
|
|
/* 02920064 */ _t45 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02920064 */ _t46 = _t45 & 0x00000001u;
|
|
/* 02920064 */ if (_t46) goto L_02920080; else goto L_02920068;
|
|
L_02920068: ; // 0x2920068
|
|
/* 02920068 */ cpu->r[7] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0292006C */ cpu->r[25] = cpu->r[11] + cpu->r[7];
|
|
/* 02920070 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], cpu->r[5]);
|
|
/* 02920074 */ _t47 = cpu->r[1] + 0x00000008u;
|
|
/* 02920074 */ rbrew_write32(cpu->mem, _t47, cpu->r[25]);
|
|
/* 02920078 */ _t48 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02920078 */ _t49 = _t48 & 0x00000001u;
|
|
/* 02920078 */ if (_t49) goto L_0292007C; else goto L_029200A8;
|
|
L_0292007C: ; // 0x292007c
|
|
/* 0292007C */ goto L_02920094;
|
|
L_02920080: ; // 0x2920080
|
|
/* 02920080 */ cpu->r[9] = rbrew_rlwinm(cpu->r[3], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02920084 */ cpu->r[25] = cpu->r[11] + cpu->r[9];
|
|
/* 02920088 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], cpu->r[5]);
|
|
/* 0292008C */ _t50 = cpu->r[1] + 0x00000008u;
|
|
/* 0292008C */ rbrew_write32(cpu->mem, _t50, cpu->r[25]);
|
|
/* 02920090 */ _t51 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02920090 */ _t52 = _t51 & 0x00000001u;
|
|
/* 02920090 */ if (_t52) goto L_02920094; else goto L_029200A8;
|
|
L_02920094: ; // 0x2920094
|
|
/* 02920094 */ cpu->r[10] = rbrew_rlwinm(cpu->r[27], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02920098 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], cpu->r[5]);
|
|
/* 0292009C */ _t53 = cpu->r[8] + cpu->r[10];
|
|
/* 0292009C */ cpu->r[12] = rbrew_read16(cpu->mem, _t53);
|
|
/* 029200A0 */ _t54 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 029200A0 */ _t55 = _t54 & 0x00000001u;
|
|
/* 029200A0 */ if (_t55) goto L_029200B4; else goto L_029200A4;
|
|
L_029200A4: ; // 0x29200a4
|
|
/* 029200A4 */ goto L_029200BC;
|
|
L_029200A8: ; // 0x29200a8
|
|
/* 029200A8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], cpu->r[5]);
|
|
/* 029200AC */ _t56 = cpu->r[8] + 0x00000000u;
|
|
/* 029200AC */ cpu->r[12] = rbrew_read16(cpu->mem, _t56);
|
|
/* 029200B0 */ _t57 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 029200B0 */ _t58 = _t57 & 0x00000001u;
|
|
/* 029200B0 */ if (_t58) goto L_029200B4; else goto L_029200BC;
|
|
L_029200B4: ; // 0x29200b4
|
|
/* 029200B4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[27], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 029200B8 */ cpu->r[8] = cpu->r[8] + cpu->r[0];
|
|
L_029200BC: ; // 0x29200bc
|
|
/* 029200BC */ _t59 = cpu->r[8] + 0x00000002u;
|
|
/* 029200BC */ cpu->r[4] = rbrew_read16(cpu->mem, _t59);
|
|
/* 029200C0 */ cpu->r[9] = cpu->r[12] + cpu->r[4];
|
|
/* 029200C4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[3]);
|
|
/* 029200C8 */ _t60 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 029200C8 */ _t61 = _t60 & 0x00000001u;
|
|
/* 029200C8 */ if (_t61) goto L_029200E4; else goto L_029200CC;
|
|
L_029200CC: ; // 0x29200cc
|
|
/* 029200CC */ cpu->r[5] = rbrew_rlwinm(cpu->r[9], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 029200D0 */ cpu->r[27] = cpu->r[11] + cpu->r[5];
|
|
/* 029200D4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], cpu->r[27]);
|
|
/* 029200D8 */ _t62 = cpu->r[1] + 0x00000010u;
|
|
/* 029200D8 */ rbrew_write32(cpu->mem, _t62, cpu->r[27]);
|
|
/* 029200DC */ _t63 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029200DC */ _t64 = _t63 & 0x00000001u;
|
|
/* 029200DC */ if (_t64) goto L_029201DC; else goto L_029200E0;
|
|
L_029200E0: ; // 0x29200e0
|
|
/* 029200E0 */ goto L_029200F8;
|
|
L_029200E4: ; // 0x29200e4
|
|
/* 029200E4 */ cpu->r[6] = rbrew_rlwinm(cpu->r[3], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 029200E8 */ cpu->r[27] = cpu->r[11] + cpu->r[6];
|
|
/* 029200EC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], cpu->r[27]);
|
|
/* 029200F0 */ _t65 = cpu->r[1] + 0x00000010u;
|
|
/* 029200F0 */ rbrew_write32(cpu->mem, _t65, cpu->r[27]);
|
|
/* 029200F4 */ _t66 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029200F4 */ _t67 = _t66 & 0x00000001u;
|
|
/* 029200F4 */ if (_t67) goto L_029201DC; else goto L_029200F8;
|
|
L_029200F8: ; // 0x29200f8
|
|
/* 029200F8 */ cpu->r[23] = 0x00080000u;
|
|
/* 029200FC */ cpu->r[24] = cpu->r[31];
|
|
/* 02920100 */ cpu->r[23] = cpu->r[23] + 0x00000001u;
|
|
L_02920104: ; // 0x2920104
|
|
/* 02920104 */ _t68 = cpu->r[25] + 0x00000000u;
|
|
/* 02920104 */ cpu->r[3] = rbrew_read32(cpu->mem, _t68);
|
|
/* 02920108 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0292010C */ _t69 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292010C */ _t70 = _t69 & 0x00000001u;
|
|
/* 0292010C */ if (_t70) goto L_029201D0; else goto L_02920110;
|
|
L_02920110: ; // 0x2920110
|
|
/* 02920110 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02920114 */ _t71 = cpu->r[26] + 0x00000050u;
|
|
/* 02920114 */ cpu->r[0] = rbrew_read32(cpu->mem, _t71);
|
|
/* 02920118 */ _t72 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920118 */ _t73 = _t72 & 0x00000001u;
|
|
/* 02920118 */ if (_t73) goto L_02920120; else goto L_0292011C;
|
|
L_0292011C: ; // 0x292011c
|
|
/* 0292011C */ cpu->r[3] = cpu->r[3] + 0x0000001Cu;
|
|
L_02920120: ; // 0x2920120
|
|
/* 02920120 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 02920124 */ _t74 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920124 */ _t75 = _t74 & 0x00000001u;
|
|
/* 02920124 */ if (_t75) goto L_029201D0; else goto L_02920128;
|
|
L_02920128: ; // 0x2920128
|
|
/* 02920128 */ _t76 = cpu->r[26] + 0x0000002Cu;
|
|
/* 02920128 */ cpu->r[7] = rbrew_read32(cpu->mem, _t76);
|
|
/* 0292012C */ _t77 = cpu->r[26] + 0x00000030u;
|
|
/* 0292012C */ cpu->r[21] = rbrew_read32(cpu->mem, _t77);
|
|
/* 02920130 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 02920134 */ _t78 = cpu->r[3] + 0x00000000u;
|
|
/* 02920134 */ cpu->r[9] = rbrew_read32(cpu->mem, _t78);
|
|
/* 02920138 */ _t79 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02920138 */ _t80 = _t79 & 0x00000001u;
|
|
/* 02920138 */ if (_t80) goto L_0292013C; else goto L_02920144;
|
|
L_0292013C: ; // 0x292013c
|
|
/* 0292013C */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x00000144u);
|
|
/* 02920140 */ cpu->r[21] = cpu->r[21] + cpu->r[0];
|
|
L_02920144: ; // 0x2920144
|
|
/* 02920144 */ _t81 = cpu->r[9] + 0x00000024u;
|
|
/* 02920144 */ cpu->r[0] = rbrew_read32(cpu->mem, _t81);
|
|
/* 02920148 */ cpu->ctr = cpu->r[0];
|
|
/* 0292014C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02920150 */ _t82 = cpu->r[21] + 0x00000010u;
|
|
/* 02920150 */ cpu->r[4] = rbrew_read32(cpu->mem, _t82);
|
|
/* 02920154 */ _t83 = cpu->r[4] + 0x00000014u;
|
|
/* 02920154 */ cpu->r[0] = rbrew_read32(cpu->mem, _t83);
|
|
/* 02920158 */ cpu->r[20] = cpu->r[3];
|
|
/* 0292015C */ cpu->ctr = cpu->r[0];
|
|
/* 02920160 */ cpu->r[3] = cpu->r[21] + 0x0000000Cu;
|
|
/* 02920164 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02920168 */ _t84 = cpu->r[21] + 0x00000010u;
|
|
/* 02920168 */ cpu->r[7] = rbrew_read32(cpu->mem, _t84);
|
|
/* 0292016C */ _t85 = cpu->r[7] + 0x00000014u;
|
|
/* 0292016C */ cpu->r[8] = rbrew_read32(cpu->mem, _t85);
|
|
/* 02920170 */ cpu->ctr = cpu->r[8];
|
|
/* 02920174 */ cpu->r[3] = cpu->r[21] + 0x0000000Cu;
|
|
/* 02920178 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0292017C */ _t86 = cpu->r[20] + 0x00000004u;
|
|
/* 0292017C */ cpu->r[10] = rbrew_read32(cpu->mem, _t86);
|
|
/* 02920180 */ _t87 = cpu->r[10] + 0x00000014u;
|
|
/* 02920180 */ cpu->r[11] = rbrew_read32(cpu->mem, _t87);
|
|
/* 02920184 */ cpu->ctr = cpu->r[11];
|
|
/* 02920188 */ _t88 = cpu->r[21] + 0x0000000Cu;
|
|
/* 02920188 */ cpu->r[22] = rbrew_read32(cpu->mem, _t88);
|
|
/* 0292018C */ cpu->r[3] = cpu->r[20];
|
|
/* 02920190 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02920194 */ _t89 = cpu->r[20] + 0x00000000u;
|
|
/* 02920194 */ cpu->r[0] = rbrew_read32(cpu->mem, _t89);
|
|
/* 02920198 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[22], cpu->r[0]);
|
|
/* 0292019C */ _t90 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292019C */ _t91 = _t90 & 0x00000001u;
|
|
/* 0292019C */ if (_t91) goto L_029201D0; else goto L_029201A0;
|
|
L_029201A0: ; // 0x29201a0
|
|
/* 029201A0 */ _t92 = cpu->r[21] + 0x0000000Cu;
|
|
/* 029201A0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t92);
|
|
/* 029201A4 */ _t93 = cpu->r[20] + 0x00000000u;
|
|
/* 029201A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t93);
|
|
/* 029201A8 */ cpu->r[4] = cpu->r[4] + 0xFFFFFFFFu;
|
|
/* 029201AC */ cpu->ctr = cpu->r[23];
|
|
/* 029201B0 */ cpu->r[12] = cpu->r[12] + 0xFFFFFFFFu;
|
|
L_029201B4: ; // 0x29201b4
|
|
/* 029201B4 */ _t94 = cpu->r[4] + 0x00000001u;
|
|
/* 029201B4 */ cpu->r[11] = rbrew_read8(cpu->mem, _t94);
|
|
/* 029201B4 */ cpu->r[4] = _t94;
|
|
/* 029201B8 */ _t95 = cpu->r[12] + 0x00000001u;
|
|
/* 029201B8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t95);
|
|
/* 029201B8 */ cpu->r[12] = _t95;
|
|
/* 029201BC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[0]);
|
|
/* 029201C0 */ _t96 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029201C0 */ _t97 = _t96 & 0x00000001u;
|
|
/* 029201C0 */ if (_t97) goto L_029201C4; else goto L_029201D0;
|
|
L_029201C4: ; // 0x29201c4
|
|
/* 029201C4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[24]);
|
|
/* 029201C8 */ _t98 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029201C8 */ _t99 = _t98 & 0x00000001u;
|
|
/* 029201C8 */ if (_t99) goto L_029201D0; else goto L_029201CC;
|
|
L_029201CC: ; // 0x29201cc
|
|
/* 029201CC */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 029201CC */ _t100 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 029201CC */ _t101 = _t100 >> (0x00000002u & 31u);
|
|
/* 029201CC */ _t102 = _t101 & 0x00000001u;
|
|
/* 029201CC */ if (_t102) goto L_029201B4; else goto L_029201D0;
|
|
L_029201D0: ; // 0x29201d0
|
|
/* 029201D0 */ cpu->r[25] = cpu->r[25] + 0x00000004u;
|
|
/* 029201D4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], cpu->r[27]);
|
|
/* 029201D8 */ _t103 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029201D8 */ _t104 = _t103 & 0x00000001u;
|
|
/* 029201D8 */ if (_t104) goto L_029201DC; else goto L_02920104;
|
|
L_029201DC: ; // 0x29201dc
|
|
/* 029201DC */ cpu->r[29] = cpu->r[29] + 0x00000030u;
|
|
/* 029201E0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[28]);
|
|
/* 029201E4 */ _t105 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029201E4 */ _t106 = _t105 & 0x00000001u;
|
|
/* 029201E4 */ if (_t106) goto L_029201E8; else goto L_0291FFE8;
|
|
L_029201E8: ; // 0x29201e8
|
|
/* 029201E8 */ /* nop */
|
|
/* 029201EC */ _t107 = cpu->r[1] + 0x0000004Cu;
|
|
/* 029201EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t107);
|
|
/* 029201F0 */ cpu->lr = cpu->r[0];
|
|
/* 029201F4 */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 029201F8 */ return;
|
|
L_029201FC: ; // 0x29201fc
|
|
/* 029201FC */ _t108 = cpu->r[26] + 0x000001E4u;
|
|
/* 029201FC */ cpu->r[4] = rbrew_read32(cpu->mem, _t108);
|
|
/* 02920200 */ cpu->r[3] = cpu->r[26] + 0x0000001Cu;
|
|
/* 02920204 */ cpu->r[4] = rbrew_rlwinm(cpu->r[4], 0x00000018u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02920208 */ Gambit_fn_0294F464(cpu);
|
|
/* 0292020C */ /* nop */
|
|
/* 02920210 */ _t109 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02920210 */ cpu->r[0] = rbrew_read32(cpu->mem, _t109);
|
|
/* 02920214 */ cpu->lr = cpu->r[0];
|
|
/* 02920218 */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 0292021C */ return;
|
|
L_02920220: ; // 0x2920220
|
|
/* 02920220 */ _t110 = cpu->r[26] + 0x000001E4u;
|
|
/* 02920220 */ cpu->r[0] = rbrew_read32(cpu->mem, _t110);
|
|
/* 02920224 */ cpu->r[3] = cpu->r[26] + 0x0000001Cu;
|
|
/* 02920228 */ cpu->r[4] = rbrew_rlwinm(cpu->r[0], 0x00000018u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0292022C */ Gambit_fn_0294F318(cpu);
|
|
L_02920230: ; // 0x2920230
|
|
/* 02920230 */ /* nop */
|
|
/* 02920234 */ _t111 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02920234 */ cpu->r[0] = rbrew_read32(cpu->mem, _t111);
|
|
/* 02920238 */ cpu->lr = cpu->r[0];
|
|
/* 0292023C */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 02920240 */ return;
|
|
L_02920244: ; // 0x2920244
|
|
/* 02920244 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFE4u;
|
|
/* 02920248 */ goto L_0291FF34;
|
|
}
|
|
|
|
// fn_0292024C @ 0x292024c
|
|
void Gambit_fn_0292024C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_0292024C: ; // 0x292024c
|
|
/* 0292024C */ _t0 = cpu->r[3] + 0x000001E4u;
|
|
/* 0292024C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02920250 */ _t1 = cpu->r[3] + 0x00000054u;
|
|
/* 02920250 */ cpu->r[0] = rbrew_read16(cpu->mem, _t1);
|
|
/* 02920254 */ cpu->r[12] = cpu->r[12] | 0x00000001u;
|
|
/* 02920258 */ cpu->r[0] = cpu->r[0] | 0x00000001u;
|
|
/* 0292025C */ _t2 = cpu->r[3] + 0x000001E4u;
|
|
/* 0292025C */ rbrew_write32(cpu->mem, _t2, cpu->r[12]);
|
|
/* 02920260 */ _t3 = cpu->r[3] + 0x00000054u;
|
|
/* 02920260 */ rbrew_write16(cpu->mem, _t3, (uint16_t)cpu->r[0]);
|
|
/* 02920264 */ return;
|
|
}
|
|
|
|
// fn_02920268 @ 0x2920268
|
|
void Gambit_fn_02920268(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47;
|
|
|
|
L_02920268: ; // 0x2920268
|
|
/* 02920268 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 02920268 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02920268 */ cpu->r[1] = _t0;
|
|
/* 0292026C */ /* nop */
|
|
/* 02920270 */ cpu->r[0] = cpu->lr;
|
|
/* 02920274 */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 02920274 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02920278 */ cpu->r[27] = cpu->r[3];
|
|
/* 0292027C */ _t2 = cpu->r[27] + 0x00000010u;
|
|
/* 0292027C */ cpu->r[7] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02920280 */ _t3 = cpu->r[27] + 0x00000014u;
|
|
/* 02920280 */ cpu->r[29] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02920284 */ cpu->r[12] = rbrew_rlwinm(cpu->r[7], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02920288 */ cpu->r[30] = cpu->r[29] + cpu->r[12];
|
|
/* 0292028C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[30]);
|
|
/* 02920290 */ cpu->r[28] = cpu->r[4];
|
|
/* 02920294 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920294 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02920294 */ if (_t5) goto L_029203AC; else goto L_02920298;
|
|
L_02920298: ; // 0x2920298
|
|
/* 02920298 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0xFFFFFFFFu);
|
|
/* 0292029C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292029C */ _t7 = _t6 & 0x00000001u;
|
|
/* 0292029C */ if (_t7) goto L_02920398; else goto L_029202A0;
|
|
L_029202A0: ; // 0x29202a0
|
|
/* 029202A0 */ cpu->r[31] = 0x10110000u;
|
|
/* 029202A4 */ cpu->r[23] = 0x00080000u;
|
|
/* 029202A8 */ cpu->r[22] = (uint32_t)((int32_t)cpu->r[28] * (int32_t)0x00000144u);
|
|
/* 029202AC */ _t8 = cpu->r[31] + 0x00007399u;
|
|
/* 029202AC */ cpu->r[31] = rbrew_read8(cpu->mem, _t8);
|
|
/* 029202B0 */ cpu->r[23] = cpu->r[23] + 0x00000001u;
|
|
L_029202B4: ; // 0x29202b4
|
|
/* 029202B4 */ _t9 = cpu->r[29] + 0x00000000u;
|
|
/* 029202B4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 029202B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 029202BC */ _t10 = cpu->r[27] + 0x0000002Cu;
|
|
/* 029202BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 029202C0 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029202C0 */ _t12 = _t11 & 0x00000001u;
|
|
/* 029202C0 */ if (_t12) goto L_029202C8; else goto L_029202C4;
|
|
L_029202C4: ; // 0x29202c4
|
|
/* 029202C4 */ cpu->r[3] = cpu->r[3] + 0x0000001Cu;
|
|
L_029202C8: ; // 0x29202c8
|
|
/* 029202C8 */ _t13 = cpu->r[3] + 0x00000000u;
|
|
/* 029202C8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t13);
|
|
/* 029202CC */ _t14 = cpu->r[27] + 0x00000030u;
|
|
/* 029202CC */ cpu->r[24] = rbrew_read32(cpu->mem, _t14);
|
|
/* 029202D0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[0]);
|
|
/* 029202D4 */ _t15 = cpu->r[7] + 0x00000024u;
|
|
/* 029202D4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t15);
|
|
/* 029202D8 */ _t16 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 029202D8 */ _t17 = _t16 & 0x00000001u;
|
|
/* 029202D8 */ if (_t17) goto L_029202DC; else goto L_029202E0;
|
|
L_029202DC: ; // 0x29202dc
|
|
/* 029202DC */ cpu->r[24] = cpu->r[24] + cpu->r[22];
|
|
L_029202E0: ; // 0x29202e0
|
|
/* 029202E0 */ cpu->ctr = cpu->r[10];
|
|
/* 029202E4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 029202E8 */ _t18 = cpu->r[24] + 0x00000010u;
|
|
/* 029202E8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t18);
|
|
/* 029202EC */ _t19 = cpu->r[8] + 0x00000014u;
|
|
/* 029202EC */ cpu->r[9] = rbrew_read32(cpu->mem, _t19);
|
|
/* 029202F0 */ cpu->r[25] = cpu->r[3];
|
|
/* 029202F4 */ cpu->ctr = cpu->r[9];
|
|
/* 029202F8 */ cpu->r[3] = cpu->r[24] + 0x0000000Cu;
|
|
/* 029202FC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02920300 */ _t20 = cpu->r[24] + 0x00000010u;
|
|
/* 02920300 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02920304 */ _t21 = cpu->r[11] + 0x00000014u;
|
|
/* 02920304 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02920308 */ cpu->ctr = cpu->r[0];
|
|
/* 0292030C */ cpu->r[3] = cpu->r[24] + 0x0000000Cu;
|
|
/* 02920310 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02920314 */ _t22 = cpu->r[25] + 0x00000004u;
|
|
/* 02920314 */ cpu->r[4] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02920318 */ _t23 = cpu->r[4] + 0x00000014u;
|
|
/* 02920318 */ cpu->r[5] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0292031C */ cpu->ctr = cpu->r[5];
|
|
/* 02920320 */ _t24 = cpu->r[24] + 0x0000000Cu;
|
|
/* 02920320 */ cpu->r[26] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02920324 */ cpu->r[3] = cpu->r[25];
|
|
/* 02920328 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0292032C */ _t25 = cpu->r[25] + 0x00000000u;
|
|
/* 0292032C */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02920330 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], cpu->r[0]);
|
|
/* 02920334 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920334 */ _t27 = _t26 & 0x00000001u;
|
|
/* 02920334 */ if (_t27) goto L_02920378; else goto L_02920338;
|
|
L_02920338: ; // 0x2920338
|
|
/* 02920338 */ _t28 = cpu->r[24] + 0x0000000Cu;
|
|
/* 02920338 */ cpu->r[9] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0292033C */ _t29 = cpu->r[25] + 0x00000000u;
|
|
/* 0292033C */ cpu->r[6] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02920340 */ cpu->r[9] = cpu->r[9] + 0xFFFFFFFFu;
|
|
/* 02920344 */ cpu->ctr = cpu->r[23];
|
|
/* 02920348 */ cpu->r[6] = cpu->r[6] + 0xFFFFFFFFu;
|
|
L_0292034C: ; // 0x292034c
|
|
/* 0292034C */ _t30 = cpu->r[9] + 0x00000001u;
|
|
/* 0292034C */ cpu->r[0] = rbrew_read8(cpu->mem, _t30);
|
|
/* 0292034C */ cpu->r[9] = _t30;
|
|
/* 02920350 */ _t31 = cpu->r[6] + 0x00000001u;
|
|
/* 02920350 */ cpu->r[10] = rbrew_read8(cpu->mem, _t31);
|
|
/* 02920350 */ cpu->r[6] = _t31;
|
|
/* 02920354 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[10]);
|
|
/* 02920358 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920358 */ _t33 = _t32 & 0x00000001u;
|
|
/* 02920358 */ if (_t33) goto L_0292035C; else goto L_02920380;
|
|
L_0292035C: ; // 0x292035c
|
|
/* 0292035C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 02920360 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920360 */ _t35 = _t34 & 0x00000001u;
|
|
/* 02920360 */ if (_t35) goto L_02920378; else goto L_02920364;
|
|
L_02920364: ; // 0x2920364
|
|
/* 02920364 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02920364 */ _t36 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02920364 */ _t37 = _t36 >> (0x00000002u & 31u);
|
|
/* 02920364 */ _t38 = _t37 & 0x00000001u;
|
|
/* 02920364 */ if (_t38) goto L_0292034C; else goto L_02920368;
|
|
L_02920368: ; // 0x2920368
|
|
/* 02920368 */ cpu->r[29] = cpu->r[29] + 0x00000004u;
|
|
/* 0292036C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[30]);
|
|
/* 02920370 */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920370 */ _t40 = _t39 & 0x00000001u;
|
|
/* 02920370 */ if (_t40) goto L_02920374; else goto L_029202B4;
|
|
L_02920374: ; // 0x2920374
|
|
/* 02920374 */ goto L_0292038C;
|
|
L_02920378: ; // 0x2920378
|
|
/* 02920378 */ _t41 = cpu->r[29] + 0x00000000u;
|
|
/* 02920378 */ cpu->r[3] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0292037C */ Gambit_fn_0291ED34(cpu);
|
|
L_02920380: ; // 0x2920380
|
|
/* 02920380 */ cpu->r[29] = cpu->r[29] + 0x00000004u;
|
|
/* 02920384 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[30]);
|
|
/* 02920388 */ _t42 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920388 */ _t43 = _t42 & 0x00000001u;
|
|
/* 02920388 */ if (_t43) goto L_0292038C; else goto L_029202B4;
|
|
L_0292038C: ; // 0x292038c
|
|
/* 0292038C */ cpu->r[3] = cpu->r[27];
|
|
/* 02920390 */ Gambit_fn_0292024C(cpu);
|
|
/* 02920394 */ goto L_029203B4;
|
|
L_02920398: ; // 0x2920398
|
|
/* 02920398 */ _t44 = cpu->r[29] + 0x00000000u;
|
|
/* 02920398 */ cpu->r[3] = rbrew_read32(cpu->mem, _t44);
|
|
/* 0292039C */ Gambit_fn_0291ED34(cpu);
|
|
/* 029203A0 */ cpu->r[29] = cpu->r[29] + 0x00000004u;
|
|
/* 029203A4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[30]);
|
|
/* 029203A8 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029203A8 */ _t46 = _t45 & 0x00000001u;
|
|
/* 029203A8 */ if (_t46) goto L_029203AC; else goto L_02920398;
|
|
L_029203AC: ; // 0x29203ac
|
|
/* 029203AC */ cpu->r[3] = cpu->r[27];
|
|
/* 029203B0 */ Gambit_fn_0292024C(cpu);
|
|
L_029203B4: ; // 0x29203b4
|
|
/* 029203B4 */ /* nop */
|
|
/* 029203B8 */ _t47 = cpu->r[1] + 0x00000034u;
|
|
/* 029203B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t47);
|
|
/* 029203BC */ cpu->lr = cpu->r[0];
|
|
/* 029203C0 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 029203C4 */ return;
|
|
}
|
|
|
|
// fn_029203C8 @ 0x29203c8
|
|
void Gambit_fn_029203C8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t117, _t118, _t119, _t120, _t121, _t122, _t123, _t124, _t125, _t126, _t127, _t128, _t129, _t130, _t131, _t132, _t133, _t134, _t135, _t136, _t137, _t138, _t139, _t140, _t141, _t142, _t143, _t144, _t145, _t146, _t147, _t148, _t149, _t150, _t151, _t152, _t153, _t154, _t155, _t156, _t157, _t158, _t159, _t160, _t161, _t162, _t163, _t164, _t165, _t166, _t167, _t168, _t169, _t170, _t171, _t172, _t173, _t174, _t175, _t176, _t177, _t178, _t179, _t180, _t181, _t182, _t183, _t184, _t185, _t186, _t187, _t188, _t189, _t190, _t191, _t192, _t193, _t194, _t195, _t196, _t197, _t198, _t199, _t200, _t201, _t202, _t203, _t204, _t205, _t206, _t207, _t208, _t209, _t210, _t211, _t212, _t213, _t214, _t215, _t216, _t217, _t218, _t219, _t220, _t221, _t222, _t223, _t224, _t225, _t226, _t227, _t228, _t229, _t230, _t231, _t232, _t233, _t234, _t235, _t236, _t237, _t238, _t239, _t240, _t241, _t242, _t243, _t244, _t245, _t246, _t247, _t248, _t249, _t250, _t251, _t252, _t253, _t254, _t255, _t256, _t257, _t258, _t259, _t260, _t261, _t262, _t263, _t264, _t265, _t266, _t267, _t268, _t269, _t270, _t271, _t272, _t273, _t274, _t275, _t276, _t277, _t278, _t279, _t280, _t281, _t282, _t283, _t284, _t285, _t286, _t287, _t288, _t289, _t290, _t291, _t292, _t293, _t294, _t295, _t296, _t297, _t298, _t299, _t300, _t301, _t302, _t303, _t304, _t305, _t306, _t307, _t308, _t309, _t310, _t311, _t312, _t313, _t314, _t315, _t316, _t317, _t318, _t319, _t320, _t321, _t322, _t323, _t324, _t325, _t326, _t327, _t328, _t329, _t330, _t331, _t332, _t333, _t334, _t335, _t336, _t337, _t338, _t339, _t340, _t341, _t342, _t343, _t344, _t345, _t346, _t347, _t348, _t349, _t350, _t351, _t352, _t353, _t354, _t355, _t356, _t357, _t358, _t359, _t360, _t361, _t362, _t363, _t364, _t365, _t366, _t367, _t368, _t369, _t370, _t371, _t372, _t373, _t374, _t375, _t376, _t377, _t378, _t379, _t380, _t381, _t382, _t383, _t384, _t385, _t386, _t387, _t388, _t389, _t390, _t391, _t392, _t393, _t394, _t395, _t396, _t397, _t398, _t399, _t400, _t401, _t402, _t403, _t404, _t405, _t406, _t407, _t408, _t409, _t410, _t411, _t412, _t413, _t414, _t415, _t416, _t417, _t418, _t419, _t420, _t421, _t422, _t423, _t424, _t425, _t426, _t427, _t428, _t429, _t430, _t431, _t432, _t433, _t434, _t435, _t436, _t437, _t438, _t439, _t440, _t441, _t442, _t443, _t444, _t445, _t446, _t447, _t448, _t449, _t450, _t451, _t452, _t453, _t454, _t455, _t456, _t457, _t458, _t459, _t460, _t461, _t462, _t463, _t464;
|
|
|
|
L_029203C8: ; // 0x29203c8
|
|
/* 029203C8 */ _t0 = cpu->r[1] + 0xFFFFFEB0u;
|
|
/* 029203C8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 029203C8 */ cpu->r[1] = _t0;
|
|
/* 029203CC */ /* nop */
|
|
/* 029203D0 */ _t1 = cpu->r[1] + 0x00000130u;
|
|
/* 029203D0 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[30]);
|
|
/* 029203D4 */ /* nop */
|
|
/* 029203D8 */ _t2 = cpu->r[1] + 0x00000138u;
|
|
/* 029203D8 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[30]);
|
|
/* 029203DC */ _t3 = cpu->r[1] + 0x00000140u;
|
|
/* 029203DC */ rbrew_write_f64(cpu->mem, _t3, cpu->f[31]);
|
|
/* 029203E0 */ _t4 = cpu->r[1] + 0x00000120u;
|
|
/* 029203E0 */ rbrew_write_f64(cpu->mem, _t4, cpu->f[29]);
|
|
/* 029203E4 */ /* nop */
|
|
/* 029203E8 */ _t5 = cpu->r[1] + 0x00000148u;
|
|
/* 029203E8 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[31]);
|
|
/* 029203EC */ /* nop */
|
|
/* 029203F0 */ _t6 = cpu->r[1] + 0x00000128u;
|
|
/* 029203F0 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[29]);
|
|
/* 029203F4 */ cpu->r[0] = cpu->lr;
|
|
/* 029203F8 */ _t7 = cpu->r[1] + 0x00000154u;
|
|
/* 029203F8 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 029203FC */ cpu->r[28] = cpu->r[3];
|
|
/* 02920400 */ _t8 = cpu->r[4] + 0x00000000u;
|
|
/* 02920400 */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02920404 */ cpu->r[3] = cpu->r[28] + 0x00000200u;
|
|
/* 02920408 */ _t9 = cpu->r[1] + 0x00000010u;
|
|
/* 02920408 */ rbrew_write32(cpu->mem, _t9, cpu->r[6]);
|
|
/* 0292040C */ _t10 = cpu->r[5] + 0x00000000u;
|
|
/* 0292040C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02920410 */ _t11 = cpu->r[1] + 0x00000020u;
|
|
/* 02920410 */ rbrew_write32(cpu->mem, _t11, cpu->r[3]);
|
|
/* 02920414 */ cpu->f[29] = cpu->f[1];
|
|
/* 02920418 */ _t12 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02920418 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 0292041C */ Gambit_fn_02836FFC(cpu);
|
|
/* 02920420 */ cpu->r[4] = 0x10140000u;
|
|
/* 02920424 */ _t13 = cpu->r[4] + 0x00002B04u;
|
|
/* 02920424 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 02920428 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[29], cpu->f[31]);
|
|
/* 0292042C */ _t14 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0292042C */ _t15 = _t14 & 0x00000001u;
|
|
/* 0292042C */ if (_t15) goto L_0292045C; else goto L_02920430;
|
|
L_02920430: ; // 0x2920430
|
|
/* 02920430 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 02920430 */ rbrew_write32(cpu->mem, _t16, cpu->r[31]);
|
|
/* 02920434 */ cpu->r[4] = 0x10200000u;
|
|
/* 02920438 */ cpu->r[26] = 0x10140000u;
|
|
/* 0292043C */ _t17 = cpu->r[4] + 0xFFFF81F0u;
|
|
/* 0292043C */ cpu->r[10] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0292043C */ cpu->r[4] = _t17;
|
|
/* 02920440 */ cpu->r[26] = cpu->r[26] + 0x00002A10u;
|
|
/* 02920444 */ _t18 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02920444 */ rbrew_write32(cpu->mem, _t18, cpu->r[31]);
|
|
/* 02920448 */ cpu->r[29] = 0x10200000u;
|
|
/* 0292044C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02920450 */ cpu->r[29] = cpu->r[29] + 0xFFFF81F8u;
|
|
/* 02920454 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920454 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02920454 */ if (_t20) goto L_02920458; else goto L_029204E0;
|
|
L_02920458: ; // 0x2920458
|
|
/* 02920458 */ goto L_029204BC;
|
|
L_0292045C: ; // 0x292045c
|
|
/* 0292045C */ cpu->r[12] = 0x10140000u;
|
|
/* 02920460 */ _t21 = cpu->r[12] + 0x00002B08u;
|
|
/* 02920460 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 02920464 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[29]);
|
|
/* 02920468 */ _t22 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02920468 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02920468 */ if (_t23) goto L_0292046C; else goto L_02920494;
|
|
L_0292046C: ; // 0x292046c
|
|
/* 0292046C */ cpu->r[26] = 0x10140000u;
|
|
/* 02920470 */ cpu->r[4] = 0x10200000u;
|
|
/* 02920474 */ cpu->r[26] = cpu->r[26] + 0x00002A10u;
|
|
/* 02920478 */ _t24 = cpu->r[4] + 0xFFFF81F0u;
|
|
/* 02920478 */ cpu->r[10] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02920478 */ cpu->r[4] = _t24;
|
|
/* 0292047C */ _t25 = cpu->r[1] + 0x00000014u;
|
|
/* 0292047C */ rbrew_write32(cpu->mem, _t25, cpu->r[31]);
|
|
/* 02920480 */ cpu->r[29] = 0x10200000u;
|
|
/* 02920484 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02920488 */ cpu->r[29] = cpu->r[29] + 0xFFFF81F8u;
|
|
/* 0292048C */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292048C */ _t27 = _t26 & 0x00000001u;
|
|
/* 0292048C */ if (_t27) goto L_02920490; else goto L_029204E0;
|
|
L_02920490: ; // 0x2920490
|
|
/* 02920490 */ goto L_029204BC;
|
|
L_02920494: ; // 0x2920494
|
|
/* 02920494 */ _t28 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02920494 */ cpu->r[11] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02920498 */ cpu->r[4] = 0x10200000u;
|
|
/* 0292049C */ cpu->r[26] = 0x10140000u;
|
|
/* 029204A0 */ _t29 = cpu->r[4] + 0xFFFF81F0u;
|
|
/* 029204A0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t29);
|
|
/* 029204A0 */ cpu->r[4] = _t29;
|
|
/* 029204A4 */ cpu->r[26] = cpu->r[26] + 0x00002A10u;
|
|
/* 029204A8 */ _t30 = cpu->r[1] + 0x00000014u;
|
|
/* 029204A8 */ rbrew_write32(cpu->mem, _t30, cpu->r[11]);
|
|
/* 029204AC */ cpu->r[29] = 0x10200000u;
|
|
/* 029204B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 029204B4 */ cpu->r[29] = cpu->r[29] + 0xFFFF81F8u;
|
|
/* 029204B8 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029204B8 */ _t32 = _t31 & 0x00000001u;
|
|
/* 029204B8 */ if (_t32) goto L_029204BC; else goto L_029204E0;
|
|
L_029204BC: ; // 0x29204bc
|
|
/* 029204BC */ cpu->r[0] = 0x00000001u;
|
|
/* 029204C0 */ _t33 = cpu->r[1] + 0x000000C0u;
|
|
/* 029204C0 */ rbrew_write32(cpu->mem, _t33, cpu->r[26]);
|
|
/* 029204C4 */ cpu->r[11] = 0x10140000u;
|
|
/* 029204C8 */ _t34 = cpu->r[4] + 0x00000000u;
|
|
/* 029204C8 */ rbrew_write32(cpu->mem, _t34, cpu->r[0]);
|
|
/* 029204CC */ cpu->r[11] = cpu->r[11] + 0x00002B14u;
|
|
/* 029204D0 */ cpu->r[3] = cpu->r[1] + 0x000000BCu;
|
|
/* 029204D4 */ _t35 = cpu->r[1] + 0x000000BCu;
|
|
/* 029204D4 */ rbrew_write32(cpu->mem, _t35, cpu->r[11]);
|
|
/* 029204D8 */ Gambit_fn_0294F6F0(cpu);
|
|
/* 029204DC */ _t36 = cpu->r[29] + 0x00000000u;
|
|
/* 029204DC */ rbrew_write32(cpu->mem, _t36, cpu->r[3]);
|
|
L_029204E0: ; // 0x29204e0
|
|
/* 029204E0 */ cpu->r[11] = 0x10200000u;
|
|
/* 029204E4 */ _t37 = cpu->r[11] + 0xFFFF81F4u;
|
|
/* 029204E4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t37);
|
|
/* 029204E4 */ cpu->r[11] = _t37;
|
|
/* 029204E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 029204EC */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029204EC */ _t39 = _t38 & 0x00000001u;
|
|
/* 029204EC */ if (_t39) goto L_029204F0; else goto L_02920518;
|
|
L_029204F0: ; // 0x29204f0
|
|
/* 029204F0 */ cpu->r[5] = 0x00000001u;
|
|
/* 029204F4 */ _t40 = cpu->r[1] + 0x000000C0u;
|
|
/* 029204F4 */ rbrew_write32(cpu->mem, _t40, cpu->r[26]);
|
|
/* 029204F8 */ cpu->r[6] = 0x10140000u;
|
|
/* 029204FC */ _t41 = cpu->r[11] + 0x00000000u;
|
|
/* 029204FC */ rbrew_write32(cpu->mem, _t41, cpu->r[5]);
|
|
/* 02920500 */ cpu->r[6] = cpu->r[6] + 0x00002B0Cu;
|
|
/* 02920504 */ cpu->r[3] = cpu->r[1] + 0x000000BCu;
|
|
/* 02920508 */ _t42 = cpu->r[1] + 0x000000BCu;
|
|
/* 02920508 */ rbrew_write32(cpu->mem, _t42, cpu->r[6]);
|
|
/* 0292050C */ Gambit_fn_0294F6F0(cpu);
|
|
/* 02920510 */ cpu->r[10] = 0x10200000u;
|
|
/* 02920514 */ _t43 = cpu->r[10] + 0xFFFF81FCu;
|
|
/* 02920514 */ rbrew_write32(cpu->mem, _t43, cpu->r[3]);
|
|
L_02920518: ; // 0x2920518
|
|
/* 02920518 */ _t44 = cpu->r[1] + 0x00000014u;
|
|
/* 02920518 */ cpu->r[9] = rbrew_read32(cpu->mem, _t44);
|
|
/* 0292051C */ _t45 = cpu->r[9] + 0x00000014u;
|
|
/* 0292051C */ cpu->r[10] = rbrew_read32(cpu->mem, _t45);
|
|
/* 02920520 */ cpu->r[8] = cpu->r[9] + cpu->r[10];
|
|
/* 02920524 */ cpu->r[5] = cpu->r[8] + 0x00000018u;
|
|
/* 02920528 */ _t46 = cpu->r[1] + 0x000000B8u;
|
|
/* 02920528 */ rbrew_write32(cpu->mem, _t46, cpu->r[5]);
|
|
/* 0292052C */ _t47 = cpu->r[8] + 0x00000020u;
|
|
/* 0292052C */ cpu->r[11] = rbrew_read32(cpu->mem, _t47);
|
|
/* 02920530 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02920534 */ _t48 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920534 */ _t49 = _t48 & 0x00000001u;
|
|
/* 02920534 */ if (_t49) goto L_02920568; else goto L_02920538;
|
|
L_02920538: ; // 0x2920538
|
|
/* 02920538 */ cpu->r[4] = 0x00000000u;
|
|
/* 0292053C */ cpu->r[3] = cpu->r[1] + 0x000000B8u;
|
|
/* 02920540 */ Gambit_fn_0295BF44(cpu);
|
|
/* 02920544 */ _t50 = cpu->r[1] + 0x000000B8u;
|
|
/* 02920544 */ cpu->r[5] = rbrew_read32(cpu->mem, _t50);
|
|
/* 02920548 */ _t51 = cpu->r[1] + 0x000000C8u;
|
|
/* 02920548 */ rbrew_write32(cpu->mem, _t51, cpu->r[3]);
|
|
/* 0292054C */ cpu->r[31] = 0x00000000u;
|
|
/* 02920550 */ _t52 = cpu->r[1] + 0x000000C4u;
|
|
/* 02920550 */ rbrew_write32(cpu->mem, _t52, cpu->r[31]);
|
|
/* 02920554 */ _t53 = cpu->r[5] + 0x00000008u;
|
|
/* 02920554 */ cpu->r[9] = rbrew_read32(cpu->mem, _t53);
|
|
/* 02920558 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0292055C */ cpu->r[30] = cpu->r[3];
|
|
/* 02920560 */ _t54 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920560 */ _t55 = _t54 & 0x00000001u;
|
|
/* 02920560 */ if (_t55) goto L_02920564; else goto L_02920584;
|
|
L_02920564: ; // 0x2920564
|
|
/* 02920564 */ goto L_029205AC;
|
|
L_02920568: ; // 0x2920568
|
|
/* 02920568 */ cpu->r[31] = 0x00000000u;
|
|
/* 0292056C */ _t56 = cpu->r[1] + 0x000000C4u;
|
|
/* 0292056C */ rbrew_write32(cpu->mem, _t56, cpu->r[31]);
|
|
/* 02920570 */ _t57 = cpu->r[1] + 0x000000C8u;
|
|
/* 02920570 */ rbrew_write32(cpu->mem, _t57, cpu->r[31]);
|
|
/* 02920574 */ _t58 = cpu->r[5] + 0x00000008u;
|
|
/* 02920574 */ cpu->r[9] = rbrew_read32(cpu->mem, _t58);
|
|
/* 02920578 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0292057C */ cpu->r[30] = cpu->r[31];
|
|
/* 02920580 */ _t59 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920580 */ _t60 = _t59 & 0x00000001u;
|
|
/* 02920580 */ if (_t60) goto L_029205AC; else goto L_02920584;
|
|
L_02920584: ; // 0x2920584
|
|
/* 02920584 */ cpu->r[3] = cpu->r[1] + 0x000000B8u;
|
|
/* 02920588 */ cpu->r[4] = cpu->r[9] + 0xFFFFFFFFu;
|
|
/* 0292058C */ Gambit_fn_0295BF44(cpu);
|
|
/* 02920590 */ _t61 = cpu->r[1] + 0x000000B8u;
|
|
/* 02920590 */ cpu->r[4] = rbrew_read32(cpu->mem, _t61);
|
|
/* 02920594 */ _t62 = cpu->r[4] + 0x00000008u;
|
|
/* 02920594 */ cpu->r[0] = rbrew_read32(cpu->mem, _t62);
|
|
/* 02920598 */ _t63 = cpu->r[1] + 0x000000CCu;
|
|
/* 02920598 */ rbrew_write32(cpu->mem, _t63, cpu->r[0]);
|
|
/* 0292059C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 029205A0 */ _t64 = cpu->r[1] + 0x00000028u;
|
|
/* 029205A0 */ rbrew_write32(cpu->mem, _t64, cpu->r[0]);
|
|
/* 029205A4 */ _t65 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029205A4 */ _t66 = _t65 & 0x00000001u;
|
|
/* 029205A4 */ if (_t66) goto L_02920F38; else goto L_029205A8;
|
|
L_029205A8: ; // 0x29205a8
|
|
/* 029205A8 */ goto L_029205C0;
|
|
L_029205AC: ; // 0x29205ac
|
|
/* 029205AC */ cpu->r[8] = 0x00000000u;
|
|
/* 029205B0 */ _t67 = cpu->r[1] + 0x00000028u;
|
|
/* 029205B0 */ rbrew_write32(cpu->mem, _t67, cpu->r[8]);
|
|
/* 029205B4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], 0x00000000u);
|
|
/* 029205B8 */ _t68 = cpu->r[1] + 0x000000CCu;
|
|
/* 029205B8 */ rbrew_write32(cpu->mem, _t68, cpu->r[8]);
|
|
/* 029205BC */ _t69 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029205BC */ _t70 = _t69 & 0x00000001u;
|
|
/* 029205BC */ if (_t70) goto L_02920F38; else goto L_029205C0;
|
|
L_029205C0: ; // 0x29205c0
|
|
/* 029205C0 */ _t71 = cpu->r[1] + 0x00000010u;
|
|
/* 029205C0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t71);
|
|
/* 029205C4 */ _t72 = cpu->r[1] + 0x0000000Cu;
|
|
/* 029205C4 */ rbrew_write32(cpu->mem, _t72, cpu->r[31]);
|
|
/* 029205C8 */ cpu->r[5] = (uint32_t)((int32_t)cpu->r[6] * (int32_t)0x00000144u);
|
|
/* 029205CC */ _t73 = cpu->r[1] + 0x00000018u;
|
|
/* 029205CC */ rbrew_write32(cpu->mem, _t73, cpu->r[30]);
|
|
/* 029205D0 */ _t74 = cpu->r[1] + 0x00000024u;
|
|
/* 029205D0 */ rbrew_write32(cpu->mem, _t74, cpu->r[5]);
|
|
L_029205D4: ; // 0x29205d4
|
|
/* 029205D4 */ _t75 = cpu->r[28] + 0x00000060u;
|
|
/* 029205D4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t75);
|
|
/* 029205D8 */ _t76 = cpu->r[1] + 0x00000018u;
|
|
/* 029205D8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t76);
|
|
/* 029205DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 029205E0 */ cpu->r[25] = 0x00000000u;
|
|
/* 029205E4 */ _t77 = cpu->r[1] + 0x00000074u;
|
|
/* 029205E4 */ rbrew_write32(cpu->mem, _t77, cpu->r[6]);
|
|
/* 029205E8 */ _t78 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029205E8 */ _t79 = _t78 & 0x00000001u;
|
|
/* 029205E8 */ if (_t79) goto L_02920F10; else goto L_029205EC;
|
|
L_029205EC: ; // 0x29205ec
|
|
/* 029205EC */ _t80 = cpu->r[6] + 0x00000004u;
|
|
/* 029205EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t80);
|
|
/* 029205F0 */ _t81 = cpu->r[4] + 0x00000010u;
|
|
/* 029205F0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t81);
|
|
/* 029205F4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[5]);
|
|
/* 029205F8 */ _t82 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029205F8 */ _t83 = _t82 & 0x00000001u;
|
|
/* 029205F8 */ if (_t83) goto L_0292060C; else goto L_029205FC;
|
|
L_029205FC: ; // 0x29205fc
|
|
/* 029205FC */ goto L_02920F00;
|
|
L_02920600: ; // 0x2920600
|
|
/* 02920600 */ _t84 = cpu->r[4] + 0x00000010u;
|
|
/* 02920600 */ cpu->r[8] = rbrew_read32(cpu->mem, _t84);
|
|
/* 02920604 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[8]);
|
|
/* 02920608 */ _t85 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920608 */ _t86 = _t85 & 0x00000001u;
|
|
/* 02920608 */ if (_t86) goto L_0292060C; else goto L_02920F00;
|
|
L_0292060C: ; // 0x292060c
|
|
/* 0292060C */ _t87 = cpu->r[6] + 0x0000000Cu;
|
|
/* 0292060C */ cpu->r[4] = rbrew_read32(cpu->mem, _t87);
|
|
/* 02920610 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 02920614 */ cpu->r[30] = 0xFFFFFFFFu;
|
|
/* 02920618 */ _t88 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920618 */ _t89 = _t88 & 0x00000001u;
|
|
/* 02920618 */ if (_t89) goto L_0292064C; else goto L_0292061C;
|
|
L_0292061C: ; // 0x292061c
|
|
/* 0292061C */ cpu->r[4] = 0x00000000u;
|
|
/* 02920620 */ cpu->r[3] = cpu->r[1] + 0x00000074u;
|
|
/* 02920624 */ Gambit_fn_0295BF74(cpu);
|
|
/* 02920628 */ _t90 = cpu->r[1] + 0x00000074u;
|
|
/* 02920628 */ cpu->r[6] = rbrew_read32(cpu->mem, _t90);
|
|
/* 0292062C */ _t91 = cpu->r[1] + 0x000000ACu;
|
|
/* 0292062C */ rbrew_write32(cpu->mem, _t91, cpu->r[3]);
|
|
/* 02920630 */ cpu->r[27] = 0x00000000u;
|
|
/* 02920634 */ _t92 = cpu->r[1] + 0x000000A8u;
|
|
/* 02920634 */ rbrew_write32(cpu->mem, _t92, cpu->r[27]);
|
|
/* 02920638 */ _t93 = cpu->r[6] + 0x0000000Cu;
|
|
/* 02920638 */ cpu->r[4] = rbrew_read32(cpu->mem, _t93);
|
|
/* 0292063C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 02920640 */ cpu->r[31] = cpu->r[3];
|
|
/* 02920644 */ _t94 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920644 */ _t95 = _t94 & 0x00000001u;
|
|
/* 02920644 */ if (_t95) goto L_02920648; else goto L_02920664;
|
|
L_02920648: ; // 0x2920648
|
|
/* 02920648 */ goto L_02920688;
|
|
L_0292064C: ; // 0x292064c
|
|
/* 0292064C */ cpu->r[27] = 0x00000000u;
|
|
/* 02920650 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 02920654 */ _t96 = cpu->r[1] + 0x000000A8u;
|
|
/* 02920654 */ rbrew_write32(cpu->mem, _t96, cpu->r[27]);
|
|
/* 02920658 */ cpu->r[31] = cpu->r[27];
|
|
/* 0292065C */ _t97 = cpu->r[1] + 0x000000ACu;
|
|
/* 0292065C */ rbrew_write32(cpu->mem, _t97, cpu->r[27]);
|
|
/* 02920660 */ _t98 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920660 */ _t99 = _t98 & 0x00000001u;
|
|
/* 02920660 */ if (_t99) goto L_02920688; else goto L_02920664;
|
|
L_02920664: ; // 0x2920664
|
|
/* 02920664 */ cpu->r[3] = cpu->r[1] + 0x00000074u;
|
|
/* 02920668 */ cpu->r[4] = cpu->r[4] + 0xFFFFFFFFu;
|
|
/* 0292066C */ Gambit_fn_0295BF74(cpu);
|
|
/* 02920670 */ _t100 = cpu->r[1] + 0x00000074u;
|
|
/* 02920670 */ cpu->r[9] = rbrew_read32(cpu->mem, _t100);
|
|
/* 02920674 */ _t101 = cpu->r[9] + 0x0000000Cu;
|
|
/* 02920674 */ cpu->r[0] = rbrew_read32(cpu->mem, _t101);
|
|
/* 02920678 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], cpu->r[0]);
|
|
/* 0292067C */ _t102 = cpu->r[1] + 0x000000B0u;
|
|
/* 0292067C */ rbrew_write32(cpu->mem, _t102, cpu->r[0]);
|
|
/* 02920680 */ _t103 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920680 */ _t104 = _t103 & 0x00000001u;
|
|
/* 02920680 */ if (_t104) goto L_02920F10; else goto L_02920684;
|
|
L_02920684: ; // 0x2920684
|
|
/* 02920684 */ goto L_02920698;
|
|
L_02920688: ; // 0x2920688
|
|
/* 02920688 */ cpu->r[0] = 0x00000000u;
|
|
/* 0292068C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], 0x00000000u);
|
|
/* 02920690 */ _t105 = cpu->r[1] + 0x000000B0u;
|
|
/* 02920690 */ rbrew_write32(cpu->mem, _t105, cpu->r[0]);
|
|
/* 02920694 */ _t106 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920694 */ _t107 = _t106 & 0x00000001u;
|
|
/* 02920694 */ if (_t107) goto L_02920F10; else goto L_02920698;
|
|
L_02920698: ; // 0x2920698
|
|
/* 02920698 */ cpu->r[7] = 0x10110000u;
|
|
/* 0292069C */ _t108 = cpu->r[1] + 0x00000024u;
|
|
/* 0292069C */ cpu->r[10] = rbrew_read32(cpu->mem, _t108);
|
|
/* 029206A0 */ cpu->f[30] = cpu->f[31];
|
|
/* 029206A4 */ _t109 = cpu->r[7] + 0x00007399u;
|
|
/* 029206A4 */ cpu->r[19] = rbrew_read8(cpu->mem, _t109);
|
|
/* 029206A8 */ cpu->r[21] = 0x00080000u;
|
|
/* 029206AC */ _t110 = cpu->r[1] + 0x00000008u;
|
|
/* 029206AC */ rbrew_write32(cpu->mem, _t110, cpu->r[10]);
|
|
/* 029206B0 */ cpu->r[21] = cpu->r[21] + 0x00000001u;
|
|
/* 029206B4 */ _t111 = cpu->r[1] + 0x00000030u;
|
|
/* 029206B4 */ rbrew_write32(cpu->mem, _t111, cpu->r[27]);
|
|
/* 029206B8 */ cpu->r[14] = rbrew_rlwinm(cpu->r[25], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 029206BC */ _t112 = cpu->r[1] + 0x0000002Cu;
|
|
/* 029206BC */ rbrew_write32(cpu->mem, _t112, cpu->r[0]);
|
|
L_029206C0: ; // 0x29206c0
|
|
/* 029206C0 */ _t113 = cpu->r[31] + 0x00000004u;
|
|
/* 029206C0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t113);
|
|
/* 029206C4 */ cpu->r[10] = 0x00000000u;
|
|
/* 029206C8 */ cpu->r[5] = cpu->r[31] + 0x00000010u;
|
|
/* 029206CC */ cpu->r[4] = 0x10200000u;
|
|
/* 029206D0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[12]);
|
|
/* 029206D4 */ _t114 = cpu->r[4] + 0xFFFF81FCu;
|
|
/* 029206D4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t114);
|
|
/* 029206D8 */ _t115 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029206D8 */ _t116 = _t115 & 0x00000001u;
|
|
/* 029206D8 */ if (_t116) goto L_02920718; else goto L_029206DC;
|
|
L_029206DC: ; // 0x29206dc
|
|
/* 029206DC */ cpu->r[0] = cpu->r[12];
|
|
L_029206E0: ; // 0x29206e0
|
|
/* 029206E0 */ _t117 = cpu->r[5] + 0x00000008u;
|
|
/* 029206E0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t117);
|
|
/* 029206E4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[11]);
|
|
/* 029206E8 */ _t118 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029206E8 */ _t119 = _t118 & 0x00000001u;
|
|
/* 029206E8 */ if (_t119) goto L_029206EC; else goto L_02920704;
|
|
L_029206EC: ; // 0x29206ec
|
|
/* 029206EC */ cpu->r[4] = 0x00000000u;
|
|
/* 029206F0 */ _t120 = cpu->r[29] + 0x00000000u;
|
|
/* 029206F0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t120);
|
|
/* 029206F4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 029206F8 */ cpu->r[27] = cpu->r[31] + 0x00000010u;
|
|
/* 029206FC */ _t121 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029206FC */ _t122 = _t121 & 0x00000001u;
|
|
/* 029206FC */ if (_t122) goto L_02920700; else goto L_02920730;
|
|
L_02920700: ; // 0x2920700
|
|
/* 02920700 */ goto L_0292075C;
|
|
L_02920704: ; // 0x2920704
|
|
/* 02920704 */ _t123 = cpu->r[5] + 0x00000000u;
|
|
/* 02920704 */ cpu->r[6] = rbrew_read32(cpu->mem, _t123);
|
|
/* 02920708 */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 0292070C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[0]);
|
|
/* 02920710 */ cpu->r[5] = cpu->r[5] + cpu->r[6];
|
|
/* 02920714 */ _t124 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920714 */ _t125 = _t124 & 0x00000001u;
|
|
/* 02920714 */ if (_t125) goto L_02920718; else goto L_029206E0;
|
|
L_02920718: ; // 0x2920718
|
|
/* 02920718 */ cpu->r[5] = 0x00000000u;
|
|
/* 0292071C */ cpu->r[4] = cpu->r[5];
|
|
/* 02920720 */ _t126 = cpu->r[29] + 0x00000000u;
|
|
/* 02920720 */ cpu->r[9] = rbrew_read32(cpu->mem, _t126);
|
|
/* 02920724 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 02920728 */ cpu->r[27] = cpu->r[31] + 0x00000010u;
|
|
/* 0292072C */ _t127 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292072C */ _t128 = _t127 & 0x00000001u;
|
|
/* 0292072C */ if (_t128) goto L_0292075C; else goto L_02920730;
|
|
L_02920730: ; // 0x2920730
|
|
/* 02920730 */ _t129 = cpu->r[27] + 0x00000008u;
|
|
/* 02920730 */ cpu->r[7] = rbrew_read32(cpu->mem, _t129);
|
|
/* 02920734 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[7]);
|
|
/* 02920738 */ _t130 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920738 */ _t131 = _t130 & 0x00000001u;
|
|
/* 02920738 */ if (_t131) goto L_0292073C; else goto L_02920748;
|
|
L_0292073C: ; // 0x292073c
|
|
/* 0292073C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 02920740 */ _t132 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920740 */ _t133 = _t132 & 0x00000001u;
|
|
/* 02920740 */ if (_t133) goto L_02920EB4; else goto L_02920744;
|
|
L_02920744: ; // 0x2920744
|
|
/* 02920744 */ goto L_02920768;
|
|
L_02920748: ; // 0x2920748
|
|
/* 02920748 */ _t134 = cpu->r[27] + 0x00000000u;
|
|
/* 02920748 */ cpu->r[0] = rbrew_read32(cpu->mem, _t134);
|
|
/* 0292074C */ cpu->r[4] = cpu->r[4] + 0x00000001u;
|
|
/* 02920750 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 02920754 */ cpu->r[27] = cpu->r[27] + cpu->r[0];
|
|
/* 02920758 */ _t135 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920758 */ _t136 = _t135 & 0x00000001u;
|
|
/* 02920758 */ if (_t136) goto L_0292075C; else goto L_02920730;
|
|
L_0292075C: ; // 0x292075c
|
|
/* 0292075C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 02920760 */ cpu->r[27] = 0x00000000u;
|
|
/* 02920764 */ _t137 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920764 */ _t138 = _t137 & 0x00000001u;
|
|
/* 02920764 */ if (_t138) goto L_02920EB4; else goto L_02920768;
|
|
L_02920768: ; // 0x2920768
|
|
/* 02920768 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0292076C */ _t139 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292076C */ _t140 = _t139 & 0x00000001u;
|
|
/* 0292076C */ if (_t140) goto L_02920EB4; else goto L_02920770;
|
|
L_02920770: ; // 0x2920770
|
|
/* 02920770 */ _t141 = cpu->r[1] + 0x00000010u;
|
|
/* 02920770 */ cpu->r[8] = rbrew_read32(cpu->mem, _t141);
|
|
/* 02920774 */ cpu->r[0] = 0x00000000u;
|
|
/* 02920778 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0xFFFFFFFFu);
|
|
/* 0292077C */ cpu->r[23] = cpu->r[0];
|
|
/* 02920780 */ _t142 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920780 */ _t143 = _t142 & 0x00000001u;
|
|
/* 02920780 */ if (_t143) goto L_02920830; else goto L_02920784;
|
|
L_02920784: ; // 0x2920784
|
|
/* 02920784 */ _t144 = cpu->r[1] + 0x00000070u;
|
|
/* 02920784 */ rbrew_write32(cpu->mem, _t144, cpu->r[26]);
|
|
/* 02920788 */ cpu->r[8] = cpu->r[5] + 0x0000000Cu;
|
|
/* 0292078C */ _t145 = cpu->r[28] + 0x0000002Cu;
|
|
/* 0292078C */ cpu->r[9] = rbrew_read32(cpu->mem, _t145);
|
|
/* 02920790 */ _t146 = cpu->r[1] + 0x00000010u;
|
|
/* 02920790 */ cpu->r[0] = rbrew_read32(cpu->mem, _t146);
|
|
/* 02920794 */ _t147 = cpu->r[28] + 0x00000030u;
|
|
/* 02920794 */ cpu->r[24] = rbrew_read32(cpu->mem, _t147);
|
|
/* 02920798 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[9]);
|
|
/* 0292079C */ _t148 = cpu->r[1] + 0x0000006Cu;
|
|
/* 0292079C */ rbrew_write32(cpu->mem, _t148, cpu->r[8]);
|
|
/* 029207A0 */ cpu->r[0] = 0x00000001u;
|
|
/* 029207A4 */ _t149 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 029207A4 */ _t150 = _t149 & 0x00000001u;
|
|
/* 029207A4 */ if (_t150) goto L_029207A8; else goto L_029207B0;
|
|
L_029207A8: ; // 0x29207a8
|
|
/* 029207A8 */ _t151 = cpu->r[1] + 0x00000008u;
|
|
/* 029207A8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t151);
|
|
/* 029207AC */ cpu->r[24] = cpu->r[24] + cpu->r[6];
|
|
L_029207B0: ; // 0x29207b0
|
|
/* 029207B0 */ _t152 = cpu->r[24] + 0x00000010u;
|
|
/* 029207B0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t152);
|
|
/* 029207B4 */ _t153 = cpu->r[10] + 0x00000014u;
|
|
/* 029207B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t153);
|
|
/* 029207B8 */ cpu->ctr = cpu->r[0];
|
|
/* 029207BC */ cpu->r[3] = cpu->r[24] + 0x0000000Cu;
|
|
/* 029207C0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 029207C4 */ _t154 = cpu->r[24] + 0x00000010u;
|
|
/* 029207C4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t154);
|
|
/* 029207C8 */ _t155 = cpu->r[11] + 0x00000014u;
|
|
/* 029207C8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t155);
|
|
/* 029207CC */ cpu->ctr = cpu->r[4];
|
|
/* 029207D0 */ cpu->r[3] = cpu->r[24] + 0x0000000Cu;
|
|
/* 029207D4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 029207D8 */ _t156 = cpu->r[1] + 0x00000070u;
|
|
/* 029207D8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t156);
|
|
/* 029207DC */ _t157 = cpu->r[6] + 0x00000014u;
|
|
/* 029207DC */ cpu->r[7] = rbrew_read32(cpu->mem, _t157);
|
|
/* 029207E0 */ cpu->ctr = cpu->r[7];
|
|
/* 029207E4 */ _t158 = cpu->r[24] + 0x0000000Cu;
|
|
/* 029207E4 */ cpu->r[22] = rbrew_read32(cpu->mem, _t158);
|
|
/* 029207E8 */ cpu->r[3] = cpu->r[1] + 0x0000006Cu;
|
|
/* 029207EC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 029207F0 */ _t159 = cpu->r[1] + 0x0000006Cu;
|
|
/* 029207F0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t159);
|
|
/* 029207F4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[22], cpu->r[4]);
|
|
/* 029207F8 */ _t160 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029207F8 */ _t161 = _t160 & 0x00000001u;
|
|
/* 029207F8 */ if (_t161) goto L_02920830; else goto L_029207FC;
|
|
L_029207FC: ; // 0x29207fc
|
|
/* 029207FC */ _t162 = cpu->r[24] + 0x0000000Cu;
|
|
/* 029207FC */ cpu->r[5] = rbrew_read32(cpu->mem, _t162);
|
|
/* 02920800 */ cpu->r[12] = cpu->r[4] + 0xFFFFFFFFu;
|
|
/* 02920804 */ cpu->ctr = cpu->r[21];
|
|
/* 02920808 */ cpu->r[5] = cpu->r[5] + 0xFFFFFFFFu;
|
|
/* 0292080C */ cpu->r[10] = cpu->r[19];
|
|
L_02920810: ; // 0x2920810
|
|
/* 02920810 */ _t163 = cpu->r[5] + 0x00000001u;
|
|
/* 02920810 */ cpu->r[0] = rbrew_read8(cpu->mem, _t163);
|
|
/* 02920810 */ cpu->r[5] = _t163;
|
|
/* 02920814 */ _t164 = cpu->r[12] + 0x00000001u;
|
|
/* 02920814 */ cpu->r[8] = rbrew_read8(cpu->mem, _t164);
|
|
/* 02920814 */ cpu->r[12] = _t164;
|
|
/* 02920818 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[8]);
|
|
/* 0292081C */ _t165 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292081C */ _t166 = _t165 & 0x00000001u;
|
|
/* 0292081C */ if (_t166) goto L_02920820; else goto L_0292082C;
|
|
L_02920820: ; // 0x2920820
|
|
/* 02920820 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[10]);
|
|
/* 02920824 */ _t167 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920824 */ _t168 = _t167 & 0x00000001u;
|
|
/* 02920824 */ if (_t168) goto L_02920830; else goto L_02920828;
|
|
L_02920828: ; // 0x2920828
|
|
/* 02920828 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02920828 */ _t169 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02920828 */ _t170 = _t169 >> (0x00000002u & 31u);
|
|
/* 02920828 */ _t171 = _t170 & 0x00000001u;
|
|
/* 02920828 */ if (_t171) goto L_02920810; else goto L_0292082C;
|
|
L_0292082C: ; // 0x292082c
|
|
/* 0292082C */ cpu->r[23] = 0x00000001u;
|
|
L_02920830: ; // 0x2920830
|
|
/* 02920830 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u);
|
|
/* 02920834 */ _t172 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920834 */ _t173 = _t172 & 0x00000001u;
|
|
/* 02920834 */ if (_t173) goto L_02920838; else goto L_02920EB4;
|
|
L_02920838: ; // 0x2920838
|
|
/* 02920838 */ _t174 = cpu->r[28] + 0x00000008u;
|
|
/* 02920838 */ cpu->r[10] = rbrew_read32(cpu->mem, _t174);
|
|
/* 0292083C */ cpu->r[9] = cpu->r[27] + 0x0000000Cu;
|
|
/* 02920840 */ _t175 = cpu->r[1] + 0x00000038u;
|
|
/* 02920840 */ rbrew_write32(cpu->mem, _t175, cpu->r[26]);
|
|
/* 02920844 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], cpu->r[10]);
|
|
/* 02920848 */ _t176 = cpu->r[28] + 0x00000010u;
|
|
/* 02920848 */ cpu->r[11] = rbrew_read32(cpu->mem, _t176);
|
|
/* 0292084C */ cpu->r[27] = 0x00000000u;
|
|
/* 02920850 */ _t177 = cpu->r[28] + 0x0000000Cu;
|
|
/* 02920850 */ cpu->r[6] = rbrew_read32(cpu->mem, _t177);
|
|
/* 02920854 */ _t178 = cpu->r[1] + 0x00000034u;
|
|
/* 02920854 */ rbrew_write32(cpu->mem, _t178, cpu->r[9]);
|
|
/* 02920858 */ _t179 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02920858 */ _t180 = _t179 & 0x00000001u;
|
|
/* 02920858 */ if (_t180) goto L_0292085C; else goto L_02920874;
|
|
L_0292085C: ; // 0x292085c
|
|
/* 0292085C */ _t181 = cpu->r[6] + cpu->r[14];
|
|
/* 0292085C */ cpu->r[8] = rbrew_read16(cpu->mem, _t181);
|
|
/* 02920860 */ _t182 = cpu->r[28] + 0x00000014u;
|
|
/* 02920860 */ cpu->r[3] = rbrew_read32(cpu->mem, _t182);
|
|
/* 02920864 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[11]);
|
|
/* 02920868 */ _t183 = cpu->r[1] + 0x00000068u;
|
|
/* 02920868 */ rbrew_write32(cpu->mem, _t183, cpu->r[3]);
|
|
/* 0292086C */ _t184 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0292086C */ _t185 = _t184 & 0x00000001u;
|
|
/* 0292086C */ if (_t185) goto L_02920870; else goto L_02920888;
|
|
L_02920870: ; // 0x2920870
|
|
/* 02920870 */ goto L_029208A4;
|
|
L_02920874: ; // 0x2920874
|
|
/* 02920874 */ _t186 = cpu->r[6] + 0x00000000u;
|
|
/* 02920874 */ cpu->r[8] = rbrew_read16(cpu->mem, _t186);
|
|
/* 02920878 */ _t187 = cpu->r[28] + 0x00000014u;
|
|
/* 02920878 */ cpu->r[3] = rbrew_read32(cpu->mem, _t187);
|
|
/* 0292087C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[11]);
|
|
/* 02920880 */ _t188 = cpu->r[1] + 0x00000068u;
|
|
/* 02920880 */ rbrew_write32(cpu->mem, _t188, cpu->r[3]);
|
|
/* 02920884 */ _t189 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02920884 */ _t190 = _t189 & 0x00000001u;
|
|
/* 02920884 */ if (_t190) goto L_029208A4; else goto L_02920888;
|
|
L_02920888: ; // 0x2920888
|
|
/* 02920888 */ cpu->r[9] = rbrew_rlwinm(cpu->r[8], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0292088C */ _t191 = cpu->r[1] + 0x00000068u;
|
|
/* 0292088C */ cpu->r[0] = rbrew_read32(cpu->mem, _t191);
|
|
/* 02920890 */ cpu->r[23] = cpu->r[3] + cpu->r[9];
|
|
/* 02920894 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], cpu->r[10]);
|
|
/* 02920898 */ _t192 = cpu->r[1] + 0x00000064u;
|
|
/* 02920898 */ rbrew_write32(cpu->mem, _t192, cpu->r[23]);
|
|
/* 0292089C */ _t193 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0292089C */ _t194 = _t193 & 0x00000001u;
|
|
/* 0292089C */ if (_t194) goto L_029208A0; else goto L_029208CC;
|
|
L_029208A0: ; // 0x29208a0
|
|
/* 029208A0 */ goto L_029208BC;
|
|
L_029208A4: ; // 0x29208a4
|
|
/* 029208A4 */ cpu->r[12] = rbrew_rlwinm(cpu->r[11], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 029208A8 */ _t195 = cpu->r[1] + 0x00000068u;
|
|
/* 029208A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t195);
|
|
/* 029208AC */ cpu->r[23] = cpu->r[3] + cpu->r[12];
|
|
/* 029208B0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], cpu->r[10]);
|
|
/* 029208B4 */ _t196 = cpu->r[1] + 0x00000064u;
|
|
/* 029208B4 */ rbrew_write32(cpu->mem, _t196, cpu->r[23]);
|
|
/* 029208B8 */ _t197 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 029208B8 */ _t198 = _t197 & 0x00000001u;
|
|
/* 029208B8 */ if (_t198) goto L_029208BC; else goto L_029208CC;
|
|
L_029208BC: ; // 0x29208bc
|
|
/* 029208BC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], cpu->r[10]);
|
|
/* 029208C0 */ _t199 = cpu->r[6] + cpu->r[14];
|
|
/* 029208C0 */ cpu->r[9] = rbrew_read16(cpu->mem, _t199);
|
|
/* 029208C4 */ _t200 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 029208C4 */ _t201 = _t200 & 0x00000001u;
|
|
/* 029208C4 */ if (_t201) goto L_029208D8; else goto L_029208C8;
|
|
L_029208C8: ; // 0x29208c8
|
|
/* 029208C8 */ goto L_029208DC;
|
|
L_029208CC: ; // 0x29208cc
|
|
/* 029208CC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], cpu->r[10]);
|
|
/* 029208D0 */ _t202 = cpu->r[6] + 0x00000000u;
|
|
/* 029208D0 */ cpu->r[9] = rbrew_read16(cpu->mem, _t202);
|
|
/* 029208D4 */ _t203 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 029208D4 */ _t204 = _t203 & 0x00000001u;
|
|
/* 029208D4 */ if (_t204) goto L_029208D8; else goto L_029208DC;
|
|
L_029208D8: ; // 0x29208d8
|
|
/* 029208D8 */ cpu->r[6] = cpu->r[6] + cpu->r[14];
|
|
L_029208DC: ; // 0x29208dc
|
|
/* 029208DC */ _t205 = cpu->r[6] + 0x00000002u;
|
|
/* 029208DC */ cpu->r[4] = rbrew_read16(cpu->mem, _t205);
|
|
/* 029208E0 */ cpu->r[4] = cpu->r[9] + cpu->r[4];
|
|
/* 029208E4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[11]);
|
|
/* 029208E8 */ _t206 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 029208E8 */ _t207 = _t206 & 0x00000001u;
|
|
/* 029208E8 */ if (_t207) goto L_02920904; else goto L_029208EC;
|
|
L_029208EC: ; // 0x29208ec
|
|
/* 029208EC */ cpu->r[5] = rbrew_rlwinm(cpu->r[4], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 029208F0 */ cpu->r[8] = cpu->r[3] + cpu->r[5];
|
|
/* 029208F4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[23], cpu->r[8]);
|
|
/* 029208F8 */ _t208 = cpu->r[1] + 0x00000078u;
|
|
/* 029208F8 */ rbrew_write32(cpu->mem, _t208, cpu->r[8]);
|
|
/* 029208FC */ _t209 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029208FC */ _t210 = _t209 & 0x00000001u;
|
|
/* 029208FC */ if (_t210) goto L_02920B14; else goto L_02920900;
|
|
L_02920900: ; // 0x2920900
|
|
/* 02920900 */ goto L_02920918;
|
|
L_02920904: ; // 0x2920904
|
|
/* 02920904 */ cpu->r[6] = rbrew_rlwinm(cpu->r[11], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02920908 */ cpu->r[8] = cpu->r[3] + cpu->r[6];
|
|
/* 0292090C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[23], cpu->r[8]);
|
|
/* 02920910 */ _t211 = cpu->r[1] + 0x00000078u;
|
|
/* 02920910 */ rbrew_write32(cpu->mem, _t211, cpu->r[8]);
|
|
/* 02920914 */ _t212 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920914 */ _t213 = _t212 & 0x00000001u;
|
|
/* 02920914 */ if (_t213) goto L_02920B14; else goto L_02920918;
|
|
L_02920918: ; // 0x2920918
|
|
/* 02920918 */ cpu->r[22] = cpu->r[8];
|
|
/* 0292091C */ cpu->r[20] = cpu->r[0];
|
|
L_02920920: ; // 0x2920920
|
|
/* 02920920 */ _t214 = cpu->r[23] + 0x00000000u;
|
|
/* 02920920 */ cpu->r[24] = rbrew_read32(cpu->mem, _t214);
|
|
/* 02920924 */ _t215 = cpu->r[24] + 0x0000006Eu;
|
|
/* 02920924 */ cpu->r[7] = rbrew_read8(cpu->mem, _t215);
|
|
/* 02920928 */ cpu->r[8] = rbrew_rlwinm(cpu->r[7], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02920928 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0292092C */ _t216 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292092C */ _t217 = _t216 & 0x00000001u;
|
|
/* 0292092C */ if (_t217) goto L_02920B08; else goto L_02920930;
|
|
L_02920930: ; // 0x2920930
|
|
/* 02920930 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02920934 */ _t218 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920934 */ _t219 = _t218 & 0x00000001u;
|
|
/* 02920934 */ if (_t219) goto L_02920938; else goto L_02920A68;
|
|
L_02920938: ; // 0x2920938
|
|
/* 02920938 */ cpu->r[0] = cpu->r[23] - cpu->r[20];
|
|
/* 0292093C */ cpu->r[18] = rbrew_rlwinm(cpu->r[0], 0x0000001Eu, 0x00000002u, 0x0000001Fu);
|
|
/* 02920940 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[18]);
|
|
/* 02920944 */ _t220 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02920944 */ _t221 = _t220 & 0x00000001u;
|
|
/* 02920944 */ if (_t221) goto L_02920948; else goto L_02920A68;
|
|
L_02920948: ; // 0x2920948
|
|
/* 02920948 */ _t222 = cpu->r[24] + 0x00000018u;
|
|
/* 02920948 */ cpu->r[9] = rbrew_read32(cpu->mem, _t222);
|
|
/* 0292094C */ _t223 = cpu->r[9] + 0x0000008Cu;
|
|
/* 0292094C */ cpu->r[0] = rbrew_read32(cpu->mem, _t223);
|
|
/* 02920950 */ cpu->ctr = cpu->r[0];
|
|
/* 02920954 */ cpu->r[3] = cpu->r[24];
|
|
/* 02920958 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0292095C */ cpu->r[17] = cpu->r[3];
|
|
/* 02920960 */ Gambit_fn_0294D9E4(cpu);
|
|
/* 02920964 */ _t224 = cpu->r[17] + 0x00000004u;
|
|
/* 02920964 */ cpu->r[10] = rbrew_read32(cpu->mem, _t224);
|
|
/* 02920968 */ _t225 = cpu->r[10] + 0x00000014u;
|
|
/* 02920968 */ cpu->r[0] = rbrew_read32(cpu->mem, _t225);
|
|
/* 0292096C */ cpu->r[16] = cpu->r[3];
|
|
/* 02920970 */ cpu->ctr = cpu->r[0];
|
|
/* 02920974 */ cpu->r[3] = cpu->r[17];
|
|
/* 02920978 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0292097C */ _t226 = cpu->r[17] + 0x00000004u;
|
|
/* 0292097C */ cpu->r[11] = rbrew_read32(cpu->mem, _t226);
|
|
/* 02920980 */ _t227 = cpu->r[11] + 0x00000014u;
|
|
/* 02920980 */ cpu->r[12] = rbrew_read32(cpu->mem, _t227);
|
|
/* 02920984 */ cpu->ctr = cpu->r[12];
|
|
/* 02920988 */ cpu->r[3] = cpu->r[17];
|
|
/* 0292098C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02920990 */ _t228 = cpu->r[16] + 0x00000004u;
|
|
/* 02920990 */ cpu->r[4] = rbrew_read32(cpu->mem, _t228);
|
|
/* 02920994 */ _t229 = cpu->r[4] + 0x00000014u;
|
|
/* 02920994 */ cpu->r[5] = rbrew_read32(cpu->mem, _t229);
|
|
/* 02920998 */ cpu->ctr = cpu->r[5];
|
|
/* 0292099C */ _t230 = cpu->r[17] + 0x00000000u;
|
|
/* 0292099C */ cpu->r[15] = rbrew_read32(cpu->mem, _t230);
|
|
/* 029209A0 */ cpu->r[3] = cpu->r[16];
|
|
/* 029209A4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 029209A8 */ _t231 = cpu->r[16] + 0x00000000u;
|
|
/* 029209A8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t231);
|
|
/* 029209AC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[15], cpu->r[7]);
|
|
/* 029209B0 */ _t232 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029209B0 */ _t233 = _t232 & 0x00000001u;
|
|
/* 029209B0 */ if (_t233) goto L_02920A60; else goto L_029209B4;
|
|
L_029209B4: ; // 0x29209b4
|
|
/* 029209B4 */ _t234 = cpu->r[16] + 0x00000000u;
|
|
/* 029209B4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t234);
|
|
/* 029209B8 */ cpu->ctr = cpu->r[21];
|
|
/* 029209BC */ _t235 = cpu->r[17] + 0x00000000u;
|
|
/* 029209BC */ cpu->r[5] = rbrew_read32(cpu->mem, _t235);
|
|
/* 029209C0 */ cpu->r[8] = cpu->r[8] + 0xFFFFFFFFu;
|
|
/* 029209C4 */ cpu->r[0] = cpu->r[19];
|
|
L_029209C8: ; // 0x29209c8
|
|
/* 029209C8 */ _t236 = cpu->r[5] + 0x00000000u;
|
|
/* 029209C8 */ cpu->r[7] = rbrew_read8(cpu->mem, _t236);
|
|
/* 029209CC */ _t237 = cpu->r[8] + 0x00000001u;
|
|
/* 029209CC */ cpu->r[9] = rbrew_read8(cpu->mem, _t237);
|
|
/* 029209CC */ cpu->r[8] = _t237;
|
|
/* 029209D0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[9]);
|
|
/* 029209D4 */ _t238 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029209D4 */ _t239 = _t238 & 0x00000001u;
|
|
/* 029209D4 */ if (_t239) goto L_029209D8; else goto L_02920A68;
|
|
L_029209D8: ; // 0x29209d8
|
|
/* 029209D8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[0]);
|
|
/* 029209DC */ _t240 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029209DC */ _t241 = _t240 & 0x00000001u;
|
|
/* 029209DC */ if (_t241) goto L_02920A60; else goto L_029209E0;
|
|
L_029209E0: ; // 0x29209e0
|
|
/* 029209E0 */ cpu->r[5] = cpu->r[5] + 0x00000001u;
|
|
/* 029209E4 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 029209E4 */ _t242 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 029209E4 */ _t243 = _t242 >> (0x00000002u & 31u);
|
|
/* 029209E4 */ _t244 = _t243 & 0x00000001u;
|
|
/* 029209E4 */ if (_t244) goto L_029209C8; else goto L_029209E8;
|
|
L_029209E8: ; // 0x29209e8
|
|
/* 029209E8 */ _t245 = cpu->r[24] + 0x00000018u;
|
|
/* 029209E8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t245);
|
|
/* 029209EC */ _t246 = cpu->r[10] + 0x00000084u;
|
|
/* 029209EC */ cpu->r[11] = rbrew_read32(cpu->mem, _t246);
|
|
/* 029209F0 */ cpu->ctr = cpu->r[11];
|
|
/* 029209F4 */ cpu->r[3] = cpu->r[24];
|
|
/* 029209F8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 029209FC */ _t247 = cpu->r[3] + 0x00000004u;
|
|
/* 029209FC */ cpu->r[5] = rbrew_read32(cpu->mem, _t247);
|
|
/* 02920A00 */ _t248 = cpu->r[5] + 0x00000014u;
|
|
/* 02920A00 */ cpu->r[7] = rbrew_read32(cpu->mem, _t248);
|
|
/* 02920A04 */ cpu->ctr = cpu->r[7];
|
|
/* 02920A08 */ cpu->r[17] = cpu->r[3];
|
|
/* 02920A0C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02920A10 */ _t249 = cpu->r[17] + 0x00000004u;
|
|
/* 02920A10 */ cpu->r[9] = rbrew_read32(cpu->mem, _t249);
|
|
/* 02920A14 */ _t250 = cpu->r[9] + 0x00000014u;
|
|
/* 02920A14 */ cpu->r[11] = rbrew_read32(cpu->mem, _t250);
|
|
/* 02920A18 */ cpu->ctr = cpu->r[11];
|
|
/* 02920A1C */ cpu->r[3] = cpu->r[17];
|
|
/* 02920A20 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02920A24 */ _t251 = cpu->r[1] + 0x00000038u;
|
|
/* 02920A24 */ cpu->r[12] = rbrew_read32(cpu->mem, _t251);
|
|
/* 02920A28 */ _t252 = cpu->r[12] + 0x00000014u;
|
|
/* 02920A28 */ cpu->r[6] = rbrew_read32(cpu->mem, _t252);
|
|
/* 02920A2C */ cpu->ctr = cpu->r[6];
|
|
/* 02920A30 */ _t253 = cpu->r[17] + 0x00000000u;
|
|
/* 02920A30 */ cpu->r[18] = rbrew_read32(cpu->mem, _t253);
|
|
/* 02920A34 */ cpu->r[3] = cpu->r[1] + 0x00000034u;
|
|
/* 02920A38 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02920A3C */ _t254 = cpu->r[1] + 0x00000034u;
|
|
/* 02920A3C */ cpu->r[8] = rbrew_read32(cpu->mem, _t254);
|
|
/* 02920A40 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[18], cpu->r[8]);
|
|
/* 02920A44 */ _t255 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920A44 */ _t256 = _t255 & 0x00000001u;
|
|
/* 02920A44 */ if (_t256) goto L_02920A48; else goto L_02920AC8;
|
|
L_02920A48: ; // 0x2920a48
|
|
/* 02920A48 */ _t257 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02920A48 */ cpu->r[5] = rbrew_read32(cpu->mem, _t257);
|
|
/* 02920A4C */ _t258 = cpu->r[1] + 0x00000014u;
|
|
/* 02920A4C */ cpu->r[4] = rbrew_read32(cpu->mem, _t258);
|
|
/* 02920A50 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[5]);
|
|
/* 02920A54 */ cpu->r[27] = cpu->r[24];
|
|
/* 02920A58 */ _t259 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920A58 */ _t260 = _t259 & 0x00000001u;
|
|
/* 02920A58 */ if (_t260) goto L_02920A5C; else goto L_02920B78;
|
|
L_02920A5C: ; // 0x2920a5c
|
|
/* 02920A5C */ goto L_02920B2C;
|
|
L_02920A60: ; // 0x2920a60
|
|
/* 02920A60 */ cpu->r[30] = cpu->r[18];
|
|
/* 02920A64 */ cpu->r[27] = cpu->r[24];
|
|
L_02920A68: ; // 0x2920a68
|
|
/* 02920A68 */ _t261 = cpu->r[24] + 0x00000018u;
|
|
/* 02920A68 */ cpu->r[10] = rbrew_read32(cpu->mem, _t261);
|
|
/* 02920A6C */ _t262 = cpu->r[10] + 0x00000084u;
|
|
/* 02920A6C */ cpu->r[11] = rbrew_read32(cpu->mem, _t262);
|
|
/* 02920A70 */ cpu->ctr = cpu->r[11];
|
|
/* 02920A74 */ cpu->r[3] = cpu->r[24];
|
|
/* 02920A78 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02920A7C */ _t263 = cpu->r[3] + 0x00000004u;
|
|
/* 02920A7C */ cpu->r[5] = rbrew_read32(cpu->mem, _t263);
|
|
/* 02920A80 */ _t264 = cpu->r[5] + 0x00000014u;
|
|
/* 02920A80 */ cpu->r[7] = rbrew_read32(cpu->mem, _t264);
|
|
/* 02920A84 */ cpu->ctr = cpu->r[7];
|
|
/* 02920A88 */ cpu->r[17] = cpu->r[3];
|
|
/* 02920A8C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02920A90 */ _t265 = cpu->r[17] + 0x00000004u;
|
|
/* 02920A90 */ cpu->r[9] = rbrew_read32(cpu->mem, _t265);
|
|
/* 02920A94 */ _t266 = cpu->r[9] + 0x00000014u;
|
|
/* 02920A94 */ cpu->r[11] = rbrew_read32(cpu->mem, _t266);
|
|
/* 02920A98 */ cpu->ctr = cpu->r[11];
|
|
/* 02920A9C */ cpu->r[3] = cpu->r[17];
|
|
/* 02920AA0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02920AA4 */ _t267 = cpu->r[1] + 0x00000038u;
|
|
/* 02920AA4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t267);
|
|
/* 02920AA8 */ _t268 = cpu->r[12] + 0x00000014u;
|
|
/* 02920AA8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t268);
|
|
/* 02920AAC */ cpu->ctr = cpu->r[6];
|
|
/* 02920AB0 */ _t269 = cpu->r[17] + 0x00000000u;
|
|
/* 02920AB0 */ cpu->r[18] = rbrew_read32(cpu->mem, _t269);
|
|
/* 02920AB4 */ cpu->r[3] = cpu->r[1] + 0x00000034u;
|
|
/* 02920AB8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02920ABC */ _t270 = cpu->r[1] + 0x00000034u;
|
|
/* 02920ABC */ cpu->r[8] = rbrew_read32(cpu->mem, _t270);
|
|
/* 02920AC0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[18], cpu->r[8]);
|
|
/* 02920AC4 */ _t271 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920AC4 */ _t272 = _t271 & 0x00000001u;
|
|
/* 02920AC4 */ if (_t272) goto L_02920A48; else goto L_02920AC8;
|
|
L_02920AC8: ; // 0x2920ac8
|
|
/* 02920AC8 */ _t273 = cpu->r[17] + 0x00000000u;
|
|
/* 02920AC8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t273);
|
|
/* 02920ACC */ cpu->ctr = cpu->r[21];
|
|
/* 02920AD0 */ cpu->r[12] = cpu->r[19];
|
|
/* 02920AD4 */ cpu->r[10] = cpu->r[8] + 0xFFFFFFFFu;
|
|
L_02920AD8: ; // 0x2920ad8
|
|
/* 02920AD8 */ _t274 = cpu->r[6] + 0x00000000u;
|
|
/* 02920AD8 */ cpu->r[9] = rbrew_read8(cpu->mem, _t274);
|
|
/* 02920ADC */ _t275 = cpu->r[10] + 0x00000001u;
|
|
/* 02920ADC */ cpu->r[7] = rbrew_read8(cpu->mem, _t275);
|
|
/* 02920ADC */ cpu->r[10] = _t275;
|
|
/* 02920AE0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[7]);
|
|
/* 02920AE4 */ _t276 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920AE4 */ _t277 = _t276 & 0x00000001u;
|
|
/* 02920AE4 */ if (_t277) goto L_02920AE8; else goto L_02920B08;
|
|
L_02920AE8: ; // 0x2920ae8
|
|
/* 02920AE8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[12]);
|
|
/* 02920AEC */ _t278 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920AEC */ _t279 = _t278 & 0x00000001u;
|
|
/* 02920AEC */ if (_t279) goto L_02920A48; else goto L_02920AF0;
|
|
L_02920AF0: ; // 0x2920af0
|
|
/* 02920AF0 */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 02920AF4 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02920AF4 */ _t280 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02920AF4 */ _t281 = _t280 >> (0x00000002u & 31u);
|
|
/* 02920AF4 */ _t282 = _t281 & 0x00000001u;
|
|
/* 02920AF4 */ if (_t282) goto L_02920AD8; else goto L_02920AF8;
|
|
L_02920AF8: ; // 0x2920af8
|
|
/* 02920AF8 */ cpu->r[23] = cpu->r[23] + 0x00000004u;
|
|
/* 02920AFC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[23], cpu->r[22]);
|
|
/* 02920B00 */ _t283 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920B00 */ _t284 = _t283 & 0x00000001u;
|
|
/* 02920B00 */ if (_t284) goto L_02920B04; else goto L_02920920;
|
|
L_02920B04: ; // 0x2920b04
|
|
/* 02920B04 */ goto L_02920B14;
|
|
L_02920B08: ; // 0x2920b08
|
|
/* 02920B08 */ cpu->r[23] = cpu->r[23] + 0x00000004u;
|
|
/* 02920B0C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[23], cpu->r[22]);
|
|
/* 02920B10 */ _t285 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920B10 */ _t286 = _t285 & 0x00000001u;
|
|
/* 02920B10 */ if (_t286) goto L_02920B14; else goto L_02920920;
|
|
L_02920B14: ; // 0x2920b14
|
|
/* 02920B14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02920B18 */ _t287 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920B18 */ _t288 = _t287 & 0x00000001u;
|
|
/* 02920B18 */ if (_t288) goto L_02920EB4; else goto L_02920B1C;
|
|
L_02920B1C: ; // 0x2920b1c
|
|
/* 02920B1C */ _t289 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02920B1C */ cpu->r[5] = rbrew_read32(cpu->mem, _t289);
|
|
/* 02920B20 */ _t290 = cpu->r[1] + 0x00000014u;
|
|
/* 02920B20 */ cpu->r[4] = rbrew_read32(cpu->mem, _t290);
|
|
/* 02920B24 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[5]);
|
|
/* 02920B28 */ _t291 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920B28 */ _t292 = _t291 & 0x00000001u;
|
|
/* 02920B28 */ if (_t292) goto L_02920B2C; else goto L_02920B78;
|
|
L_02920B2C: ; // 0x2920b2c
|
|
/* 02920B2C */ cpu->r[4] = 0x00000000u;
|
|
/* 02920B30 */ cpu->r[3] = cpu->r[27];
|
|
/* 02920B34 */ cpu->r[5] = cpu->r[1] + 0x00000098u;
|
|
/* 02920B38 */ _t293 = cpu->r[1] + 0x00000090u;
|
|
/* 02920B38 */ rbrew_write32(cpu->mem, _t293, cpu->r[4]);
|
|
/* 02920B3C */ cpu->f[1] = cpu->f[30];
|
|
/* 02920B40 */ cpu->r[6] = cpu->r[1] + 0x0000009Cu;
|
|
/* 02920B44 */ _t294 = cpu->r[1] + 0x00000098u;
|
|
/* 02920B44 */ rbrew_write32(cpu->mem, _t294, cpu->r[31]);
|
|
/* 02920B48 */ cpu->r[7] = cpu->r[4];
|
|
/* 02920B4C */ _t295 = cpu->r[1] + 0x0000009Cu;
|
|
/* 02920B4C */ rbrew_write32(cpu->mem, _t295, cpu->r[4]);
|
|
/* 02920B50 */ Gambit_fn_02953174(cpu);
|
|
/* 02920B54 */ _t296 = cpu->r[31] + 0x00000000u;
|
|
/* 02920B54 */ cpu->r[5] = rbrew_read32(cpu->mem, _t296);
|
|
/* 02920B58 */ _t297 = cpu->r[1] + 0x00000030u;
|
|
/* 02920B58 */ cpu->r[6] = rbrew_read32(cpu->mem, _t297);
|
|
/* 02920B5C */ _t298 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02920B5C */ cpu->r[4] = rbrew_read32(cpu->mem, _t298);
|
|
/* 02920B60 */ cpu->r[0] = cpu->r[6] + 0x00000001u;
|
|
/* 02920B64 */ cpu->r[31] = cpu->r[31] + cpu->r[5];
|
|
/* 02920B68 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[4]);
|
|
/* 02920B6C */ _t299 = cpu->r[1] + 0x00000030u;
|
|
/* 02920B6C */ rbrew_write32(cpu->mem, _t299, cpu->r[0]);
|
|
/* 02920B70 */ _t300 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920B70 */ _t301 = _t300 & 0x00000001u;
|
|
/* 02920B70 */ if (_t301) goto L_02920B74; else goto L_029206C0;
|
|
L_02920B74: ; // 0x2920b74
|
|
/* 02920B74 */ goto L_02920ED4;
|
|
L_02920B78: ; // 0x2920b78
|
|
/* 02920B78 */ _t302 = cpu->r[5] + 0x00000014u;
|
|
/* 02920B78 */ cpu->r[7] = rbrew_read32(cpu->mem, _t302);
|
|
/* 02920B7C */ cpu->r[11] = 0x00000000u;
|
|
/* 02920B80 */ cpu->r[6] = cpu->r[5] + cpu->r[7];
|
|
/* 02920B84 */ _t303 = cpu->r[1] + 0x00000044u;
|
|
/* 02920B84 */ rbrew_write32(cpu->mem, _t303, cpu->r[11]);
|
|
/* 02920B88 */ cpu->r[0] = cpu->r[6] + 0x00000018u;
|
|
/* 02920B8C */ _t304 = cpu->r[1] + 0x00000050u;
|
|
/* 02920B8C */ rbrew_write32(cpu->mem, _t304, cpu->r[0]);
|
|
/* 02920B90 */ _t305 = cpu->r[6] + 0x00000020u;
|
|
/* 02920B90 */ cpu->r[6] = rbrew_read32(cpu->mem, _t305);
|
|
/* 02920B94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 02920B98 */ _t306 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920B98 */ _t307 = _t306 & 0x00000001u;
|
|
/* 02920B98 */ if (_t307) goto L_02920BCC; else goto L_02920B9C;
|
|
L_02920B9C: ; // 0x2920b9c
|
|
/* 02920B9C */ cpu->r[4] = 0x00000000u;
|
|
/* 02920BA0 */ cpu->r[3] = cpu->r[1] + 0x00000050u;
|
|
/* 02920BA4 */ Gambit_fn_0295BF44(cpu);
|
|
/* 02920BA8 */ _t308 = cpu->r[1] + 0x00000050u;
|
|
/* 02920BA8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t308);
|
|
/* 02920BAC */ _t309 = cpu->r[1] + 0x00000058u;
|
|
/* 02920BAC */ rbrew_write32(cpu->mem, _t309, cpu->r[3]);
|
|
/* 02920BB0 */ cpu->r[23] = 0x00000000u;
|
|
/* 02920BB4 */ _t310 = cpu->r[1] + 0x00000054u;
|
|
/* 02920BB4 */ rbrew_write32(cpu->mem, _t310, cpu->r[23]);
|
|
/* 02920BB8 */ _t311 = cpu->r[8] + 0x00000008u;
|
|
/* 02920BB8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t311);
|
|
/* 02920BBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 02920BC0 */ cpu->r[24] = cpu->r[3];
|
|
/* 02920BC4 */ _t312 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920BC4 */ _t313 = _t312 & 0x00000001u;
|
|
/* 02920BC4 */ if (_t313) goto L_02920BC8; else goto L_02920BE4;
|
|
L_02920BC8: ; // 0x2920bc8
|
|
/* 02920BC8 */ goto L_02920C08;
|
|
L_02920BCC: ; // 0x2920bcc
|
|
/* 02920BCC */ cpu->r[23] = 0x00000000u;
|
|
/* 02920BD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 02920BD4 */ _t314 = cpu->r[1] + 0x00000054u;
|
|
/* 02920BD4 */ rbrew_write32(cpu->mem, _t314, cpu->r[23]);
|
|
/* 02920BD8 */ cpu->r[24] = cpu->r[23];
|
|
/* 02920BDC */ _t315 = cpu->r[1] + 0x00000058u;
|
|
/* 02920BDC */ rbrew_write32(cpu->mem, _t315, cpu->r[23]);
|
|
/* 02920BE0 */ _t316 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920BE0 */ _t317 = _t316 & 0x00000001u;
|
|
/* 02920BE0 */ if (_t317) goto L_02920C08; else goto L_02920BE4;
|
|
L_02920BE4: ; // 0x2920be4
|
|
/* 02920BE4 */ cpu->r[3] = cpu->r[1] + 0x00000050u;
|
|
/* 02920BE8 */ cpu->r[4] = cpu->r[6] + 0xFFFFFFFFu;
|
|
/* 02920BEC */ Gambit_fn_0295BF44(cpu);
|
|
/* 02920BF0 */ _t318 = cpu->r[1] + 0x00000050u;
|
|
/* 02920BF0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t318);
|
|
/* 02920BF4 */ _t319 = cpu->r[8] + 0x00000008u;
|
|
/* 02920BF4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t319);
|
|
/* 02920BF8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[23], cpu->r[0]);
|
|
/* 02920BFC */ _t320 = cpu->r[1] + 0x00000080u;
|
|
/* 02920BFC */ rbrew_write32(cpu->mem, _t320, cpu->r[0]);
|
|
/* 02920C00 */ _t321 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920C00 */ _t322 = _t321 & 0x00000001u;
|
|
/* 02920C00 */ if (_t322) goto L_02920C50; else goto L_02920C04;
|
|
L_02920C04: ; // 0x2920c04
|
|
/* 02920C04 */ goto L_02920C18;
|
|
L_02920C08: ; // 0x2920c08
|
|
/* 02920C08 */ cpu->r[0] = 0x00000000u;
|
|
/* 02920C0C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[23], 0x00000000u);
|
|
/* 02920C10 */ _t323 = cpu->r[1] + 0x00000080u;
|
|
/* 02920C10 */ rbrew_write32(cpu->mem, _t323, cpu->r[0]);
|
|
/* 02920C14 */ _t324 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920C14 */ _t325 = _t324 & 0x00000001u;
|
|
/* 02920C14 */ if (_t325) goto L_02920C50; else goto L_02920C18;
|
|
L_02920C18: ; // 0x2920c18
|
|
/* 02920C18 */ _t326 = cpu->r[1] + 0x00000074u;
|
|
/* 02920C18 */ cpu->r[12] = rbrew_read32(cpu->mem, _t326);
|
|
/* 02920C1C */ _t327 = cpu->r[12] + 0x00000004u;
|
|
/* 02920C1C */ cpu->r[12] = rbrew_read32(cpu->mem, _t327);
|
|
L_02920C20: ; // 0x2920c20
|
|
/* 02920C20 */ _t328 = cpu->r[24] + 0x00000004u;
|
|
/* 02920C20 */ cpu->r[9] = rbrew_read32(cpu->mem, _t328);
|
|
/* 02920C24 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[9]);
|
|
/* 02920C28 */ _t329 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920C28 */ _t330 = _t329 & 0x00000001u;
|
|
/* 02920C28 */ if (_t330) goto L_02920C2C; else goto L_02920C3C;
|
|
L_02920C2C: ; // 0x2920c2c
|
|
/* 02920C2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 02920C30 */ _t331 = cpu->r[1] + 0x00000044u;
|
|
/* 02920C30 */ rbrew_write32(cpu->mem, _t331, cpu->r[24]);
|
|
/* 02920C34 */ _t332 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920C34 */ _t333 = _t332 & 0x00000001u;
|
|
/* 02920C34 */ if (_t333) goto L_02920C38; else goto L_02920CA8;
|
|
L_02920C38: ; // 0x2920c38
|
|
/* 02920C38 */ goto L_02920C5C;
|
|
L_02920C3C: ; // 0x2920c3c
|
|
/* 02920C3C */ _t334 = cpu->r[24] + 0x00000000u;
|
|
/* 02920C3C */ cpu->r[10] = rbrew_read32(cpu->mem, _t334);
|
|
/* 02920C40 */ cpu->r[23] = cpu->r[23] + 0x00000001u;
|
|
/* 02920C44 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[23], cpu->r[0]);
|
|
/* 02920C48 */ cpu->r[24] = cpu->r[24] + cpu->r[10];
|
|
/* 02920C4C */ _t335 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920C4C */ _t336 = _t335 & 0x00000001u;
|
|
/* 02920C4C */ if (_t336) goto L_02920C50; else goto L_02920C20;
|
|
L_02920C50: ; // 0x2920c50
|
|
/* 02920C50 */ _t337 = cpu->r[1] + 0x00000044u;
|
|
/* 02920C50 */ cpu->r[24] = rbrew_read32(cpu->mem, _t337);
|
|
/* 02920C54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 02920C58 */ _t338 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920C58 */ _t339 = _t338 & 0x00000001u;
|
|
/* 02920C58 */ if (_t339) goto L_02920C5C; else goto L_02920CA8;
|
|
L_02920C5C: ; // 0x2920c5c
|
|
/* 02920C5C */ cpu->r[4] = 0x00000000u;
|
|
/* 02920C60 */ cpu->r[3] = cpu->r[27];
|
|
/* 02920C64 */ cpu->r[5] = cpu->r[1] + 0x000000A0u;
|
|
/* 02920C68 */ _t340 = cpu->r[1] + 0x00000094u;
|
|
/* 02920C68 */ rbrew_write32(cpu->mem, _t340, cpu->r[4]);
|
|
/* 02920C6C */ cpu->f[1] = cpu->f[30];
|
|
/* 02920C70 */ cpu->r[6] = cpu->r[1] + 0x000000A4u;
|
|
/* 02920C74 */ _t341 = cpu->r[1] + 0x000000A0u;
|
|
/* 02920C74 */ rbrew_write32(cpu->mem, _t341, cpu->r[31]);
|
|
/* 02920C78 */ cpu->r[7] = cpu->r[4];
|
|
/* 02920C7C */ _t342 = cpu->r[1] + 0x000000A4u;
|
|
/* 02920C7C */ rbrew_write32(cpu->mem, _t342, cpu->r[4]);
|
|
/* 02920C80 */ Gambit_fn_02953174(cpu);
|
|
/* 02920C84 */ _t343 = cpu->r[31] + 0x00000000u;
|
|
/* 02920C84 */ cpu->r[5] = rbrew_read32(cpu->mem, _t343);
|
|
/* 02920C88 */ _t344 = cpu->r[1] + 0x00000030u;
|
|
/* 02920C88 */ cpu->r[6] = rbrew_read32(cpu->mem, _t344);
|
|
/* 02920C8C */ _t345 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02920C8C */ cpu->r[4] = rbrew_read32(cpu->mem, _t345);
|
|
/* 02920C90 */ cpu->r[0] = cpu->r[6] + 0x00000001u;
|
|
/* 02920C94 */ cpu->r[31] = cpu->r[31] + cpu->r[5];
|
|
/* 02920C98 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[4]);
|
|
/* 02920C9C */ _t346 = cpu->r[1] + 0x00000030u;
|
|
/* 02920C9C */ rbrew_write32(cpu->mem, _t346, cpu->r[0]);
|
|
/* 02920CA0 */ _t347 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920CA0 */ _t348 = _t347 & 0x00000001u;
|
|
/* 02920CA0 */ if (_t348) goto L_02920CA4; else goto L_029206C0;
|
|
L_02920CA4: ; // 0x2920ca4
|
|
/* 02920CA4 */ goto L_02920ED4;
|
|
L_02920CA8: ; // 0x2920ca8
|
|
/* 02920CA8 */ _t349 = cpu->r[24] + 0x0000000Cu;
|
|
/* 02920CA8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t349);
|
|
/* 02920CAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02920CB0 */ _t350 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920CB0 */ _t351 = _t350 & 0x00000001u;
|
|
/* 02920CB0 */ if (_t351) goto L_02920CE4; else goto L_02920CB4;
|
|
L_02920CB4: ; // 0x2920cb4
|
|
/* 02920CB4 */ cpu->r[4] = 0x00000000u;
|
|
/* 02920CB8 */ cpu->r[3] = cpu->r[1] + 0x00000044u;
|
|
/* 02920CBC */ Gambit_fn_0295BF74(cpu);
|
|
/* 02920CC0 */ _t352 = cpu->r[1] + 0x00000044u;
|
|
/* 02920CC0 */ cpu->r[24] = rbrew_read32(cpu->mem, _t352);
|
|
/* 02920CC4 */ _t353 = cpu->r[1] + 0x00000060u;
|
|
/* 02920CC4 */ rbrew_write32(cpu->mem, _t353, cpu->r[3]);
|
|
/* 02920CC8 */ cpu->r[22] = 0x00000000u;
|
|
/* 02920CCC */ _t354 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02920CCC */ rbrew_write32(cpu->mem, _t354, cpu->r[22]);
|
|
/* 02920CD0 */ _t355 = cpu->r[24] + 0x0000000Cu;
|
|
/* 02920CD0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t355);
|
|
/* 02920CD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02920CD8 */ cpu->r[20] = cpu->r[3];
|
|
/* 02920CDC */ _t356 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920CDC */ _t357 = _t356 & 0x00000001u;
|
|
/* 02920CDC */ if (_t357) goto L_02920CE0; else goto L_02920CFC;
|
|
L_02920CE0: ; // 0x2920ce0
|
|
/* 02920CE0 */ goto L_02920D20;
|
|
L_02920CE4: ; // 0x2920ce4
|
|
/* 02920CE4 */ cpu->r[22] = 0x00000000u;
|
|
/* 02920CE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02920CEC */ _t358 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02920CEC */ rbrew_write32(cpu->mem, _t358, cpu->r[22]);
|
|
/* 02920CF0 */ cpu->r[20] = cpu->r[22];
|
|
/* 02920CF4 */ _t359 = cpu->r[1] + 0x00000060u;
|
|
/* 02920CF4 */ rbrew_write32(cpu->mem, _t359, cpu->r[22]);
|
|
/* 02920CF8 */ _t360 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920CF8 */ _t361 = _t360 & 0x00000001u;
|
|
/* 02920CF8 */ if (_t361) goto L_02920D20; else goto L_02920CFC;
|
|
L_02920CFC: ; // 0x2920cfc
|
|
/* 02920CFC */ cpu->r[3] = cpu->r[1] + 0x00000044u;
|
|
/* 02920D00 */ cpu->r[4] = cpu->r[8] + 0xFFFFFFFFu;
|
|
/* 02920D04 */ Gambit_fn_0295BF74(cpu);
|
|
/* 02920D08 */ _t362 = cpu->r[1] + 0x00000044u;
|
|
/* 02920D08 */ cpu->r[6] = rbrew_read32(cpu->mem, _t362);
|
|
/* 02920D0C */ _t363 = cpu->r[6] + 0x0000000Cu;
|
|
/* 02920D0C */ cpu->r[9] = rbrew_read32(cpu->mem, _t363);
|
|
/* 02920D10 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[22], cpu->r[9]);
|
|
/* 02920D14 */ _t364 = cpu->r[1] + 0x00000088u;
|
|
/* 02920D14 */ rbrew_write32(cpu->mem, _t364, cpu->r[9]);
|
|
/* 02920D18 */ _t365 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920D18 */ _t366 = _t365 & 0x00000001u;
|
|
/* 02920D18 */ if (_t366) goto L_02920EB4; else goto L_02920D1C;
|
|
L_02920D1C: ; // 0x2920d1c
|
|
/* 02920D1C */ goto L_02920D30;
|
|
L_02920D20: ; // 0x2920d20
|
|
/* 02920D20 */ cpu->r[9] = 0x00000000u;
|
|
/* 02920D24 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[22], 0x00000000u);
|
|
/* 02920D28 */ _t367 = cpu->r[1] + 0x00000088u;
|
|
/* 02920D28 */ rbrew_write32(cpu->mem, _t367, cpu->r[9]);
|
|
/* 02920D2C */ _t368 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920D2C */ _t369 = _t368 & 0x00000001u;
|
|
/* 02920D2C */ if (_t369) goto L_02920EB4; else goto L_02920D30;
|
|
L_02920D30: ; // 0x2920d30
|
|
/* 02920D30 */ cpu->r[24] = cpu->r[21];
|
|
/* 02920D34 */ cpu->r[18] = cpu->r[9];
|
|
/* 02920D38 */ cpu->r[23] = cpu->r[19];
|
|
L_02920D3C: ; // 0x2920d3c
|
|
/* 02920D3C */ _t370 = cpu->r[20] + 0x00000004u;
|
|
/* 02920D3C */ cpu->r[12] = rbrew_read32(cpu->mem, _t370);
|
|
/* 02920D40 */ cpu->r[10] = 0x00000000u;
|
|
/* 02920D44 */ cpu->r[11] = cpu->r[20] + 0x00000010u;
|
|
/* 02920D48 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[12]);
|
|
/* 02920D4C */ _t371 = cpu->r[29] + 0x00000000u;
|
|
/* 02920D4C */ cpu->r[6] = rbrew_read32(cpu->mem, _t371);
|
|
/* 02920D50 */ _t372 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920D50 */ _t373 = _t372 & 0x00000001u;
|
|
/* 02920D50 */ if (_t373) goto L_02920E14; else goto L_02920D54;
|
|
L_02920D54: ; // 0x2920d54
|
|
/* 02920D54 */ cpu->r[0] = cpu->r[12];
|
|
L_02920D58: ; // 0x2920d58
|
|
/* 02920D58 */ _t374 = cpu->r[11] + 0x00000008u;
|
|
/* 02920D58 */ cpu->r[7] = rbrew_read32(cpu->mem, _t374);
|
|
/* 02920D5C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[7]);
|
|
/* 02920D60 */ _t375 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920D60 */ _t376 = _t375 & 0x00000001u;
|
|
/* 02920D60 */ if (_t376) goto L_02920D64; else goto L_02920E00;
|
|
L_02920D64: ; // 0x2920d64
|
|
/* 02920D64 */ _t377 = cpu->r[1] + 0x00000038u;
|
|
/* 02920D64 */ cpu->r[9] = rbrew_read32(cpu->mem, _t377);
|
|
/* 02920D68 */ cpu->r[7] = cpu->r[11] + 0x0000000Cu;
|
|
/* 02920D6C */ _t378 = cpu->r[1] + 0x00000040u;
|
|
/* 02920D6C */ rbrew_write32(cpu->mem, _t378, cpu->r[26]);
|
|
/* 02920D70 */ _t379 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02920D70 */ rbrew_write32(cpu->mem, _t379, cpu->r[7]);
|
|
/* 02920D74 */ _t380 = cpu->r[9] + 0x00000014u;
|
|
/* 02920D74 */ cpu->r[10] = rbrew_read32(cpu->mem, _t380);
|
|
/* 02920D78 */ cpu->ctr = cpu->r[10];
|
|
/* 02920D7C */ cpu->r[3] = cpu->r[1] + 0x00000034u;
|
|
/* 02920D80 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02920D84 */ _t381 = cpu->r[1] + 0x00000038u;
|
|
/* 02920D84 */ cpu->r[11] = rbrew_read32(cpu->mem, _t381);
|
|
/* 02920D88 */ _t382 = cpu->r[11] + 0x00000014u;
|
|
/* 02920D88 */ cpu->r[4] = rbrew_read32(cpu->mem, _t382);
|
|
/* 02920D8C */ cpu->ctr = cpu->r[4];
|
|
/* 02920D90 */ cpu->r[3] = cpu->r[1] + 0x00000034u;
|
|
/* 02920D94 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02920D98 */ _t383 = cpu->r[1] + 0x00000040u;
|
|
/* 02920D98 */ cpu->r[5] = rbrew_read32(cpu->mem, _t383);
|
|
/* 02920D9C */ _t384 = cpu->r[5] + 0x00000014u;
|
|
/* 02920D9C */ cpu->r[6] = rbrew_read32(cpu->mem, _t384);
|
|
/* 02920DA0 */ cpu->ctr = cpu->r[6];
|
|
/* 02920DA4 */ _t385 = cpu->r[1] + 0x00000034u;
|
|
/* 02920DA4 */ cpu->r[17] = rbrew_read32(cpu->mem, _t385);
|
|
/* 02920DA8 */ cpu->r[3] = cpu->r[1] + 0x0000003Cu;
|
|
/* 02920DAC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02920DB0 */ _t386 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02920DB0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t386);
|
|
/* 02920DB4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[17], cpu->r[7]);
|
|
/* 02920DB8 */ _t387 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920DB8 */ _t388 = _t387 & 0x00000001u;
|
|
/* 02920DB8 */ if (_t388) goto L_02920DBC; else goto L_02920E6C;
|
|
L_02920DBC: ; // 0x2920dbc
|
|
/* 02920DBC */ _t389 = cpu->r[1] + 0x00000048u;
|
|
/* 02920DBC */ rbrew_write32(cpu->mem, _t389, cpu->r[31]);
|
|
/* 02920DC0 */ cpu->r[3] = cpu->r[27];
|
|
/* 02920DC4 */ cpu->f[1] = cpu->f[29];
|
|
/* 02920DC8 */ cpu->r[6] = 0x00000000u;
|
|
/* 02920DCC */ cpu->r[4] = cpu->r[1] + 0x00000048u;
|
|
/* 02920DD0 */ cpu->r[5] = cpu->r[1] + 0x0000004Cu;
|
|
/* 02920DD4 */ _t390 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02920DD4 */ rbrew_write32(cpu->mem, _t390, cpu->r[20]);
|
|
/* 02920DD8 */ Gambit_fn_029535D4(cpu);
|
|
/* 02920DDC */ _t391 = cpu->r[31] + 0x00000000u;
|
|
/* 02920DDC */ cpu->r[5] = rbrew_read32(cpu->mem, _t391);
|
|
/* 02920DE0 */ _t392 = cpu->r[1] + 0x00000030u;
|
|
/* 02920DE0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t392);
|
|
/* 02920DE4 */ _t393 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02920DE4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t393);
|
|
/* 02920DE8 */ cpu->r[0] = cpu->r[6] + 0x00000001u;
|
|
/* 02920DEC */ cpu->r[31] = cpu->r[31] + cpu->r[5];
|
|
/* 02920DF0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[4]);
|
|
/* 02920DF4 */ _t394 = cpu->r[1] + 0x00000030u;
|
|
/* 02920DF4 */ rbrew_write32(cpu->mem, _t394, cpu->r[0]);
|
|
/* 02920DF8 */ _t395 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920DF8 */ _t396 = _t395 & 0x00000001u;
|
|
/* 02920DF8 */ if (_t396) goto L_02920DFC; else goto L_029206C0;
|
|
L_02920DFC: ; // 0x2920dfc
|
|
/* 02920DFC */ goto L_02920ED4;
|
|
L_02920E00: ; // 0x2920e00
|
|
/* 02920E00 */ _t397 = cpu->r[11] + 0x00000000u;
|
|
/* 02920E00 */ cpu->r[8] = rbrew_read32(cpu->mem, _t397);
|
|
/* 02920E04 */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 02920E08 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[0]);
|
|
/* 02920E0C */ cpu->r[11] = cpu->r[11] + cpu->r[8];
|
|
/* 02920E10 */ _t398 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920E10 */ _t399 = _t398 & 0x00000001u;
|
|
/* 02920E10 */ if (_t399) goto L_02920E14; else goto L_02920D58;
|
|
L_02920E14: ; // 0x2920e14
|
|
/* 02920E14 */ _t400 = cpu->r[1] + 0x00000038u;
|
|
/* 02920E14 */ cpu->r[9] = rbrew_read32(cpu->mem, _t400);
|
|
/* 02920E18 */ cpu->r[7] = 0x0000000Cu;
|
|
/* 02920E1C */ _t401 = cpu->r[1] + 0x00000040u;
|
|
/* 02920E1C */ rbrew_write32(cpu->mem, _t401, cpu->r[26]);
|
|
/* 02920E20 */ _t402 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02920E20 */ rbrew_write32(cpu->mem, _t402, cpu->r[7]);
|
|
/* 02920E24 */ _t403 = cpu->r[9] + 0x00000014u;
|
|
/* 02920E24 */ cpu->r[10] = rbrew_read32(cpu->mem, _t403);
|
|
/* 02920E28 */ cpu->ctr = cpu->r[10];
|
|
/* 02920E2C */ cpu->r[3] = cpu->r[1] + 0x00000034u;
|
|
/* 02920E30 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02920E34 */ _t404 = cpu->r[1] + 0x00000038u;
|
|
/* 02920E34 */ cpu->r[11] = rbrew_read32(cpu->mem, _t404);
|
|
/* 02920E38 */ _t405 = cpu->r[11] + 0x00000014u;
|
|
/* 02920E38 */ cpu->r[4] = rbrew_read32(cpu->mem, _t405);
|
|
/* 02920E3C */ cpu->ctr = cpu->r[4];
|
|
/* 02920E40 */ cpu->r[3] = cpu->r[1] + 0x00000034u;
|
|
/* 02920E44 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02920E48 */ _t406 = cpu->r[1] + 0x00000040u;
|
|
/* 02920E48 */ cpu->r[5] = rbrew_read32(cpu->mem, _t406);
|
|
/* 02920E4C */ _t407 = cpu->r[5] + 0x00000014u;
|
|
/* 02920E4C */ cpu->r[6] = rbrew_read32(cpu->mem, _t407);
|
|
/* 02920E50 */ cpu->ctr = cpu->r[6];
|
|
/* 02920E54 */ _t408 = cpu->r[1] + 0x00000034u;
|
|
/* 02920E54 */ cpu->r[17] = rbrew_read32(cpu->mem, _t408);
|
|
/* 02920E58 */ cpu->r[3] = cpu->r[1] + 0x0000003Cu;
|
|
/* 02920E5C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02920E60 */ _t409 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02920E60 */ cpu->r[7] = rbrew_read32(cpu->mem, _t409);
|
|
/* 02920E64 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[17], cpu->r[7]);
|
|
/* 02920E68 */ _t410 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920E68 */ _t411 = _t410 & 0x00000001u;
|
|
/* 02920E68 */ if (_t411) goto L_02920DBC; else goto L_02920E6C;
|
|
L_02920E6C: ; // 0x2920e6c
|
|
/* 02920E6C */ _t412 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02920E6C */ cpu->r[7] = rbrew_read32(cpu->mem, _t412);
|
|
/* 02920E70 */ cpu->ctr = cpu->r[24];
|
|
/* 02920E74 */ _t413 = cpu->r[1] + 0x00000034u;
|
|
/* 02920E74 */ cpu->r[4] = rbrew_read32(cpu->mem, _t413);
|
|
/* 02920E78 */ cpu->r[7] = cpu->r[7] + 0xFFFFFFFFu;
|
|
/* 02920E7C */ cpu->r[11] = cpu->r[23];
|
|
L_02920E80: ; // 0x2920e80
|
|
/* 02920E80 */ _t414 = cpu->r[4] + 0x00000000u;
|
|
/* 02920E80 */ cpu->r[0] = rbrew_read8(cpu->mem, _t414);
|
|
/* 02920E84 */ _t415 = cpu->r[7] + 0x00000001u;
|
|
/* 02920E84 */ cpu->r[8] = rbrew_read8(cpu->mem, _t415);
|
|
/* 02920E84 */ cpu->r[7] = _t415;
|
|
/* 02920E88 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[8]);
|
|
/* 02920E8C */ _t416 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920E8C */ _t417 = _t416 & 0x00000001u;
|
|
/* 02920E8C */ if (_t417) goto L_02920E90; else goto L_02920EA0;
|
|
L_02920E90: ; // 0x2920e90
|
|
/* 02920E90 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[11]);
|
|
/* 02920E94 */ _t418 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920E94 */ _t419 = _t418 & 0x00000001u;
|
|
/* 02920E94 */ if (_t419) goto L_02920DBC; else goto L_02920E98;
|
|
L_02920E98: ; // 0x2920e98
|
|
/* 02920E98 */ cpu->r[4] = cpu->r[4] + 0x00000001u;
|
|
/* 02920E9C */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02920E9C */ _t420 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02920E9C */ _t421 = _t420 >> (0x00000002u & 31u);
|
|
/* 02920E9C */ _t422 = _t421 & 0x00000001u;
|
|
/* 02920E9C */ if (_t422) goto L_02920E80; else goto L_02920EA0;
|
|
L_02920EA0: ; // 0x2920ea0
|
|
/* 02920EA0 */ _t423 = cpu->r[20] + 0x00000000u;
|
|
/* 02920EA0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t423);
|
|
/* 02920EA4 */ cpu->r[22] = cpu->r[22] + 0x00000001u;
|
|
/* 02920EA8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[22], cpu->r[18]);
|
|
/* 02920EAC */ cpu->r[20] = cpu->r[20] + cpu->r[4];
|
|
/* 02920EB0 */ _t424 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920EB0 */ _t425 = _t424 & 0x00000001u;
|
|
/* 02920EB0 */ if (_t425) goto L_02920EB4; else goto L_02920D3C;
|
|
L_02920EB4: ; // 0x2920eb4
|
|
/* 02920EB4 */ _t426 = cpu->r[31] + 0x00000000u;
|
|
/* 02920EB4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t426);
|
|
/* 02920EB8 */ _t427 = cpu->r[1] + 0x00000030u;
|
|
/* 02920EB8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t427);
|
|
/* 02920EBC */ _t428 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02920EBC */ cpu->r[4] = rbrew_read32(cpu->mem, _t428);
|
|
/* 02920EC0 */ cpu->r[0] = cpu->r[6] + 0x00000001u;
|
|
/* 02920EC4 */ cpu->r[31] = cpu->r[31] + cpu->r[5];
|
|
/* 02920EC8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[4]);
|
|
/* 02920ECC */ _t429 = cpu->r[1] + 0x00000030u;
|
|
/* 02920ECC */ rbrew_write32(cpu->mem, _t429, cpu->r[0]);
|
|
/* 02920ED0 */ _t430 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920ED0 */ _t431 = _t430 & 0x00000001u;
|
|
/* 02920ED0 */ if (_t431) goto L_02920ED4; else goto L_029206C0;
|
|
L_02920ED4: ; // 0x2920ed4
|
|
/* 02920ED4 */ _t432 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02920ED4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t432);
|
|
/* 02920ED8 */ _t433 = cpu->r[1] + 0x00000018u;
|
|
/* 02920ED8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t433);
|
|
/* 02920EDC */ cpu->r[9] = cpu->r[11] + 0x00000001u;
|
|
/* 02920EE0 */ _t434 = cpu->r[1] + 0x00000028u;
|
|
/* 02920EE0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t434);
|
|
/* 02920EE4 */ _t435 = cpu->r[12] + 0x00000000u;
|
|
/* 02920EE4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t435);
|
|
/* 02920EE8 */ _t436 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02920EE8 */ rbrew_write32(cpu->mem, _t436, cpu->r[9]);
|
|
/* 02920EEC */ cpu->r[6] = cpu->r[12] + cpu->r[6];
|
|
/* 02920EF0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[10]);
|
|
/* 02920EF4 */ _t437 = cpu->r[1] + 0x00000018u;
|
|
/* 02920EF4 */ rbrew_write32(cpu->mem, _t437, cpu->r[6]);
|
|
/* 02920EF8 */ _t438 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920EF8 */ _t439 = _t438 & 0x00000001u;
|
|
/* 02920EF8 */ if (_t439) goto L_02920EFC; else goto L_029205D4;
|
|
L_02920EFC: ; // 0x2920efc
|
|
/* 02920EFC */ goto L_02920F38;
|
|
L_02920F00: ; // 0x2920f00
|
|
/* 02920F00 */ _t440 = cpu->r[4] + 0x00000014u;
|
|
/* 02920F00 */ cpu->r[4] = rbrew_read32(cpu->mem, _t440);
|
|
/* 02920F04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 02920F08 */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 02920F0C */ _t441 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920F0C */ _t442 = _t441 & 0x00000001u;
|
|
/* 02920F0C */ if (_t442) goto L_02920F10; else goto L_02920600;
|
|
L_02920F10: ; // 0x2920f10
|
|
/* 02920F10 */ _t443 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02920F10 */ cpu->r[11] = rbrew_read32(cpu->mem, _t443);
|
|
/* 02920F14 */ _t444 = cpu->r[1] + 0x00000018u;
|
|
/* 02920F14 */ cpu->r[12] = rbrew_read32(cpu->mem, _t444);
|
|
/* 02920F18 */ cpu->r[9] = cpu->r[11] + 0x00000001u;
|
|
/* 02920F1C */ _t445 = cpu->r[1] + 0x00000028u;
|
|
/* 02920F1C */ cpu->r[10] = rbrew_read32(cpu->mem, _t445);
|
|
/* 02920F20 */ _t446 = cpu->r[12] + 0x00000000u;
|
|
/* 02920F20 */ cpu->r[6] = rbrew_read32(cpu->mem, _t446);
|
|
/* 02920F24 */ _t447 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02920F24 */ rbrew_write32(cpu->mem, _t447, cpu->r[9]);
|
|
/* 02920F28 */ cpu->r[6] = cpu->r[12] + cpu->r[6];
|
|
/* 02920F2C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[10]);
|
|
/* 02920F30 */ _t448 = cpu->r[1] + 0x00000018u;
|
|
/* 02920F30 */ rbrew_write32(cpu->mem, _t448, cpu->r[6]);
|
|
/* 02920F34 */ _t449 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920F34 */ _t450 = _t449 & 0x00000001u;
|
|
/* 02920F34 */ if (_t450) goto L_02920F38; else goto L_029205D4;
|
|
L_02920F38: ; // 0x2920f38
|
|
/* 02920F38 */ _t451 = cpu->r[28] + 0x000001E4u;
|
|
/* 02920F38 */ cpu->r[7] = rbrew_read32(cpu->mem, _t451);
|
|
/* 02920F3C */ _t452 = cpu->r[28] + 0x00000054u;
|
|
/* 02920F3C */ cpu->r[9] = rbrew_read16(cpu->mem, _t452);
|
|
/* 02920F40 */ cpu->r[7] = cpu->r[7] | 0x00000001u;
|
|
/* 02920F44 */ _t453 = cpu->r[1] + 0x00000020u;
|
|
/* 02920F44 */ cpu->r[3] = rbrew_read32(cpu->mem, _t453);
|
|
/* 02920F48 */ cpu->r[9] = cpu->r[9] | 0x00000001u;
|
|
/* 02920F4C */ _t454 = cpu->r[28] + 0x000001E4u;
|
|
/* 02920F4C */ rbrew_write32(cpu->mem, _t454, cpu->r[7]);
|
|
/* 02920F50 */ _t455 = cpu->r[28] + 0x00000054u;
|
|
/* 02920F50 */ rbrew_write16(cpu->mem, _t455, (uint16_t)cpu->r[9]);
|
|
/* 02920F54 */ Gambit_fn_02837030(cpu);
|
|
/* 02920F58 */ /* nop */
|
|
/* 02920F5C */ _t456 = cpu->r[1] + 0x00000128u;
|
|
/* 02920F5C */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t456);
|
|
/* 02920F60 */ _t457 = cpu->r[1] + 0x00000138u;
|
|
/* 02920F60 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t457);
|
|
/* 02920F64 */ _t458 = cpu->r[1] + 0x00000120u;
|
|
/* 02920F64 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t458);
|
|
/* 02920F68 */ _t459 = cpu->r[1] + 0x00000148u;
|
|
/* 02920F68 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t459);
|
|
/* 02920F6C */ _t460 = cpu->r[1] + 0x00000130u;
|
|
/* 02920F6C */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t460);
|
|
/* 02920F70 */ _t461 = cpu->r[1] + 0x00000140u;
|
|
/* 02920F70 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t461);
|
|
/* 02920F74 */ _t462 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02920F74 */ _t463 = _t462 & 0x00000001u;
|
|
/* 02920F74 */ if (_t463) goto L_02920F78; // else: addr-0 trap, fall-through
|
|
L_02920F78: ; // 0x2920f78
|
|
/* 02920F78 */ _t464 = cpu->r[1] + 0x00000154u;
|
|
/* 02920F78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t464);
|
|
/* 02920F7C */ cpu->lr = cpu->r[0];
|
|
/* 02920F80 */ cpu->r[1] = cpu->r[1] + 0x00000150u;
|
|
/* 02920F84 */ return;
|
|
}
|
|
|
|
// fn_02920F88 @ 0x2920f88
|
|
void Gambit_fn_02920F88(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_02920F88: ; // 0x2920f88
|
|
/* 02920F88 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFA8u;
|
|
/* 02920F8C */ goto L_02921A78;
|
|
L_02921A78: ; // 0x2921a78
|
|
/* 02921A78 */ cpu->r[0] = cpu->lr;
|
|
/* 02921A7C */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 02921A7C */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 02921A80 */ cpu->r[12] = 0x10140000u;
|
|
/* 02921A84 */ _t1 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02921A84 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 02921A84 */ cpu->r[1] = _t1;
|
|
/* 02921A88 */ _t2 = cpu->r[4] + 0x00000000u;
|
|
/* 02921A88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02921A8C */ cpu->r[6] = 0xFFFFFFFFu;
|
|
/* 02921A90 */ _t3 = cpu->r[12] + 0x00002B08u;
|
|
/* 02921A90 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 02921A94 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02921A98 */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 02921A98 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02921A9C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02921AA0 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02921AA0 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02921AA4 */ Gambit_fn_029203C8(cpu);
|
|
/* 02921AA8 */ _t6 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02921AA8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02921AAC */ cpu->lr = cpu->r[0];
|
|
/* 02921AB0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02921AB4 */ return;
|
|
}
|
|
|
|
// fn_02920F90 @ 0x2920f90
|
|
void Gambit_fn_02920F90(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59;
|
|
|
|
L_02920F90: ; // 0x2920f90
|
|
/* 02920F90 */ cpu->r[0] = cpu->lr;
|
|
/* 02920F94 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02920F94 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02920F94 */ cpu->r[1] = _t0;
|
|
/* 02920F98 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02920F98 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02920F9C */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 02920F9C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02920FA0 */ cpu->r[31] = cpu->r[3];
|
|
/* 02920FA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02920FA4 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02920FA4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02920FA8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920FA8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02920FA8 */ if (_t5) goto L_02920FAC; else goto L_02920FBC;
|
|
L_02920FAC: ; // 0x2920fac
|
|
/* 02920FAC */ cpu->r[3] = 0x00000338u;
|
|
/* 02920FB0 */ Gambit_fn_02801A78(cpu);
|
|
/* 02920FB4 */ cpu->r[31] = cpu->r[3];
|
|
/* 02920FB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02920FB8 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920FB8 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02920FB8 */ if (_t7) goto L_0292111C; else goto L_02920FBC;
|
|
L_02920FBC: ; // 0x2920fbc
|
|
/* 02920FBC */ cpu->r[3] = cpu->r[31];
|
|
/* 02920FC0 */ Gambit_fn_0291F280(cpu);
|
|
/* 02920FC4 */ cpu->r[3] = cpu->r[31] + 0x0000001Cu;
|
|
/* 02920FC8 */ Gambit_fn_0294E540(cpu);
|
|
/* 02920FCC */ cpu->r[10] = 0x10140000u;
|
|
/* 02920FD0 */ cpu->r[3] = cpu->r[31] + 0x00000058u;
|
|
/* 02920FD4 */ cpu->r[30] = 0x00000000u;
|
|
/* 02920FD8 */ cpu->r[10] = cpu->r[10] + 0x00002A10u;
|
|
/* 02920FDC */ cpu->r[12] = 0x10140000u;
|
|
/* 02920FE0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02920FE4 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02920FE4 */ rbrew_write32(cpu->mem, _t8, cpu->r[10]);
|
|
/* 02920FE8 */ cpu->r[12] = cpu->r[12] + 0x00002B20u;
|
|
/* 02920FEC */ cpu->r[5] = cpu->r[30];
|
|
/* 02920FF0 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 02920FF0 */ rbrew_write32(cpu->mem, _t9, cpu->r[12]);
|
|
/* 02920FF4 */ Gambit_fn_0295166C(cpu);
|
|
/* 02920FF8 */ cpu->r[12] = 0x10140000u;
|
|
/* 02920FFC */ cpu->r[0] = 0x10140000u;
|
|
/* 02921000 */ cpu->r[12] = cpu->r[12] + 0x00002B6Cu;
|
|
/* 02921004 */ cpu->r[0] = cpu->r[0] + 0x00002C04u;
|
|
/* 02921008 */ _t10 = cpu->r[31] + 0x00000018u;
|
|
/* 02921008 */ rbrew_write32(cpu->mem, _t10, cpu->r[12]);
|
|
/* 0292100C */ cpu->r[9] = 0x10140000u;
|
|
/* 02921010 */ _t11 = cpu->r[31] + 0x00000078u;
|
|
/* 02921010 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02921014 */ cpu->r[9] = cpu->r[9] + 0x00002BC4u;
|
|
/* 02921018 */ cpu->r[3] = cpu->r[31] + 0x000001E4u;
|
|
/* 02921018 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0292101C */ _t12 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0292101C */ rbrew_write32(cpu->mem, _t12, cpu->r[9]);
|
|
/* 02921020 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921020 */ _t14 = _t13 & 0x00000001u;
|
|
/* 02921020 */ if (_t14) goto L_02921024; else goto L_02921034;
|
|
L_02921024: ; // 0x2921024
|
|
/* 02921024 */ cpu->r[3] = 0x00000004u;
|
|
/* 02921028 */ Gambit_fn_02801A78(cpu);
|
|
/* 0292102C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02921030 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921030 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02921030 */ if (_t16) goto L_02921038; else goto L_02921034;
|
|
L_02921034: ; // 0x2921034
|
|
/* 02921034 */ _t17 = cpu->r[3] + 0x00000000u;
|
|
/* 02921034 */ rbrew_write32(cpu->mem, _t17, cpu->r[30]);
|
|
L_02921038: ; // 0x2921038
|
|
/* 02921038 */ cpu->r[3] = cpu->r[31] + 0x000001E8u;
|
|
/* 02921038 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0292103C */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292103C */ _t19 = _t18 & 0x00000001u;
|
|
/* 0292103C */ if (_t19) goto L_02921040; else goto L_02921050;
|
|
L_02921040: ; // 0x2921040
|
|
/* 02921040 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02921044 */ Gambit_fn_02801A78(cpu);
|
|
/* 02921048 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0292104C */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292104C */ _t21 = _t20 & 0x00000001u;
|
|
/* 0292104C */ if (_t21) goto L_02921074; else goto L_02921050;
|
|
L_02921050: ; // 0x2921050
|
|
/* 02921050 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02921054 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921054 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02921054 */ if (_t23) goto L_02921058; else goto L_02921068;
|
|
L_02921058: ; // 0x2921058
|
|
/* 02921058 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0292105C */ Gambit_fn_02801A78(cpu);
|
|
/* 02921060 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02921064 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921064 */ _t25 = _t24 & 0x00000001u;
|
|
/* 02921064 */ if (_t25) goto L_02921074; else goto L_02921068;
|
|
L_02921068: ; // 0x2921068
|
|
/* 02921068 */ _t26 = cpu->r[3] + 0x00000004u;
|
|
/* 02921068 */ rbrew_write32(cpu->mem, _t26, cpu->r[30]);
|
|
/* 0292106C */ _t27 = cpu->r[3] + 0x00000000u;
|
|
/* 0292106C */ rbrew_write32(cpu->mem, _t27, cpu->r[30]);
|
|
/* 02921070 */ _t28 = cpu->r[3] + 0x00000008u;
|
|
/* 02921070 */ rbrew_write32(cpu->mem, _t28, cpu->r[30]);
|
|
L_02921074: ; // 0x2921074
|
|
/* 02921074 */ cpu->r[3] = cpu->r[31] + 0x000001F4u;
|
|
/* 02921074 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02921078 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921078 */ _t30 = _t29 & 0x00000001u;
|
|
/* 02921078 */ if (_t30) goto L_0292107C; else goto L_0292108C;
|
|
L_0292107C: ; // 0x292107c
|
|
/* 0292107C */ cpu->r[3] = 0x00000008u;
|
|
/* 02921080 */ Gambit_fn_02801A78(cpu);
|
|
/* 02921084 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02921088 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921088 */ _t32 = _t31 & 0x00000001u;
|
|
/* 02921088 */ if (_t32) goto L_02921094; else goto L_0292108C;
|
|
L_0292108C: ; // 0x292108c
|
|
/* 0292108C */ _t33 = cpu->r[3] + 0x00000004u;
|
|
/* 0292108C */ rbrew_write32(cpu->mem, _t33, cpu->r[30]);
|
|
/* 02921090 */ _t34 = cpu->r[3] + 0x00000000u;
|
|
/* 02921090 */ rbrew_write32(cpu->mem, _t34, cpu->r[30]);
|
|
L_02921094: ; // 0x2921094
|
|
/* 02921094 */ cpu->r[11] = 0x10140000u;
|
|
/* 02921098 */ _t35 = cpu->r[11] + 0x00002B08u;
|
|
/* 02921098 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 0292109C */ cpu->r[3] = cpu->r[31] + 0x00000200u;
|
|
/* 029210A0 */ _t36 = cpu->r[31] + 0x000001FCu;
|
|
/* 029210A0 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[0]);
|
|
/* 029210A4 */ Gambit_fn_02836EBC(cpu);
|
|
/* 029210A8 */ cpu->r[3] = cpu->r[31] + 0x0000023Cu;
|
|
/* 029210AC */ Gambit_fn_02922114(cpu);
|
|
/* 029210B0 */ cpu->r[0] = 0x00000002u;
|
|
/* 029210B4 */ cpu->r[3] = cpu->r[31] + 0x0000031Cu;
|
|
/* 029210B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 029210B8 */ _t37 = cpu->r[31] + 0x00000318u;
|
|
/* 029210B8 */ rbrew_write32(cpu->mem, _t37, cpu->r[0]);
|
|
/* 029210BC */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029210BC */ _t39 = _t38 & 0x00000001u;
|
|
/* 029210BC */ if (_t39) goto L_029210C0; else goto L_029210D0;
|
|
L_029210C0: ; // 0x29210c0
|
|
/* 029210C0 */ cpu->r[3] = 0x00000008u;
|
|
/* 029210C4 */ Gambit_fn_02801A78(cpu);
|
|
/* 029210C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 029210CC */ _t40 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029210CC */ _t41 = _t40 & 0x00000001u;
|
|
/* 029210CC */ if (_t41) goto L_029210D8; else goto L_029210D0;
|
|
L_029210D0: ; // 0x29210d0
|
|
/* 029210D0 */ _t42 = cpu->r[3] + 0x00000004u;
|
|
/* 029210D0 */ rbrew_write32(cpu->mem, _t42, cpu->r[30]);
|
|
/* 029210D4 */ _t43 = cpu->r[3] + 0x00000000u;
|
|
/* 029210D4 */ rbrew_write32(cpu->mem, _t43, cpu->r[30]);
|
|
L_029210D8: ; // 0x29210d8
|
|
/* 029210D8 */ cpu->r[3] = cpu->r[31] + 0x00000324u;
|
|
/* 029210D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 029210DC */ _t44 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029210DC */ _t45 = _t44 & 0x00000001u;
|
|
/* 029210DC */ if (_t45) goto L_029210E0; else goto L_029210F0;
|
|
L_029210E0: ; // 0x29210e0
|
|
/* 029210E0 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 029210E4 */ Gambit_fn_02801A78(cpu);
|
|
/* 029210E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 029210EC */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029210EC */ _t47 = _t46 & 0x00000001u;
|
|
/* 029210EC */ if (_t47) goto L_02921114; else goto L_029210F0;
|
|
L_029210F0: ; // 0x29210f0
|
|
/* 029210F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 029210F4 */ _t48 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029210F4 */ _t49 = _t48 & 0x00000001u;
|
|
/* 029210F4 */ if (_t49) goto L_029210F8; else goto L_02921108;
|
|
L_029210F8: ; // 0x29210f8
|
|
/* 029210F8 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 029210FC */ Gambit_fn_02801A78(cpu);
|
|
/* 02921100 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02921104 */ _t50 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921104 */ _t51 = _t50 & 0x00000001u;
|
|
/* 02921104 */ if (_t51) goto L_02921114; else goto L_02921108;
|
|
L_02921108: ; // 0x2921108
|
|
/* 02921108 */ _t52 = cpu->r[3] + 0x00000004u;
|
|
/* 02921108 */ rbrew_write32(cpu->mem, _t52, cpu->r[30]);
|
|
/* 0292110C */ _t53 = cpu->r[3] + 0x00000000u;
|
|
/* 0292110C */ rbrew_write32(cpu->mem, _t53, cpu->r[30]);
|
|
/* 02921110 */ _t54 = cpu->r[3] + 0x00000008u;
|
|
/* 02921110 */ rbrew_write32(cpu->mem, _t54, cpu->r[30]);
|
|
L_02921114: ; // 0x2921114
|
|
/* 02921114 */ _t55 = cpu->r[31] + 0x00000334u;
|
|
/* 02921114 */ rbrew_write32(cpu->mem, _t55, cpu->r[30]);
|
|
/* 02921118 */ _t56 = cpu->r[31] + 0x00000330u;
|
|
/* 02921118 */ rbrew_write32(cpu->mem, _t56, cpu->r[30]);
|
|
L_0292111C: ; // 0x292111c
|
|
/* 0292111C */ _t57 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0292111C */ cpu->r[0] = rbrew_read32(cpu->mem, _t57);
|
|
/* 02921120 */ cpu->r[3] = cpu->r[31];
|
|
/* 02921124 */ _t58 = cpu->r[1] + 0x00000014u;
|
|
/* 02921124 */ cpu->r[31] = rbrew_read32(cpu->mem, _t58);
|
|
/* 02921128 */ cpu->lr = cpu->r[0];
|
|
/* 0292112C */ _t59 = cpu->r[1] + 0x00000010u;
|
|
/* 0292112C */ cpu->r[30] = rbrew_read32(cpu->mem, _t59);
|
|
/* 02921130 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02921134 */ return;
|
|
}
|
|
|
|
// fn_02920F94 @ 0x2920f94
|
|
void Gambit_fn_02920F94(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59;
|
|
|
|
L_02920F94: ; // 0x2920f94
|
|
/* 02920F94 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02920F94 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02920F94 */ cpu->r[1] = _t0;
|
|
/* 02920F98 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02920F98 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02920F9C */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 02920F9C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02920FA0 */ cpu->r[31] = cpu->r[3];
|
|
/* 02920FA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02920FA4 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02920FA4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02920FA8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920FA8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02920FA8 */ if (_t5) goto L_02920FAC; else goto L_02920FBC;
|
|
L_02920FAC: ; // 0x2920fac
|
|
/* 02920FAC */ cpu->r[3] = 0x00000338u;
|
|
/* 02920FB0 */ Gambit_fn_02801A78(cpu);
|
|
/* 02920FB4 */ cpu->r[31] = cpu->r[3];
|
|
/* 02920FB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02920FB8 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02920FB8 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02920FB8 */ if (_t7) goto L_0292111C; else goto L_02920FBC;
|
|
L_02920FBC: ; // 0x2920fbc
|
|
/* 02920FBC */ cpu->r[3] = cpu->r[31];
|
|
/* 02920FC0 */ Gambit_fn_0291F280(cpu);
|
|
/* 02920FC4 */ cpu->r[3] = cpu->r[31] + 0x0000001Cu;
|
|
/* 02920FC8 */ Gambit_fn_0294E540(cpu);
|
|
/* 02920FCC */ cpu->r[10] = 0x10140000u;
|
|
/* 02920FD0 */ cpu->r[3] = cpu->r[31] + 0x00000058u;
|
|
/* 02920FD4 */ cpu->r[30] = 0x00000000u;
|
|
/* 02920FD8 */ cpu->r[10] = cpu->r[10] + 0x00002A10u;
|
|
/* 02920FDC */ cpu->r[12] = 0x10140000u;
|
|
/* 02920FE0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02920FE4 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02920FE4 */ rbrew_write32(cpu->mem, _t8, cpu->r[10]);
|
|
/* 02920FE8 */ cpu->r[12] = cpu->r[12] + 0x00002B20u;
|
|
/* 02920FEC */ cpu->r[5] = cpu->r[30];
|
|
/* 02920FF0 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 02920FF0 */ rbrew_write32(cpu->mem, _t9, cpu->r[12]);
|
|
/* 02920FF4 */ Gambit_fn_0295166C(cpu);
|
|
/* 02920FF8 */ cpu->r[12] = 0x10140000u;
|
|
/* 02920FFC */ cpu->r[0] = 0x10140000u;
|
|
/* 02921000 */ cpu->r[12] = cpu->r[12] + 0x00002B6Cu;
|
|
/* 02921004 */ cpu->r[0] = cpu->r[0] + 0x00002C04u;
|
|
/* 02921008 */ _t10 = cpu->r[31] + 0x00000018u;
|
|
/* 02921008 */ rbrew_write32(cpu->mem, _t10, cpu->r[12]);
|
|
/* 0292100C */ cpu->r[9] = 0x10140000u;
|
|
/* 02921010 */ _t11 = cpu->r[31] + 0x00000078u;
|
|
/* 02921010 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02921014 */ cpu->r[9] = cpu->r[9] + 0x00002BC4u;
|
|
/* 02921018 */ cpu->r[3] = cpu->r[31] + 0x000001E4u;
|
|
/* 02921018 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0292101C */ _t12 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0292101C */ rbrew_write32(cpu->mem, _t12, cpu->r[9]);
|
|
/* 02921020 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921020 */ _t14 = _t13 & 0x00000001u;
|
|
/* 02921020 */ if (_t14) goto L_02921024; else goto L_02921034;
|
|
L_02921024: ; // 0x2921024
|
|
/* 02921024 */ cpu->r[3] = 0x00000004u;
|
|
/* 02921028 */ Gambit_fn_02801A78(cpu);
|
|
/* 0292102C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02921030 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921030 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02921030 */ if (_t16) goto L_02921038; else goto L_02921034;
|
|
L_02921034: ; // 0x2921034
|
|
/* 02921034 */ _t17 = cpu->r[3] + 0x00000000u;
|
|
/* 02921034 */ rbrew_write32(cpu->mem, _t17, cpu->r[30]);
|
|
L_02921038: ; // 0x2921038
|
|
/* 02921038 */ cpu->r[3] = cpu->r[31] + 0x000001E8u;
|
|
/* 02921038 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0292103C */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292103C */ _t19 = _t18 & 0x00000001u;
|
|
/* 0292103C */ if (_t19) goto L_02921040; else goto L_02921050;
|
|
L_02921040: ; // 0x2921040
|
|
/* 02921040 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02921044 */ Gambit_fn_02801A78(cpu);
|
|
/* 02921048 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0292104C */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292104C */ _t21 = _t20 & 0x00000001u;
|
|
/* 0292104C */ if (_t21) goto L_02921074; else goto L_02921050;
|
|
L_02921050: ; // 0x2921050
|
|
/* 02921050 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02921054 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921054 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02921054 */ if (_t23) goto L_02921058; else goto L_02921068;
|
|
L_02921058: ; // 0x2921058
|
|
/* 02921058 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0292105C */ Gambit_fn_02801A78(cpu);
|
|
/* 02921060 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02921064 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921064 */ _t25 = _t24 & 0x00000001u;
|
|
/* 02921064 */ if (_t25) goto L_02921074; else goto L_02921068;
|
|
L_02921068: ; // 0x2921068
|
|
/* 02921068 */ _t26 = cpu->r[3] + 0x00000004u;
|
|
/* 02921068 */ rbrew_write32(cpu->mem, _t26, cpu->r[30]);
|
|
/* 0292106C */ _t27 = cpu->r[3] + 0x00000000u;
|
|
/* 0292106C */ rbrew_write32(cpu->mem, _t27, cpu->r[30]);
|
|
/* 02921070 */ _t28 = cpu->r[3] + 0x00000008u;
|
|
/* 02921070 */ rbrew_write32(cpu->mem, _t28, cpu->r[30]);
|
|
L_02921074: ; // 0x2921074
|
|
/* 02921074 */ cpu->r[3] = cpu->r[31] + 0x000001F4u;
|
|
/* 02921074 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02921078 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921078 */ _t30 = _t29 & 0x00000001u;
|
|
/* 02921078 */ if (_t30) goto L_0292107C; else goto L_0292108C;
|
|
L_0292107C: ; // 0x292107c
|
|
/* 0292107C */ cpu->r[3] = 0x00000008u;
|
|
/* 02921080 */ Gambit_fn_02801A78(cpu);
|
|
/* 02921084 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02921088 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921088 */ _t32 = _t31 & 0x00000001u;
|
|
/* 02921088 */ if (_t32) goto L_02921094; else goto L_0292108C;
|
|
L_0292108C: ; // 0x292108c
|
|
/* 0292108C */ _t33 = cpu->r[3] + 0x00000004u;
|
|
/* 0292108C */ rbrew_write32(cpu->mem, _t33, cpu->r[30]);
|
|
/* 02921090 */ _t34 = cpu->r[3] + 0x00000000u;
|
|
/* 02921090 */ rbrew_write32(cpu->mem, _t34, cpu->r[30]);
|
|
L_02921094: ; // 0x2921094
|
|
/* 02921094 */ cpu->r[11] = 0x10140000u;
|
|
/* 02921098 */ _t35 = cpu->r[11] + 0x00002B08u;
|
|
/* 02921098 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 0292109C */ cpu->r[3] = cpu->r[31] + 0x00000200u;
|
|
/* 029210A0 */ _t36 = cpu->r[31] + 0x000001FCu;
|
|
/* 029210A0 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[0]);
|
|
/* 029210A4 */ Gambit_fn_02836EBC(cpu);
|
|
/* 029210A8 */ cpu->r[3] = cpu->r[31] + 0x0000023Cu;
|
|
/* 029210AC */ Gambit_fn_02922114(cpu);
|
|
/* 029210B0 */ cpu->r[0] = 0x00000002u;
|
|
/* 029210B4 */ cpu->r[3] = cpu->r[31] + 0x0000031Cu;
|
|
/* 029210B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 029210B8 */ _t37 = cpu->r[31] + 0x00000318u;
|
|
/* 029210B8 */ rbrew_write32(cpu->mem, _t37, cpu->r[0]);
|
|
/* 029210BC */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029210BC */ _t39 = _t38 & 0x00000001u;
|
|
/* 029210BC */ if (_t39) goto L_029210C0; else goto L_029210D0;
|
|
L_029210C0: ; // 0x29210c0
|
|
/* 029210C0 */ cpu->r[3] = 0x00000008u;
|
|
/* 029210C4 */ Gambit_fn_02801A78(cpu);
|
|
/* 029210C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 029210CC */ _t40 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029210CC */ _t41 = _t40 & 0x00000001u;
|
|
/* 029210CC */ if (_t41) goto L_029210D8; else goto L_029210D0;
|
|
L_029210D0: ; // 0x29210d0
|
|
/* 029210D0 */ _t42 = cpu->r[3] + 0x00000004u;
|
|
/* 029210D0 */ rbrew_write32(cpu->mem, _t42, cpu->r[30]);
|
|
/* 029210D4 */ _t43 = cpu->r[3] + 0x00000000u;
|
|
/* 029210D4 */ rbrew_write32(cpu->mem, _t43, cpu->r[30]);
|
|
L_029210D8: ; // 0x29210d8
|
|
/* 029210D8 */ cpu->r[3] = cpu->r[31] + 0x00000324u;
|
|
/* 029210D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 029210DC */ _t44 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029210DC */ _t45 = _t44 & 0x00000001u;
|
|
/* 029210DC */ if (_t45) goto L_029210E0; else goto L_029210F0;
|
|
L_029210E0: ; // 0x29210e0
|
|
/* 029210E0 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 029210E4 */ Gambit_fn_02801A78(cpu);
|
|
/* 029210E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 029210EC */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029210EC */ _t47 = _t46 & 0x00000001u;
|
|
/* 029210EC */ if (_t47) goto L_02921114; else goto L_029210F0;
|
|
L_029210F0: ; // 0x29210f0
|
|
/* 029210F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 029210F4 */ _t48 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029210F4 */ _t49 = _t48 & 0x00000001u;
|
|
/* 029210F4 */ if (_t49) goto L_029210F8; else goto L_02921108;
|
|
L_029210F8: ; // 0x29210f8
|
|
/* 029210F8 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 029210FC */ Gambit_fn_02801A78(cpu);
|
|
/* 02921100 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02921104 */ _t50 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921104 */ _t51 = _t50 & 0x00000001u;
|
|
/* 02921104 */ if (_t51) goto L_02921114; else goto L_02921108;
|
|
L_02921108: ; // 0x2921108
|
|
/* 02921108 */ _t52 = cpu->r[3] + 0x00000004u;
|
|
/* 02921108 */ rbrew_write32(cpu->mem, _t52, cpu->r[30]);
|
|
/* 0292110C */ _t53 = cpu->r[3] + 0x00000000u;
|
|
/* 0292110C */ rbrew_write32(cpu->mem, _t53, cpu->r[30]);
|
|
/* 02921110 */ _t54 = cpu->r[3] + 0x00000008u;
|
|
/* 02921110 */ rbrew_write32(cpu->mem, _t54, cpu->r[30]);
|
|
L_02921114: ; // 0x2921114
|
|
/* 02921114 */ _t55 = cpu->r[31] + 0x00000334u;
|
|
/* 02921114 */ rbrew_write32(cpu->mem, _t55, cpu->r[30]);
|
|
/* 02921118 */ _t56 = cpu->r[31] + 0x00000330u;
|
|
/* 02921118 */ rbrew_write32(cpu->mem, _t56, cpu->r[30]);
|
|
L_0292111C: ; // 0x292111c
|
|
/* 0292111C */ _t57 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0292111C */ cpu->r[0] = rbrew_read32(cpu->mem, _t57);
|
|
/* 02921120 */ cpu->r[3] = cpu->r[31];
|
|
/* 02921124 */ _t58 = cpu->r[1] + 0x00000014u;
|
|
/* 02921124 */ cpu->r[31] = rbrew_read32(cpu->mem, _t58);
|
|
/* 02921128 */ cpu->lr = cpu->r[0];
|
|
/* 0292112C */ _t59 = cpu->r[1] + 0x00000010u;
|
|
/* 0292112C */ cpu->r[30] = rbrew_read32(cpu->mem, _t59);
|
|
/* 02921130 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02921134 */ return;
|
|
}
|
|
|
|
// fn_02921138 @ 0x2921138
|
|
void Gambit_fn_02921138(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_02921138: ; // 0x2921138
|
|
/* 02921138 */ cpu->r[0] = cpu->lr;
|
|
/* 0292113C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0292113C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0292113C */ cpu->r[1] = _t0;
|
|
/* 02921140 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02921140 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02921144 */ cpu->r[31] = cpu->r[3];
|
|
/* 02921144 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02921148 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02921148 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0292114C */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292114C */ _t4 = _t3 & 0x00000001u;
|
|
/* 0292114C */ if (_t4) goto L_02921150; else goto L_02921160;
|
|
L_02921150: ; // 0x2921150
|
|
/* 02921150 */ cpu->r[3] = 0x00000030u;
|
|
/* 02921154 */ Gambit_fn_02801A78(cpu);
|
|
/* 02921158 */ cpu->r[31] = cpu->r[3];
|
|
/* 02921158 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0292115C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292115C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0292115C */ if (_t6) goto L_029211B0; else goto L_02921160;
|
|
L_02921160: ; // 0x2921160
|
|
/* 02921160 */ cpu->r[3] = cpu->r[31];
|
|
/* 02921164 */ Gambit_fn_0295217C(cpu);
|
|
/* 02921168 */ cpu->r[12] = 0x10140000u;
|
|
/* 0292116C */ cpu->r[0] = 0x00000000u;
|
|
/* 02921170 */ cpu->r[11] = 0x10140000u;
|
|
/* 02921174 */ cpu->r[12] = cpu->r[12] + 0x00002A60u;
|
|
/* 02921178 */ _t7 = cpu->r[31] + 0x0000002Cu;
|
|
/* 02921178 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 0292117C */ cpu->r[11] = cpu->r[11] + 0x00002AB8u;
|
|
/* 02921180 */ _t8 = cpu->r[31] + 0x00000024u;
|
|
/* 02921180 */ rbrew_write32(cpu->mem, _t8, cpu->r[12]);
|
|
/* 02921184 */ cpu->r[12] = 0x10140000u;
|
|
/* 02921188 */ cpu->r[10] = 0x10140000u;
|
|
/* 0292118C */ _t9 = cpu->r[31] + 0x00000020u;
|
|
/* 0292118C */ rbrew_write32(cpu->mem, _t9, cpu->r[11]);
|
|
/* 02921190 */ cpu->r[12] = cpu->r[12] + 0x00002A10u;
|
|
/* 02921194 */ _t10 = cpu->r[31] + 0x00000028u;
|
|
/* 02921194 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 02921198 */ cpu->r[10] = cpu->r[10] + 0x00002B28u;
|
|
/* 0292119C */ cpu->r[3] = cpu->r[31] + 0x00000024u;
|
|
/* 029211A0 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 029211A0 */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
/* 029211A4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 029211A8 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 029211A8 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 029211AC */ Gambit_fn_028FD6EC(cpu);
|
|
L_029211B0: ; // 0x29211b0
|
|
/* 029211B0 */ _t13 = cpu->r[1] + 0x0000001Cu;
|
|
/* 029211B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 029211B4 */ cpu->r[3] = cpu->r[31];
|
|
/* 029211B8 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 029211B8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 029211BC */ cpu->lr = cpu->r[0];
|
|
/* 029211C0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 029211C4 */ return;
|
|
}
|
|
|
|
// fn_0292113C @ 0x292113c
|
|
void Gambit_fn_0292113C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_0292113C: ; // 0x292113c
|
|
/* 0292113C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0292113C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0292113C */ cpu->r[1] = _t0;
|
|
/* 02921140 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02921140 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02921144 */ cpu->r[31] = cpu->r[3];
|
|
/* 02921144 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02921148 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02921148 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0292114C */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292114C */ _t4 = _t3 & 0x00000001u;
|
|
/* 0292114C */ if (_t4) goto L_02921150; else goto L_02921160;
|
|
L_02921150: ; // 0x2921150
|
|
/* 02921150 */ cpu->r[3] = 0x00000030u;
|
|
/* 02921154 */ Gambit_fn_02801A78(cpu);
|
|
/* 02921158 */ cpu->r[31] = cpu->r[3];
|
|
/* 02921158 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0292115C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292115C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0292115C */ if (_t6) goto L_029211B0; else goto L_02921160;
|
|
L_02921160: ; // 0x2921160
|
|
/* 02921160 */ cpu->r[3] = cpu->r[31];
|
|
/* 02921164 */ Gambit_fn_0295217C(cpu);
|
|
/* 02921168 */ cpu->r[12] = 0x10140000u;
|
|
/* 0292116C */ cpu->r[0] = 0x00000000u;
|
|
/* 02921170 */ cpu->r[11] = 0x10140000u;
|
|
/* 02921174 */ cpu->r[12] = cpu->r[12] + 0x00002A60u;
|
|
/* 02921178 */ _t7 = cpu->r[31] + 0x0000002Cu;
|
|
/* 02921178 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 0292117C */ cpu->r[11] = cpu->r[11] + 0x00002AB8u;
|
|
/* 02921180 */ _t8 = cpu->r[31] + 0x00000024u;
|
|
/* 02921180 */ rbrew_write32(cpu->mem, _t8, cpu->r[12]);
|
|
/* 02921184 */ cpu->r[12] = 0x10140000u;
|
|
/* 02921188 */ cpu->r[10] = 0x10140000u;
|
|
/* 0292118C */ _t9 = cpu->r[31] + 0x00000020u;
|
|
/* 0292118C */ rbrew_write32(cpu->mem, _t9, cpu->r[11]);
|
|
/* 02921190 */ cpu->r[12] = cpu->r[12] + 0x00002A10u;
|
|
/* 02921194 */ _t10 = cpu->r[31] + 0x00000028u;
|
|
/* 02921194 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 02921198 */ cpu->r[10] = cpu->r[10] + 0x00002B28u;
|
|
/* 0292119C */ cpu->r[3] = cpu->r[31] + 0x00000024u;
|
|
/* 029211A0 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 029211A0 */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
/* 029211A4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 029211A8 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 029211A8 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 029211AC */ Gambit_fn_028FD6EC(cpu);
|
|
L_029211B0: ; // 0x29211b0
|
|
/* 029211B0 */ _t13 = cpu->r[1] + 0x0000001Cu;
|
|
/* 029211B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 029211B4 */ cpu->r[3] = cpu->r[31];
|
|
/* 029211B8 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 029211B8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 029211BC */ cpu->lr = cpu->r[0];
|
|
/* 029211C0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 029211C4 */ return;
|
|
}
|
|
|
|
// fn_029211C8 @ 0x29211c8
|
|
void Gambit_fn_029211C8(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_029211C8: ; // 0x29211c8
|
|
/* 029211C8 */ _t0 = cpu->r[3] + 0x00000028u;
|
|
/* 029211C8 */ rbrew_write32(cpu->mem, _t0, cpu->r[4]);
|
|
/* 029211CC */ _t1 = cpu->r[3] + 0x0000002Cu;
|
|
/* 029211CC */ rbrew_write32(cpu->mem, _t1, cpu->r[5]);
|
|
/* 029211D0 */ return;
|
|
}
|
|
|
|
// fn_029211D4 @ 0x29211d4
|
|
void Gambit_fn_029211D4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _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;
|
|
|
|
L_029211D4: ; // 0x29211d4
|
|
/* 029211D4 */ _t0 = cpu->r[1] + 0xFFFFFB38u;
|
|
/* 029211D4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 029211D4 */ cpu->r[1] = _t0;
|
|
/* 029211D8 */ /* nop */
|
|
/* 029211DC */ _t1 = cpu->r[1] + 0x000004B8u;
|
|
/* 029211DC */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 029211E0 */ /* nop */
|
|
/* 029211E4 */ _t2 = cpu->r[1] + 0x00000478u;
|
|
/* 029211E4 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[27]);
|
|
/* 029211E8 */ _t3 = cpu->r[1] + 0x000004C0u;
|
|
/* 029211E8 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 029211EC */ /* nop */
|
|
/* 029211F0 */ _t4 = cpu->r[1] + 0x000004A8u;
|
|
/* 029211F0 */ rbrew_write_f64(cpu->mem, _t4, cpu->f[30]);
|
|
/* 029211F4 */ _t5 = cpu->r[1] + 0x00000480u;
|
|
/* 029211F4 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[27]);
|
|
/* 029211F8 */ /* nop */
|
|
/* 029211FC */ _t6 = cpu->r[1] + 0x00000488u;
|
|
/* 029211FC */ rbrew_write_f64(cpu->mem, _t6, cpu->f[28]);
|
|
/* 02921200 */ _t7 = cpu->r[1] + 0x000004B0u;
|
|
/* 02921200 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[30]);
|
|
/* 02921204 */ /* nop */
|
|
/* 02921208 */ _t8 = cpu->r[1] + 0x00000498u;
|
|
/* 02921208 */ rbrew_write_f64(cpu->mem, _t8, cpu->f[29]);
|
|
/* 0292120C */ _t9 = cpu->r[1] + 0x00000490u;
|
|
/* 0292120C */ rbrew_write_f32(cpu->mem, _t9, cpu->f[28]);
|
|
/* 02921210 */ /* nop */
|
|
/* 02921214 */ _t10 = cpu->r[1] + 0x00000468u;
|
|
/* 02921214 */ rbrew_write_f64(cpu->mem, _t10, cpu->f[26]);
|
|
/* 02921218 */ _t11 = cpu->r[1] + 0x000004A0u;
|
|
/* 02921218 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[29]);
|
|
/* 0292121C */ /* nop */
|
|
/* 02921220 */ _t12 = cpu->r[1] + 0x00000470u;
|
|
/* 02921220 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[26]);
|
|
/* 02921224 */ cpu->r[0] = cpu->lr;
|
|
/* 02921228 */ _t13 = cpu->r[1] + 0x000004CCu;
|
|
/* 02921228 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 0292122C */ _t14 = cpu->r[3] + 0x00000018u;
|
|
/* 0292122C */ cpu->r[12] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02921230 */ _t15 = cpu->r[12] + 0x00000014u;
|
|
/* 02921230 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02921234 */ cpu->ctr = cpu->r[0];
|
|
/* 02921238 */ cpu->r[29] = cpu->r[5];
|
|
/* 0292123C */ cpu->r[27] = cpu->r[3];
|
|
/* 02921240 */ cpu->r[28] = cpu->r[4];
|
|
/* 02921244 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02921248 */ cpu->r[5] = cpu->r[29];
|
|
/* 0292124C */ cpu->r[4] = cpu->r[28];
|
|
/* 02921250 */ cpu->r[3] = cpu->r[27] + 0x0000023Cu;
|
|
/* 02921254 */ Gambit_fn_029222E4(cpu);
|
|
/* 02921258 */ cpu->r[4] = cpu->r[27];
|
|
/* 0292125C */ cpu->r[3] = cpu->r[27] + 0x0000023Cu;
|
|
/* 02921260 */ Gambit_fn_02921E20(cpu);
|
|
/* 02921264 */ _t16 = cpu->r[27] + 0x00000010u;
|
|
/* 02921264 */ cpu->r[4] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02921268 */ cpu->r[6] = 0x00000004u;
|
|
/* 0292126C */ cpu->r[5] = cpu->r[29];
|
|
/* 02921270 */ cpu->r[3] = cpu->r[27] + 0x000001E8u;
|
|
/* 02921274 */ Gambit_fn_028023CC(cpu);
|
|
/* 02921278 */ cpu->r[30] = 0x101D0000u;
|
|
/* 0292127C */ _t17 = cpu->r[30] + 0xFFFFA470u;
|
|
/* 0292127C */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02921280 */ cpu->r[3] = cpu->r[29];
|
|
/* 02921284 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02921288 */ cpu->r[25] = 0x101D0000u;
|
|
/* 0292128C */ _t18 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0292128C */ _t19 = _t18 & 0x00000001u;
|
|
/* 0292128C */ if (_t19) goto L_02921290; else goto L_029212FC;
|
|
L_02921290: ; // 0x2921290
|
|
/* 02921290 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02921294 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921294 */ _t21 = _t20 & 0x00000001u;
|
|
/* 02921294 */ if (_t21) goto L_02921298; else goto L_029212A0;
|
|
L_02921298: ; // 0x2921298
|
|
/* 02921298 */ _t22 = cpu->r[25] + 0xFFFF98F0u;
|
|
/* 02921298 */ cpu->r[3] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0292129C */ Gambit_fn_02826F20(cpu);
|
|
L_029212A0: ; // 0x29212a0
|
|
/* 029212A0 */ _t23 = cpu->r[3] + 0x0000000Cu;
|
|
/* 029212A0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t23);
|
|
/* 029212A4 */ _t24 = cpu->r[5] + 0x00000034u;
|
|
/* 029212A4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t24);
|
|
/* 029212A8 */ cpu->ctr = cpu->r[8];
|
|
/* 029212AC */ cpu->r[5] = 0x00000004u;
|
|
/* 029212B0 */ cpu->r[4] = (uint32_t)((int32_t)cpu->r[30] * (int32_t)0x00000030u);
|
|
/* 029212B4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 029212B8 */ cpu->r[24] = cpu->r[3];
|
|
/* 029212BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 029212C0 */ cpu->r[31] = cpu->r[30];
|
|
/* 029212C4 */ cpu->r[0] = 0x00000000u;
|
|
/* 029212C8 */ _t25 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 029212C8 */ _t26 = _t25 & 0x00000001u;
|
|
/* 029212C8 */ if (_t26) goto L_029212D0; else goto L_029212CC;
|
|
L_029212CC: ; // 0x29212cc
|
|
/* 029212CC */ cpu->r[31] = 0x00000001u;
|
|
L_029212D0: ; // 0x29212d0
|
|
/* 029212D0 */ cpu->r[26] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x00000030u);
|
|
L_029212D4: ; // 0x29212d4
|
|
/* 029212D4 */ cpu->r[3] = cpu->r[24] + cpu->r[26];
|
|
/* 029212D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 029212D8 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029212D8 */ _t28 = _t27 & 0x00000001u;
|
|
/* 029212D8 */ if (_t28) goto L_029212E0; else goto L_029212DC;
|
|
L_029212DC: ; // 0x29212dc
|
|
/* 029212DC */ Gambit_fn_02921138(cpu);
|
|
L_029212E0: ; // 0x29212e0
|
|
/* 029212E0 */ cpu->r[31] = cpu->r[31] + 0xFFFFFFFFu;
|
|
/* 029212E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 029212E4 */ cpu->r[26] = cpu->r[26] + 0x00000030u;
|
|
/* 029212E8 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029212E8 */ _t30 = _t29 & 0x00000001u;
|
|
/* 029212E8 */ if (_t30) goto L_029212EC; else goto L_029212D4;
|
|
L_029212EC: ; // 0x29212ec
|
|
/* 029212EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 029212F0 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029212F0 */ _t32 = _t31 & 0x00000001u;
|
|
/* 029212F0 */ if (_t32) goto L_029212FC; else goto L_029212F4;
|
|
L_029212F4: ; // 0x29212f4
|
|
/* 029212F4 */ _t33 = cpu->r[27] + 0x00000320u;
|
|
/* 029212F4 */ rbrew_write32(cpu->mem, _t33, cpu->r[24]);
|
|
/* 029212F8 */ _t34 = cpu->r[27] + 0x0000031Cu;
|
|
/* 029212F8 */ rbrew_write32(cpu->mem, _t34, cpu->r[30]);
|
|
L_029212FC: ; // 0x29212fc
|
|
/* 029212FC */ _t35 = cpu->r[28] + 0x0000020Cu;
|
|
/* 029212FC */ cpu->r[24] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02921300 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 02921304 */ cpu->r[3] = cpu->r[29];
|
|
/* 02921308 */ _t36 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02921308 */ _t37 = _t36 & 0x00000001u;
|
|
/* 02921308 */ if (_t37) goto L_0292130C; else goto L_02921394;
|
|
L_0292130C: ; // 0x292130c
|
|
/* 0292130C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02921310 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921310 */ _t39 = _t38 & 0x00000001u;
|
|
/* 02921310 */ if (_t39) goto L_02921314; else goto L_0292131C;
|
|
L_02921314: ; // 0x2921314
|
|
/* 02921314 */ _t40 = cpu->r[25] + 0xFFFF98F0u;
|
|
/* 02921314 */ cpu->r[3] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02921318 */ Gambit_fn_02826F20(cpu);
|
|
L_0292131C: ; // 0x292131c
|
|
/* 0292131C */ _t41 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0292131C */ cpu->r[12] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02921320 */ _t42 = cpu->r[12] + 0x00000034u;
|
|
/* 02921320 */ cpu->r[0] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02921324 */ cpu->ctr = cpu->r[0];
|
|
/* 02921328 */ cpu->r[5] = 0x00000004u;
|
|
/* 0292132C */ cpu->r[4] = (uint32_t)((int32_t)cpu->r[24] * (int32_t)0x00000088u);
|
|
/* 02921330 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02921334 */ cpu->r[25] = cpu->r[3];
|
|
/* 02921338 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 0292133C */ cpu->r[31] = cpu->r[24];
|
|
/* 02921340 */ cpu->r[0] = 0x00000000u;
|
|
/* 02921344 */ _t43 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02921344 */ _t44 = _t43 & 0x00000001u;
|
|
/* 02921344 */ if (_t44) goto L_0292134C; else goto L_02921348;
|
|
L_02921348: ; // 0x2921348
|
|
/* 02921348 */ cpu->r[31] = 0x00000001u;
|
|
L_0292134C: ; // 0x292134c
|
|
/* 0292134C */ cpu->r[26] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x00000088u);
|
|
/* 02921350 */ cpu->r[30] = 0x00000000u;
|
|
L_02921354: ; // 0x2921354
|
|
/* 02921354 */ cpu->r[12] = cpu->r[25] + cpu->r[26];
|
|
/* 02921354 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02921358 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921358 */ _t46 = _t45 & 0x00000001u;
|
|
/* 02921358 */ if (_t46) goto L_02921378; else goto L_0292135C;
|
|
L_0292135C: ; // 0x292135c
|
|
/* 0292135C */ cpu->r[9] = cpu->r[12] + 0x0000007Cu;
|
|
/* 0292135C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02921360 */ _t47 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921360 */ _t48 = _t47 & 0x00000001u;
|
|
/* 02921360 */ if (_t48) goto L_02921364; else goto L_02921374;
|
|
L_02921364: ; // 0x2921364
|
|
/* 02921364 */ cpu->r[3] = 0x00000004u;
|
|
/* 02921368 */ Gambit_fn_02801A78(cpu);
|
|
/* 0292136C */ cpu->r[9] = cpu->r[3];
|
|
/* 0292136C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02921370 */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921370 */ _t50 = _t49 & 0x00000001u;
|
|
/* 02921370 */ if (_t50) goto L_02921378; else goto L_02921374;
|
|
L_02921374: ; // 0x2921374
|
|
/* 02921374 */ _t51 = cpu->r[9] + 0x00000000u;
|
|
/* 02921374 */ rbrew_write32(cpu->mem, _t51, cpu->r[30]);
|
|
L_02921378: ; // 0x2921378
|
|
/* 02921378 */ cpu->r[31] = cpu->r[31] + 0xFFFFFFFFu;
|
|
/* 02921378 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0292137C */ cpu->r[26] = cpu->r[26] + 0x00000088u;
|
|
/* 02921380 */ _t52 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921380 */ _t53 = _t52 & 0x00000001u;
|
|
/* 02921380 */ if (_t53) goto L_02921384; else goto L_02921354;
|
|
L_02921384: ; // 0x2921384
|
|
/* 02921384 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 02921388 */ _t54 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921388 */ _t55 = _t54 & 0x00000001u;
|
|
/* 02921388 */ if (_t55) goto L_02921394; else goto L_0292138C;
|
|
L_0292138C: ; // 0x292138c
|
|
/* 0292138C */ _t56 = cpu->r[27] + 0x000001F8u;
|
|
/* 0292138C */ rbrew_write32(cpu->mem, _t56, cpu->r[25]);
|
|
/* 02921390 */ _t57 = cpu->r[27] + 0x000001F4u;
|
|
/* 02921390 */ rbrew_write32(cpu->mem, _t57, cpu->r[24]);
|
|
L_02921394: ; // 0x2921394
|
|
/* 02921394 */ _t58 = cpu->r[27] + 0x0000031Cu;
|
|
/* 02921394 */ cpu->r[8] = rbrew_read32(cpu->mem, _t58);
|
|
/* 02921398 */ _t59 = cpu->r[27] + 0x00000320u;
|
|
/* 02921398 */ cpu->r[30] = rbrew_read32(cpu->mem, _t59);
|
|
/* 0292139C */ cpu->r[7] = (uint32_t)((int32_t)cpu->r[8] * (int32_t)0x00000030u);
|
|
/* 029213A0 */ cpu->r[31] = cpu->r[30] + cpu->r[7];
|
|
/* 029213A4 */ cpu->r[25] = 0x10140000u;
|
|
/* 029213A8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[31]);
|
|
/* 029213AC */ cpu->r[25] = cpu->r[25] + 0x00002A10u;
|
|
/* 029213B0 */ _t60 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029213B0 */ _t61 = _t60 & 0x00000001u;
|
|
/* 029213B0 */ if (_t61) goto L_029213B4; else goto L_029213D0;
|
|
L_029213B4: ; // 0x29213b4
|
|
/* 029213B4 */ _t62 = cpu->r[27] + 0x000001F4u;
|
|
/* 029213B4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t62);
|
|
/* 029213B8 */ _t63 = cpu->r[27] + 0x000001F8u;
|
|
/* 029213B8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t63);
|
|
/* 029213BC */ cpu->r[5] = (uint32_t)((int32_t)cpu->r[4] * (int32_t)0x00000088u);
|
|
/* 029213C0 */ cpu->r[31] = cpu->r[30] + cpu->r[5];
|
|
/* 029213C4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[31]);
|
|
/* 029213C8 */ _t64 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029213C8 */ _t65 = _t64 & 0x00000001u;
|
|
/* 029213C8 */ if (_t65) goto L_029215F8; else goto L_029213CC;
|
|
L_029213CC: ; // 0x29213cc
|
|
/* 029213CC */ goto L_02921574;
|
|
L_029213D0: ; // 0x29213d0
|
|
/* 029213D0 */ cpu->r[24] = 0x101F0000u;
|
|
/* 029213D4 */ cpu->r[26] = cpu->r[30];
|
|
/* 029213D8 */ cpu->r[24] = cpu->r[24] + 0x000075F0u;
|
|
L_029213DC: ; // 0x29213dc
|
|
/* 029213DC */ cpu->r[10] = 0xAAAB0000u;
|
|
/* 029213E0 */ cpu->r[0] = cpu->r[26] - cpu->r[30];
|
|
/* 029213E4 */ cpu->r[10] = cpu->r[10] + 0xFFFFAAABu;
|
|
/* 029213E8 */ /* nop */
|
|
/* 029213EC */ cpu->r[3] = cpu->r[26];
|
|
/* 029213F0 */ cpu->r[20] = rbrew_rlwinm(cpu->r[9], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 029213F4 */ cpu->r[5] = cpu->r[27];
|
|
/* 029213F8 */ cpu->r[6] = cpu->r[29];
|
|
/* 029213FC */ cpu->r[4] = cpu->r[20];
|
|
/* 02921400 */ Gambit_fn_029211C8(cpu);
|
|
/* 02921404 */ cpu->r[11] = (uint32_t)((int32_t)cpu->r[20] * (int32_t)0x00000018u);
|
|
/* 02921408 */ _t66 = cpu->r[1] + 0x00000014u;
|
|
/* 02921408 */ rbrew_write32(cpu->mem, _t66, cpu->r[25]);
|
|
/* 0292140C */ cpu->r[3] = cpu->r[27] + 0x00000058u;
|
|
/* 02921410 */ _t67 = cpu->r[24] + cpu->r[11];
|
|
/* 02921410 */ cpu->r[0] = rbrew_read32(cpu->mem, _t67);
|
|
/* 02921414 */ cpu->r[23] = cpu->r[24] + cpu->r[11];
|
|
/* 02921418 */ cpu->r[4] = cpu->r[26];
|
|
/* 0292141C */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 02921420 */ _t68 = cpu->r[1] + 0x00000010u;
|
|
/* 02921420 */ rbrew_write32(cpu->mem, _t68, cpu->r[0]);
|
|
/* 02921424 */ Gambit_fn_029521F4(cpu);
|
|
/* 02921428 */ _t69 = cpu->r[27] + 0x00000008u;
|
|
/* 02921428 */ cpu->r[5] = rbrew_read32(cpu->mem, _t69);
|
|
/* 0292142C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[20], cpu->r[5]);
|
|
/* 02921430 */ _t70 = cpu->r[27] + 0x0000000Cu;
|
|
/* 02921430 */ cpu->r[11] = rbrew_read32(cpu->mem, _t70);
|
|
/* 02921434 */ _t71 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02921434 */ _t72 = _t71 & 0x00000001u;
|
|
/* 02921434 */ if (_t72) goto L_02921438; else goto L_02921450;
|
|
L_02921438: ; // 0x2921438
|
|
/* 02921438 */ cpu->r[0] = rbrew_rlwinm(cpu->r[20], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0292143C */ cpu->r[10] = cpu->r[11] + cpu->r[0];
|
|
/* 02921440 */ _t73 = cpu->r[10] + 0x00000002u;
|
|
/* 02921440 */ cpu->r[4] = rbrew_read16(cpu->mem, _t73);
|
|
/* 02921444 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 02921448 */ _t74 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921448 */ _t75 = _t74 & 0x00000001u;
|
|
/* 02921448 */ if (_t75) goto L_02921550; else goto L_0292144C;
|
|
L_0292144C: ; // 0x292144c
|
|
/* 0292144C */ goto L_0292145C;
|
|
L_02921450: ; // 0x2921450
|
|
/* 02921450 */ _t76 = cpu->r[11] + 0x00000002u;
|
|
/* 02921450 */ cpu->r[4] = rbrew_read16(cpu->mem, _t76);
|
|
/* 02921454 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 02921458 */ _t77 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921458 */ _t78 = _t77 & 0x00000001u;
|
|
/* 02921458 */ if (_t78) goto L_02921550; else goto L_0292145C;
|
|
L_0292145C: ; // 0x292145c
|
|
/* 0292145C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[20], cpu->r[5]);
|
|
/* 02921460 */ cpu->r[21] = 0x00000000u;
|
|
/* 02921464 */ _t79 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02921464 */ _t80 = _t79 & 0x00000001u;
|
|
/* 02921464 */ if (_t80) goto L_02921468; else goto L_02921470;
|
|
L_02921468: ; // 0x2921468
|
|
/* 02921468 */ cpu->r[0] = rbrew_rlwinm(cpu->r[20], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0292146C */ cpu->r[11] = cpu->r[11] + cpu->r[0];
|
|
L_02921470: ; // 0x2921470
|
|
/* 02921470 */ _t81 = cpu->r[11] + 0x00000002u;
|
|
/* 02921470 */ cpu->r[18] = rbrew_read16(cpu->mem, _t81);
|
|
/* 02921474 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[18], 0x00000000u);
|
|
/* 02921478 */ _t82 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921478 */ _t83 = _t82 & 0x00000001u;
|
|
/* 02921478 */ if (_t83) goto L_02921550; else goto L_0292147C;
|
|
L_0292147C: ; // 0x292147c
|
|
/* 0292147C */ cpu->r[17] = 0x10140000u;
|
|
/* 02921480 */ cpu->r[19] = rbrew_rlwinm(cpu->r[20], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
L_02921484: ; // 0x2921484
|
|
/* 02921484 */ _t84 = cpu->r[23] + 0x00000008u;
|
|
/* 02921484 */ cpu->r[6] = rbrew_read32(cpu->mem, _t84);
|
|
/* 02921488 */ cpu->ctr = cpu->r[6];
|
|
/* 0292148C */ cpu->r[3] = cpu->r[29];
|
|
/* 02921490 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02921494 */ cpu->r[7] = cpu->r[29];
|
|
/* 02921498 */ _t85 = cpu->r[28] + 0x0000020Cu;
|
|
/* 02921498 */ cpu->r[5] = rbrew_read32(cpu->mem, _t85);
|
|
/* 0292149C */ cpu->r[4] = cpu->r[21];
|
|
/* 029214A0 */ cpu->r[6] = cpu->r[27];
|
|
/* 029214A4 */ cpu->r[22] = cpu->r[3];
|
|
/* 029214A8 */ Gambit_fn_0291ED7C(cpu);
|
|
/* 029214AC */ _t86 = cpu->r[27] + 0x00000008u;
|
|
/* 029214AC */ cpu->r[8] = rbrew_read32(cpu->mem, _t86);
|
|
/* 029214B0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[20], cpu->r[8]);
|
|
/* 029214B4 */ _t87 = cpu->r[27] + 0x0000000Cu;
|
|
/* 029214B4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t87);
|
|
/* 029214B8 */ _t88 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 029214B8 */ _t89 = _t88 & 0x00000001u;
|
|
/* 029214B8 */ if (_t89) goto L_029214BC; else goto L_029214C0;
|
|
L_029214BC: ; // 0x29214bc
|
|
/* 029214BC */ cpu->r[9] = cpu->r[9] + cpu->r[19];
|
|
L_029214C0: ; // 0x29214c0
|
|
/* 029214C0 */ _t90 = cpu->r[9] + 0x00000000u;
|
|
/* 029214C0 */ cpu->r[9] = rbrew_read16(cpu->mem, _t90);
|
|
/* 029214C4 */ _t91 = cpu->r[27] + 0x00000010u;
|
|
/* 029214C4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t91);
|
|
/* 029214C8 */ cpu->r[6] = cpu->r[9] + cpu->r[21];
|
|
/* 029214CC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[10]);
|
|
/* 029214D0 */ _t92 = cpu->r[27] + 0x00000014u;
|
|
/* 029214D0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t92);
|
|
/* 029214D4 */ _t93 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 029214D4 */ _t94 = _t93 & 0x00000001u;
|
|
/* 029214D4 */ if (_t94) goto L_029214D8; else goto L_029214E0;
|
|
L_029214D8: ; // 0x29214d8
|
|
/* 029214D8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[6], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 029214DC */ cpu->r[10] = cpu->r[10] + cpu->r[0];
|
|
L_029214E0: ; // 0x29214e0
|
|
/* 029214E0 */ cpu->r[4] = cpu->r[22];
|
|
/* 029214E4 */ cpu->r[3] = cpu->r[27] + 0x0000023Cu;
|
|
/* 029214E8 */ _t95 = cpu->r[10] + 0x00000000u;
|
|
/* 029214E8 */ rbrew_write32(cpu->mem, _t95, cpu->r[22]);
|
|
/* 029214EC */ Gambit_fn_02922B48(cpu);
|
|
/* 029214F0 */ _t96 = cpu->r[22] + 0x00000018u;
|
|
/* 029214F0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t96);
|
|
/* 029214F4 */ _t97 = cpu->r[6] + 0x000000B4u;
|
|
/* 029214F4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t97);
|
|
/* 029214F8 */ cpu->ctr = cpu->r[7];
|
|
/* 029214FC */ cpu->r[3] = cpu->r[22];
|
|
/* 02921500 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02921504 */ cpu->r[10] = (uint32_t)((int32_t)cpu->r[3] * (int32_t)0x00000018u);
|
|
/* 02921508 */ _t98 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02921508 */ rbrew_write32(cpu->mem, _t98, cpu->r[25]);
|
|
/* 0292150C */ _t99 = cpu->r[10] + cpu->r[24];
|
|
/* 0292150C */ cpu->r[12] = rbrew_read32(cpu->mem, _t99);
|
|
/* 02921510 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02921514 */ _t100 = cpu->r[1] + 0x00000008u;
|
|
/* 02921514 */ rbrew_write32(cpu->mem, _t100, cpu->r[12]);
|
|
/* 02921518 */ Gambit_fn_02921AB8(cpu);
|
|
/* 0292151C */ cpu->r[6] = cpu->r[21];
|
|
/* 02921520 */ _t101 = cpu->r[1] + 0x00000008u;
|
|
/* 02921520 */ cpu->r[5] = rbrew_read32(cpu->mem, _t101);
|
|
/* 02921524 */ cpu->r[4] = cpu->r[17] + 0x00002B48u;
|
|
/* 02921528 */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 0292152C */ _t102 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 0292152C */ _t103 = _t102 & 0x00000001u;
|
|
/* 0292152C */ if (_t103) goto L_02921530; // else: addr-0 trap, fall-through
|
|
L_02921530: ; // 0x2921530
|
|
/* 02921530 */ Gambit_fn_02921B14(cpu);
|
|
/* 02921534 */ cpu->r[5] = cpu->r[3];
|
|
/* 02921538 */ cpu->r[4] = cpu->r[22];
|
|
/* 0292153C */ cpu->r[3] = cpu->r[26];
|
|
/* 02921540 */ Gambit_fn_0295225C(cpu);
|
|
/* 02921544 */ cpu->r[18] = cpu->r[18] + 0xFFFFFFFFu;
|
|
/* 02921544 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[18], 0x00000000u);
|
|
/* 02921548 */ cpu->r[21] = cpu->r[21] + 0x00000001u;
|
|
/* 0292154C */ _t104 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292154C */ _t105 = _t104 & 0x00000001u;
|
|
/* 0292154C */ if (_t105) goto L_02921550; else goto L_02921484;
|
|
L_02921550: ; // 0x2921550
|
|
/* 02921550 */ cpu->r[26] = cpu->r[26] + 0x00000030u;
|
|
/* 02921554 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], cpu->r[31]);
|
|
/* 02921558 */ _t106 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921558 */ _t107 = _t106 & 0x00000001u;
|
|
/* 02921558 */ if (_t107) goto L_0292155C; else goto L_029213DC;
|
|
L_0292155C: ; // 0x292155c
|
|
/* 0292155C */ _t108 = cpu->r[27] + 0x000001F4u;
|
|
/* 0292155C */ cpu->r[4] = rbrew_read32(cpu->mem, _t108);
|
|
/* 02921560 */ _t109 = cpu->r[27] + 0x000001F8u;
|
|
/* 02921560 */ cpu->r[30] = rbrew_read32(cpu->mem, _t109);
|
|
/* 02921564 */ cpu->r[5] = (uint32_t)((int32_t)cpu->r[4] * (int32_t)0x00000088u);
|
|
/* 02921568 */ cpu->r[31] = cpu->r[30] + cpu->r[5];
|
|
/* 0292156C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[31]);
|
|
/* 02921570 */ _t110 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921570 */ _t111 = _t110 & 0x00000001u;
|
|
/* 02921570 */ if (_t111) goto L_029215F8; else goto L_02921574;
|
|
L_02921574: ; // 0x2921574
|
|
/* 02921574 */ cpu->r[6] = 0x10140000u;
|
|
/* 02921578 */ cpu->r[4] = 0x10140000u;
|
|
/* 0292157C */ _t112 = cpu->r[6] + 0x00002B3Cu;
|
|
/* 0292157C */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t112);
|
|
/* 02921580 */ cpu->r[6] = 0x10140000u;
|
|
/* 02921584 */ _t113 = cpu->r[4] + 0x00002B40u;
|
|
/* 02921584 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t113);
|
|
/* 02921588 */ cpu->r[6] = cpu->r[6] + 0x000029F0u;
|
|
/* 0292158C */ cpu->r[11] = 0x10140000u;
|
|
/* 02921590 */ cpu->r[9] = 0x10140000u;
|
|
/* 02921594 */ /* nop */
|
|
/* 02921598 */ cpu->r[7] = 0x10140000u;
|
|
/* 0292159C */ cpu->r[9] = cpu->r[9] + 0x000029F8u;
|
|
/* 029215A0 */ _t114 = cpu->r[11] + 0x00002B44u;
|
|
/* 029215A0 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t114);
|
|
/* 029215A4 */ cpu->r[7] = cpu->r[7] + 0x000029E8u;
|
|
/* 029215A8 */ /* nop */
|
|
/* 029215AC */ /* nop */
|
|
/* 029215B0 */ cpu->r[26] = 0x00000000u;
|
|
L_029215B4: ; // 0x29215b4
|
|
/* 029215B4 */ /* nop */
|
|
/* 029215B8 */ cpu->r[3] = cpu->r[30] + 0x00000030u;
|
|
/* 029215BC */ /* nop */
|
|
/* 029215C0 */ /* nop */
|
|
/* 029215C4 */ /* nop */
|
|
/* 029215C8 */ /* nop */
|
|
/* 029215CC */ /* nop */
|
|
/* 029215D0 */ Gambit_fn_02C68FAC(cpu);
|
|
/* 029215D4 */ _t115 = cpu->r[30] + 0x00000084u;
|
|
/* 029215D4 */ rbrew_write_f32(cpu->mem, _t115, cpu->f[30]);
|
|
/* 029215D8 */ _t116 = cpu->r[30] + 0x0000007Cu;
|
|
/* 029215D8 */ rbrew_write32(cpu->mem, _t116, cpu->r[26]);
|
|
/* 029215DC */ _t117 = cpu->r[30] + 0x00000080u;
|
|
/* 029215DC */ rbrew_write32(cpu->mem, _t117, cpu->r[26]);
|
|
/* 029215E0 */ _t118 = cpu->r[30] + 0x00000074u;
|
|
/* 029215E0 */ rbrew_write_f32(cpu->mem, _t118, cpu->f[31]);
|
|
/* 029215E4 */ _t119 = cpu->r[30] + 0x00000070u;
|
|
/* 029215E4 */ rbrew_write_f32(cpu->mem, _t119, cpu->f[29]);
|
|
/* 029215E8 */ _t120 = cpu->r[30] + 0x00000078u;
|
|
/* 029215E8 */ rbrew_write32(cpu->mem, _t120, cpu->r[26]);
|
|
/* 029215EC */ cpu->r[30] = cpu->r[30] + 0x00000088u;
|
|
/* 029215F0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[31]);
|
|
/* 029215F4 */ _t121 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029215F4 */ _t122 = _t121 & 0x00000001u;
|
|
/* 029215F4 */ if (_t122) goto L_029215F8; else goto L_029215B4;
|
|
L_029215F8: ; // 0x29215f8
|
|
/* 029215F8 */ cpu->r[12] = cpu->r[27] + 0x00000308u;
|
|
/* 029215FC */ cpu->r[0] = cpu->r[27] + 0x00000318u;
|
|
/* 02921600 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[0]);
|
|
/* 02921604 */ _t123 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921604 */ _t124 = _t123 & 0x00000001u;
|
|
/* 02921604 */ if (_t124) goto L_0292161C; else goto L_02921608;
|
|
L_02921608: ; // 0x2921608
|
|
/* 02921608 */ cpu->r[11] = 0x00000000u;
|
|
L_0292160C: ; // 0x292160c
|
|
/* 0292160C */ _t125 = cpu->r[12] + 0x00000000u;
|
|
/* 0292160C */ rbrew_write32(cpu->mem, _t125, cpu->r[11]);
|
|
/* 02921610 */ cpu->r[12] = cpu->r[12] + 0x00000004u;
|
|
/* 02921614 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[0]);
|
|
/* 02921618 */ _t126 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921618 */ _t127 = _t126 & 0x00000001u;
|
|
/* 02921618 */ if (_t127) goto L_0292161C; else goto L_0292160C;
|
|
L_0292161C: ; // 0x292161c
|
|
/* 0292161C */ _t128 = cpu->r[27] + 0x00000010u;
|
|
/* 0292161C */ cpu->r[4] = rbrew_read32(cpu->mem, _t128);
|
|
/* 02921620 */ cpu->r[6] = cpu->r[29];
|
|
/* 02921624 */ _t129 = cpu->r[28] + 0x00000208u;
|
|
/* 02921624 */ cpu->r[5] = rbrew_read32(cpu->mem, _t129);
|
|
/* 02921628 */ cpu->r[3] = cpu->r[27] + 0x0000001Cu;
|
|
/* 0292162C */ Gambit_fn_0294EAEC(cpu);
|
|
/* 02921630 */ _t130 = cpu->r[27] + 0x00000010u;
|
|
/* 02921630 */ cpu->r[5] = rbrew_read32(cpu->mem, _t130);
|
|
/* 02921634 */ _t131 = cpu->r[27] + 0x00000014u;
|
|
/* 02921634 */ cpu->r[31] = rbrew_read32(cpu->mem, _t131);
|
|
/* 02921638 */ cpu->r[10] = rbrew_rlwinm(cpu->r[5], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0292163C */ cpu->r[30] = cpu->r[31] + cpu->r[10];
|
|
/* 02921640 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 02921644 */ _t132 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921644 */ _t133 = _t132 & 0x00000001u;
|
|
/* 02921644 */ if (_t133) goto L_0292166C; else goto L_02921648;
|
|
L_02921648: ; // 0x2921648
|
|
/* 02921648 */ _t134 = cpu->r[31] + 0x00000000u;
|
|
/* 02921648 */ cpu->r[4] = rbrew_read32(cpu->mem, _t134);
|
|
/* 0292164C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 02921650 */ _t135 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921650 */ _t136 = _t135 & 0x00000001u;
|
|
/* 02921650 */ if (_t136) goto L_02921658; else goto L_02921654;
|
|
L_02921654: ; // 0x2921654
|
|
/* 02921654 */ cpu->r[4] = cpu->r[4] + 0x0000001Cu;
|
|
L_02921658: ; // 0x2921658
|
|
/* 02921658 */ cpu->r[3] = cpu->r[27] + 0x0000001Cu;
|
|
/* 0292165C */ Gambit_fn_0294EC08(cpu);
|
|
/* 02921660 */ cpu->r[31] = cpu->r[31] + 0x00000004u;
|
|
/* 02921664 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 02921668 */ _t137 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921668 */ _t138 = _t137 & 0x00000001u;
|
|
/* 02921668 */ if (_t138) goto L_0292166C; else goto L_02921648;
|
|
L_0292166C: ; // 0x292166c
|
|
/* 0292166C */ cpu->r[12] = 0x10140000u;
|
|
/* 02921670 */ _t139 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02921670 */ rbrew_write32(cpu->mem, _t139, cpu->r[25]);
|
|
/* 02921674 */ cpu->r[12] = cpu->r[12] + 0x00002B50u;
|
|
/* 02921678 */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 0292167C */ cpu->r[3] = cpu->r[27] + 0x0000001Cu;
|
|
/* 02921680 */ _t140 = cpu->r[1] + 0x00000018u;
|
|
/* 02921680 */ rbrew_write32(cpu->mem, _t140, cpu->r[12]);
|
|
/* 02921684 */ Gambit_fn_028FD6EC(cpu);
|
|
/* 02921688 */ _t141 = cpu->r[27] + 0x000001E4u;
|
|
/* 02921688 */ cpu->r[7] = rbrew_read32(cpu->mem, _t141);
|
|
/* 0292168C */ _t142 = cpu->r[27] + 0x00000054u;
|
|
/* 0292168C */ cpu->r[9] = rbrew_read16(cpu->mem, _t142);
|
|
/* 02921690 */ cpu->r[7] = cpu->r[7] | 0x00000001u;
|
|
/* 02921694 */ cpu->r[9] = cpu->r[9] | 0x00000001u;
|
|
/* 02921698 */ _t143 = cpu->r[27] + 0x000001E4u;
|
|
/* 02921698 */ rbrew_write32(cpu->mem, _t143, cpu->r[7]);
|
|
/* 0292169C */ _t144 = cpu->r[27] + 0x00000054u;
|
|
/* 0292169C */ rbrew_write16(cpu->mem, _t144, (uint16_t)cpu->r[9]);
|
|
/* 029216A0 */ /* nop */
|
|
/* 029216A4 */ _t145 = cpu->r[1] + 0x000004B0u;
|
|
/* 029216A4 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t145);
|
|
/* 029216A8 */ _t146 = cpu->r[1] + 0x00000490u;
|
|
/* 029216A8 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t146);
|
|
/* 029216AC */ _t147 = cpu->r[1] + 0x000004A8u;
|
|
/* 029216AC */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t147);
|
|
/* 029216B0 */ _t148 = cpu->r[1] + 0x00000488u;
|
|
/* 029216B0 */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t148);
|
|
/* 029216B4 */ _t149 = cpu->r[1] + 0x00000480u;
|
|
/* 029216B4 */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t149);
|
|
/* 029216B8 */ _t150 = cpu->r[1] + 0x000004A0u;
|
|
/* 029216B8 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t150);
|
|
/* 029216BC */ _t151 = cpu->r[1] + 0x00000478u;
|
|
/* 029216BC */ cpu->f[27] = rbrew_read_f64(cpu->mem, _t151);
|
|
/* 029216C0 */ _t152 = cpu->r[1] + 0x00000498u;
|
|
/* 029216C0 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t152);
|
|
/* 029216C4 */ _t153 = cpu->r[1] + 0x00000470u;
|
|
/* 029216C4 */ cpu->f[26] = rbrew_read_f32(cpu->mem, _t153);
|
|
/* 029216C8 */ _t154 = cpu->r[1] + 0x000004C0u;
|
|
/* 029216C8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t154);
|
|
/* 029216CC */ _t155 = cpu->r[1] + 0x00000468u;
|
|
/* 029216CC */ cpu->f[26] = rbrew_read_f64(cpu->mem, _t155);
|
|
/* 029216D0 */ _t156 = cpu->r[1] + 0x000004B8u;
|
|
/* 029216D0 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t156);
|
|
/* 029216D4 */ _t157 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 029216D4 */ _t158 = _t157 & 0x00000001u;
|
|
/* 029216D4 */ if (_t158) goto L_029216D8; // else: addr-0 trap, fall-through
|
|
L_029216D8: ; // 0x29216d8
|
|
/* 029216D8 */ _t159 = cpu->r[1] + 0x000004CCu;
|
|
/* 029216D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t159);
|
|
/* 029216DC */ cpu->lr = cpu->r[0];
|
|
/* 029216E0 */ cpu->r[1] = cpu->r[1] + 0x000004C8u;
|
|
/* 029216E4 */ return;
|
|
}
|
|
|
|
// fn_029216E8 @ 0x29216e8
|
|
void Gambit_fn_029216E8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _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_029216E8: ; // 0x29216e8
|
|
/* 029216E8 */ cpu->r[0] = cpu->lr;
|
|
/* 029216EC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 029216EC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 029216EC */ cpu->r[1] = _t0;
|
|
/* 029216F0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 029216F0 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 029216F4 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 029216F4 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 029216F8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 029216F8 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 029216FC */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 029216FC */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02921700 */ cpu->r[29] = cpu->r[3];
|
|
/* 02921704 */ _t5 = cpu->r[29] + 0x000001E4u;
|
|
/* 02921704 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02921708 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02921708 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0292170C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292170C */ _t7 = _t6 & 0x00000001u;
|
|
/* 0292170C */ if (_t7) goto L_02921794; else goto L_02921710;
|
|
L_02921710: ; // 0x2921710
|
|
/* 02921710 */ _t8 = cpu->r[29] + 0x00000010u;
|
|
/* 02921710 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02921714 */ _t9 = cpu->r[29] + 0x00000014u;
|
|
/* 02921714 */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02921718 */ cpu->r[11] = rbrew_rlwinm(cpu->r[12], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0292171C */ cpu->r[31] = cpu->r[30] + cpu->r[11];
|
|
/* 02921720 */ cpu->r[10] = 0x00000000u;
|
|
/* 02921724 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[31]);
|
|
/* 02921728 */ _t10 = cpu->r[29] + 0x000001E8u;
|
|
/* 02921728 */ rbrew_write32(cpu->mem, _t10, cpu->r[10]);
|
|
/* 0292172C */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292172C */ _t12 = _t11 & 0x00000001u;
|
|
/* 0292172C */ if (_t12) goto L_0292177C; else goto L_02921730;
|
|
L_02921730: ; // 0x2921730
|
|
/* 02921730 */ _t13 = cpu->r[30] + 0x00000000u;
|
|
/* 02921730 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02921734 */ _t14 = cpu->r[3] + 0x00000030u;
|
|
/* 02921734 */ cpu->r[12] = rbrew_read8(cpu->mem, _t14);
|
|
/* 02921738 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0292173C */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292173C */ _t16 = _t15 & 0x00000001u;
|
|
/* 0292173C */ if (_t16) goto L_02921770; else goto L_02921740;
|
|
L_02921740: ; // 0x2921740
|
|
/* 02921740 */ Gambit_fn_0291EE50(cpu);
|
|
/* 02921744 */ _t17 = cpu->r[29] + 0x000001E8u;
|
|
/* 02921744 */ cpu->r[7] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02921748 */ _t18 = cpu->r[29] + 0x000001ECu;
|
|
/* 02921748 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0292174C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], cpu->r[0]);
|
|
/* 02921750 */ _t19 = cpu->r[30] + 0x00000000u;
|
|
/* 02921750 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02921754 */ _t20 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02921754 */ _t21 = _t20 & 0x00000001u;
|
|
/* 02921754 */ if (_t21) goto L_02921758; else goto L_02921770;
|
|
L_02921758: ; // 0x2921758
|
|
/* 02921758 */ _t22 = cpu->r[29] + 0x000001F0u;
|
|
/* 02921758 */ cpu->r[12] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0292175C */ cpu->r[11] = rbrew_rlwinm(cpu->r[7], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02921760 */ _t23 = cpu->r[11] + cpu->r[12];
|
|
/* 02921760 */ rbrew_write32(cpu->mem, _t23, cpu->r[0]);
|
|
/* 02921764 */ _t24 = cpu->r[29] + 0x000001E8u;
|
|
/* 02921764 */ cpu->r[8] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02921768 */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 0292176C */ _t25 = cpu->r[29] + 0x000001E8u;
|
|
/* 0292176C */ rbrew_write32(cpu->mem, _t25, cpu->r[8]);
|
|
L_02921770: ; // 0x2921770
|
|
/* 02921770 */ cpu->r[30] = cpu->r[30] + 0x00000004u;
|
|
/* 02921774 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[31]);
|
|
/* 02921778 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921778 */ _t27 = _t26 & 0x00000001u;
|
|
/* 02921778 */ if (_t27) goto L_0292177C; else goto L_02921730;
|
|
L_0292177C: ; // 0x292177c
|
|
/* 0292177C */ _t28 = cpu->r[29] + 0x000001E4u;
|
|
/* 0292177C */ cpu->r[9] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02921780 */ cpu->r[9] = rbrew_rlwinm(cpu->r[9], 0x00000000u, 0x00000000u, 0x0000001Eu);
|
|
/* 02921784 */ cpu->r[3] = cpu->r[29] + 0x0000001Cu;
|
|
/* 02921788 */ _t29 = cpu->r[29] + 0x000001E4u;
|
|
/* 02921788 */ rbrew_write32(cpu->mem, _t29, cpu->r[9]);
|
|
/* 0292178C */ Gambit_fn_0294ECA0(cpu);
|
|
/* 02921790 */ goto L_029217C8;
|
|
L_02921794: ; // 0x2921794
|
|
/* 02921794 */ _t30 = cpu->r[29] + 0x000001E8u;
|
|
/* 02921794 */ cpu->r[11] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02921798 */ _t31 = cpu->r[29] + 0x000001F0u;
|
|
/* 02921798 */ cpu->r[30] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0292179C */ cpu->r[10] = rbrew_rlwinm(cpu->r[11], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 029217A0 */ cpu->r[31] = cpu->r[30] + cpu->r[10];
|
|
/* 029217A4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[31]);
|
|
/* 029217A8 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029217A8 */ _t33 = _t32 & 0x00000001u;
|
|
/* 029217A8 */ if (_t33) goto L_029217C0; else goto L_029217AC;
|
|
L_029217AC: ; // 0x29217ac
|
|
/* 029217AC */ _t34 = cpu->r[30] + 0x00000000u;
|
|
/* 029217AC */ cpu->r[3] = rbrew_read32(cpu->mem, _t34);
|
|
/* 029217B0 */ Gambit_fn_0291EE50(cpu);
|
|
/* 029217B4 */ cpu->r[30] = cpu->r[30] + 0x00000004u;
|
|
/* 029217B8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[31]);
|
|
/* 029217BC */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029217BC */ _t36 = _t35 & 0x00000001u;
|
|
/* 029217BC */ if (_t36) goto L_029217C0; else goto L_029217AC;
|
|
L_029217C0: ; // 0x29217c0
|
|
/* 029217C0 */ cpu->r[3] = cpu->r[29] + 0x0000001Cu;
|
|
/* 029217C4 */ Gambit_fn_0294ECA0(cpu);
|
|
L_029217C8: ; // 0x29217c8
|
|
/* 029217C8 */ _t37 = cpu->r[1] + 0x0000000Cu;
|
|
/* 029217C8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t37);
|
|
/* 029217CC */ _t38 = cpu->r[1] + 0x0000001Cu;
|
|
/* 029217CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t38);
|
|
/* 029217D0 */ _t39 = cpu->r[1] + 0x00000010u;
|
|
/* 029217D0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t39);
|
|
/* 029217D4 */ cpu->lr = cpu->r[0];
|
|
/* 029217D8 */ _t40 = cpu->r[1] + 0x00000014u;
|
|
/* 029217D8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t40);
|
|
/* 029217DC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 029217E0 */ return;
|
|
}
|
|
|
|
// fn_029216EC @ 0x29216ec
|
|
void Gambit_fn_029216EC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _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_029216EC: ; // 0x29216ec
|
|
/* 029216EC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 029216EC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 029216EC */ cpu->r[1] = _t0;
|
|
/* 029216F0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 029216F0 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 029216F4 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 029216F4 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 029216F8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 029216F8 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 029216FC */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 029216FC */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02921700 */ cpu->r[29] = cpu->r[3];
|
|
/* 02921704 */ _t5 = cpu->r[29] + 0x000001E4u;
|
|
/* 02921704 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02921708 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02921708 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0292170C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292170C */ _t7 = _t6 & 0x00000001u;
|
|
/* 0292170C */ if (_t7) goto L_02921794; else goto L_02921710;
|
|
L_02921710: ; // 0x2921710
|
|
/* 02921710 */ _t8 = cpu->r[29] + 0x00000010u;
|
|
/* 02921710 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02921714 */ _t9 = cpu->r[29] + 0x00000014u;
|
|
/* 02921714 */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02921718 */ cpu->r[11] = rbrew_rlwinm(cpu->r[12], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0292171C */ cpu->r[31] = cpu->r[30] + cpu->r[11];
|
|
/* 02921720 */ cpu->r[10] = 0x00000000u;
|
|
/* 02921724 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[31]);
|
|
/* 02921728 */ _t10 = cpu->r[29] + 0x000001E8u;
|
|
/* 02921728 */ rbrew_write32(cpu->mem, _t10, cpu->r[10]);
|
|
/* 0292172C */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292172C */ _t12 = _t11 & 0x00000001u;
|
|
/* 0292172C */ if (_t12) goto L_0292177C; else goto L_02921730;
|
|
L_02921730: ; // 0x2921730
|
|
/* 02921730 */ _t13 = cpu->r[30] + 0x00000000u;
|
|
/* 02921730 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02921734 */ _t14 = cpu->r[3] + 0x00000030u;
|
|
/* 02921734 */ cpu->r[12] = rbrew_read8(cpu->mem, _t14);
|
|
/* 02921738 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0292173C */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292173C */ _t16 = _t15 & 0x00000001u;
|
|
/* 0292173C */ if (_t16) goto L_02921770; else goto L_02921740;
|
|
L_02921740: ; // 0x2921740
|
|
/* 02921740 */ Gambit_fn_0291EE50(cpu);
|
|
/* 02921744 */ _t17 = cpu->r[29] + 0x000001E8u;
|
|
/* 02921744 */ cpu->r[7] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02921748 */ _t18 = cpu->r[29] + 0x000001ECu;
|
|
/* 02921748 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0292174C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], cpu->r[0]);
|
|
/* 02921750 */ _t19 = cpu->r[30] + 0x00000000u;
|
|
/* 02921750 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02921754 */ _t20 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02921754 */ _t21 = _t20 & 0x00000001u;
|
|
/* 02921754 */ if (_t21) goto L_02921758; else goto L_02921770;
|
|
L_02921758: ; // 0x2921758
|
|
/* 02921758 */ _t22 = cpu->r[29] + 0x000001F0u;
|
|
/* 02921758 */ cpu->r[12] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0292175C */ cpu->r[11] = rbrew_rlwinm(cpu->r[7], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02921760 */ _t23 = cpu->r[11] + cpu->r[12];
|
|
/* 02921760 */ rbrew_write32(cpu->mem, _t23, cpu->r[0]);
|
|
/* 02921764 */ _t24 = cpu->r[29] + 0x000001E8u;
|
|
/* 02921764 */ cpu->r[8] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02921768 */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 0292176C */ _t25 = cpu->r[29] + 0x000001E8u;
|
|
/* 0292176C */ rbrew_write32(cpu->mem, _t25, cpu->r[8]);
|
|
L_02921770: ; // 0x2921770
|
|
/* 02921770 */ cpu->r[30] = cpu->r[30] + 0x00000004u;
|
|
/* 02921774 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[31]);
|
|
/* 02921778 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921778 */ _t27 = _t26 & 0x00000001u;
|
|
/* 02921778 */ if (_t27) goto L_0292177C; else goto L_02921730;
|
|
L_0292177C: ; // 0x292177c
|
|
/* 0292177C */ _t28 = cpu->r[29] + 0x000001E4u;
|
|
/* 0292177C */ cpu->r[9] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02921780 */ cpu->r[9] = rbrew_rlwinm(cpu->r[9], 0x00000000u, 0x00000000u, 0x0000001Eu);
|
|
/* 02921784 */ cpu->r[3] = cpu->r[29] + 0x0000001Cu;
|
|
/* 02921788 */ _t29 = cpu->r[29] + 0x000001E4u;
|
|
/* 02921788 */ rbrew_write32(cpu->mem, _t29, cpu->r[9]);
|
|
/* 0292178C */ Gambit_fn_0294ECA0(cpu);
|
|
/* 02921790 */ goto L_029217C8;
|
|
L_02921794: ; // 0x2921794
|
|
/* 02921794 */ _t30 = cpu->r[29] + 0x000001E8u;
|
|
/* 02921794 */ cpu->r[11] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02921798 */ _t31 = cpu->r[29] + 0x000001F0u;
|
|
/* 02921798 */ cpu->r[30] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0292179C */ cpu->r[10] = rbrew_rlwinm(cpu->r[11], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 029217A0 */ cpu->r[31] = cpu->r[30] + cpu->r[10];
|
|
/* 029217A4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[31]);
|
|
/* 029217A8 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029217A8 */ _t33 = _t32 & 0x00000001u;
|
|
/* 029217A8 */ if (_t33) goto L_029217C0; else goto L_029217AC;
|
|
L_029217AC: ; // 0x29217ac
|
|
/* 029217AC */ _t34 = cpu->r[30] + 0x00000000u;
|
|
/* 029217AC */ cpu->r[3] = rbrew_read32(cpu->mem, _t34);
|
|
/* 029217B0 */ Gambit_fn_0291EE50(cpu);
|
|
/* 029217B4 */ cpu->r[30] = cpu->r[30] + 0x00000004u;
|
|
/* 029217B8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[31]);
|
|
/* 029217BC */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029217BC */ _t36 = _t35 & 0x00000001u;
|
|
/* 029217BC */ if (_t36) goto L_029217C0; else goto L_029217AC;
|
|
L_029217C0: ; // 0x29217c0
|
|
/* 029217C0 */ cpu->r[3] = cpu->r[29] + 0x0000001Cu;
|
|
/* 029217C4 */ Gambit_fn_0294ECA0(cpu);
|
|
L_029217C8: ; // 0x29217c8
|
|
/* 029217C8 */ _t37 = cpu->r[1] + 0x0000000Cu;
|
|
/* 029217C8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t37);
|
|
/* 029217CC */ _t38 = cpu->r[1] + 0x0000001Cu;
|
|
/* 029217CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t38);
|
|
/* 029217D0 */ _t39 = cpu->r[1] + 0x00000010u;
|
|
/* 029217D0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t39);
|
|
/* 029217D4 */ cpu->lr = cpu->r[0];
|
|
/* 029217D8 */ _t40 = cpu->r[1] + 0x00000014u;
|
|
/* 029217D8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t40);
|
|
/* 029217DC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 029217E0 */ return;
|
|
}
|
|
|
|
// fn_029217E4 @ 0x29217e4
|
|
void Gambit_fn_029217E4(CPUState* cpu) {
|
|
uint32_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_029217E4: ; // 0x29217e4
|
|
/* 029217E4 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 029217E4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 029217E4 */ cpu->r[1] = _t0;
|
|
/* 029217E8 */ /* nop */
|
|
/* 029217EC */ cpu->r[0] = cpu->lr;
|
|
/* 029217F0 */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 029217F0 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 029217F4 */ cpu->r[29] = cpu->r[3];
|
|
/* 029217F8 */ cpu->r[28] = cpu->r[6];
|
|
/* 029217FC */ _t2 = cpu->r[29] + 0x000001F4u;
|
|
/* 029217FC */ cpu->r[11] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02921800 */ cpu->r[30] = cpu->r[4];
|
|
/* 02921804 */ cpu->r[27] = cpu->r[5];
|
|
/* 02921808 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[11]);
|
|
/* 0292180C */ _t3 = cpu->r[29] + 0x000001F8u;
|
|
/* 0292180C */ cpu->r[31] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02921810 */ _t4 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02921810 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02921810 */ if (_t5) goto L_02921814; else goto L_0292181C;
|
|
L_02921814: ; // 0x2921814
|
|
/* 02921814 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[28] * (int32_t)0x00000088u);
|
|
/* 02921818 */ cpu->r[31] = cpu->r[31] + cpu->r[0];
|
|
L_0292181C: ; // 0x292181c
|
|
/* 0292181C */ cpu->r[3] = cpu->r[30];
|
|
/* 02921820 */ cpu->r[4] = cpu->r[31];
|
|
/* 02921824 */ Gambit_fn_02C69510(cpu);
|
|
/* 02921828 */ cpu->r[3] = cpu->r[27];
|
|
/* 0292182C */ cpu->r[4] = cpu->r[31] + 0x00000030u;
|
|
/* 02921830 */ Gambit_fn_02C68FF0(cpu);
|
|
/* 02921834 */ cpu->r[12] = 0x10140000u;
|
|
/* 02921838 */ cpu->r[0] = 0x00000000u;
|
|
/* 0292183C */ _t6 = cpu->r[12] + 0x00002B08u;
|
|
/* 0292183C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 02921840 */ _t7 = cpu->r[31] + 0x00000078u;
|
|
/* 02921840 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 02921844 */ _t8 = cpu->r[27] + 0x00000028u;
|
|
/* 02921844 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 02921848 */ cpu->f[12] = cpu->f[0] - cpu->f[11];
|
|
/* 0292184C */ cpu->f[11] = cpu->f[11] + cpu->f[0];
|
|
/* 02921850 */ cpu->f[11] = cpu->f[12] / cpu->f[11];
|
|
/* 02921854 */ _t9 = cpu->r[27] + 0x0000002Cu;
|
|
/* 02921854 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 02921858 */ cpu->r[10] = 0x10140000u;
|
|
/* 0292185C */ _t10 = cpu->r[10] + 0x00002B60u;
|
|
/* 0292185C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 02921860 */ cpu->f[0] = cpu->f[11] + cpu->f[0];
|
|
/* 02921864 */ cpu->f[12] = cpu->f[13] * cpu->f[12];
|
|
/* 02921868 */ cpu->f[0] = cpu->f[12] * cpu->f[0];
|
|
/* 0292186C */ cpu->f[13] = cpu->f[0] / cpu->f[11];
|
|
/* 02921870 */ cpu->f[13] = -cpu->f[13];
|
|
/* 02921874 */ _t11 = cpu->r[31] + 0x00000074u;
|
|
/* 02921874 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[0]);
|
|
/* 02921878 */ _t12 = cpu->r[31] + 0x00000070u;
|
|
/* 02921878 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[13]);
|
|
/* 0292187C */ _t13 = cpu->r[29] + 0x000001E8u;
|
|
/* 0292187C */ cpu->r[9] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02921880 */ _t14 = cpu->r[29] + 0x000001F0u;
|
|
/* 02921880 */ cpu->r[29] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02921884 */ cpu->r[0] = rbrew_rlwinm(cpu->r[9], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02921888 */ cpu->r[31] = cpu->r[29] + cpu->r[0];
|
|
/* 0292188C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[31]);
|
|
/* 02921890 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921890 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02921890 */ if (_t16) goto L_029218C0; else goto L_02921894;
|
|
L_02921894: ; // 0x2921894
|
|
/* 02921894 */ _t17 = cpu->r[29] + 0x00000000u;
|
|
/* 02921894 */ cpu->r[3] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02921898 */ _t18 = cpu->r[3] + 0x00000018u;
|
|
/* 02921898 */ cpu->r[11] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0292189C */ _t19 = cpu->r[11] + 0x0000006Cu;
|
|
/* 0292189C */ cpu->r[12] = rbrew_read32(cpu->mem, _t19);
|
|
/* 029218A0 */ cpu->ctr = cpu->r[12];
|
|
/* 029218A4 */ cpu->r[4] = cpu->r[30];
|
|
/* 029218A8 */ cpu->r[5] = cpu->r[27];
|
|
/* 029218AC */ cpu->r[6] = cpu->r[28];
|
|
/* 029218B0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 029218B4 */ cpu->r[29] = cpu->r[29] + 0x00000004u;
|
|
/* 029218B8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[31]);
|
|
/* 029218BC */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029218BC */ _t21 = _t20 & 0x00000001u;
|
|
/* 029218BC */ if (_t21) goto L_029218C0; else goto L_02921894;
|
|
L_029218C0: ; // 0x29218c0
|
|
/* 029218C0 */ /* nop */
|
|
/* 029218C4 */ _t22 = cpu->r[1] + 0x00000024u;
|
|
/* 029218C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 029218C8 */ cpu->lr = cpu->r[0];
|
|
/* 029218CC */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 029218D0 */ return;
|
|
}
|
|
|
|
// fn_029218D4 @ 0x29218d4
|
|
void Gambit_fn_029218D4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_029218D4: ; // 0x29218d4
|
|
/* 029218D4 */ cpu->r[0] = cpu->lr;
|
|
/* 029218D8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 029218D8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 029218D8 */ cpu->r[1] = _t0;
|
|
/* 029218DC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 029218DC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 029218E0 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 029218E0 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 029218E4 */ cpu->r[31] = cpu->r[4];
|
|
/* 029218E8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 029218E8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 029218EC */ _t4 = cpu->r[31] + 0x00000018u;
|
|
/* 029218EC */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 029218F0 */ _t5 = cpu->r[12] + 0x000000A4u;
|
|
/* 029218F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 029218F4 */ cpu->r[30] = cpu->r[3];
|
|
/* 029218F8 */ cpu->ctr = cpu->r[0];
|
|
/* 029218FC */ cpu->r[3] = cpu->r[31];
|
|
/* 02921900 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02921904 */ _t6 = cpu->r[30] + 0x0000031Cu;
|
|
/* 02921904 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02921908 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], cpu->r[0]);
|
|
/* 0292190C */ _t7 = cpu->r[30] + 0x00000320u;
|
|
/* 0292190C */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02921910 */ _t8 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02921910 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02921910 */ if (_t9) goto L_02921914; else goto L_02921928;
|
|
L_02921914: ; // 0x2921914
|
|
/* 02921914 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[3] * (int32_t)0x00000030u);
|
|
/* 02921918 */ cpu->r[4] = cpu->r[31];
|
|
/* 0292191C */ cpu->r[3] = cpu->r[12] + cpu->r[0];
|
|
/* 02921920 */ Gambit_fn_02952390(cpu);
|
|
/* 02921924 */ goto L_02921934;
|
|
L_02921928: ; // 0x2921928
|
|
/* 02921928 */ cpu->r[4] = cpu->r[31];
|
|
/* 0292192C */ cpu->r[3] = cpu->r[12];
|
|
/* 02921930 */ Gambit_fn_02952390(cpu);
|
|
L_02921934: ; // 0x2921934
|
|
/* 02921934 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02921934 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02921938 */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 02921938 */ cpu->r[30] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0292193C */ cpu->lr = cpu->r[0];
|
|
/* 02921940 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02921940 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02921944 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02921948 */ return;
|
|
}
|
|
|
|
// fn_029218D8 @ 0x29218d8
|
|
void Gambit_fn_029218D8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_029218D8: ; // 0x29218d8
|
|
/* 029218D8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 029218D8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 029218D8 */ cpu->r[1] = _t0;
|
|
/* 029218DC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 029218DC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 029218E0 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 029218E0 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 029218E4 */ cpu->r[31] = cpu->r[4];
|
|
/* 029218E8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 029218E8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 029218EC */ _t4 = cpu->r[31] + 0x00000018u;
|
|
/* 029218EC */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 029218F0 */ _t5 = cpu->r[12] + 0x000000A4u;
|
|
/* 029218F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 029218F4 */ cpu->r[30] = cpu->r[3];
|
|
/* 029218F8 */ cpu->ctr = cpu->r[0];
|
|
/* 029218FC */ cpu->r[3] = cpu->r[31];
|
|
/* 02921900 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02921904 */ _t6 = cpu->r[30] + 0x0000031Cu;
|
|
/* 02921904 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02921908 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], cpu->r[0]);
|
|
/* 0292190C */ _t7 = cpu->r[30] + 0x00000320u;
|
|
/* 0292190C */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02921910 */ _t8 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02921910 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02921910 */ if (_t9) goto L_02921914; else goto L_02921928;
|
|
L_02921914: ; // 0x2921914
|
|
/* 02921914 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[3] * (int32_t)0x00000030u);
|
|
/* 02921918 */ cpu->r[4] = cpu->r[31];
|
|
/* 0292191C */ cpu->r[3] = cpu->r[12] + cpu->r[0];
|
|
/* 02921920 */ Gambit_fn_02952390(cpu);
|
|
/* 02921924 */ goto L_02921934;
|
|
L_02921928: ; // 0x2921928
|
|
/* 02921928 */ cpu->r[4] = cpu->r[31];
|
|
/* 0292192C */ cpu->r[3] = cpu->r[12];
|
|
/* 02921930 */ Gambit_fn_02952390(cpu);
|
|
L_02921934: ; // 0x2921934
|
|
/* 02921934 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02921934 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02921938 */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 02921938 */ cpu->r[30] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0292193C */ cpu->lr = cpu->r[0];
|
|
/* 02921940 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02921940 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02921944 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02921948 */ return;
|
|
}
|
|
|
|
// fn_0292194C @ 0x292194c
|
|
void Gambit_fn_0292194C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0292194C: ; // 0x292194c
|
|
/* 0292194C */ cpu->r[0] = cpu->lr;
|
|
/* 02921950 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02921950 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02921950 */ cpu->r[1] = _t0;
|
|
/* 02921954 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02921954 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02921958 */ cpu->r[31] = cpu->r[3];
|
|
/* 02921958 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0292195C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0292195C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02921960 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921960 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02921960 */ if (_t4) goto L_02921964; else goto L_02921974;
|
|
L_02921964: ; // 0x2921964
|
|
/* 02921964 */ cpu->r[3] = 0x00000210u;
|
|
/* 02921968 */ Gambit_fn_02801A78(cpu);
|
|
/* 0292196C */ cpu->r[31] = cpu->r[3];
|
|
/* 0292196C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02921970 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921970 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02921970 */ if (_t6) goto L_02921998; else goto L_02921974;
|
|
L_02921974: ; // 0x2921974
|
|
/* 02921974 */ cpu->r[3] = cpu->r[31];
|
|
/* 02921978 */ Gambit_fn_0291FAC8(cpu);
|
|
/* 0292197C */ cpu->r[11] = 0x10140000u;
|
|
/* 02921980 */ cpu->r[12] = 0x00000100u;
|
|
/* 02921984 */ cpu->r[11] = cpu->r[11] + 0x00002A50u;
|
|
/* 02921988 */ _t7 = cpu->r[31] + 0x00000208u;
|
|
/* 02921988 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 0292198C */ cpu->r[0] = 0x00000001u;
|
|
/* 02921990 */ _t8 = cpu->r[31] + 0x00000204u;
|
|
/* 02921990 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 02921994 */ _t9 = cpu->r[31] + 0x0000020Cu;
|
|
/* 02921994 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
L_02921998: ; // 0x2921998
|
|
/* 02921998 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02921998 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0292199C */ cpu->r[3] = cpu->r[31];
|
|
/* 029219A0 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 029219A0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 029219A4 */ cpu->lr = cpu->r[0];
|
|
/* 029219A8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 029219AC */ return;
|
|
}
|
|
|
|
// fn_02921950 @ 0x2921950
|
|
void Gambit_fn_02921950(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_02921950: ; // 0x2921950
|
|
/* 02921950 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02921950 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02921950 */ cpu->r[1] = _t0;
|
|
/* 02921954 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02921954 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02921958 */ cpu->r[31] = cpu->r[3];
|
|
/* 02921958 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0292195C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0292195C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02921960 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921960 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02921960 */ if (_t4) goto L_02921964; else goto L_02921974;
|
|
L_02921964: ; // 0x2921964
|
|
/* 02921964 */ cpu->r[3] = 0x00000210u;
|
|
/* 02921968 */ Gambit_fn_02801A78(cpu);
|
|
/* 0292196C */ cpu->r[31] = cpu->r[3];
|
|
/* 0292196C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02921970 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921970 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02921970 */ if (_t6) goto L_02921998; else goto L_02921974;
|
|
L_02921974: ; // 0x2921974
|
|
/* 02921974 */ cpu->r[3] = cpu->r[31];
|
|
/* 02921978 */ Gambit_fn_0291FAC8(cpu);
|
|
/* 0292197C */ cpu->r[11] = 0x10140000u;
|
|
/* 02921980 */ cpu->r[12] = 0x00000100u;
|
|
/* 02921984 */ cpu->r[11] = cpu->r[11] + 0x00002A50u;
|
|
/* 02921988 */ _t7 = cpu->r[31] + 0x00000208u;
|
|
/* 02921988 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 0292198C */ cpu->r[0] = 0x00000001u;
|
|
/* 02921990 */ _t8 = cpu->r[31] + 0x00000204u;
|
|
/* 02921990 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 02921994 */ _t9 = cpu->r[31] + 0x0000020Cu;
|
|
/* 02921994 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
L_02921998: ; // 0x2921998
|
|
/* 02921998 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02921998 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0292199C */ cpu->r[3] = cpu->r[31];
|
|
/* 029219A0 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 029219A0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 029219A4 */ cpu->lr = cpu->r[0];
|
|
/* 029219A8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 029219AC */ return;
|
|
}
|
|
|
|
// fn_029219B0 @ 0x29219b0
|
|
void Gambit_fn_029219B0(CPUState* cpu) {
|
|
uint32_t _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_029219B0: ; // 0x29219b0
|
|
/* 029219B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 029219B4 */ _t0 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 029219B4 */ _t1 = _t0 & 0x00000001u;
|
|
/* 029219B4 */ if (_t1) goto L_029219DC; else goto L_029219B8;
|
|
L_029219B8: ; // 0x29219b8
|
|
/* 029219B8 */ _t2 = cpu->r[3] + 0x00000008u;
|
|
/* 029219B8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t2);
|
|
/* 029219BC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[6]);
|
|
/* 029219C0 */ _t3 = cpu->r[3] + 0x0000000Cu;
|
|
/* 029219C0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 029219C4 */ _t4 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 029219C4 */ _t5 = _t4 & 0x00000001u;
|
|
/* 029219C4 */ if (_t5) goto L_029219C8; else goto L_029219F0;
|
|
L_029219C8: ; // 0x29219c8
|
|
/* 029219C8 */ cpu->r[11] = rbrew_rlwinm(cpu->r[5], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 029219CC */ cpu->r[8] = cpu->r[12] + cpu->r[11];
|
|
/* 029219D0 */ _t6 = cpu->r[8] + 0x00000002u;
|
|
/* 029219D0 */ cpu->r[0] = rbrew_read16(cpu->mem, _t6);
|
|
/* 029219D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], cpu->r[0]);
|
|
/* 029219D8 */ _t7 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 029219D8 */ _t8 = _t7 & 0x00000001u;
|
|
/* 029219D8 */ if (_t8) goto L_029219FC; else goto L_029219DC;
|
|
L_029219DC: ; // 0x29219dc
|
|
/* 029219DC */ cpu->r[3] = 0x00000000u;
|
|
/* 029219E0 */ _t9 = cpu->r[3] + 0x00000018u;
|
|
/* 029219E0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t9);
|
|
/* 029219E4 */ _t10 = cpu->r[11] + 0x00000084u;
|
|
/* 029219E4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t10);
|
|
/* 029219E8 */ cpu->ctr = cpu->r[7];
|
|
/* 029219EC */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
L_029219F0: ; // 0x29219f0
|
|
/* 029219F0 */ _t11 = cpu->r[12] + 0x00000002u;
|
|
/* 029219F0 */ cpu->r[0] = rbrew_read16(cpu->mem, _t11);
|
|
/* 029219F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], cpu->r[0]);
|
|
/* 029219F8 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 029219F8 */ _t13 = _t12 & 0x00000001u;
|
|
/* 029219F8 */ if (_t13) goto L_029219FC; else goto L_029219DC;
|
|
L_029219FC: ; // 0x29219fc
|
|
/* 029219FC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[6]);
|
|
/* 02921A00 */ _t14 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02921A00 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02921A00 */ if (_t15) goto L_02921A04; else goto L_02921A0C;
|
|
L_02921A04: ; // 0x2921a04
|
|
/* 02921A04 */ cpu->r[6] = rbrew_rlwinm(cpu->r[5], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02921A08 */ cpu->r[12] = cpu->r[12] + cpu->r[6];
|
|
L_02921A0C: ; // 0x2921a0c
|
|
/* 02921A0C */ _t16 = cpu->r[12] + 0x00000000u;
|
|
/* 02921A0C */ cpu->r[7] = rbrew_read16(cpu->mem, _t16);
|
|
/* 02921A10 */ _t17 = cpu->r[3] + 0x00000010u;
|
|
/* 02921A10 */ cpu->r[8] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02921A14 */ cpu->r[9] = cpu->r[7] + cpu->r[4];
|
|
/* 02921A18 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[8]);
|
|
/* 02921A1C */ cpu->r[10] = 0x00000000u;
|
|
/* 02921A20 */ _t18 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02921A20 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02921A20 */ if (_t19) goto L_02921A24; else goto L_02921A30;
|
|
L_02921A24: ; // 0x2921a24
|
|
/* 02921A24 */ _t20 = cpu->r[3] + 0x00000014u;
|
|
/* 02921A24 */ cpu->r[10] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02921A28 */ cpu->r[0] = rbrew_rlwinm(cpu->r[9], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02921A2C */ cpu->r[10] = cpu->r[10] + cpu->r[0];
|
|
L_02921A30: ; // 0x2921a30
|
|
/* 02921A30 */ _t21 = cpu->r[10] + 0x00000000u;
|
|
/* 02921A30 */ cpu->r[3] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02921A34 */ _t22 = cpu->r[3] + 0x00000018u;
|
|
/* 02921A34 */ cpu->r[11] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02921A38 */ _t23 = cpu->r[11] + 0x00000084u;
|
|
/* 02921A38 */ cpu->r[7] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02921A3C */ cpu->ctr = cpu->r[7];
|
|
/* 02921A40 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02921A44 @ 0x2921a44
|
|
void Gambit_fn_02921A44(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_02921A44: ; // 0x2921a44
|
|
/* 02921A44 */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 02921A44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02921A48 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[0]);
|
|
/* 02921A4C */ _t1 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02921A4C */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02921A50 */ _t2 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02921A50 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02921A50 */ if (_t3) goto L_02921A54; else goto L_02921A5C;
|
|
L_02921A54: ; // 0x2921a54
|
|
/* 02921A54 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02921A58 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_02921A5C: ; // 0x2921a5c
|
|
/* 02921A5C */ _t4 = cpu->r[12] + 0x00000002u;
|
|
/* 02921A5C */ cpu->r[3] = rbrew_read16(cpu->mem, _t4);
|
|
/* 02921A60 */ return;
|
|
}
|
|
|
|
// fn_02921A64 @ 0x2921a64
|
|
void Gambit_fn_02921A64(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_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t0;
|
|
/* 02801B38 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02801B48 */ _t3 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02801B50 */ if (_t5) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02801B60 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 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 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B74 */ if (_t9) 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 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02801B84 */ if (_t11) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t12 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02801B8C */ _t13 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02801BA0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
L_02921A64: ; // 0x2921a64
|
|
/* 02921A64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02921A68 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921A68 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02921A68 */ if (_t17) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02921A68 */ goto L_02921A6C;
|
|
L_02921A6C: ; // 0x2921a6c
|
|
/* 02921A6C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02921A6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02921A70 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921A70 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02921A70 */ if (_t19) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02921A70 */ goto L_02921A74;
|
|
L_02921A74: ; // 0x2921a74
|
|
/* 02921A74 */ goto L_02801BB0;
|
|
}
|
|
|
|
// fn_02921A78 @ 0x2921a78
|
|
void Gambit_fn_02921A78(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_02921A78: ; // 0x2921a78
|
|
/* 02921A78 */ cpu->r[0] = cpu->lr;
|
|
/* 02921A7C */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 02921A7C */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 02921A80 */ cpu->r[12] = 0x10140000u;
|
|
/* 02921A84 */ _t1 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02921A84 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 02921A84 */ cpu->r[1] = _t1;
|
|
/* 02921A88 */ _t2 = cpu->r[4] + 0x00000000u;
|
|
/* 02921A88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02921A8C */ cpu->r[6] = 0xFFFFFFFFu;
|
|
/* 02921A90 */ _t3 = cpu->r[12] + 0x00002B08u;
|
|
/* 02921A90 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 02921A94 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02921A98 */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 02921A98 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02921A9C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02921AA0 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02921AA0 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02921AA4 */ Gambit_fn_029203C8(cpu);
|
|
/* 02921AA8 */ _t6 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02921AA8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02921AAC */ cpu->lr = cpu->r[0];
|
|
/* 02921AB0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02921AB4 */ return;
|
|
}
|
|
|
|
// fn_02921A84 @ 0x2921a84
|
|
void Gambit_fn_02921A84(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02921A84: ; // 0x2921a84
|
|
/* 02921A84 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02921A84 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02921A84 */ cpu->r[1] = _t0;
|
|
/* 02921A88 */ _t1 = cpu->r[4] + 0x00000000u;
|
|
/* 02921A88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02921A8C */ cpu->r[6] = 0xFFFFFFFFu;
|
|
/* 02921A90 */ _t2 = cpu->r[12] + 0x00002B08u;
|
|
/* 02921A90 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 02921A94 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02921A98 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 02921A98 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02921A9C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02921AA0 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02921AA0 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02921AA4 */ Gambit_fn_029203C8(cpu);
|
|
/* 02921AA8 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02921AA8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02921AAC */ cpu->lr = cpu->r[0];
|
|
/* 02921AB0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02921AB4 */ return;
|
|
}
|
|
|
|
// fn_02921AB8 @ 0x2921ab8
|
|
void Gambit_fn_02921AB8(CPUState* cpu) {
|
|
L_02921AB8: ; // 0x2921ab8
|
|
/* 02921AB8 */ return;
|
|
}
|
|
|
|
// fn_02921ABC @ 0x2921abc
|
|
void Gambit_fn_02921ABC(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_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t0;
|
|
/* 02801B38 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02801B48 */ _t3 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02801B50 */ if (_t5) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02801B60 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 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 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B74 */ if (_t9) 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 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02801B84 */ if (_t11) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t12 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02801B8C */ _t13 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02801BA0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
L_02921ABC: ; // 0x2921abc
|
|
/* 02921ABC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02921AC0 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921AC0 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02921AC0 */ if (_t17) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02921AC0 */ goto L_02921AC4;
|
|
L_02921AC4: ; // 0x2921ac4
|
|
/* 02921AC4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02921AC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02921AC8 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921AC8 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02921AC8 */ if (_t19) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02921AC8 */ goto L_02921ACC;
|
|
L_02921ACC: ; // 0x2921acc
|
|
/* 02921ACC */ goto L_02801BB0;
|
|
}
|
|
|
|
// fn_02921AD0 @ 0x2921ad0
|
|
void Gambit_fn_02921AD0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_02921AD0: ; // 0x2921ad0
|
|
/* 02921AD0 */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 02921AD0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02921AD4 */ _t1 = cpu->r[3] + 0x00000008u;
|
|
/* 02921AD4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02921AD8 */ cpu->r[12] = cpu->r[11] + cpu->r[12];
|
|
/* 02921ADC */ cpu->r[11] = 0x10110000u;
|
|
/* 02921AE0 */ _t2 = cpu->r[11] + 0x00007399u;
|
|
/* 02921AE0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t2);
|
|
/* 02921AE4 */ _t3 = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 02921AE4 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]);
|
|
/* 02921AE8 */ return;
|
|
}
|
|
|
|
// fn_02921AEC @ 0x2921aec
|
|
void Gambit_fn_02921AEC(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_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t0;
|
|
/* 02801B38 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02801B48 */ _t3 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02801B50 */ if (_t5) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02801B60 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 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 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B74 */ if (_t9) 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 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02801B84 */ if (_t11) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t12 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02801B8C */ _t13 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02801BA0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
L_02921AEC: ; // 0x2921aec
|
|
/* 02921AEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02921AF0 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921AF0 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02921AF0 */ if (_t17) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02921AF0 */ goto L_02921AF4;
|
|
L_02921AF4: ; // 0x2921af4
|
|
/* 02921AF4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02921AF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02921AF8 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921AF8 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02921AF8 */ if (_t19) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02921AF8 */ goto L_02921AFC;
|
|
L_02921AFC: ; // 0x2921afc
|
|
/* 02921AFC */ goto L_02801BB0;
|
|
}
|
|
|
|
// fn_02921B00 @ 0x2921b00
|
|
void Gambit_fn_02921B00(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_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t0;
|
|
/* 02801B38 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02801B48 */ _t3 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02801B50 */ if (_t5) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02801B60 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 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 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B74 */ if (_t9) 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 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02801B84 */ if (_t11) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t12 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02801B8C */ _t13 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02801BA0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
L_02921B00: ; // 0x2921b00
|
|
/* 02921B00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02921B04 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921B04 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02921B04 */ if (_t17) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02921B04 */ goto L_02921B08;
|
|
L_02921B08: ; // 0x2921b08
|
|
/* 02921B08 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02921B08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02921B0C */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921B0C */ _t19 = _t18 & 0x00000001u;
|
|
/* 02921B0C */ if (_t19) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02921B0C */ goto L_02921B10;
|
|
L_02921B10: ; // 0x2921b10
|
|
/* 02921B10 */ goto L_02801BB0;
|
|
}
|
|
|
|
// fn_02921B14 @ 0x2921b14
|
|
void Gambit_fn_02921B14(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _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_02921B14: ; // 0x2921b14
|
|
/* 02921B14 */ cpu->r[0] = cpu->lr;
|
|
/* 02921B18 */ _t0 = cpu->r[1] + 0xFFFFFF78u;
|
|
/* 02921B18 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02921B18 */ cpu->r[1] = _t0;
|
|
/* 02921B1C */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 02921B1C */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 02921B20 */ _t2 = cpu->r[1] + 0x00000084u;
|
|
/* 02921B20 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02921B24 */ _t3 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02921B24 */ rbrew_write32(cpu->mem, _t3, cpu->r[8]);
|
|
/* 02921B28 */ _t4 = cpu->r[1] + 0x00000020u;
|
|
/* 02921B28 */ rbrew_write32(cpu->mem, _t4, cpu->r[5]);
|
|
/* 02921B2C */ _t5 = cpu->r[1] + 0x00000018u;
|
|
/* 02921B2C */ rbrew_write32(cpu->mem, _t5, cpu->r[3]);
|
|
/* 02921B30 */ _t6 = cpu->r[1] + 0x0000008Cu;
|
|
/* 02921B30 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02921B34 */ _t7 = cpu->r[1] + 0x00000078u;
|
|
/* 02921B34 */ rbrew_write32(cpu->mem, _t7, cpu->r[28]);
|
|
/* 02921B38 */ _t8 = cpu->r[1] + 0x00000080u;
|
|
/* 02921B38 */ rbrew_write32(cpu->mem, _t8, cpu->r[30]);
|
|
/* 02921B3C */ _t9 = cpu->r[1] + 0x00000024u;
|
|
/* 02921B3C */ rbrew_write32(cpu->mem, _t9, cpu->r[6]);
|
|
/* 02921B40 */ _t10 = cpu->r[1] + 0x00000030u;
|
|
/* 02921B40 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 02921B44 */ _t11 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02921B44 */ rbrew_write32(cpu->mem, _t11, cpu->r[29]);
|
|
/* 02921B48 */ _t12 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02921B48 */ rbrew_write32(cpu->mem, _t12, cpu->r[4]);
|
|
/* 02921B4C */ _t13 = cpu->r[1] + 0x00000028u;
|
|
/* 02921B4C */ rbrew_write32(cpu->mem, _t13, cpu->r[7]);
|
|
/* 02921B50 */ _t14 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 02921B50 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02921B50 */ if (_t15) goto L_02921B54; else goto L_02921B74;
|
|
L_02921B54: ; // 0x2921b54
|
|
/* 02921B54 */ _t16 = cpu->r[1] + 0x00000048u;
|
|
/* 02921B54 */ rbrew_write_f64(cpu->mem, _t16, cpu->f[3]);
|
|
/* 02921B58 */ _t17 = cpu->r[1] + 0x00000068u;
|
|
/* 02921B58 */ rbrew_write_f64(cpu->mem, _t17, cpu->f[7]);
|
|
/* 02921B5C */ _t18 = cpu->r[1] + 0x00000060u;
|
|
/* 02921B5C */ rbrew_write_f64(cpu->mem, _t18, cpu->f[6]);
|
|
/* 02921B60 */ _t19 = cpu->r[1] + 0x00000040u;
|
|
/* 02921B60 */ rbrew_write_f64(cpu->mem, _t19, cpu->f[2]);
|
|
/* 02921B64 */ _t20 = cpu->r[1] + 0x00000050u;
|
|
/* 02921B64 */ rbrew_write_f64(cpu->mem, _t20, cpu->f[4]);
|
|
/* 02921B68 */ _t21 = cpu->r[1] + 0x00000070u;
|
|
/* 02921B68 */ rbrew_write_f64(cpu->mem, _t21, cpu->f[8]);
|
|
/* 02921B6C */ _t22 = cpu->r[1] + 0x00000058u;
|
|
/* 02921B6C */ rbrew_write_f64(cpu->mem, _t22, cpu->f[5]);
|
|
/* 02921B70 */ _t23 = cpu->r[1] + 0x00000038u;
|
|
/* 02921B70 */ rbrew_write_f64(cpu->mem, _t23, cpu->f[1]);
|
|
L_02921B74: ; // 0x2921b74
|
|
/* 02921B74 */ cpu->r[31] = cpu->r[3];
|
|
/* 02921B74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02921B78 */ cpu->r[30] = cpu->r[4];
|
|
/* 02921B7C */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921B7C */ _t25 = _t24 & 0x00000001u;
|
|
/* 02921B7C */ if (_t25) goto L_02921B80; else goto L_02921B90;
|
|
L_02921B80: ; // 0x2921b80
|
|
/* 02921B80 */ cpu->r[3] = 0x0000040Cu;
|
|
/* 02921B84 */ Gambit_fn_02801A78(cpu);
|
|
/* 02921B88 */ cpu->r[31] = cpu->r[3];
|
|
/* 02921B88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02921B8C */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921B8C */ _t27 = _t26 & 0x00000001u;
|
|
/* 02921B8C */ if (_t27) goto L_02921C54; else goto L_02921B90;
|
|
L_02921B90: ; // 0x2921b90
|
|
/* 02921B90 */ cpu->r[29] = cpu->r[31];
|
|
/* 02921B90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02921B94 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921B94 */ _t29 = _t28 & 0x00000001u;
|
|
/* 02921B94 */ if (_t29) goto L_02921B98; else goto L_02921BA8;
|
|
L_02921B98: ; // 0x2921b98
|
|
/* 02921B98 */ cpu->r[3] = 0x0000040Cu;
|
|
/* 02921B9C */ Gambit_fn_02801A78(cpu);
|
|
/* 02921BA0 */ cpu->r[29] = cpu->r[3];
|
|
/* 02921BA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02921BA4 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921BA4 */ _t31 = _t30 & 0x00000001u;
|
|
/* 02921BA4 */ if (_t31) goto L_02921C18; else goto L_02921BA8;
|
|
L_02921BA8: ; // 0x2921ba8
|
|
/* 02921BA8 */ cpu->r[3] = cpu->r[29];
|
|
/* 02921BA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02921BAC */ cpu->r[28] = 0x10110000u;
|
|
/* 02921BB0 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921BB0 */ _t33 = _t32 & 0x00000001u;
|
|
/* 02921BB0 */ if (_t33) goto L_02921BB4; else goto L_02921BE0;
|
|
L_02921BB4: ; // 0x2921bb4
|
|
/* 02921BB4 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02921BB8 */ Gambit_fn_02801A78(cpu);
|
|
/* 02921BBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02921BC0 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921BC0 */ _t35 = _t34 & 0x00000001u;
|
|
/* 02921BC0 */ if (_t35) goto L_02921BC4; else goto L_02921BE0;
|
|
L_02921BC4: ; // 0x2921bc4
|
|
/* 02921BC4 */ cpu->r[7] = 0x10140000u;
|
|
/* 02921BC8 */ _t36 = cpu->r[28] + 0x00007399u;
|
|
/* 02921BC8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t36);
|
|
/* 02921BCC */ cpu->r[7] = cpu->r[7] + 0x00002A70u;
|
|
/* 02921BD0 */ _t37 = cpu->r[29] + 0x00000000u;
|
|
/* 02921BD0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02921BD4 */ _t38 = cpu->r[29] + 0x00000004u;
|
|
/* 02921BD4 */ rbrew_write32(cpu->mem, _t38, cpu->r[7]);
|
|
/* 02921BD8 */ _t39 = cpu->r[8] + 0x00000000u;
|
|
/* 02921BD8 */ rbrew_write8(cpu->mem, _t39, (uint8_t)cpu->r[0]);
|
|
/* 02921BDC */ goto L_02921C18;
|
|
L_02921BE0: ; // 0x2921be0
|
|
/* 02921BE0 */ cpu->r[5] = 0x10140000u;
|
|
/* 02921BE4 */ cpu->r[0] = cpu->r[29] + 0x0000000Cu;
|
|
/* 02921BE8 */ cpu->r[5] = cpu->r[5] + 0x00002A38u;
|
|
/* 02921BEC */ _t40 = cpu->r[3] + 0x00000000u;
|
|
/* 02921BEC */ rbrew_write32(cpu->mem, _t40, cpu->r[0]);
|
|
/* 02921BF0 */ cpu->r[6] = 0x00000400u;
|
|
/* 02921BF4 */ _t41 = cpu->r[3] + 0x00000004u;
|
|
/* 02921BF4 */ rbrew_write32(cpu->mem, _t41, cpu->r[5]);
|
|
/* 02921BF8 */ _t42 = cpu->r[3] + 0x00000008u;
|
|
/* 02921BF8 */ rbrew_write32(cpu->mem, _t42, cpu->r[6]);
|
|
/* 02921BFC */ _t43 = cpu->r[28] + 0x00007399u;
|
|
/* 02921BFC */ cpu->r[0] = rbrew_read8(cpu->mem, _t43);
|
|
/* 02921C00 */ cpu->r[7] = 0x10140000u;
|
|
/* 02921C04 */ _t44 = cpu->r[29] + 0x00000000u;
|
|
/* 02921C04 */ cpu->r[8] = rbrew_read32(cpu->mem, _t44);
|
|
/* 02921C08 */ cpu->r[7] = cpu->r[7] + 0x00002A70u;
|
|
/* 02921C0C */ _t45 = cpu->r[29] + 0x0000040Bu;
|
|
/* 02921C0C */ rbrew_write8(cpu->mem, _t45, (uint8_t)cpu->r[0]);
|
|
/* 02921C10 */ _t46 = cpu->r[29] + 0x00000004u;
|
|
/* 02921C10 */ rbrew_write32(cpu->mem, _t46, cpu->r[7]);
|
|
/* 02921C14 */ _t47 = cpu->r[8] + 0x00000000u;
|
|
/* 02921C14 */ rbrew_write8(cpu->mem, _t47, (uint8_t)cpu->r[0]);
|
|
L_02921C18: ; // 0x2921c18
|
|
/* 02921C18 */ cpu->r[9] = 0x10140000u;
|
|
/* 02921C1C */ cpu->r[12] = 0x00000002u;
|
|
/* 02921C20 */ cpu->r[9] = cpu->r[9] + 0x00002AA0u;
|
|
/* 02921C24 */ cpu->r[0] = cpu->r[1] + 0x00000090u;
|
|
/* 02921C28 */ _t48 = cpu->r[31] + 0x00000004u;
|
|
/* 02921C28 */ rbrew_write32(cpu->mem, _t48, cpu->r[9]);
|
|
/* 02921C2C */ cpu->r[11] = cpu->r[1] + 0x00000018u;
|
|
/* 02921C30 */ _t49 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02921C30 */ rbrew_write32(cpu->mem, _t49, cpu->r[0]);
|
|
/* 02921C34 */ cpu->r[0] = 0x00000000u;
|
|
/* 02921C38 */ _t50 = cpu->r[1] + 0x00000010u;
|
|
/* 02921C38 */ rbrew_write32(cpu->mem, _t50, cpu->r[11]);
|
|
/* 02921C3C */ cpu->r[3] = cpu->r[31];
|
|
/* 02921C40 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02921C44 */ _t51 = cpu->r[1] + 0x00000009u;
|
|
/* 02921C44 */ rbrew_write8(cpu->mem, _t51, (uint8_t)cpu->r[0]);
|
|
/* 02921C48 */ cpu->r[4] = cpu->r[30];
|
|
/* 02921C4C */ _t52 = cpu->r[1] + 0x00000008u;
|
|
/* 02921C4C */ rbrew_write8(cpu->mem, _t52, (uint8_t)cpu->r[12]);
|
|
/* 02921C50 */ Gambit_fn_0282A5DC(cpu);
|
|
L_02921C54: ; // 0x2921c54
|
|
/* 02921C54 */ _t53 = cpu->r[1] + 0x00000078u;
|
|
/* 02921C54 */ cpu->r[28] = rbrew_read32(cpu->mem, _t53);
|
|
/* 02921C58 */ _t54 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02921C58 */ cpu->r[29] = rbrew_read32(cpu->mem, _t54);
|
|
/* 02921C5C */ _t55 = cpu->r[1] + 0x0000008Cu;
|
|
/* 02921C5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t55);
|
|
/* 02921C60 */ cpu->r[3] = cpu->r[31];
|
|
/* 02921C64 */ _t56 = cpu->r[1] + 0x00000080u;
|
|
/* 02921C64 */ cpu->r[30] = rbrew_read32(cpu->mem, _t56);
|
|
/* 02921C68 */ cpu->lr = cpu->r[0];
|
|
/* 02921C6C */ _t57 = cpu->r[1] + 0x00000084u;
|
|
/* 02921C6C */ cpu->r[31] = rbrew_read32(cpu->mem, _t57);
|
|
/* 02921C70 */ cpu->r[1] = cpu->r[1] + 0x00000088u;
|
|
/* 02921C74 */ return;
|
|
}
|
|
|
|
// fn_02921B18 @ 0x2921b18
|
|
void Gambit_fn_02921B18(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _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_02921B18: ; // 0x2921b18
|
|
/* 02921B18 */ _t0 = cpu->r[1] + 0xFFFFFF78u;
|
|
/* 02921B18 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02921B18 */ cpu->r[1] = _t0;
|
|
/* 02921B1C */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 02921B1C */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 02921B20 */ _t2 = cpu->r[1] + 0x00000084u;
|
|
/* 02921B20 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02921B24 */ _t3 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02921B24 */ rbrew_write32(cpu->mem, _t3, cpu->r[8]);
|
|
/* 02921B28 */ _t4 = cpu->r[1] + 0x00000020u;
|
|
/* 02921B28 */ rbrew_write32(cpu->mem, _t4, cpu->r[5]);
|
|
/* 02921B2C */ _t5 = cpu->r[1] + 0x00000018u;
|
|
/* 02921B2C */ rbrew_write32(cpu->mem, _t5, cpu->r[3]);
|
|
/* 02921B30 */ _t6 = cpu->r[1] + 0x0000008Cu;
|
|
/* 02921B30 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02921B34 */ _t7 = cpu->r[1] + 0x00000078u;
|
|
/* 02921B34 */ rbrew_write32(cpu->mem, _t7, cpu->r[28]);
|
|
/* 02921B38 */ _t8 = cpu->r[1] + 0x00000080u;
|
|
/* 02921B38 */ rbrew_write32(cpu->mem, _t8, cpu->r[30]);
|
|
/* 02921B3C */ _t9 = cpu->r[1] + 0x00000024u;
|
|
/* 02921B3C */ rbrew_write32(cpu->mem, _t9, cpu->r[6]);
|
|
/* 02921B40 */ _t10 = cpu->r[1] + 0x00000030u;
|
|
/* 02921B40 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 02921B44 */ _t11 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02921B44 */ rbrew_write32(cpu->mem, _t11, cpu->r[29]);
|
|
/* 02921B48 */ _t12 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02921B48 */ rbrew_write32(cpu->mem, _t12, cpu->r[4]);
|
|
/* 02921B4C */ _t13 = cpu->r[1] + 0x00000028u;
|
|
/* 02921B4C */ rbrew_write32(cpu->mem, _t13, cpu->r[7]);
|
|
/* 02921B50 */ _t14 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 02921B50 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02921B50 */ if (_t15) goto L_02921B54; else goto L_02921B74;
|
|
L_02921B54: ; // 0x2921b54
|
|
/* 02921B54 */ _t16 = cpu->r[1] + 0x00000048u;
|
|
/* 02921B54 */ rbrew_write_f64(cpu->mem, _t16, cpu->f[3]);
|
|
/* 02921B58 */ _t17 = cpu->r[1] + 0x00000068u;
|
|
/* 02921B58 */ rbrew_write_f64(cpu->mem, _t17, cpu->f[7]);
|
|
/* 02921B5C */ _t18 = cpu->r[1] + 0x00000060u;
|
|
/* 02921B5C */ rbrew_write_f64(cpu->mem, _t18, cpu->f[6]);
|
|
/* 02921B60 */ _t19 = cpu->r[1] + 0x00000040u;
|
|
/* 02921B60 */ rbrew_write_f64(cpu->mem, _t19, cpu->f[2]);
|
|
/* 02921B64 */ _t20 = cpu->r[1] + 0x00000050u;
|
|
/* 02921B64 */ rbrew_write_f64(cpu->mem, _t20, cpu->f[4]);
|
|
/* 02921B68 */ _t21 = cpu->r[1] + 0x00000070u;
|
|
/* 02921B68 */ rbrew_write_f64(cpu->mem, _t21, cpu->f[8]);
|
|
/* 02921B6C */ _t22 = cpu->r[1] + 0x00000058u;
|
|
/* 02921B6C */ rbrew_write_f64(cpu->mem, _t22, cpu->f[5]);
|
|
/* 02921B70 */ _t23 = cpu->r[1] + 0x00000038u;
|
|
/* 02921B70 */ rbrew_write_f64(cpu->mem, _t23, cpu->f[1]);
|
|
L_02921B74: ; // 0x2921b74
|
|
/* 02921B74 */ cpu->r[31] = cpu->r[3];
|
|
/* 02921B74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02921B78 */ cpu->r[30] = cpu->r[4];
|
|
/* 02921B7C */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921B7C */ _t25 = _t24 & 0x00000001u;
|
|
/* 02921B7C */ if (_t25) goto L_02921B80; else goto L_02921B90;
|
|
L_02921B80: ; // 0x2921b80
|
|
/* 02921B80 */ cpu->r[3] = 0x0000040Cu;
|
|
/* 02921B84 */ Gambit_fn_02801A78(cpu);
|
|
/* 02921B88 */ cpu->r[31] = cpu->r[3];
|
|
/* 02921B88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02921B8C */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921B8C */ _t27 = _t26 & 0x00000001u;
|
|
/* 02921B8C */ if (_t27) goto L_02921C54; else goto L_02921B90;
|
|
L_02921B90: ; // 0x2921b90
|
|
/* 02921B90 */ cpu->r[29] = cpu->r[31];
|
|
/* 02921B90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02921B94 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921B94 */ _t29 = _t28 & 0x00000001u;
|
|
/* 02921B94 */ if (_t29) goto L_02921B98; else goto L_02921BA8;
|
|
L_02921B98: ; // 0x2921b98
|
|
/* 02921B98 */ cpu->r[3] = 0x0000040Cu;
|
|
/* 02921B9C */ Gambit_fn_02801A78(cpu);
|
|
/* 02921BA0 */ cpu->r[29] = cpu->r[3];
|
|
/* 02921BA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02921BA4 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921BA4 */ _t31 = _t30 & 0x00000001u;
|
|
/* 02921BA4 */ if (_t31) goto L_02921C18; else goto L_02921BA8;
|
|
L_02921BA8: ; // 0x2921ba8
|
|
/* 02921BA8 */ cpu->r[3] = cpu->r[29];
|
|
/* 02921BA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02921BAC */ cpu->r[28] = 0x10110000u;
|
|
/* 02921BB0 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921BB0 */ _t33 = _t32 & 0x00000001u;
|
|
/* 02921BB0 */ if (_t33) goto L_02921BB4; else goto L_02921BE0;
|
|
L_02921BB4: ; // 0x2921bb4
|
|
/* 02921BB4 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02921BB8 */ Gambit_fn_02801A78(cpu);
|
|
/* 02921BBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02921BC0 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921BC0 */ _t35 = _t34 & 0x00000001u;
|
|
/* 02921BC0 */ if (_t35) goto L_02921BC4; else goto L_02921BE0;
|
|
L_02921BC4: ; // 0x2921bc4
|
|
/* 02921BC4 */ cpu->r[7] = 0x10140000u;
|
|
/* 02921BC8 */ _t36 = cpu->r[28] + 0x00007399u;
|
|
/* 02921BC8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t36);
|
|
/* 02921BCC */ cpu->r[7] = cpu->r[7] + 0x00002A70u;
|
|
/* 02921BD0 */ _t37 = cpu->r[29] + 0x00000000u;
|
|
/* 02921BD0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02921BD4 */ _t38 = cpu->r[29] + 0x00000004u;
|
|
/* 02921BD4 */ rbrew_write32(cpu->mem, _t38, cpu->r[7]);
|
|
/* 02921BD8 */ _t39 = cpu->r[8] + 0x00000000u;
|
|
/* 02921BD8 */ rbrew_write8(cpu->mem, _t39, (uint8_t)cpu->r[0]);
|
|
/* 02921BDC */ goto L_02921C18;
|
|
L_02921BE0: ; // 0x2921be0
|
|
/* 02921BE0 */ cpu->r[5] = 0x10140000u;
|
|
/* 02921BE4 */ cpu->r[0] = cpu->r[29] + 0x0000000Cu;
|
|
/* 02921BE8 */ cpu->r[5] = cpu->r[5] + 0x00002A38u;
|
|
/* 02921BEC */ _t40 = cpu->r[3] + 0x00000000u;
|
|
/* 02921BEC */ rbrew_write32(cpu->mem, _t40, cpu->r[0]);
|
|
/* 02921BF0 */ cpu->r[6] = 0x00000400u;
|
|
/* 02921BF4 */ _t41 = cpu->r[3] + 0x00000004u;
|
|
/* 02921BF4 */ rbrew_write32(cpu->mem, _t41, cpu->r[5]);
|
|
/* 02921BF8 */ _t42 = cpu->r[3] + 0x00000008u;
|
|
/* 02921BF8 */ rbrew_write32(cpu->mem, _t42, cpu->r[6]);
|
|
/* 02921BFC */ _t43 = cpu->r[28] + 0x00007399u;
|
|
/* 02921BFC */ cpu->r[0] = rbrew_read8(cpu->mem, _t43);
|
|
/* 02921C00 */ cpu->r[7] = 0x10140000u;
|
|
/* 02921C04 */ _t44 = cpu->r[29] + 0x00000000u;
|
|
/* 02921C04 */ cpu->r[8] = rbrew_read32(cpu->mem, _t44);
|
|
/* 02921C08 */ cpu->r[7] = cpu->r[7] + 0x00002A70u;
|
|
/* 02921C0C */ _t45 = cpu->r[29] + 0x0000040Bu;
|
|
/* 02921C0C */ rbrew_write8(cpu->mem, _t45, (uint8_t)cpu->r[0]);
|
|
/* 02921C10 */ _t46 = cpu->r[29] + 0x00000004u;
|
|
/* 02921C10 */ rbrew_write32(cpu->mem, _t46, cpu->r[7]);
|
|
/* 02921C14 */ _t47 = cpu->r[8] + 0x00000000u;
|
|
/* 02921C14 */ rbrew_write8(cpu->mem, _t47, (uint8_t)cpu->r[0]);
|
|
L_02921C18: ; // 0x2921c18
|
|
/* 02921C18 */ cpu->r[9] = 0x10140000u;
|
|
/* 02921C1C */ cpu->r[12] = 0x00000002u;
|
|
/* 02921C20 */ cpu->r[9] = cpu->r[9] + 0x00002AA0u;
|
|
/* 02921C24 */ cpu->r[0] = cpu->r[1] + 0x00000090u;
|
|
/* 02921C28 */ _t48 = cpu->r[31] + 0x00000004u;
|
|
/* 02921C28 */ rbrew_write32(cpu->mem, _t48, cpu->r[9]);
|
|
/* 02921C2C */ cpu->r[11] = cpu->r[1] + 0x00000018u;
|
|
/* 02921C30 */ _t49 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02921C30 */ rbrew_write32(cpu->mem, _t49, cpu->r[0]);
|
|
/* 02921C34 */ cpu->r[0] = 0x00000000u;
|
|
/* 02921C38 */ _t50 = cpu->r[1] + 0x00000010u;
|
|
/* 02921C38 */ rbrew_write32(cpu->mem, _t50, cpu->r[11]);
|
|
/* 02921C3C */ cpu->r[3] = cpu->r[31];
|
|
/* 02921C40 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02921C44 */ _t51 = cpu->r[1] + 0x00000009u;
|
|
/* 02921C44 */ rbrew_write8(cpu->mem, _t51, (uint8_t)cpu->r[0]);
|
|
/* 02921C48 */ cpu->r[4] = cpu->r[30];
|
|
/* 02921C4C */ _t52 = cpu->r[1] + 0x00000008u;
|
|
/* 02921C4C */ rbrew_write8(cpu->mem, _t52, (uint8_t)cpu->r[12]);
|
|
/* 02921C50 */ Gambit_fn_0282A5DC(cpu);
|
|
L_02921C54: ; // 0x2921c54
|
|
/* 02921C54 */ _t53 = cpu->r[1] + 0x00000078u;
|
|
/* 02921C54 */ cpu->r[28] = rbrew_read32(cpu->mem, _t53);
|
|
/* 02921C58 */ _t54 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02921C58 */ cpu->r[29] = rbrew_read32(cpu->mem, _t54);
|
|
/* 02921C5C */ _t55 = cpu->r[1] + 0x0000008Cu;
|
|
/* 02921C5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t55);
|
|
/* 02921C60 */ cpu->r[3] = cpu->r[31];
|
|
/* 02921C64 */ _t56 = cpu->r[1] + 0x00000080u;
|
|
/* 02921C64 */ cpu->r[30] = rbrew_read32(cpu->mem, _t56);
|
|
/* 02921C68 */ cpu->lr = cpu->r[0];
|
|
/* 02921C6C */ _t57 = cpu->r[1] + 0x00000084u;
|
|
/* 02921C6C */ cpu->r[31] = rbrew_read32(cpu->mem, _t57);
|
|
/* 02921C70 */ cpu->r[1] = cpu->r[1] + 0x00000088u;
|
|
/* 02921C74 */ return;
|
|
}
|
|
|
|
// fn_02921C78 @ 0x2921c78
|
|
void Gambit_fn_02921C78(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_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t0;
|
|
/* 02801B38 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02801B48 */ _t3 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02801B50 */ if (_t5) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02801B60 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 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 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B74 */ if (_t9) 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 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02801B84 */ if (_t11) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t12 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02801B8C */ _t13 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02801BA0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
L_02921C78: ; // 0x2921c78
|
|
/* 02921C78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02921C7C */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921C7C */ _t17 = _t16 & 0x00000001u;
|
|
/* 02921C7C */ if (_t17) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02921C7C */ goto L_02921C80;
|
|
L_02921C80: ; // 0x2921c80
|
|
/* 02921C80 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02921C80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02921C84 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921C84 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02921C84 */ if (_t19) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02921C84 */ goto L_02921C88;
|
|
L_02921C88: ; // 0x2921c88
|
|
/* 02921C88 */ goto L_02801BB0;
|
|
}
|
|
|
|
// fn_02921C8C @ 0x2921c8c
|
|
void Gambit_fn_02921C8C(CPUState* cpu) {
|
|
L_02921C8C: ; // 0x2921c8c
|
|
/* 02921C8C */ cpu->r[3] = 0x00000001u;
|
|
/* 02921C90 */ return;
|
|
}
|
|
|
|
// fn_02921C94 @ 0x2921c94
|
|
void Gambit_fn_02921C94(CPUState* cpu) {
|
|
L_02921C94: ; // 0x2921c94
|
|
/* 02921C94 */ return;
|
|
}
|
|
|
|
// fn_02921C98 @ 0x2921c98
|
|
void Gambit_fn_02921C98(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_02921C98: ; // 0x2921c98
|
|
/* 02921C98 */ _t0 = cpu->r[4] + 0x00000000u;
|
|
/* 02921C98 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02921C9C */ _t1 = cpu->r[3] + 0x00000010u;
|
|
/* 02921C9C */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02921CA0 */ _t2 = cpu->r[11] + 0x00000004u;
|
|
/* 02921CA0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02921CA4 */ cpu->r[0] = cpu->r[11] ^ cpu->r[12];
|
|
/* 02921CA8 */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 02921CAC */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 02921CB0 */ return;
|
|
}
|
|
|
|
// fn_02921CB4 @ 0x2921cb4
|
|
void Gambit_fn_02921CB4(CPUState* cpu) {
|
|
L_02921CB4: ; // 0x2921cb4
|
|
/* 02921CB4 */ return;
|
|
}
|
|
|
|
// fn_02921CB8 @ 0x2921cb8
|
|
void Gambit_fn_02921CB8(CPUState* cpu) {
|
|
L_02921CB8: ; // 0x2921cb8
|
|
/* 02921CB8 */ return;
|
|
}
|
|
|
|
// fn_02921CBC @ 0x2921cbc
|
|
void Gambit_fn_02921CBC(CPUState* cpu) {
|
|
L_02921CBC: ; // 0x2921cbc
|
|
/* 02921CBC */ return;
|
|
}
|
|
|
|
// fn_02921CC0 @ 0x2921cc0
|
|
void Gambit_fn_02921CC0(CPUState* 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_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t0;
|
|
/* 02801B38 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02801B48 */ _t3 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02801B50 */ if (_t5) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02801B60 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 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 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B74 */ if (_t9) 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 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02801B84 */ if (_t11) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t12 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02801B8C */ _t13 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02801BA0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
L_02921CC0: ; // 0x2921cc0
|
|
/* 02921CC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02921CC4 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921CC4 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02921CC4 */ if (_t17) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02921CC4 */ goto L_02921CC8;
|
|
L_02921CC8: ; // 0x2921cc8
|
|
/* 02921CC8 */ cpu->r[0] = 0x10140000u;
|
|
/* 02921CCC */ cpu->r[0] = cpu->r[0] + 0x00002A60u;
|
|
/* 02921CD0 */ cpu->r[12] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02921CD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02921CD4 */ _t18 = cpu->r[3] + 0x00000024u;
|
|
/* 02921CD4 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
/* 02921CD8 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921CD8 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02921CD8 */ if (_t20) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02921CD8 */ goto L_02921CDC;
|
|
L_02921CDC: ; // 0x2921cdc
|
|
/* 02921CDC */ goto L_02801BB0;
|
|
}
|
|
|
|
// fn_02921CE0 @ 0x2921ce0
|
|
void Gambit_fn_02921CE0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46;
|
|
|
|
L_02921CE0: ; // 0x2921ce0
|
|
/* 02921CE0 */ _t0 = cpu->r[3] + 0x000000C4u;
|
|
/* 02921CE0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02921CE4 */ _t1 = cpu->r[3] + 0x000000C8u;
|
|
/* 02921CE4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02921CE8 */ cpu->r[12] = (uint32_t)((int32_t)cpu->r[12] * (int32_t)0x000000A4u);
|
|
/* 02921CEC */ cpu->r[12] = cpu->r[10] + cpu->r[12];
|
|
/* 02921CF0 */ cpu->r[11] = cpu->r[10];
|
|
/* 02921CF4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[12]);
|
|
/* 02921CF8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921CF8 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02921CF8 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02921CF8 */ goto L_02921CFC;
|
|
L_02921CFC: ; // 0x2921cfc
|
|
/* 02921CFC */ cpu->r[9] = cpu->r[10] + 0x0000001Cu;
|
|
/* 02921D00 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[9]);
|
|
/* 02921D04 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921D04 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02921D04 */ if (_t5) goto L_02921D18; else goto L_02921D08;
|
|
L_02921D08: ; // 0x2921d08
|
|
/* 02921D08 */ goto L_02921E08;
|
|
L_02921D0C: ; // 0x2921d0c
|
|
/* 02921D0C */ cpu->r[9] = cpu->r[10] + 0x0000001Cu;
|
|
/* 02921D10 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[9]);
|
|
/* 02921D14 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921D14 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02921D14 */ if (_t7) goto L_02921D18; else goto L_02921E08;
|
|
L_02921D18: ; // 0x2921d18
|
|
/* 02921D18 */ cpu->r[10] = cpu->r[10] - cpu->r[11];
|
|
/* 02921D1C */ cpu->r[11] = 0xC7CE0000u;
|
|
/* 02921D20 */ cpu->r[11] = cpu->r[11] + 0x00000C7Du;
|
|
/* 02921D24 */ _t8 = cpu->r[4] + 0x00000038u;
|
|
/* 02921D24 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02921D28 */ /* nop */
|
|
/* 02921D2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02921D30 */ cpu->r[10] = rbrew_rlwinm(cpu->r[11], 0x00000019u, 0x00000007u, 0x0000001Fu);
|
|
/* 02921D34 */ _t9 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02921D34 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02921D34 */ if (_t10) goto L_02921DE4; else goto L_02921D38;
|
|
L_02921D38: ; // 0x2921d38
|
|
/* 02921D38 */ _t11 = cpu->r[3] + 0x000000A4u;
|
|
/* 02921D38 */ cpu->r[6] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02921D3C */ _t12 = cpu->r[4] + 0x0000004Cu;
|
|
/* 02921D3C */ cpu->r[7] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02921D40 */ _t13 = cpu->r[6] + 0x00000008u;
|
|
/* 02921D40 */ cpu->r[8] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02921D44 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[8]);
|
|
/* 02921D48 */ _t14 = cpu->r[6] + 0x0000000Cu;
|
|
/* 02921D48 */ cpu->r[11] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02921D4C */ _t15 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02921D4C */ _t16 = _t15 & 0x00000001u;
|
|
/* 02921D4C */ if (_t16) goto L_02921D50; else goto L_02921D68;
|
|
L_02921D50: ; // 0x2921d50
|
|
/* 02921D50 */ cpu->r[9] = rbrew_rlwinm(cpu->r[7], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02921D54 */ cpu->r[9] = cpu->r[11] + cpu->r[9];
|
|
/* 02921D58 */ _t17 = cpu->r[9] + 0x00000002u;
|
|
/* 02921D58 */ cpu->r[9] = rbrew_read16(cpu->mem, _t17);
|
|
/* 02921D5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], cpu->r[9]);
|
|
/* 02921D60 */ _t18 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02921D60 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02921D60 */ if (_t19) goto L_02921D74; else goto L_02921D64;
|
|
L_02921D64: ; // 0x2921d64
|
|
/* 02921D64 */ goto L_02921DC0;
|
|
L_02921D68: ; // 0x2921d68
|
|
/* 02921D68 */ _t20 = cpu->r[11] + 0x00000002u;
|
|
/* 02921D68 */ cpu->r[9] = rbrew_read16(cpu->mem, _t20);
|
|
/* 02921D6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], cpu->r[9]);
|
|
/* 02921D70 */ _t21 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02921D70 */ _t22 = _t21 & 0x00000001u;
|
|
/* 02921D70 */ if (_t22) goto L_02921D74; else goto L_02921DC0;
|
|
L_02921D74: ; // 0x2921d74
|
|
/* 02921D74 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[8]);
|
|
/* 02921D78 */ _t23 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02921D78 */ _t24 = _t23 & 0x00000001u;
|
|
/* 02921D78 */ if (_t24) goto L_02921D7C; else goto L_02921D84;
|
|
L_02921D7C: ; // 0x2921d7c
|
|
/* 02921D7C */ cpu->r[9] = rbrew_rlwinm(cpu->r[7], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02921D80 */ cpu->r[11] = cpu->r[11] + cpu->r[9];
|
|
L_02921D84: ; // 0x2921d84
|
|
/* 02921D84 */ _t25 = cpu->r[11] + 0x00000000u;
|
|
/* 02921D84 */ cpu->r[9] = rbrew_read16(cpu->mem, _t25);
|
|
/* 02921D88 */ _t26 = cpu->r[6] + 0x00000010u;
|
|
/* 02921D88 */ cpu->r[11] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02921D8C */ cpu->r[9] = cpu->r[9] + cpu->r[12];
|
|
/* 02921D90 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[11]);
|
|
/* 02921D94 */ cpu->r[12] = 0x00000000u;
|
|
/* 02921D98 */ _t27 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02921D98 */ _t28 = _t27 & 0x00000001u;
|
|
/* 02921D98 */ if (_t28) goto L_02921D9C; else goto L_02921DA8;
|
|
L_02921D9C: ; // 0x2921d9c
|
|
/* 02921D9C */ _t29 = cpu->r[6] + 0x00000014u;
|
|
/* 02921D9C */ cpu->r[12] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02921DA0 */ cpu->r[11] = rbrew_rlwinm(cpu->r[9], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02921DA4 */ cpu->r[12] = cpu->r[12] + cpu->r[11];
|
|
L_02921DA8: ; // 0x2921da8
|
|
/* 02921DA8 */ _t30 = cpu->r[12] + 0x00000000u;
|
|
/* 02921DA8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02921DAC */ _t31 = cpu->r[3] + 0x00000010u;
|
|
/* 02921DAC */ cpu->r[12] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02921DB0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[12]);
|
|
/* 02921DB4 */ _t32 = cpu->r[3] + 0x00000014u;
|
|
/* 02921DB4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02921DB8 */ _t33 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02921DB8 */ _t34 = _t33 & 0x00000001u;
|
|
/* 02921DB8 */ if (_t34) goto L_02921DD4; else goto L_02921DBC;
|
|
L_02921DBC: ; // 0x2921dbc
|
|
/* 02921DBC */ goto L_02921DDC;
|
|
L_02921DC0: ; // 0x2921dc0
|
|
/* 02921DC0 */ _t35 = cpu->r[3] + 0x00000010u;
|
|
/* 02921DC0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02921DC4 */ cpu->r[11] = 0x00000000u;
|
|
/* 02921DC8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[12]);
|
|
/* 02921DCC */ _t36 = cpu->r[3] + 0x00000014u;
|
|
/* 02921DCC */ cpu->r[12] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02921DD0 */ _t37 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02921DD0 */ _t38 = _t37 & 0x00000001u;
|
|
/* 02921DD0 */ if (_t38) goto L_02921DD4; else goto L_02921DBC;
|
|
L_02921DD4: ; // 0x2921dd4
|
|
/* 02921DD4 */ cpu->r[10] = rbrew_rlwinm(cpu->r[10], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02921DD8 */ cpu->r[12] = cpu->r[12] + cpu->r[10];
|
|
L_02921DDC: ; // 0x2921ddc
|
|
/* 02921DDC */ _t39 = cpu->r[12] + 0x00000000u;
|
|
/* 02921DDC */ rbrew_write32(cpu->mem, _t39, cpu->r[11]);
|
|
/* 02921DE0 */ return;
|
|
L_02921DE4: ; // 0x2921de4
|
|
/* 02921DE4 */ _t40 = cpu->r[3] + 0x00000010u;
|
|
/* 02921DE4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02921DE8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[12]);
|
|
/* 02921DEC */ _t41 = cpu->r[3] + 0x00000014u;
|
|
/* 02921DEC */ cpu->r[12] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02921DF0 */ _t42 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02921DF0 */ _t43 = _t42 & 0x00000001u;
|
|
/* 02921DF0 */ if (_t43) goto L_02921DF4; else goto L_02921DFC;
|
|
L_02921DF4: ; // 0x2921df4
|
|
/* 02921DF4 */ cpu->r[11] = rbrew_rlwinm(cpu->r[10], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02921DF8 */ cpu->r[12] = cpu->r[12] + cpu->r[11];
|
|
L_02921DFC: ; // 0x2921dfc
|
|
/* 02921DFC */ cpu->r[11] = 0x00000000u;
|
|
/* 02921E00 */ _t44 = cpu->r[12] + 0x00000000u;
|
|
/* 02921E00 */ rbrew_write32(cpu->mem, _t44, cpu->r[11]);
|
|
/* 02921E04 */ return;
|
|
L_02921E08: ; // 0x2921e08
|
|
/* 02921E08 */ cpu->r[10] = cpu->r[10] + 0x000000A4u;
|
|
/* 02921E0C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[12]);
|
|
/* 02921E10 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921E10 */ _t46 = _t45 & 0x00000001u;
|
|
/* 02921E10 */ if (_t46) goto L_02921E14; else goto L_02921D0C;
|
|
L_02921E14: ; // 0x2921e14
|
|
/* 02921E14 */ return;
|
|
}
|
|
|
|
// fn_02921E18 @ 0x2921e18
|
|
void Gambit_fn_02921E18(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46;
|
|
|
|
L_02921CE0: ; // 0x2921ce0
|
|
/* 02921CE0 */ _t0 = cpu->r[3] + 0x000000C4u;
|
|
/* 02921CE0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02921CE4 */ _t1 = cpu->r[3] + 0x000000C8u;
|
|
/* 02921CE4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02921CE8 */ cpu->r[12] = (uint32_t)((int32_t)cpu->r[12] * (int32_t)0x000000A4u);
|
|
/* 02921CEC */ cpu->r[12] = cpu->r[10] + cpu->r[12];
|
|
/* 02921CF0 */ cpu->r[11] = cpu->r[10];
|
|
/* 02921CF4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[12]);
|
|
/* 02921CF8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921CF8 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02921CF8 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02921CF8 */ goto L_02921CFC;
|
|
L_02921CFC: ; // 0x2921cfc
|
|
/* 02921CFC */ cpu->r[9] = cpu->r[10] + 0x0000001Cu;
|
|
/* 02921D00 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[9]);
|
|
/* 02921D04 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921D04 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02921D04 */ if (_t5) goto L_02921D18; else goto L_02921D08;
|
|
L_02921D08: ; // 0x2921d08
|
|
/* 02921D08 */ goto L_02921E08;
|
|
L_02921D0C: ; // 0x2921d0c
|
|
/* 02921D0C */ cpu->r[9] = cpu->r[10] + 0x0000001Cu;
|
|
/* 02921D10 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[9]);
|
|
/* 02921D14 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921D14 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02921D14 */ if (_t7) goto L_02921D18; else goto L_02921E08;
|
|
L_02921D18: ; // 0x2921d18
|
|
/* 02921D18 */ cpu->r[10] = cpu->r[10] - cpu->r[11];
|
|
/* 02921D1C */ cpu->r[11] = 0xC7CE0000u;
|
|
/* 02921D20 */ cpu->r[11] = cpu->r[11] + 0x00000C7Du;
|
|
/* 02921D24 */ _t8 = cpu->r[4] + 0x00000038u;
|
|
/* 02921D24 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02921D28 */ /* nop */
|
|
/* 02921D2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02921D30 */ cpu->r[10] = rbrew_rlwinm(cpu->r[11], 0x00000019u, 0x00000007u, 0x0000001Fu);
|
|
/* 02921D34 */ _t9 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02921D34 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02921D34 */ if (_t10) goto L_02921DE4; else goto L_02921D38;
|
|
L_02921D38: ; // 0x2921d38
|
|
/* 02921D38 */ _t11 = cpu->r[3] + 0x000000A4u;
|
|
/* 02921D38 */ cpu->r[6] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02921D3C */ _t12 = cpu->r[4] + 0x0000004Cu;
|
|
/* 02921D3C */ cpu->r[7] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02921D40 */ _t13 = cpu->r[6] + 0x00000008u;
|
|
/* 02921D40 */ cpu->r[8] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02921D44 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[8]);
|
|
/* 02921D48 */ _t14 = cpu->r[6] + 0x0000000Cu;
|
|
/* 02921D48 */ cpu->r[11] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02921D4C */ _t15 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02921D4C */ _t16 = _t15 & 0x00000001u;
|
|
/* 02921D4C */ if (_t16) goto L_02921D50; else goto L_02921D68;
|
|
L_02921D50: ; // 0x2921d50
|
|
/* 02921D50 */ cpu->r[9] = rbrew_rlwinm(cpu->r[7], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02921D54 */ cpu->r[9] = cpu->r[11] + cpu->r[9];
|
|
/* 02921D58 */ _t17 = cpu->r[9] + 0x00000002u;
|
|
/* 02921D58 */ cpu->r[9] = rbrew_read16(cpu->mem, _t17);
|
|
/* 02921D5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], cpu->r[9]);
|
|
/* 02921D60 */ _t18 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02921D60 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02921D60 */ if (_t19) goto L_02921D74; else goto L_02921D64;
|
|
L_02921D64: ; // 0x2921d64
|
|
/* 02921D64 */ goto L_02921DC0;
|
|
L_02921D68: ; // 0x2921d68
|
|
/* 02921D68 */ _t20 = cpu->r[11] + 0x00000002u;
|
|
/* 02921D68 */ cpu->r[9] = rbrew_read16(cpu->mem, _t20);
|
|
/* 02921D6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], cpu->r[9]);
|
|
/* 02921D70 */ _t21 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02921D70 */ _t22 = _t21 & 0x00000001u;
|
|
/* 02921D70 */ if (_t22) goto L_02921D74; else goto L_02921DC0;
|
|
L_02921D74: ; // 0x2921d74
|
|
/* 02921D74 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[8]);
|
|
/* 02921D78 */ _t23 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02921D78 */ _t24 = _t23 & 0x00000001u;
|
|
/* 02921D78 */ if (_t24) goto L_02921D7C; else goto L_02921D84;
|
|
L_02921D7C: ; // 0x2921d7c
|
|
/* 02921D7C */ cpu->r[9] = rbrew_rlwinm(cpu->r[7], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02921D80 */ cpu->r[11] = cpu->r[11] + cpu->r[9];
|
|
L_02921D84: ; // 0x2921d84
|
|
/* 02921D84 */ _t25 = cpu->r[11] + 0x00000000u;
|
|
/* 02921D84 */ cpu->r[9] = rbrew_read16(cpu->mem, _t25);
|
|
/* 02921D88 */ _t26 = cpu->r[6] + 0x00000010u;
|
|
/* 02921D88 */ cpu->r[11] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02921D8C */ cpu->r[9] = cpu->r[9] + cpu->r[12];
|
|
/* 02921D90 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[11]);
|
|
/* 02921D94 */ cpu->r[12] = 0x00000000u;
|
|
/* 02921D98 */ _t27 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02921D98 */ _t28 = _t27 & 0x00000001u;
|
|
/* 02921D98 */ if (_t28) goto L_02921D9C; else goto L_02921DA8;
|
|
L_02921D9C: ; // 0x2921d9c
|
|
/* 02921D9C */ _t29 = cpu->r[6] + 0x00000014u;
|
|
/* 02921D9C */ cpu->r[12] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02921DA0 */ cpu->r[11] = rbrew_rlwinm(cpu->r[9], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02921DA4 */ cpu->r[12] = cpu->r[12] + cpu->r[11];
|
|
L_02921DA8: ; // 0x2921da8
|
|
/* 02921DA8 */ _t30 = cpu->r[12] + 0x00000000u;
|
|
/* 02921DA8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02921DAC */ _t31 = cpu->r[3] + 0x00000010u;
|
|
/* 02921DAC */ cpu->r[12] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02921DB0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[12]);
|
|
/* 02921DB4 */ _t32 = cpu->r[3] + 0x00000014u;
|
|
/* 02921DB4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02921DB8 */ _t33 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02921DB8 */ _t34 = _t33 & 0x00000001u;
|
|
/* 02921DB8 */ if (_t34) goto L_02921DD4; else goto L_02921DBC;
|
|
L_02921DBC: ; // 0x2921dbc
|
|
/* 02921DBC */ goto L_02921DDC;
|
|
L_02921DC0: ; // 0x2921dc0
|
|
/* 02921DC0 */ _t35 = cpu->r[3] + 0x00000010u;
|
|
/* 02921DC0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02921DC4 */ cpu->r[11] = 0x00000000u;
|
|
/* 02921DC8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[12]);
|
|
/* 02921DCC */ _t36 = cpu->r[3] + 0x00000014u;
|
|
/* 02921DCC */ cpu->r[12] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02921DD0 */ _t37 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02921DD0 */ _t38 = _t37 & 0x00000001u;
|
|
/* 02921DD0 */ if (_t38) goto L_02921DD4; else goto L_02921DBC;
|
|
L_02921DD4: ; // 0x2921dd4
|
|
/* 02921DD4 */ cpu->r[10] = rbrew_rlwinm(cpu->r[10], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02921DD8 */ cpu->r[12] = cpu->r[12] + cpu->r[10];
|
|
L_02921DDC: ; // 0x2921ddc
|
|
/* 02921DDC */ _t39 = cpu->r[12] + 0x00000000u;
|
|
/* 02921DDC */ rbrew_write32(cpu->mem, _t39, cpu->r[11]);
|
|
/* 02921DE0 */ return;
|
|
L_02921DE4: ; // 0x2921de4
|
|
/* 02921DE4 */ _t40 = cpu->r[3] + 0x00000010u;
|
|
/* 02921DE4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02921DE8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[12]);
|
|
/* 02921DEC */ _t41 = cpu->r[3] + 0x00000014u;
|
|
/* 02921DEC */ cpu->r[12] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02921DF0 */ _t42 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02921DF0 */ _t43 = _t42 & 0x00000001u;
|
|
/* 02921DF0 */ if (_t43) goto L_02921DF4; else goto L_02921DFC;
|
|
L_02921DF4: ; // 0x2921df4
|
|
/* 02921DF4 */ cpu->r[11] = rbrew_rlwinm(cpu->r[10], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02921DF8 */ cpu->r[12] = cpu->r[12] + cpu->r[11];
|
|
L_02921DFC: ; // 0x2921dfc
|
|
/* 02921DFC */ cpu->r[11] = 0x00000000u;
|
|
/* 02921E00 */ _t44 = cpu->r[12] + 0x00000000u;
|
|
/* 02921E00 */ rbrew_write32(cpu->mem, _t44, cpu->r[11]);
|
|
/* 02921E04 */ return;
|
|
L_02921E08: ; // 0x2921e08
|
|
/* 02921E08 */ cpu->r[10] = cpu->r[10] + 0x000000A4u;
|
|
/* 02921E0C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[12]);
|
|
/* 02921E10 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921E10 */ _t46 = _t45 & 0x00000001u;
|
|
/* 02921E10 */ if (_t46) goto L_02921E14; else goto L_02921D0C;
|
|
L_02921E14: ; // 0x2921e14
|
|
/* 02921E14 */ return;
|
|
L_02921E18: ; // 0x2921e18
|
|
/* 02921E18 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFE4u;
|
|
/* 02921E1C */ goto L_02921CE0;
|
|
}
|
|
|
|
// fn_02921E20 @ 0x2921e20
|
|
void Gambit_fn_02921E20(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_02921E20: ; // 0x2921e20
|
|
/* 02921E20 */ cpu->r[0] = cpu->lr;
|
|
/* 02921E24 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02921E24 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02921E24 */ cpu->r[1] = _t0;
|
|
/* 02921E28 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02921E28 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 02921E2C */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 02921E2C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02921E30 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02921E30 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 02921E34 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02921E34 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02921E38 */ cpu->r[29] = cpu->r[4];
|
|
/* 02921E3C */ _t5 = cpu->r[3] + 0x000000C4u;
|
|
/* 02921E3C */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02921E40 */ _t6 = cpu->r[3] + 0x000000C8u;
|
|
/* 02921E40 */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02921E44 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[12] * (int32_t)0x000000A4u);
|
|
/* 02921E48 */ cpu->r[30] = cpu->r[31] + cpu->r[0];
|
|
/* 02921E4C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 02921E50 */ _t7 = cpu->r[3] + 0x000000A4u;
|
|
/* 02921E50 */ rbrew_write32(cpu->mem, _t7, cpu->r[29]);
|
|
/* 02921E54 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921E54 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02921E54 */ if (_t9) goto L_02921E78; else goto L_02921E58;
|
|
L_02921E58: ; // 0x2921e58
|
|
/* 02921E58 */ cpu->r[4] = cpu->r[29];
|
|
/* 02921E58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 02921E5C */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921E5C */ _t11 = _t10 & 0x00000001u;
|
|
/* 02921E5C */ if (_t11) goto L_02921E64; else goto L_02921E60;
|
|
L_02921E60: ; // 0x2921e60
|
|
/* 02921E60 */ cpu->r[4] = cpu->r[29] + 0x0000001Cu;
|
|
L_02921E64: ; // 0x2921e64
|
|
/* 02921E64 */ cpu->r[3] = cpu->r[31] + 0x0000001Cu;
|
|
/* 02921E68 */ Gambit_fn_0294E038(cpu);
|
|
/* 02921E6C */ cpu->r[31] = cpu->r[31] + 0x000000A4u;
|
|
/* 02921E70 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 02921E74 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921E74 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02921E74 */ if (_t13) goto L_02921E78; else goto L_02921E58;
|
|
L_02921E78: ; // 0x2921e78
|
|
/* 02921E78 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02921E78 */ cpu->r[29] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02921E7C */ _t15 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02921E7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02921E80 */ _t16 = cpu->r[1] + 0x00000010u;
|
|
/* 02921E80 */ cpu->r[30] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02921E84 */ cpu->lr = cpu->r[0];
|
|
/* 02921E88 */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 02921E88 */ cpu->r[31] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02921E8C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02921E90 */ return;
|
|
}
|
|
|
|
// fn_02921E24 @ 0x2921e24
|
|
void Gambit_fn_02921E24(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_02921E24: ; // 0x2921e24
|
|
/* 02921E24 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02921E24 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02921E24 */ cpu->r[1] = _t0;
|
|
/* 02921E28 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02921E28 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 02921E2C */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 02921E2C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02921E30 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02921E30 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 02921E34 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02921E34 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02921E38 */ cpu->r[29] = cpu->r[4];
|
|
/* 02921E3C */ _t5 = cpu->r[3] + 0x000000C4u;
|
|
/* 02921E3C */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02921E40 */ _t6 = cpu->r[3] + 0x000000C8u;
|
|
/* 02921E40 */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02921E44 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[12] * (int32_t)0x000000A4u);
|
|
/* 02921E48 */ cpu->r[30] = cpu->r[31] + cpu->r[0];
|
|
/* 02921E4C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 02921E50 */ _t7 = cpu->r[3] + 0x000000A4u;
|
|
/* 02921E50 */ rbrew_write32(cpu->mem, _t7, cpu->r[29]);
|
|
/* 02921E54 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921E54 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02921E54 */ if (_t9) goto L_02921E78; else goto L_02921E58;
|
|
L_02921E58: ; // 0x2921e58
|
|
/* 02921E58 */ cpu->r[4] = cpu->r[29];
|
|
/* 02921E58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 02921E5C */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921E5C */ _t11 = _t10 & 0x00000001u;
|
|
/* 02921E5C */ if (_t11) goto L_02921E64; else goto L_02921E60;
|
|
L_02921E60: ; // 0x2921e60
|
|
/* 02921E60 */ cpu->r[4] = cpu->r[29] + 0x0000001Cu;
|
|
L_02921E64: ; // 0x2921e64
|
|
/* 02921E64 */ cpu->r[3] = cpu->r[31] + 0x0000001Cu;
|
|
/* 02921E68 */ Gambit_fn_0294E038(cpu);
|
|
/* 02921E6C */ cpu->r[31] = cpu->r[31] + 0x000000A4u;
|
|
/* 02921E70 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 02921E74 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921E74 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02921E74 */ if (_t13) goto L_02921E78; else goto L_02921E58;
|
|
L_02921E78: ; // 0x2921e78
|
|
/* 02921E78 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02921E78 */ cpu->r[29] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02921E7C */ _t15 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02921E7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02921E80 */ _t16 = cpu->r[1] + 0x00000010u;
|
|
/* 02921E80 */ cpu->r[30] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02921E84 */ cpu->lr = cpu->r[0];
|
|
/* 02921E88 */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 02921E88 */ cpu->r[31] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02921E8C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02921E90 */ return;
|
|
}
|
|
|
|
// fn_02921E94 @ 0x2921e94
|
|
void Gambit_fn_02921E94(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36;
|
|
|
|
L_02921E94: ; // 0x2921e94
|
|
/* 02921E94 */ cpu->r[0] = cpu->lr;
|
|
/* 02921E98 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02921E98 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02921E98 */ cpu->r[1] = _t0;
|
|
/* 02921E9C */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02921E9C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02921EA0 */ cpu->r[31] = cpu->r[4];
|
|
/* 02921EA4 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 02921EA4 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02921EA8 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 02921EA8 */ rbrew_write32(cpu->mem, _t3, cpu->r[28]);
|
|
/* 02921EAC */ cpu->r[30] = cpu->r[3];
|
|
/* 02921EAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02921EB0 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02921EB0 */ rbrew_write32(cpu->mem, _t4, cpu->r[29]);
|
|
/* 02921EB4 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02921EB4 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02921EB8 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921EB8 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02921EB8 */ if (_t7) goto L_02921F90; else goto L_02921EBC;
|
|
L_02921EBC: ; // 0x2921ebc
|
|
/* 02921EBC */ cpu->r[9] = 0x10140000u;
|
|
/* 02921EC0 */ cpu->r[10] = 0x10140000u;
|
|
/* 02921EC4 */ _t8 = cpu->r[30] + 0x000000C8u;
|
|
/* 02921EC4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02921EC8 */ cpu->r[9] = cpu->r[9] + 0x00002F34u;
|
|
/* 02921ECC */ cpu->r[10] = cpu->r[10] + 0x00002F7Cu;
|
|
/* 02921ED0 */ cpu->r[8] = 0x10140000u;
|
|
/* 02921ED4 */ _t9 = cpu->r[30] + 0x00000040u;
|
|
/* 02921ED4 */ rbrew_write32(cpu->mem, _t9, cpu->r[9]);
|
|
/* 02921ED8 */ cpu->r[7] = 0x10140000u;
|
|
/* 02921EDC */ cpu->r[8] = cpu->r[8] + 0x00002F1Cu;
|
|
/* 02921EE0 */ _t10 = cpu->r[30] + 0x00000044u;
|
|
/* 02921EE0 */ rbrew_write32(cpu->mem, _t10, cpu->r[10]);
|
|
/* 02921EE4 */ cpu->r[7] = cpu->r[7] + 0x00002ED4u;
|
|
/* 02921EE8 */ _t11 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02921EE8 */ rbrew_write32(cpu->mem, _t11, cpu->r[8]);
|
|
/* 02921EEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 02921EF0 */ _t12 = cpu->r[30] + 0x00000018u;
|
|
/* 02921EF0 */ rbrew_write32(cpu->mem, _t12, cpu->r[7]);
|
|
/* 02921EF4 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921EF4 */ _t14 = _t13 & 0x00000001u;
|
|
/* 02921EF4 */ if (_t14) goto L_02921F68; else goto L_02921EF8;
|
|
L_02921EF8: ; // 0x2921ef8
|
|
/* 02921EF8 */ _t15 = cpu->r[30] + 0x000000C4u;
|
|
/* 02921EF8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02921EFC */ cpu->r[28] = 0x00000000u;
|
|
/* 02921F00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], cpu->r[11]);
|
|
/* 02921F04 */ _t16 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02921F04 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02921F04 */ if (_t17) goto L_02921F08; else goto L_02921F3C;
|
|
L_02921F08: ; // 0x2921f08
|
|
/* 02921F08 */ cpu->r[29] = 0x00000000u;
|
|
L_02921F0C: ; // 0x2921f0c
|
|
/* 02921F0C */ cpu->r[3] = cpu->r[4] + cpu->r[29];
|
|
/* 02921F10 */ _t18 = cpu->r[3] + 0x00000018u;
|
|
/* 02921F10 */ cpu->r[12] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02921F14 */ _t19 = cpu->r[12] + 0x0000000Cu;
|
|
/* 02921F14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02921F18 */ cpu->ctr = cpu->r[0];
|
|
/* 02921F1C */ cpu->r[4] = 0x00000002u;
|
|
/* 02921F20 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02921F24 */ _t20 = cpu->r[30] + 0x000000C4u;
|
|
/* 02921F24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02921F28 */ cpu->r[28] = cpu->r[28] + 0x00000001u;
|
|
/* 02921F2C */ cpu->r[29] = cpu->r[29] + 0x000000A4u;
|
|
/* 02921F30 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], cpu->r[0]);
|
|
/* 02921F34 */ _t21 = cpu->r[30] + 0x000000C8u;
|
|
/* 02921F34 */ cpu->r[4] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02921F38 */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02921F38 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02921F38 */ if (_t23) goto L_02921F0C; else goto L_02921F3C;
|
|
L_02921F3C: ; // 0x2921f3c
|
|
/* 02921F3C */ cpu->r[3] = 0x101D0000u;
|
|
/* 02921F40 */ _t24 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02921F40 */ cpu->r[3] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02921F44 */ Gambit_fn_02826B90(cpu);
|
|
/* 02921F48 */ _t25 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02921F48 */ cpu->r[10] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02921F4C */ _t26 = cpu->r[10] + 0x0000003Cu;
|
|
/* 02921F4C */ cpu->r[11] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02921F50 */ cpu->ctr = cpu->r[11];
|
|
/* 02921F54 */ _t27 = cpu->r[30] + 0x000000C8u;
|
|
/* 02921F54 */ cpu->r[4] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02921F58 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02921F5C */ cpu->r[12] = 0x00000000u;
|
|
/* 02921F60 */ _t28 = cpu->r[30] + 0x000000C4u;
|
|
/* 02921F60 */ rbrew_write32(cpu->mem, _t28, cpu->r[12]);
|
|
/* 02921F64 */ _t29 = cpu->r[30] + 0x000000C8u;
|
|
/* 02921F64 */ rbrew_write32(cpu->mem, _t29, cpu->r[12]);
|
|
L_02921F68: ; // 0x2921f68
|
|
/* 02921F68 */ cpu->r[3] = cpu->r[30];
|
|
/* 02921F6C */ cpu->r[4] = 0x00000000u;
|
|
/* 02921F70 */ Gambit_fn_02921E20(cpu);
|
|
/* 02921F74 */ cpu->r[3] = cpu->r[30];
|
|
/* 02921F78 */ cpu->r[4] = 0x00000000u;
|
|
/* 02921F7C */ Gambit_fn_0291F3D0(cpu);
|
|
/* 02921F80 */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02921F80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02921F84 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921F84 */ _t31 = _t30 & 0x00000001u;
|
|
/* 02921F84 */ if (_t31) goto L_02921F90; else goto L_02921F88;
|
|
L_02921F88: ; // 0x2921f88
|
|
/* 02921F88 */ cpu->r[3] = cpu->r[30];
|
|
/* 02921F8C */ Gambit_fn_02801BB0(cpu);
|
|
L_02921F90: ; // 0x2921f90
|
|
/* 02921F90 */ _t32 = cpu->r[1] + 0x00000008u;
|
|
/* 02921F90 */ cpu->r[28] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02921F94 */ _t33 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02921F94 */ cpu->r[29] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02921F98 */ _t34 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02921F98 */ cpu->r[0] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02921F9C */ _t35 = cpu->r[1] + 0x00000010u;
|
|
/* 02921F9C */ cpu->r[30] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02921FA0 */ cpu->lr = cpu->r[0];
|
|
/* 02921FA4 */ _t36 = cpu->r[1] + 0x00000014u;
|
|
/* 02921FA4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02921FA8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02921FAC */ return;
|
|
}
|
|
|
|
// fn_02921E98 @ 0x2921e98
|
|
void Gambit_fn_02921E98(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36;
|
|
|
|
L_02921E98: ; // 0x2921e98
|
|
/* 02921E98 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02921E98 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02921E98 */ cpu->r[1] = _t0;
|
|
/* 02921E9C */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02921E9C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02921EA0 */ cpu->r[31] = cpu->r[4];
|
|
/* 02921EA4 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 02921EA4 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02921EA8 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 02921EA8 */ rbrew_write32(cpu->mem, _t3, cpu->r[28]);
|
|
/* 02921EAC */ cpu->r[30] = cpu->r[3];
|
|
/* 02921EAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02921EB0 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02921EB0 */ rbrew_write32(cpu->mem, _t4, cpu->r[29]);
|
|
/* 02921EB4 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02921EB4 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02921EB8 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921EB8 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02921EB8 */ if (_t7) goto L_02921F90; else goto L_02921EBC;
|
|
L_02921EBC: ; // 0x2921ebc
|
|
/* 02921EBC */ cpu->r[9] = 0x10140000u;
|
|
/* 02921EC0 */ cpu->r[10] = 0x10140000u;
|
|
/* 02921EC4 */ _t8 = cpu->r[30] + 0x000000C8u;
|
|
/* 02921EC4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02921EC8 */ cpu->r[9] = cpu->r[9] + 0x00002F34u;
|
|
/* 02921ECC */ cpu->r[10] = cpu->r[10] + 0x00002F7Cu;
|
|
/* 02921ED0 */ cpu->r[8] = 0x10140000u;
|
|
/* 02921ED4 */ _t9 = cpu->r[30] + 0x00000040u;
|
|
/* 02921ED4 */ rbrew_write32(cpu->mem, _t9, cpu->r[9]);
|
|
/* 02921ED8 */ cpu->r[7] = 0x10140000u;
|
|
/* 02921EDC */ cpu->r[8] = cpu->r[8] + 0x00002F1Cu;
|
|
/* 02921EE0 */ _t10 = cpu->r[30] + 0x00000044u;
|
|
/* 02921EE0 */ rbrew_write32(cpu->mem, _t10, cpu->r[10]);
|
|
/* 02921EE4 */ cpu->r[7] = cpu->r[7] + 0x00002ED4u;
|
|
/* 02921EE8 */ _t11 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02921EE8 */ rbrew_write32(cpu->mem, _t11, cpu->r[8]);
|
|
/* 02921EEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 02921EF0 */ _t12 = cpu->r[30] + 0x00000018u;
|
|
/* 02921EF0 */ rbrew_write32(cpu->mem, _t12, cpu->r[7]);
|
|
/* 02921EF4 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921EF4 */ _t14 = _t13 & 0x00000001u;
|
|
/* 02921EF4 */ if (_t14) goto L_02921F68; else goto L_02921EF8;
|
|
L_02921EF8: ; // 0x2921ef8
|
|
/* 02921EF8 */ _t15 = cpu->r[30] + 0x000000C4u;
|
|
/* 02921EF8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02921EFC */ cpu->r[28] = 0x00000000u;
|
|
/* 02921F00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], cpu->r[11]);
|
|
/* 02921F04 */ _t16 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02921F04 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02921F04 */ if (_t17) goto L_02921F08; else goto L_02921F3C;
|
|
L_02921F08: ; // 0x2921f08
|
|
/* 02921F08 */ cpu->r[29] = 0x00000000u;
|
|
L_02921F0C: ; // 0x2921f0c
|
|
/* 02921F0C */ cpu->r[3] = cpu->r[4] + cpu->r[29];
|
|
/* 02921F10 */ _t18 = cpu->r[3] + 0x00000018u;
|
|
/* 02921F10 */ cpu->r[12] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02921F14 */ _t19 = cpu->r[12] + 0x0000000Cu;
|
|
/* 02921F14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02921F18 */ cpu->ctr = cpu->r[0];
|
|
/* 02921F1C */ cpu->r[4] = 0x00000002u;
|
|
/* 02921F20 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02921F24 */ _t20 = cpu->r[30] + 0x000000C4u;
|
|
/* 02921F24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02921F28 */ cpu->r[28] = cpu->r[28] + 0x00000001u;
|
|
/* 02921F2C */ cpu->r[29] = cpu->r[29] + 0x000000A4u;
|
|
/* 02921F30 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], cpu->r[0]);
|
|
/* 02921F34 */ _t21 = cpu->r[30] + 0x000000C8u;
|
|
/* 02921F34 */ cpu->r[4] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02921F38 */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02921F38 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02921F38 */ if (_t23) goto L_02921F0C; else goto L_02921F3C;
|
|
L_02921F3C: ; // 0x2921f3c
|
|
/* 02921F3C */ cpu->r[3] = 0x101D0000u;
|
|
/* 02921F40 */ _t24 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02921F40 */ cpu->r[3] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02921F44 */ Gambit_fn_02826B90(cpu);
|
|
/* 02921F48 */ _t25 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02921F48 */ cpu->r[10] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02921F4C */ _t26 = cpu->r[10] + 0x0000003Cu;
|
|
/* 02921F4C */ cpu->r[11] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02921F50 */ cpu->ctr = cpu->r[11];
|
|
/* 02921F54 */ _t27 = cpu->r[30] + 0x000000C8u;
|
|
/* 02921F54 */ cpu->r[4] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02921F58 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02921F5C */ cpu->r[12] = 0x00000000u;
|
|
/* 02921F60 */ _t28 = cpu->r[30] + 0x000000C4u;
|
|
/* 02921F60 */ rbrew_write32(cpu->mem, _t28, cpu->r[12]);
|
|
/* 02921F64 */ _t29 = cpu->r[30] + 0x000000C8u;
|
|
/* 02921F64 */ rbrew_write32(cpu->mem, _t29, cpu->r[12]);
|
|
L_02921F68: ; // 0x2921f68
|
|
/* 02921F68 */ cpu->r[3] = cpu->r[30];
|
|
/* 02921F6C */ cpu->r[4] = 0x00000000u;
|
|
/* 02921F70 */ Gambit_fn_02921E20(cpu);
|
|
/* 02921F74 */ cpu->r[3] = cpu->r[30];
|
|
/* 02921F78 */ cpu->r[4] = 0x00000000u;
|
|
/* 02921F7C */ Gambit_fn_0291F3D0(cpu);
|
|
/* 02921F80 */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02921F80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02921F84 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921F84 */ _t31 = _t30 & 0x00000001u;
|
|
/* 02921F84 */ if (_t31) goto L_02921F90; else goto L_02921F88;
|
|
L_02921F88: ; // 0x2921f88
|
|
/* 02921F88 */ cpu->r[3] = cpu->r[30];
|
|
/* 02921F8C */ Gambit_fn_02801BB0(cpu);
|
|
L_02921F90: ; // 0x2921f90
|
|
/* 02921F90 */ _t32 = cpu->r[1] + 0x00000008u;
|
|
/* 02921F90 */ cpu->r[28] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02921F94 */ _t33 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02921F94 */ cpu->r[29] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02921F98 */ _t34 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02921F98 */ cpu->r[0] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02921F9C */ _t35 = cpu->r[1] + 0x00000010u;
|
|
/* 02921F9C */ cpu->r[30] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02921FA0 */ cpu->lr = cpu->r[0];
|
|
/* 02921FA4 */ _t36 = cpu->r[1] + 0x00000014u;
|
|
/* 02921FA4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02921FA8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02921FAC */ return;
|
|
}
|
|
|
|
// fn_02921FB0 @ 0x2921fb0
|
|
void Gambit_fn_02921FB0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _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_02921FB0: ; // 0x2921fb0
|
|
/* 02921FB0 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 02921FB0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02921FB0 */ cpu->r[1] = _t0;
|
|
/* 02921FB4 */ /* nop */
|
|
/* 02921FB8 */ cpu->r[0] = cpu->lr;
|
|
/* 02921FBC */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 02921FBC */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02921FC0 */ _t2 = cpu->r[3] + 0x000000C4u;
|
|
/* 02921FC0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02921FC4 */ _t3 = cpu->r[3] + 0x000000C8u;
|
|
/* 02921FC4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02921FC8 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x000000A4u);
|
|
/* 02921FCC */ cpu->r[31] = cpu->r[29] + cpu->r[0];
|
|
/* 02921FD0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[31]);
|
|
/* 02921FD4 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921FD4 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02921FD4 */ if (_t5) goto L_02922094; else goto L_02921FD8;
|
|
L_02921FD8: ; // 0x2921fd8
|
|
/* 02921FD8 */ cpu->r[24] = 0x101F0000u;
|
|
/* 02921FDC */ cpu->r[30] = 0x10110000u;
|
|
/* 02921FE0 */ cpu->r[24] = cpu->r[24] + 0x000066E8u;
|
|
/* 02921FE4 */ _t6 = cpu->r[30] + 0x00007399u;
|
|
/* 02921FE4 */ cpu->r[30] = rbrew_read8(cpu->mem, _t6);
|
|
/* 02921FE8 */ _t7 = cpu->r[24] + 0x00000004u;
|
|
/* 02921FE8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02921FEC */ _t8 = cpu->r[24] + 0x00000000u;
|
|
/* 02921FEC */ cpu->r[28] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02921FF0 */ cpu->r[23] = 0xFFFFFFFFu;
|
|
/* 02921FF4 */ cpu->r[26] = cpu->r[7] + 0x00000010u;
|
|
L_02921FF8: ; // 0x2921ff8
|
|
/* 02921FF8 */ _t9 = cpu->r[29] + 0x00000054u;
|
|
/* 02921FF8 */ rbrew_write32(cpu->mem, _t9, cpu->r[23]);
|
|
/* 02921FFC */ _t10 = cpu->r[26] + 0x00000004u;
|
|
/* 02921FFC */ cpu->r[11] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02922000 */ cpu->ctr = cpu->r[11];
|
|
/* 02922004 */ _t11 = cpu->r[29] + 0x00000028u;
|
|
/* 02922004 */ cpu->r[22] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02922008 */ cpu->r[25] = cpu->r[29] + 0x0000001Cu;
|
|
/* 0292200C */ cpu->r[3] = cpu->r[24];
|
|
/* 02922010 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02922014 */ cpu->r[11] = cpu->r[28];
|
|
/* 02922018 */ _t12 = cpu->r[11] + 0x00000000u;
|
|
/* 02922018 */ cpu->r[10] = rbrew_read8(cpu->mem, _t12);
|
|
/* 0292201C */ cpu->r[27] = 0x00000000u;
|
|
/* 02922020 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[30]);
|
|
/* 02922024 */ cpu->r[0] = 0x00080000u;
|
|
/* 02922028 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02922028 */ _t14 = _t13 & 0x00000001u;
|
|
/* 02922028 */ if (_t14) goto L_02922050; else goto L_0292202C;
|
|
L_0292202C: ; // 0x292202c
|
|
/* 0292202C */ cpu->r[27] = cpu->r[27] + 0x00000001u;
|
|
/* 02922030 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], cpu->r[0]);
|
|
/* 02922034 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 02922038 */ _t15 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02922038 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02922038 */ if (_t16) goto L_0292204C; else goto L_0292203C;
|
|
L_0292203C: ; // 0x292203c
|
|
/* 0292203C */ _t17 = cpu->r[11] + 0x00000000u;
|
|
/* 0292203C */ cpu->r[12] = rbrew_read8(cpu->mem, _t17);
|
|
/* 02922040 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[30]);
|
|
/* 02922044 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02922044 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02922044 */ if (_t19) goto L_02922048; else goto L_0292202C;
|
|
L_02922048: ; // 0x2922048
|
|
/* 02922048 */ goto L_02922050;
|
|
L_0292204C: ; // 0x292204c
|
|
/* 0292204C */ cpu->r[27] = 0x00000000u;
|
|
L_02922050: ; // 0x2922050
|
|
/* 02922050 */ _t20 = cpu->r[25] + 0x00000014u;
|
|
/* 02922050 */ cpu->r[5] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02922054 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], cpu->r[5]);
|
|
/* 02922058 */ _t21 = cpu->r[26] + 0x00000004u;
|
|
/* 02922058 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0292205C */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0292205C */ _t23 = _t22 & 0x00000001u;
|
|
/* 0292205C */ if (_t23) goto L_02922064; else goto L_02922060;
|
|
L_02922060: ; // 0x2922060
|
|
/* 02922060 */ cpu->r[27] = cpu->r[5] + 0xFFFFFFFFu;
|
|
L_02922064: ; // 0x2922064
|
|
/* 02922064 */ cpu->ctr = cpu->r[0];
|
|
/* 02922068 */ cpu->r[3] = cpu->r[24];
|
|
/* 0292206C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02922070 */ cpu->r[6] = 0x00000000u;
|
|
/* 02922074 */ cpu->r[5] = cpu->r[27];
|
|
/* 02922078 */ cpu->r[4] = cpu->r[28];
|
|
/* 0292207C */ cpu->r[3] = cpu->r[22];
|
|
/* 02922080 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 02922084 */ cpu->r[29] = cpu->r[29] + 0x000000A4u;
|
|
/* 02922088 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[31]);
|
|
/* 0292208C */ _t24 = cpu->r[22] + cpu->r[27];
|
|
/* 0292208C */ rbrew_write8(cpu->mem, _t24, (uint8_t)cpu->r[30]);
|
|
/* 02922090 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02922090 */ _t26 = _t25 & 0x00000001u;
|
|
/* 02922090 */ if (_t26) goto L_02922094; else goto L_02921FF8;
|
|
L_02922094: ; // 0x2922094
|
|
/* 02922094 */ /* nop */
|
|
/* 02922098 */ _t27 = cpu->r[1] + 0x00000034u;
|
|
/* 02922098 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0292209C */ cpu->lr = cpu->r[0];
|
|
/* 029220A0 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 029220A4 */ cpu->r[3] = 0x00000001u;
|
|
/* 029220A8 */ return;
|
|
}
|
|
|
|
// fn_029220AC @ 0x29220ac
|
|
void Gambit_fn_029220AC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _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_02921FB0: ; // 0x2921fb0
|
|
/* 02921FB0 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 02921FB0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02921FB0 */ cpu->r[1] = _t0;
|
|
/* 02921FB4 */ /* nop */
|
|
/* 02921FB8 */ cpu->r[0] = cpu->lr;
|
|
/* 02921FBC */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 02921FBC */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02921FC0 */ _t2 = cpu->r[3] + 0x000000C4u;
|
|
/* 02921FC0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02921FC4 */ _t3 = cpu->r[3] + 0x000000C8u;
|
|
/* 02921FC4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02921FC8 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x000000A4u);
|
|
/* 02921FCC */ cpu->r[31] = cpu->r[29] + cpu->r[0];
|
|
/* 02921FD0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[31]);
|
|
/* 02921FD4 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02921FD4 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02921FD4 */ if (_t5) goto L_02922094; else goto L_02921FD8;
|
|
L_02921FD8: ; // 0x2921fd8
|
|
/* 02921FD8 */ cpu->r[24] = 0x101F0000u;
|
|
/* 02921FDC */ cpu->r[30] = 0x10110000u;
|
|
/* 02921FE0 */ cpu->r[24] = cpu->r[24] + 0x000066E8u;
|
|
/* 02921FE4 */ _t6 = cpu->r[30] + 0x00007399u;
|
|
/* 02921FE4 */ cpu->r[30] = rbrew_read8(cpu->mem, _t6);
|
|
/* 02921FE8 */ _t7 = cpu->r[24] + 0x00000004u;
|
|
/* 02921FE8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02921FEC */ _t8 = cpu->r[24] + 0x00000000u;
|
|
/* 02921FEC */ cpu->r[28] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02921FF0 */ cpu->r[23] = 0xFFFFFFFFu;
|
|
/* 02921FF4 */ cpu->r[26] = cpu->r[7] + 0x00000010u;
|
|
L_02921FF8: ; // 0x2921ff8
|
|
/* 02921FF8 */ _t9 = cpu->r[29] + 0x00000054u;
|
|
/* 02921FF8 */ rbrew_write32(cpu->mem, _t9, cpu->r[23]);
|
|
/* 02921FFC */ _t10 = cpu->r[26] + 0x00000004u;
|
|
/* 02921FFC */ cpu->r[11] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02922000 */ cpu->ctr = cpu->r[11];
|
|
/* 02922004 */ _t11 = cpu->r[29] + 0x00000028u;
|
|
/* 02922004 */ cpu->r[22] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02922008 */ cpu->r[25] = cpu->r[29] + 0x0000001Cu;
|
|
/* 0292200C */ cpu->r[3] = cpu->r[24];
|
|
/* 02922010 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02922014 */ cpu->r[11] = cpu->r[28];
|
|
/* 02922018 */ _t12 = cpu->r[11] + 0x00000000u;
|
|
/* 02922018 */ cpu->r[10] = rbrew_read8(cpu->mem, _t12);
|
|
/* 0292201C */ cpu->r[27] = 0x00000000u;
|
|
/* 02922020 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[30]);
|
|
/* 02922024 */ cpu->r[0] = 0x00080000u;
|
|
/* 02922028 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02922028 */ _t14 = _t13 & 0x00000001u;
|
|
/* 02922028 */ if (_t14) goto L_02922050; else goto L_0292202C;
|
|
L_0292202C: ; // 0x292202c
|
|
/* 0292202C */ cpu->r[27] = cpu->r[27] + 0x00000001u;
|
|
/* 02922030 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], cpu->r[0]);
|
|
/* 02922034 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 02922038 */ _t15 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02922038 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02922038 */ if (_t16) goto L_0292204C; else goto L_0292203C;
|
|
L_0292203C: ; // 0x292203c
|
|
/* 0292203C */ _t17 = cpu->r[11] + 0x00000000u;
|
|
/* 0292203C */ cpu->r[12] = rbrew_read8(cpu->mem, _t17);
|
|
/* 02922040 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[30]);
|
|
/* 02922044 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02922044 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02922044 */ if (_t19) goto L_02922048; else goto L_0292202C;
|
|
L_02922048: ; // 0x2922048
|
|
/* 02922048 */ goto L_02922050;
|
|
L_0292204C: ; // 0x292204c
|
|
/* 0292204C */ cpu->r[27] = 0x00000000u;
|
|
L_02922050: ; // 0x2922050
|
|
/* 02922050 */ _t20 = cpu->r[25] + 0x00000014u;
|
|
/* 02922050 */ cpu->r[5] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02922054 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], cpu->r[5]);
|
|
/* 02922058 */ _t21 = cpu->r[26] + 0x00000004u;
|
|
/* 02922058 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0292205C */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0292205C */ _t23 = _t22 & 0x00000001u;
|
|
/* 0292205C */ if (_t23) goto L_02922064; else goto L_02922060;
|
|
L_02922060: ; // 0x2922060
|
|
/* 02922060 */ cpu->r[27] = cpu->r[5] + 0xFFFFFFFFu;
|
|
L_02922064: ; // 0x2922064
|
|
/* 02922064 */ cpu->ctr = cpu->r[0];
|
|
/* 02922068 */ cpu->r[3] = cpu->r[24];
|
|
/* 0292206C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02922070 */ cpu->r[6] = 0x00000000u;
|
|
/* 02922074 */ cpu->r[5] = cpu->r[27];
|
|
/* 02922078 */ cpu->r[4] = cpu->r[28];
|
|
/* 0292207C */ cpu->r[3] = cpu->r[22];
|
|
/* 02922080 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 02922084 */ cpu->r[29] = cpu->r[29] + 0x000000A4u;
|
|
/* 02922088 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[31]);
|
|
/* 0292208C */ _t24 = cpu->r[22] + cpu->r[27];
|
|
/* 0292208C */ rbrew_write8(cpu->mem, _t24, (uint8_t)cpu->r[30]);
|
|
/* 02922090 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02922090 */ _t26 = _t25 & 0x00000001u;
|
|
/* 02922090 */ if (_t26) goto L_02922094; else goto L_02921FF8;
|
|
L_02922094: ; // 0x2922094
|
|
/* 02922094 */ /* nop */
|
|
/* 02922098 */ _t27 = cpu->r[1] + 0x00000034u;
|
|
/* 02922098 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0292209C */ cpu->lr = cpu->r[0];
|
|
/* 029220A0 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 029220A4 */ cpu->r[3] = 0x00000001u;
|
|
/* 029220A8 */ return;
|
|
L_029220AC: ; // 0x29220ac
|
|
/* 029220AC */ cpu->r[3] = cpu->r[3] + 0xFFFFFFE0u;
|
|
/* 029220B0 */ goto L_02921FB0;
|
|
}
|
|
|
|
// fn_029220B4 @ 0x29220b4
|
|
void Gambit_fn_029220B4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_029220B4: ; // 0x29220b4
|
|
/* 029220B4 */ cpu->r[0] = cpu->lr;
|
|
/* 029220B8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 029220B8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 029220B8 */ cpu->r[1] = _t0;
|
|
/* 029220BC */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 029220BC */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 029220C0 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 029220C0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 029220C4 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 029220C4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 029220C8 */ _t4 = cpu->r[3] + 0x000000C4u;
|
|
/* 029220C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 029220CC */ _t5 = cpu->r[3] + 0x000000C8u;
|
|
/* 029220CC */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 029220D0 */ cpu->r[12] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x000000A4u);
|
|
/* 029220D4 */ cpu->r[30] = cpu->r[31] + cpu->r[12];
|
|
/* 029220D8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 029220DC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029220DC */ _t7 = _t6 & 0x00000001u;
|
|
/* 029220DC */ if (_t7) goto L_029220F4; else goto L_029220E0;
|
|
L_029220E0: ; // 0x29220e0
|
|
/* 029220E0 */ cpu->r[3] = cpu->r[31] + 0x0000001Cu;
|
|
/* 029220E4 */ Gambit_fn_0294E140(cpu);
|
|
/* 029220E8 */ cpu->r[31] = cpu->r[31] + 0x000000A4u;
|
|
/* 029220EC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 029220F0 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029220F0 */ _t9 = _t8 & 0x00000001u;
|
|
/* 029220F0 */ if (_t9) goto L_029220F4; else goto L_029220E0;
|
|
L_029220F4: ; // 0x29220f4
|
|
/* 029220F4 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 029220F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 029220F8 */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 029220F8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t11);
|
|
/* 029220FC */ cpu->lr = cpu->r[0];
|
|
/* 02922100 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02922100 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02922104 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02922108 */ return;
|
|
}
|
|
|
|
// fn_029220B8 @ 0x29220b8
|
|
void Gambit_fn_029220B8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_029220B8: ; // 0x29220b8
|
|
/* 029220B8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 029220B8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 029220B8 */ cpu->r[1] = _t0;
|
|
/* 029220BC */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 029220BC */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 029220C0 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 029220C0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 029220C4 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 029220C4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 029220C8 */ _t4 = cpu->r[3] + 0x000000C4u;
|
|
/* 029220C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 029220CC */ _t5 = cpu->r[3] + 0x000000C8u;
|
|
/* 029220CC */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 029220D0 */ cpu->r[12] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x000000A4u);
|
|
/* 029220D4 */ cpu->r[30] = cpu->r[31] + cpu->r[12];
|
|
/* 029220D8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 029220DC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029220DC */ _t7 = _t6 & 0x00000001u;
|
|
/* 029220DC */ if (_t7) goto L_029220F4; else goto L_029220E0;
|
|
L_029220E0: ; // 0x29220e0
|
|
/* 029220E0 */ cpu->r[3] = cpu->r[31] + 0x0000001Cu;
|
|
/* 029220E4 */ Gambit_fn_0294E140(cpu);
|
|
/* 029220E8 */ cpu->r[31] = cpu->r[31] + 0x000000A4u;
|
|
/* 029220EC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 029220F0 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029220F0 */ _t9 = _t8 & 0x00000001u;
|
|
/* 029220F0 */ if (_t9) goto L_029220F4; else goto L_029220E0;
|
|
L_029220F4: ; // 0x29220f4
|
|
/* 029220F4 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 029220F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 029220F8 */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 029220F8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t11);
|
|
/* 029220FC */ cpu->lr = cpu->r[0];
|
|
/* 02922100 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02922100 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02922104 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02922108 */ return;
|
|
}
|
|
|
|
// fn_0292210C @ 0x292210c
|
|
void Gambit_fn_0292210C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_029220B4: ; // 0x29220b4
|
|
/* 029220B4 */ cpu->r[0] = cpu->lr;
|
|
/* 029220B8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 029220B8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 029220B8 */ cpu->r[1] = _t0;
|
|
/* 029220BC */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 029220BC */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 029220C0 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 029220C0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 029220C4 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 029220C4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 029220C8 */ _t4 = cpu->r[3] + 0x000000C4u;
|
|
/* 029220C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 029220CC */ _t5 = cpu->r[3] + 0x000000C8u;
|
|
/* 029220CC */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 029220D0 */ cpu->r[12] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x000000A4u);
|
|
/* 029220D4 */ cpu->r[30] = cpu->r[31] + cpu->r[12];
|
|
/* 029220D8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 029220DC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029220DC */ _t7 = _t6 & 0x00000001u;
|
|
/* 029220DC */ if (_t7) goto L_029220F4; else goto L_029220E0;
|
|
L_029220E0: ; // 0x29220e0
|
|
/* 029220E0 */ cpu->r[3] = cpu->r[31] + 0x0000001Cu;
|
|
/* 029220E4 */ Gambit_fn_0294E140(cpu);
|
|
/* 029220E8 */ cpu->r[31] = cpu->r[31] + 0x000000A4u;
|
|
/* 029220EC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 029220F0 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029220F0 */ _t9 = _t8 & 0x00000001u;
|
|
/* 029220F0 */ if (_t9) goto L_029220F4; else goto L_029220E0;
|
|
L_029220F4: ; // 0x29220f4
|
|
/* 029220F4 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 029220F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 029220F8 */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 029220F8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t11);
|
|
/* 029220FC */ cpu->lr = cpu->r[0];
|
|
/* 02922100 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02922100 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02922104 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02922108 */ return;
|
|
L_0292210C: ; // 0x292210c
|
|
/* 0292210C */ cpu->r[3] = cpu->r[3] + 0xFFFFFFE0u;
|
|
/* 02922110 */ goto L_029220B4;
|
|
}
|
|
|
|
// fn_02922114 @ 0x2922114
|
|
void Gambit_fn_02922114(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _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_02922114: ; // 0x2922114
|
|
/* 02922114 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 02922114 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02922114 */ cpu->r[1] = _t0;
|
|
/* 02922118 */ cpu->r[0] = cpu->lr;
|
|
/* 0292211C */ /* nop */
|
|
/* 02922120 */ cpu->r[30] = cpu->r[3];
|
|
/* 02922120 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02922124 */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02922124 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02922128 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02922128 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02922128 */ if (_t3) goto L_0292212C; else goto L_0292213C;
|
|
L_0292212C: ; // 0x292212c
|
|
/* 0292212C */ cpu->r[3] = 0x000000CCu;
|
|
/* 02922130 */ Gambit_fn_02801A78(cpu);
|
|
/* 02922134 */ cpu->r[30] = cpu->r[3];
|
|
/* 02922134 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02922138 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02922138 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02922138 */ if (_t5) goto L_029222CC; else goto L_0292213C;
|
|
L_0292213C: ; // 0x292213c
|
|
/* 0292213C */ cpu->r[3] = cpu->r[30];
|
|
/* 02922140 */ Gambit_fn_0291F280(cpu);
|
|
/* 02922144 */ cpu->r[11] = 0x10140000u;
|
|
/* 02922148 */ cpu->r[11] = cpu->r[11] + 0x00002CF0u;
|
|
/* 0292214C */ cpu->r[3] = cpu->r[30] + 0x00000020u;
|
|
/* 02922150 */ _t6 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02922150 */ rbrew_write32(cpu->mem, _t6, cpu->r[11]);
|
|
/* 02922154 */ Gambit_fn_0295217C(cpu);
|
|
/* 02922158 */ cpu->r[12] = 0x10140000u;
|
|
/* 0292215C */ cpu->r[0] = 0x10140000u;
|
|
/* 02922160 */ cpu->r[12] = cpu->r[12] + 0x00002ED4u;
|
|
/* 02922164 */ cpu->r[0] = cpu->r[0] + 0x00002F1Cu;
|
|
/* 02922168 */ cpu->r[9] = 0x10140000u;
|
|
/* 0292216C */ _t7 = cpu->r[30] + 0x00000018u;
|
|
/* 0292216C */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 02922170 */ cpu->r[9] = cpu->r[9] + 0x00002F7Cu;
|
|
/* 02922174 */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02922174 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 02922178 */ cpu->r[31] = 0x10140000u;
|
|
/* 0292217C */ cpu->r[8] = 0x10140000u;
|
|
/* 02922180 */ _t9 = cpu->r[30] + 0x00000044u;
|
|
/* 02922180 */ rbrew_write32(cpu->mem, _t9, cpu->r[9]);
|
|
/* 02922184 */ cpu->r[29] = 0x10140000u;
|
|
/* 02922188 */ cpu->r[27] = cpu->r[30] + 0x00000048u;
|
|
/* 02922188 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0292218C */ cpu->r[8] = cpu->r[8] + 0x00002F34u;
|
|
/* 02922190 */ cpu->r[29] = cpu->r[29] + 0x00002E28u;
|
|
/* 02922194 */ cpu->r[31] = cpu->r[31] + 0x00002C80u;
|
|
/* 02922198 */ _t10 = cpu->r[30] + 0x00000040u;
|
|
/* 02922198 */ rbrew_write32(cpu->mem, _t10, cpu->r[8]);
|
|
/* 0292219C */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292219C */ _t12 = _t11 & 0x00000001u;
|
|
/* 0292219C */ if (_t12) goto L_029221A0; else goto L_029221B0;
|
|
L_029221A0: ; // 0x29221a0
|
|
/* 029221A0 */ cpu->r[3] = 0x00000038u;
|
|
/* 029221A4 */ Gambit_fn_02801A78(cpu);
|
|
/* 029221A8 */ cpu->r[27] = cpu->r[3];
|
|
/* 029221A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 029221AC */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029221AC */ _t14 = _t13 & 0x00000001u;
|
|
/* 029221AC */ if (_t14) goto L_02922268; else goto L_029221B0;
|
|
L_029221B0: ; // 0x29221b0
|
|
/* 029221B0 */ cpu->r[3] = cpu->r[27];
|
|
/* 029221B4 */ Gambit_fn_0294F7F0(cpu);
|
|
/* 029221B8 */ cpu->r[10] = 0x10140000u;
|
|
/* 029221BC */ cpu->r[10] = cpu->r[10] + 0x00002D50u;
|
|
/* 029221C0 */ cpu->r[28] = cpu->r[27] + 0x0000000Cu;
|
|
/* 029221C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 029221C4 */ _t15 = cpu->r[27] + 0x00000008u;
|
|
/* 029221C4 */ rbrew_write32(cpu->mem, _t15, cpu->r[10]);
|
|
/* 029221C8 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029221C8 */ _t17 = _t16 & 0x00000001u;
|
|
/* 029221C8 */ if (_t17) goto L_029221CC; else goto L_029221EC;
|
|
L_029221CC: ; // 0x29221cc
|
|
/* 029221CC */ cpu->r[3] = 0x0000002Cu;
|
|
/* 029221D0 */ Gambit_fn_02801A78(cpu);
|
|
/* 029221D4 */ cpu->r[28] = cpu->r[3];
|
|
/* 029221D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 029221D8 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029221D8 */ _t19 = _t18 & 0x00000001u;
|
|
/* 029221D8 */ if (_t19) goto L_029221DC; else goto L_029221EC;
|
|
L_029221DC: ; // 0x29221dc
|
|
/* 029221DC */ cpu->r[10] = 0x10140000u;
|
|
/* 029221E0 */ cpu->r[10] = cpu->r[10] + 0x00002CD8u;
|
|
/* 029221E4 */ _t20 = cpu->r[27] + 0x00000010u;
|
|
/* 029221E4 */ rbrew_write32(cpu->mem, _t20, cpu->r[10]);
|
|
/* 029221E8 */ goto L_02922268;
|
|
L_029221EC: ; // 0x29221ec
|
|
/* 029221EC */ cpu->r[3] = cpu->r[28];
|
|
/* 029221EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 029221F0 */ cpu->r[26] = 0x10110000u;
|
|
/* 029221F4 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029221F4 */ _t22 = _t21 & 0x00000001u;
|
|
/* 029221F4 */ if (_t22) goto L_029221F8; else goto L_02922224;
|
|
L_029221F8: ; // 0x29221f8
|
|
/* 029221F8 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 029221FC */ Gambit_fn_02801A78(cpu);
|
|
/* 02922200 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02922204 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02922204 */ _t24 = _t23 & 0x00000001u;
|
|
/* 02922204 */ if (_t24) goto L_02922208; else goto L_02922224;
|
|
L_02922208: ; // 0x2922208
|
|
/* 02922208 */ cpu->r[8] = 0x10140000u;
|
|
/* 0292220C */ _t25 = cpu->r[26] + 0x00007399u;
|
|
/* 0292220C */ cpu->r[0] = rbrew_read8(cpu->mem, _t25);
|
|
/* 02922210 */ cpu->r[8] = cpu->r[8] + 0x00002CC0u;
|
|
/* 02922214 */ _t26 = cpu->r[28] + 0x00000000u;
|
|
/* 02922214 */ cpu->r[9] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02922218 */ _t27 = cpu->r[28] + 0x00000004u;
|
|
/* 02922218 */ rbrew_write32(cpu->mem, _t27, cpu->r[8]);
|
|
/* 0292221C */ _t28 = cpu->r[9] + 0x00000000u;
|
|
/* 0292221C */ rbrew_write8(cpu->mem, _t28, (uint8_t)cpu->r[0]);
|
|
/* 02922220 */ goto L_0292225C;
|
|
L_02922224: ; // 0x2922224
|
|
/* 02922224 */ cpu->r[12] = 0x10140000u;
|
|
/* 02922228 */ cpu->r[11] = cpu->r[28] + 0x0000000Cu;
|
|
/* 0292222C */ cpu->r[12] = cpu->r[12] + 0x00002CA8u;
|
|
/* 02922230 */ _t29 = cpu->r[3] + 0x00000000u;
|
|
/* 02922230 */ rbrew_write32(cpu->mem, _t29, cpu->r[11]);
|
|
/* 02922234 */ cpu->r[0] = 0x00000020u;
|
|
/* 02922238 */ _t30 = cpu->r[3] + 0x00000004u;
|
|
/* 02922238 */ rbrew_write32(cpu->mem, _t30, cpu->r[12]);
|
|
/* 0292223C */ _t31 = cpu->r[3] + 0x00000008u;
|
|
/* 0292223C */ rbrew_write32(cpu->mem, _t31, cpu->r[0]);
|
|
/* 02922240 */ _t32 = cpu->r[26] + 0x00007399u;
|
|
/* 02922240 */ cpu->r[0] = rbrew_read8(cpu->mem, _t32);
|
|
/* 02922244 */ cpu->r[8] = 0x10140000u;
|
|
/* 02922248 */ _t33 = cpu->r[28] + 0x00000000u;
|
|
/* 02922248 */ cpu->r[9] = rbrew_read32(cpu->mem, _t33);
|
|
/* 0292224C */ cpu->r[8] = cpu->r[8] + 0x00002CC0u;
|
|
/* 02922250 */ _t34 = cpu->r[28] + 0x0000002Bu;
|
|
/* 02922250 */ rbrew_write8(cpu->mem, _t34, (uint8_t)cpu->r[0]);
|
|
/* 02922254 */ _t35 = cpu->r[28] + 0x00000004u;
|
|
/* 02922254 */ rbrew_write32(cpu->mem, _t35, cpu->r[8]);
|
|
/* 02922258 */ _t36 = cpu->r[9] + 0x00000000u;
|
|
/* 02922258 */ rbrew_write8(cpu->mem, _t36, (uint8_t)cpu->r[0]);
|
|
L_0292225C: ; // 0x292225c
|
|
/* 0292225C */ cpu->r[10] = 0x10140000u;
|
|
/* 02922260 */ cpu->r[10] = cpu->r[10] + 0x00002CD8u;
|
|
/* 02922264 */ _t37 = cpu->r[27] + 0x00000010u;
|
|
/* 02922264 */ rbrew_write32(cpu->mem, _t37, cpu->r[10]);
|
|
L_02922268: ; // 0x2922268
|
|
/* 02922268 */ cpu->r[3] = cpu->r[30] + 0x00000080u;
|
|
/* 0292226C */ Gambit_fn_0295217C(cpu);
|
|
/* 02922270 */ _t38 = cpu->r[30] + 0x000000A0u;
|
|
/* 02922270 */ rbrew_write32(cpu->mem, _t38, cpu->r[29]);
|
|
/* 02922274 */ cpu->r[29] = 0x00000000u;
|
|
/* 02922278 */ cpu->r[3] = cpu->r[30] + 0x000000A8u;
|
|
/* 0292227C */ _t39 = cpu->r[30] + 0x000000A4u;
|
|
/* 0292227C */ rbrew_write32(cpu->mem, _t39, cpu->r[29]);
|
|
/* 02922280 */ Gambit_fn_02952E48(cpu);
|
|
/* 02922284 */ cpu->r[11] = 0x10140000u;
|
|
/* 02922288 */ cpu->r[11] = cpu->r[11] + 0x00002DE0u;
|
|
/* 0292228C */ cpu->r[3] = cpu->r[30] + 0x000000C4u;
|
|
/* 0292228C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02922290 */ _t40 = cpu->r[30] + 0x000000C0u;
|
|
/* 02922290 */ rbrew_write32(cpu->mem, _t40, cpu->r[11]);
|
|
/* 02922294 */ _t41 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02922294 */ _t42 = _t41 & 0x00000001u;
|
|
/* 02922294 */ if (_t42) goto L_02922298; else goto L_029222A8;
|
|
L_02922298: ; // 0x2922298
|
|
/* 02922298 */ cpu->r[3] = 0x00000008u;
|
|
/* 0292229C */ Gambit_fn_02801A78(cpu);
|
|
/* 029222A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 029222A4 */ _t43 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029222A4 */ _t44 = _t43 & 0x00000001u;
|
|
/* 029222A4 */ if (_t44) goto L_029222B0; else goto L_029222A8;
|
|
L_029222A8: ; // 0x29222a8
|
|
/* 029222A8 */ _t45 = cpu->r[3] + 0x00000004u;
|
|
/* 029222A8 */ rbrew_write32(cpu->mem, _t45, cpu->r[29]);
|
|
/* 029222AC */ _t46 = cpu->r[3] + 0x00000000u;
|
|
/* 029222AC */ rbrew_write32(cpu->mem, _t46, cpu->r[29]);
|
|
L_029222B0: ; // 0x29222b0
|
|
/* 029222B0 */ cpu->r[12] = 0x10140000u;
|
|
/* 029222B4 */ _t47 = cpu->r[1] + 0x0000000Cu;
|
|
/* 029222B4 */ rbrew_write32(cpu->mem, _t47, cpu->r[31]);
|
|
/* 029222B8 */ cpu->r[3] = cpu->r[30] + 0x00000044u;
|
|
/* 029222BC */ cpu->r[12] = cpu->r[12] + 0x00002E70u;
|
|
/* 029222C0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 029222C4 */ _t48 = cpu->r[1] + 0x00000008u;
|
|
/* 029222C4 */ rbrew_write32(cpu->mem, _t48, cpu->r[12]);
|
|
/* 029222C8 */ Gambit_fn_028FD6EC(cpu);
|
|
L_029222CC: ; // 0x29222cc
|
|
/* 029222CC */ cpu->r[3] = cpu->r[30];
|
|
/* 029222D0 */ /* nop */
|
|
/* 029222D4 */ _t49 = cpu->r[1] + 0x0000002Cu;
|
|
/* 029222D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t49);
|
|
/* 029222D8 */ cpu->lr = cpu->r[0];
|
|
/* 029222DC */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 029222E0 */ return;
|
|
}
|
|
|
|
// fn_029222E4 @ 0x29222e4
|
|
void Gambit_fn_029222E4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _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;
|
|
|
|
L_029222E4: ; // 0x29222e4
|
|
/* 029222E4 */ _t0 = cpu->r[1] + 0xFFFFFAE8u;
|
|
/* 029222E4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 029222E4 */ cpu->r[1] = _t0;
|
|
/* 029222E8 */ /* nop */
|
|
/* 029222EC */ cpu->r[0] = cpu->lr;
|
|
/* 029222F0 */ cpu->r[31] = cpu->r[3];
|
|
/* 029222F4 */ cpu->r[30] = cpu->r[4];
|
|
/* 029222F8 */ _t1 = cpu->r[1] + 0x0000051Cu;
|
|
/* 029222F8 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 029222FC */ cpu->r[29] = cpu->r[5];
|
|
/* 02922300 */ Gambit_fn_0291F42C(cpu);
|
|
/* 02922304 */ cpu->r[21] = 0x10140000u;
|
|
/* 02922308 */ cpu->r[27] = 0x10110000u;
|
|
/* 0292230C */ cpu->r[28] = 0x10140000u;
|
|
/* 02922310 */ _t2 = cpu->r[30] + 0x00000200u;
|
|
/* 02922310 */ cpu->r[17] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02922314 */ cpu->r[30] = 0x10140000u;
|
|
/* 02922318 */ cpu->r[21] = cpu->r[21] + 0x00002CD8u;
|
|
/* 0292231C */ cpu->r[3] = cpu->r[29];
|
|
/* 02922320 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[17], 0x00000000u);
|
|
/* 02922324 */ cpu->r[30] = cpu->r[30] + 0x00002C80u;
|
|
/* 02922328 */ _t3 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02922328 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02922328 */ if (_t4) goto L_02922350; else goto L_0292232C;
|
|
L_0292232C: ; // 0x292232c
|
|
/* 0292232C */ cpu->r[10] = 0x101D0000u;
|
|
/* 02922330 */ cpu->r[5] = 0x00000000u;
|
|
/* 02922334 */ _t5 = cpu->r[10] + 0xFFFFA470u;
|
|
/* 02922334 */ cpu->r[10] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02922338 */ cpu->r[20] = cpu->r[28] + 0x00002CC0u;
|
|
/* 0292233C */ cpu->r[6] = cpu->r[5];
|
|
/* 02922340 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02922344 */ _t6 = cpu->r[27] + 0x00007399u;
|
|
/* 02922344 */ cpu->r[29] = rbrew_read8(cpu->mem, _t6);
|
|
/* 02922348 */ _t7 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02922348 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02922348 */ if (_t8) goto L_0292234C; else goto L_02922538;
|
|
L_0292234C: ; // 0x292234c
|
|
/* 0292234C */ goto L_029224B4;
|
|
L_02922350: ; // 0x2922350
|
|
/* 02922350 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02922354 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02922354 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02922354 */ if (_t10) goto L_02922358; else goto L_02922364;
|
|
L_02922358: ; // 0x2922358
|
|
/* 02922358 */ cpu->r[3] = 0x101D0000u;
|
|
/* 0292235C */ _t11 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 0292235C */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02922360 */ Gambit_fn_02826F20(cpu);
|
|
L_02922364: ; // 0x2922364
|
|
/* 02922364 */ _t12 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02922364 */ cpu->r[5] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02922368 */ _t13 = cpu->r[5] + 0x00000034u;
|
|
/* 02922368 */ cpu->r[6] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0292236C */ cpu->ctr = cpu->r[6];
|
|
/* 02922370 */ cpu->r[5] = 0x00000004u;
|
|
/* 02922374 */ cpu->r[4] = (uint32_t)((int32_t)cpu->r[17] * (int32_t)0x000000A4u);
|
|
/* 02922378 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0292237C */ cpu->r[18] = cpu->r[3];
|
|
/* 02922380 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[17], 0x00000000u);
|
|
/* 02922384 */ cpu->r[12] = cpu->r[17];
|
|
/* 02922388 */ cpu->r[0] = 0x00000000u;
|
|
/* 0292238C */ _t14 = cpu->r[27] + 0x00007399u;
|
|
/* 0292238C */ cpu->r[29] = rbrew_read8(cpu->mem, _t14);
|
|
/* 02922390 */ _t15 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02922390 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02922390 */ if (_t16) goto L_02922398; else goto L_02922394;
|
|
L_02922394: ; // 0x2922394
|
|
/* 02922394 */ cpu->r[12] = 0x00000001u;
|
|
L_02922398: ; // 0x2922398
|
|
/* 02922398 */ cpu->r[23] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x000000A4u);
|
|
/* 0292239C */ cpu->r[25] = 0x10140000u;
|
|
/* 029223A0 */ cpu->r[20] = cpu->r[28] + 0x00002CC0u;
|
|
/* 029223A4 */ cpu->r[28] = 0x10140000u;
|
|
/* 029223A8 */ cpu->r[26] = 0x10140000u;
|
|
/* 029223AC */ cpu->r[27] = 0x00000020u;
|
|
/* 029223B0 */ cpu->r[28] = cpu->r[28] + 0x00002CA8u;
|
|
/* 029223B4 */ cpu->r[25] = cpu->r[25] + 0x00002918u;
|
|
/* 029223B8 */ cpu->r[26] = cpu->r[26] + 0x00002F8Cu;
|
|
/* 029223BC */ cpu->r[24] = 0x00000000u;
|
|
/* 029223C0 */ cpu->r[22] = cpu->r[12];
|
|
L_029223C4: ; // 0x29223c4
|
|
/* 029223C4 */ cpu->r[19] = cpu->r[18] + cpu->r[23];
|
|
/* 029223C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[19], 0x00000000u);
|
|
/* 029223C8 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029223C8 */ _t18 = _t17 & 0x00000001u;
|
|
/* 029223C8 */ if (_t18) goto L_02922480; else goto L_029223CC;
|
|
L_029223CC: ; // 0x29223cc
|
|
/* 029223CC */ cpu->r[3] = cpu->r[19];
|
|
/* 029223D0 */ Gambit_fn_02952E48(cpu);
|
|
/* 029223D4 */ cpu->r[16] = cpu->r[19] + 0x0000001Cu;
|
|
/* 029223D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[16], 0x00000000u);
|
|
/* 029223D8 */ _t19 = cpu->r[19] + 0x00000018u;
|
|
/* 029223D8 */ rbrew_write32(cpu->mem, _t19, cpu->r[26]);
|
|
/* 029223DC */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029223DC */ _t21 = _t20 & 0x00000001u;
|
|
/* 029223DC */ if (_t21) goto L_029223E0; else goto L_029223F0;
|
|
L_029223E0: ; // 0x29223e0
|
|
/* 029223E0 */ cpu->r[3] = 0x00000050u;
|
|
/* 029223E4 */ Gambit_fn_02801A78(cpu);
|
|
/* 029223E8 */ cpu->r[16] = cpu->r[3];
|
|
/* 029223E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[16], 0x00000000u);
|
|
/* 029223EC */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029223EC */ _t23 = _t22 & 0x00000001u;
|
|
/* 029223EC */ if (_t23) goto L_02922400; else goto L_029223F0;
|
|
L_029223F0: ; // 0x29223f0
|
|
/* 029223F0 */ cpu->r[3] = cpu->r[16];
|
|
/* 029223F4 */ Gambit_fn_0294DA90(cpu);
|
|
/* 029223F8 */ _t24 = cpu->r[16] + 0x0000004Cu;
|
|
/* 029223F8 */ rbrew_write32(cpu->mem, _t24, cpu->r[24]);
|
|
/* 029223FC */ _t25 = cpu->r[16] + 0x00000008u;
|
|
/* 029223FC */ rbrew_write32(cpu->mem, _t25, cpu->r[25]);
|
|
L_02922400: ; // 0x2922400
|
|
/* 02922400 */ cpu->r[16] = cpu->r[19] + 0x0000006Cu;
|
|
/* 02922400 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[16], 0x00000000u);
|
|
/* 02922404 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02922404 */ _t27 = _t26 & 0x00000001u;
|
|
/* 02922404 */ if (_t27) goto L_02922408; else goto L_02922418;
|
|
L_02922408: ; // 0x2922408
|
|
/* 02922408 */ cpu->r[3] = 0x00000038u;
|
|
/* 0292240C */ Gambit_fn_02801A78(cpu);
|
|
/* 02922410 */ cpu->r[16] = cpu->r[3];
|
|
/* 02922410 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[16], 0x00000000u);
|
|
/* 02922414 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02922414 */ _t29 = _t28 & 0x00000001u;
|
|
/* 02922414 */ if (_t29) goto L_02922480; else goto L_02922418;
|
|
L_02922418: ; // 0x2922418
|
|
/* 02922418 */ cpu->r[3] = cpu->r[16];
|
|
/* 0292241C */ Gambit_fn_0294F7F0(cpu);
|
|
/* 02922420 */ cpu->r[0] = 0x10140000u;
|
|
/* 02922424 */ cpu->r[0] = cpu->r[0] + 0x00002D50u;
|
|
/* 02922428 */ cpu->r[19] = cpu->r[16] + 0x0000000Cu;
|
|
/* 02922428 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[19], 0x00000000u);
|
|
/* 0292242C */ _t30 = cpu->r[16] + 0x00000008u;
|
|
/* 0292242C */ rbrew_write32(cpu->mem, _t30, cpu->r[0]);
|
|
/* 02922430 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02922430 */ _t32 = _t31 & 0x00000001u;
|
|
/* 02922430 */ if (_t32) goto L_02922434; else goto L_02922444;
|
|
L_02922434: ; // 0x2922434
|
|
/* 02922434 */ cpu->r[3] = 0x0000002Cu;
|
|
/* 02922438 */ Gambit_fn_02801A78(cpu);
|
|
/* 0292243C */ cpu->r[19] = cpu->r[3];
|
|
/* 0292243C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[19], 0x00000000u);
|
|
/* 02922440 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02922440 */ _t34 = _t33 & 0x00000001u;
|
|
/* 02922440 */ if (_t34) goto L_0292247C; else goto L_02922444;
|
|
L_02922444: ; // 0x2922444
|
|
/* 02922444 */ cpu->r[3] = cpu->r[19];
|
|
/* 02922444 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02922448 */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02922448 */ _t36 = _t35 & 0x00000001u;
|
|
/* 02922448 */ if (_t36) goto L_0292244C; else goto L_0292245C;
|
|
L_0292244C: ; // 0x292244c
|
|
/* 0292244C */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02922450 */ Gambit_fn_02801A78(cpu);
|
|
/* 02922454 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02922458 */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02922458 */ _t38 = _t37 & 0x00000001u;
|
|
/* 02922458 */ if (_t38) goto L_02922470; else goto L_0292245C;
|
|
L_0292245C: ; // 0x292245c
|
|
/* 0292245C */ _t39 = cpu->r[3] + 0x00000004u;
|
|
/* 0292245C */ rbrew_write32(cpu->mem, _t39, cpu->r[28]);
|
|
/* 02922460 */ cpu->r[0] = cpu->r[19] + 0x0000000Cu;
|
|
/* 02922464 */ _t40 = cpu->r[3] + 0x00000008u;
|
|
/* 02922464 */ rbrew_write32(cpu->mem, _t40, cpu->r[27]);
|
|
/* 02922468 */ _t41 = cpu->r[3] + 0x00000000u;
|
|
/* 02922468 */ rbrew_write32(cpu->mem, _t41, cpu->r[0]);
|
|
/* 0292246C */ _t42 = cpu->r[19] + 0x0000002Bu;
|
|
/* 0292246C */ rbrew_write8(cpu->mem, _t42, (uint8_t)cpu->r[29]);
|
|
L_02922470: ; // 0x2922470
|
|
/* 02922470 */ _t43 = cpu->r[19] + 0x00000000u;
|
|
/* 02922470 */ cpu->r[6] = rbrew_read32(cpu->mem, _t43);
|
|
/* 02922474 */ _t44 = cpu->r[19] + 0x00000004u;
|
|
/* 02922474 */ rbrew_write32(cpu->mem, _t44, cpu->r[20]);
|
|
/* 02922478 */ _t45 = cpu->r[6] + 0x00000000u;
|
|
/* 02922478 */ rbrew_write8(cpu->mem, _t45, (uint8_t)cpu->r[29]);
|
|
L_0292247C: ; // 0x292247c
|
|
/* 0292247C */ _t46 = cpu->r[16] + 0x00000010u;
|
|
/* 0292247C */ rbrew_write32(cpu->mem, _t46, cpu->r[21]);
|
|
L_02922480: ; // 0x2922480
|
|
/* 02922480 */ cpu->r[22] = cpu->r[22] + 0xFFFFFFFFu;
|
|
/* 02922480 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[22], 0x00000000u);
|
|
/* 02922484 */ cpu->r[23] = cpu->r[23] + 0x000000A4u;
|
|
/* 02922488 */ _t47 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02922488 */ _t48 = _t47 & 0x00000001u;
|
|
/* 02922488 */ if (_t48) goto L_0292248C; else goto L_029223C4;
|
|
L_0292248C: ; // 0x292248c
|
|
/* 0292248C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[18], 0x00000000u);
|
|
/* 02922490 */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02922490 */ _t50 = _t49 & 0x00000001u;
|
|
/* 02922490 */ if (_t50) goto L_0292249C; else goto L_02922494;
|
|
L_02922494: ; // 0x2922494
|
|
/* 02922494 */ _t51 = cpu->r[31] + 0x000000C8u;
|
|
/* 02922494 */ rbrew_write32(cpu->mem, _t51, cpu->r[18]);
|
|
/* 02922498 */ _t52 = cpu->r[31] + 0x000000C4u;
|
|
/* 02922498 */ rbrew_write32(cpu->mem, _t52, cpu->r[17]);
|
|
L_0292249C: ; // 0x292249c
|
|
/* 0292249C */ cpu->r[10] = 0x101D0000u;
|
|
/* 029224A0 */ _t53 = cpu->r[10] + 0xFFFFA470u;
|
|
/* 029224A0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t53);
|
|
/* 029224A4 */ cpu->r[5] = 0x00000000u;
|
|
/* 029224A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 029224AC */ cpu->r[6] = cpu->r[5];
|
|
/* 029224B0 */ _t54 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 029224B0 */ _t55 = _t54 & 0x00000001u;
|
|
/* 029224B0 */ if (_t55) goto L_029224B4; else goto L_02922538;
|
|
L_029224B4: ; // 0x29224b4
|
|
/* 029224B4 */ _t56 = cpu->r[31] + 0x0000000Cu;
|
|
/* 029224B4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t56);
|
|
/* 029224B8 */ _t57 = cpu->r[31] + 0x00000008u;
|
|
/* 029224B8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t57);
|
|
/* 029224BC */ cpu->r[9] = 0x00000000u;
|
|
L_029224C0: ; // 0x29224c0
|
|
/* 029224C0 */ cpu->r[4] = 0x00000000u;
|
|
/* 029224C4 */ goto L_02922500;
|
|
L_029224C8: ; // 0x29224c8
|
|
/* 029224C8 */ _t58 = cpu->r[31] + 0x000000C4u;
|
|
/* 029224C8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t58);
|
|
/* 029224CC */ cpu->r[7] = cpu->r[5];
|
|
/* 029224D0 */ cpu->r[5] = cpu->r[5] + 0x00000001u;
|
|
/* 029224D4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[8]);
|
|
/* 029224D8 */ _t59 = cpu->r[31] + 0x000000C8u;
|
|
/* 029224D8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t59);
|
|
/* 029224DC */ _t60 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 029224DC */ _t61 = _t60 & 0x00000001u;
|
|
/* 029224DC */ if (_t61) goto L_029224E0; else goto L_029224E8;
|
|
L_029224E0: ; // 0x29224e0
|
|
/* 029224E0 */ cpu->r[12] = (uint32_t)((int32_t)cpu->r[7] * (int32_t)0x000000A4u);
|
|
/* 029224E4 */ cpu->r[8] = cpu->r[8] + cpu->r[12];
|
|
L_029224E8: ; // 0x29224e8
|
|
/* 029224E8 */ cpu->r[7] = cpu->r[31] + 0x0000001Cu;
|
|
/* 029224EC */ _t62 = cpu->r[8] + 0x00000068u;
|
|
/* 029224EC */ rbrew_write32(cpu->mem, _t62, cpu->r[6]);
|
|
/* 029224F0 */ _t63 = cpu->r[8] + 0x00000060u;
|
|
/* 029224F0 */ rbrew_write32(cpu->mem, _t63, cpu->r[7]);
|
|
/* 029224F4 */ _t64 = cpu->r[31] + 0x00000008u;
|
|
/* 029224F4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t64);
|
|
/* 029224F8 */ _t65 = cpu->r[31] + 0x0000000Cu;
|
|
/* 029224F8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t65);
|
|
/* 029224FC */ cpu->r[4] = cpu->r[4] + 0x00000001u;
|
|
L_02922500: ; // 0x2922500
|
|
/* 02922500 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[7]);
|
|
/* 02922504 */ _t66 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02922504 */ _t67 = _t66 & 0x00000001u;
|
|
/* 02922504 */ if (_t67) goto L_02922508; else goto L_0292251C;
|
|
L_02922508: ; // 0x2922508
|
|
/* 02922508 */ cpu->r[11] = cpu->r[8] + cpu->r[9];
|
|
/* 0292250C */ _t68 = cpu->r[11] + 0x00000002u;
|
|
/* 0292250C */ cpu->r[11] = rbrew_read16(cpu->mem, _t68);
|
|
/* 02922510 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], cpu->r[11]);
|
|
/* 02922514 */ _t69 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02922514 */ _t70 = _t69 & 0x00000001u;
|
|
/* 02922514 */ if (_t70) goto L_029224C8; else goto L_02922518;
|
|
L_02922518: ; // 0x2922518
|
|
/* 02922518 */ goto L_02922528;
|
|
L_0292251C: ; // 0x292251c
|
|
/* 0292251C */ _t71 = cpu->r[8] + 0x00000002u;
|
|
/* 0292251C */ cpu->r[11] = rbrew_read16(cpu->mem, _t71);
|
|
/* 02922520 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], cpu->r[11]);
|
|
/* 02922524 */ _t72 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02922524 */ _t73 = _t72 & 0x00000001u;
|
|
/* 02922524 */ if (_t73) goto L_029224C8; else goto L_02922528;
|
|
L_02922528: ; // 0x2922528
|
|
/* 02922528 */ cpu->r[10] = cpu->r[10] + 0xFFFFFFFFu;
|
|
/* 02922528 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0292252C */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 02922530 */ cpu->r[9] = cpu->r[9] + 0x00000004u;
|
|
/* 02922534 */ _t74 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02922534 */ _t75 = _t74 & 0x00000001u;
|
|
/* 02922534 */ if (_t75) goto L_02922538; else goto L_029224C0;
|
|
L_02922538: ; // 0x2922538
|
|
/* 02922538 */ cpu->r[0] = 0x10140000u;
|
|
/* 0292253C */ _t76 = cpu->r[1] + 0x00000080u;
|
|
/* 0292253C */ rbrew_write32(cpu->mem, _t76, cpu->r[30]);
|
|
/* 02922540 */ cpu->r[0] = cpu->r[0] + 0x00002E8Cu;
|
|
/* 02922544 */ _t77 = cpu->r[1] + 0x000000BFu;
|
|
/* 02922544 */ rbrew_write8(cpu->mem, _t77, (uint8_t)cpu->r[29]);
|
|
/* 02922548 */ cpu->r[27] = cpu->r[1] + 0x000000A0u;
|
|
/* 0292254C */ _t78 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0292254C */ rbrew_write32(cpu->mem, _t78, cpu->r[0]);
|
|
/* 02922550 */ cpu->r[0] = 0x00000020u;
|
|
/* 02922554 */ _t79 = cpu->r[1] + 0x00000094u;
|
|
/* 02922554 */ rbrew_write32(cpu->mem, _t79, cpu->r[27]);
|
|
/* 02922558 */ cpu->r[3] = cpu->r[1] + 0x0000007Cu;
|
|
/* 0292255C */ _t80 = cpu->r[1] + 0x00000098u;
|
|
/* 0292255C */ rbrew_write32(cpu->mem, _t80, cpu->r[20]);
|
|
/* 02922560 */ _t81 = cpu->r[1] + 0x0000009Cu;
|
|
/* 02922560 */ rbrew_write32(cpu->mem, _t81, cpu->r[0]);
|
|
/* 02922564 */ Gambit_fn_02922F70(cpu);
|
|
/* 02922568 */ _t82 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02922568 */ cpu->r[9] = rbrew_read32(cpu->mem, _t82);
|
|
/* 0292256C */ _t83 = cpu->r[9] + 0x00000000u;
|
|
/* 0292256C */ cpu->r[4] = rbrew_read8(cpu->mem, _t83);
|
|
/* 02922570 */ cpu->r[11] = cpu->r[29];
|
|
/* 02922574 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[11]);
|
|
/* 02922578 */ cpu->r[10] = 0x00080000u;
|
|
/* 0292257C */ cpu->r[28] = 0x00000000u;
|
|
/* 02922580 */ _t84 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02922580 */ _t85 = _t84 & 0x00000001u;
|
|
/* 02922580 */ if (_t85) goto L_029225A8; else goto L_02922584;
|
|
L_02922584: ; // 0x2922584
|
|
/* 02922584 */ cpu->r[28] = cpu->r[28] + 0x00000001u;
|
|
/* 02922588 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], cpu->r[10]);
|
|
/* 0292258C */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 02922590 */ _t86 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02922590 */ _t87 = _t86 & 0x00000001u;
|
|
/* 02922590 */ if (_t87) goto L_029225A4; else goto L_02922594;
|
|
L_02922594: ; // 0x2922594
|
|
/* 02922594 */ _t88 = cpu->r[9] + 0x00000000u;
|
|
/* 02922594 */ cpu->r[5] = rbrew_read8(cpu->mem, _t88);
|
|
/* 02922598 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[11]);
|
|
/* 0292259C */ _t89 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292259C */ _t90 = _t89 & 0x00000001u;
|
|
/* 0292259C */ if (_t90) goto L_029225A0; else goto L_02922584;
|
|
L_029225A0: ; // 0x29225a0
|
|
/* 029225A0 */ goto L_029225A8;
|
|
L_029225A4: ; // 0x29225a4
|
|
/* 029225A4 */ cpu->r[28] = 0x00000000u;
|
|
L_029225A8: ; // 0x29225a8
|
|
/* 029225A8 */ _t91 = cpu->r[1] + 0x0000009Cu;
|
|
/* 029225A8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t91);
|
|
/* 029225AC */ _t92 = cpu->r[1] + 0x00000080u;
|
|
/* 029225AC */ cpu->r[6] = rbrew_read32(cpu->mem, _t92);
|
|
/* 029225B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], cpu->r[12]);
|
|
/* 029225B4 */ _t93 = cpu->r[6] + 0x00000014u;
|
|
/* 029225B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t93);
|
|
/* 029225B8 */ _t94 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 029225B8 */ _t95 = _t94 & 0x00000001u;
|
|
/* 029225B8 */ if (_t95) goto L_029225C0; else goto L_029225BC;
|
|
L_029225BC: ; // 0x29225bc
|
|
/* 029225BC */ cpu->r[28] = cpu->r[12] + 0xFFFFFFFFu;
|
|
L_029225C0: ; // 0x29225c0
|
|
/* 029225C0 */ cpu->ctr = cpu->r[0];
|
|
/* 029225C4 */ cpu->r[3] = cpu->r[1] + 0x0000007Cu;
|
|
/* 029225C8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 029225CC */ _t96 = cpu->r[1] + 0x0000007Cu;
|
|
/* 029225CC */ cpu->r[4] = rbrew_read32(cpu->mem, _t96);
|
|
/* 029225D0 */ cpu->r[3] = cpu->r[27];
|
|
/* 029225D4 */ cpu->r[5] = cpu->r[28];
|
|
/* 029225D8 */ cpu->r[6] = 0x00000000u;
|
|
/* 029225DC */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 029225E0 */ _t97 = cpu->r[1] + 0x00000078u;
|
|
/* 029225E0 */ rbrew_write32(cpu->mem, _t97, cpu->r[30]);
|
|
/* 029225E4 */ cpu->r[0] = 0x10140000u;
|
|
/* 029225E8 */ _t98 = cpu->r[27] + cpu->r[28];
|
|
/* 029225E8 */ rbrew_write8(cpu->mem, _t98, (uint8_t)cpu->r[29]);
|
|
/* 029225EC */ cpu->r[0] = cpu->r[0] + 0x00002E9Cu;
|
|
/* 029225F0 */ _t99 = cpu->r[1] + 0x00000090u;
|
|
/* 029225F0 */ rbrew_write32(cpu->mem, _t99, cpu->r[30]);
|
|
/* 029225F4 */ cpu->r[6] = cpu->r[1] + 0x0000008Cu;
|
|
/* 029225F8 */ _t100 = cpu->r[1] + 0x00000074u;
|
|
/* 029225F8 */ rbrew_write32(cpu->mem, _t100, cpu->r[0]);
|
|
/* 029225FC */ cpu->r[19] = 0x10140000u;
|
|
/* 02922600 */ _t101 = cpu->r[1] + 0x00000088u;
|
|
/* 02922600 */ rbrew_write32(cpu->mem, _t101, cpu->r[30]);
|
|
/* 02922604 */ _t102 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02922604 */ rbrew_write32(cpu->mem, _t102, cpu->r[0]);
|
|
/* 02922608 */ cpu->r[0] = 0x10140000u;
|
|
/* 0292260C */ cpu->r[19] = cpu->r[19] + 0x00002C6Cu;
|
|
/* 02922610 */ cpu->r[0] = cpu->r[0] + 0x00002E94u;
|
|
/* 02922614 */ _t103 = cpu->r[1] + 0x0000008Cu;
|
|
/* 02922614 */ rbrew_write32(cpu->mem, _t103, cpu->r[19]);
|
|
/* 02922618 */ cpu->r[4] = cpu->r[1] + 0x00000084u;
|
|
/* 0292261C */ _t104 = cpu->r[1] + 0x00000084u;
|
|
/* 0292261C */ rbrew_write32(cpu->mem, _t104, cpu->r[0]);
|
|
/* 02922620 */ cpu->r[7] = cpu->r[31] + 0x000000A8u;
|
|
/* 02922624 */ cpu->r[5] = cpu->r[1] + 0x00000074u;
|
|
/* 02922628 */ _t105 = cpu->r[1] + 0x00000010u;
|
|
/* 02922628 */ rbrew_write32(cpu->mem, _t105, cpu->r[0]);
|
|
/* 0292262C */ cpu->r[3] = cpu->r[31] + 0x00000048u;
|
|
/* 02922630 */ _t106 = cpu->r[1] + 0x00000098u;
|
|
/* 02922630 */ rbrew_write32(cpu->mem, _t106, cpu->r[21]);
|
|
/* 02922634 */ Gambit_fn_0294F794(cpu);
|
|
/* 02922638 */ _t107 = cpu->r[1] + 0x00000098u;
|
|
/* 02922638 */ cpu->r[6] = rbrew_read32(cpu->mem, _t107);
|
|
/* 0292263C */ _t108 = cpu->r[6] + 0x00000014u;
|
|
/* 0292263C */ cpu->r[0] = rbrew_read32(cpu->mem, _t108);
|
|
/* 02922640 */ cpu->ctr = cpu->r[0];
|
|
/* 02922644 */ _t109 = cpu->r[31] + 0x00000054u;
|
|
/* 02922644 */ cpu->r[27] = rbrew_read32(cpu->mem, _t109);
|
|
/* 02922648 */ cpu->r[3] = cpu->r[1] + 0x00000094u;
|
|
/* 0292264C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02922650 */ _t110 = cpu->r[1] + 0x00000094u;
|
|
/* 02922650 */ cpu->r[7] = rbrew_read32(cpu->mem, _t110);
|
|
/* 02922654 */ cpu->r[5] = cpu->r[29];
|
|
/* 02922658 */ _t111 = cpu->r[7] + 0x00000000u;
|
|
/* 02922658 */ cpu->r[0] = rbrew_read8(cpu->mem, _t111);
|
|
/* 0292265C */ cpu->r[28] = 0x00000000u;
|
|
/* 02922660 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[5]);
|
|
/* 02922664 */ cpu->r[8] = 0x00080000u;
|
|
/* 02922668 */ _t112 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02922668 */ _t113 = _t112 & 0x00000001u;
|
|
/* 02922668 */ if (_t113) goto L_02922690; else goto L_0292266C;
|
|
L_0292266C: ; // 0x292266c
|
|
/* 0292266C */ cpu->r[28] = cpu->r[28] + 0x00000001u;
|
|
/* 02922670 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], cpu->r[8]);
|
|
/* 02922674 */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 02922678 */ _t114 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02922678 */ _t115 = _t114 & 0x00000001u;
|
|
/* 02922678 */ if (_t115) goto L_0292268C; else goto L_0292267C;
|
|
L_0292267C: ; // 0x292267c
|
|
/* 0292267C */ _t116 = cpu->r[7] + 0x00000000u;
|
|
/* 0292267C */ cpu->r[0] = rbrew_read8(cpu->mem, _t116);
|
|
/* 02922680 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[5]);
|
|
/* 02922684 */ _t117 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02922684 */ _t118 = _t117 & 0x00000001u;
|
|
/* 02922684 */ if (_t118) goto L_02922688; else goto L_0292266C;
|
|
L_02922688: ; // 0x2922688
|
|
/* 02922688 */ goto L_02922690;
|
|
L_0292268C: ; // 0x292268c
|
|
/* 0292268C */ cpu->r[28] = 0x00000000u;
|
|
L_02922690: ; // 0x2922690
|
|
/* 02922690 */ _t119 = cpu->r[31] + 0x0000005Cu;
|
|
/* 02922690 */ cpu->r[12] = rbrew_read32(cpu->mem, _t119);
|
|
/* 02922694 */ _t120 = cpu->r[1] + 0x00000098u;
|
|
/* 02922694 */ cpu->r[10] = rbrew_read32(cpu->mem, _t120);
|
|
/* 02922698 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], cpu->r[12]);
|
|
/* 0292269C */ _t121 = cpu->r[10] + 0x00000014u;
|
|
/* 0292269C */ cpu->r[11] = rbrew_read32(cpu->mem, _t121);
|
|
/* 029226A0 */ _t122 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 029226A0 */ _t123 = _t122 & 0x00000001u;
|
|
/* 029226A0 */ if (_t123) goto L_029226A8; else goto L_029226A4;
|
|
L_029226A4: ; // 0x29226a4
|
|
/* 029226A4 */ cpu->r[28] = cpu->r[12] + 0xFFFFFFFFu;
|
|
L_029226A8: ; // 0x29226a8
|
|
/* 029226A8 */ cpu->ctr = cpu->r[11];
|
|
/* 029226AC */ cpu->r[3] = cpu->r[1] + 0x00000094u;
|
|
/* 029226B0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 029226B4 */ _t124 = cpu->r[1] + 0x00000094u;
|
|
/* 029226B4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t124);
|
|
/* 029226B8 */ cpu->r[6] = 0x00000000u;
|
|
/* 029226BC */ cpu->r[5] = cpu->r[28];
|
|
/* 029226C0 */ cpu->r[3] = cpu->r[27];
|
|
/* 029226C4 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 029226C8 */ _t125 = cpu->r[27] + cpu->r[28];
|
|
/* 029226C8 */ rbrew_write8(cpu->mem, _t125, (uint8_t)cpu->r[29]);
|
|
/* 029226CC */ _t126 = cpu->r[31] + 0x000000C4u;
|
|
/* 029226CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t126);
|
|
/* 029226D0 */ _t127 = cpu->r[31] + 0x000000C8u;
|
|
/* 029226D0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t127);
|
|
/* 029226D4 */ cpu->r[12] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x000000A4u);
|
|
/* 029226D8 */ cpu->r[0] = cpu->r[4] + cpu->r[12];
|
|
/* 029226DC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[0]);
|
|
/* 029226E0 */ _t128 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029226E0 */ _t129 = _t128 & 0x00000001u;
|
|
/* 029226E0 */ if (_t129) goto L_02922AF4; else goto L_029226E4;
|
|
L_029226E4: ; // 0x29226e4
|
|
/* 029226E4 */ cpu->r[12] = 0x10140000u;
|
|
/* 029226E8 */ cpu->r[24] = cpu->r[29];
|
|
/* 029226EC */ cpu->r[29] = cpu->r[1] + 0x00000044u;
|
|
/* 029226F0 */ cpu->r[12] = cpu->r[12] + 0x00002EACu;
|
|
/* 029226F4 */ cpu->r[26] = 0x101F0000u;
|
|
/* 029226F8 */ cpu->r[10] = 0x10140000u;
|
|
/* 029226FC */ _t130 = cpu->r[1] + 0x00000014u;
|
|
/* 029226FC */ rbrew_write32(cpu->mem, _t130, cpu->r[12]);
|
|
/* 02922700 */ cpu->r[26] = cpu->r[26] + 0x000066E8u;
|
|
/* 02922704 */ cpu->r[25] = cpu->r[4];
|
|
/* 02922708 */ cpu->r[10] = cpu->r[10] + 0x00002EB4u;
|
|
/* 0292270C */ _t131 = cpu->r[26] + 0x00000000u;
|
|
/* 0292270C */ cpu->r[22] = rbrew_read32(cpu->mem, _t131);
|
|
/* 02922710 */ cpu->r[14] = cpu->r[4];
|
|
/* 02922714 */ cpu->r[6] = 0x10140000u;
|
|
/* 02922718 */ _t132 = cpu->r[26] + 0x00000004u;
|
|
/* 02922718 */ cpu->r[7] = rbrew_read32(cpu->mem, _t132);
|
|
/* 0292271C */ cpu->r[4] = 0x101F0000u;
|
|
/* 02922720 */ cpu->r[6] = cpu->r[6] + 0x00002EA4u;
|
|
/* 02922724 */ _t133 = cpu->r[1] + 0x00000008u;
|
|
/* 02922724 */ rbrew_write32(cpu->mem, _t133, cpu->r[10]);
|
|
/* 02922728 */ cpu->r[4] = cpu->r[4] + 0x000075F0u;
|
|
/* 0292272C */ cpu->r[15] = cpu->r[0];
|
|
/* 02922730 */ _t134 = cpu->r[1] + 0x00000018u;
|
|
/* 02922730 */ rbrew_write32(cpu->mem, _t134, cpu->r[6]);
|
|
/* 02922734 */ cpu->r[28] = cpu->r[7] + 0x00000010u;
|
|
/* 02922738 */ cpu->r[27] = 0x00000020u;
|
|
/* 0292273C */ _t135 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0292273C */ rbrew_write32(cpu->mem, _t135, cpu->r[4]);
|
|
L_02922740: ; // 0x2922740
|
|
/* 02922740 */ cpu->r[0] = 0xC7CE0000u;
|
|
/* 02922744 */ cpu->r[6] = cpu->r[25] - cpu->r[14];
|
|
/* 02922748 */ cpu->r[0] = cpu->r[0] | 0x00000C7Du;
|
|
/* 0292274C */ /* nop */
|
|
/* 02922750 */ cpu->r[23] = rbrew_rlwinm(cpu->r[23], 0x00000019u, 0x00000007u, 0x0000001Fu);
|
|
/* 02922754 */ cpu->r[3] = cpu->r[31];
|
|
/* 02922758 */ cpu->r[4] = cpu->r[23];
|
|
/* 0292275C */ Gambit_fn_0291FA14(cpu);
|
|
/* 02922760 */ _t136 = cpu->r[1] + 0x00000038u;
|
|
/* 02922760 */ rbrew_write32(cpu->mem, _t136, cpu->r[29]);
|
|
/* 02922764 */ cpu->r[7] = (uint32_t)((int32_t)cpu->r[3] * (int32_t)0x00000018u);
|
|
/* 02922768 */ _t137 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02922768 */ cpu->r[0] = rbrew_read32(cpu->mem, _t137);
|
|
/* 0292276C */ _t138 = cpu->r[29] + 0x0000001Fu;
|
|
/* 0292276C */ rbrew_write8(cpu->mem, _t138, (uint8_t)cpu->r[24]);
|
|
/* 02922770 */ _t139 = cpu->r[7] + cpu->r[0];
|
|
/* 02922770 */ cpu->r[4] = rbrew_read32(cpu->mem, _t139);
|
|
/* 02922774 */ _t140 = cpu->r[1] + 0x00000034u;
|
|
/* 02922774 */ rbrew_write32(cpu->mem, _t140, cpu->r[30]);
|
|
/* 02922778 */ _t141 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02922778 */ rbrew_write32(cpu->mem, _t141, cpu->r[20]);
|
|
/* 0292277C */ _t142 = cpu->r[1] + 0x00000040u;
|
|
/* 0292277C */ rbrew_write32(cpu->mem, _t142, cpu->r[27]);
|
|
/* 02922780 */ cpu->r[3] = cpu->r[1] + 0x00000030u;
|
|
/* 02922784 */ _t143 = cpu->r[1] + 0x00000030u;
|
|
/* 02922784 */ rbrew_write32(cpu->mem, _t143, cpu->r[4]);
|
|
/* 02922788 */ Gambit_fn_02922F70(cpu);
|
|
/* 0292278C */ _t144 = cpu->r[1] + 0x00000030u;
|
|
/* 0292278C */ cpu->r[11] = rbrew_read32(cpu->mem, _t144);
|
|
/* 02922790 */ cpu->r[0] = cpu->r[24];
|
|
/* 02922794 */ _t145 = cpu->r[11] + 0x00000000u;
|
|
/* 02922794 */ cpu->r[8] = rbrew_read8(cpu->mem, _t145);
|
|
/* 02922798 */ cpu->r[10] = 0x00000000u;
|
|
/* 0292279C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[0]);
|
|
/* 029227A0 */ cpu->r[12] = 0x00080000u;
|
|
/* 029227A4 */ _t146 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029227A4 */ _t147 = _t146 & 0x00000001u;
|
|
/* 029227A4 */ if (_t147) goto L_029227E8; else goto L_029227A8;
|
|
L_029227A8: ; // 0x29227a8
|
|
/* 029227A8 */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 029227AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], cpu->r[12]);
|
|
/* 029227B0 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 029227B4 */ _t148 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 029227B4 */ _t149 = _t148 & 0x00000001u;
|
|
/* 029227B4 */ if (_t149) goto L_029227CC; else goto L_029227B8;
|
|
L_029227B8: ; // 0x29227b8
|
|
/* 029227B8 */ _t150 = cpu->r[11] + 0x00000000u;
|
|
/* 029227B8 */ cpu->r[9] = rbrew_read8(cpu->mem, _t150);
|
|
/* 029227BC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[0]);
|
|
/* 029227C0 */ _t151 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029227C0 */ _t152 = _t151 & 0x00000001u;
|
|
/* 029227C0 */ if (_t152) goto L_029227C4; else goto L_029227A8;
|
|
L_029227C4: ; // 0x29227c4
|
|
/* 029227C4 */ cpu->r[18] = cpu->r[10];
|
|
/* 029227C8 */ goto L_029227EC;
|
|
L_029227CC: ; // 0x29227cc
|
|
/* 029227CC */ _t153 = cpu->r[1] + 0x00000040u;
|
|
/* 029227CC */ cpu->r[5] = rbrew_read32(cpu->mem, _t153);
|
|
/* 029227D0 */ _t154 = cpu->r[1] + 0x00000034u;
|
|
/* 029227D0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t154);
|
|
/* 029227D4 */ cpu->r[18] = 0x00000000u;
|
|
/* 029227D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[18], cpu->r[5]);
|
|
/* 029227DC */ _t155 = cpu->r[10] + 0x00000014u;
|
|
/* 029227DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t155);
|
|
/* 029227E0 */ _t156 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 029227E0 */ _t157 = _t156 & 0x00000001u;
|
|
/* 029227E0 */ if (_t157) goto L_029227E4; else goto L_02922800;
|
|
L_029227E4: ; // 0x29227e4
|
|
/* 029227E4 */ goto L_02922804;
|
|
L_029227E8: ; // 0x29227e8
|
|
/* 029227E8 */ cpu->r[18] = cpu->r[10];
|
|
L_029227EC: ; // 0x29227ec
|
|
/* 029227EC */ _t158 = cpu->r[1] + 0x00000040u;
|
|
/* 029227EC */ cpu->r[5] = rbrew_read32(cpu->mem, _t158);
|
|
/* 029227F0 */ _t159 = cpu->r[1] + 0x00000034u;
|
|
/* 029227F0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t159);
|
|
/* 029227F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[18], cpu->r[5]);
|
|
/* 029227F8 */ _t160 = cpu->r[10] + 0x00000014u;
|
|
/* 029227F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t160);
|
|
/* 029227FC */ _t161 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 029227FC */ _t162 = _t161 & 0x00000001u;
|
|
/* 029227FC */ if (_t162) goto L_02922804; else goto L_02922800;
|
|
L_02922800: ; // 0x2922800
|
|
/* 02922800 */ cpu->r[18] = cpu->r[5] + 0xFFFFFFFFu;
|
|
L_02922804: ; // 0x2922804
|
|
/* 02922804 */ cpu->ctr = cpu->r[0];
|
|
/* 02922808 */ cpu->r[3] = cpu->r[1] + 0x00000030u;
|
|
/* 0292280C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02922810 */ _t163 = cpu->r[1] + 0x00000030u;
|
|
/* 02922810 */ cpu->r[4] = rbrew_read32(cpu->mem, _t163);
|
|
/* 02922814 */ cpu->r[6] = 0x00000000u;
|
|
/* 02922818 */ cpu->r[5] = cpu->r[18];
|
|
/* 0292281C */ cpu->r[3] = cpu->r[29];
|
|
/* 02922820 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 02922824 */ _t164 = cpu->r[1] + 0x00000018u;
|
|
/* 02922824 */ cpu->r[7] = rbrew_read32(cpu->mem, _t164);
|
|
/* 02922828 */ cpu->r[5] = cpu->r[1] + 0x00000028u;
|
|
/* 0292282C */ _t165 = cpu->r[1] + 0x00000068u;
|
|
/* 0292282C */ rbrew_write32(cpu->mem, _t165, cpu->r[30]);
|
|
/* 02922830 */ _t166 = cpu->r[1] + 0x00000020u;
|
|
/* 02922830 */ rbrew_write32(cpu->mem, _t166, cpu->r[7]);
|
|
/* 02922834 */ _t167 = cpu->r[1] + 0x00000064u;
|
|
/* 02922834 */ rbrew_write32(cpu->mem, _t167, cpu->r[19]);
|
|
/* 02922838 */ cpu->r[7] = cpu->r[25];
|
|
/* 0292283C */ _t168 = cpu->r[1] + 0x00000014u;
|
|
/* 0292283C */ cpu->r[0] = rbrew_read32(cpu->mem, _t168);
|
|
/* 02922840 */ cpu->r[16] = cpu->r[25] + 0x0000006Cu;
|
|
/* 02922844 */ _t169 = cpu->r[1] + 0x00000024u;
|
|
/* 02922844 */ rbrew_write32(cpu->mem, _t169, cpu->r[30]);
|
|
/* 02922848 */ _t170 = cpu->r[1] + 0x00000028u;
|
|
/* 02922848 */ rbrew_write32(cpu->mem, _t170, cpu->r[0]);
|
|
/* 0292284C */ cpu->r[6] = cpu->r[1] + 0x00000064u;
|
|
/* 02922850 */ _t171 = cpu->r[29] + cpu->r[18];
|
|
/* 02922850 */ rbrew_write8(cpu->mem, _t171, (uint8_t)cpu->r[24]);
|
|
/* 02922854 */ cpu->r[3] = cpu->r[16];
|
|
/* 02922858 */ _t172 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02922858 */ rbrew_write32(cpu->mem, _t172, cpu->r[30]);
|
|
/* 0292285C */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 02922860 */ _t173 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02922860 */ rbrew_write32(cpu->mem, _t173, cpu->r[21]);
|
|
/* 02922864 */ Gambit_fn_0294F794(cpu);
|
|
/* 02922868 */ _t174 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02922868 */ cpu->r[11] = rbrew_read32(cpu->mem, _t174);
|
|
/* 0292286C */ _t175 = cpu->r[11] + 0x00000014u;
|
|
/* 0292286C */ cpu->r[12] = rbrew_read32(cpu->mem, _t175);
|
|
/* 02922870 */ cpu->ctr = cpu->r[12];
|
|
/* 02922874 */ _t176 = cpu->r[25] + 0x00000078u;
|
|
/* 02922874 */ cpu->r[17] = rbrew_read32(cpu->mem, _t176);
|
|
/* 02922878 */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 0292287C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02922880 */ _t177 = cpu->r[1] + 0x00000038u;
|
|
/* 02922880 */ cpu->r[9] = rbrew_read32(cpu->mem, _t177);
|
|
/* 02922884 */ cpu->r[11] = cpu->r[24];
|
|
/* 02922888 */ _t178 = cpu->r[9] + 0x00000000u;
|
|
/* 02922888 */ cpu->r[0] = rbrew_read8(cpu->mem, _t178);
|
|
/* 0292288C */ cpu->r[10] = 0x00080000u;
|
|
/* 02922890 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[11]);
|
|
/* 02922894 */ cpu->r[6] = 0x00000000u;
|
|
/* 02922898 */ _t179 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02922898 */ _t180 = _t179 & 0x00000001u;
|
|
/* 02922898 */ if (_t180) goto L_029228DC; else goto L_0292289C;
|
|
L_0292289C: ; // 0x292289c
|
|
/* 0292289C */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 029228A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], cpu->r[10]);
|
|
/* 029228A4 */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 029228A8 */ _t181 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 029228A8 */ _t182 = _t181 & 0x00000001u;
|
|
/* 029228A8 */ if (_t182) goto L_029228C0; else goto L_029228AC;
|
|
L_029228AC: ; // 0x29228ac
|
|
/* 029228AC */ _t183 = cpu->r[9] + 0x00000000u;
|
|
/* 029228AC */ cpu->r[4] = rbrew_read8(cpu->mem, _t183);
|
|
/* 029228B0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[11]);
|
|
/* 029228B4 */ _t184 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029228B4 */ _t185 = _t184 & 0x00000001u;
|
|
/* 029228B4 */ if (_t185) goto L_029228B8; else goto L_0292289C;
|
|
L_029228B8: ; // 0x29228b8
|
|
/* 029228B8 */ cpu->r[18] = cpu->r[6];
|
|
/* 029228BC */ goto L_029228E0;
|
|
L_029228C0: ; // 0x29228c0
|
|
/* 029228C0 */ _t186 = cpu->r[16] + 0x00000014u;
|
|
/* 029228C0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t186);
|
|
/* 029228C4 */ _t187 = cpu->r[1] + 0x0000003Cu;
|
|
/* 029228C4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t187);
|
|
/* 029228C8 */ cpu->r[18] = 0x00000000u;
|
|
/* 029228CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[18], cpu->r[4]);
|
|
/* 029228D0 */ _t188 = cpu->r[5] + 0x00000014u;
|
|
/* 029228D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t188);
|
|
/* 029228D4 */ _t189 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 029228D4 */ _t190 = _t189 & 0x00000001u;
|
|
/* 029228D4 */ if (_t190) goto L_029228F8; else goto L_029228D8;
|
|
L_029228D8: ; // 0x29228d8
|
|
/* 029228D8 */ goto L_029228F4;
|
|
L_029228DC: ; // 0x29228dc
|
|
/* 029228DC */ cpu->r[18] = cpu->r[6];
|
|
L_029228E0: ; // 0x29228e0
|
|
/* 029228E0 */ _t191 = cpu->r[16] + 0x00000014u;
|
|
/* 029228E0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t191);
|
|
/* 029228E4 */ _t192 = cpu->r[1] + 0x0000003Cu;
|
|
/* 029228E4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t192);
|
|
/* 029228E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[18], cpu->r[4]);
|
|
/* 029228EC */ _t193 = cpu->r[5] + 0x00000014u;
|
|
/* 029228EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t193);
|
|
/* 029228F0 */ _t194 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 029228F0 */ _t195 = _t194 & 0x00000001u;
|
|
/* 029228F0 */ if (_t195) goto L_029228F8; else goto L_029228F4;
|
|
L_029228F4: ; // 0x29228f4
|
|
/* 029228F4 */ cpu->r[18] = cpu->r[4] + 0xFFFFFFFFu;
|
|
L_029228F8: ; // 0x29228f8
|
|
/* 029228F8 */ cpu->ctr = cpu->r[0];
|
|
/* 029228FC */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 02922900 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02922904 */ _t196 = cpu->r[1] + 0x00000038u;
|
|
/* 02922904 */ cpu->r[4] = rbrew_read32(cpu->mem, _t196);
|
|
/* 02922908 */ cpu->r[6] = 0x00000000u;
|
|
/* 0292290C */ cpu->r[5] = cpu->r[18];
|
|
/* 02922910 */ cpu->r[3] = cpu->r[17];
|
|
/* 02922914 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 02922918 */ _t197 = cpu->r[17] + cpu->r[18];
|
|
/* 02922918 */ rbrew_write8(cpu->mem, _t197, (uint8_t)cpu->r[24]);
|
|
/* 0292291C */ _t198 = cpu->r[1] + 0x00000040u;
|
|
/* 0292291C */ rbrew_write32(cpu->mem, _t198, cpu->r[27]);
|
|
/* 02922920 */ _t199 = cpu->r[29] + 0x0000001Fu;
|
|
/* 02922920 */ rbrew_write8(cpu->mem, _t199, (uint8_t)cpu->r[24]);
|
|
/* 02922924 */ _t200 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02922924 */ rbrew_write32(cpu->mem, _t200, cpu->r[20]);
|
|
/* 02922928 */ _t201 = cpu->r[1] + 0x00000038u;
|
|
/* 02922928 */ rbrew_write32(cpu->mem, _t201, cpu->r[29]);
|
|
/* 0292292C */ _t202 = cpu->r[28] + 0x00000004u;
|
|
/* 0292292C */ cpu->r[0] = rbrew_read32(cpu->mem, _t202);
|
|
/* 02922930 */ cpu->ctr = cpu->r[0];
|
|
/* 02922934 */ cpu->r[3] = cpu->r[26];
|
|
/* 02922938 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0292293C */ cpu->r[7] = cpu->r[22];
|
|
/* 02922940 */ _t203 = cpu->r[7] + 0x00000000u;
|
|
/* 02922940 */ cpu->r[10] = rbrew_read8(cpu->mem, _t203);
|
|
/* 02922944 */ cpu->r[9] = cpu->r[24];
|
|
/* 02922948 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[9]);
|
|
/* 0292294C */ cpu->r[12] = 0x00000000u;
|
|
/* 02922950 */ cpu->r[8] = 0x00080000u;
|
|
/* 02922954 */ _t204 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02922954 */ _t205 = _t204 & 0x00000001u;
|
|
/* 02922954 */ if (_t205) goto L_02922994; else goto L_02922958;
|
|
L_02922958: ; // 0x2922958
|
|
/* 02922958 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 0292295C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], cpu->r[8]);
|
|
/* 02922960 */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 02922964 */ _t206 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02922964 */ _t207 = _t206 & 0x00000001u;
|
|
/* 02922964 */ if (_t207) goto L_0292297C; else goto L_02922968;
|
|
L_02922968: ; // 0x2922968
|
|
/* 02922968 */ _t208 = cpu->r[7] + 0x00000000u;
|
|
/* 02922968 */ cpu->r[11] = rbrew_read8(cpu->mem, _t208);
|
|
/* 0292296C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[9]);
|
|
/* 02922970 */ _t209 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02922970 */ _t210 = _t209 & 0x00000001u;
|
|
/* 02922970 */ if (_t210) goto L_02922974; else goto L_02922958;
|
|
L_02922974: ; // 0x2922974
|
|
/* 02922974 */ cpu->r[18] = cpu->r[12];
|
|
/* 02922978 */ goto L_02922998;
|
|
L_0292297C: ; // 0x292297c
|
|
/* 0292297C */ _t211 = cpu->r[1] + 0x00000040u;
|
|
/* 0292297C */ cpu->r[5] = rbrew_read32(cpu->mem, _t211);
|
|
/* 02922980 */ cpu->r[18] = 0x00000000u;
|
|
/* 02922984 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[18], cpu->r[5]);
|
|
/* 02922988 */ _t212 = cpu->r[28] + 0x00000004u;
|
|
/* 02922988 */ cpu->r[0] = rbrew_read32(cpu->mem, _t212);
|
|
/* 0292298C */ _t213 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0292298C */ _t214 = _t213 & 0x00000001u;
|
|
/* 0292298C */ if (_t214) goto L_02922990; else goto L_029229A8;
|
|
L_02922990: ; // 0x2922990
|
|
/* 02922990 */ goto L_029229AC;
|
|
L_02922994: ; // 0x2922994
|
|
/* 02922994 */ cpu->r[18] = cpu->r[12];
|
|
L_02922998: ; // 0x2922998
|
|
/* 02922998 */ _t215 = cpu->r[1] + 0x00000040u;
|
|
/* 02922998 */ cpu->r[5] = rbrew_read32(cpu->mem, _t215);
|
|
/* 0292299C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[18], cpu->r[5]);
|
|
/* 029229A0 */ _t216 = cpu->r[28] + 0x00000004u;
|
|
/* 029229A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t216);
|
|
/* 029229A4 */ _t217 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 029229A4 */ _t218 = _t217 & 0x00000001u;
|
|
/* 029229A4 */ if (_t218) goto L_029229AC; else goto L_029229A8;
|
|
L_029229A8: ; // 0x29229a8
|
|
/* 029229A8 */ cpu->r[18] = cpu->r[5] + 0xFFFFFFFFu;
|
|
L_029229AC: ; // 0x29229ac
|
|
/* 029229AC */ cpu->ctr = cpu->r[0];
|
|
/* 029229B0 */ cpu->r[3] = cpu->r[26];
|
|
/* 029229B4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 029229B8 */ cpu->r[6] = 0x00000000u;
|
|
/* 029229BC */ cpu->r[5] = cpu->r[18];
|
|
/* 029229C0 */ cpu->r[4] = cpu->r[22];
|
|
/* 029229C4 */ cpu->r[3] = cpu->r[29];
|
|
/* 029229C8 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 029229CC */ _t219 = cpu->r[1] + 0x00000010u;
|
|
/* 029229CC */ cpu->r[12] = rbrew_read32(cpu->mem, _t219);
|
|
/* 029229D0 */ cpu->r[17] = cpu->r[25] + 0x0000001Cu;
|
|
/* 029229D4 */ _t220 = cpu->r[1] + 0x0000002Cu;
|
|
/* 029229D4 */ rbrew_write32(cpu->mem, _t220, cpu->r[30]);
|
|
/* 029229D8 */ cpu->r[5] = cpu->r[1] + 0x00000020u;
|
|
/* 029229DC */ _t221 = cpu->r[1] + 0x00000070u;
|
|
/* 029229DC */ rbrew_write32(cpu->mem, _t221, cpu->r[30]);
|
|
/* 029229E0 */ cpu->r[4] = cpu->r[1] + 0x00000028u;
|
|
/* 029229E4 */ _t222 = cpu->r[1] + 0x00000028u;
|
|
/* 029229E4 */ rbrew_write32(cpu->mem, _t222, cpu->r[12]);
|
|
/* 029229E8 */ cpu->r[3] = cpu->r[17];
|
|
/* 029229EC */ _t223 = cpu->r[1] + 0x0000000Cu;
|
|
/* 029229EC */ cpu->r[11] = rbrew_read32(cpu->mem, _t223);
|
|
/* 029229F0 */ _t224 = cpu->r[29] + cpu->r[18];
|
|
/* 029229F0 */ rbrew_write8(cpu->mem, _t224, (uint8_t)cpu->r[24]);
|
|
/* 029229F4 */ cpu->r[6] = cpu->r[1] + 0x0000006Cu;
|
|
/* 029229F8 */ _t225 = cpu->r[1] + 0x0000006Cu;
|
|
/* 029229F8 */ rbrew_write32(cpu->mem, _t225, cpu->r[19]);
|
|
/* 029229FC */ cpu->r[7] = cpu->r[25];
|
|
/* 02922A00 */ _t226 = cpu->r[1] + 0x00000024u;
|
|
/* 02922A00 */ rbrew_write32(cpu->mem, _t226, cpu->r[30]);
|
|
/* 02922A04 */ _t227 = cpu->r[1] + 0x00000020u;
|
|
/* 02922A04 */ rbrew_write32(cpu->mem, _t227, cpu->r[11]);
|
|
/* 02922A08 */ _t228 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02922A08 */ rbrew_write32(cpu->mem, _t228, cpu->r[21]);
|
|
/* 02922A0C */ Gambit_fn_0294F794(cpu);
|
|
/* 02922A10 */ _t229 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02922A10 */ cpu->r[5] = rbrew_read32(cpu->mem, _t229);
|
|
/* 02922A14 */ _t230 = cpu->r[5] + 0x00000014u;
|
|
/* 02922A14 */ cpu->r[6] = rbrew_read32(cpu->mem, _t230);
|
|
/* 02922A18 */ cpu->ctr = cpu->r[6];
|
|
/* 02922A1C */ _t231 = cpu->r[25] + 0x00000028u;
|
|
/* 02922A1C */ cpu->r[18] = rbrew_read32(cpu->mem, _t231);
|
|
/* 02922A20 */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 02922A24 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02922A28 */ _t232 = cpu->r[1] + 0x00000038u;
|
|
/* 02922A28 */ cpu->r[6] = rbrew_read32(cpu->mem, _t232);
|
|
/* 02922A2C */ cpu->r[7] = cpu->r[24];
|
|
/* 02922A30 */ _t233 = cpu->r[6] + 0x00000000u;
|
|
/* 02922A30 */ cpu->r[0] = rbrew_read8(cpu->mem, _t233);
|
|
/* 02922A34 */ cpu->r[8] = 0x00000000u;
|
|
/* 02922A38 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 02922A3C */ cpu->r[0] = 0x00080000u;
|
|
/* 02922A40 */ _t234 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02922A40 */ _t235 = _t234 & 0x00000001u;
|
|
/* 02922A40 */ if (_t235) goto L_02922A84; else goto L_02922A44;
|
|
L_02922A44: ; // 0x2922a44
|
|
/* 02922A44 */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 02922A48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], cpu->r[0]);
|
|
/* 02922A4C */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 02922A50 */ _t236 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02922A50 */ _t237 = _t236 & 0x00000001u;
|
|
/* 02922A50 */ if (_t237) goto L_02922A68; else goto L_02922A54;
|
|
L_02922A54: ; // 0x2922a54
|
|
/* 02922A54 */ _t238 = cpu->r[6] + 0x00000000u;
|
|
/* 02922A54 */ cpu->r[10] = rbrew_read8(cpu->mem, _t238);
|
|
/* 02922A58 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[7]);
|
|
/* 02922A5C */ _t239 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02922A5C */ _t240 = _t239 & 0x00000001u;
|
|
/* 02922A5C */ if (_t240) goto L_02922A60; else goto L_02922A44;
|
|
L_02922A60: ; // 0x2922a60
|
|
/* 02922A60 */ cpu->r[16] = cpu->r[8];
|
|
/* 02922A64 */ goto L_02922A88;
|
|
L_02922A68: ; // 0x2922a68
|
|
/* 02922A68 */ _t241 = cpu->r[17] + 0x00000014u;
|
|
/* 02922A68 */ cpu->r[5] = rbrew_read32(cpu->mem, _t241);
|
|
/* 02922A6C */ _t242 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02922A6C */ cpu->r[12] = rbrew_read32(cpu->mem, _t242);
|
|
/* 02922A70 */ cpu->r[16] = 0x00000000u;
|
|
/* 02922A74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[16], cpu->r[5]);
|
|
/* 02922A78 */ _t243 = cpu->r[12] + 0x00000014u;
|
|
/* 02922A78 */ cpu->r[4] = rbrew_read32(cpu->mem, _t243);
|
|
/* 02922A7C */ _t244 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02922A7C */ _t245 = _t244 & 0x00000001u;
|
|
/* 02922A7C */ if (_t245) goto L_02922AA0; else goto L_02922A80;
|
|
L_02922A80: ; // 0x2922a80
|
|
/* 02922A80 */ goto L_02922A9C;
|
|
L_02922A84: ; // 0x2922a84
|
|
/* 02922A84 */ cpu->r[16] = cpu->r[8];
|
|
L_02922A88: ; // 0x2922a88
|
|
/* 02922A88 */ _t246 = cpu->r[17] + 0x00000014u;
|
|
/* 02922A88 */ cpu->r[5] = rbrew_read32(cpu->mem, _t246);
|
|
/* 02922A8C */ _t247 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02922A8C */ cpu->r[12] = rbrew_read32(cpu->mem, _t247);
|
|
/* 02922A90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[16], cpu->r[5]);
|
|
/* 02922A94 */ _t248 = cpu->r[12] + 0x00000014u;
|
|
/* 02922A94 */ cpu->r[4] = rbrew_read32(cpu->mem, _t248);
|
|
/* 02922A98 */ _t249 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02922A98 */ _t250 = _t249 & 0x00000001u;
|
|
/* 02922A98 */ if (_t250) goto L_02922AA0; else goto L_02922A9C;
|
|
L_02922A9C: ; // 0x2922a9c
|
|
/* 02922A9C */ cpu->r[16] = cpu->r[5] + 0xFFFFFFFFu;
|
|
L_02922AA0: ; // 0x2922aa0
|
|
/* 02922AA0 */ cpu->ctr = cpu->r[4];
|
|
/* 02922AA4 */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 02922AA8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02922AAC */ _t251 = cpu->r[1] + 0x00000038u;
|
|
/* 02922AAC */ cpu->r[4] = rbrew_read32(cpu->mem, _t251);
|
|
/* 02922AB0 */ cpu->r[3] = cpu->r[18];
|
|
/* 02922AB4 */ cpu->r[5] = cpu->r[16];
|
|
/* 02922AB8 */ cpu->r[6] = 0x00000000u;
|
|
/* 02922ABC */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 02922AC0 */ _t252 = cpu->r[1] + 0x00000008u;
|
|
/* 02922AC0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t252);
|
|
/* 02922AC4 */ cpu->r[3] = cpu->r[1] + 0x000000C0u;
|
|
/* 02922AC8 */ cpu->r[5] = cpu->r[23];
|
|
/* 02922ACC */ _t253 = cpu->r[18] + cpu->r[16];
|
|
/* 02922ACC */ rbrew_write8(cpu->mem, _t253, (uint8_t)cpu->r[24]);
|
|
/* 02922AD0 */ _t254 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 02922AD0 */ _t255 = _t254 & 0x00000001u;
|
|
/* 02922AD0 */ if (_t255) goto L_02922AD4; // else: addr-0 trap, fall-through
|
|
L_02922AD4: ; // 0x2922ad4
|
|
/* 02922AD4 */ Gambit_fn_02922FCC(cpu);
|
|
/* 02922AD8 */ cpu->r[5] = cpu->r[3];
|
|
/* 02922ADC */ cpu->r[4] = cpu->r[25];
|
|
/* 02922AE0 */ cpu->r[3] = cpu->r[31] + 0x00000080u;
|
|
/* 02922AE4 */ Gambit_fn_0295225C(cpu);
|
|
/* 02922AE8 */ cpu->r[25] = cpu->r[25] + 0x000000A4u;
|
|
/* 02922AEC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], cpu->r[15]);
|
|
/* 02922AF0 */ _t256 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02922AF0 */ _t257 = _t256 & 0x00000001u;
|
|
/* 02922AF0 */ if (_t257) goto L_02922AF4; else goto L_02922740;
|
|
L_02922AF4: ; // 0x2922af4
|
|
/* 02922AF4 */ cpu->r[5] = 0x10140000u;
|
|
/* 02922AF8 */ cpu->r[3] = cpu->r[31] + 0x00000020u;
|
|
/* 02922AFC */ cpu->r[5] = cpu->r[5] + 0x00002E84u;
|
|
/* 02922B00 */ cpu->r[4] = cpu->r[31] + 0x000000A8u;
|
|
/* 02922B04 */ _t258 = cpu->r[1] + 0x00000074u;
|
|
/* 02922B04 */ rbrew_write32(cpu->mem, _t258, cpu->r[5]);
|
|
/* 02922B08 */ cpu->r[5] = cpu->r[1] + 0x00000074u;
|
|
/* 02922B0C */ _t259 = cpu->r[1] + 0x00000078u;
|
|
/* 02922B0C */ rbrew_write32(cpu->mem, _t259, cpu->r[30]);
|
|
/* 02922B10 */ Gambit_fn_0295225C(cpu);
|
|
/* 02922B14 */ cpu->r[0] = 0x10140000u;
|
|
/* 02922B18 */ cpu->r[3] = cpu->r[31] + 0x00000020u;
|
|
/* 02922B1C */ _t260 = cpu->r[1] + 0x00000078u;
|
|
/* 02922B1C */ rbrew_write32(cpu->mem, _t260, cpu->r[30]);
|
|
/* 02922B20 */ cpu->r[0] = cpu->r[0] + 0x00002EB8u;
|
|
/* 02922B24 */ cpu->r[4] = cpu->r[31] + 0x00000080u;
|
|
/* 02922B28 */ cpu->r[5] = cpu->r[1] + 0x00000074u;
|
|
/* 02922B2C */ _t261 = cpu->r[1] + 0x00000074u;
|
|
/* 02922B2C */ rbrew_write32(cpu->mem, _t261, cpu->r[0]);
|
|
/* 02922B30 */ Gambit_fn_029521F4(cpu);
|
|
/* 02922B34 */ /* nop */
|
|
/* 02922B38 */ _t262 = cpu->r[1] + 0x0000051Cu;
|
|
/* 02922B38 */ cpu->r[0] = rbrew_read32(cpu->mem, _t262);
|
|
/* 02922B3C */ cpu->lr = cpu->r[0];
|
|
/* 02922B40 */ cpu->r[1] = cpu->r[1] + 0x00000518u;
|
|
/* 02922B44 */ return;
|
|
}
|
|
|
|
// fn_02922B48 @ 0x2922b48
|
|
void Gambit_fn_02922B48(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _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_02922B48: ; // 0x2922b48
|
|
/* 02922B48 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 02922B48 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02922B48 */ cpu->r[1] = _t0;
|
|
/* 02922B4C */ cpu->r[0] = cpu->lr;
|
|
/* 02922B50 */ /* nop */
|
|
/* 02922B54 */ cpu->r[31] = cpu->r[4];
|
|
/* 02922B54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02922B58 */ cpu->r[30] = cpu->r[3];
|
|
/* 02922B5C */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 02922B5C */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02922B60 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02922B60 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02922B60 */ if (_t3) goto L_02922CF4; else goto L_02922B64;
|
|
L_02922B64: ; // 0x2922b64
|
|
/* 02922B64 */ cpu->r[29] = 0x00000000u;
|
|
/* 02922B68 */ goto L_02922CBC;
|
|
L_02922B6C: ; // 0x2922b6c
|
|
/* 02922B6C */ _t4 = cpu->r[31] + 0x00000018u;
|
|
/* 02922B6C */ cpu->r[6] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02922B70 */ _t5 = cpu->r[6] + 0x000000B4u;
|
|
/* 02922B70 */ cpu->r[9] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02922B74 */ cpu->ctr = cpu->r[9];
|
|
/* 02922B78 */ cpu->r[3] = cpu->r[31];
|
|
/* 02922B7C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02922B80 */ _t6 = cpu->r[30] + 0x00000008u;
|
|
/* 02922B80 */ cpu->r[8] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02922B84 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], cpu->r[8]);
|
|
/* 02922B88 */ _t7 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02922B88 */ cpu->r[10] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02922B8C */ _t8 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02922B8C */ _t9 = _t8 & 0x00000001u;
|
|
/* 02922B8C */ if (_t9) goto L_02922B90; else goto L_02922B98;
|
|
L_02922B90: ; // 0x2922b90
|
|
/* 02922B90 */ cpu->r[0] = rbrew_rlwinm(cpu->r[3], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02922B94 */ cpu->r[10] = cpu->r[10] + cpu->r[0];
|
|
L_02922B98: ; // 0x2922b98
|
|
/* 02922B98 */ _t10 = cpu->r[10] + 0x00000000u;
|
|
/* 02922B98 */ cpu->r[11] = rbrew_read16(cpu->mem, _t10);
|
|
/* 02922B9C */ _t11 = cpu->r[30] + 0x000000C4u;
|
|
/* 02922B9C */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02922BA0 */ cpu->r[7] = cpu->r[11] + cpu->r[29];
|
|
/* 02922BA4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[12]);
|
|
/* 02922BA8 */ _t12 = cpu->r[30] + 0x000000C8u;
|
|
/* 02922BA8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02922BAC */ _t13 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02922BAC */ _t14 = _t13 & 0x00000001u;
|
|
/* 02922BAC */ if (_t14) goto L_02922BB0; else goto L_02922BB8;
|
|
L_02922BB0: ; // 0x2922bb0
|
|
/* 02922BB0 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[7] * (int32_t)0x000000A4u);
|
|
/* 02922BB4 */ cpu->r[11] = cpu->r[11] + cpu->r[0];
|
|
L_02922BB8: ; // 0x2922bb8
|
|
/* 02922BB8 */ _t15 = cpu->r[11] + 0x00000054u;
|
|
/* 02922BB8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02922BBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02922BC0 */ cpu->r[27] = cpu->r[11] + 0x0000001Cu;
|
|
/* 02922BC4 */ _t16 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02922BC4 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02922BC4 */ if (_t17) goto L_02922BC8; else goto L_02922CB8;
|
|
L_02922BC8: ; // 0x2922bc8
|
|
/* 02922BC8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFEu);
|
|
/* 02922BCC */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02922BCC */ _t19 = _t18 & 0x00000001u;
|
|
/* 02922BCC */ if (_t19) goto L_02922CB8; else goto L_02922BD0;
|
|
L_02922BD0: ; // 0x2922bd0
|
|
/* 02922BD0 */ _t20 = cpu->r[30] + 0x00000010u;
|
|
/* 02922BD0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02922BD4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[5]);
|
|
/* 02922BD8 */ _t21 = cpu->r[30] + 0x00000014u;
|
|
/* 02922BD8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02922BDC */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02922BDC */ _t23 = _t22 & 0x00000001u;
|
|
/* 02922BDC */ if (_t23) goto L_02922BE0; else goto L_02922BE8;
|
|
L_02922BE0: ; // 0x2922be0
|
|
/* 02922BE0 */ cpu->r[6] = rbrew_rlwinm(cpu->r[7], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02922BE4 */ cpu->r[12] = cpu->r[12] + cpu->r[6];
|
|
L_02922BE8: ; // 0x2922be8
|
|
/* 02922BE8 */ _t24 = cpu->r[12] + 0x00000000u;
|
|
/* 02922BE8 */ rbrew_write32(cpu->mem, _t24, cpu->r[31]);
|
|
/* 02922BEC */ _t25 = cpu->r[31] + 0x00000018u;
|
|
/* 02922BEC */ cpu->r[7] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02922BF0 */ _t26 = cpu->r[7] + 0x00000084u;
|
|
/* 02922BF0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02922BF4 */ cpu->ctr = cpu->r[0];
|
|
/* 02922BF8 */ cpu->r[3] = cpu->r[31];
|
|
/* 02922BFC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02922C00 */ _t27 = cpu->r[3] + 0x00000004u;
|
|
/* 02922C00 */ cpu->r[8] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02922C04 */ _t28 = cpu->r[8] + 0x00000014u;
|
|
/* 02922C04 */ cpu->r[9] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02922C08 */ cpu->ctr = cpu->r[9];
|
|
/* 02922C0C */ _t29 = cpu->r[27] + 0x0000000Cu;
|
|
/* 02922C0C */ cpu->r[29] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02922C10 */ cpu->r[28] = cpu->r[3];
|
|
/* 02922C14 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02922C18 */ _t30 = cpu->r[28] + 0x00000000u;
|
|
/* 02922C18 */ cpu->r[6] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02922C1C */ cpu->r[31] = 0x10110000u;
|
|
/* 02922C20 */ _t31 = cpu->r[31] + 0x00007399u;
|
|
/* 02922C20 */ cpu->r[31] = rbrew_read8(cpu->mem, _t31);
|
|
/* 02922C24 */ _t32 = cpu->r[6] + 0x00000000u;
|
|
/* 02922C24 */ cpu->r[10] = rbrew_read8(cpu->mem, _t32);
|
|
/* 02922C28 */ cpu->r[30] = 0x00000000u;
|
|
/* 02922C2C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[31]);
|
|
/* 02922C30 */ cpu->r[8] = 0x00080000u;
|
|
/* 02922C34 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02922C34 */ _t34 = _t33 & 0x00000001u;
|
|
/* 02922C34 */ if (_t34) goto L_02922C5C; else goto L_02922C38;
|
|
L_02922C38: ; // 0x2922c38
|
|
/* 02922C38 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02922C3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[8]);
|
|
/* 02922C40 */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 02922C44 */ _t35 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02922C44 */ _t36 = _t35 & 0x00000001u;
|
|
/* 02922C44 */ if (_t36) goto L_02922C58; else goto L_02922C48;
|
|
L_02922C48: ; // 0x2922c48
|
|
/* 02922C48 */ _t37 = cpu->r[6] + 0x00000000u;
|
|
/* 02922C48 */ cpu->r[0] = rbrew_read8(cpu->mem, _t37);
|
|
/* 02922C4C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 02922C50 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02922C50 */ _t39 = _t38 & 0x00000001u;
|
|
/* 02922C50 */ if (_t39) goto L_02922C54; else goto L_02922C38;
|
|
L_02922C54: ; // 0x2922c54
|
|
/* 02922C54 */ goto L_02922C5C;
|
|
L_02922C58: ; // 0x2922c58
|
|
/* 02922C58 */ cpu->r[30] = 0x00000000u;
|
|
L_02922C5C: ; // 0x2922c5c
|
|
/* 02922C5C */ _t40 = cpu->r[27] + 0x00000014u;
|
|
/* 02922C5C */ cpu->r[10] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02922C60 */ _t41 = cpu->r[28] + 0x00000004u;
|
|
/* 02922C60 */ cpu->r[12] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02922C64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[10]);
|
|
/* 02922C68 */ _t42 = cpu->r[12] + 0x00000014u;
|
|
/* 02922C68 */ cpu->r[5] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02922C6C */ _t43 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02922C6C */ _t44 = _t43 & 0x00000001u;
|
|
/* 02922C6C */ if (_t44) goto L_02922C74; else goto L_02922C70;
|
|
L_02922C70: ; // 0x2922c70
|
|
/* 02922C70 */ cpu->r[30] = cpu->r[10] + 0xFFFFFFFFu;
|
|
L_02922C74: ; // 0x2922c74
|
|
/* 02922C74 */ cpu->ctr = cpu->r[5];
|
|
/* 02922C78 */ cpu->r[3] = cpu->r[28];
|
|
/* 02922C7C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02922C80 */ _t45 = cpu->r[28] + 0x00000000u;
|
|
/* 02922C80 */ cpu->r[4] = rbrew_read32(cpu->mem, _t45);
|
|
/* 02922C84 */ cpu->r[6] = 0x00000000u;
|
|
/* 02922C88 */ cpu->r[5] = cpu->r[30];
|
|
/* 02922C8C */ cpu->r[3] = cpu->r[29];
|
|
/* 02922C90 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 02922C94 */ cpu->r[3] = cpu->r[27];
|
|
/* 02922C98 */ _t46 = cpu->r[29] + cpu->r[30];
|
|
/* 02922C98 */ rbrew_write8(cpu->mem, _t46, (uint8_t)cpu->r[31]);
|
|
/* 02922C9C */ Gambit_fn_0294E140(cpu);
|
|
/* 02922CA0 */ /* nop */
|
|
/* 02922CA4 */ _t47 = cpu->r[1] + 0x00000024u;
|
|
/* 02922CA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t47);
|
|
/* 02922CA8 */ cpu->lr = cpu->r[0];
|
|
/* 02922CAC */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 02922CB0 */ cpu->r[3] = 0x00000001u;
|
|
/* 02922CB4 */ return;
|
|
L_02922CB8: ; // 0x2922cb8
|
|
/* 02922CB8 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
L_02922CBC: ; // 0x2922cbc
|
|
/* 02922CBC */ _t48 = cpu->r[31] + 0x00000018u;
|
|
/* 02922CBC */ cpu->r[11] = rbrew_read32(cpu->mem, _t48);
|
|
/* 02922CC0 */ _t49 = cpu->r[11] + 0x000000B4u;
|
|
/* 02922CC0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t49);
|
|
/* 02922CC4 */ cpu->ctr = cpu->r[12];
|
|
/* 02922CC8 */ cpu->r[3] = cpu->r[31];
|
|
/* 02922CCC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02922CD0 */ _t50 = cpu->r[30] + 0x00000008u;
|
|
/* 02922CD0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t50);
|
|
/* 02922CD4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], cpu->r[0]);
|
|
/* 02922CD8 */ _t51 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02922CD8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t51);
|
|
/* 02922CDC */ _t52 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02922CDC */ _t53 = _t52 & 0x00000001u;
|
|
/* 02922CDC */ if (_t53) goto L_02922CE0; else goto L_02922CE8;
|
|
L_02922CE0: ; // 0x2922ce0
|
|
/* 02922CE0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[3], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02922CE4 */ cpu->r[9] = cpu->r[9] + cpu->r[0];
|
|
L_02922CE8: ; // 0x2922ce8
|
|
/* 02922CE8 */ _t54 = cpu->r[9] + 0x00000002u;
|
|
/* 02922CE8 */ cpu->r[0] = rbrew_read16(cpu->mem, _t54);
|
|
/* 02922CEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[0]);
|
|
/* 02922CF0 */ _t55 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02922CF0 */ _t56 = _t55 & 0x00000001u;
|
|
/* 02922CF0 */ if (_t56) goto L_02922B6C; else goto L_02922CF4;
|
|
L_02922CF4: ; // 0x2922cf4
|
|
/* 02922CF4 */ /* nop */
|
|
/* 02922CF8 */ _t57 = cpu->r[1] + 0x00000024u;
|
|
/* 02922CF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t57);
|
|
/* 02922CFC */ cpu->lr = cpu->r[0];
|
|
/* 02922D00 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 02922D04 */ cpu->r[3] = 0x00000000u;
|
|
/* 02922D08 */ return;
|
|
}
|
|
|
|
// fn_02922D0C @ 0x2922d0c
|
|
void Gambit_fn_02922D0C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83;
|
|
|
|
L_02922D0C: ; // 0x2922d0c
|
|
/* 02922D0C */ cpu->r[0] = cpu->lr;
|
|
/* 02922D10 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 02922D10 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02922D10 */ cpu->r[1] = _t0;
|
|
/* 02922D14 */ _t1 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02922D14 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 02922D18 */ _t2 = cpu->r[1] + 0x00000018u;
|
|
/* 02922D18 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 02922D1C */ _t3 = cpu->r[1] + 0x00000020u;
|
|
/* 02922D1C */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 02922D20 */ _t4 = cpu->r[1] + 0x00000024u;
|
|
/* 02922D20 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 02922D24 */ cpu->r[30] = cpu->r[3];
|
|
/* 02922D28 */ _t5 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02922D28 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02922D2C */ _t6 = cpu->r[30] + 0x0000002Cu;
|
|
/* 02922D2C */ cpu->r[10] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02922D30 */ _t7 = cpu->r[10] + 0x00000014u;
|
|
/* 02922D30 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02922D34 */ cpu->ctr = cpu->r[11];
|
|
/* 02922D38 */ _t8 = cpu->r[4] + 0x00000000u;
|
|
/* 02922D38 */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02922D3C */ cpu->r[3] = cpu->r[30] + 0x00000028u;
|
|
/* 02922D40 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02922D44 */ _t9 = cpu->r[30] + 0x0000002Cu;
|
|
/* 02922D44 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02922D48 */ _t10 = cpu->r[12] + 0x00000014u;
|
|
/* 02922D48 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02922D4C */ cpu->ctr = cpu->r[0];
|
|
/* 02922D50 */ cpu->r[3] = cpu->r[30] + 0x00000028u;
|
|
/* 02922D54 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02922D58 */ cpu->r[28] = 0x101F0000u;
|
|
/* 02922D5C */ cpu->r[28] = cpu->r[28] + 0x000066E8u;
|
|
/* 02922D60 */ _t11 = cpu->r[28] + 0x00000004u;
|
|
/* 02922D60 */ cpu->r[5] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02922D64 */ _t12 = cpu->r[5] + 0x00000014u;
|
|
/* 02922D64 */ cpu->r[6] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02922D68 */ cpu->ctr = cpu->r[6];
|
|
/* 02922D6C */ _t13 = cpu->r[30] + 0x00000028u;
|
|
/* 02922D6C */ cpu->r[29] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02922D70 */ cpu->r[3] = cpu->r[28];
|
|
/* 02922D74 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02922D78 */ _t14 = cpu->r[28] + 0x00000000u;
|
|
/* 02922D78 */ cpu->r[7] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02922D7C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[7]);
|
|
/* 02922D80 */ cpu->r[29] = 0x10110000u;
|
|
/* 02922D84 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02922D84 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02922D84 */ if (_t16) goto L_02922DE8; else goto L_02922D88;
|
|
L_02922D88: ; // 0x2922d88
|
|
/* 02922D88 */ _t17 = cpu->r[28] + 0x00000000u;
|
|
/* 02922D88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02922D8C */ cpu->r[11] = 0x00080000u;
|
|
/* 02922D90 */ _t18 = cpu->r[30] + 0x00000028u;
|
|
/* 02922D90 */ cpu->r[5] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02922D94 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 02922D98 */ cpu->r[12] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 02922D9C */ _t19 = cpu->r[29] + 0x00007399u;
|
|
/* 02922D9C */ cpu->r[0] = rbrew_read8(cpu->mem, _t19);
|
|
/* 02922DA0 */ cpu->ctr = cpu->r[11];
|
|
/* 02922DA4 */ cpu->r[5] = cpu->r[5] + 0xFFFFFFFFu;
|
|
L_02922DA8: ; // 0x2922da8
|
|
/* 02922DA8 */ _t20 = cpu->r[5] + 0x00000001u;
|
|
/* 02922DA8 */ cpu->r[7] = rbrew_read8(cpu->mem, _t20);
|
|
/* 02922DA8 */ cpu->r[5] = _t20;
|
|
/* 02922DAC */ _t21 = cpu->r[12] + 0x00000001u;
|
|
/* 02922DAC */ cpu->r[8] = rbrew_read8(cpu->mem, _t21);
|
|
/* 02922DAC */ cpu->r[12] = _t21;
|
|
/* 02922DB0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[8]);
|
|
/* 02922DB4 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02922DB4 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02922DB4 */ if (_t23) goto L_02922DB8; else goto L_02922DC4;
|
|
L_02922DB8: ; // 0x2922db8
|
|
/* 02922DB8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[0]);
|
|
/* 02922DBC */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02922DBC */ _t25 = _t24 & 0x00000001u;
|
|
/* 02922DBC */ if (_t25) goto L_02922DE8; else goto L_02922DC0;
|
|
L_02922DC0: ; // 0x2922dc0
|
|
/* 02922DC0 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02922DC0 */ _t26 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02922DC0 */ _t27 = _t26 >> (0x00000002u & 31u);
|
|
/* 02922DC0 */ _t28 = _t27 & 0x00000001u;
|
|
/* 02922DC0 */ if (_t28) goto L_02922DA8; else goto L_02922DC4;
|
|
L_02922DC4: ; // 0x2922dc4
|
|
/* 02922DC4 */ _t29 = cpu->r[1] + 0x00000018u;
|
|
/* 02922DC4 */ cpu->r[28] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02922DC8 */ _t30 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02922DC8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02922DCC */ _t31 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02922DCC */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02922DD0 */ _t32 = cpu->r[1] + 0x00000020u;
|
|
/* 02922DD0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02922DD4 */ cpu->lr = cpu->r[0];
|
|
/* 02922DD8 */ _t33 = cpu->r[1] + 0x00000024u;
|
|
/* 02922DD8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02922DDC */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 02922DE0 */ cpu->r[3] = 0x00000000u;
|
|
/* 02922DE4 */ return;
|
|
L_02922DE8: ; // 0x2922de8
|
|
/* 02922DE8 */ cpu->r[28] = 0x10140000u;
|
|
/* 02922DEC */ cpu->r[0] = 0x10140000u;
|
|
/* 02922DF0 */ cpu->r[28] = cpu->r[28] + 0x00002C80u;
|
|
/* 02922DF4 */ cpu->r[0] = cpu->r[0] + 0x00002ECCu;
|
|
/* 02922DF8 */ _t34 = cpu->r[1] + 0x00000014u;
|
|
/* 02922DF8 */ rbrew_write32(cpu->mem, _t34, cpu->r[28]);
|
|
/* 02922DFC */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 02922E00 */ _t35 = cpu->r[1] + 0x00000010u;
|
|
/* 02922E00 */ rbrew_write32(cpu->mem, _t35, cpu->r[0]);
|
|
/* 02922E04 */ Gambit_fn_0294F6F0(cpu);
|
|
/* 02922E08 */ _t36 = cpu->r[31] + 0x00000004u;
|
|
/* 02922E08 */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02922E0C */ cpu->r[12] = 0x00000000u;
|
|
/* 02922E10 */ cpu->r[11] = cpu->r[31] + 0x00000010u;
|
|
/* 02922E14 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[0]);
|
|
/* 02922E18 */ cpu->r[6] = cpu->r[11];
|
|
/* 02922E1C */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02922E1C */ _t38 = _t37 & 0x00000001u;
|
|
/* 02922E1C */ if (_t38) goto L_02922E50; else goto L_02922E20;
|
|
L_02922E20: ; // 0x2922e20
|
|
/* 02922E20 */ _t39 = cpu->r[6] + 0x00000008u;
|
|
/* 02922E20 */ cpu->r[10] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02922E24 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], cpu->r[10]);
|
|
/* 02922E28 */ _t40 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02922E28 */ _t41 = _t40 & 0x00000001u;
|
|
/* 02922E28 */ if (_t41) goto L_02922E2C; else goto L_02922E3C;
|
|
L_02922E2C: ; // 0x2922e2c
|
|
/* 02922E2C */ cpu->r[9] = 0x00000000u;
|
|
/* 02922E30 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[12]);
|
|
/* 02922E34 */ _t42 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02922E34 */ _t43 = _t42 & 0x00000001u;
|
|
/* 02922E34 */ if (_t43) goto L_02922E38; else goto L_02922E58;
|
|
L_02922E38: ; // 0x2922e38
|
|
/* 02922E38 */ goto L_02922E6C;
|
|
L_02922E3C: ; // 0x2922e3c
|
|
/* 02922E3C */ _t44 = cpu->r[6] + 0x00000000u;
|
|
/* 02922E3C */ cpu->r[5] = rbrew_read32(cpu->mem, _t44);
|
|
/* 02922E40 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 02922E44 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[0]);
|
|
/* 02922E48 */ cpu->r[6] = cpu->r[6] + cpu->r[5];
|
|
/* 02922E4C */ _t45 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02922E4C */ _t46 = _t45 & 0x00000001u;
|
|
/* 02922E4C */ if (_t46) goto L_02922E50; else goto L_02922E20;
|
|
L_02922E50: ; // 0x2922e50
|
|
/* 02922E50 */ cpu->r[9] = 0x00000000u;
|
|
/* 02922E54 */ cpu->r[12] = 0xFFFFFFFFu;
|
|
L_02922E58: ; // 0x2922e58
|
|
/* 02922E58 */ _t47 = cpu->r[11] + 0x00000000u;
|
|
/* 02922E58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t47);
|
|
/* 02922E5C */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 02922E60 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[12]);
|
|
/* 02922E64 */ cpu->r[11] = cpu->r[11] + cpu->r[0];
|
|
/* 02922E68 */ _t48 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02922E68 */ _t49 = _t48 & 0x00000001u;
|
|
/* 02922E68 */ if (_t49) goto L_02922E6C; else goto L_02922E58;
|
|
L_02922E6C: ; // 0x2922e6c
|
|
/* 02922E6C */ _t50 = cpu->r[30] + 0x0000007Cu;
|
|
/* 02922E6C */ cpu->r[7] = rbrew_read32(cpu->mem, _t50);
|
|
/* 02922E70 */ cpu->r[6] = cpu->r[11] + 0x0000000Cu;
|
|
/* 02922E74 */ _t51 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02922E74 */ rbrew_write32(cpu->mem, _t51, cpu->r[28]);
|
|
/* 02922E78 */ _t52 = cpu->r[1] + 0x00000008u;
|
|
/* 02922E78 */ rbrew_write32(cpu->mem, _t52, cpu->r[6]);
|
|
/* 02922E7C */ _t53 = cpu->r[7] + 0x00000014u;
|
|
/* 02922E7C */ cpu->r[8] = rbrew_read32(cpu->mem, _t53);
|
|
/* 02922E80 */ cpu->ctr = cpu->r[8];
|
|
/* 02922E84 */ cpu->r[3] = cpu->r[30] + 0x00000078u;
|
|
/* 02922E88 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02922E8C */ _t54 = cpu->r[30] + 0x0000007Cu;
|
|
/* 02922E8C */ cpu->r[9] = rbrew_read32(cpu->mem, _t54);
|
|
/* 02922E90 */ _t55 = cpu->r[9] + 0x00000014u;
|
|
/* 02922E90 */ cpu->r[10] = rbrew_read32(cpu->mem, _t55);
|
|
/* 02922E94 */ cpu->ctr = cpu->r[10];
|
|
/* 02922E98 */ cpu->r[3] = cpu->r[30] + 0x00000078u;
|
|
/* 02922E9C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02922EA0 */ _t56 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02922EA0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t56);
|
|
/* 02922EA4 */ _t57 = cpu->r[12] + 0x00000014u;
|
|
/* 02922EA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t57);
|
|
/* 02922EA8 */ cpu->ctr = cpu->r[0];
|
|
/* 02922EAC */ _t58 = cpu->r[30] + 0x00000078u;
|
|
/* 02922EAC */ cpu->r[31] = rbrew_read32(cpu->mem, _t58);
|
|
/* 02922EB0 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02922EB4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02922EB8 */ _t59 = cpu->r[1] + 0x00000008u;
|
|
/* 02922EB8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t59);
|
|
/* 02922EBC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[7]);
|
|
/* 02922EC0 */ _t60 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02922EC0 */ _t61 = _t60 & 0x00000001u;
|
|
/* 02922EC0 */ if (_t61) goto L_02922EC4; else goto L_02922EE8;
|
|
L_02922EC4: ; // 0x2922ec4
|
|
/* 02922EC4 */ _t62 = cpu->r[1] + 0x00000018u;
|
|
/* 02922EC4 */ cpu->r[28] = rbrew_read32(cpu->mem, _t62);
|
|
/* 02922EC8 */ _t63 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02922EC8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t63);
|
|
/* 02922ECC */ _t64 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02922ECC */ cpu->r[0] = rbrew_read32(cpu->mem, _t64);
|
|
/* 02922ED0 */ _t65 = cpu->r[1] + 0x00000020u;
|
|
/* 02922ED0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t65);
|
|
/* 02922ED4 */ cpu->lr = cpu->r[0];
|
|
/* 02922ED8 */ _t66 = cpu->r[1] + 0x00000024u;
|
|
/* 02922ED8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t66);
|
|
/* 02922EDC */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 02922EE0 */ cpu->r[3] = 0x00000001u;
|
|
/* 02922EE4 */ return;
|
|
L_02922EE8: ; // 0x2922ee8
|
|
/* 02922EE8 */ _t67 = cpu->r[30] + 0x00000078u;
|
|
/* 02922EE8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t67);
|
|
/* 02922EEC */ cpu->r[5] = 0x00080000u;
|
|
/* 02922EF0 */ _t68 = cpu->r[1] + 0x00000008u;
|
|
/* 02922EF0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t68);
|
|
/* 02922EF4 */ cpu->r[5] = cpu->r[5] + 0x00000001u;
|
|
/* 02922EF8 */ cpu->r[11] = cpu->r[11] + 0xFFFFFFFFu;
|
|
/* 02922EFC */ _t69 = cpu->r[29] + 0x00007399u;
|
|
/* 02922EFC */ cpu->r[8] = rbrew_read8(cpu->mem, _t69);
|
|
/* 02922F00 */ cpu->ctr = cpu->r[5];
|
|
/* 02922F04 */ cpu->r[10] = cpu->r[10] + 0xFFFFFFFFu;
|
|
L_02922F08: ; // 0x2922f08
|
|
/* 02922F08 */ _t70 = cpu->r[11] + 0x00000001u;
|
|
/* 02922F08 */ cpu->r[0] = rbrew_read8(cpu->mem, _t70);
|
|
/* 02922F08 */ cpu->r[11] = _t70;
|
|
/* 02922F0C */ _t71 = cpu->r[10] + 0x00000001u;
|
|
/* 02922F0C */ cpu->r[9] = rbrew_read8(cpu->mem, _t71);
|
|
/* 02922F0C */ cpu->r[10] = _t71;
|
|
/* 02922F10 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[9]);
|
|
/* 02922F14 */ _t72 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02922F14 */ _t73 = _t72 & 0x00000001u;
|
|
/* 02922F14 */ if (_t73) goto L_02922F18; else goto L_02922F24;
|
|
L_02922F18: ; // 0x2922f18
|
|
/* 02922F18 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[8]);
|
|
/* 02922F1C */ _t74 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02922F1C */ _t75 = _t74 & 0x00000001u;
|
|
/* 02922F1C */ if (_t75) goto L_02922EC4; else goto L_02922F20;
|
|
L_02922F20: ; // 0x2922f20
|
|
/* 02922F20 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02922F20 */ _t76 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02922F20 */ _t77 = _t76 >> (0x00000002u & 31u);
|
|
/* 02922F20 */ _t78 = _t77 & 0x00000001u;
|
|
/* 02922F20 */ if (_t78) goto L_02922F08; else goto L_02922F24;
|
|
L_02922F24: ; // 0x2922f24
|
|
/* 02922F24 */ _t79 = cpu->r[1] + 0x00000018u;
|
|
/* 02922F24 */ cpu->r[28] = rbrew_read32(cpu->mem, _t79);
|
|
/* 02922F28 */ _t80 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02922F28 */ cpu->r[29] = rbrew_read32(cpu->mem, _t80);
|
|
/* 02922F2C */ _t81 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02922F2C */ cpu->r[0] = rbrew_read32(cpu->mem, _t81);
|
|
/* 02922F30 */ _t82 = cpu->r[1] + 0x00000020u;
|
|
/* 02922F30 */ cpu->r[30] = rbrew_read32(cpu->mem, _t82);
|
|
/* 02922F34 */ cpu->lr = cpu->r[0];
|
|
/* 02922F38 */ _t83 = cpu->r[1] + 0x00000024u;
|
|
/* 02922F38 */ cpu->r[31] = rbrew_read32(cpu->mem, _t83);
|
|
/* 02922F3C */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 02922F40 */ cpu->r[3] = 0x00000000u;
|
|
/* 02922F44 */ return;
|
|
}
|
|
|
|
// fn_02922D10 @ 0x2922d10
|
|
void Gambit_fn_02922D10(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83;
|
|
|
|
L_02922D10: ; // 0x2922d10
|
|
/* 02922D10 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 02922D10 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02922D10 */ cpu->r[1] = _t0;
|
|
/* 02922D14 */ _t1 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02922D14 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 02922D18 */ _t2 = cpu->r[1] + 0x00000018u;
|
|
/* 02922D18 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 02922D1C */ _t3 = cpu->r[1] + 0x00000020u;
|
|
/* 02922D1C */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 02922D20 */ _t4 = cpu->r[1] + 0x00000024u;
|
|
/* 02922D20 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 02922D24 */ cpu->r[30] = cpu->r[3];
|
|
/* 02922D28 */ _t5 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02922D28 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02922D2C */ _t6 = cpu->r[30] + 0x0000002Cu;
|
|
/* 02922D2C */ cpu->r[10] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02922D30 */ _t7 = cpu->r[10] + 0x00000014u;
|
|
/* 02922D30 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02922D34 */ cpu->ctr = cpu->r[11];
|
|
/* 02922D38 */ _t8 = cpu->r[4] + 0x00000000u;
|
|
/* 02922D38 */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02922D3C */ cpu->r[3] = cpu->r[30] + 0x00000028u;
|
|
/* 02922D40 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02922D44 */ _t9 = cpu->r[30] + 0x0000002Cu;
|
|
/* 02922D44 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02922D48 */ _t10 = cpu->r[12] + 0x00000014u;
|
|
/* 02922D48 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02922D4C */ cpu->ctr = cpu->r[0];
|
|
/* 02922D50 */ cpu->r[3] = cpu->r[30] + 0x00000028u;
|
|
/* 02922D54 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02922D58 */ cpu->r[28] = 0x101F0000u;
|
|
/* 02922D5C */ cpu->r[28] = cpu->r[28] + 0x000066E8u;
|
|
/* 02922D60 */ _t11 = cpu->r[28] + 0x00000004u;
|
|
/* 02922D60 */ cpu->r[5] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02922D64 */ _t12 = cpu->r[5] + 0x00000014u;
|
|
/* 02922D64 */ cpu->r[6] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02922D68 */ cpu->ctr = cpu->r[6];
|
|
/* 02922D6C */ _t13 = cpu->r[30] + 0x00000028u;
|
|
/* 02922D6C */ cpu->r[29] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02922D70 */ cpu->r[3] = cpu->r[28];
|
|
/* 02922D74 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02922D78 */ _t14 = cpu->r[28] + 0x00000000u;
|
|
/* 02922D78 */ cpu->r[7] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02922D7C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[7]);
|
|
/* 02922D80 */ cpu->r[29] = 0x10110000u;
|
|
/* 02922D84 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02922D84 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02922D84 */ if (_t16) goto L_02922DE8; else goto L_02922D88;
|
|
L_02922D88: ; // 0x2922d88
|
|
/* 02922D88 */ _t17 = cpu->r[28] + 0x00000000u;
|
|
/* 02922D88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02922D8C */ cpu->r[11] = 0x00080000u;
|
|
/* 02922D90 */ _t18 = cpu->r[30] + 0x00000028u;
|
|
/* 02922D90 */ cpu->r[5] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02922D94 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 02922D98 */ cpu->r[12] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 02922D9C */ _t19 = cpu->r[29] + 0x00007399u;
|
|
/* 02922D9C */ cpu->r[0] = rbrew_read8(cpu->mem, _t19);
|
|
/* 02922DA0 */ cpu->ctr = cpu->r[11];
|
|
/* 02922DA4 */ cpu->r[5] = cpu->r[5] + 0xFFFFFFFFu;
|
|
L_02922DA8: ; // 0x2922da8
|
|
/* 02922DA8 */ _t20 = cpu->r[5] + 0x00000001u;
|
|
/* 02922DA8 */ cpu->r[7] = rbrew_read8(cpu->mem, _t20);
|
|
/* 02922DA8 */ cpu->r[5] = _t20;
|
|
/* 02922DAC */ _t21 = cpu->r[12] + 0x00000001u;
|
|
/* 02922DAC */ cpu->r[8] = rbrew_read8(cpu->mem, _t21);
|
|
/* 02922DAC */ cpu->r[12] = _t21;
|
|
/* 02922DB0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[8]);
|
|
/* 02922DB4 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02922DB4 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02922DB4 */ if (_t23) goto L_02922DB8; else goto L_02922DC4;
|
|
L_02922DB8: ; // 0x2922db8
|
|
/* 02922DB8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[0]);
|
|
/* 02922DBC */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02922DBC */ _t25 = _t24 & 0x00000001u;
|
|
/* 02922DBC */ if (_t25) goto L_02922DE8; else goto L_02922DC0;
|
|
L_02922DC0: ; // 0x2922dc0
|
|
/* 02922DC0 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02922DC0 */ _t26 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02922DC0 */ _t27 = _t26 >> (0x00000002u & 31u);
|
|
/* 02922DC0 */ _t28 = _t27 & 0x00000001u;
|
|
/* 02922DC0 */ if (_t28) goto L_02922DA8; else goto L_02922DC4;
|
|
L_02922DC4: ; // 0x2922dc4
|
|
/* 02922DC4 */ _t29 = cpu->r[1] + 0x00000018u;
|
|
/* 02922DC4 */ cpu->r[28] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02922DC8 */ _t30 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02922DC8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02922DCC */ _t31 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02922DCC */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02922DD0 */ _t32 = cpu->r[1] + 0x00000020u;
|
|
/* 02922DD0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02922DD4 */ cpu->lr = cpu->r[0];
|
|
/* 02922DD8 */ _t33 = cpu->r[1] + 0x00000024u;
|
|
/* 02922DD8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02922DDC */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 02922DE0 */ cpu->r[3] = 0x00000000u;
|
|
/* 02922DE4 */ return;
|
|
L_02922DE8: ; // 0x2922de8
|
|
/* 02922DE8 */ cpu->r[28] = 0x10140000u;
|
|
/* 02922DEC */ cpu->r[0] = 0x10140000u;
|
|
/* 02922DF0 */ cpu->r[28] = cpu->r[28] + 0x00002C80u;
|
|
/* 02922DF4 */ cpu->r[0] = cpu->r[0] + 0x00002ECCu;
|
|
/* 02922DF8 */ _t34 = cpu->r[1] + 0x00000014u;
|
|
/* 02922DF8 */ rbrew_write32(cpu->mem, _t34, cpu->r[28]);
|
|
/* 02922DFC */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 02922E00 */ _t35 = cpu->r[1] + 0x00000010u;
|
|
/* 02922E00 */ rbrew_write32(cpu->mem, _t35, cpu->r[0]);
|
|
/* 02922E04 */ Gambit_fn_0294F6F0(cpu);
|
|
/* 02922E08 */ _t36 = cpu->r[31] + 0x00000004u;
|
|
/* 02922E08 */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02922E0C */ cpu->r[12] = 0x00000000u;
|
|
/* 02922E10 */ cpu->r[11] = cpu->r[31] + 0x00000010u;
|
|
/* 02922E14 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[0]);
|
|
/* 02922E18 */ cpu->r[6] = cpu->r[11];
|
|
/* 02922E1C */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02922E1C */ _t38 = _t37 & 0x00000001u;
|
|
/* 02922E1C */ if (_t38) goto L_02922E50; else goto L_02922E20;
|
|
L_02922E20: ; // 0x2922e20
|
|
/* 02922E20 */ _t39 = cpu->r[6] + 0x00000008u;
|
|
/* 02922E20 */ cpu->r[10] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02922E24 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], cpu->r[10]);
|
|
/* 02922E28 */ _t40 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02922E28 */ _t41 = _t40 & 0x00000001u;
|
|
/* 02922E28 */ if (_t41) goto L_02922E2C; else goto L_02922E3C;
|
|
L_02922E2C: ; // 0x2922e2c
|
|
/* 02922E2C */ cpu->r[9] = 0x00000000u;
|
|
/* 02922E30 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[12]);
|
|
/* 02922E34 */ _t42 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02922E34 */ _t43 = _t42 & 0x00000001u;
|
|
/* 02922E34 */ if (_t43) goto L_02922E38; else goto L_02922E58;
|
|
L_02922E38: ; // 0x2922e38
|
|
/* 02922E38 */ goto L_02922E6C;
|
|
L_02922E3C: ; // 0x2922e3c
|
|
/* 02922E3C */ _t44 = cpu->r[6] + 0x00000000u;
|
|
/* 02922E3C */ cpu->r[5] = rbrew_read32(cpu->mem, _t44);
|
|
/* 02922E40 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 02922E44 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[0]);
|
|
/* 02922E48 */ cpu->r[6] = cpu->r[6] + cpu->r[5];
|
|
/* 02922E4C */ _t45 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02922E4C */ _t46 = _t45 & 0x00000001u;
|
|
/* 02922E4C */ if (_t46) goto L_02922E50; else goto L_02922E20;
|
|
L_02922E50: ; // 0x2922e50
|
|
/* 02922E50 */ cpu->r[9] = 0x00000000u;
|
|
/* 02922E54 */ cpu->r[12] = 0xFFFFFFFFu;
|
|
L_02922E58: ; // 0x2922e58
|
|
/* 02922E58 */ _t47 = cpu->r[11] + 0x00000000u;
|
|
/* 02922E58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t47);
|
|
/* 02922E5C */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 02922E60 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[12]);
|
|
/* 02922E64 */ cpu->r[11] = cpu->r[11] + cpu->r[0];
|
|
/* 02922E68 */ _t48 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02922E68 */ _t49 = _t48 & 0x00000001u;
|
|
/* 02922E68 */ if (_t49) goto L_02922E6C; else goto L_02922E58;
|
|
L_02922E6C: ; // 0x2922e6c
|
|
/* 02922E6C */ _t50 = cpu->r[30] + 0x0000007Cu;
|
|
/* 02922E6C */ cpu->r[7] = rbrew_read32(cpu->mem, _t50);
|
|
/* 02922E70 */ cpu->r[6] = cpu->r[11] + 0x0000000Cu;
|
|
/* 02922E74 */ _t51 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02922E74 */ rbrew_write32(cpu->mem, _t51, cpu->r[28]);
|
|
/* 02922E78 */ _t52 = cpu->r[1] + 0x00000008u;
|
|
/* 02922E78 */ rbrew_write32(cpu->mem, _t52, cpu->r[6]);
|
|
/* 02922E7C */ _t53 = cpu->r[7] + 0x00000014u;
|
|
/* 02922E7C */ cpu->r[8] = rbrew_read32(cpu->mem, _t53);
|
|
/* 02922E80 */ cpu->ctr = cpu->r[8];
|
|
/* 02922E84 */ cpu->r[3] = cpu->r[30] + 0x00000078u;
|
|
/* 02922E88 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02922E8C */ _t54 = cpu->r[30] + 0x0000007Cu;
|
|
/* 02922E8C */ cpu->r[9] = rbrew_read32(cpu->mem, _t54);
|
|
/* 02922E90 */ _t55 = cpu->r[9] + 0x00000014u;
|
|
/* 02922E90 */ cpu->r[10] = rbrew_read32(cpu->mem, _t55);
|
|
/* 02922E94 */ cpu->ctr = cpu->r[10];
|
|
/* 02922E98 */ cpu->r[3] = cpu->r[30] + 0x00000078u;
|
|
/* 02922E9C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02922EA0 */ _t56 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02922EA0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t56);
|
|
/* 02922EA4 */ _t57 = cpu->r[12] + 0x00000014u;
|
|
/* 02922EA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t57);
|
|
/* 02922EA8 */ cpu->ctr = cpu->r[0];
|
|
/* 02922EAC */ _t58 = cpu->r[30] + 0x00000078u;
|
|
/* 02922EAC */ cpu->r[31] = rbrew_read32(cpu->mem, _t58);
|
|
/* 02922EB0 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02922EB4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02922EB8 */ _t59 = cpu->r[1] + 0x00000008u;
|
|
/* 02922EB8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t59);
|
|
/* 02922EBC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[7]);
|
|
/* 02922EC0 */ _t60 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02922EC0 */ _t61 = _t60 & 0x00000001u;
|
|
/* 02922EC0 */ if (_t61) goto L_02922EC4; else goto L_02922EE8;
|
|
L_02922EC4: ; // 0x2922ec4
|
|
/* 02922EC4 */ _t62 = cpu->r[1] + 0x00000018u;
|
|
/* 02922EC4 */ cpu->r[28] = rbrew_read32(cpu->mem, _t62);
|
|
/* 02922EC8 */ _t63 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02922EC8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t63);
|
|
/* 02922ECC */ _t64 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02922ECC */ cpu->r[0] = rbrew_read32(cpu->mem, _t64);
|
|
/* 02922ED0 */ _t65 = cpu->r[1] + 0x00000020u;
|
|
/* 02922ED0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t65);
|
|
/* 02922ED4 */ cpu->lr = cpu->r[0];
|
|
/* 02922ED8 */ _t66 = cpu->r[1] + 0x00000024u;
|
|
/* 02922ED8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t66);
|
|
/* 02922EDC */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 02922EE0 */ cpu->r[3] = 0x00000001u;
|
|
/* 02922EE4 */ return;
|
|
L_02922EE8: ; // 0x2922ee8
|
|
/* 02922EE8 */ _t67 = cpu->r[30] + 0x00000078u;
|
|
/* 02922EE8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t67);
|
|
/* 02922EEC */ cpu->r[5] = 0x00080000u;
|
|
/* 02922EF0 */ _t68 = cpu->r[1] + 0x00000008u;
|
|
/* 02922EF0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t68);
|
|
/* 02922EF4 */ cpu->r[5] = cpu->r[5] + 0x00000001u;
|
|
/* 02922EF8 */ cpu->r[11] = cpu->r[11] + 0xFFFFFFFFu;
|
|
/* 02922EFC */ _t69 = cpu->r[29] + 0x00007399u;
|
|
/* 02922EFC */ cpu->r[8] = rbrew_read8(cpu->mem, _t69);
|
|
/* 02922F00 */ cpu->ctr = cpu->r[5];
|
|
/* 02922F04 */ cpu->r[10] = cpu->r[10] + 0xFFFFFFFFu;
|
|
L_02922F08: ; // 0x2922f08
|
|
/* 02922F08 */ _t70 = cpu->r[11] + 0x00000001u;
|
|
/* 02922F08 */ cpu->r[0] = rbrew_read8(cpu->mem, _t70);
|
|
/* 02922F08 */ cpu->r[11] = _t70;
|
|
/* 02922F0C */ _t71 = cpu->r[10] + 0x00000001u;
|
|
/* 02922F0C */ cpu->r[9] = rbrew_read8(cpu->mem, _t71);
|
|
/* 02922F0C */ cpu->r[10] = _t71;
|
|
/* 02922F10 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[9]);
|
|
/* 02922F14 */ _t72 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02922F14 */ _t73 = _t72 & 0x00000001u;
|
|
/* 02922F14 */ if (_t73) goto L_02922F18; else goto L_02922F24;
|
|
L_02922F18: ; // 0x2922f18
|
|
/* 02922F18 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[8]);
|
|
/* 02922F1C */ _t74 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02922F1C */ _t75 = _t74 & 0x00000001u;
|
|
/* 02922F1C */ if (_t75) goto L_02922EC4; else goto L_02922F20;
|
|
L_02922F20: ; // 0x2922f20
|
|
/* 02922F20 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02922F20 */ _t76 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02922F20 */ _t77 = _t76 >> (0x00000002u & 31u);
|
|
/* 02922F20 */ _t78 = _t77 & 0x00000001u;
|
|
/* 02922F20 */ if (_t78) goto L_02922F08; else goto L_02922F24;
|
|
L_02922F24: ; // 0x2922f24
|
|
/* 02922F24 */ _t79 = cpu->r[1] + 0x00000018u;
|
|
/* 02922F24 */ cpu->r[28] = rbrew_read32(cpu->mem, _t79);
|
|
/* 02922F28 */ _t80 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02922F28 */ cpu->r[29] = rbrew_read32(cpu->mem, _t80);
|
|
/* 02922F2C */ _t81 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02922F2C */ cpu->r[0] = rbrew_read32(cpu->mem, _t81);
|
|
/* 02922F30 */ _t82 = cpu->r[1] + 0x00000020u;
|
|
/* 02922F30 */ cpu->r[30] = rbrew_read32(cpu->mem, _t82);
|
|
/* 02922F34 */ cpu->lr = cpu->r[0];
|
|
/* 02922F38 */ _t83 = cpu->r[1] + 0x00000024u;
|
|
/* 02922F38 */ cpu->r[31] = rbrew_read32(cpu->mem, _t83);
|
|
/* 02922F3C */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 02922F40 */ cpu->r[3] = 0x00000000u;
|
|
/* 02922F44 */ return;
|
|
}
|
|
|
|
// fn_02922F48 @ 0x2922f48
|
|
void Gambit_fn_02922F48(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_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t0;
|
|
/* 02801B38 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02801B48 */ _t3 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02801B50 */ if (_t5) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02801B60 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 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 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B74 */ if (_t9) 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 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02801B84 */ if (_t11) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t12 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02801B8C */ _t13 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02801BA0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
L_02922F48: ; // 0x2922f48
|
|
/* 02922F48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02922F4C */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02922F4C */ _t17 = _t16 & 0x00000001u;
|
|
/* 02922F4C */ if (_t17) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02922F4C */ goto L_02922F50;
|
|
L_02922F50: ; // 0x2922f50
|
|
/* 02922F50 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02922F50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02922F54 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02922F54 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02922F54 */ if (_t19) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02922F54 */ goto L_02922F58;
|
|
L_02922F58: ; // 0x2922f58
|
|
/* 02922F58 */ goto L_02801BB0;
|
|
}
|
|
|
|
// fn_02922F5C @ 0x2922f5c
|
|
void Gambit_fn_02922F5C(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_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t0;
|
|
/* 02801B38 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02801B48 */ _t3 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02801B50 */ if (_t5) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02801B60 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 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 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B74 */ if (_t9) 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 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02801B84 */ if (_t11) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t12 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02801B8C */ _t13 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02801BA0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
L_02922F5C: ; // 0x2922f5c
|
|
/* 02922F5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02922F60 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02922F60 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02922F60 */ if (_t17) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02922F60 */ goto L_02922F64;
|
|
L_02922F64: ; // 0x2922f64
|
|
/* 02922F64 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02922F64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02922F68 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02922F68 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02922F68 */ if (_t19) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02922F68 */ goto L_02922F6C;
|
|
L_02922F6C: ; // 0x2922f6c
|
|
/* 02922F6C */ goto L_02801BB0;
|
|
}
|
|
|
|
// fn_02922F70 @ 0x2922f70
|
|
void Gambit_fn_02922F70(CPUState* cpu) {
|
|
L_02922F70: ; // 0x2922f70
|
|
/* 02922F70 */ return;
|
|
}
|
|
|
|
// fn_02922F74 @ 0x2922f74
|
|
void Gambit_fn_02922F74(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_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t0;
|
|
/* 02801B38 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02801B48 */ _t3 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02801B50 */ if (_t5) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02801B60 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 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 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B74 */ if (_t9) 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 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02801B84 */ if (_t11) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t12 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02801B8C */ _t13 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02801BA0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
L_02922F74: ; // 0x2922f74
|
|
/* 02922F74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02922F78 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02922F78 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02922F78 */ if (_t17) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02922F78 */ goto L_02922F7C;
|
|
L_02922F7C: ; // 0x2922f7c
|
|
/* 02922F7C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02922F7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02922F80 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02922F80 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02922F80 */ if (_t19) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02922F80 */ goto L_02922F84;
|
|
L_02922F84: ; // 0x2922f84
|
|
/* 02922F84 */ goto L_02801BB0;
|
|
}
|
|
|
|
// fn_02922F88 @ 0x2922f88
|
|
void Gambit_fn_02922F88(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_02922F88: ; // 0x2922f88
|
|
/* 02922F88 */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 02922F88 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02922F8C */ _t1 = cpu->r[3] + 0x00000008u;
|
|
/* 02922F8C */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02922F90 */ cpu->r[12] = cpu->r[11] + cpu->r[12];
|
|
/* 02922F94 */ cpu->r[11] = 0x10110000u;
|
|
/* 02922F98 */ _t2 = cpu->r[11] + 0x00007399u;
|
|
/* 02922F98 */ cpu->r[0] = rbrew_read8(cpu->mem, _t2);
|
|
/* 02922F9C */ _t3 = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 02922F9C */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]);
|
|
/* 02922FA0 */ return;
|
|
}
|
|
|
|
// fn_02922FA4 @ 0x2922fa4
|
|
void Gambit_fn_02922FA4(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_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t0;
|
|
/* 02801B38 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02801B48 */ _t3 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02801B50 */ if (_t5) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02801B60 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 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 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B74 */ if (_t9) 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 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02801B84 */ if (_t11) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t12 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02801B8C */ _t13 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02801BA0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
L_02922FA4: ; // 0x2922fa4
|
|
/* 02922FA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02922FA8 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02922FA8 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02922FA8 */ if (_t17) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02922FA8 */ goto L_02922FAC;
|
|
L_02922FAC: ; // 0x2922fac
|
|
/* 02922FAC */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02922FAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02922FB0 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02922FB0 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02922FB0 */ if (_t19) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02922FB0 */ goto L_02922FB4;
|
|
L_02922FB4: ; // 0x2922fb4
|
|
/* 02922FB4 */ goto L_02801BB0;
|
|
}
|
|
|
|
// fn_02922FB8 @ 0x2922fb8
|
|
void Gambit_fn_02922FB8(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_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t0;
|
|
/* 02801B38 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02801B48 */ _t3 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02801B50 */ if (_t5) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02801B60 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 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 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B74 */ if (_t9) 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 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02801B84 */ if (_t11) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t12 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02801B8C */ _t13 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02801BA0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
L_02922FB8: ; // 0x2922fb8
|
|
/* 02922FB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02922FBC */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02922FBC */ _t17 = _t16 & 0x00000001u;
|
|
/* 02922FBC */ if (_t17) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02922FBC */ goto L_02922FC0;
|
|
L_02922FC0: ; // 0x2922fc0
|
|
/* 02922FC0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02922FC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02922FC4 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02922FC4 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02922FC4 */ if (_t19) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02922FC4 */ goto L_02922FC8;
|
|
L_02922FC8: ; // 0x2922fc8
|
|
/* 02922FC8 */ goto L_02801BB0;
|
|
}
|
|
|
|
// fn_02922FCC @ 0x2922fcc
|
|
void Gambit_fn_02922FCC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _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_02922FCC: ; // 0x2922fcc
|
|
/* 02922FCC */ cpu->r[0] = cpu->lr;
|
|
/* 02922FD0 */ _t0 = cpu->r[1] + 0xFFFFFF78u;
|
|
/* 02922FD0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02922FD0 */ cpu->r[1] = _t0;
|
|
/* 02922FD4 */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 02922FD4 */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 02922FD8 */ _t2 = cpu->r[1] + 0x00000084u;
|
|
/* 02922FD8 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02922FDC */ _t3 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02922FDC */ rbrew_write32(cpu->mem, _t3, cpu->r[8]);
|
|
/* 02922FE0 */ _t4 = cpu->r[1] + 0x00000020u;
|
|
/* 02922FE0 */ rbrew_write32(cpu->mem, _t4, cpu->r[5]);
|
|
/* 02922FE4 */ _t5 = cpu->r[1] + 0x00000018u;
|
|
/* 02922FE4 */ rbrew_write32(cpu->mem, _t5, cpu->r[3]);
|
|
/* 02922FE8 */ _t6 = cpu->r[1] + 0x0000008Cu;
|
|
/* 02922FE8 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02922FEC */ _t7 = cpu->r[1] + 0x00000078u;
|
|
/* 02922FEC */ rbrew_write32(cpu->mem, _t7, cpu->r[28]);
|
|
/* 02922FF0 */ _t8 = cpu->r[1] + 0x00000080u;
|
|
/* 02922FF0 */ rbrew_write32(cpu->mem, _t8, cpu->r[30]);
|
|
/* 02922FF4 */ _t9 = cpu->r[1] + 0x00000024u;
|
|
/* 02922FF4 */ rbrew_write32(cpu->mem, _t9, cpu->r[6]);
|
|
/* 02922FF8 */ _t10 = cpu->r[1] + 0x00000030u;
|
|
/* 02922FF8 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 02922FFC */ _t11 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02922FFC */ rbrew_write32(cpu->mem, _t11, cpu->r[29]);
|
|
/* 02923000 */ _t12 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02923000 */ rbrew_write32(cpu->mem, _t12, cpu->r[4]);
|
|
/* 02923004 */ _t13 = cpu->r[1] + 0x00000028u;
|
|
/* 02923004 */ rbrew_write32(cpu->mem, _t13, cpu->r[7]);
|
|
/* 02923008 */ _t14 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 02923008 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02923008 */ if (_t15) goto L_0292300C; else goto L_0292302C;
|
|
L_0292300C: ; // 0x292300c
|
|
/* 0292300C */ _t16 = cpu->r[1] + 0x00000048u;
|
|
/* 0292300C */ rbrew_write_f64(cpu->mem, _t16, cpu->f[3]);
|
|
/* 02923010 */ _t17 = cpu->r[1] + 0x00000068u;
|
|
/* 02923010 */ rbrew_write_f64(cpu->mem, _t17, cpu->f[7]);
|
|
/* 02923014 */ _t18 = cpu->r[1] + 0x00000060u;
|
|
/* 02923014 */ rbrew_write_f64(cpu->mem, _t18, cpu->f[6]);
|
|
/* 02923018 */ _t19 = cpu->r[1] + 0x00000040u;
|
|
/* 02923018 */ rbrew_write_f64(cpu->mem, _t19, cpu->f[2]);
|
|
/* 0292301C */ _t20 = cpu->r[1] + 0x00000050u;
|
|
/* 0292301C */ rbrew_write_f64(cpu->mem, _t20, cpu->f[4]);
|
|
/* 02923020 */ _t21 = cpu->r[1] + 0x00000070u;
|
|
/* 02923020 */ rbrew_write_f64(cpu->mem, _t21, cpu->f[8]);
|
|
/* 02923024 */ _t22 = cpu->r[1] + 0x00000058u;
|
|
/* 02923024 */ rbrew_write_f64(cpu->mem, _t22, cpu->f[5]);
|
|
/* 02923028 */ _t23 = cpu->r[1] + 0x00000038u;
|
|
/* 02923028 */ rbrew_write_f64(cpu->mem, _t23, cpu->f[1]);
|
|
L_0292302C: ; // 0x292302c
|
|
/* 0292302C */ cpu->r[31] = cpu->r[3];
|
|
/* 0292302C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02923030 */ cpu->r[30] = cpu->r[4];
|
|
/* 02923034 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02923034 */ _t25 = _t24 & 0x00000001u;
|
|
/* 02923034 */ if (_t25) goto L_02923038; else goto L_02923048;
|
|
L_02923038: ; // 0x2923038
|
|
/* 02923038 */ cpu->r[3] = 0x0000040Cu;
|
|
/* 0292303C */ Gambit_fn_02801A78(cpu);
|
|
/* 02923040 */ cpu->r[31] = cpu->r[3];
|
|
/* 02923040 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02923044 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02923044 */ _t27 = _t26 & 0x00000001u;
|
|
/* 02923044 */ if (_t27) goto L_0292310C; else goto L_02923048;
|
|
L_02923048: ; // 0x2923048
|
|
/* 02923048 */ cpu->r[29] = cpu->r[31];
|
|
/* 02923048 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0292304C */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292304C */ _t29 = _t28 & 0x00000001u;
|
|
/* 0292304C */ if (_t29) goto L_02923050; else goto L_02923060;
|
|
L_02923050: ; // 0x2923050
|
|
/* 02923050 */ cpu->r[3] = 0x0000040Cu;
|
|
/* 02923054 */ Gambit_fn_02801A78(cpu);
|
|
/* 02923058 */ cpu->r[29] = cpu->r[3];
|
|
/* 02923058 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0292305C */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292305C */ _t31 = _t30 & 0x00000001u;
|
|
/* 0292305C */ if (_t31) goto L_029230D0; else goto L_02923060;
|
|
L_02923060: ; // 0x2923060
|
|
/* 02923060 */ cpu->r[3] = cpu->r[29];
|
|
/* 02923060 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02923064 */ cpu->r[28] = 0x10110000u;
|
|
/* 02923068 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02923068 */ _t33 = _t32 & 0x00000001u;
|
|
/* 02923068 */ if (_t33) goto L_0292306C; else goto L_02923098;
|
|
L_0292306C: ; // 0x292306c
|
|
/* 0292306C */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02923070 */ Gambit_fn_02801A78(cpu);
|
|
/* 02923074 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02923078 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02923078 */ _t35 = _t34 & 0x00000001u;
|
|
/* 02923078 */ if (_t35) goto L_0292307C; else goto L_02923098;
|
|
L_0292307C: ; // 0x292307c
|
|
/* 0292307C */ cpu->r[7] = 0x10140000u;
|
|
/* 02923080 */ _t36 = cpu->r[28] + 0x00007399u;
|
|
/* 02923080 */ cpu->r[0] = rbrew_read8(cpu->mem, _t36);
|
|
/* 02923084 */ cpu->r[7] = cpu->r[7] + 0x00002D08u;
|
|
/* 02923088 */ _t37 = cpu->r[29] + 0x00000000u;
|
|
/* 02923088 */ cpu->r[8] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0292308C */ _t38 = cpu->r[29] + 0x00000004u;
|
|
/* 0292308C */ rbrew_write32(cpu->mem, _t38, cpu->r[7]);
|
|
/* 02923090 */ _t39 = cpu->r[8] + 0x00000000u;
|
|
/* 02923090 */ rbrew_write8(cpu->mem, _t39, (uint8_t)cpu->r[0]);
|
|
/* 02923094 */ goto L_029230D0;
|
|
L_02923098: ; // 0x2923098
|
|
/* 02923098 */ cpu->r[5] = 0x10140000u;
|
|
/* 0292309C */ cpu->r[0] = cpu->r[29] + 0x0000000Cu;
|
|
/* 029230A0 */ cpu->r[5] = cpu->r[5] + 0x00002CA8u;
|
|
/* 029230A4 */ _t40 = cpu->r[3] + 0x00000000u;
|
|
/* 029230A4 */ rbrew_write32(cpu->mem, _t40, cpu->r[0]);
|
|
/* 029230A8 */ cpu->r[6] = 0x00000400u;
|
|
/* 029230AC */ _t41 = cpu->r[3] + 0x00000004u;
|
|
/* 029230AC */ rbrew_write32(cpu->mem, _t41, cpu->r[5]);
|
|
/* 029230B0 */ _t42 = cpu->r[3] + 0x00000008u;
|
|
/* 029230B0 */ rbrew_write32(cpu->mem, _t42, cpu->r[6]);
|
|
/* 029230B4 */ _t43 = cpu->r[28] + 0x00007399u;
|
|
/* 029230B4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t43);
|
|
/* 029230B8 */ cpu->r[7] = 0x10140000u;
|
|
/* 029230BC */ _t44 = cpu->r[29] + 0x00000000u;
|
|
/* 029230BC */ cpu->r[8] = rbrew_read32(cpu->mem, _t44);
|
|
/* 029230C0 */ cpu->r[7] = cpu->r[7] + 0x00002D08u;
|
|
/* 029230C4 */ _t45 = cpu->r[29] + 0x0000040Bu;
|
|
/* 029230C4 */ rbrew_write8(cpu->mem, _t45, (uint8_t)cpu->r[0]);
|
|
/* 029230C8 */ _t46 = cpu->r[29] + 0x00000004u;
|
|
/* 029230C8 */ rbrew_write32(cpu->mem, _t46, cpu->r[7]);
|
|
/* 029230CC */ _t47 = cpu->r[8] + 0x00000000u;
|
|
/* 029230CC */ rbrew_write8(cpu->mem, _t47, (uint8_t)cpu->r[0]);
|
|
L_029230D0: ; // 0x29230d0
|
|
/* 029230D0 */ cpu->r[9] = 0x10140000u;
|
|
/* 029230D4 */ cpu->r[12] = 0x00000002u;
|
|
/* 029230D8 */ cpu->r[9] = cpu->r[9] + 0x00002D38u;
|
|
/* 029230DC */ cpu->r[0] = cpu->r[1] + 0x00000090u;
|
|
/* 029230E0 */ _t48 = cpu->r[31] + 0x00000004u;
|
|
/* 029230E0 */ rbrew_write32(cpu->mem, _t48, cpu->r[9]);
|
|
/* 029230E4 */ cpu->r[11] = cpu->r[1] + 0x00000018u;
|
|
/* 029230E8 */ _t49 = cpu->r[1] + 0x0000000Cu;
|
|
/* 029230E8 */ rbrew_write32(cpu->mem, _t49, cpu->r[0]);
|
|
/* 029230EC */ cpu->r[0] = 0x00000000u;
|
|
/* 029230F0 */ _t50 = cpu->r[1] + 0x00000010u;
|
|
/* 029230F0 */ rbrew_write32(cpu->mem, _t50, cpu->r[11]);
|
|
/* 029230F4 */ cpu->r[3] = cpu->r[31];
|
|
/* 029230F8 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 029230FC */ _t51 = cpu->r[1] + 0x00000009u;
|
|
/* 029230FC */ rbrew_write8(cpu->mem, _t51, (uint8_t)cpu->r[0]);
|
|
/* 02923100 */ cpu->r[4] = cpu->r[30];
|
|
/* 02923104 */ _t52 = cpu->r[1] + 0x00000008u;
|
|
/* 02923104 */ rbrew_write8(cpu->mem, _t52, (uint8_t)cpu->r[12]);
|
|
/* 02923108 */ Gambit_fn_0282A5DC(cpu);
|
|
L_0292310C: ; // 0x292310c
|
|
/* 0292310C */ _t53 = cpu->r[1] + 0x00000078u;
|
|
/* 0292310C */ cpu->r[28] = rbrew_read32(cpu->mem, _t53);
|
|
/* 02923110 */ _t54 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02923110 */ cpu->r[29] = rbrew_read32(cpu->mem, _t54);
|
|
/* 02923114 */ _t55 = cpu->r[1] + 0x0000008Cu;
|
|
/* 02923114 */ cpu->r[0] = rbrew_read32(cpu->mem, _t55);
|
|
/* 02923118 */ cpu->r[3] = cpu->r[31];
|
|
/* 0292311C */ _t56 = cpu->r[1] + 0x00000080u;
|
|
/* 0292311C */ cpu->r[30] = rbrew_read32(cpu->mem, _t56);
|
|
/* 02923120 */ cpu->lr = cpu->r[0];
|
|
/* 02923124 */ _t57 = cpu->r[1] + 0x00000084u;
|
|
/* 02923124 */ cpu->r[31] = rbrew_read32(cpu->mem, _t57);
|
|
/* 02923128 */ cpu->r[1] = cpu->r[1] + 0x00000088u;
|
|
/* 0292312C */ return;
|
|
}
|
|
|
|
// fn_02922FD0 @ 0x2922fd0
|
|
void Gambit_fn_02922FD0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _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_02922FD0: ; // 0x2922fd0
|
|
/* 02922FD0 */ _t0 = cpu->r[1] + 0xFFFFFF78u;
|
|
/* 02922FD0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02922FD0 */ cpu->r[1] = _t0;
|
|
/* 02922FD4 */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 02922FD4 */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 02922FD8 */ _t2 = cpu->r[1] + 0x00000084u;
|
|
/* 02922FD8 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02922FDC */ _t3 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02922FDC */ rbrew_write32(cpu->mem, _t3, cpu->r[8]);
|
|
/* 02922FE0 */ _t4 = cpu->r[1] + 0x00000020u;
|
|
/* 02922FE0 */ rbrew_write32(cpu->mem, _t4, cpu->r[5]);
|
|
/* 02922FE4 */ _t5 = cpu->r[1] + 0x00000018u;
|
|
/* 02922FE4 */ rbrew_write32(cpu->mem, _t5, cpu->r[3]);
|
|
/* 02922FE8 */ _t6 = cpu->r[1] + 0x0000008Cu;
|
|
/* 02922FE8 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02922FEC */ _t7 = cpu->r[1] + 0x00000078u;
|
|
/* 02922FEC */ rbrew_write32(cpu->mem, _t7, cpu->r[28]);
|
|
/* 02922FF0 */ _t8 = cpu->r[1] + 0x00000080u;
|
|
/* 02922FF0 */ rbrew_write32(cpu->mem, _t8, cpu->r[30]);
|
|
/* 02922FF4 */ _t9 = cpu->r[1] + 0x00000024u;
|
|
/* 02922FF4 */ rbrew_write32(cpu->mem, _t9, cpu->r[6]);
|
|
/* 02922FF8 */ _t10 = cpu->r[1] + 0x00000030u;
|
|
/* 02922FF8 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 02922FFC */ _t11 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02922FFC */ rbrew_write32(cpu->mem, _t11, cpu->r[29]);
|
|
/* 02923000 */ _t12 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02923000 */ rbrew_write32(cpu->mem, _t12, cpu->r[4]);
|
|
/* 02923004 */ _t13 = cpu->r[1] + 0x00000028u;
|
|
/* 02923004 */ rbrew_write32(cpu->mem, _t13, cpu->r[7]);
|
|
/* 02923008 */ _t14 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 02923008 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02923008 */ if (_t15) goto L_0292300C; else goto L_0292302C;
|
|
L_0292300C: ; // 0x292300c
|
|
/* 0292300C */ _t16 = cpu->r[1] + 0x00000048u;
|
|
/* 0292300C */ rbrew_write_f64(cpu->mem, _t16, cpu->f[3]);
|
|
/* 02923010 */ _t17 = cpu->r[1] + 0x00000068u;
|
|
/* 02923010 */ rbrew_write_f64(cpu->mem, _t17, cpu->f[7]);
|
|
/* 02923014 */ _t18 = cpu->r[1] + 0x00000060u;
|
|
/* 02923014 */ rbrew_write_f64(cpu->mem, _t18, cpu->f[6]);
|
|
/* 02923018 */ _t19 = cpu->r[1] + 0x00000040u;
|
|
/* 02923018 */ rbrew_write_f64(cpu->mem, _t19, cpu->f[2]);
|
|
/* 0292301C */ _t20 = cpu->r[1] + 0x00000050u;
|
|
/* 0292301C */ rbrew_write_f64(cpu->mem, _t20, cpu->f[4]);
|
|
/* 02923020 */ _t21 = cpu->r[1] + 0x00000070u;
|
|
/* 02923020 */ rbrew_write_f64(cpu->mem, _t21, cpu->f[8]);
|
|
/* 02923024 */ _t22 = cpu->r[1] + 0x00000058u;
|
|
/* 02923024 */ rbrew_write_f64(cpu->mem, _t22, cpu->f[5]);
|
|
/* 02923028 */ _t23 = cpu->r[1] + 0x00000038u;
|
|
/* 02923028 */ rbrew_write_f64(cpu->mem, _t23, cpu->f[1]);
|
|
L_0292302C: ; // 0x292302c
|
|
/* 0292302C */ cpu->r[31] = cpu->r[3];
|
|
/* 0292302C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02923030 */ cpu->r[30] = cpu->r[4];
|
|
/* 02923034 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02923034 */ _t25 = _t24 & 0x00000001u;
|
|
/* 02923034 */ if (_t25) goto L_02923038; else goto L_02923048;
|
|
L_02923038: ; // 0x2923038
|
|
/* 02923038 */ cpu->r[3] = 0x0000040Cu;
|
|
/* 0292303C */ Gambit_fn_02801A78(cpu);
|
|
/* 02923040 */ cpu->r[31] = cpu->r[3];
|
|
/* 02923040 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02923044 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02923044 */ _t27 = _t26 & 0x00000001u;
|
|
/* 02923044 */ if (_t27) goto L_0292310C; else goto L_02923048;
|
|
L_02923048: ; // 0x2923048
|
|
/* 02923048 */ cpu->r[29] = cpu->r[31];
|
|
/* 02923048 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0292304C */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292304C */ _t29 = _t28 & 0x00000001u;
|
|
/* 0292304C */ if (_t29) goto L_02923050; else goto L_02923060;
|
|
L_02923050: ; // 0x2923050
|
|
/* 02923050 */ cpu->r[3] = 0x0000040Cu;
|
|
/* 02923054 */ Gambit_fn_02801A78(cpu);
|
|
/* 02923058 */ cpu->r[29] = cpu->r[3];
|
|
/* 02923058 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0292305C */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292305C */ _t31 = _t30 & 0x00000001u;
|
|
/* 0292305C */ if (_t31) goto L_029230D0; else goto L_02923060;
|
|
L_02923060: ; // 0x2923060
|
|
/* 02923060 */ cpu->r[3] = cpu->r[29];
|
|
/* 02923060 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02923064 */ cpu->r[28] = 0x10110000u;
|
|
/* 02923068 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02923068 */ _t33 = _t32 & 0x00000001u;
|
|
/* 02923068 */ if (_t33) goto L_0292306C; else goto L_02923098;
|
|
L_0292306C: ; // 0x292306c
|
|
/* 0292306C */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02923070 */ Gambit_fn_02801A78(cpu);
|
|
/* 02923074 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02923078 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02923078 */ _t35 = _t34 & 0x00000001u;
|
|
/* 02923078 */ if (_t35) goto L_0292307C; else goto L_02923098;
|
|
L_0292307C: ; // 0x292307c
|
|
/* 0292307C */ cpu->r[7] = 0x10140000u;
|
|
/* 02923080 */ _t36 = cpu->r[28] + 0x00007399u;
|
|
/* 02923080 */ cpu->r[0] = rbrew_read8(cpu->mem, _t36);
|
|
/* 02923084 */ cpu->r[7] = cpu->r[7] + 0x00002D08u;
|
|
/* 02923088 */ _t37 = cpu->r[29] + 0x00000000u;
|
|
/* 02923088 */ cpu->r[8] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0292308C */ _t38 = cpu->r[29] + 0x00000004u;
|
|
/* 0292308C */ rbrew_write32(cpu->mem, _t38, cpu->r[7]);
|
|
/* 02923090 */ _t39 = cpu->r[8] + 0x00000000u;
|
|
/* 02923090 */ rbrew_write8(cpu->mem, _t39, (uint8_t)cpu->r[0]);
|
|
/* 02923094 */ goto L_029230D0;
|
|
L_02923098: ; // 0x2923098
|
|
/* 02923098 */ cpu->r[5] = 0x10140000u;
|
|
/* 0292309C */ cpu->r[0] = cpu->r[29] + 0x0000000Cu;
|
|
/* 029230A0 */ cpu->r[5] = cpu->r[5] + 0x00002CA8u;
|
|
/* 029230A4 */ _t40 = cpu->r[3] + 0x00000000u;
|
|
/* 029230A4 */ rbrew_write32(cpu->mem, _t40, cpu->r[0]);
|
|
/* 029230A8 */ cpu->r[6] = 0x00000400u;
|
|
/* 029230AC */ _t41 = cpu->r[3] + 0x00000004u;
|
|
/* 029230AC */ rbrew_write32(cpu->mem, _t41, cpu->r[5]);
|
|
/* 029230B0 */ _t42 = cpu->r[3] + 0x00000008u;
|
|
/* 029230B0 */ rbrew_write32(cpu->mem, _t42, cpu->r[6]);
|
|
/* 029230B4 */ _t43 = cpu->r[28] + 0x00007399u;
|
|
/* 029230B4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t43);
|
|
/* 029230B8 */ cpu->r[7] = 0x10140000u;
|
|
/* 029230BC */ _t44 = cpu->r[29] + 0x00000000u;
|
|
/* 029230BC */ cpu->r[8] = rbrew_read32(cpu->mem, _t44);
|
|
/* 029230C0 */ cpu->r[7] = cpu->r[7] + 0x00002D08u;
|
|
/* 029230C4 */ _t45 = cpu->r[29] + 0x0000040Bu;
|
|
/* 029230C4 */ rbrew_write8(cpu->mem, _t45, (uint8_t)cpu->r[0]);
|
|
/* 029230C8 */ _t46 = cpu->r[29] + 0x00000004u;
|
|
/* 029230C8 */ rbrew_write32(cpu->mem, _t46, cpu->r[7]);
|
|
/* 029230CC */ _t47 = cpu->r[8] + 0x00000000u;
|
|
/* 029230CC */ rbrew_write8(cpu->mem, _t47, (uint8_t)cpu->r[0]);
|
|
L_029230D0: ; // 0x29230d0
|
|
/* 029230D0 */ cpu->r[9] = 0x10140000u;
|
|
/* 029230D4 */ cpu->r[12] = 0x00000002u;
|
|
/* 029230D8 */ cpu->r[9] = cpu->r[9] + 0x00002D38u;
|
|
/* 029230DC */ cpu->r[0] = cpu->r[1] + 0x00000090u;
|
|
/* 029230E0 */ _t48 = cpu->r[31] + 0x00000004u;
|
|
/* 029230E0 */ rbrew_write32(cpu->mem, _t48, cpu->r[9]);
|
|
/* 029230E4 */ cpu->r[11] = cpu->r[1] + 0x00000018u;
|
|
/* 029230E8 */ _t49 = cpu->r[1] + 0x0000000Cu;
|
|
/* 029230E8 */ rbrew_write32(cpu->mem, _t49, cpu->r[0]);
|
|
/* 029230EC */ cpu->r[0] = 0x00000000u;
|
|
/* 029230F0 */ _t50 = cpu->r[1] + 0x00000010u;
|
|
/* 029230F0 */ rbrew_write32(cpu->mem, _t50, cpu->r[11]);
|
|
/* 029230F4 */ cpu->r[3] = cpu->r[31];
|
|
/* 029230F8 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 029230FC */ _t51 = cpu->r[1] + 0x00000009u;
|
|
/* 029230FC */ rbrew_write8(cpu->mem, _t51, (uint8_t)cpu->r[0]);
|
|
/* 02923100 */ cpu->r[4] = cpu->r[30];
|
|
/* 02923104 */ _t52 = cpu->r[1] + 0x00000008u;
|
|
/* 02923104 */ rbrew_write8(cpu->mem, _t52, (uint8_t)cpu->r[12]);
|
|
/* 02923108 */ Gambit_fn_0282A5DC(cpu);
|
|
L_0292310C: ; // 0x292310c
|
|
/* 0292310C */ _t53 = cpu->r[1] + 0x00000078u;
|
|
/* 0292310C */ cpu->r[28] = rbrew_read32(cpu->mem, _t53);
|
|
/* 02923110 */ _t54 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02923110 */ cpu->r[29] = rbrew_read32(cpu->mem, _t54);
|
|
/* 02923114 */ _t55 = cpu->r[1] + 0x0000008Cu;
|
|
/* 02923114 */ cpu->r[0] = rbrew_read32(cpu->mem, _t55);
|
|
/* 02923118 */ cpu->r[3] = cpu->r[31];
|
|
/* 0292311C */ _t56 = cpu->r[1] + 0x00000080u;
|
|
/* 0292311C */ cpu->r[30] = rbrew_read32(cpu->mem, _t56);
|
|
/* 02923120 */ cpu->lr = cpu->r[0];
|
|
/* 02923124 */ _t57 = cpu->r[1] + 0x00000084u;
|
|
/* 02923124 */ cpu->r[31] = rbrew_read32(cpu->mem, _t57);
|
|
/* 02923128 */ cpu->r[1] = cpu->r[1] + 0x00000088u;
|
|
/* 0292312C */ return;
|
|
}
|
|
|
|
// fn_02923130 @ 0x2923130
|
|
void Gambit_fn_02923130(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_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t0;
|
|
/* 02801B38 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02801B48 */ _t3 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02801B50 */ if (_t5) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02801B60 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 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 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B74 */ if (_t9) 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 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02801B84 */ if (_t11) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t12 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02801B8C */ _t13 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02801BA0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
L_02923130: ; // 0x2923130
|
|
/* 02923130 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02923134 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02923134 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02923134 */ if (_t17) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02923134 */ goto L_02923138;
|
|
L_02923138: ; // 0x2923138
|
|
/* 02923138 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02923138 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0292313C */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292313C */ _t19 = _t18 & 0x00000001u;
|
|
/* 0292313C */ if (_t19) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0292313C */ goto L_02923140;
|
|
L_02923140: ; // 0x2923140
|
|
/* 02923140 */ goto L_02801BB0;
|
|
}
|
|
|
|
// fn_02923144 @ 0x2923144
|
|
void Gambit_fn_02923144(CPUState* cpu) {
|
|
L_02923144: ; // 0x2923144
|
|
/* 02923144 */ return;
|
|
}
|
|
|
|
// fn_02923148 @ 0x2923148
|
|
void Gambit_fn_02923148(CPUState* cpu) {
|
|
L_02923148: ; // 0x2923148
|
|
/* 02923148 */ cpu->r[3] = 0x00000001u;
|
|
/* 0292314C */ return;
|
|
}
|
|
|
|
// fn_02923150 @ 0x2923150
|
|
void Gambit_fn_02923150(CPUState* cpu) {
|
|
L_02923150: ; // 0x2923150
|
|
/* 02923150 */ cpu->r[3] = 0x00000007u;
|
|
/* 02923154 */ return;
|
|
}
|
|
|
|
// fn_02923158 @ 0x2923158
|
|
void Gambit_fn_02923158(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_02923158: ; // 0x2923158
|
|
/* 02923158 */ cpu->r[0] = cpu->lr;
|
|
/* 0292315C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0292315C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0292315C */ cpu->r[1] = _t0;
|
|
/* 02923160 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02923160 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02923164 */ cpu->r[31] = cpu->r[3];
|
|
/* 02923168 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02923168 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0292316C */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0292316C */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02923170 */ _t4 = cpu->r[12] + 0x00000014u;
|
|
/* 02923170 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02923174 */ cpu->ctr = cpu->r[0];
|
|
/* 02923178 */ cpu->r[3] = cpu->r[31] + 0x0000000Cu;
|
|
/* 0292317C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02923180 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 02923180 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02923184 */ _t6 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02923184 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02923188 */ cpu->lr = cpu->r[0];
|
|
/* 0292318C */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0292318C */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02923190 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02923194 */ return;
|
|
}
|
|
|
|
// fn_0292315C @ 0x292315c
|
|
void Gambit_fn_0292315C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_0292315C: ; // 0x292315c
|
|
/* 0292315C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0292315C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0292315C */ cpu->r[1] = _t0;
|
|
/* 02923160 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02923160 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02923164 */ cpu->r[31] = cpu->r[3];
|
|
/* 02923168 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02923168 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0292316C */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0292316C */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02923170 */ _t4 = cpu->r[12] + 0x00000014u;
|
|
/* 02923170 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02923174 */ cpu->ctr = cpu->r[0];
|
|
/* 02923178 */ cpu->r[3] = cpu->r[31] + 0x0000000Cu;
|
|
/* 0292317C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02923180 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 02923180 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02923184 */ _t6 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02923184 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02923188 */ cpu->lr = cpu->r[0];
|
|
/* 0292318C */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0292318C */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02923190 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02923194 */ return;
|
|
}
|
|
|
|
// fn_02923198 @ 0x2923198
|
|
void Gambit_fn_02923198(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_02923198: ; // 0x2923198
|
|
/* 02923198 */ cpu->r[0] = cpu->lr;
|
|
/* 0292319C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0292319C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0292319C */ cpu->r[1] = _t0;
|
|
/* 029231A0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 029231A0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 029231A4 */ cpu->r[31] = cpu->r[3];
|
|
/* 029231A8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 029231A8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 029231AC */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 029231AC */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 029231B0 */ _t4 = cpu->r[12] + 0x00000014u;
|
|
/* 029231B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 029231B4 */ cpu->ctr = cpu->r[0];
|
|
/* 029231B8 */ cpu->r[3] = cpu->r[31] + 0x0000000Cu;
|
|
/* 029231BC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 029231C0 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 029231C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 029231C4 */ _t6 = cpu->r[31] + 0x0000000Cu;
|
|
/* 029231C4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 029231C8 */ cpu->lr = cpu->r[0];
|
|
/* 029231CC */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 029231CC */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 029231D0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 029231D4 */ return;
|
|
}
|
|
|
|
// fn_0292319C @ 0x292319c
|
|
void Gambit_fn_0292319C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_0292319C: ; // 0x292319c
|
|
/* 0292319C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0292319C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0292319C */ cpu->r[1] = _t0;
|
|
/* 029231A0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 029231A0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 029231A4 */ cpu->r[31] = cpu->r[3];
|
|
/* 029231A8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 029231A8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 029231AC */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 029231AC */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 029231B0 */ _t4 = cpu->r[12] + 0x00000014u;
|
|
/* 029231B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 029231B4 */ cpu->ctr = cpu->r[0];
|
|
/* 029231B8 */ cpu->r[3] = cpu->r[31] + 0x0000000Cu;
|
|
/* 029231BC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 029231C0 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 029231C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 029231C4 */ _t6 = cpu->r[31] + 0x0000000Cu;
|
|
/* 029231C4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 029231C8 */ cpu->lr = cpu->r[0];
|
|
/* 029231CC */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 029231CC */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 029231D0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 029231D4 */ return;
|
|
}
|
|
|
|
// fn_029231D8 @ 0x29231d8
|
|
void Gambit_fn_029231D8(CPUState* cpu) {
|
|
L_029231D8: ; // 0x29231d8
|
|
/* 029231D8 */ cpu->r[3] = cpu->r[3] + 0x0000000Cu;
|
|
/* 029231DC */ return;
|
|
}
|
|
|
|
// fn_029231E0 @ 0x29231e0
|
|
void Gambit_fn_029231E0(CPUState* cpu) {
|
|
L_029231E0: ; // 0x29231e0
|
|
/* 029231E0 */ cpu->r[3] = cpu->r[3] + 0x0000000Cu;
|
|
/* 029231E4 */ return;
|
|
}
|
|
|
|
// fn_029231E8 @ 0x29231e8
|
|
void Gambit_fn_029231E8(CPUState* cpu) {
|
|
L_029231E8: ; // 0x29231e8
|
|
/* 029231E8 */ cpu->r[3] = 0x00000020u;
|
|
/* 029231EC */ return;
|
|
}
|
|
|
|
// fn_029231F0 @ 0x29231f0
|
|
void Gambit_fn_029231F0(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_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t0;
|
|
/* 02801B38 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02801B48 */ _t3 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02801B50 */ if (_t5) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02801B60 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 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 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B74 */ if (_t9) 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 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02801B84 */ if (_t11) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t12 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02801B8C */ _t13 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02801BA0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
L_029231F0: ; // 0x29231f0
|
|
/* 029231F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 029231F4 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029231F4 */ _t17 = _t16 & 0x00000001u;
|
|
/* 029231F4 */ if (_t17) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 029231F4 */ goto L_029231F8;
|
|
L_029231F8: ; // 0x29231f8
|
|
/* 029231F8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 029231F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 029231FC */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029231FC */ _t19 = _t18 & 0x00000001u;
|
|
/* 029231FC */ if (_t19) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 029231FC */ goto L_02923200;
|
|
L_02923200: ; // 0x2923200
|
|
/* 02923200 */ goto L_02801BB0;
|
|
}
|
|
|
|
// fn_02923204 @ 0x2923204
|
|
void Gambit_fn_02923204(CPUState* cpu) {
|
|
L_02923204: ; // 0x2923204
|
|
/* 02923204 */ cpu->r[3] = 0x00000001u;
|
|
/* 02923208 */ return;
|
|
}
|
|
|
|
// fn_0292320C @ 0x292320c
|
|
void Gambit_fn_0292320C(CPUState* cpu) {
|
|
L_0292320C: ; // 0x292320c
|
|
/* 0292320C */ return;
|
|
}
|
|
|
|
// fn_02923210 @ 0x2923210
|
|
void Gambit_fn_02923210(CPUState* cpu) {
|
|
L_02923210: ; // 0x2923210
|
|
/* 02923210 */ cpu->r[3] = 0x00000001u;
|
|
/* 02923214 */ return;
|
|
}
|
|
|
|
// fn_02923218 @ 0x2923218
|
|
void Gambit_fn_02923218(CPUState* cpu) {
|
|
L_02923218: ; // 0x2923218
|
|
/* 02923218 */ return;
|
|
}
|
|
|
|
// fn_0292321C @ 0x292321c
|
|
void Gambit_fn_0292321C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_0292321C: ; // 0x292321c
|
|
/* 0292321C */ _t0 = cpu->r[4] + 0x00000000u;
|
|
/* 0292321C */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02923220 */ _t1 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02923220 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02923224 */ _t2 = cpu->r[11] + 0x00000008u;
|
|
/* 02923224 */ cpu->r[11] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02923228 */ cpu->r[0] = cpu->r[11] ^ cpu->r[12];
|
|
/* 0292322C */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 02923230 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 02923234 */ return;
|
|
}
|
|
|
|
// fn_02923238 @ 0x2923238
|
|
void Gambit_fn_02923238(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_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t0;
|
|
/* 02801B38 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02801B48 */ _t3 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02801B50 */ if (_t5) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02801B60 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 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 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B74 */ if (_t9) 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 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02801B84 */ if (_t11) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t12 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02801B8C */ _t13 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02801BA0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
L_02923238: ; // 0x2923238
|
|
/* 02923238 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0292323C */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292323C */ _t17 = _t16 & 0x00000001u;
|
|
/* 0292323C */ if (_t17) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0292323C */ goto L_02923240;
|
|
L_02923240: ; // 0x2923240
|
|
/* 02923240 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02923240 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02923244 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02923244 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02923244 */ if (_t19) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02923244 */ goto L_02923248;
|
|
L_02923248: ; // 0x2923248
|
|
/* 02923248 */ goto L_02801BB0;
|
|
}
|
|
|
|
// fn_0292324C @ 0x292324c
|
|
void Gambit_fn_0292324C(CPUState* cpu) {
|
|
L_0292324C: ; // 0x292324c
|
|
/* 0292324C */ return;
|
|
}
|
|
|
|
// fn_02923250 @ 0x2923250
|
|
void Gambit_fn_02923250(CPUState* cpu) {
|
|
L_02923250: ; // 0x2923250
|
|
/* 02923250 */ cpu->r[3] = 0x00000001u;
|
|
/* 02923254 */ return;
|
|
}
|
|
|
|
// fn_02923258 @ 0x2923258
|
|
void Gambit_fn_02923258(CPUState* cpu) {
|
|
L_02923258: ; // 0x2923258
|
|
/* 02923258 */ return;
|
|
}
|
|
|
|
// fn_0292325C @ 0x292325c
|
|
void Gambit_fn_0292325C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_0292325C: ; // 0x292325c
|
|
/* 0292325C */ _t0 = cpu->r[4] + 0x00000000u;
|
|
/* 0292325C */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02923260 */ _t1 = cpu->r[3] + 0x00000010u;
|
|
/* 02923260 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02923264 */ _t2 = cpu->r[11] + 0x00000004u;
|
|
/* 02923264 */ cpu->r[11] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02923268 */ cpu->r[0] = cpu->r[11] ^ cpu->r[12];
|
|
/* 0292326C */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 02923270 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 02923274 */ return;
|
|
}
|
|
|
|
// fn_02923278 @ 0x2923278
|
|
void Gambit_fn_02923278(CPUState* cpu) {
|
|
L_02923278: ; // 0x2923278
|
|
/* 02923278 */ return;
|
|
}
|
|
|
|
// fn_0292327C @ 0x292327c
|
|
void Gambit_fn_0292327C(CPUState* cpu) {
|
|
L_0292327C: ; // 0x292327c
|
|
/* 0292327C */ return;
|
|
}
|
|
|
|
// fn_02923280 @ 0x2923280
|
|
void Gambit_fn_02923280(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02923280: ; // 0x2923280
|
|
/* 02923280 */ cpu->r[0] = cpu->lr;
|
|
/* 02923284 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02923284 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02923284 */ cpu->r[1] = _t0;
|
|
/* 02923288 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02923288 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0292328C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0292328C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02923290 */ cpu->r[30] = cpu->r[3];
|
|
/* 02923290 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02923294 */ cpu->r[31] = cpu->r[4];
|
|
/* 02923298 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02923298 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0292329C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292329C */ _t5 = _t4 & 0x00000001u;
|
|
/* 0292329C */ if (_t5) goto L_029232BC; else goto L_029232A0;
|
|
L_029232A0: ; // 0x29232a0
|
|
/* 029232A0 */ cpu->r[3] = cpu->r[30] + 0x0000001Cu;
|
|
/* 029232A4 */ cpu->r[4] = 0x00000000u;
|
|
/* 029232A8 */ Gambit_fn_0294E0C8(cpu);
|
|
/* 029232AC */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 029232AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 029232B0 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029232B0 */ _t7 = _t6 & 0x00000001u;
|
|
/* 029232B0 */ if (_t7) goto L_029232BC; else goto L_029232B4;
|
|
L_029232B4: ; // 0x29232b4
|
|
/* 029232B4 */ cpu->r[3] = cpu->r[30];
|
|
/* 029232B8 */ Gambit_fn_02801BB0(cpu);
|
|
L_029232BC: ; // 0x29232bc
|
|
/* 029232BC */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 029232BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 029232C0 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 029232C0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 029232C4 */ cpu->lr = cpu->r[0];
|
|
/* 029232C8 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 029232C8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 029232CC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 029232D0 */ return;
|
|
}
|
|
|
|
// fn_02923284 @ 0x2923284
|
|
void Gambit_fn_02923284(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02923284: ; // 0x2923284
|
|
/* 02923284 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02923284 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02923284 */ cpu->r[1] = _t0;
|
|
/* 02923288 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02923288 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0292328C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0292328C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02923290 */ cpu->r[30] = cpu->r[3];
|
|
/* 02923290 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02923294 */ cpu->r[31] = cpu->r[4];
|
|
/* 02923298 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02923298 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0292329C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292329C */ _t5 = _t4 & 0x00000001u;
|
|
/* 0292329C */ if (_t5) goto L_029232BC; else goto L_029232A0;
|
|
L_029232A0: ; // 0x29232a0
|
|
/* 029232A0 */ cpu->r[3] = cpu->r[30] + 0x0000001Cu;
|
|
/* 029232A4 */ cpu->r[4] = 0x00000000u;
|
|
/* 029232A8 */ Gambit_fn_0294E0C8(cpu);
|
|
/* 029232AC */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 029232AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 029232B0 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029232B0 */ _t7 = _t6 & 0x00000001u;
|
|
/* 029232B0 */ if (_t7) goto L_029232BC; else goto L_029232B4;
|
|
L_029232B4: ; // 0x29232b4
|
|
/* 029232B4 */ cpu->r[3] = cpu->r[30];
|
|
/* 029232B8 */ Gambit_fn_02801BB0(cpu);
|
|
L_029232BC: ; // 0x29232bc
|
|
/* 029232BC */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 029232BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 029232C0 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 029232C0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 029232C4 */ cpu->lr = cpu->r[0];
|
|
/* 029232C8 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 029232C8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 029232CC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 029232D0 */ return;
|
|
}
|
|
|
|
// fn_029232D4 @ 0x29232d4
|
|
void Gambit_fn_029232D4(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_029232D4: ; // 0x29232d4
|
|
/* 029232D4 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFE4u;
|
|
/* 029232D8 */ goto L_02923680;
|
|
L_02923680: ; // 0x2923680
|
|
/* 02923680 */ _t0 = cpu->r[3] + 0x00000018u;
|
|
/* 02923680 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02923684 */ _t1 = cpu->r[12] + 0x00000084u;
|
|
/* 02923684 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02923688 */ cpu->ctr = cpu->r[0];
|
|
/* 0292368C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_029232DC @ 0x29232dc
|
|
void Gambit_fn_029232DC(CPUState* cpu) {
|
|
L_029232DC: ; // 0x29232dc
|
|
/* 029232DC */ cpu->r[3] = cpu->r[3] + 0xFFFFFFE4u;
|
|
/* 029232E0 */ goto L_02923690;
|
|
L_02923690: ; // 0x2923690
|
|
/* 02923690 */ cpu->r[3] = cpu->r[3] + 0x0000007Cu;
|
|
/* 02923694 */ return;
|
|
}
|
|
|
|
// fn_029232E4 @ 0x29232e4
|
|
void Gambit_fn_029232E4(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_029232E4: ; // 0x29232e4
|
|
/* 029232E4 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFE4u;
|
|
/* 029232E8 */ goto L_02923698;
|
|
L_02923698: ; // 0x2923698
|
|
/* 02923698 */ _t0 = cpu->r[3] + 0x00000018u;
|
|
/* 02923698 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0292369C */ _t1 = cpu->r[12] + 0x000000B4u;
|
|
/* 0292369C */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 029236A0 */ cpu->ctr = cpu->r[0];
|
|
/* 029236A4 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_029232EC @ 0x29232ec
|
|
void Gambit_fn_029232EC(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_029232EC: ; // 0x29232ec
|
|
/* 029232EC */ cpu->r[3] = cpu->r[3] + 0xFFFFFFE4u;
|
|
/* 029232F0 */ goto L_029236A8;
|
|
L_029236A8: ; // 0x29236a8
|
|
/* 029236A8 */ _t0 = cpu->r[3] + 0x0000006Eu;
|
|
/* 029236A8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 029236AC */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 029236B0 */ return;
|
|
}
|
|
|
|
// fn_029232F4 @ 0x29232f4
|
|
void Gambit_fn_029232F4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _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;
|
|
|
|
L_029232F4: ; // 0x29232f4
|
|
/* 029232F4 */ _t0 = cpu->r[1] + 0xFFFFFF80u;
|
|
/* 029232F4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 029232F4 */ cpu->r[1] = _t0;
|
|
/* 029232F8 */ cpu->r[0] = cpu->lr;
|
|
/* 029232FC */ /* nop */
|
|
/* 02923300 */ cpu->r[31] = cpu->r[3];
|
|
/* 02923300 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02923304 */ _t1 = cpu->r[1] + 0x00000084u;
|
|
/* 02923304 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02923308 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02923308 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02923308 */ if (_t3) goto L_0292330C; else goto L_0292331C;
|
|
L_0292330C: ; // 0x292330c
|
|
/* 0292330C */ cpu->r[3] = 0x00000100u;
|
|
/* 02923310 */ Gambit_fn_02801A78(cpu);
|
|
/* 02923314 */ cpu->r[31] = cpu->r[3];
|
|
/* 02923314 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02923318 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02923318 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02923318 */ if (_t5) goto L_029235A0; else goto L_0292331C;
|
|
L_0292331C: ; // 0x292331c
|
|
/* 0292331C */ cpu->r[3] = cpu->r[31];
|
|
/* 02923320 */ Gambit_fn_0291E274(cpu);
|
|
/* 02923324 */ cpu->r[0] = 0x10140000u;
|
|
/* 02923328 */ cpu->r[11] = 0x10140000u;
|
|
/* 0292332C */ cpu->r[0] = cpu->r[0] + 0x00003364u;
|
|
/* 02923330 */ cpu->r[11] = cpu->r[11] + 0x000032ACu;
|
|
/* 02923334 */ cpu->r[28] = 0x10140000u;
|
|
/* 02923338 */ _t6 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02923338 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0292333C */ cpu->r[28] = cpu->r[28] + 0x00002FD8u;
|
|
/* 02923340 */ _t7 = cpu->r[31] + 0x00000018u;
|
|
/* 02923340 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 02923344 */ cpu->r[8] = 0x10140000u;
|
|
/* 02923348 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02923348 */ rbrew_write32(cpu->mem, _t8, cpu->r[28]);
|
|
/* 0292334C */ cpu->r[8] = cpu->r[8] + 0x00003264u;
|
|
/* 02923350 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02923350 */ rbrew_write32(cpu->mem, _t9, cpu->r[28]);
|
|
/* 02923354 */ cpu->r[0] = 0x10140000u;
|
|
/* 02923358 */ cpu->r[30] = 0x10140000u;
|
|
/* 0292335C */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 0292335C */ rbrew_write32(cpu->mem, _t10, cpu->r[8]);
|
|
/* 02923360 */ cpu->r[29] = 0x10140000u;
|
|
/* 02923364 */ cpu->r[0] = cpu->r[0] + 0x00003274u;
|
|
/* 02923368 */ cpu->r[27] = cpu->r[31] + 0x000000ACu;
|
|
/* 02923368 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0292336C */ cpu->r[29] = cpu->r[29] + 0x00003010u;
|
|
/* 02923370 */ cpu->r[30] = cpu->r[30] + 0x00002FD4u;
|
|
/* 02923374 */ _t11 = cpu->r[1] + 0x00000010u;
|
|
/* 02923374 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02923378 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02923378 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02923378 */ if (_t13) goto L_0292337C; else goto L_0292338C;
|
|
L_0292337C: ; // 0x292337c
|
|
/* 0292337C */ cpu->r[3] = 0x00000010u;
|
|
/* 02923380 */ Gambit_fn_02801A78(cpu);
|
|
/* 02923384 */ cpu->r[27] = cpu->r[3];
|
|
/* 02923384 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02923388 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02923388 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02923388 */ if (_t15) goto L_029233C4; else goto L_0292338C;
|
|
L_0292338C: ; // 0x292338c
|
|
/* 0292338C */ cpu->r[3] = cpu->r[27];
|
|
/* 02923390 */ Gambit_fn_0294F7F0(cpu);
|
|
/* 02923394 */ cpu->r[3] = cpu->r[27];
|
|
/* 02923398 */ _t16 = cpu->r[27] + 0x00000008u;
|
|
/* 02923398 */ rbrew_write32(cpu->mem, _t16, cpu->r[29]);
|
|
/* 0292339C */ cpu->r[7] = cpu->r[31];
|
|
/* 029233A0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 029233A4 */ _t17 = cpu->r[1] + 0x0000004Cu;
|
|
/* 029233A4 */ rbrew_write32(cpu->mem, _t17, cpu->r[28]);
|
|
/* 029233A8 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 029233AC */ cpu->r[6] = cpu->r[1] + 0x00000048u;
|
|
/* 029233B0 */ _t18 = cpu->r[1] + 0x00000048u;
|
|
/* 029233B0 */ rbrew_write32(cpu->mem, _t18, cpu->r[30]);
|
|
/* 029233B4 */ Gambit_fn_0294F794(cpu);
|
|
/* 029233B8 */ cpu->r[7] = 0x10140000u;
|
|
/* 029233BC */ _t19 = cpu->r[7] + 0x00003250u;
|
|
/* 029233BC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 029233C0 */ _t20 = cpu->r[27] + 0x0000000Cu;
|
|
/* 029233C0 */ rbrew_write_f32(cpu->mem, _t20, cpu->f[0]);
|
|
L_029233C4: ; // 0x29233c4
|
|
/* 029233C4 */ cpu->r[0] = 0x10140000u;
|
|
/* 029233C8 */ _t21 = cpu->r[1] + 0x0000001Cu;
|
|
/* 029233C8 */ rbrew_write32(cpu->mem, _t21, cpu->r[28]);
|
|
/* 029233CC */ cpu->r[0] = cpu->r[0] + 0x0000327Cu;
|
|
/* 029233D0 */ _t22 = cpu->r[1] + 0x00000024u;
|
|
/* 029233D0 */ rbrew_write32(cpu->mem, _t22, cpu->r[28]);
|
|
/* 029233D4 */ cpu->r[8] = 0x10140000u;
|
|
/* 029233D8 */ _t23 = cpu->r[1] + 0x00000020u;
|
|
/* 029233D8 */ rbrew_write32(cpu->mem, _t23, cpu->r[0]);
|
|
/* 029233DC */ cpu->r[8] = cpu->r[8] + 0x00003260u;
|
|
/* 029233E0 */ cpu->r[27] = cpu->r[31] + 0x000000BCu;
|
|
/* 029233E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 029233E4 */ _t24 = cpu->r[1] + 0x00000018u;
|
|
/* 029233E4 */ rbrew_write32(cpu->mem, _t24, cpu->r[8]);
|
|
/* 029233E8 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029233E8 */ _t26 = _t25 & 0x00000001u;
|
|
/* 029233E8 */ if (_t26) goto L_029233EC; else goto L_029233FC;
|
|
L_029233EC: ; // 0x29233ec
|
|
/* 029233EC */ cpu->r[3] = 0x00000010u;
|
|
/* 029233F0 */ Gambit_fn_02801A78(cpu);
|
|
/* 029233F4 */ cpu->r[27] = cpu->r[3];
|
|
/* 029233F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 029233F8 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029233F8 */ _t28 = _t27 & 0x00000001u;
|
|
/* 029233F8 */ if (_t28) goto L_02923434; else goto L_029233FC;
|
|
L_029233FC: ; // 0x29233fc
|
|
/* 029233FC */ cpu->r[3] = cpu->r[27];
|
|
/* 02923400 */ Gambit_fn_0294F7F0(cpu);
|
|
/* 02923404 */ cpu->r[3] = cpu->r[27];
|
|
/* 02923408 */ _t29 = cpu->r[27] + 0x00000008u;
|
|
/* 02923408 */ rbrew_write32(cpu->mem, _t29, cpu->r[29]);
|
|
/* 0292340C */ cpu->r[7] = cpu->r[31];
|
|
/* 02923410 */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 02923414 */ _t30 = cpu->r[1] + 0x00000054u;
|
|
/* 02923414 */ rbrew_write32(cpu->mem, _t30, cpu->r[28]);
|
|
/* 02923418 */ cpu->r[5] = cpu->r[1] + 0x00000020u;
|
|
/* 0292341C */ cpu->r[6] = cpu->r[1] + 0x00000050u;
|
|
/* 02923420 */ _t31 = cpu->r[1] + 0x00000050u;
|
|
/* 02923420 */ rbrew_write32(cpu->mem, _t31, cpu->r[30]);
|
|
/* 02923424 */ Gambit_fn_0294F794(cpu);
|
|
/* 02923428 */ cpu->r[11] = 0x10140000u;
|
|
/* 0292342C */ _t32 = cpu->r[11] + 0x00003254u;
|
|
/* 0292342C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 02923430 */ _t33 = cpu->r[27] + 0x0000000Cu;
|
|
/* 02923430 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[0]);
|
|
L_02923434: ; // 0x2923434
|
|
/* 02923434 */ cpu->r[11] = 0x10140000u;
|
|
/* 02923438 */ _t34 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02923438 */ rbrew_write32(cpu->mem, _t34, cpu->r[28]);
|
|
/* 0292343C */ cpu->r[11] = cpu->r[11] + 0x00003284u;
|
|
/* 02923440 */ _t35 = cpu->r[1] + 0x00000034u;
|
|
/* 02923440 */ rbrew_write32(cpu->mem, _t35, cpu->r[28]);
|
|
/* 02923444 */ cpu->r[10] = 0x10140000u;
|
|
/* 02923448 */ _t36 = cpu->r[1] + 0x00000030u;
|
|
/* 02923448 */ rbrew_write32(cpu->mem, _t36, cpu->r[11]);
|
|
/* 0292344C */ cpu->r[10] = cpu->r[10] + 0x0000326Cu;
|
|
/* 02923450 */ cpu->r[30] = cpu->r[31] + 0x000000CCu;
|
|
/* 02923450 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02923454 */ _t37 = cpu->r[1] + 0x00000028u;
|
|
/* 02923454 */ rbrew_write32(cpu->mem, _t37, cpu->r[10]);
|
|
/* 02923458 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02923458 */ _t39 = _t38 & 0x00000001u;
|
|
/* 02923458 */ if (_t39) goto L_0292345C; else goto L_0292346C;
|
|
L_0292345C: ; // 0x292345c
|
|
/* 0292345C */ cpu->r[3] = 0x0000001Cu;
|
|
/* 02923460 */ Gambit_fn_02801A78(cpu);
|
|
/* 02923464 */ cpu->r[30] = cpu->r[3];
|
|
/* 02923464 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02923468 */ _t40 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02923468 */ _t41 = _t40 & 0x00000001u;
|
|
/* 02923468 */ if (_t41) goto L_02923504; else goto L_0292346C;
|
|
L_0292346C: ; // 0x292346c
|
|
/* 0292346C */ cpu->r[3] = cpu->r[30];
|
|
/* 02923470 */ Gambit_fn_0294F7F0(cpu);
|
|
/* 02923474 */ cpu->r[0] = 0x10140000u;
|
|
/* 02923478 */ cpu->r[0] = cpu->r[0] + 0x00003130u;
|
|
/* 0292347C */ cpu->r[3] = cpu->r[30] + 0x0000000Cu;
|
|
/* 0292347C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02923480 */ _t42 = cpu->r[30] + 0x00000008u;
|
|
/* 02923480 */ rbrew_write32(cpu->mem, _t42, cpu->r[0]);
|
|
/* 02923484 */ _t43 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02923484 */ _t44 = _t43 & 0x00000001u;
|
|
/* 02923484 */ if (_t44) goto L_02923488; else goto L_02923498;
|
|
L_02923488: ; // 0x2923488
|
|
/* 02923488 */ cpu->r[3] = 0x00000010u;
|
|
/* 0292348C */ Gambit_fn_02801A78(cpu);
|
|
/* 02923490 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02923494 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02923494 */ _t46 = _t45 & 0x00000001u;
|
|
/* 02923494 */ if (_t46) goto L_029234B8; else goto L_02923498;
|
|
L_02923498: ; // 0x2923498
|
|
/* 02923498 */ cpu->r[7] = 0x10110000u;
|
|
/* 0292349C */ _t47 = cpu->r[7] + 0x00004468u;
|
|
/* 0292349C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 029234A0 */ _t48 = cpu->r[3] + 0x00000000u;
|
|
/* 029234A0 */ rbrew_write_f32(cpu->mem, _t48, cpu->f[13]);
|
|
/* 029234A4 */ _t49 = cpu->r[3] + 0x00000004u;
|
|
/* 029234A4 */ rbrew_write_f32(cpu->mem, _t49, cpu->f[13]);
|
|
/* 029234A8 */ cpu->r[9] = 0x10110000u;
|
|
/* 029234AC */ _t50 = cpu->r[3] + 0x00000008u;
|
|
/* 029234AC */ rbrew_write_f32(cpu->mem, _t50, cpu->f[13]);
|
|
/* 029234B0 */ _t51 = cpu->r[9] + 0x00004464u;
|
|
/* 029234B0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 029234B4 */ _t52 = cpu->r[3] + 0x0000000Cu;
|
|
/* 029234B4 */ rbrew_write_f32(cpu->mem, _t52, cpu->f[13]);
|
|
L_029234B8: ; // 0x29234b8
|
|
/* 029234B8 */ cpu->r[0] = 0x10140000u;
|
|
/* 029234BC */ _t53 = cpu->r[1] + 0x0000005Cu;
|
|
/* 029234BC */ rbrew_write32(cpu->mem, _t53, cpu->r[28]);
|
|
/* 029234C0 */ cpu->r[3] = cpu->r[30];
|
|
/* 029234C4 */ cpu->r[0] = cpu->r[0] + 0x00002FD6u;
|
|
/* 029234C8 */ cpu->r[7] = cpu->r[31];
|
|
/* 029234CC */ cpu->r[6] = cpu->r[1] + 0x00000058u;
|
|
/* 029234D0 */ cpu->r[4] = cpu->r[1] + 0x00000028u;
|
|
/* 029234D4 */ cpu->r[5] = cpu->r[1] + 0x00000030u;
|
|
/* 029234D8 */ _t54 = cpu->r[1] + 0x00000058u;
|
|
/* 029234D8 */ rbrew_write32(cpu->mem, _t54, cpu->r[0]);
|
|
/* 029234DC */ Gambit_fn_0294F794(cpu);
|
|
/* 029234E0 */ cpu->r[7] = 0x101F0000u;
|
|
/* 029234E4 */ _t55 = cpu->r[7] + 0x00005BECu;
|
|
/* 029234E4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t55);
|
|
/* 029234E4 */ cpu->r[7] = _t55;
|
|
/* 029234E8 */ _t56 = cpu->r[30] + 0x0000000Cu;
|
|
/* 029234E8 */ rbrew_write32(cpu->mem, _t56, cpu->r[8]);
|
|
/* 029234EC */ _t57 = cpu->r[7] + 0x00000004u;
|
|
/* 029234EC */ cpu->r[10] = rbrew_read32(cpu->mem, _t57);
|
|
/* 029234F0 */ _t58 = cpu->r[30] + 0x00000010u;
|
|
/* 029234F0 */ rbrew_write32(cpu->mem, _t58, cpu->r[10]);
|
|
/* 029234F4 */ _t59 = cpu->r[7] + 0x00000008u;
|
|
/* 029234F4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t59);
|
|
/* 029234F8 */ _t60 = cpu->r[30] + 0x00000014u;
|
|
/* 029234F8 */ rbrew_write32(cpu->mem, _t60, cpu->r[11]);
|
|
/* 029234FC */ _t61 = cpu->r[7] + 0x0000000Cu;
|
|
/* 029234FC */ cpu->r[12] = rbrew_read32(cpu->mem, _t61);
|
|
/* 02923500 */ _t62 = cpu->r[30] + 0x00000018u;
|
|
/* 02923500 */ rbrew_write32(cpu->mem, _t62, cpu->r[12]);
|
|
L_02923504: ; // 0x2923504
|
|
/* 02923504 */ cpu->r[8] = 0x10140000u;
|
|
/* 02923508 */ _t63 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02923508 */ rbrew_write32(cpu->mem, _t63, cpu->r[28]);
|
|
/* 0292350C */ cpu->r[8] = cpu->r[8] + 0x0000328Cu;
|
|
/* 02923510 */ _t64 = cpu->r[1] + 0x00000044u;
|
|
/* 02923510 */ rbrew_write32(cpu->mem, _t64, cpu->r[28]);
|
|
/* 02923514 */ cpu->r[0] = 0x10140000u;
|
|
/* 02923518 */ _t65 = cpu->r[1] + 0x00000040u;
|
|
/* 02923518 */ rbrew_write32(cpu->mem, _t65, cpu->r[8]);
|
|
/* 0292351C */ cpu->r[0] = cpu->r[0] + 0x00003294u;
|
|
/* 02923520 */ cpu->r[30] = cpu->r[31] + 0x000000E8u;
|
|
/* 02923520 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02923524 */ _t66 = cpu->r[1] + 0x00000038u;
|
|
/* 02923524 */ rbrew_write32(cpu->mem, _t66, cpu->r[0]);
|
|
/* 02923528 */ _t67 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02923528 */ _t68 = _t67 & 0x00000001u;
|
|
/* 02923528 */ if (_t68) goto L_0292352C; else goto L_0292353C;
|
|
L_0292352C: ; // 0x292352c
|
|
/* 0292352C */ cpu->r[3] = 0x00000018u;
|
|
/* 02923530 */ Gambit_fn_02801A78(cpu);
|
|
/* 02923534 */ cpu->r[30] = cpu->r[3];
|
|
/* 02923534 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02923538 */ _t69 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02923538 */ _t70 = _t69 & 0x00000001u;
|
|
/* 02923538 */ if (_t70) goto L_02923594; else goto L_0292353C;
|
|
L_0292353C: ; // 0x292353c
|
|
/* 0292353C */ cpu->r[3] = cpu->r[30];
|
|
/* 02923540 */ Gambit_fn_0294F7F0(cpu);
|
|
/* 02923544 */ cpu->r[10] = 0x10140000u;
|
|
/* 02923548 */ cpu->r[3] = cpu->r[30];
|
|
/* 0292354C */ cpu->r[7] = cpu->r[31];
|
|
/* 02923550 */ cpu->r[10] = cpu->r[10] + 0x000030A0u;
|
|
/* 02923554 */ cpu->r[4] = cpu->r[1] + 0x00000038u;
|
|
/* 02923558 */ cpu->r[12] = 0x10140000u;
|
|
/* 0292355C */ _t71 = cpu->r[30] + 0x00000008u;
|
|
/* 0292355C */ rbrew_write32(cpu->mem, _t71, cpu->r[10]);
|
|
/* 02923560 */ cpu->r[5] = cpu->r[1] + 0x00000040u;
|
|
/* 02923564 */ cpu->r[12] = cpu->r[12] + 0x00002FD5u;
|
|
/* 02923568 */ _t72 = cpu->r[1] + 0x00000064u;
|
|
/* 02923568 */ rbrew_write32(cpu->mem, _t72, cpu->r[28]);
|
|
/* 0292356C */ cpu->r[6] = cpu->r[1] + 0x00000060u;
|
|
/* 02923570 */ _t73 = cpu->r[1] + 0x00000060u;
|
|
/* 02923570 */ rbrew_write32(cpu->mem, _t73, cpu->r[12]);
|
|
/* 02923574 */ Gambit_fn_0294F794(cpu);
|
|
/* 02923578 */ cpu->r[9] = 0x10140000u;
|
|
/* 0292357C */ cpu->r[12] = 0x10140000u;
|
|
/* 02923580 */ _t74 = cpu->r[9] + 0x0000325Cu;
|
|
/* 02923580 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t74);
|
|
/* 02923584 */ _t75 = cpu->r[12] + 0x00003258u;
|
|
/* 02923584 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t75);
|
|
/* 02923588 */ _t76 = cpu->r[30] + 0x00000014u;
|
|
/* 02923588 */ rbrew_write_f32(cpu->mem, _t76, cpu->f[0]);
|
|
/* 0292358C */ _t77 = cpu->r[30] + 0x00000010u;
|
|
/* 0292358C */ rbrew_write_f32(cpu->mem, _t77, cpu->f[13]);
|
|
/* 02923590 */ _t78 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02923590 */ rbrew_write_f32(cpu->mem, _t78, cpu->f[13]);
|
|
L_02923594: ; // 0x2923594
|
|
/* 02923594 */ cpu->r[9] = 0x10140000u;
|
|
/* 02923598 */ cpu->r[9] = cpu->r[9] + 0x000031C0u;
|
|
/* 0292359C */ _t79 = cpu->r[31] + 0x000000F0u;
|
|
/* 0292359C */ rbrew_write32(cpu->mem, _t79, cpu->r[9]);
|
|
L_029235A0: ; // 0x29235a0
|
|
/* 029235A0 */ cpu->r[3] = cpu->r[31];
|
|
/* 029235A4 */ /* nop */
|
|
/* 029235A8 */ _t80 = cpu->r[1] + 0x00000084u;
|
|
/* 029235A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t80);
|
|
/* 029235AC */ cpu->lr = cpu->r[0];
|
|
/* 029235B0 */ cpu->r[1] = cpu->r[1] + 0x00000080u;
|
|
/* 029235B4 */ return;
|
|
}
|
|
|
|
// fn_029235B8 @ 0x29235b8
|
|
void Gambit_fn_029235B8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_029235B8: ; // 0x29235b8
|
|
/* 029235B8 */ cpu->r[0] = cpu->lr;
|
|
/* 029235BC */ cpu->r[12] = 0x10140000u;
|
|
/* 029235C0 */ cpu->r[5] = 0x02920000u;
|
|
/* 029235C4 */ cpu->r[12] = cpu->r[12] + 0x00002FD8u;
|
|
/* 029235C8 */ cpu->r[5] = cpu->r[5] + 0x00003848u;
|
|
/* 029235CC */ cpu->r[7] = 0x00000100u;
|
|
/* 029235D0 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 029235D0 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 029235D4 */ cpu->r[0] = 0x10140000u;
|
|
/* 029235D8 */ _t1 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 029235D8 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 029235D8 */ cpu->r[1] = _t1;
|
|
/* 029235DC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 029235DC */ rbrew_write32(cpu->mem, _t2, cpu->r[12]);
|
|
/* 029235E0 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 029235E4 */ cpu->r[0] = cpu->r[0] + 0x000032A4u;
|
|
/* 029235E8 */ cpu->r[6] = 0x00000001u;
|
|
/* 029235EC */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 029235EC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 029235F0 */ cpu->r[0] = 0x10140000u;
|
|
/* 029235F4 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 029235F4 */ rbrew_write32(cpu->mem, _t4, cpu->r[12]);
|
|
/* 029235F8 */ cpu->r[0] = cpu->r[0] + 0x000032A0u;
|
|
/* 029235FC */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02923600 */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 02923600 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02923604 */ Gambit_fn_0291EAD8(cpu);
|
|
/* 02923608 */ cpu->r[12] = 0x10200000u;
|
|
/* 0292360C */ _t6 = cpu->r[12] + 0xFFFF8200u;
|
|
/* 0292360C */ rbrew_write32(cpu->mem, _t6, cpu->r[3]);
|
|
/* 02923610 */ _t7 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02923610 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02923614 */ cpu->lr = cpu->r[0];
|
|
/* 02923618 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0292361C */ return;
|
|
}
|
|
|
|
// fn_029235D8 @ 0x29235d8
|
|
void Gambit_fn_029235D8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_029235D8: ; // 0x29235d8
|
|
/* 029235D8 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 029235D8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 029235D8 */ cpu->r[1] = _t0;
|
|
/* 029235DC */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 029235DC */ rbrew_write32(cpu->mem, _t1, cpu->r[12]);
|
|
/* 029235E0 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 029235E4 */ cpu->r[0] = cpu->r[0] + 0x000032A4u;
|
|
/* 029235E8 */ cpu->r[6] = 0x00000001u;
|
|
/* 029235EC */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 029235EC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 029235F0 */ cpu->r[0] = 0x10140000u;
|
|
/* 029235F4 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 029235F4 */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 029235F8 */ cpu->r[0] = cpu->r[0] + 0x000032A0u;
|
|
/* 029235FC */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02923600 */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 02923600 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02923604 */ Gambit_fn_0291EAD8(cpu);
|
|
/* 02923608 */ cpu->r[12] = 0x10200000u;
|
|
/* 0292360C */ _t5 = cpu->r[12] + 0xFFFF8200u;
|
|
/* 0292360C */ rbrew_write32(cpu->mem, _t5, cpu->r[3]);
|
|
/* 02923610 */ _t6 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02923610 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02923614 */ cpu->lr = cpu->r[0];
|
|
/* 02923618 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0292361C */ return;
|
|
}
|
|
|
|
// fn_02923620 @ 0x2923620
|
|
void Gambit_fn_02923620(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_02923620: ; // 0x2923620
|
|
/* 02923620 */ cpu->r[0] = cpu->lr;
|
|
/* 02923624 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02923624 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02923624 */ cpu->r[1] = _t0;
|
|
/* 02923628 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02923628 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0292362C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0292362C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02923630 */ cpu->r[30] = cpu->r[3];
|
|
/* 02923630 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02923634 */ cpu->r[31] = cpu->r[4];
|
|
/* 02923638 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02923638 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0292363C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292363C */ _t5 = _t4 & 0x00000001u;
|
|
/* 0292363C */ if (_t5) goto L_02923668; else goto L_02923640;
|
|
L_02923640: ; // 0x2923640
|
|
/* 02923640 */ cpu->r[0] = 0x10140000u;
|
|
/* 02923644 */ cpu->r[3] = cpu->r[30];
|
|
/* 02923648 */ cpu->r[0] = cpu->r[0] + 0x00003364u;
|
|
/* 0292364C */ cpu->r[4] = 0x00000000u;
|
|
/* 02923650 */ _t6 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02923650 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02923654 */ Gambit_fn_0291E1F4(cpu);
|
|
/* 02923658 */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02923658 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0292365C */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292365C */ _t8 = _t7 & 0x00000001u;
|
|
/* 0292365C */ if (_t8) goto L_02923668; else goto L_02923660;
|
|
L_02923660: ; // 0x2923660
|
|
/* 02923660 */ cpu->r[3] = cpu->r[30];
|
|
/* 02923664 */ Gambit_fn_02801BB0(cpu);
|
|
L_02923668: ; // 0x2923668
|
|
/* 02923668 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02923668 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0292366C */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 0292366C */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02923670 */ cpu->lr = cpu->r[0];
|
|
/* 02923674 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02923674 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02923678 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0292367C */ return;
|
|
}
|
|
|
|
// fn_02923624 @ 0x2923624
|
|
void Gambit_fn_02923624(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_02923624: ; // 0x2923624
|
|
/* 02923624 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02923624 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02923624 */ cpu->r[1] = _t0;
|
|
/* 02923628 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02923628 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0292362C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0292362C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02923630 */ cpu->r[30] = cpu->r[3];
|
|
/* 02923630 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02923634 */ cpu->r[31] = cpu->r[4];
|
|
/* 02923638 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02923638 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0292363C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292363C */ _t5 = _t4 & 0x00000001u;
|
|
/* 0292363C */ if (_t5) goto L_02923668; else goto L_02923640;
|
|
L_02923640: ; // 0x2923640
|
|
/* 02923640 */ cpu->r[0] = 0x10140000u;
|
|
/* 02923644 */ cpu->r[3] = cpu->r[30];
|
|
/* 02923648 */ cpu->r[0] = cpu->r[0] + 0x00003364u;
|
|
/* 0292364C */ cpu->r[4] = 0x00000000u;
|
|
/* 02923650 */ _t6 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02923650 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02923654 */ Gambit_fn_0291E1F4(cpu);
|
|
/* 02923658 */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02923658 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0292365C */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292365C */ _t8 = _t7 & 0x00000001u;
|
|
/* 0292365C */ if (_t8) goto L_02923668; else goto L_02923660;
|
|
L_02923660: ; // 0x2923660
|
|
/* 02923660 */ cpu->r[3] = cpu->r[30];
|
|
/* 02923664 */ Gambit_fn_02801BB0(cpu);
|
|
L_02923668: ; // 0x2923668
|
|
/* 02923668 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02923668 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0292366C */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 0292366C */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02923670 */ cpu->lr = cpu->r[0];
|
|
/* 02923674 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02923674 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02923678 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0292367C */ return;
|
|
}
|
|
|
|
// fn_02923680 @ 0x2923680
|
|
void Gambit_fn_02923680(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02923680: ; // 0x2923680
|
|
/* 02923680 */ _t0 = cpu->r[3] + 0x00000018u;
|
|
/* 02923680 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02923684 */ _t1 = cpu->r[12] + 0x00000084u;
|
|
/* 02923684 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02923688 */ cpu->ctr = cpu->r[0];
|
|
/* 0292368C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02923690 @ 0x2923690
|
|
void Gambit_fn_02923690(CPUState* cpu) {
|
|
L_02923690: ; // 0x2923690
|
|
/* 02923690 */ cpu->r[3] = cpu->r[3] + 0x0000007Cu;
|
|
/* 02923694 */ return;
|
|
}
|
|
|
|
// fn_02923698 @ 0x2923698
|
|
void Gambit_fn_02923698(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02923698: ; // 0x2923698
|
|
/* 02923698 */ _t0 = cpu->r[3] + 0x00000018u;
|
|
/* 02923698 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0292369C */ _t1 = cpu->r[12] + 0x000000B4u;
|
|
/* 0292369C */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 029236A0 */ cpu->ctr = cpu->r[0];
|
|
/* 029236A4 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_029236A8 @ 0x29236a8
|
|
void Gambit_fn_029236A8(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_029236A8: ; // 0x29236a8
|
|
/* 029236A8 */ _t0 = cpu->r[3] + 0x0000006Eu;
|
|
/* 029236A8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 029236AC */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 029236B0 */ return;
|
|
}
|
|
|
|
// fn_029236B4 @ 0x29236b4
|
|
void Gambit_fn_029236B4(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_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t0;
|
|
/* 02801B38 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02801B48 */ _t3 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02801B50 */ if (_t5) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02801B60 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 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 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B74 */ if (_t9) 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 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02801B84 */ if (_t11) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t12 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02801B8C */ _t13 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02801BA0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
L_029236B4: ; // 0x29236b4
|
|
/* 029236B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 029236B8 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029236B8 */ _t17 = _t16 & 0x00000001u;
|
|
/* 029236B8 */ if (_t17) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 029236B8 */ goto L_029236BC;
|
|
L_029236BC: ; // 0x29236bc
|
|
/* 029236BC */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 029236BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 029236C0 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029236C0 */ _t19 = _t18 & 0x00000001u;
|
|
/* 029236C0 */ if (_t19) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 029236C0 */ goto L_029236C4;
|
|
L_029236C4: ; // 0x29236c4
|
|
/* 029236C4 */ goto L_02801BB0;
|
|
}
|
|
|
|
// fn_029236C8 @ 0x29236c8
|
|
void Gambit_fn_029236C8(CPUState* cpu) {
|
|
L_029236C8: ; // 0x29236c8
|
|
/* 029236C8 */ return;
|
|
}
|
|
|
|
// fn_029236CC @ 0x29236cc
|
|
void Gambit_fn_029236CC(CPUState* cpu) {
|
|
L_029236CC: ; // 0x29236cc
|
|
/* 029236CC */ return;
|
|
}
|
|
|
|
// fn_029236D0 @ 0x29236d0
|
|
void Gambit_fn_029236D0(CPUState* cpu) {
|
|
L_029236D0: ; // 0x29236d0
|
|
/* 029236D0 */ cpu->r[3] = 0x00000001u;
|
|
/* 029236D4 */ return;
|
|
}
|
|
|
|
// fn_029236D8 @ 0x29236d8
|
|
void Gambit_fn_029236D8(CPUState* cpu) {
|
|
L_029236D8: ; // 0x29236d8
|
|
/* 029236D8 */ cpu->r[3] = 0x00000001u;
|
|
/* 029236DC */ return;
|
|
}
|
|
|
|
// fn_029236E0 @ 0x29236e0
|
|
void Gambit_fn_029236E0(CPUState* cpu) {
|
|
L_029236E0: ; // 0x29236e0
|
|
/* 029236E0 */ cpu->r[3] = cpu->r[3] + 0x0000000Cu;
|
|
/* 029236E4 */ return;
|
|
}
|
|
|
|
// fn_029236E8 @ 0x29236e8
|
|
void Gambit_fn_029236E8(CPUState* cpu) {
|
|
L_029236E8: ; // 0x29236e8
|
|
/* 029236E8 */ cpu->r[3] = cpu->r[3] + 0x0000000Cu;
|
|
/* 029236EC */ return;
|
|
}
|
|
|
|
// fn_029236F0 @ 0x29236f0
|
|
void Gambit_fn_029236F0(CPUState* cpu) {
|
|
L_029236F0: ; // 0x29236f0
|
|
/* 029236F0 */ cpu->r[3] = cpu->r[3] + 0x0000000Cu;
|
|
/* 029236F4 */ return;
|
|
}
|
|
|
|
// fn_029236F8 @ 0x29236f8
|
|
void Gambit_fn_029236F8(CPUState* cpu) {
|
|
L_029236F8: ; // 0x29236f8
|
|
/* 029236F8 */ cpu->r[3] = cpu->r[3] + 0x0000000Cu;
|
|
/* 029236FC */ return;
|
|
}
|
|
|
|
// fn_02923700 @ 0x2923700
|
|
void Gambit_fn_02923700(CPUState* cpu) {
|
|
L_02923700: ; // 0x2923700
|
|
/* 02923700 */ cpu->r[3] = 0x00000004u;
|
|
/* 02923704 */ return;
|
|
}
|
|
|
|
// fn_02923708 @ 0x2923708
|
|
void Gambit_fn_02923708(CPUState* cpu) {
|
|
L_02923708: ; // 0x2923708
|
|
/* 02923708 */ cpu->r[3] = 0x00000004u;
|
|
/* 0292370C */ return;
|
|
}
|
|
|
|
// fn_02923710 @ 0x2923710
|
|
void Gambit_fn_02923710(CPUState* cpu) {
|
|
L_02923710: ; // 0x2923710
|
|
/* 02923710 */ cpu->r[3] = cpu->r[3] + 0x0000000Cu;
|
|
/* 02923714 */ return;
|
|
}
|
|
|
|
// fn_02923718 @ 0x2923718
|
|
void Gambit_fn_02923718(CPUState* cpu) {
|
|
L_02923718: ; // 0x2923718
|
|
/* 02923718 */ cpu->r[3] = cpu->r[3] + 0x0000000Cu;
|
|
/* 0292371C */ return;
|
|
}
|
|
|
|
// fn_02923720 @ 0x2923720
|
|
void Gambit_fn_02923720(CPUState* cpu) {
|
|
L_02923720: ; // 0x2923720
|
|
/* 02923720 */ cpu->r[3] = cpu->r[3] + 0x0000000Cu;
|
|
/* 02923724 */ return;
|
|
}
|
|
|
|
// fn_02923728 @ 0x2923728
|
|
void Gambit_fn_02923728(CPUState* cpu) {
|
|
L_02923728: ; // 0x2923728
|
|
/* 02923728 */ cpu->r[3] = cpu->r[3] + 0x0000000Cu;
|
|
/* 0292372C */ return;
|
|
}
|
|
|
|
// fn_02923730 @ 0x2923730
|
|
void Gambit_fn_02923730(CPUState* cpu) {
|
|
L_02923730: ; // 0x2923730
|
|
/* 02923730 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02923734 */ return;
|
|
}
|
|
|
|
// fn_02923738 @ 0x2923738
|
|
void Gambit_fn_02923738(CPUState* cpu) {
|
|
L_02923738: ; // 0x2923738
|
|
/* 02923738 */ cpu->r[3] = 0x00000006u;
|
|
/* 0292373C */ return;
|
|
}
|
|
|
|
// fn_02923740 @ 0x2923740
|
|
void Gambit_fn_02923740(CPUState* cpu) {
|
|
L_02923740: ; // 0x2923740
|
|
/* 02923740 */ cpu->r[3] = cpu->r[3] + 0x0000000Cu;
|
|
/* 02923744 */ return;
|
|
}
|
|
|
|
// fn_02923748 @ 0x2923748
|
|
void Gambit_fn_02923748(CPUState* cpu) {
|
|
L_02923748: ; // 0x2923748
|
|
/* 02923748 */ cpu->r[3] = cpu->r[3] + 0x0000000Cu;
|
|
/* 0292374C */ return;
|
|
}
|
|
|
|
// fn_02923750 @ 0x2923750
|
|
void Gambit_fn_02923750(CPUState* cpu) {
|
|
L_02923750: ; // 0x2923750
|
|
/* 02923750 */ cpu->r[3] = cpu->r[3] + 0x0000000Cu;
|
|
/* 02923754 */ return;
|
|
}
|
|
|
|
// fn_02923758 @ 0x2923758
|
|
void Gambit_fn_02923758(CPUState* cpu) {
|
|
L_02923758: ; // 0x2923758
|
|
/* 02923758 */ cpu->r[3] = cpu->r[3] + 0x0000000Cu;
|
|
/* 0292375C */ return;
|
|
}
|
|
|
|
// fn_02923760 @ 0x2923760
|
|
void Gambit_fn_02923760(CPUState* cpu) {
|
|
L_02923760: ; // 0x2923760
|
|
/* 02923760 */ cpu->r[3] = 0x00000010u;
|
|
/* 02923764 */ return;
|
|
}
|
|
|
|
// fn_02923768 @ 0x2923768
|
|
void Gambit_fn_02923768(CPUState* cpu) {
|
|
L_02923768: ; // 0x2923768
|
|
/* 02923768 */ cpu->r[3] = 0x00000001u;
|
|
/* 0292376C */ return;
|
|
}
|
|
|
|
// fn_02923770 @ 0x2923770
|
|
void Gambit_fn_02923770(CPUState* cpu) {
|
|
L_02923770: ; // 0x2923770
|
|
/* 02923770 */ cpu->r[3] = 0x00000001u;
|
|
/* 02923774 */ return;
|
|
}
|
|
|
|
// fn_02923778 @ 0x2923778
|
|
void Gambit_fn_02923778(CPUState* cpu) {
|
|
L_02923778: ; // 0x2923778
|
|
/* 02923778 */ return;
|
|
}
|
|
|
|
// fn_0292377C @ 0x292377c
|
|
void Gambit_fn_0292377C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_0292377C: ; // 0x292377c
|
|
/* 0292377C */ _t0 = cpu->r[4] + 0x00000000u;
|
|
/* 0292377C */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02923780 */ _t1 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02923780 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02923784 */ _t2 = cpu->r[11] + 0x00000008u;
|
|
/* 02923784 */ cpu->r[11] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02923788 */ cpu->r[0] = cpu->r[11] ^ cpu->r[12];
|
|
/* 0292378C */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 02923790 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 02923794 */ return;
|
|
}
|
|
|
|
// fn_02923798 @ 0x2923798
|
|
void Gambit_fn_02923798(CPUState* cpu) {
|
|
L_02923798: ; // 0x2923798
|
|
/* 02923798 */ return;
|
|
}
|
|
|
|
// fn_0292379C @ 0x292379c
|
|
void Gambit_fn_0292379C(CPUState* cpu) {
|
|
L_0292379C: ; // 0x292379c
|
|
/* 0292379C */ return;
|
|
}
|
|
|
|
// fn_029237A0 @ 0x29237a0
|
|
void Gambit_fn_029237A0(CPUState* cpu) {
|
|
L_029237A0: ; // 0x29237a0
|
|
/* 029237A0 */ return;
|
|
}
|
|
|
|
// fn_029237A4 @ 0x29237a4
|
|
void Gambit_fn_029237A4(CPUState* cpu) {
|
|
L_029237A4: ; // 0x29237a4
|
|
/* 029237A4 */ return;
|
|
}
|
|
|
|
// fn_029237A8 @ 0x29237a8
|
|
void Gambit_fn_029237A8(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_029237A8: ; // 0x29237a8
|
|
/* 029237A8 */ _t0 = cpu->r[3] + 0x00000018u;
|
|
/* 029237A8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 029237AC */ _t1 = cpu->r[12] + 0x0000007Cu;
|
|
/* 029237AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 029237B0 */ cpu->ctr = cpu->r[0];
|
|
/* 029237B4 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_029237B8 @ 0x29237b8
|
|
void Gambit_fn_029237B8(CPUState* cpu) {
|
|
L_029237B8: ; // 0x29237b8
|
|
/* 029237B8 */ cpu->r[3] = cpu->r[3] + 0x00000040u;
|
|
/* 029237BC */ return;
|
|
}
|
|
|
|
// fn_029237C0 @ 0x29237c0
|
|
void Gambit_fn_029237C0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_029237C0: ; // 0x29237c0
|
|
/* 029237C0 */ cpu->r[9] = 0x101D0000u;
|
|
/* 029237C4 */ _t0 = cpu->r[9] + 0x00000520u;
|
|
/* 029237C4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 029237C4 */ cpu->r[9] = _t0;
|
|
/* 029237C8 */ cpu->r[12] = 0x101D0000u;
|
|
/* 029237CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 029237D0 */ cpu->r[12] = cpu->r[12] + 0x00000524u;
|
|
/* 029237D4 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029237D4 */ _t2 = _t1 & 0x00000001u;
|
|
/* 029237D4 */ if (_t2) goto L_029237D8; else goto L_029237EC;
|
|
L_029237D8: ; // 0x29237d8
|
|
/* 029237D8 */ cpu->r[7] = 0x10140000u;
|
|
/* 029237DC */ cpu->r[0] = 0x00000001u;
|
|
/* 029237E0 */ cpu->r[7] = cpu->r[7] + 0x00003000u;
|
|
/* 029237E4 */ _t3 = cpu->r[9] + 0x00000000u;
|
|
/* 029237E4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 029237E8 */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 029237E8 */ rbrew_write32(cpu->mem, _t4, cpu->r[7]);
|
|
L_029237EC: ; // 0x29237ec
|
|
/* 029237EC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 029237F0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029237F0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 029237F0 */ if (_t6) goto L_029237F4; else goto L_029237FC;
|
|
L_029237F4: ; // 0x29237f4
|
|
/* 029237F4 */ cpu->r[3] = 0x00000001u;
|
|
/* 029237F8 */ return;
|
|
L_029237FC: ; // 0x29237fc
|
|
/* 029237FC */ cpu->r[7] = 0x101D0000u;
|
|
/* 02923800 */ _t7 = cpu->r[7] + 0xFFFFDB10u;
|
|
/* 02923800 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02923800 */ cpu->r[7] = _t7;
|
|
/* 02923804 */ cpu->r[11] = 0x101D0000u;
|
|
/* 02923808 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0292380C */ cpu->r[11] = cpu->r[11] + 0xFFFFE1CCu;
|
|
/* 02923810 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02923810 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02923810 */ if (_t9) goto L_02923814; else goto L_02923828;
|
|
L_02923814: ; // 0x2923814
|
|
/* 02923814 */ cpu->r[0] = 0x10140000u;
|
|
/* 02923818 */ cpu->r[9] = 0x00000001u;
|
|
/* 0292381C */ cpu->r[0] = cpu->r[0] + 0x00002FF0u;
|
|
/* 02923820 */ _t10 = cpu->r[7] + 0x00000000u;
|
|
/* 02923820 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 02923824 */ _t11 = cpu->r[11] + 0x00000000u;
|
|
/* 02923824 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_02923828: ; // 0x2923828
|
|
/* 02923828 */ cpu->r[0] = cpu->r[4] ^ cpu->r[11];
|
|
/* 0292382C */ cpu->r[8] = rbrew_clz32(cpu->r[0]);
|
|
/* 02923830 */ cpu->r[3] = rbrew_rlwinm(cpu->r[8], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
/* 02923834 */ return;
|
|
}
|
|
|
|
// fn_02923838 @ 0x2923838
|
|
void Gambit_fn_02923838(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02923838: ; // 0x2923838
|
|
/* 02923838 */ cpu->r[12] = 0x10200000u;
|
|
/* 0292383C */ _t0 = cpu->r[12] + 0xFFFF8200u;
|
|
/* 0292383C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02923840 */ _t1 = cpu->r[12] + 0x00000000u;
|
|
/* 02923840 */ cpu->r[3] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t1);
|
|
/* 02923844 */ return;
|
|
}
|
|
|
|
// fn_0292385C @ 0x292385c
|
|
void Gambit_fn_0292385C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_0292385C: ; // 0x292385c
|
|
/* 0292385C */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 0292385C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0292385C */ cpu->r[1] = _t0;
|
|
/* 02923860 */ Gambit_fn_02801AC8(cpu);
|
|
/* 02923864 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02923868 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02923868 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02923868 */ if (_t2) goto L_02923870; else goto L_0292386C;
|
|
L_0292386C: ; // 0x292386c
|
|
/* 0292386C */ Gambit_fn_029232F4(cpu);
|
|
L_02923870: ; // 0x2923870
|
|
/* 02923870 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02923870 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02923874 */ cpu->lr = cpu->r[0];
|
|
/* 02923878 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 0292387C */ return;
|
|
}
|
|
|
|
// fn_02923880 @ 0x2923880
|
|
void Gambit_fn_02923880(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02923880: ; // 0x2923880
|
|
/* 02923880 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFE4u;
|
|
/* 02923884 */ goto L_0292597C;
|
|
L_0292597C: ; // 0x292597c
|
|
/* 0292597C */ _t0 = cpu->r[3] + 0x00000018u;
|
|
/* 0292597C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02925980 */ _t1 = cpu->r[12] + 0x00000084u;
|
|
/* 02925980 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02925984 */ cpu->ctr = cpu->r[0];
|
|
/* 02925988 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02923888 @ 0x2923888
|
|
void Gambit_fn_02923888(CPUState* cpu) {
|
|
L_02923888: ; // 0x2923888
|
|
/* 02923888 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFE4u;
|
|
/* 0292388C */ goto L_0292598C;
|
|
L_0292598C: ; // 0x292598c
|
|
/* 0292598C */ cpu->r[3] = cpu->r[3] + 0x0000007Cu;
|
|
/* 02925990 */ return;
|
|
}
|
|
|
|
// fn_02923890 @ 0x2923890
|
|
void Gambit_fn_02923890(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02923890: ; // 0x2923890
|
|
/* 02923890 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFE4u;
|
|
/* 02923894 */ goto L_02925994;
|
|
L_02925994: ; // 0x2925994
|
|
/* 02925994 */ _t0 = cpu->r[3] + 0x00000018u;
|
|
/* 02925994 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02925998 */ _t1 = cpu->r[12] + 0x000000B4u;
|
|
/* 02925998 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0292599C */ cpu->ctr = cpu->r[0];
|
|
/* 029259A0 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02923898 @ 0x2923898
|
|
void Gambit_fn_02923898(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02923898: ; // 0x2923898
|
|
/* 02923898 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFE4u;
|
|
/* 0292389C */ goto L_029259A4;
|
|
L_029259A4: ; // 0x29259a4
|
|
/* 029259A4 */ _t0 = cpu->r[3] + 0x0000006Eu;
|
|
/* 029259A4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 029259A8 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 029259AC */ return;
|
|
}
|
|
|
|
// fn_029238A0 @ 0x29238a0
|
|
void Gambit_fn_029238A0(CPUState* cpu) {
|
|
uint32_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_029238A0: ; // 0x29238a0
|
|
/* 029238A0 */ cpu->r[0] = cpu->lr;
|
|
/* 029238A4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 029238A4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 029238A4 */ cpu->r[1] = _t0;
|
|
/* 029238A8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 029238A8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 029238AC */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 029238AC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 029238B0 */ cpu->r[30] = cpu->r[3];
|
|
/* 029238B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 029238B4 */ cpu->r[31] = cpu->r[4];
|
|
/* 029238B8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 029238B8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 029238BC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029238BC */ _t5 = _t4 & 0x00000001u;
|
|
/* 029238BC */ if (_t5) goto L_02923934; else goto L_029238C0;
|
|
L_029238C0: ; // 0x29238c0
|
|
/* 029238C0 */ cpu->r[10] = 0x10140000u;
|
|
/* 029238C4 */ _t6 = cpu->r[30] + 0x00000110u;
|
|
/* 029238C4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t6);
|
|
/* 029238C8 */ cpu->r[10] = cpu->r[10] + 0x00003C5Cu;
|
|
/* 029238CC */ cpu->r[11] = 0x10140000u;
|
|
/* 029238D0 */ _t7 = cpu->r[30] + 0x00000018u;
|
|
/* 029238D0 */ rbrew_write32(cpu->mem, _t7, cpu->r[10]);
|
|
/* 029238D4 */ cpu->r[11] = cpu->r[11] + 0x00003AC4u;
|
|
/* 029238D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 029238DC */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 029238DC */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 029238E0 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029238E0 */ _t10 = _t9 & 0x00000001u;
|
|
/* 029238E0 */ if (_t10) goto L_02923918; else goto L_029238E4;
|
|
L_029238E4: ; // 0x29238e4
|
|
/* 029238E4 */ _t11 = cpu->r[30] + 0x0000010Cu;
|
|
/* 029238E4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t11);
|
|
/* 029238E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 029238EC */ cpu->r[3] = 0x101D0000u;
|
|
/* 029238F0 */ _t12 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 029238F0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 029238F4 */ Gambit_fn_02826B90(cpu);
|
|
/* 029238F8 */ _t13 = cpu->r[3] + 0x0000000Cu;
|
|
/* 029238F8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t13);
|
|
/* 029238FC */ _t14 = cpu->r[12] + 0x0000003Cu;
|
|
/* 029238FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02923900 */ cpu->ctr = cpu->r[0];
|
|
/* 02923904 */ _t15 = cpu->r[30] + 0x00000110u;
|
|
/* 02923904 */ cpu->r[4] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02923908 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0292390C */ cpu->r[6] = 0x00000000u;
|
|
/* 02923910 */ _t16 = cpu->r[30] + 0x0000010Cu;
|
|
/* 02923910 */ rbrew_write32(cpu->mem, _t16, cpu->r[6]);
|
|
/* 02923914 */ _t17 = cpu->r[30] + 0x00000110u;
|
|
/* 02923914 */ rbrew_write32(cpu->mem, _t17, cpu->r[6]);
|
|
L_02923918: ; // 0x2923918
|
|
/* 02923918 */ cpu->r[3] = cpu->r[30];
|
|
/* 0292391C */ cpu->r[4] = 0x00000000u;
|
|
/* 02923920 */ Gambit_fn_0291E1F4(cpu);
|
|
/* 02923924 */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02923924 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02923928 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02923928 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02923928 */ if (_t19) goto L_02923934; else goto L_0292392C;
|
|
L_0292392C: ; // 0x292392c
|
|
/* 0292392C */ cpu->r[3] = cpu->r[30];
|
|
/* 02923930 */ Gambit_fn_02801BB0(cpu);
|
|
L_02923934: ; // 0x2923934
|
|
/* 02923934 */ _t20 = cpu->r[1] + 0x00000014u;
|
|
/* 02923934 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02923938 */ _t21 = cpu->r[1] + 0x00000008u;
|
|
/* 02923938 */ cpu->r[30] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0292393C */ cpu->lr = cpu->r[0];
|
|
/* 02923940 */ _t22 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02923940 */ cpu->r[31] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02923944 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02923948 */ return;
|
|
}
|
|
|
|
// fn_029238A4 @ 0x29238a4
|
|
void Gambit_fn_029238A4(CPUState* cpu) {
|
|
uint32_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_029238A4: ; // 0x29238a4
|
|
/* 029238A4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 029238A4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 029238A4 */ cpu->r[1] = _t0;
|
|
/* 029238A8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 029238A8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 029238AC */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 029238AC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 029238B0 */ cpu->r[30] = cpu->r[3];
|
|
/* 029238B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 029238B4 */ cpu->r[31] = cpu->r[4];
|
|
/* 029238B8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 029238B8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 029238BC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029238BC */ _t5 = _t4 & 0x00000001u;
|
|
/* 029238BC */ if (_t5) goto L_02923934; else goto L_029238C0;
|
|
L_029238C0: ; // 0x29238c0
|
|
/* 029238C0 */ cpu->r[10] = 0x10140000u;
|
|
/* 029238C4 */ _t6 = cpu->r[30] + 0x00000110u;
|
|
/* 029238C4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t6);
|
|
/* 029238C8 */ cpu->r[10] = cpu->r[10] + 0x00003C5Cu;
|
|
/* 029238CC */ cpu->r[11] = 0x10140000u;
|
|
/* 029238D0 */ _t7 = cpu->r[30] + 0x00000018u;
|
|
/* 029238D0 */ rbrew_write32(cpu->mem, _t7, cpu->r[10]);
|
|
/* 029238D4 */ cpu->r[11] = cpu->r[11] + 0x00003AC4u;
|
|
/* 029238D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 029238DC */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 029238DC */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 029238E0 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029238E0 */ _t10 = _t9 & 0x00000001u;
|
|
/* 029238E0 */ if (_t10) goto L_02923918; else goto L_029238E4;
|
|
L_029238E4: ; // 0x29238e4
|
|
/* 029238E4 */ _t11 = cpu->r[30] + 0x0000010Cu;
|
|
/* 029238E4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t11);
|
|
/* 029238E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 029238EC */ cpu->r[3] = 0x101D0000u;
|
|
/* 029238F0 */ _t12 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 029238F0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 029238F4 */ Gambit_fn_02826B90(cpu);
|
|
/* 029238F8 */ _t13 = cpu->r[3] + 0x0000000Cu;
|
|
/* 029238F8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t13);
|
|
/* 029238FC */ _t14 = cpu->r[12] + 0x0000003Cu;
|
|
/* 029238FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02923900 */ cpu->ctr = cpu->r[0];
|
|
/* 02923904 */ _t15 = cpu->r[30] + 0x00000110u;
|
|
/* 02923904 */ cpu->r[4] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02923908 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0292390C */ cpu->r[6] = 0x00000000u;
|
|
/* 02923910 */ _t16 = cpu->r[30] + 0x0000010Cu;
|
|
/* 02923910 */ rbrew_write32(cpu->mem, _t16, cpu->r[6]);
|
|
/* 02923914 */ _t17 = cpu->r[30] + 0x00000110u;
|
|
/* 02923914 */ rbrew_write32(cpu->mem, _t17, cpu->r[6]);
|
|
L_02923918: ; // 0x2923918
|
|
/* 02923918 */ cpu->r[3] = cpu->r[30];
|
|
/* 0292391C */ cpu->r[4] = 0x00000000u;
|
|
/* 02923920 */ Gambit_fn_0291E1F4(cpu);
|
|
/* 02923924 */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02923924 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02923928 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02923928 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02923928 */ if (_t19) goto L_02923934; else goto L_0292392C;
|
|
L_0292392C: ; // 0x292392c
|
|
/* 0292392C */ cpu->r[3] = cpu->r[30];
|
|
/* 02923930 */ Gambit_fn_02801BB0(cpu);
|
|
L_02923934: ; // 0x2923934
|
|
/* 02923934 */ _t20 = cpu->r[1] + 0x00000014u;
|
|
/* 02923934 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02923938 */ _t21 = cpu->r[1] + 0x00000008u;
|
|
/* 02923938 */ cpu->r[30] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0292393C */ cpu->lr = cpu->r[0];
|
|
/* 02923940 */ _t22 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02923940 */ cpu->r[31] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02923944 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02923948 */ return;
|
|
}
|
|
|
|
// fn_0292394C @ 0x292394c
|
|
void Gambit_fn_0292394C(CPUState* cpu) {
|
|
uint32_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_0292394C: ; // 0x292394c
|
|
/* 0292394C */ cpu->r[0] = cpu->lr;
|
|
/* 02923950 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02923950 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02923950 */ cpu->r[1] = _t0;
|
|
/* 02923954 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02923954 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02923958 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02923958 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0292395C */ cpu->r[30] = cpu->r[3];
|
|
/* 0292395C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02923960 */ cpu->r[31] = cpu->r[4];
|
|
/* 02923964 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02923964 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02923968 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02923968 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02923968 */ if (_t5) goto L_029239E0; else goto L_0292396C;
|
|
L_0292396C: ; // 0x292396c
|
|
/* 0292396C */ cpu->r[12] = 0x10140000u;
|
|
/* 02923970 */ _t6 = cpu->r[30] + 0x0000013Cu;
|
|
/* 02923970 */ cpu->r[4] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02923974 */ cpu->r[12] = cpu->r[12] + 0x00003D14u;
|
|
/* 02923978 */ cpu->r[0] = 0x10140000u;
|
|
/* 0292397C */ _t7 = cpu->r[30] + 0x00000018u;
|
|
/* 0292397C */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 02923980 */ cpu->r[0] = cpu->r[0] + 0x00003AFCu;
|
|
/* 02923984 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 02923988 */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02923988 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0292398C */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292398C */ _t10 = _t9 & 0x00000001u;
|
|
/* 0292398C */ if (_t10) goto L_029239C4; else goto L_02923990;
|
|
L_02923990: ; // 0x2923990
|
|
/* 02923990 */ _t11 = cpu->r[30] + 0x00000138u;
|
|
/* 02923990 */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02923994 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02923998 */ cpu->r[3] = 0x101D0000u;
|
|
/* 0292399C */ _t12 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 0292399C */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 029239A0 */ Gambit_fn_02826B90(cpu);
|
|
/* 029239A4 */ _t13 = cpu->r[3] + 0x0000000Cu;
|
|
/* 029239A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t13);
|
|
/* 029239A8 */ _t14 = cpu->r[12] + 0x0000003Cu;
|
|
/* 029239A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 029239AC */ cpu->ctr = cpu->r[0];
|
|
/* 029239B0 */ _t15 = cpu->r[30] + 0x0000013Cu;
|
|
/* 029239B0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t15);
|
|
/* 029239B4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 029239B8 */ cpu->r[8] = 0x00000000u;
|
|
/* 029239BC */ _t16 = cpu->r[30] + 0x00000138u;
|
|
/* 029239BC */ rbrew_write32(cpu->mem, _t16, cpu->r[8]);
|
|
/* 029239C0 */ _t17 = cpu->r[30] + 0x0000013Cu;
|
|
/* 029239C0 */ rbrew_write32(cpu->mem, _t17, cpu->r[8]);
|
|
L_029239C4: ; // 0x29239c4
|
|
/* 029239C4 */ cpu->r[3] = cpu->r[30];
|
|
/* 029239C8 */ cpu->r[4] = 0x00000000u;
|
|
/* 029239CC */ Gambit_fn_0291E1F4(cpu);
|
|
/* 029239D0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 029239D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 029239D4 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029239D4 */ _t19 = _t18 & 0x00000001u;
|
|
/* 029239D4 */ if (_t19) goto L_029239E0; else goto L_029239D8;
|
|
L_029239D8: ; // 0x29239d8
|
|
/* 029239D8 */ cpu->r[3] = cpu->r[30];
|
|
/* 029239DC */ Gambit_fn_02801BB0(cpu);
|
|
L_029239E0: ; // 0x29239e0
|
|
/* 029239E0 */ _t20 = cpu->r[1] + 0x00000014u;
|
|
/* 029239E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 029239E4 */ _t21 = cpu->r[1] + 0x00000008u;
|
|
/* 029239E4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t21);
|
|
/* 029239E8 */ cpu->lr = cpu->r[0];
|
|
/* 029239EC */ _t22 = cpu->r[1] + 0x0000000Cu;
|
|
/* 029239EC */ cpu->r[31] = rbrew_read32(cpu->mem, _t22);
|
|
/* 029239F0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 029239F4 */ return;
|
|
}
|
|
|
|
// fn_02923950 @ 0x2923950
|
|
void Gambit_fn_02923950(CPUState* cpu) {
|
|
uint32_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_02923950: ; // 0x2923950
|
|
/* 02923950 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02923950 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02923950 */ cpu->r[1] = _t0;
|
|
/* 02923954 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02923954 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02923958 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02923958 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0292395C */ cpu->r[30] = cpu->r[3];
|
|
/* 0292395C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02923960 */ cpu->r[31] = cpu->r[4];
|
|
/* 02923964 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02923964 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02923968 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02923968 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02923968 */ if (_t5) goto L_029239E0; else goto L_0292396C;
|
|
L_0292396C: ; // 0x292396c
|
|
/* 0292396C */ cpu->r[12] = 0x10140000u;
|
|
/* 02923970 */ _t6 = cpu->r[30] + 0x0000013Cu;
|
|
/* 02923970 */ cpu->r[4] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02923974 */ cpu->r[12] = cpu->r[12] + 0x00003D14u;
|
|
/* 02923978 */ cpu->r[0] = 0x10140000u;
|
|
/* 0292397C */ _t7 = cpu->r[30] + 0x00000018u;
|
|
/* 0292397C */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 02923980 */ cpu->r[0] = cpu->r[0] + 0x00003AFCu;
|
|
/* 02923984 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 02923988 */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02923988 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0292398C */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292398C */ _t10 = _t9 & 0x00000001u;
|
|
/* 0292398C */ if (_t10) goto L_029239C4; else goto L_02923990;
|
|
L_02923990: ; // 0x2923990
|
|
/* 02923990 */ _t11 = cpu->r[30] + 0x00000138u;
|
|
/* 02923990 */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02923994 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02923998 */ cpu->r[3] = 0x101D0000u;
|
|
/* 0292399C */ _t12 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 0292399C */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 029239A0 */ Gambit_fn_02826B90(cpu);
|
|
/* 029239A4 */ _t13 = cpu->r[3] + 0x0000000Cu;
|
|
/* 029239A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t13);
|
|
/* 029239A8 */ _t14 = cpu->r[12] + 0x0000003Cu;
|
|
/* 029239A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 029239AC */ cpu->ctr = cpu->r[0];
|
|
/* 029239B0 */ _t15 = cpu->r[30] + 0x0000013Cu;
|
|
/* 029239B0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t15);
|
|
/* 029239B4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 029239B8 */ cpu->r[8] = 0x00000000u;
|
|
/* 029239BC */ _t16 = cpu->r[30] + 0x00000138u;
|
|
/* 029239BC */ rbrew_write32(cpu->mem, _t16, cpu->r[8]);
|
|
/* 029239C0 */ _t17 = cpu->r[30] + 0x0000013Cu;
|
|
/* 029239C0 */ rbrew_write32(cpu->mem, _t17, cpu->r[8]);
|
|
L_029239C4: ; // 0x29239c4
|
|
/* 029239C4 */ cpu->r[3] = cpu->r[30];
|
|
/* 029239C8 */ cpu->r[4] = 0x00000000u;
|
|
/* 029239CC */ Gambit_fn_0291E1F4(cpu);
|
|
/* 029239D0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 029239D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 029239D4 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029239D4 */ _t19 = _t18 & 0x00000001u;
|
|
/* 029239D4 */ if (_t19) goto L_029239E0; else goto L_029239D8;
|
|
L_029239D8: ; // 0x29239d8
|
|
/* 029239D8 */ cpu->r[3] = cpu->r[30];
|
|
/* 029239DC */ Gambit_fn_02801BB0(cpu);
|
|
L_029239E0: ; // 0x29239e0
|
|
/* 029239E0 */ _t20 = cpu->r[1] + 0x00000014u;
|
|
/* 029239E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 029239E4 */ _t21 = cpu->r[1] + 0x00000008u;
|
|
/* 029239E4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t21);
|
|
/* 029239E8 */ cpu->lr = cpu->r[0];
|
|
/* 029239EC */ _t22 = cpu->r[1] + 0x0000000Cu;
|
|
/* 029239EC */ cpu->r[31] = rbrew_read32(cpu->mem, _t22);
|
|
/* 029239F0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 029239F4 */ return;
|
|
}
|
|
|
|
// fn_029239F8 @ 0x29239f8
|
|
void Gambit_fn_029239F8(CPUState* cpu) {
|
|
uint32_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_029239F8: ; // 0x29239f8
|
|
/* 029239F8 */ cpu->r[0] = cpu->lr;
|
|
/* 029239FC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 029239FC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 029239FC */ cpu->r[1] = _t0;
|
|
/* 02923A00 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02923A00 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02923A04 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02923A04 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02923A08 */ cpu->r[30] = cpu->r[3];
|
|
/* 02923A08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02923A0C */ cpu->r[31] = cpu->r[4];
|
|
/* 02923A10 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02923A10 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02923A14 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02923A14 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02923A14 */ if (_t5) goto L_02923A8C; else goto L_02923A18;
|
|
L_02923A18: ; // 0x2923a18
|
|
/* 02923A18 */ cpu->r[12] = 0x10140000u;
|
|
/* 02923A1C */ _t6 = cpu->r[30] + 0x00000130u;
|
|
/* 02923A1C */ cpu->r[4] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02923A20 */ cpu->r[12] = cpu->r[12] + 0x00003DCCu;
|
|
/* 02923A24 */ cpu->r[0] = 0x10140000u;
|
|
/* 02923A28 */ _t7 = cpu->r[30] + 0x00000018u;
|
|
/* 02923A28 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 02923A2C */ cpu->r[0] = cpu->r[0] + 0x00003B34u;
|
|
/* 02923A30 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 02923A34 */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02923A34 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 02923A38 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02923A38 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02923A38 */ if (_t10) goto L_02923A70; else goto L_02923A3C;
|
|
L_02923A3C: ; // 0x2923a3c
|
|
/* 02923A3C */ _t11 = cpu->r[30] + 0x0000012Cu;
|
|
/* 02923A3C */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02923A40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02923A44 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02923A48 */ _t12 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02923A48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02923A4C */ Gambit_fn_02826B90(cpu);
|
|
/* 02923A50 */ _t13 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02923A50 */ cpu->r[12] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02923A54 */ _t14 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02923A54 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02923A58 */ cpu->ctr = cpu->r[0];
|
|
/* 02923A5C */ _t15 = cpu->r[30] + 0x00000130u;
|
|
/* 02923A5C */ cpu->r[4] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02923A60 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02923A64 */ cpu->r[8] = 0x00000000u;
|
|
/* 02923A68 */ _t16 = cpu->r[30] + 0x0000012Cu;
|
|
/* 02923A68 */ rbrew_write32(cpu->mem, _t16, cpu->r[8]);
|
|
/* 02923A6C */ _t17 = cpu->r[30] + 0x00000130u;
|
|
/* 02923A6C */ rbrew_write32(cpu->mem, _t17, cpu->r[8]);
|
|
L_02923A70: ; // 0x2923a70
|
|
/* 02923A70 */ cpu->r[3] = cpu->r[30];
|
|
/* 02923A74 */ cpu->r[4] = 0x00000000u;
|
|
/* 02923A78 */ Gambit_fn_0291E1F4(cpu);
|
|
/* 02923A7C */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02923A7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02923A80 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02923A80 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02923A80 */ if (_t19) goto L_02923A8C; else goto L_02923A84;
|
|
L_02923A84: ; // 0x2923a84
|
|
/* 02923A84 */ cpu->r[3] = cpu->r[30];
|
|
/* 02923A88 */ Gambit_fn_02801BB0(cpu);
|
|
L_02923A8C: ; // 0x2923a8c
|
|
/* 02923A8C */ _t20 = cpu->r[1] + 0x00000014u;
|
|
/* 02923A8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02923A90 */ _t21 = cpu->r[1] + 0x00000008u;
|
|
/* 02923A90 */ cpu->r[30] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02923A94 */ cpu->lr = cpu->r[0];
|
|
/* 02923A98 */ _t22 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02923A98 */ cpu->r[31] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02923A9C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02923AA0 */ return;
|
|
}
|
|
|
|
// fn_029239FC @ 0x29239fc
|
|
void Gambit_fn_029239FC(CPUState* cpu) {
|
|
uint32_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_029239FC: ; // 0x29239fc
|
|
/* 029239FC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 029239FC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 029239FC */ cpu->r[1] = _t0;
|
|
/* 02923A00 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02923A00 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02923A04 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02923A04 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02923A08 */ cpu->r[30] = cpu->r[3];
|
|
/* 02923A08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02923A0C */ cpu->r[31] = cpu->r[4];
|
|
/* 02923A10 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02923A10 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02923A14 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02923A14 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02923A14 */ if (_t5) goto L_02923A8C; else goto L_02923A18;
|
|
L_02923A18: ; // 0x2923a18
|
|
/* 02923A18 */ cpu->r[12] = 0x10140000u;
|
|
/* 02923A1C */ _t6 = cpu->r[30] + 0x00000130u;
|
|
/* 02923A1C */ cpu->r[4] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02923A20 */ cpu->r[12] = cpu->r[12] + 0x00003DCCu;
|
|
/* 02923A24 */ cpu->r[0] = 0x10140000u;
|
|
/* 02923A28 */ _t7 = cpu->r[30] + 0x00000018u;
|
|
/* 02923A28 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 02923A2C */ cpu->r[0] = cpu->r[0] + 0x00003B34u;
|
|
/* 02923A30 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 02923A34 */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02923A34 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 02923A38 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02923A38 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02923A38 */ if (_t10) goto L_02923A70; else goto L_02923A3C;
|
|
L_02923A3C: ; // 0x2923a3c
|
|
/* 02923A3C */ _t11 = cpu->r[30] + 0x0000012Cu;
|
|
/* 02923A3C */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02923A40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02923A44 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02923A48 */ _t12 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02923A48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02923A4C */ Gambit_fn_02826B90(cpu);
|
|
/* 02923A50 */ _t13 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02923A50 */ cpu->r[12] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02923A54 */ _t14 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02923A54 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02923A58 */ cpu->ctr = cpu->r[0];
|
|
/* 02923A5C */ _t15 = cpu->r[30] + 0x00000130u;
|
|
/* 02923A5C */ cpu->r[4] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02923A60 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02923A64 */ cpu->r[8] = 0x00000000u;
|
|
/* 02923A68 */ _t16 = cpu->r[30] + 0x0000012Cu;
|
|
/* 02923A68 */ rbrew_write32(cpu->mem, _t16, cpu->r[8]);
|
|
/* 02923A6C */ _t17 = cpu->r[30] + 0x00000130u;
|
|
/* 02923A6C */ rbrew_write32(cpu->mem, _t17, cpu->r[8]);
|
|
L_02923A70: ; // 0x2923a70
|
|
/* 02923A70 */ cpu->r[3] = cpu->r[30];
|
|
/* 02923A74 */ cpu->r[4] = 0x00000000u;
|
|
/* 02923A78 */ Gambit_fn_0291E1F4(cpu);
|
|
/* 02923A7C */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02923A7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02923A80 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02923A80 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02923A80 */ if (_t19) goto L_02923A8C; else goto L_02923A84;
|
|
L_02923A84: ; // 0x2923a84
|
|
/* 02923A84 */ cpu->r[3] = cpu->r[30];
|
|
/* 02923A88 */ Gambit_fn_02801BB0(cpu);
|
|
L_02923A8C: ; // 0x2923a8c
|
|
/* 02923A8C */ _t20 = cpu->r[1] + 0x00000014u;
|
|
/* 02923A8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02923A90 */ _t21 = cpu->r[1] + 0x00000008u;
|
|
/* 02923A90 */ cpu->r[30] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02923A94 */ cpu->lr = cpu->r[0];
|
|
/* 02923A98 */ _t22 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02923A98 */ cpu->r[31] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02923A9C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02923AA0 */ return;
|
|
}
|
|
|
|
// fn_02923AA4 @ 0x2923aa4
|
|
void Gambit_fn_02923AA4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36;
|
|
|
|
L_02923AA4: ; // 0x2923aa4
|
|
/* 02923AA4 */ cpu->r[0] = cpu->lr;
|
|
/* 02923AA8 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02923AA8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02923AA8 */ cpu->r[1] = _t0;
|
|
/* 02923AAC */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02923AAC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02923AB0 */ cpu->r[31] = cpu->r[4];
|
|
/* 02923AB4 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 02923AB4 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02923AB8 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 02923AB8 */ rbrew_write32(cpu->mem, _t3, cpu->r[28]);
|
|
/* 02923ABC */ cpu->r[30] = cpu->r[3];
|
|
/* 02923ABC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02923AC0 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02923AC0 */ rbrew_write32(cpu->mem, _t4, cpu->r[29]);
|
|
/* 02923AC4 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02923AC4 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02923AC8 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02923AC8 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02923AC8 */ if (_t7) goto L_02923B78; else goto L_02923ACC;
|
|
L_02923ACC: ; // 0x2923acc
|
|
/* 02923ACC */ cpu->r[12] = 0x10140000u;
|
|
/* 02923AD0 */ cpu->r[0] = 0x10140000u;
|
|
/* 02923AD4 */ _t8 = cpu->r[30] + 0x00000170u;
|
|
/* 02923AD4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02923AD8 */ cpu->r[12] = cpu->r[12] + 0x00003E84u;
|
|
/* 02923ADC */ cpu->r[0] = cpu->r[0] + 0x00003B6Cu;
|
|
/* 02923AE0 */ _t9 = cpu->r[30] + 0x00000018u;
|
|
/* 02923AE0 */ rbrew_write32(cpu->mem, _t9, cpu->r[12]);
|
|
/* 02923AE4 */ cpu->r[29] = 0x00000000u;
|
|
/* 02923AE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 02923AEC */ cpu->r[28] = 0x101D0000u;
|
|
/* 02923AF0 */ _t10 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02923AF0 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 02923AF4 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02923AF4 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02923AF4 */ if (_t12) goto L_02923B24; else goto L_02923AF8;
|
|
L_02923AF8: ; // 0x2923af8
|
|
/* 02923AF8 */ _t13 = cpu->r[30] + 0x0000016Cu;
|
|
/* 02923AF8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02923AFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02923B00 */ _t14 = cpu->r[28] + 0xFFFF98F0u;
|
|
/* 02923B00 */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02923B04 */ Gambit_fn_02826B90(cpu);
|
|
/* 02923B08 */ _t15 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02923B08 */ cpu->r[11] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02923B0C */ _t16 = cpu->r[11] + 0x0000003Cu;
|
|
/* 02923B0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02923B10 */ cpu->ctr = cpu->r[0];
|
|
/* 02923B14 */ _t17 = cpu->r[30] + 0x00000170u;
|
|
/* 02923B14 */ cpu->r[4] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02923B18 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02923B1C */ _t18 = cpu->r[30] + 0x0000016Cu;
|
|
/* 02923B1C */ rbrew_write32(cpu->mem, _t18, cpu->r[29]);
|
|
/* 02923B20 */ _t19 = cpu->r[30] + 0x00000170u;
|
|
/* 02923B20 */ rbrew_write32(cpu->mem, _t19, cpu->r[29]);
|
|
L_02923B24: ; // 0x2923b24
|
|
/* 02923B24 */ _t20 = cpu->r[30] + 0x00000168u;
|
|
/* 02923B24 */ cpu->r[4] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02923B28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 02923B2C */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02923B2C */ _t22 = _t21 & 0x00000001u;
|
|
/* 02923B2C */ if (_t22) goto L_02923B5C; else goto L_02923B30;
|
|
L_02923B30: ; // 0x2923b30
|
|
/* 02923B30 */ _t23 = cpu->r[30] + 0x00000164u;
|
|
/* 02923B30 */ cpu->r[12] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02923B34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02923B38 */ _t24 = cpu->r[28] + 0xFFFF98F0u;
|
|
/* 02923B38 */ cpu->r[3] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02923B3C */ Gambit_fn_02826B90(cpu);
|
|
/* 02923B40 */ _t25 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02923B40 */ cpu->r[12] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02923B44 */ _t26 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02923B44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02923B48 */ cpu->ctr = cpu->r[0];
|
|
/* 02923B4C */ _t27 = cpu->r[30] + 0x00000168u;
|
|
/* 02923B4C */ cpu->r[4] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02923B50 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02923B54 */ _t28 = cpu->r[30] + 0x00000164u;
|
|
/* 02923B54 */ rbrew_write32(cpu->mem, _t28, cpu->r[29]);
|
|
/* 02923B58 */ _t29 = cpu->r[30] + 0x00000168u;
|
|
/* 02923B58 */ rbrew_write32(cpu->mem, _t29, cpu->r[29]);
|
|
L_02923B5C: ; // 0x2923b5c
|
|
/* 02923B5C */ cpu->r[3] = cpu->r[30];
|
|
/* 02923B60 */ cpu->r[4] = 0x00000000u;
|
|
/* 02923B64 */ Gambit_fn_0291E1F4(cpu);
|
|
/* 02923B68 */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02923B68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02923B6C */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02923B6C */ _t31 = _t30 & 0x00000001u;
|
|
/* 02923B6C */ if (_t31) goto L_02923B78; else goto L_02923B70;
|
|
L_02923B70: ; // 0x2923b70
|
|
/* 02923B70 */ cpu->r[3] = cpu->r[30];
|
|
/* 02923B74 */ Gambit_fn_02801BB0(cpu);
|
|
L_02923B78: ; // 0x2923b78
|
|
/* 02923B78 */ _t32 = cpu->r[1] + 0x00000008u;
|
|
/* 02923B78 */ cpu->r[28] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02923B7C */ _t33 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02923B7C */ cpu->r[29] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02923B80 */ _t34 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02923B80 */ cpu->r[0] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02923B84 */ _t35 = cpu->r[1] + 0x00000010u;
|
|
/* 02923B84 */ cpu->r[30] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02923B88 */ cpu->lr = cpu->r[0];
|
|
/* 02923B8C */ _t36 = cpu->r[1] + 0x00000014u;
|
|
/* 02923B8C */ cpu->r[31] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02923B90 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02923B94 */ return;
|
|
}
|
|
|
|
// fn_02923AA8 @ 0x2923aa8
|
|
void Gambit_fn_02923AA8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36;
|
|
|
|
L_02923AA8: ; // 0x2923aa8
|
|
/* 02923AA8 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02923AA8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02923AA8 */ cpu->r[1] = _t0;
|
|
/* 02923AAC */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02923AAC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02923AB0 */ cpu->r[31] = cpu->r[4];
|
|
/* 02923AB4 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 02923AB4 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02923AB8 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 02923AB8 */ rbrew_write32(cpu->mem, _t3, cpu->r[28]);
|
|
/* 02923ABC */ cpu->r[30] = cpu->r[3];
|
|
/* 02923ABC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02923AC0 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02923AC0 */ rbrew_write32(cpu->mem, _t4, cpu->r[29]);
|
|
/* 02923AC4 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02923AC4 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02923AC8 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02923AC8 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02923AC8 */ if (_t7) goto L_02923B78; else goto L_02923ACC;
|
|
L_02923ACC: ; // 0x2923acc
|
|
/* 02923ACC */ cpu->r[12] = 0x10140000u;
|
|
/* 02923AD0 */ cpu->r[0] = 0x10140000u;
|
|
/* 02923AD4 */ _t8 = cpu->r[30] + 0x00000170u;
|
|
/* 02923AD4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02923AD8 */ cpu->r[12] = cpu->r[12] + 0x00003E84u;
|
|
/* 02923ADC */ cpu->r[0] = cpu->r[0] + 0x00003B6Cu;
|
|
/* 02923AE0 */ _t9 = cpu->r[30] + 0x00000018u;
|
|
/* 02923AE0 */ rbrew_write32(cpu->mem, _t9, cpu->r[12]);
|
|
/* 02923AE4 */ cpu->r[29] = 0x00000000u;
|
|
/* 02923AE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 02923AEC */ cpu->r[28] = 0x101D0000u;
|
|
/* 02923AF0 */ _t10 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02923AF0 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 02923AF4 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02923AF4 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02923AF4 */ if (_t12) goto L_02923B24; else goto L_02923AF8;
|
|
L_02923AF8: ; // 0x2923af8
|
|
/* 02923AF8 */ _t13 = cpu->r[30] + 0x0000016Cu;
|
|
/* 02923AF8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02923AFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02923B00 */ _t14 = cpu->r[28] + 0xFFFF98F0u;
|
|
/* 02923B00 */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02923B04 */ Gambit_fn_02826B90(cpu);
|
|
/* 02923B08 */ _t15 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02923B08 */ cpu->r[11] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02923B0C */ _t16 = cpu->r[11] + 0x0000003Cu;
|
|
/* 02923B0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02923B10 */ cpu->ctr = cpu->r[0];
|
|
/* 02923B14 */ _t17 = cpu->r[30] + 0x00000170u;
|
|
/* 02923B14 */ cpu->r[4] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02923B18 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02923B1C */ _t18 = cpu->r[30] + 0x0000016Cu;
|
|
/* 02923B1C */ rbrew_write32(cpu->mem, _t18, cpu->r[29]);
|
|
/* 02923B20 */ _t19 = cpu->r[30] + 0x00000170u;
|
|
/* 02923B20 */ rbrew_write32(cpu->mem, _t19, cpu->r[29]);
|
|
L_02923B24: ; // 0x2923b24
|
|
/* 02923B24 */ _t20 = cpu->r[30] + 0x00000168u;
|
|
/* 02923B24 */ cpu->r[4] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02923B28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 02923B2C */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02923B2C */ _t22 = _t21 & 0x00000001u;
|
|
/* 02923B2C */ if (_t22) goto L_02923B5C; else goto L_02923B30;
|
|
L_02923B30: ; // 0x2923b30
|
|
/* 02923B30 */ _t23 = cpu->r[30] + 0x00000164u;
|
|
/* 02923B30 */ cpu->r[12] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02923B34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02923B38 */ _t24 = cpu->r[28] + 0xFFFF98F0u;
|
|
/* 02923B38 */ cpu->r[3] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02923B3C */ Gambit_fn_02826B90(cpu);
|
|
/* 02923B40 */ _t25 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02923B40 */ cpu->r[12] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02923B44 */ _t26 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02923B44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02923B48 */ cpu->ctr = cpu->r[0];
|
|
/* 02923B4C */ _t27 = cpu->r[30] + 0x00000168u;
|
|
/* 02923B4C */ cpu->r[4] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02923B50 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02923B54 */ _t28 = cpu->r[30] + 0x00000164u;
|
|
/* 02923B54 */ rbrew_write32(cpu->mem, _t28, cpu->r[29]);
|
|
/* 02923B58 */ _t29 = cpu->r[30] + 0x00000168u;
|
|
/* 02923B58 */ rbrew_write32(cpu->mem, _t29, cpu->r[29]);
|
|
L_02923B5C: ; // 0x2923b5c
|
|
/* 02923B5C */ cpu->r[3] = cpu->r[30];
|
|
/* 02923B60 */ cpu->r[4] = 0x00000000u;
|
|
/* 02923B64 */ Gambit_fn_0291E1F4(cpu);
|
|
/* 02923B68 */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02923B68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02923B6C */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02923B6C */ _t31 = _t30 & 0x00000001u;
|
|
/* 02923B6C */ if (_t31) goto L_02923B78; else goto L_02923B70;
|
|
L_02923B70: ; // 0x2923b70
|
|
/* 02923B70 */ cpu->r[3] = cpu->r[30];
|
|
/* 02923B74 */ Gambit_fn_02801BB0(cpu);
|
|
L_02923B78: ; // 0x2923b78
|
|
/* 02923B78 */ _t32 = cpu->r[1] + 0x00000008u;
|
|
/* 02923B78 */ cpu->r[28] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02923B7C */ _t33 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02923B7C */ cpu->r[29] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02923B80 */ _t34 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02923B80 */ cpu->r[0] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02923B84 */ _t35 = cpu->r[1] + 0x00000010u;
|
|
/* 02923B84 */ cpu->r[30] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02923B88 */ cpu->lr = cpu->r[0];
|
|
/* 02923B8C */ _t36 = cpu->r[1] + 0x00000014u;
|
|
/* 02923B8C */ cpu->r[31] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02923B90 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02923B94 */ return;
|
|
}
|
|
|
|
// fn_02923B98 @ 0x2923b98
|
|
void Gambit_fn_02923B98(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _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;
|
|
|
|
L_02923B98: ; // 0x2923b98
|
|
/* 02923B98 */ cpu->r[0] = cpu->lr;
|
|
/* 02923B9C */ _t0 = cpu->r[1] + 0xFFFFFFB8u;
|
|
/* 02923B9C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02923B9C */ cpu->r[1] = _t0;
|
|
/* 02923BA0 */ _t1 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02923BA0 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 02923BA4 */ _t2 = cpu->r[1] + 0x00000044u;
|
|
/* 02923BA4 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02923BA8 */ _t3 = cpu->r[1] + 0x00000040u;
|
|
/* 02923BA8 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 02923BAC */ cpu->r[31] = cpu->r[3];
|
|
/* 02923BAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02923BB0 */ _t4 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02923BB0 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02923BB4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02923BB4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02923BB4 */ if (_t6) goto L_02923BB8; else goto L_02923BC8;
|
|
L_02923BB8: ; // 0x2923bb8
|
|
/* 02923BB8 */ cpu->r[3] = 0x000000D8u;
|
|
/* 02923BBC */ Gambit_fn_02801A78(cpu);
|
|
/* 02923BC0 */ cpu->r[31] = cpu->r[3];
|
|
/* 02923BC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02923BC4 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02923BC4 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02923BC4 */ if (_t8) goto L_02923D40; else goto L_02923BC8;
|
|
L_02923BC8: ; // 0x2923bc8
|
|
/* 02923BC8 */ cpu->r[3] = cpu->r[31];
|
|
/* 02923BCC */ Gambit_fn_0291E274(cpu);
|
|
/* 02923BD0 */ cpu->r[8] = 0x10140000u;
|
|
/* 02923BD4 */ cpu->r[9] = 0x10140000u;
|
|
/* 02923BD8 */ cpu->r[8] = cpu->r[8] + 0x00003BA4u;
|
|
/* 02923BDC */ cpu->r[9] = cpu->r[9] + 0x00003A8Cu;
|
|
/* 02923BE0 */ cpu->r[11] = 0x10140000u;
|
|
/* 02923BE4 */ _t9 = cpu->r[31] + 0x00000018u;
|
|
/* 02923BE4 */ rbrew_write32(cpu->mem, _t9, cpu->r[8]);
|
|
/* 02923BE8 */ cpu->r[29] = 0x10140000u;
|
|
/* 02923BEC */ cpu->r[11] = cpu->r[11] + 0x000036CCu;
|
|
/* 02923BF0 */ cpu->r[29] = cpu->r[29] + 0x000033A0u;
|
|
/* 02923BF4 */ cpu->r[10] = 0x10140000u;
|
|
/* 02923BF8 */ _t10 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02923BF8 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 02923BFC */ cpu->r[10] = cpu->r[10] + 0x000036ACu;
|
|
/* 02923C00 */ _t11 = cpu->r[1] + 0x00000010u;
|
|
/* 02923C00 */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 02923C04 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02923C04 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 02923C08 */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 02923C08 */ rbrew_write32(cpu->mem, _t13, cpu->r[29]);
|
|
/* 02923C0C */ cpu->r[30] = cpu->r[31] + 0x000000ACu;
|
|
/* 02923C0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02923C10 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02923C10 */ rbrew_write32(cpu->mem, _t14, cpu->r[29]);
|
|
/* 02923C14 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02923C14 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02923C14 */ if (_t16) goto L_02923C18; else goto L_02923C28;
|
|
L_02923C18: ; // 0x2923c18
|
|
/* 02923C18 */ cpu->r[3] = 0x0000001Cu;
|
|
/* 02923C1C */ Gambit_fn_02801A78(cpu);
|
|
/* 02923C20 */ cpu->r[30] = cpu->r[3];
|
|
/* 02923C20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02923C24 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02923C24 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02923C24 */ if (_t18) goto L_02923CC0; else goto L_02923C28;
|
|
L_02923C28: ; // 0x2923c28
|
|
/* 02923C28 */ cpu->r[3] = cpu->r[30];
|
|
/* 02923C2C */ Gambit_fn_0294F7F0(cpu);
|
|
/* 02923C30 */ cpu->r[12] = 0x10140000u;
|
|
/* 02923C34 */ cpu->r[12] = cpu->r[12] + 0x00003588u;
|
|
/* 02923C38 */ cpu->r[3] = cpu->r[30] + 0x0000000Cu;
|
|
/* 02923C38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02923C3C */ _t19 = cpu->r[30] + 0x00000008u;
|
|
/* 02923C3C */ rbrew_write32(cpu->mem, _t19, cpu->r[12]);
|
|
/* 02923C40 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02923C40 */ _t21 = _t20 & 0x00000001u;
|
|
/* 02923C40 */ if (_t21) goto L_02923C44; else goto L_02923C54;
|
|
L_02923C44: ; // 0x2923c44
|
|
/* 02923C44 */ cpu->r[3] = 0x00000010u;
|
|
/* 02923C48 */ Gambit_fn_02801A78(cpu);
|
|
/* 02923C4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02923C50 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02923C50 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02923C50 */ if (_t23) goto L_02923C74; else goto L_02923C54;
|
|
L_02923C54: ; // 0x2923c54
|
|
/* 02923C54 */ cpu->r[11] = 0x10110000u;
|
|
/* 02923C58 */ _t24 = cpu->r[11] + 0x00004468u;
|
|
/* 02923C58 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 02923C5C */ _t25 = cpu->r[3] + 0x00000000u;
|
|
/* 02923C5C */ rbrew_write_f32(cpu->mem, _t25, cpu->f[0]);
|
|
/* 02923C60 */ _t26 = cpu->r[3] + 0x00000004u;
|
|
/* 02923C60 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[0]);
|
|
/* 02923C64 */ cpu->r[8] = 0x10110000u;
|
|
/* 02923C68 */ _t27 = cpu->r[3] + 0x00000008u;
|
|
/* 02923C68 */ rbrew_write_f32(cpu->mem, _t27, cpu->f[0]);
|
|
/* 02923C6C */ _t28 = cpu->r[8] + 0x00004464u;
|
|
/* 02923C6C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 02923C70 */ _t29 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02923C70 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[0]);
|
|
L_02923C74: ; // 0x2923c74
|
|
/* 02923C74 */ cpu->r[0] = 0x10140000u;
|
|
/* 02923C78 */ _t30 = cpu->r[1] + 0x00000034u;
|
|
/* 02923C78 */ rbrew_write32(cpu->mem, _t30, cpu->r[29]);
|
|
/* 02923C7C */ cpu->r[3] = cpu->r[30];
|
|
/* 02923C80 */ cpu->r[0] = cpu->r[0] + 0x0000339Fu;
|
|
/* 02923C84 */ cpu->r[7] = cpu->r[31];
|
|
/* 02923C88 */ cpu->r[6] = cpu->r[1] + 0x00000030u;
|
|
/* 02923C8C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02923C90 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 02923C94 */ _t31 = cpu->r[1] + 0x00000030u;
|
|
/* 02923C94 */ rbrew_write32(cpu->mem, _t31, cpu->r[0]);
|
|
/* 02923C98 */ Gambit_fn_0294F794(cpu);
|
|
/* 02923C9C */ cpu->r[9] = 0x101F0000u;
|
|
/* 02923CA0 */ _t32 = cpu->r[9] + 0x00005BCCu;
|
|
/* 02923CA0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02923CA0 */ cpu->r[9] = _t32;
|
|
/* 02923CA4 */ _t33 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02923CA4 */ rbrew_write32(cpu->mem, _t33, cpu->r[11]);
|
|
/* 02923CA8 */ _t34 = cpu->r[9] + 0x00000004u;
|
|
/* 02923CA8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02923CAC */ _t35 = cpu->r[30] + 0x00000010u;
|
|
/* 02923CAC */ rbrew_write32(cpu->mem, _t35, cpu->r[12]);
|
|
/* 02923CB0 */ _t36 = cpu->r[9] + 0x00000008u;
|
|
/* 02923CB0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02923CB4 */ _t37 = cpu->r[30] + 0x00000014u;
|
|
/* 02923CB4 */ rbrew_write32(cpu->mem, _t37, cpu->r[0]);
|
|
/* 02923CB8 */ _t38 = cpu->r[9] + 0x0000000Cu;
|
|
/* 02923CB8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02923CBC */ _t39 = cpu->r[30] + 0x00000018u;
|
|
/* 02923CBC */ rbrew_write32(cpu->mem, _t39, cpu->r[7]);
|
|
L_02923CC0: ; // 0x2923cc0
|
|
/* 02923CC0 */ cpu->r[0] = 0x10140000u;
|
|
/* 02923CC4 */ _t40 = cpu->r[1] + 0x00000024u;
|
|
/* 02923CC4 */ rbrew_write32(cpu->mem, _t40, cpu->r[29]);
|
|
/* 02923CC8 */ cpu->r[0] = cpu->r[0] + 0x000036E0u;
|
|
/* 02923CCC */ _t41 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02923CCC */ rbrew_write32(cpu->mem, _t41, cpu->r[29]);
|
|
/* 02923CD0 */ cpu->r[9] = 0x10140000u;
|
|
/* 02923CD4 */ _t42 = cpu->r[1] + 0x00000020u;
|
|
/* 02923CD4 */ rbrew_write32(cpu->mem, _t42, cpu->r[0]);
|
|
/* 02923CD8 */ cpu->r[9] = cpu->r[9] + 0x000036C0u;
|
|
/* 02923CDC */ _t43 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02923CDC */ rbrew_write32(cpu->mem, _t43, cpu->r[29]);
|
|
/* 02923CE0 */ cpu->r[12] = 0x10140000u;
|
|
/* 02923CE4 */ _t44 = cpu->r[1] + 0x00000018u;
|
|
/* 02923CE4 */ rbrew_write32(cpu->mem, _t44, cpu->r[9]);
|
|
/* 02923CE8 */ cpu->r[12] = cpu->r[12] + 0x000036B4u;
|
|
/* 02923CEC */ cpu->r[30] = cpu->r[31] + 0x000000C8u;
|
|
/* 02923CEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02923CF0 */ _t45 = cpu->r[1] + 0x00000028u;
|
|
/* 02923CF0 */ rbrew_write32(cpu->mem, _t45, cpu->r[12]);
|
|
/* 02923CF4 */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02923CF4 */ _t47 = _t46 & 0x00000001u;
|
|
/* 02923CF4 */ if (_t47) goto L_02923CF8; else goto L_02923D08;
|
|
L_02923CF8: ; // 0x2923cf8
|
|
/* 02923CF8 */ cpu->r[3] = 0x00000010u;
|
|
/* 02923CFC */ Gambit_fn_02801A78(cpu);
|
|
/* 02923D00 */ cpu->r[30] = cpu->r[3];
|
|
/* 02923D00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02923D04 */ _t48 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02923D04 */ _t49 = _t48 & 0x00000001u;
|
|
/* 02923D04 */ if (_t49) goto L_02923D40; else goto L_02923D08;
|
|
L_02923D08: ; // 0x2923d08
|
|
/* 02923D08 */ cpu->r[3] = cpu->r[30];
|
|
/* 02923D0C */ Gambit_fn_0294F7F0(cpu);
|
|
/* 02923D10 */ cpu->r[0] = 0x10140000u;
|
|
/* 02923D14 */ cpu->r[3] = cpu->r[30];
|
|
/* 02923D18 */ cpu->r[7] = cpu->r[31];
|
|
/* 02923D1C */ cpu->r[0] = cpu->r[0] + 0x00003468u;
|
|
/* 02923D20 */ cpu->r[6] = cpu->r[1] + 0x00000028u;
|
|
/* 02923D24 */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 02923D28 */ cpu->r[5] = cpu->r[1] + 0x00000020u;
|
|
/* 02923D2C */ _t50 = cpu->r[30] + 0x00000008u;
|
|
/* 02923D2C */ rbrew_write32(cpu->mem, _t50, cpu->r[0]);
|
|
/* 02923D30 */ Gambit_fn_0294F794(cpu);
|
|
/* 02923D34 */ cpu->r[10] = 0x10140000u;
|
|
/* 02923D38 */ _t51 = cpu->r[10] + 0x000036A8u;
|
|
/* 02923D38 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 02923D3C */ _t52 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02923D3C */ rbrew_write_f32(cpu->mem, _t52, cpu->f[0]);
|
|
L_02923D40: ; // 0x2923d40
|
|
/* 02923D40 */ _t53 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02923D40 */ cpu->r[29] = rbrew_read32(cpu->mem, _t53);
|
|
/* 02923D44 */ _t54 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02923D44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t54);
|
|
/* 02923D48 */ cpu->r[3] = cpu->r[31];
|
|
/* 02923D4C */ _t55 = cpu->r[1] + 0x00000040u;
|
|
/* 02923D4C */ cpu->r[30] = rbrew_read32(cpu->mem, _t55);
|
|
/* 02923D50 */ cpu->lr = cpu->r[0];
|
|
/* 02923D54 */ _t56 = cpu->r[1] + 0x00000044u;
|
|
/* 02923D54 */ cpu->r[31] = rbrew_read32(cpu->mem, _t56);
|
|
/* 02923D58 */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 02923D5C */ return;
|
|
}
|
|
|
|
// fn_02923B9C @ 0x2923b9c
|
|
void Gambit_fn_02923B9C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _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;
|
|
|
|
L_02923B9C: ; // 0x2923b9c
|
|
/* 02923B9C */ _t0 = cpu->r[1] + 0xFFFFFFB8u;
|
|
/* 02923B9C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02923B9C */ cpu->r[1] = _t0;
|
|
/* 02923BA0 */ _t1 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02923BA0 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 02923BA4 */ _t2 = cpu->r[1] + 0x00000044u;
|
|
/* 02923BA4 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02923BA8 */ _t3 = cpu->r[1] + 0x00000040u;
|
|
/* 02923BA8 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 02923BAC */ cpu->r[31] = cpu->r[3];
|
|
/* 02923BAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02923BB0 */ _t4 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02923BB0 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02923BB4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02923BB4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02923BB4 */ if (_t6) goto L_02923BB8; else goto L_02923BC8;
|
|
L_02923BB8: ; // 0x2923bb8
|
|
/* 02923BB8 */ cpu->r[3] = 0x000000D8u;
|
|
/* 02923BBC */ Gambit_fn_02801A78(cpu);
|
|
/* 02923BC0 */ cpu->r[31] = cpu->r[3];
|
|
/* 02923BC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02923BC4 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02923BC4 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02923BC4 */ if (_t8) goto L_02923D40; else goto L_02923BC8;
|
|
L_02923BC8: ; // 0x2923bc8
|
|
/* 02923BC8 */ cpu->r[3] = cpu->r[31];
|
|
/* 02923BCC */ Gambit_fn_0291E274(cpu);
|
|
/* 02923BD0 */ cpu->r[8] = 0x10140000u;
|
|
/* 02923BD4 */ cpu->r[9] = 0x10140000u;
|
|
/* 02923BD8 */ cpu->r[8] = cpu->r[8] + 0x00003BA4u;
|
|
/* 02923BDC */ cpu->r[9] = cpu->r[9] + 0x00003A8Cu;
|
|
/* 02923BE0 */ cpu->r[11] = 0x10140000u;
|
|
/* 02923BE4 */ _t9 = cpu->r[31] + 0x00000018u;
|
|
/* 02923BE4 */ rbrew_write32(cpu->mem, _t9, cpu->r[8]);
|
|
/* 02923BE8 */ cpu->r[29] = 0x10140000u;
|
|
/* 02923BEC */ cpu->r[11] = cpu->r[11] + 0x000036CCu;
|
|
/* 02923BF0 */ cpu->r[29] = cpu->r[29] + 0x000033A0u;
|
|
/* 02923BF4 */ cpu->r[10] = 0x10140000u;
|
|
/* 02923BF8 */ _t10 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02923BF8 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 02923BFC */ cpu->r[10] = cpu->r[10] + 0x000036ACu;
|
|
/* 02923C00 */ _t11 = cpu->r[1] + 0x00000010u;
|
|
/* 02923C00 */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 02923C04 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02923C04 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 02923C08 */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 02923C08 */ rbrew_write32(cpu->mem, _t13, cpu->r[29]);
|
|
/* 02923C0C */ cpu->r[30] = cpu->r[31] + 0x000000ACu;
|
|
/* 02923C0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02923C10 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02923C10 */ rbrew_write32(cpu->mem, _t14, cpu->r[29]);
|
|
/* 02923C14 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02923C14 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02923C14 */ if (_t16) goto L_02923C18; else goto L_02923C28;
|
|
L_02923C18: ; // 0x2923c18
|
|
/* 02923C18 */ cpu->r[3] = 0x0000001Cu;
|
|
/* 02923C1C */ Gambit_fn_02801A78(cpu);
|
|
/* 02923C20 */ cpu->r[30] = cpu->r[3];
|
|
/* 02923C20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02923C24 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02923C24 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02923C24 */ if (_t18) goto L_02923CC0; else goto L_02923C28;
|
|
L_02923C28: ; // 0x2923c28
|
|
/* 02923C28 */ cpu->r[3] = cpu->r[30];
|
|
/* 02923C2C */ Gambit_fn_0294F7F0(cpu);
|
|
/* 02923C30 */ cpu->r[12] = 0x10140000u;
|
|
/* 02923C34 */ cpu->r[12] = cpu->r[12] + 0x00003588u;
|
|
/* 02923C38 */ cpu->r[3] = cpu->r[30] + 0x0000000Cu;
|
|
/* 02923C38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02923C3C */ _t19 = cpu->r[30] + 0x00000008u;
|
|
/* 02923C3C */ rbrew_write32(cpu->mem, _t19, cpu->r[12]);
|
|
/* 02923C40 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02923C40 */ _t21 = _t20 & 0x00000001u;
|
|
/* 02923C40 */ if (_t21) goto L_02923C44; else goto L_02923C54;
|
|
L_02923C44: ; // 0x2923c44
|
|
/* 02923C44 */ cpu->r[3] = 0x00000010u;
|
|
/* 02923C48 */ Gambit_fn_02801A78(cpu);
|
|
/* 02923C4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02923C50 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02923C50 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02923C50 */ if (_t23) goto L_02923C74; else goto L_02923C54;
|
|
L_02923C54: ; // 0x2923c54
|
|
/* 02923C54 */ cpu->r[11] = 0x10110000u;
|
|
/* 02923C58 */ _t24 = cpu->r[11] + 0x00004468u;
|
|
/* 02923C58 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 02923C5C */ _t25 = cpu->r[3] + 0x00000000u;
|
|
/* 02923C5C */ rbrew_write_f32(cpu->mem, _t25, cpu->f[0]);
|
|
/* 02923C60 */ _t26 = cpu->r[3] + 0x00000004u;
|
|
/* 02923C60 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[0]);
|
|
/* 02923C64 */ cpu->r[8] = 0x10110000u;
|
|
/* 02923C68 */ _t27 = cpu->r[3] + 0x00000008u;
|
|
/* 02923C68 */ rbrew_write_f32(cpu->mem, _t27, cpu->f[0]);
|
|
/* 02923C6C */ _t28 = cpu->r[8] + 0x00004464u;
|
|
/* 02923C6C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 02923C70 */ _t29 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02923C70 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[0]);
|
|
L_02923C74: ; // 0x2923c74
|
|
/* 02923C74 */ cpu->r[0] = 0x10140000u;
|
|
/* 02923C78 */ _t30 = cpu->r[1] + 0x00000034u;
|
|
/* 02923C78 */ rbrew_write32(cpu->mem, _t30, cpu->r[29]);
|
|
/* 02923C7C */ cpu->r[3] = cpu->r[30];
|
|
/* 02923C80 */ cpu->r[0] = cpu->r[0] + 0x0000339Fu;
|
|
/* 02923C84 */ cpu->r[7] = cpu->r[31];
|
|
/* 02923C88 */ cpu->r[6] = cpu->r[1] + 0x00000030u;
|
|
/* 02923C8C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02923C90 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 02923C94 */ _t31 = cpu->r[1] + 0x00000030u;
|
|
/* 02923C94 */ rbrew_write32(cpu->mem, _t31, cpu->r[0]);
|
|
/* 02923C98 */ Gambit_fn_0294F794(cpu);
|
|
/* 02923C9C */ cpu->r[9] = 0x101F0000u;
|
|
/* 02923CA0 */ _t32 = cpu->r[9] + 0x00005BCCu;
|
|
/* 02923CA0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02923CA0 */ cpu->r[9] = _t32;
|
|
/* 02923CA4 */ _t33 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02923CA4 */ rbrew_write32(cpu->mem, _t33, cpu->r[11]);
|
|
/* 02923CA8 */ _t34 = cpu->r[9] + 0x00000004u;
|
|
/* 02923CA8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02923CAC */ _t35 = cpu->r[30] + 0x00000010u;
|
|
/* 02923CAC */ rbrew_write32(cpu->mem, _t35, cpu->r[12]);
|
|
/* 02923CB0 */ _t36 = cpu->r[9] + 0x00000008u;
|
|
/* 02923CB0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02923CB4 */ _t37 = cpu->r[30] + 0x00000014u;
|
|
/* 02923CB4 */ rbrew_write32(cpu->mem, _t37, cpu->r[0]);
|
|
/* 02923CB8 */ _t38 = cpu->r[9] + 0x0000000Cu;
|
|
/* 02923CB8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02923CBC */ _t39 = cpu->r[30] + 0x00000018u;
|
|
/* 02923CBC */ rbrew_write32(cpu->mem, _t39, cpu->r[7]);
|
|
L_02923CC0: ; // 0x2923cc0
|
|
/* 02923CC0 */ cpu->r[0] = 0x10140000u;
|
|
/* 02923CC4 */ _t40 = cpu->r[1] + 0x00000024u;
|
|
/* 02923CC4 */ rbrew_write32(cpu->mem, _t40, cpu->r[29]);
|
|
/* 02923CC8 */ cpu->r[0] = cpu->r[0] + 0x000036E0u;
|
|
/* 02923CCC */ _t41 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02923CCC */ rbrew_write32(cpu->mem, _t41, cpu->r[29]);
|
|
/* 02923CD0 */ cpu->r[9] = 0x10140000u;
|
|
/* 02923CD4 */ _t42 = cpu->r[1] + 0x00000020u;
|
|
/* 02923CD4 */ rbrew_write32(cpu->mem, _t42, cpu->r[0]);
|
|
/* 02923CD8 */ cpu->r[9] = cpu->r[9] + 0x000036C0u;
|
|
/* 02923CDC */ _t43 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02923CDC */ rbrew_write32(cpu->mem, _t43, cpu->r[29]);
|
|
/* 02923CE0 */ cpu->r[12] = 0x10140000u;
|
|
/* 02923CE4 */ _t44 = cpu->r[1] + 0x00000018u;
|
|
/* 02923CE4 */ rbrew_write32(cpu->mem, _t44, cpu->r[9]);
|
|
/* 02923CE8 */ cpu->r[12] = cpu->r[12] + 0x000036B4u;
|
|
/* 02923CEC */ cpu->r[30] = cpu->r[31] + 0x000000C8u;
|
|
/* 02923CEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02923CF0 */ _t45 = cpu->r[1] + 0x00000028u;
|
|
/* 02923CF0 */ rbrew_write32(cpu->mem, _t45, cpu->r[12]);
|
|
/* 02923CF4 */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02923CF4 */ _t47 = _t46 & 0x00000001u;
|
|
/* 02923CF4 */ if (_t47) goto L_02923CF8; else goto L_02923D08;
|
|
L_02923CF8: ; // 0x2923cf8
|
|
/* 02923CF8 */ cpu->r[3] = 0x00000010u;
|
|
/* 02923CFC */ Gambit_fn_02801A78(cpu);
|
|
/* 02923D00 */ cpu->r[30] = cpu->r[3];
|
|
/* 02923D00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02923D04 */ _t48 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02923D04 */ _t49 = _t48 & 0x00000001u;
|
|
/* 02923D04 */ if (_t49) goto L_02923D40; else goto L_02923D08;
|
|
L_02923D08: ; // 0x2923d08
|
|
/* 02923D08 */ cpu->r[3] = cpu->r[30];
|
|
/* 02923D0C */ Gambit_fn_0294F7F0(cpu);
|
|
/* 02923D10 */ cpu->r[0] = 0x10140000u;
|
|
/* 02923D14 */ cpu->r[3] = cpu->r[30];
|
|
/* 02923D18 */ cpu->r[7] = cpu->r[31];
|
|
/* 02923D1C */ cpu->r[0] = cpu->r[0] + 0x00003468u;
|
|
/* 02923D20 */ cpu->r[6] = cpu->r[1] + 0x00000028u;
|
|
/* 02923D24 */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 02923D28 */ cpu->r[5] = cpu->r[1] + 0x00000020u;
|
|
/* 02923D2C */ _t50 = cpu->r[30] + 0x00000008u;
|
|
/* 02923D2C */ rbrew_write32(cpu->mem, _t50, cpu->r[0]);
|
|
/* 02923D30 */ Gambit_fn_0294F794(cpu);
|
|
/* 02923D34 */ cpu->r[10] = 0x10140000u;
|
|
/* 02923D38 */ _t51 = cpu->r[10] + 0x000036A8u;
|
|
/* 02923D38 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 02923D3C */ _t52 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02923D3C */ rbrew_write_f32(cpu->mem, _t52, cpu->f[0]);
|
|
L_02923D40: ; // 0x2923d40
|
|
/* 02923D40 */ _t53 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02923D40 */ cpu->r[29] = rbrew_read32(cpu->mem, _t53);
|
|
/* 02923D44 */ _t54 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02923D44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t54);
|
|
/* 02923D48 */ cpu->r[3] = cpu->r[31];
|
|
/* 02923D4C */ _t55 = cpu->r[1] + 0x00000040u;
|
|
/* 02923D4C */ cpu->r[30] = rbrew_read32(cpu->mem, _t55);
|
|
/* 02923D50 */ cpu->lr = cpu->r[0];
|
|
/* 02923D54 */ _t56 = cpu->r[1] + 0x00000044u;
|
|
/* 02923D54 */ cpu->r[31] = rbrew_read32(cpu->mem, _t56);
|
|
/* 02923D58 */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 02923D5C */ return;
|
|
}
|
|
|
|
// fn_02923D60 @ 0x2923d60
|
|
void Gambit_fn_02923D60(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _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_02923D60: ; // 0x2923d60
|
|
/* 02923D60 */ _t0 = cpu->r[1] + 0xFFFFFF48u;
|
|
/* 02923D60 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02923D60 */ cpu->r[1] = _t0;
|
|
/* 02923D64 */ _t1 = cpu->r[1] + 0x000000A8u;
|
|
/* 02923D64 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 02923D68 */ cpu->r[0] = cpu->lr;
|
|
/* 02923D6C */ /* nop */
|
|
/* 02923D70 */ /* nop */
|
|
/* 02923D74 */ _t2 = cpu->r[1] + 0x000000B0u;
|
|
/* 02923D74 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 02923D78 */ cpu->r[31] = cpu->r[3];
|
|
/* 02923D78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02923D7C */ _t3 = cpu->r[1] + 0x000000BCu;
|
|
/* 02923D7C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02923D80 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02923D80 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02923D80 */ if (_t5) goto L_02923D84; else goto L_02923D94;
|
|
L_02923D84: ; // 0x2923d84
|
|
/* 02923D84 */ cpu->r[3] = 0x00000114u;
|
|
/* 02923D88 */ Gambit_fn_02801A78(cpu);
|
|
/* 02923D8C */ cpu->r[31] = cpu->r[3];
|
|
/* 02923D8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02923D90 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02923D90 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02923D90 */ if (_t7) goto L_029240C4; else goto L_02923D94;
|
|
L_02923D94: ; // 0x2923d94
|
|
/* 02923D94 */ cpu->r[3] = cpu->r[31];
|
|
/* 02923D98 */ Gambit_fn_0291E274(cpu);
|
|
/* 02923D9C */ cpu->r[8] = 0x10140000u;
|
|
/* 02923DA0 */ cpu->r[7] = 0x10140000u;
|
|
/* 02923DA4 */ cpu->r[0] = 0x10140000u;
|
|
/* 02923DA8 */ cpu->r[8] = cpu->r[8] + 0x00003C5Cu;
|
|
/* 02923DAC */ _t8 = cpu->r[7] + 0x000036F0u;
|
|
/* 02923DAC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 02923DB0 */ cpu->r[0] = cpu->r[0] + 0x00003AC4u;
|
|
/* 02923DB4 */ _t9 = cpu->r[31] + 0x00000018u;
|
|
/* 02923DB4 */ rbrew_write32(cpu->mem, _t9, cpu->r[8]);
|
|
/* 02923DB8 */ cpu->r[6] = 0x10140000u;
|
|
/* 02923DBC */ _t10 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02923DBC */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 02923DC0 */ cpu->r[12] = 0x10140000u;
|
|
/* 02923DC4 */ _t11 = cpu->r[6] + 0x000036F4u;
|
|
/* 02923DC4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 02923DC8 */ cpu->r[25] = 0x10140000u;
|
|
/* 02923DCC */ _t12 = cpu->r[12] + 0x000036A8u;
|
|
/* 02923DCC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 02923DD0 */ cpu->r[25] = cpu->r[25] + 0x000033A0u;
|
|
/* 02923DD4 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 02923DD4 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[11]);
|
|
/* 02923DD8 */ cpu->r[0] = 0x10140000u;
|
|
/* 02923DDC */ _t14 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02923DDC */ rbrew_write32(cpu->mem, _t14, cpu->r[25]);
|
|
/* 02923DE0 */ cpu->r[26] = 0x10140000u;
|
|
/* 02923DE4 */ _t15 = cpu->r[1] + 0x00000010u;
|
|
/* 02923DE4 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[10]);
|
|
/* 02923DE8 */ cpu->r[0] = cpu->r[0] + 0x00003748u;
|
|
/* 02923DEC */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 02923DEC */ rbrew_write_f32(cpu->mem, _t16, cpu->f[31]);
|
|
/* 02923DF0 */ cpu->r[26] = cpu->r[26] + 0x0000339Fu;
|
|
/* 02923DF4 */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02923DF4 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[11]);
|
|
/* 02923DF8 */ _t18 = cpu->r[1] + 0x00000030u;
|
|
/* 02923DF8 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
/* 02923DFC */ cpu->r[10] = 0x10140000u;
|
|
/* 02923E00 */ _t19 = cpu->r[1] + 0x00000034u;
|
|
/* 02923E00 */ rbrew_write32(cpu->mem, _t19, cpu->r[25]);
|
|
/* 02923E04 */ cpu->r[29] = 0x10140000u;
|
|
/* 02923E08 */ cpu->r[10] = cpu->r[10] + 0x0000373Cu;
|
|
/* 02923E0C */ cpu->r[30] = cpu->r[31] + 0x000000ACu;
|
|
/* 02923E0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02923E10 */ cpu->r[29] = cpu->r[29] + 0x00003588u;
|
|
/* 02923E14 */ cpu->r[28] = 0x10110000u;
|
|
/* 02923E18 */ cpu->r[27] = 0x10110000u;
|
|
/* 02923E1C */ _t20 = cpu->r[1] + 0x00000028u;
|
|
/* 02923E1C */ rbrew_write32(cpu->mem, _t20, cpu->r[10]);
|
|
/* 02923E20 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02923E20 */ _t22 = _t21 & 0x00000001u;
|
|
/* 02923E20 */ if (_t22) goto L_02923E24; else goto L_02923E34;
|
|
L_02923E24: ; // 0x2923e24
|
|
/* 02923E24 */ cpu->r[3] = 0x0000001Cu;
|
|
/* 02923E28 */ Gambit_fn_02801A78(cpu);
|
|
/* 02923E2C */ cpu->r[30] = cpu->r[3];
|
|
/* 02923E2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02923E30 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02923E30 */ _t24 = _t23 & 0x00000001u;
|
|
/* 02923E30 */ if (_t24) goto L_02923EB0; else goto L_02923E34;
|
|
L_02923E34: ; // 0x2923e34
|
|
/* 02923E34 */ cpu->r[3] = cpu->r[30];
|
|
/* 02923E38 */ Gambit_fn_0294F7F0(cpu);
|
|
/* 02923E3C */ cpu->r[3] = cpu->r[30] + 0x0000000Cu;
|
|
/* 02923E3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02923E40 */ _t25 = cpu->r[30] + 0x00000008u;
|
|
/* 02923E40 */ rbrew_write32(cpu->mem, _t25, cpu->r[29]);
|
|
/* 02923E44 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02923E44 */ _t27 = _t26 & 0x00000001u;
|
|
/* 02923E44 */ if (_t27) goto L_02923E48; else goto L_02923E58;
|
|
L_02923E48: ; // 0x2923e48
|
|
/* 02923E48 */ cpu->r[3] = 0x00000010u;
|
|
/* 02923E4C */ Gambit_fn_02801A78(cpu);
|
|
/* 02923E50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02923E54 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02923E54 */ _t29 = _t28 & 0x00000001u;
|
|
/* 02923E54 */ if (_t29) goto L_02923E70; else goto L_02923E58;
|
|
L_02923E58: ; // 0x2923e58
|
|
/* 02923E58 */ _t30 = cpu->r[27] + 0x00004468u;
|
|
/* 02923E58 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 02923E5C */ _t31 = cpu->r[3] + 0x00000000u;
|
|
/* 02923E5C */ rbrew_write_f32(cpu->mem, _t31, cpu->f[13]);
|
|
/* 02923E60 */ _t32 = cpu->r[3] + 0x00000004u;
|
|
/* 02923E60 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[13]);
|
|
/* 02923E64 */ _t33 = cpu->r[3] + 0x00000008u;
|
|
/* 02923E64 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[13]);
|
|
/* 02923E68 */ _t34 = cpu->r[28] + 0x00004464u;
|
|
/* 02923E68 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 02923E6C */ _t35 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02923E6C */ rbrew_write_f32(cpu->mem, _t35, cpu->f[9]);
|
|
L_02923E70: ; // 0x2923e70
|
|
/* 02923E70 */ cpu->r[3] = cpu->r[30];
|
|
/* 02923E74 */ cpu->r[7] = cpu->r[31];
|
|
/* 02923E78 */ _t36 = cpu->r[1] + 0x00000070u;
|
|
/* 02923E78 */ rbrew_write32(cpu->mem, _t36, cpu->r[26]);
|
|
/* 02923E7C */ cpu->r[5] = cpu->r[1] + 0x00000030u;
|
|
/* 02923E80 */ cpu->r[4] = cpu->r[1] + 0x00000028u;
|
|
/* 02923E84 */ cpu->r[6] = cpu->r[1] + 0x00000070u;
|
|
/* 02923E88 */ _t37 = cpu->r[1] + 0x00000074u;
|
|
/* 02923E88 */ rbrew_write32(cpu->mem, _t37, cpu->r[25]);
|
|
/* 02923E8C */ Gambit_fn_0294F794(cpu);
|
|
/* 02923E90 */ _t38 = cpu->r[1] + 0x00000008u;
|
|
/* 02923E90 */ cpu->r[0] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02923E94 */ _t39 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02923E94 */ rbrew_write32(cpu->mem, _t39, cpu->r[0]);
|
|
/* 02923E98 */ _t40 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02923E98 */ cpu->r[0] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02923E9C */ _t41 = cpu->r[30] + 0x00000010u;
|
|
/* 02923E9C */ rbrew_write32(cpu->mem, _t41, cpu->r[0]);
|
|
/* 02923EA0 */ _t42 = cpu->r[1] + 0x00000010u;
|
|
/* 02923EA0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02923EA4 */ _t43 = cpu->r[30] + 0x00000014u;
|
|
/* 02923EA4 */ rbrew_write32(cpu->mem, _t43, cpu->r[6]);
|
|
/* 02923EA8 */ _t44 = cpu->r[1] + 0x00000014u;
|
|
/* 02923EA8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t44);
|
|
/* 02923EAC */ _t45 = cpu->r[30] + 0x00000018u;
|
|
/* 02923EAC */ rbrew_write32(cpu->mem, _t45, cpu->r[7]);
|
|
L_02923EB0: ; // 0x2923eb0
|
|
/* 02923EB0 */ _t46 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02923EB0 */ rbrew_write32(cpu->mem, _t46, cpu->r[25]);
|
|
/* 02923EB4 */ cpu->r[6] = 0x10140000u;
|
|
/* 02923EB8 */ cpu->r[8] = 0x10140000u;
|
|
/* 02923EBC */ _t47 = cpu->r[1] + 0x00000024u;
|
|
/* 02923EBC */ rbrew_write_f32(cpu->mem, _t47, cpu->f[31]);
|
|
/* 02923EC0 */ cpu->r[8] = cpu->r[8] + 0x0000370Cu;
|
|
/* 02923EC4 */ _t48 = cpu->r[6] + 0x000036FCu;
|
|
/* 02923EC4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 02923EC8 */ cpu->r[10] = 0x10140000u;
|
|
/* 02923ECC */ _t49 = cpu->r[1] + 0x00000038u;
|
|
/* 02923ECC */ rbrew_write32(cpu->mem, _t49, cpu->r[8]);
|
|
/* 02923ED0 */ cpu->r[8] = 0x10140000u;
|
|
/* 02923ED4 */ _t50 = cpu->r[10] + 0x00003700u;
|
|
/* 02923ED4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t50);
|
|
/* 02923ED8 */ cpu->r[0] = 0x10140000u;
|
|
/* 02923EDC */ _t51 = cpu->r[8] + 0x000036F8u;
|
|
/* 02923EDC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 02923EE0 */ _t52 = cpu->r[1] + 0x00000020u;
|
|
/* 02923EE0 */ rbrew_write_f32(cpu->mem, _t52, cpu->f[0]);
|
|
/* 02923EE4 */ cpu->r[0] = cpu->r[0] + 0x00003758u;
|
|
/* 02923EE8 */ _t53 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02923EE8 */ rbrew_write_f32(cpu->mem, _t53, cpu->f[13]);
|
|
/* 02923EEC */ cpu->r[30] = cpu->r[31] + 0x000000C8u;
|
|
/* 02923EEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02923EF0 */ _t54 = cpu->r[1] + 0x00000040u;
|
|
/* 02923EF0 */ rbrew_write32(cpu->mem, _t54, cpu->r[0]);
|
|
/* 02923EF4 */ _t55 = cpu->r[1] + 0x00000044u;
|
|
/* 02923EF4 */ rbrew_write32(cpu->mem, _t55, cpu->r[25]);
|
|
/* 02923EF8 */ _t56 = cpu->r[1] + 0x00000018u;
|
|
/* 02923EF8 */ rbrew_write_f32(cpu->mem, _t56, cpu->f[12]);
|
|
/* 02923EFC */ _t57 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02923EFC */ _t58 = _t57 & 0x00000001u;
|
|
/* 02923EFC */ if (_t58) goto L_02923F00; else goto L_02923F10;
|
|
L_02923F00: ; // 0x2923f00
|
|
/* 02923F00 */ cpu->r[3] = 0x0000001Cu;
|
|
/* 02923F04 */ Gambit_fn_02801A78(cpu);
|
|
/* 02923F08 */ cpu->r[30] = cpu->r[3];
|
|
/* 02923F08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02923F0C */ _t59 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02923F0C */ _t60 = _t59 & 0x00000001u;
|
|
/* 02923F0C */ if (_t60) goto L_02923F8C; else goto L_02923F10;
|
|
L_02923F10: ; // 0x2923f10
|
|
/* 02923F10 */ cpu->r[3] = cpu->r[30];
|
|
/* 02923F14 */ Gambit_fn_0294F7F0(cpu);
|
|
/* 02923F18 */ cpu->r[3] = cpu->r[30] + 0x0000000Cu;
|
|
/* 02923F18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02923F1C */ _t61 = cpu->r[30] + 0x00000008u;
|
|
/* 02923F1C */ rbrew_write32(cpu->mem, _t61, cpu->r[29]);
|
|
/* 02923F20 */ _t62 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02923F20 */ _t63 = _t62 & 0x00000001u;
|
|
/* 02923F20 */ if (_t63) goto L_02923F24; else goto L_02923F34;
|
|
L_02923F24: ; // 0x2923f24
|
|
/* 02923F24 */ cpu->r[3] = 0x00000010u;
|
|
/* 02923F28 */ Gambit_fn_02801A78(cpu);
|
|
/* 02923F2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02923F30 */ _t64 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02923F30 */ _t65 = _t64 & 0x00000001u;
|
|
/* 02923F30 */ if (_t65) goto L_02923F4C; else goto L_02923F34;
|
|
L_02923F34: ; // 0x2923f34
|
|
/* 02923F34 */ _t66 = cpu->r[27] + 0x00004468u;
|
|
/* 02923F34 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t66);
|
|
/* 02923F38 */ _t67 = cpu->r[3] + 0x00000000u;
|
|
/* 02923F38 */ rbrew_write_f32(cpu->mem, _t67, cpu->f[13]);
|
|
/* 02923F3C */ _t68 = cpu->r[3] + 0x00000004u;
|
|
/* 02923F3C */ rbrew_write_f32(cpu->mem, _t68, cpu->f[13]);
|
|
/* 02923F40 */ _t69 = cpu->r[3] + 0x00000008u;
|
|
/* 02923F40 */ rbrew_write_f32(cpu->mem, _t69, cpu->f[13]);
|
|
/* 02923F44 */ _t70 = cpu->r[28] + 0x00004464u;
|
|
/* 02923F44 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t70);
|
|
/* 02923F48 */ _t71 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02923F48 */ rbrew_write_f32(cpu->mem, _t71, cpu->f[12]);
|
|
L_02923F4C: ; // 0x2923f4c
|
|
/* 02923F4C */ cpu->r[3] = cpu->r[30];
|
|
/* 02923F50 */ cpu->r[7] = cpu->r[31];
|
|
/* 02923F54 */ _t72 = cpu->r[1] + 0x00000078u;
|
|
/* 02923F54 */ rbrew_write32(cpu->mem, _t72, cpu->r[26]);
|
|
/* 02923F58 */ cpu->r[5] = cpu->r[1] + 0x00000040u;
|
|
/* 02923F5C */ cpu->r[4] = cpu->r[1] + 0x00000038u;
|
|
/* 02923F60 */ cpu->r[6] = cpu->r[1] + 0x00000078u;
|
|
/* 02923F64 */ _t73 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02923F64 */ rbrew_write32(cpu->mem, _t73, cpu->r[25]);
|
|
/* 02923F68 */ Gambit_fn_0294F794(cpu);
|
|
/* 02923F6C */ _t74 = cpu->r[1] + 0x00000018u;
|
|
/* 02923F6C */ cpu->r[11] = rbrew_read32(cpu->mem, _t74);
|
|
/* 02923F70 */ _t75 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02923F70 */ rbrew_write32(cpu->mem, _t75, cpu->r[11]);
|
|
/* 02923F74 */ _t76 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02923F74 */ cpu->r[12] = rbrew_read32(cpu->mem, _t76);
|
|
/* 02923F78 */ _t77 = cpu->r[30] + 0x00000010u;
|
|
/* 02923F78 */ rbrew_write32(cpu->mem, _t77, cpu->r[12]);
|
|
/* 02923F7C */ _t78 = cpu->r[1] + 0x00000020u;
|
|
/* 02923F7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t78);
|
|
/* 02923F80 */ _t79 = cpu->r[30] + 0x00000014u;
|
|
/* 02923F80 */ rbrew_write32(cpu->mem, _t79, cpu->r[0]);
|
|
/* 02923F84 */ _t80 = cpu->r[1] + 0x00000024u;
|
|
/* 02923F84 */ cpu->r[5] = rbrew_read32(cpu->mem, _t80);
|
|
/* 02923F88 */ _t81 = cpu->r[30] + 0x00000018u;
|
|
/* 02923F88 */ rbrew_write32(cpu->mem, _t81, cpu->r[5]);
|
|
L_02923F8C: ; // 0x2923f8c
|
|
/* 02923F8C */ cpu->r[7] = 0x10140000u;
|
|
/* 02923F90 */ _t82 = cpu->r[1] + 0x00000054u;
|
|
/* 02923F90 */ rbrew_write32(cpu->mem, _t82, cpu->r[25]);
|
|
/* 02923F94 */ cpu->r[7] = cpu->r[7] + 0x0000376Cu;
|
|
/* 02923F98 */ _t83 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02923F98 */ rbrew_write32(cpu->mem, _t83, cpu->r[25]);
|
|
/* 02923F9C */ cpu->r[6] = 0x10140000u;
|
|
/* 02923FA0 */ _t84 = cpu->r[1] + 0x00000050u;
|
|
/* 02923FA0 */ rbrew_write32(cpu->mem, _t84, cpu->r[7]);
|
|
/* 02923FA4 */ cpu->r[6] = cpu->r[6] + 0x00003724u;
|
|
/* 02923FA8 */ _t85 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02923FA8 */ rbrew_write32(cpu->mem, _t85, cpu->r[25]);
|
|
/* 02923FAC */ cpu->r[8] = 0x10140000u;
|
|
/* 02923FB0 */ _t86 = cpu->r[1] + 0x00000048u;
|
|
/* 02923FB0 */ rbrew_write32(cpu->mem, _t86, cpu->r[6]);
|
|
/* 02923FB4 */ cpu->r[8] = cpu->r[8] + 0x00003718u;
|
|
/* 02923FB8 */ cpu->r[30] = cpu->r[31] + 0x000000E4u;
|
|
/* 02923FB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02923FBC */ _t87 = cpu->r[1] + 0x00000058u;
|
|
/* 02923FBC */ rbrew_write32(cpu->mem, _t87, cpu->r[8]);
|
|
/* 02923FC0 */ _t88 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02923FC0 */ _t89 = _t88 & 0x00000001u;
|
|
/* 02923FC0 */ if (_t89) goto L_02923FC4; else goto L_02923FD4;
|
|
L_02923FC4: ; // 0x2923fc4
|
|
/* 02923FC4 */ cpu->r[3] = 0x00000010u;
|
|
/* 02923FC8 */ Gambit_fn_02801A78(cpu);
|
|
/* 02923FCC */ cpu->r[30] = cpu->r[3];
|
|
/* 02923FCC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02923FD0 */ _t90 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02923FD0 */ _t91 = _t90 & 0x00000001u;
|
|
/* 02923FD0 */ if (_t91) goto L_02924004; else goto L_02923FD4;
|
|
L_02923FD4: ; // 0x2923fd4
|
|
/* 02923FD4 */ cpu->r[3] = cpu->r[30];
|
|
/* 02923FD8 */ Gambit_fn_0294F7F0(cpu);
|
|
/* 02923FDC */ cpu->r[9] = 0x10140000u;
|
|
/* 02923FE0 */ cpu->r[3] = cpu->r[30];
|
|
/* 02923FE4 */ cpu->r[7] = cpu->r[31];
|
|
/* 02923FE8 */ cpu->r[9] = cpu->r[9] + 0x00003468u;
|
|
/* 02923FEC */ cpu->r[6] = cpu->r[1] + 0x00000058u;
|
|
/* 02923FF0 */ cpu->r[5] = cpu->r[1] + 0x00000050u;
|
|
/* 02923FF4 */ _t92 = cpu->r[30] + 0x00000008u;
|
|
/* 02923FF4 */ rbrew_write32(cpu->mem, _t92, cpu->r[9]);
|
|
/* 02923FF8 */ cpu->r[4] = cpu->r[1] + 0x00000048u;
|
|
/* 02923FFC */ Gambit_fn_0294F794(cpu);
|
|
/* 02924000 */ _t93 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02924000 */ rbrew_write_f32(cpu->mem, _t93, cpu->f[31]);
|
|
L_02924004: ; // 0x2924004
|
|
/* 02924004 */ cpu->r[0] = 0x10140000u;
|
|
/* 02924008 */ _t94 = cpu->r[1] + 0x00000064u;
|
|
/* 02924008 */ rbrew_write32(cpu->mem, _t94, cpu->r[25]);
|
|
/* 0292400C */ cpu->r[0] = cpu->r[0] + 0x00003704u;
|
|
/* 02924010 */ _t95 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02924010 */ rbrew_write32(cpu->mem, _t95, cpu->r[25]);
|
|
/* 02924014 */ cpu->r[10] = 0x10140000u;
|
|
/* 02924018 */ _t96 = cpu->r[1] + 0x00000068u;
|
|
/* 02924018 */ rbrew_write32(cpu->mem, _t96, cpu->r[0]);
|
|
/* 0292401C */ cpu->r[10] = cpu->r[10] + 0x00003730u;
|
|
/* 02924020 */ cpu->r[30] = cpu->r[31] + 0x000000F4u;
|
|
/* 02924020 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02924024 */ _t97 = cpu->r[1] + 0x00000060u;
|
|
/* 02924024 */ rbrew_write32(cpu->mem, _t97, cpu->r[10]);
|
|
/* 02924028 */ _t98 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02924028 */ _t99 = _t98 & 0x00000001u;
|
|
/* 02924028 */ if (_t99) goto L_0292402C; else goto L_0292403C;
|
|
L_0292402C: ; // 0x292402c
|
|
/* 0292402C */ cpu->r[3] = 0x00000018u;
|
|
/* 02924030 */ Gambit_fn_02801A78(cpu);
|
|
/* 02924034 */ cpu->r[30] = cpu->r[3];
|
|
/* 02924034 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02924038 */ _t100 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02924038 */ _t101 = _t100 & 0x00000001u;
|
|
/* 02924038 */ if (_t101) goto L_02924094; else goto L_0292403C;
|
|
L_0292403C: ; // 0x292403c
|
|
/* 0292403C */ cpu->r[3] = cpu->r[30];
|
|
/* 02924040 */ Gambit_fn_0294F7F0(cpu);
|
|
/* 02924044 */ cpu->r[12] = 0x10140000u;
|
|
/* 02924048 */ cpu->r[3] = cpu->r[30];
|
|
/* 0292404C */ cpu->r[7] = cpu->r[31];
|
|
/* 02924050 */ cpu->r[12] = cpu->r[12] + 0x000034F8u;
|
|
/* 02924054 */ cpu->r[4] = cpu->r[1] + 0x00000060u;
|
|
/* 02924058 */ cpu->r[0] = 0x10140000u;
|
|
/* 0292405C */ _t102 = cpu->r[30] + 0x00000008u;
|
|
/* 0292405C */ rbrew_write32(cpu->mem, _t102, cpu->r[12]);
|
|
/* 02924060 */ cpu->r[5] = cpu->r[1] + 0x00000068u;
|
|
/* 02924064 */ cpu->r[0] = cpu->r[0] + 0x0000339Eu;
|
|
/* 02924068 */ _t103 = cpu->r[1] + 0x00000084u;
|
|
/* 02924068 */ rbrew_write32(cpu->mem, _t103, cpu->r[25]);
|
|
/* 0292406C */ cpu->r[6] = cpu->r[1] + 0x00000080u;
|
|
/* 02924070 */ _t104 = cpu->r[1] + 0x00000080u;
|
|
/* 02924070 */ rbrew_write32(cpu->mem, _t104, cpu->r[0]);
|
|
/* 02924074 */ Gambit_fn_0294F794(cpu);
|
|
/* 02924078 */ cpu->r[5] = 0x101F0000u;
|
|
/* 0292407C */ _t105 = cpu->r[5] + 0x00006350u;
|
|
/* 0292407C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t105);
|
|
/* 0292407C */ cpu->r[5] = _t105;
|
|
/* 02924080 */ _t106 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02924080 */ rbrew_write_f32(cpu->mem, _t106, cpu->f[11]);
|
|
/* 02924084 */ _t107 = cpu->r[5] + 0x00000004u;
|
|
/* 02924084 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t107);
|
|
/* 02924088 */ _t108 = cpu->r[30] + 0x00000010u;
|
|
/* 02924088 */ rbrew_write_f32(cpu->mem, _t108, cpu->f[0]);
|
|
/* 0292408C */ _t109 = cpu->r[5] + 0x00000008u;
|
|
/* 0292408C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t109);
|
|
/* 02924090 */ _t110 = cpu->r[30] + 0x00000014u;
|
|
/* 02924090 */ rbrew_write_f32(cpu->mem, _t110, cpu->f[8]);
|
|
L_02924094: ; // 0x2924094
|
|
/* 02924094 */ cpu->r[7] = 0x10140000u;
|
|
/* 02924098 */ cpu->r[7] = cpu->r[7] + 0x00003618u;
|
|
/* 0292409C */ cpu->r[3] = cpu->r[31] + 0x0000010Cu;
|
|
/* 0292409C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 029240A0 */ _t111 = cpu->r[31] + 0x000000FCu;
|
|
/* 029240A0 */ rbrew_write32(cpu->mem, _t111, cpu->r[7]);
|
|
/* 029240A4 */ _t112 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029240A4 */ _t113 = _t112 & 0x00000001u;
|
|
/* 029240A4 */ if (_t113) goto L_029240A8; else goto L_029240B8;
|
|
L_029240A8: ; // 0x29240a8
|
|
/* 029240A8 */ cpu->r[3] = 0x00000008u;
|
|
/* 029240AC */ Gambit_fn_02801A78(cpu);
|
|
/* 029240B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 029240B4 */ _t114 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029240B4 */ _t115 = _t114 & 0x00000001u;
|
|
/* 029240B4 */ if (_t115) goto L_029240C4; else goto L_029240B8;
|
|
L_029240B8: ; // 0x29240b8
|
|
/* 029240B8 */ cpu->r[9] = 0x00000000u;
|
|
/* 029240BC */ _t116 = cpu->r[3] + 0x00000004u;
|
|
/* 029240BC */ rbrew_write32(cpu->mem, _t116, cpu->r[9]);
|
|
/* 029240C0 */ _t117 = cpu->r[3] + 0x00000000u;
|
|
/* 029240C0 */ rbrew_write32(cpu->mem, _t117, cpu->r[9]);
|
|
L_029240C4: ; // 0x29240c4
|
|
/* 029240C4 */ cpu->r[3] = cpu->r[31];
|
|
/* 029240C8 */ /* nop */
|
|
/* 029240CC */ _t118 = cpu->r[1] + 0x000000B0u;
|
|
/* 029240CC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t118);
|
|
/* 029240D0 */ _t119 = cpu->r[1] + 0x000000A8u;
|
|
/* 029240D0 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t119);
|
|
/* 029240D4 */ _t120 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 029240D4 */ _t121 = _t120 & 0x00000001u;
|
|
/* 029240D4 */ if (_t121) goto L_029240D8; // else: addr-0 trap, fall-through
|
|
L_029240D8: ; // 0x29240d8
|
|
/* 029240D8 */ _t122 = cpu->r[1] + 0x000000BCu;
|
|
/* 029240D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t122);
|
|
/* 029240DC */ cpu->lr = cpu->r[0];
|
|
/* 029240E0 */ cpu->r[1] = cpu->r[1] + 0x000000B8u;
|
|
/* 029240E4 */ return;
|
|
}
|
|
|
|
// fn_029240E8 @ 0x29240e8
|
|
void Gambit_fn_029240E8(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_029240E8: ; // 0x29240e8
|
|
/* 029240E8 */ cpu->r[0] = cpu->lr;
|
|
/* 029240EC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 029240EC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 029240EC */ cpu->r[1] = _t0;
|
|
/* 029240F0 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 029240F0 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 029240F4 */ cpu->r[30] = cpu->r[3];
|
|
/* 029240F8 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 029240F8 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 029240FC */ cpu->r[31] = cpu->r[4];
|
|
/* 029240FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02924100 */ cpu->r[3] = cpu->r[5];
|
|
/* 02924104 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02924104 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02924108 */ _t4 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02924108 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02924108 */ if (_t5) goto L_0292410C; else goto L_02924158;
|
|
L_0292410C: ; // 0x292410c
|
|
/* 0292410C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02924110 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02924110 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02924110 */ if (_t7) goto L_02924114; else goto L_02924120;
|
|
L_02924114: ; // 0x2924114
|
|
/* 02924114 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02924118 */ _t8 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02924118 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0292411C */ Gambit_fn_02826F20(cpu);
|
|
L_02924120: ; // 0x2924120
|
|
/* 02924120 */ _t9 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02924120 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02924124 */ _t10 = cpu->r[12] + 0x00000034u;
|
|
/* 02924124 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02924128 */ cpu->ctr = cpu->r[0];
|
|
/* 0292412C */ cpu->r[5] = 0x00000004u;
|
|
/* 02924130 */ cpu->r[4] = (uint32_t)((int32_t)cpu->r[31] * (int32_t)0x0000000Cu);
|
|
/* 02924134 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02924138 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0292413C */ cpu->r[0] = cpu->r[31];
|
|
/* 02924140 */ _t11 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02924140 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02924140 */ if (_t12) goto L_02924148; else goto L_02924144;
|
|
L_02924144: ; // 0x2924144
|
|
/* 02924144 */ cpu->r[0] = 0x00000001u;
|
|
L_02924148: ; // 0x2924148
|
|
/* 02924148 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0292414C */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292414C */ _t14 = _t13 & 0x00000001u;
|
|
/* 0292414C */ if (_t14) goto L_02924158; else goto L_02924150;
|
|
L_02924150: ; // 0x2924150
|
|
/* 02924150 */ _t15 = cpu->r[30] + 0x00000110u;
|
|
/* 02924150 */ rbrew_write32(cpu->mem, _t15, cpu->r[3]);
|
|
/* 02924154 */ _t16 = cpu->r[30] + 0x0000010Cu;
|
|
/* 02924154 */ rbrew_write32(cpu->mem, _t16, cpu->r[31]);
|
|
L_02924158: ; // 0x2924158
|
|
/* 02924158 */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 02924158 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0292415C */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 0292415C */ cpu->r[30] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02924160 */ cpu->lr = cpu->r[0];
|
|
/* 02924164 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02924164 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02924168 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0292416C */ return;
|
|
}
|
|
|
|
// fn_029240EC @ 0x29240ec
|
|
void Gambit_fn_029240EC(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_029240EC: ; // 0x29240ec
|
|
/* 029240EC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 029240EC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 029240EC */ cpu->r[1] = _t0;
|
|
/* 029240F0 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 029240F0 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 029240F4 */ cpu->r[30] = cpu->r[3];
|
|
/* 029240F8 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 029240F8 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 029240FC */ cpu->r[31] = cpu->r[4];
|
|
/* 029240FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02924100 */ cpu->r[3] = cpu->r[5];
|
|
/* 02924104 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02924104 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02924108 */ _t4 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02924108 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02924108 */ if (_t5) goto L_0292410C; else goto L_02924158;
|
|
L_0292410C: ; // 0x292410c
|
|
/* 0292410C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02924110 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02924110 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02924110 */ if (_t7) goto L_02924114; else goto L_02924120;
|
|
L_02924114: ; // 0x2924114
|
|
/* 02924114 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02924118 */ _t8 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02924118 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0292411C */ Gambit_fn_02826F20(cpu);
|
|
L_02924120: ; // 0x2924120
|
|
/* 02924120 */ _t9 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02924120 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02924124 */ _t10 = cpu->r[12] + 0x00000034u;
|
|
/* 02924124 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02924128 */ cpu->ctr = cpu->r[0];
|
|
/* 0292412C */ cpu->r[5] = 0x00000004u;
|
|
/* 02924130 */ cpu->r[4] = (uint32_t)((int32_t)cpu->r[31] * (int32_t)0x0000000Cu);
|
|
/* 02924134 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02924138 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0292413C */ cpu->r[0] = cpu->r[31];
|
|
/* 02924140 */ _t11 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02924140 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02924140 */ if (_t12) goto L_02924148; else goto L_02924144;
|
|
L_02924144: ; // 0x2924144
|
|
/* 02924144 */ cpu->r[0] = 0x00000001u;
|
|
L_02924148: ; // 0x2924148
|
|
/* 02924148 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0292414C */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292414C */ _t14 = _t13 & 0x00000001u;
|
|
/* 0292414C */ if (_t14) goto L_02924158; else goto L_02924150;
|
|
L_02924150: ; // 0x2924150
|
|
/* 02924150 */ _t15 = cpu->r[30] + 0x00000110u;
|
|
/* 02924150 */ rbrew_write32(cpu->mem, _t15, cpu->r[3]);
|
|
/* 02924154 */ _t16 = cpu->r[30] + 0x0000010Cu;
|
|
/* 02924154 */ rbrew_write32(cpu->mem, _t16, cpu->r[31]);
|
|
L_02924158: ; // 0x2924158
|
|
/* 02924158 */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 02924158 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0292415C */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 0292415C */ cpu->r[30] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02924160 */ cpu->lr = cpu->r[0];
|
|
/* 02924164 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02924164 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02924168 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0292416C */ return;
|
|
}
|
|
|
|
// fn_02924170 @ 0x2924170
|
|
void Gambit_fn_02924170(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t22, _t23, _t24, _t25, _t26;
|
|
double _ft20, _ft21;
|
|
|
|
L_02924170: ; // 0x2924170
|
|
/* 02924170 */ cpu->r[0] = cpu->lr;
|
|
/* 02924174 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02924174 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02924174 */ cpu->r[1] = _t0;
|
|
/* 02924178 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02924178 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0292417C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0292417C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02924180 */ cpu->r[30] = cpu->r[3];
|
|
/* 02924184 */ cpu->r[31] = cpu->r[6];
|
|
/* 02924188 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02924188 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0292418C */ _t4 = cpu->r[30] + 0x0000010Cu;
|
|
/* 0292418C */ cpu->r[10] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02924190 */ cpu->r[3] = cpu->r[4];
|
|
/* 02924194 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[10]);
|
|
/* 02924198 */ _t5 = cpu->r[30] + 0x00000110u;
|
|
/* 02924198 */ cpu->r[5] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0292419C */ _t6 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0292419C */ _t7 = _t6 & 0x00000001u;
|
|
/* 0292419C */ if (_t7) goto L_029241A0; else goto L_029241A8;
|
|
L_029241A0: ; // 0x29241a0
|
|
/* 029241A0 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[31] * (int32_t)0x0000000Cu);
|
|
/* 029241A4 */ cpu->r[5] = cpu->r[5] + cpu->r[0];
|
|
L_029241A8: ; // 0x29241a8
|
|
/* 029241A8 */ cpu->r[4] = cpu->r[30] + 0x00000100u;
|
|
/* 029241AC */ Gambit_fn_02C694BC(cpu);
|
|
/* 029241B0 */ _t8 = cpu->r[30] + 0x0000010Cu;
|
|
/* 029241B0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t8);
|
|
/* 029241B4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[7]);
|
|
/* 029241B8 */ _t9 = cpu->r[30] + 0x00000110u;
|
|
/* 029241B8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 029241BC */ _t10 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 029241BC */ _t11 = _t10 & 0x00000001u;
|
|
/* 029241BC */ if (_t11) goto L_029241C0; else goto L_029241C8;
|
|
L_029241C0: ; // 0x29241c0
|
|
/* 029241C0 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[31] * (int32_t)0x0000000Cu);
|
|
/* 029241C4 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_029241C8: ; // 0x29241c8
|
|
/* 029241C8 */ _t12 = cpu->r[12] + 0x00000004u;
|
|
/* 029241C8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 029241CC */ _t13 = cpu->r[12] + 0x00000000u;
|
|
/* 029241CC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 029241D0 */ cpu->f[13] = cpu->f[13] * cpu->f[13];
|
|
/* 029241D4 */ cpu->f[10] = fma(cpu->f[9], cpu->f[9], cpu->f[13]);
|
|
/* 029241D8 */ _t14 = cpu->r[12] + 0x00000008u;
|
|
/* 029241D8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 029241DC */ cpu->r[9] = 0x10140000u;
|
|
/* 029241E0 */ cpu->f[10] = fma(cpu->f[0], cpu->f[0], cpu->f[10]);
|
|
/* 029241E4 */ _t15 = cpu->r[9] + 0x0000377Cu;
|
|
/* 029241E4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 029241E8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[0]);
|
|
/* 029241EC */ _t16 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 029241EC */ _t17 = _t16 & 0x00000001u;
|
|
/* 029241EC */ if (_t17) goto L_029241F0; else goto L_0292422C;
|
|
L_029241F0: ; // 0x29241f0
|
|
/* 029241F0 */ cpu->r[11] = 0x10140000u;
|
|
/* 029241F4 */ cpu->r[10] = 0x10140000u;
|
|
/* 029241F8 */ _t18 = cpu->r[11] + 0x00003780u;
|
|
/* 029241F8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 029241FC */ _t19 = cpu->r[10] + 0x00003784u;
|
|
/* 029241FC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 02924200 */ _ft20 = sqrt(cpu->f[10]);
|
|
/* 02924200 */ _ft21 = (double)(int32_t)0x00000001u;
|
|
/* 02924200 */ cpu->f[11] = _ft21 / _ft20;
|
|
/* 02924204 */ cpu->f[0] = cpu->f[11] * cpu->f[11];
|
|
/* 02924208 */ cpu->f[9] = cpu->f[11] * cpu->f[13];
|
|
/* 0292420C */ cpu->f[0] = -fma(cpu->f[0], cpu->f[10], -(cpu->f[12]));
|
|
/* 02924210 */ cpu->f[11] = cpu->f[0] * cpu->f[9];
|
|
/* 02924214 */ _t22 = cpu->r[12] + 0x00000008u;
|
|
/* 02924214 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 02924218 */ /* nop */
|
|
/* 0292421C */ cpu->f[12] = cpu->f[12] * cpu->f[11];
|
|
/* 02924220 */ /* nop */
|
|
/* 02924224 */ _t23 = cpu->r[12] + 0x00000008u;
|
|
/* 02924224 */ rbrew_write_f32(cpu->mem, _t23, cpu->f[12]);
|
|
/* 02924228 */ /* nop */
|
|
L_0292422C: ; // 0x292422c
|
|
/* 0292422C */ _t24 = cpu->r[1] + 0x00000014u;
|
|
/* 0292422C */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02924230 */ _t25 = cpu->r[1] + 0x00000008u;
|
|
/* 02924230 */ cpu->r[30] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02924234 */ cpu->lr = cpu->r[0];
|
|
/* 02924238 */ _t26 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02924238 */ cpu->r[31] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0292423C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02924240 */ return;
|
|
}
|
|
|
|
// fn_02924174 @ 0x2924174
|
|
void Gambit_fn_02924174(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t22, _t23, _t24, _t25, _t26;
|
|
double _ft20, _ft21;
|
|
|
|
L_02924174: ; // 0x2924174
|
|
/* 02924174 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02924174 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02924174 */ cpu->r[1] = _t0;
|
|
/* 02924178 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02924178 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0292417C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0292417C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02924180 */ cpu->r[30] = cpu->r[3];
|
|
/* 02924184 */ cpu->r[31] = cpu->r[6];
|
|
/* 02924188 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02924188 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0292418C */ _t4 = cpu->r[30] + 0x0000010Cu;
|
|
/* 0292418C */ cpu->r[10] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02924190 */ cpu->r[3] = cpu->r[4];
|
|
/* 02924194 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[10]);
|
|
/* 02924198 */ _t5 = cpu->r[30] + 0x00000110u;
|
|
/* 02924198 */ cpu->r[5] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0292419C */ _t6 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0292419C */ _t7 = _t6 & 0x00000001u;
|
|
/* 0292419C */ if (_t7) goto L_029241A0; else goto L_029241A8;
|
|
L_029241A0: ; // 0x29241a0
|
|
/* 029241A0 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[31] * (int32_t)0x0000000Cu);
|
|
/* 029241A4 */ cpu->r[5] = cpu->r[5] + cpu->r[0];
|
|
L_029241A8: ; // 0x29241a8
|
|
/* 029241A8 */ cpu->r[4] = cpu->r[30] + 0x00000100u;
|
|
/* 029241AC */ Gambit_fn_02C694BC(cpu);
|
|
/* 029241B0 */ _t8 = cpu->r[30] + 0x0000010Cu;
|
|
/* 029241B0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t8);
|
|
/* 029241B4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[7]);
|
|
/* 029241B8 */ _t9 = cpu->r[30] + 0x00000110u;
|
|
/* 029241B8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 029241BC */ _t10 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 029241BC */ _t11 = _t10 & 0x00000001u;
|
|
/* 029241BC */ if (_t11) goto L_029241C0; else goto L_029241C8;
|
|
L_029241C0: ; // 0x29241c0
|
|
/* 029241C0 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[31] * (int32_t)0x0000000Cu);
|
|
/* 029241C4 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_029241C8: ; // 0x29241c8
|
|
/* 029241C8 */ _t12 = cpu->r[12] + 0x00000004u;
|
|
/* 029241C8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 029241CC */ _t13 = cpu->r[12] + 0x00000000u;
|
|
/* 029241CC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 029241D0 */ cpu->f[13] = cpu->f[13] * cpu->f[13];
|
|
/* 029241D4 */ cpu->f[10] = fma(cpu->f[9], cpu->f[9], cpu->f[13]);
|
|
/* 029241D8 */ _t14 = cpu->r[12] + 0x00000008u;
|
|
/* 029241D8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 029241DC */ cpu->r[9] = 0x10140000u;
|
|
/* 029241E0 */ cpu->f[10] = fma(cpu->f[0], cpu->f[0], cpu->f[10]);
|
|
/* 029241E4 */ _t15 = cpu->r[9] + 0x0000377Cu;
|
|
/* 029241E4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 029241E8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[0]);
|
|
/* 029241EC */ _t16 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 029241EC */ _t17 = _t16 & 0x00000001u;
|
|
/* 029241EC */ if (_t17) goto L_029241F0; else goto L_0292422C;
|
|
L_029241F0: ; // 0x29241f0
|
|
/* 029241F0 */ cpu->r[11] = 0x10140000u;
|
|
/* 029241F4 */ cpu->r[10] = 0x10140000u;
|
|
/* 029241F8 */ _t18 = cpu->r[11] + 0x00003780u;
|
|
/* 029241F8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 029241FC */ _t19 = cpu->r[10] + 0x00003784u;
|
|
/* 029241FC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 02924200 */ _ft20 = sqrt(cpu->f[10]);
|
|
/* 02924200 */ _ft21 = (double)(int32_t)0x00000001u;
|
|
/* 02924200 */ cpu->f[11] = _ft21 / _ft20;
|
|
/* 02924204 */ cpu->f[0] = cpu->f[11] * cpu->f[11];
|
|
/* 02924208 */ cpu->f[9] = cpu->f[11] * cpu->f[13];
|
|
/* 0292420C */ cpu->f[0] = -fma(cpu->f[0], cpu->f[10], -(cpu->f[12]));
|
|
/* 02924210 */ cpu->f[11] = cpu->f[0] * cpu->f[9];
|
|
/* 02924214 */ _t22 = cpu->r[12] + 0x00000008u;
|
|
/* 02924214 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 02924218 */ /* nop */
|
|
/* 0292421C */ cpu->f[12] = cpu->f[12] * cpu->f[11];
|
|
/* 02924220 */ /* nop */
|
|
/* 02924224 */ _t23 = cpu->r[12] + 0x00000008u;
|
|
/* 02924224 */ rbrew_write_f32(cpu->mem, _t23, cpu->f[12]);
|
|
/* 02924228 */ /* nop */
|
|
L_0292422C: ; // 0x292422c
|
|
/* 0292422C */ _t24 = cpu->r[1] + 0x00000014u;
|
|
/* 0292422C */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02924230 */ _t25 = cpu->r[1] + 0x00000008u;
|
|
/* 02924230 */ cpu->r[30] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02924234 */ cpu->lr = cpu->r[0];
|
|
/* 02924238 */ _t26 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02924238 */ cpu->r[31] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0292423C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02924240 */ return;
|
|
}
|
|
|
|
// fn_02924244 @ 0x2924244
|
|
void Gambit_fn_02924244(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40;
|
|
double _ft11, _ft12, _ft23, _ft24;
|
|
|
|
L_02924244: ; // 0x2924244
|
|
/* 02924244 */ cpu->r[0] = cpu->lr;
|
|
/* 02924248 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 02924248 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02924248 */ cpu->r[1] = _t0;
|
|
/* 0292424C */ _t1 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0292424C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02924250 */ cpu->r[31] = cpu->r[3];
|
|
/* 02924254 */ _t2 = cpu->r[1] + 0x00000024u;
|
|
/* 02924254 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02924258 */ _t3 = cpu->r[31] + 0x00000120u;
|
|
/* 02924258 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 0292425C */ cpu->f[13] = cpu->f[11] * cpu->f[11];
|
|
/* 02924260 */ _t4 = cpu->r[31] + 0x0000011Cu;
|
|
/* 02924260 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 02924264 */ cpu->f[0] = fma(cpu->f[9], cpu->f[9], cpu->f[13]);
|
|
/* 02924268 */ _t5 = cpu->r[31] + 0x00000124u;
|
|
/* 02924268 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 0292426C */ cpu->r[8] = 0x10140000u;
|
|
/* 02924270 */ cpu->f[6] = fma(cpu->f[13], cpu->f[13], cpu->f[0]);
|
|
/* 02924274 */ _t6 = cpu->r[8] + 0x0000377Cu;
|
|
/* 02924274 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 02924278 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[6], cpu->f[13]);
|
|
/* 0292427C */ _t7 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0292427C */ _t8 = _t7 & 0x00000001u;
|
|
/* 0292427C */ if (_t8) goto L_02924280; else goto L_02924374;
|
|
L_02924280: ; // 0x2924280
|
|
/* 02924280 */ cpu->r[12] = 0x10140000u;
|
|
/* 02924284 */ cpu->r[10] = 0x10140000u;
|
|
/* 02924288 */ _t9 = cpu->r[12] + 0x00003780u;
|
|
/* 02924288 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 0292428C */ _t10 = cpu->r[10] + 0x00003784u;
|
|
/* 0292428C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 02924290 */ _ft11 = sqrt(cpu->f[6]);
|
|
/* 02924290 */ _ft12 = (double)(int32_t)0x00000001u;
|
|
/* 02924290 */ cpu->f[7] = _ft12 / _ft11;
|
|
/* 02924294 */ cpu->f[12] = cpu->f[7] * cpu->f[7];
|
|
/* 02924298 */ cpu->f[8] = cpu->f[7] * cpu->f[0];
|
|
/* 0292429C */ cpu->f[12] = -fma(cpu->f[12], cpu->f[6], -(cpu->f[11]));
|
|
/* 029242A0 */ cpu->f[7] = cpu->f[12] * cpu->f[8];
|
|
/* 029242A4 */ /* nop */
|
|
/* 029242A8 */ cpu->f[6] = cpu->f[6] * cpu->f[7];
|
|
/* 029242AC */ /* nop */
|
|
/* 029242B0 */ _t13 = cpu->r[31] + 0x00000124u;
|
|
/* 029242B0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 029242B4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[6]);
|
|
/* 029242B8 */ cpu->f[10] = cpu->f[10] * cpu->f[7];
|
|
/* 029242BC */ /* nop */
|
|
/* 029242C0 */ _t14 = cpu->r[1] + 0x00000018u;
|
|
/* 029242C0 */ rbrew_write_f32(cpu->mem, _t14, cpu->f[10]);
|
|
/* 029242C4 */ _t15 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 029242C4 */ _t16 = _t15 & 0x00000001u;
|
|
/* 029242C4 */ if (_t16) goto L_029242C8; else goto L_02924374;
|
|
L_029242C8: ; // 0x29242c8
|
|
/* 029242C8 */ _t17 = cpu->r[1] + 0x00000010u;
|
|
/* 029242C8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 029242CC */ cpu->f[11] = -cpu->f[11];
|
|
/* 029242D0 */ cpu->f[10] = -cpu->f[10];
|
|
/* 029242D4 */ cpu->f[12] = cpu->f[11] * cpu->f[11];
|
|
/* 029242D8 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 029242D8 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[11]);
|
|
/* 029242DC */ cpu->f[8] = fma(cpu->f[10], cpu->f[10], cpu->f[12]);
|
|
/* 029242E0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[13]);
|
|
/* 029242E4 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 029242E4 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[10]);
|
|
/* 029242E8 */ _t20 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 029242E8 */ _t21 = _t20 & 0x00000001u;
|
|
/* 029242E8 */ if (_t21) goto L_029242EC; else goto L_02924330;
|
|
L_029242EC: ; // 0x29242ec
|
|
/* 029242EC */ cpu->r[9] = 0x10140000u;
|
|
/* 029242F0 */ _t22 = cpu->r[9] + 0x00003784u;
|
|
/* 029242F0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 029242F4 */ _ft23 = sqrt(cpu->f[8]);
|
|
/* 029242F4 */ _ft24 = (double)(int32_t)0x00000001u;
|
|
/* 029242F4 */ cpu->f[9] = _ft24 / _ft23;
|
|
/* 029242F8 */ cpu->f[10] = cpu->f[9] * cpu->f[9];
|
|
/* 029242FC */ cpu->f[11] = cpu->f[9] * cpu->f[0];
|
|
/* 02924300 */ cpu->f[10] = -fma(cpu->f[10], cpu->f[8], -(cpu->f[12]));
|
|
/* 02924304 */ cpu->f[9] = cpu->f[10] * cpu->f[11];
|
|
/* 02924308 */ cpu->f[8] = cpu->f[8] * cpu->f[9];
|
|
/* 0292430C */ /* nop */
|
|
/* 02924310 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[8]);
|
|
/* 02924314 */ /* nop */
|
|
/* 02924318 */ /* nop */
|
|
/* 0292431C */ _t25 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0292431C */ _t26 = _t25 & 0x00000001u;
|
|
/* 0292431C */ if (_t26) goto L_02924320; else goto L_02924330;
|
|
L_02924320: ; // 0x2924320
|
|
/* 02924320 */ _t27 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02924320 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 02924324 */ _t28 = cpu->r[1] + 0x00000008u;
|
|
/* 02924324 */ cpu->f[2] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 02924328 */ Gambit_fn_02C89074(cpu);
|
|
/* 0292432C */ _t29 = cpu->r[31] + 0x0000017Cu;
|
|
/* 0292432C */ rbrew_write_f32(cpu->mem, _t29, cpu->f[1]);
|
|
L_02924330: ; // 0x2924330
|
|
/* 02924330 */ _t30 = cpu->r[1] + 0x00000014u;
|
|
/* 02924330 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 02924334 */ cpu->r[7] = 0x10140000u;
|
|
/* 02924338 */ cpu->f[1] = -cpu->f[9];
|
|
/* 0292433C */ _t31 = cpu->r[7] + 0x00003788u;
|
|
/* 0292433C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 02924340 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[10]);
|
|
/* 02924344 */ _t32 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02924344 */ _t33 = _t32 & 0x00000001u;
|
|
/* 02924344 */ if (_t33) goto L_02924348; else goto L_02924358;
|
|
L_02924348: ; // 0x2924348
|
|
/* 02924348 */ cpu->f[1] = cpu->f[10];
|
|
/* 0292434C */ Gambit_fn_02C8926C(cpu);
|
|
/* 02924350 */ _t34 = cpu->r[31] + 0x00000180u;
|
|
/* 02924350 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[1]);
|
|
/* 02924354 */ goto L_02924374;
|
|
L_02924358: ; // 0x2924358
|
|
/* 02924358 */ cpu->r[11] = 0x10140000u;
|
|
/* 0292435C */ _t35 = cpu->r[11] + 0x000036A8u;
|
|
/* 0292435C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 02924360 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[9]);
|
|
/* 02924364 */ _t36 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02924364 */ _t37 = _t36 & 0x00000001u;
|
|
/* 02924364 */ if (_t37) goto L_02924368; else goto L_0292436C;
|
|
L_02924368: ; // 0x2924368
|
|
/* 02924368 */ cpu->f[1] = cpu->f[9];
|
|
L_0292436C: ; // 0x292436c
|
|
/* 0292436C */ Gambit_fn_02C8926C(cpu);
|
|
/* 02924370 */ _t38 = cpu->r[31] + 0x00000180u;
|
|
/* 02924370 */ rbrew_write_f32(cpu->mem, _t38, cpu->f[1]);
|
|
L_02924374: ; // 0x2924374
|
|
/* 02924374 */ _t39 = cpu->r[1] + 0x00000024u;
|
|
/* 02924374 */ cpu->r[0] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02924378 */ _t40 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02924378 */ cpu->r[31] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0292437C */ cpu->lr = cpu->r[0];
|
|
/* 02924380 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 02924384 */ return;
|
|
}
|
|
|
|
// fn_02924248 @ 0x2924248
|
|
void Gambit_fn_02924248(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40;
|
|
double _ft11, _ft12, _ft23, _ft24;
|
|
|
|
L_02924248: ; // 0x2924248
|
|
/* 02924248 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 02924248 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02924248 */ cpu->r[1] = _t0;
|
|
/* 0292424C */ _t1 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0292424C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02924250 */ cpu->r[31] = cpu->r[3];
|
|
/* 02924254 */ _t2 = cpu->r[1] + 0x00000024u;
|
|
/* 02924254 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02924258 */ _t3 = cpu->r[31] + 0x00000120u;
|
|
/* 02924258 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 0292425C */ cpu->f[13] = cpu->f[11] * cpu->f[11];
|
|
/* 02924260 */ _t4 = cpu->r[31] + 0x0000011Cu;
|
|
/* 02924260 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 02924264 */ cpu->f[0] = fma(cpu->f[9], cpu->f[9], cpu->f[13]);
|
|
/* 02924268 */ _t5 = cpu->r[31] + 0x00000124u;
|
|
/* 02924268 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 0292426C */ cpu->r[8] = 0x10140000u;
|
|
/* 02924270 */ cpu->f[6] = fma(cpu->f[13], cpu->f[13], cpu->f[0]);
|
|
/* 02924274 */ _t6 = cpu->r[8] + 0x0000377Cu;
|
|
/* 02924274 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 02924278 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[6], cpu->f[13]);
|
|
/* 0292427C */ _t7 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0292427C */ _t8 = _t7 & 0x00000001u;
|
|
/* 0292427C */ if (_t8) goto L_02924280; else goto L_02924374;
|
|
L_02924280: ; // 0x2924280
|
|
/* 02924280 */ cpu->r[12] = 0x10140000u;
|
|
/* 02924284 */ cpu->r[10] = 0x10140000u;
|
|
/* 02924288 */ _t9 = cpu->r[12] + 0x00003780u;
|
|
/* 02924288 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 0292428C */ _t10 = cpu->r[10] + 0x00003784u;
|
|
/* 0292428C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 02924290 */ _ft11 = sqrt(cpu->f[6]);
|
|
/* 02924290 */ _ft12 = (double)(int32_t)0x00000001u;
|
|
/* 02924290 */ cpu->f[7] = _ft12 / _ft11;
|
|
/* 02924294 */ cpu->f[12] = cpu->f[7] * cpu->f[7];
|
|
/* 02924298 */ cpu->f[8] = cpu->f[7] * cpu->f[0];
|
|
/* 0292429C */ cpu->f[12] = -fma(cpu->f[12], cpu->f[6], -(cpu->f[11]));
|
|
/* 029242A0 */ cpu->f[7] = cpu->f[12] * cpu->f[8];
|
|
/* 029242A4 */ /* nop */
|
|
/* 029242A8 */ cpu->f[6] = cpu->f[6] * cpu->f[7];
|
|
/* 029242AC */ /* nop */
|
|
/* 029242B0 */ _t13 = cpu->r[31] + 0x00000124u;
|
|
/* 029242B0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 029242B4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[6]);
|
|
/* 029242B8 */ cpu->f[10] = cpu->f[10] * cpu->f[7];
|
|
/* 029242BC */ /* nop */
|
|
/* 029242C0 */ _t14 = cpu->r[1] + 0x00000018u;
|
|
/* 029242C0 */ rbrew_write_f32(cpu->mem, _t14, cpu->f[10]);
|
|
/* 029242C4 */ _t15 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 029242C4 */ _t16 = _t15 & 0x00000001u;
|
|
/* 029242C4 */ if (_t16) goto L_029242C8; else goto L_02924374;
|
|
L_029242C8: ; // 0x29242c8
|
|
/* 029242C8 */ _t17 = cpu->r[1] + 0x00000010u;
|
|
/* 029242C8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 029242CC */ cpu->f[11] = -cpu->f[11];
|
|
/* 029242D0 */ cpu->f[10] = -cpu->f[10];
|
|
/* 029242D4 */ cpu->f[12] = cpu->f[11] * cpu->f[11];
|
|
/* 029242D8 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 029242D8 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[11]);
|
|
/* 029242DC */ cpu->f[8] = fma(cpu->f[10], cpu->f[10], cpu->f[12]);
|
|
/* 029242E0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[13]);
|
|
/* 029242E4 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 029242E4 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[10]);
|
|
/* 029242E8 */ _t20 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 029242E8 */ _t21 = _t20 & 0x00000001u;
|
|
/* 029242E8 */ if (_t21) goto L_029242EC; else goto L_02924330;
|
|
L_029242EC: ; // 0x29242ec
|
|
/* 029242EC */ cpu->r[9] = 0x10140000u;
|
|
/* 029242F0 */ _t22 = cpu->r[9] + 0x00003784u;
|
|
/* 029242F0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 029242F4 */ _ft23 = sqrt(cpu->f[8]);
|
|
/* 029242F4 */ _ft24 = (double)(int32_t)0x00000001u;
|
|
/* 029242F4 */ cpu->f[9] = _ft24 / _ft23;
|
|
/* 029242F8 */ cpu->f[10] = cpu->f[9] * cpu->f[9];
|
|
/* 029242FC */ cpu->f[11] = cpu->f[9] * cpu->f[0];
|
|
/* 02924300 */ cpu->f[10] = -fma(cpu->f[10], cpu->f[8], -(cpu->f[12]));
|
|
/* 02924304 */ cpu->f[9] = cpu->f[10] * cpu->f[11];
|
|
/* 02924308 */ cpu->f[8] = cpu->f[8] * cpu->f[9];
|
|
/* 0292430C */ /* nop */
|
|
/* 02924310 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[8]);
|
|
/* 02924314 */ /* nop */
|
|
/* 02924318 */ /* nop */
|
|
/* 0292431C */ _t25 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0292431C */ _t26 = _t25 & 0x00000001u;
|
|
/* 0292431C */ if (_t26) goto L_02924320; else goto L_02924330;
|
|
L_02924320: ; // 0x2924320
|
|
/* 02924320 */ _t27 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02924320 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 02924324 */ _t28 = cpu->r[1] + 0x00000008u;
|
|
/* 02924324 */ cpu->f[2] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 02924328 */ Gambit_fn_02C89074(cpu);
|
|
/* 0292432C */ _t29 = cpu->r[31] + 0x0000017Cu;
|
|
/* 0292432C */ rbrew_write_f32(cpu->mem, _t29, cpu->f[1]);
|
|
L_02924330: ; // 0x2924330
|
|
/* 02924330 */ _t30 = cpu->r[1] + 0x00000014u;
|
|
/* 02924330 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 02924334 */ cpu->r[7] = 0x10140000u;
|
|
/* 02924338 */ cpu->f[1] = -cpu->f[9];
|
|
/* 0292433C */ _t31 = cpu->r[7] + 0x00003788u;
|
|
/* 0292433C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 02924340 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[10]);
|
|
/* 02924344 */ _t32 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02924344 */ _t33 = _t32 & 0x00000001u;
|
|
/* 02924344 */ if (_t33) goto L_02924348; else goto L_02924358;
|
|
L_02924348: ; // 0x2924348
|
|
/* 02924348 */ cpu->f[1] = cpu->f[10];
|
|
/* 0292434C */ Gambit_fn_02C8926C(cpu);
|
|
/* 02924350 */ _t34 = cpu->r[31] + 0x00000180u;
|
|
/* 02924350 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[1]);
|
|
/* 02924354 */ goto L_02924374;
|
|
L_02924358: ; // 0x2924358
|
|
/* 02924358 */ cpu->r[11] = 0x10140000u;
|
|
/* 0292435C */ _t35 = cpu->r[11] + 0x000036A8u;
|
|
/* 0292435C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 02924360 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[9]);
|
|
/* 02924364 */ _t36 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02924364 */ _t37 = _t36 & 0x00000001u;
|
|
/* 02924364 */ if (_t37) goto L_02924368; else goto L_0292436C;
|
|
L_02924368: ; // 0x2924368
|
|
/* 02924368 */ cpu->f[1] = cpu->f[9];
|
|
L_0292436C: ; // 0x292436c
|
|
/* 0292436C */ Gambit_fn_02C8926C(cpu);
|
|
/* 02924370 */ _t38 = cpu->r[31] + 0x00000180u;
|
|
/* 02924370 */ rbrew_write_f32(cpu->mem, _t38, cpu->f[1]);
|
|
L_02924374: ; // 0x2924374
|
|
/* 02924374 */ _t39 = cpu->r[1] + 0x00000024u;
|
|
/* 02924374 */ cpu->r[0] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02924378 */ _t40 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02924378 */ cpu->r[31] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0292437C */ cpu->lr = cpu->r[0];
|
|
/* 02924380 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 02924384 */ return;
|
|
}
|
|
|
|
// fn_02924388 @ 0x2924388
|
|
void Gambit_fn_02924388(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _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, _t172, _t173, _t174;
|
|
double _ft170, _ft171;
|
|
|
|
L_02924388: ; // 0x2924388
|
|
/* 02924388 */ _t0 = cpu->r[1] + 0xFFFFFF30u;
|
|
/* 02924388 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02924388 */ cpu->r[1] = _t0;
|
|
/* 0292438C */ cpu->r[0] = cpu->lr;
|
|
/* 02924390 */ /* nop */
|
|
/* 02924394 */ cpu->r[31] = cpu->r[3];
|
|
/* 02924394 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02924398 */ _t1 = cpu->r[1] + 0x000000D4u;
|
|
/* 02924398 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0292439C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292439C */ _t3 = _t2 & 0x00000001u;
|
|
/* 0292439C */ if (_t3) goto L_029243A0; else goto L_029243B0;
|
|
L_029243A0: ; // 0x29243a0
|
|
/* 029243A0 */ cpu->r[3] = 0x00000184u;
|
|
/* 029243A4 */ Gambit_fn_02801A78(cpu);
|
|
/* 029243A8 */ cpu->r[31] = cpu->r[3];
|
|
/* 029243A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 029243AC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029243AC */ _t5 = _t4 & 0x00000001u;
|
|
/* 029243AC */ if (_t5) goto L_029248B4; else goto L_029243B0;
|
|
L_029243B0: ; // 0x29243b0
|
|
/* 029243B0 */ cpu->r[3] = cpu->r[31];
|
|
/* 029243B4 */ Gambit_fn_0291E274(cpu);
|
|
/* 029243B8 */ cpu->r[10] = 0x10140000u;
|
|
/* 029243BC */ cpu->r[11] = 0x10140000u;
|
|
/* 029243C0 */ cpu->r[10] = cpu->r[10] + 0x00003D14u;
|
|
/* 029243C4 */ cpu->r[11] = cpu->r[11] + 0x00003AFCu;
|
|
/* 029243C8 */ cpu->r[30] = cpu->r[31] + 0x000000ACu;
|
|
/* 029243C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 029243CC */ _t6 = cpu->r[31] + 0x00000018u;
|
|
/* 029243CC */ rbrew_write32(cpu->mem, _t6, cpu->r[10]);
|
|
/* 029243D0 */ cpu->r[29] = 0x10140000u;
|
|
/* 029243D4 */ cpu->r[26] = 0x10110000u;
|
|
/* 029243D8 */ cpu->r[25] = 0x10140000u;
|
|
/* 029243DC */ cpu->r[29] = cpu->r[29] + 0x000033A0u;
|
|
/* 029243E0 */ cpu->r[6] = 0x10140000u;
|
|
/* 029243E4 */ cpu->r[25] = cpu->r[25] + 0x0000339Fu;
|
|
/* 029243E8 */ _t7 = cpu->r[31] + 0x0000001Cu;
|
|
/* 029243E8 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 029243EC */ cpu->r[6] = cpu->r[6] + 0x000037DCu;
|
|
/* 029243F0 */ cpu->r[0] = 0x10140000u;
|
|
/* 029243F4 */ _t8 = cpu->r[1] + 0x00000020u;
|
|
/* 029243F4 */ rbrew_write32(cpu->mem, _t8, cpu->r[29]);
|
|
/* 029243F8 */ cpu->r[27] = 0x10110000u;
|
|
/* 029243FC */ cpu->r[26] = cpu->r[26] + 0x00004468u;
|
|
/* 02924400 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02924400 */ rbrew_write32(cpu->mem, _t9, cpu->r[6]);
|
|
/* 02924404 */ cpu->r[0] = cpu->r[0] + 0x000037CCu;
|
|
/* 02924408 */ cpu->r[28] = 0x10140000u;
|
|
/* 0292440C */ _t10 = cpu->r[1] + 0x00000018u;
|
|
/* 0292440C */ rbrew_write32(cpu->mem, _t10, cpu->r[29]);
|
|
/* 02924410 */ cpu->r[27] = cpu->r[27] + 0x00004464u;
|
|
/* 02924414 */ cpu->r[28] = cpu->r[28] + 0x00003588u;
|
|
/* 02924418 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 02924418 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 0292441C */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292441C */ _t13 = _t12 & 0x00000001u;
|
|
/* 0292441C */ if (_t13) goto L_02924420; else goto L_02924430;
|
|
L_02924420: ; // 0x2924420
|
|
/* 02924420 */ cpu->r[3] = 0x0000001Cu;
|
|
/* 02924424 */ Gambit_fn_02801A78(cpu);
|
|
/* 02924428 */ cpu->r[30] = cpu->r[3];
|
|
/* 02924428 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0292442C */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292442C */ _t15 = _t14 & 0x00000001u;
|
|
/* 0292442C */ if (_t15) goto L_029244B0; else goto L_02924430;
|
|
L_02924430: ; // 0x2924430
|
|
/* 02924430 */ cpu->r[3] = cpu->r[30];
|
|
/* 02924434 */ Gambit_fn_0294F7F0(cpu);
|
|
/* 02924438 */ cpu->r[3] = cpu->r[30] + 0x0000000Cu;
|
|
/* 02924438 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0292443C */ _t16 = cpu->r[30] + 0x00000008u;
|
|
/* 0292443C */ rbrew_write32(cpu->mem, _t16, cpu->r[28]);
|
|
/* 02924440 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02924440 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02924440 */ if (_t18) goto L_02924444; else goto L_02924454;
|
|
L_02924444: ; // 0x2924444
|
|
/* 02924444 */ cpu->r[3] = 0x00000010u;
|
|
/* 02924448 */ Gambit_fn_02801A78(cpu);
|
|
/* 0292444C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02924450 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02924450 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02924450 */ if (_t20) goto L_0292446C; else goto L_02924454;
|
|
L_02924454: ; // 0x2924454
|
|
/* 02924454 */ _t21 = cpu->r[26] + 0x00000000u;
|
|
/* 02924454 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 02924458 */ _t22 = cpu->r[3] + 0x00000000u;
|
|
/* 02924458 */ rbrew_write_f32(cpu->mem, _t22, cpu->f[11]);
|
|
/* 0292445C */ _t23 = cpu->r[3] + 0x00000004u;
|
|
/* 0292445C */ rbrew_write_f32(cpu->mem, _t23, cpu->f[11]);
|
|
/* 02924460 */ _t24 = cpu->r[3] + 0x00000008u;
|
|
/* 02924460 */ rbrew_write_f32(cpu->mem, _t24, cpu->f[11]);
|
|
/* 02924464 */ _t25 = cpu->r[27] + 0x00000000u;
|
|
/* 02924464 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 02924468 */ _t26 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02924468 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[12]);
|
|
L_0292446C: ; // 0x292446c
|
|
/* 0292446C */ _t27 = cpu->r[1] + 0x00000080u;
|
|
/* 0292446C */ rbrew_write32(cpu->mem, _t27, cpu->r[29]);
|
|
/* 02924470 */ cpu->r[3] = cpu->r[30];
|
|
/* 02924474 */ cpu->r[7] = cpu->r[31];
|
|
/* 02924478 */ cpu->r[6] = cpu->r[1] + 0x0000007Cu;
|
|
/* 0292447C */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 02924480 */ cpu->r[5] = cpu->r[1] + 0x0000001Cu;
|
|
/* 02924484 */ _t28 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02924484 */ rbrew_write32(cpu->mem, _t28, cpu->r[25]);
|
|
/* 02924488 */ Gambit_fn_0294F794(cpu);
|
|
/* 0292448C */ cpu->r[9] = 0x101F0000u;
|
|
/* 02924490 */ _t29 = cpu->r[9] + 0x00005BECu;
|
|
/* 02924490 */ cpu->r[0] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02924490 */ cpu->r[9] = _t29;
|
|
/* 02924494 */ _t30 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02924494 */ rbrew_write32(cpu->mem, _t30, cpu->r[0]);
|
|
/* 02924498 */ _t31 = cpu->r[9] + 0x00000004u;
|
|
/* 02924498 */ cpu->r[12] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0292449C */ _t32 = cpu->r[30] + 0x00000010u;
|
|
/* 0292449C */ rbrew_write32(cpu->mem, _t32, cpu->r[12]);
|
|
/* 029244A0 */ _t33 = cpu->r[9] + 0x00000008u;
|
|
/* 029244A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 029244A4 */ _t34 = cpu->r[30] + 0x00000014u;
|
|
/* 029244A4 */ rbrew_write32(cpu->mem, _t34, cpu->r[0]);
|
|
/* 029244A8 */ _t35 = cpu->r[9] + 0x0000000Cu;
|
|
/* 029244A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t35);
|
|
/* 029244AC */ _t36 = cpu->r[30] + 0x00000018u;
|
|
/* 029244AC */ rbrew_write32(cpu->mem, _t36, cpu->r[0]);
|
|
L_029244B0: ; // 0x29244b0
|
|
/* 029244B0 */ cpu->r[8] = 0x10140000u;
|
|
/* 029244B4 */ _t37 = cpu->r[1] + 0x00000028u;
|
|
/* 029244B4 */ rbrew_write32(cpu->mem, _t37, cpu->r[29]);
|
|
/* 029244B8 */ cpu->r[8] = cpu->r[8] + 0x000037F0u;
|
|
/* 029244BC */ _t38 = cpu->r[1] + 0x00000030u;
|
|
/* 029244BC */ rbrew_write32(cpu->mem, _t38, cpu->r[29]);
|
|
/* 029244C0 */ cpu->r[0] = 0x10140000u;
|
|
/* 029244C4 */ _t39 = cpu->r[1] + 0x0000002Cu;
|
|
/* 029244C4 */ rbrew_write32(cpu->mem, _t39, cpu->r[8]);
|
|
/* 029244C8 */ cpu->r[0] = cpu->r[0] + 0x00003794u;
|
|
/* 029244CC */ cpu->r[30] = cpu->r[31] + 0x000000C8u;
|
|
/* 029244CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 029244D0 */ _t40 = cpu->r[1] + 0x00000024u;
|
|
/* 029244D0 */ rbrew_write32(cpu->mem, _t40, cpu->r[0]);
|
|
/* 029244D4 */ _t41 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029244D4 */ _t42 = _t41 & 0x00000001u;
|
|
/* 029244D4 */ if (_t42) goto L_029244D8; else goto L_029244E8;
|
|
L_029244D8: ; // 0x29244d8
|
|
/* 029244D8 */ cpu->r[3] = 0x0000001Cu;
|
|
/* 029244DC */ Gambit_fn_02801A78(cpu);
|
|
/* 029244E0 */ cpu->r[30] = cpu->r[3];
|
|
/* 029244E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 029244E4 */ _t43 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029244E4 */ _t44 = _t43 & 0x00000001u;
|
|
/* 029244E4 */ if (_t44) goto L_02924568; else goto L_029244E8;
|
|
L_029244E8: ; // 0x29244e8
|
|
/* 029244E8 */ cpu->r[3] = cpu->r[30];
|
|
/* 029244EC */ Gambit_fn_0294F7F0(cpu);
|
|
/* 029244F0 */ cpu->r[3] = cpu->r[30] + 0x0000000Cu;
|
|
/* 029244F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 029244F4 */ _t45 = cpu->r[30] + 0x00000008u;
|
|
/* 029244F4 */ rbrew_write32(cpu->mem, _t45, cpu->r[28]);
|
|
/* 029244F8 */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029244F8 */ _t47 = _t46 & 0x00000001u;
|
|
/* 029244F8 */ if (_t47) goto L_029244FC; else goto L_0292450C;
|
|
L_029244FC: ; // 0x29244fc
|
|
/* 029244FC */ cpu->r[3] = 0x00000010u;
|
|
/* 02924500 */ Gambit_fn_02801A78(cpu);
|
|
/* 02924504 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02924508 */ _t48 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02924508 */ _t49 = _t48 & 0x00000001u;
|
|
/* 02924508 */ if (_t49) goto L_02924524; else goto L_0292450C;
|
|
L_0292450C: ; // 0x292450c
|
|
/* 0292450C */ _t50 = cpu->r[26] + 0x00000000u;
|
|
/* 0292450C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t50);
|
|
/* 02924510 */ _t51 = cpu->r[3] + 0x00000000u;
|
|
/* 02924510 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[11]);
|
|
/* 02924514 */ _t52 = cpu->r[3] + 0x00000004u;
|
|
/* 02924514 */ rbrew_write_f32(cpu->mem, _t52, cpu->f[11]);
|
|
/* 02924518 */ _t53 = cpu->r[3] + 0x00000008u;
|
|
/* 02924518 */ rbrew_write_f32(cpu->mem, _t53, cpu->f[11]);
|
|
/* 0292451C */ _t54 = cpu->r[27] + 0x00000000u;
|
|
/* 0292451C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 02924520 */ _t55 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02924520 */ rbrew_write_f32(cpu->mem, _t55, cpu->f[13]);
|
|
L_02924524: ; // 0x2924524
|
|
/* 02924524 */ _t56 = cpu->r[1] + 0x00000088u;
|
|
/* 02924524 */ rbrew_write32(cpu->mem, _t56, cpu->r[29]);
|
|
/* 02924528 */ cpu->r[3] = cpu->r[30];
|
|
/* 0292452C */ cpu->r[7] = cpu->r[31];
|
|
/* 02924530 */ cpu->r[6] = cpu->r[1] + 0x00000084u;
|
|
/* 02924534 */ cpu->r[4] = cpu->r[1] + 0x00000024u;
|
|
/* 02924538 */ cpu->r[5] = cpu->r[1] + 0x0000002Cu;
|
|
/* 0292453C */ _t57 = cpu->r[1] + 0x00000084u;
|
|
/* 0292453C */ rbrew_write32(cpu->mem, _t57, cpu->r[25]);
|
|
/* 02924540 */ Gambit_fn_0294F794(cpu);
|
|
/* 02924544 */ cpu->r[9] = 0x101F0000u;
|
|
/* 02924548 */ _t58 = cpu->r[9] + 0x00005BECu;
|
|
/* 02924548 */ cpu->r[0] = rbrew_read32(cpu->mem, _t58);
|
|
/* 02924548 */ cpu->r[9] = _t58;
|
|
/* 0292454C */ _t59 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0292454C */ rbrew_write32(cpu->mem, _t59, cpu->r[0]);
|
|
/* 02924550 */ _t60 = cpu->r[9] + 0x00000004u;
|
|
/* 02924550 */ cpu->r[11] = rbrew_read32(cpu->mem, _t60);
|
|
/* 02924554 */ _t61 = cpu->r[30] + 0x00000010u;
|
|
/* 02924554 */ rbrew_write32(cpu->mem, _t61, cpu->r[11]);
|
|
/* 02924558 */ _t62 = cpu->r[9] + 0x00000008u;
|
|
/* 02924558 */ cpu->r[12] = rbrew_read32(cpu->mem, _t62);
|
|
/* 0292455C */ _t63 = cpu->r[30] + 0x00000014u;
|
|
/* 0292455C */ rbrew_write32(cpu->mem, _t63, cpu->r[12]);
|
|
/* 02924560 */ _t64 = cpu->r[9] + 0x0000000Cu;
|
|
/* 02924560 */ cpu->r[0] = rbrew_read32(cpu->mem, _t64);
|
|
/* 02924564 */ _t65 = cpu->r[30] + 0x00000018u;
|
|
/* 02924564 */ rbrew_write32(cpu->mem, _t65, cpu->r[0]);
|
|
L_02924568: ; // 0x2924568
|
|
/* 02924568 */ cpu->r[0] = 0x10140000u;
|
|
/* 0292456C */ _t66 = cpu->r[1] + 0x00000038u;
|
|
/* 0292456C */ rbrew_write32(cpu->mem, _t66, cpu->r[29]);
|
|
/* 02924570 */ cpu->r[0] = cpu->r[0] + 0x00003804u;
|
|
/* 02924574 */ _t67 = cpu->r[1] + 0x00000040u;
|
|
/* 02924574 */ rbrew_write32(cpu->mem, _t67, cpu->r[29]);
|
|
/* 02924578 */ cpu->r[5] = 0x10140000u;
|
|
/* 0292457C */ _t68 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0292457C */ rbrew_write32(cpu->mem, _t68, cpu->r[0]);
|
|
/* 02924580 */ cpu->r[5] = cpu->r[5] + 0x000037A4u;
|
|
/* 02924584 */ cpu->r[30] = cpu->r[31] + 0x000000E4u;
|
|
/* 02924584 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02924588 */ _t69 = cpu->r[1] + 0x00000034u;
|
|
/* 02924588 */ rbrew_write32(cpu->mem, _t69, cpu->r[5]);
|
|
/* 0292458C */ _t70 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292458C */ _t71 = _t70 & 0x00000001u;
|
|
/* 0292458C */ if (_t71) goto L_02924590; else goto L_029245A0;
|
|
L_02924590: ; // 0x2924590
|
|
/* 02924590 */ cpu->r[3] = 0x0000001Cu;
|
|
/* 02924594 */ Gambit_fn_02801A78(cpu);
|
|
/* 02924598 */ cpu->r[30] = cpu->r[3];
|
|
/* 02924598 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0292459C */ _t72 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292459C */ _t73 = _t72 & 0x00000001u;
|
|
/* 0292459C */ if (_t73) goto L_02924620; else goto L_029245A0;
|
|
L_029245A0: ; // 0x29245a0
|
|
/* 029245A0 */ cpu->r[3] = cpu->r[30];
|
|
/* 029245A4 */ Gambit_fn_0294F7F0(cpu);
|
|
/* 029245A8 */ cpu->r[3] = cpu->r[30] + 0x0000000Cu;
|
|
/* 029245A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 029245AC */ _t74 = cpu->r[30] + 0x00000008u;
|
|
/* 029245AC */ rbrew_write32(cpu->mem, _t74, cpu->r[28]);
|
|
/* 029245B0 */ _t75 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029245B0 */ _t76 = _t75 & 0x00000001u;
|
|
/* 029245B0 */ if (_t76) goto L_029245B4; else goto L_029245C4;
|
|
L_029245B4: ; // 0x29245b4
|
|
/* 029245B4 */ cpu->r[3] = 0x00000010u;
|
|
/* 029245B8 */ Gambit_fn_02801A78(cpu);
|
|
/* 029245BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 029245C0 */ _t77 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029245C0 */ _t78 = _t77 & 0x00000001u;
|
|
/* 029245C0 */ if (_t78) goto L_029245DC; else goto L_029245C4;
|
|
L_029245C4: ; // 0x29245c4
|
|
/* 029245C4 */ _t79 = cpu->r[26] + 0x00000000u;
|
|
/* 029245C4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t79);
|
|
/* 029245C8 */ _t80 = cpu->r[3] + 0x00000000u;
|
|
/* 029245C8 */ rbrew_write_f32(cpu->mem, _t80, cpu->f[11]);
|
|
/* 029245CC */ _t81 = cpu->r[3] + 0x00000004u;
|
|
/* 029245CC */ rbrew_write_f32(cpu->mem, _t81, cpu->f[11]);
|
|
/* 029245D0 */ _t82 = cpu->r[3] + 0x00000008u;
|
|
/* 029245D0 */ rbrew_write_f32(cpu->mem, _t82, cpu->f[11]);
|
|
/* 029245D4 */ _t83 = cpu->r[27] + 0x00000000u;
|
|
/* 029245D4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t83);
|
|
/* 029245D8 */ _t84 = cpu->r[3] + 0x0000000Cu;
|
|
/* 029245D8 */ rbrew_write_f32(cpu->mem, _t84, cpu->f[11]);
|
|
L_029245DC: ; // 0x29245dc
|
|
/* 029245DC */ _t85 = cpu->r[1] + 0x00000090u;
|
|
/* 029245DC */ rbrew_write32(cpu->mem, _t85, cpu->r[29]);
|
|
/* 029245E0 */ cpu->r[3] = cpu->r[30];
|
|
/* 029245E4 */ cpu->r[7] = cpu->r[31];
|
|
/* 029245E8 */ cpu->r[6] = cpu->r[1] + 0x0000008Cu;
|
|
/* 029245EC */ cpu->r[4] = cpu->r[1] + 0x00000034u;
|
|
/* 029245F0 */ cpu->r[5] = cpu->r[1] + 0x0000003Cu;
|
|
/* 029245F4 */ _t86 = cpu->r[1] + 0x0000008Cu;
|
|
/* 029245F4 */ rbrew_write32(cpu->mem, _t86, cpu->r[25]);
|
|
/* 029245F8 */ Gambit_fn_0294F794(cpu);
|
|
/* 029245FC */ cpu->r[7] = 0x101F0000u;
|
|
/* 02924600 */ _t87 = cpu->r[7] + 0x00005BCCu;
|
|
/* 02924600 */ cpu->r[8] = rbrew_read32(cpu->mem, _t87);
|
|
/* 02924600 */ cpu->r[7] = _t87;
|
|
/* 02924604 */ _t88 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02924604 */ rbrew_write32(cpu->mem, _t88, cpu->r[8]);
|
|
/* 02924608 */ _t89 = cpu->r[7] + 0x00000004u;
|
|
/* 02924608 */ cpu->r[9] = rbrew_read32(cpu->mem, _t89);
|
|
/* 0292460C */ _t90 = cpu->r[30] + 0x00000010u;
|
|
/* 0292460C */ rbrew_write32(cpu->mem, _t90, cpu->r[9]);
|
|
/* 02924610 */ _t91 = cpu->r[7] + 0x00000008u;
|
|
/* 02924610 */ cpu->r[10] = rbrew_read32(cpu->mem, _t91);
|
|
/* 02924614 */ _t92 = cpu->r[30] + 0x00000014u;
|
|
/* 02924614 */ rbrew_write32(cpu->mem, _t92, cpu->r[10]);
|
|
/* 02924618 */ _t93 = cpu->r[7] + 0x0000000Cu;
|
|
/* 02924618 */ cpu->r[11] = rbrew_read32(cpu->mem, _t93);
|
|
/* 0292461C */ _t94 = cpu->r[30] + 0x00000018u;
|
|
/* 0292461C */ rbrew_write32(cpu->mem, _t94, cpu->r[11]);
|
|
L_02924620: ; // 0x2924620
|
|
/* 02924620 */ cpu->r[0] = 0x10140000u;
|
|
/* 02924624 */ _t95 = cpu->r[1] + 0x00000050u;
|
|
/* 02924624 */ rbrew_write32(cpu->mem, _t95, cpu->r[29]);
|
|
/* 02924628 */ cpu->r[0] = cpu->r[0] + 0x00003810u;
|
|
/* 0292462C */ _t96 = cpu->r[1] + 0x00000058u;
|
|
/* 0292462C */ rbrew_write32(cpu->mem, _t96, cpu->r[29]);
|
|
/* 02924630 */ cpu->r[12] = 0x10140000u;
|
|
/* 02924634 */ _t97 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02924634 */ rbrew_write32(cpu->mem, _t97, cpu->r[0]);
|
|
/* 02924638 */ cpu->r[12] = cpu->r[12] + 0x000037B4u;
|
|
/* 0292463C */ _t98 = cpu->r[1] + 0x00000048u;
|
|
/* 0292463C */ rbrew_write32(cpu->mem, _t98, cpu->r[29]);
|
|
/* 02924640 */ cpu->r[7] = 0x10140000u;
|
|
/* 02924644 */ _t99 = cpu->r[1] + 0x00000044u;
|
|
/* 02924644 */ rbrew_write32(cpu->mem, _t99, cpu->r[12]);
|
|
/* 02924648 */ cpu->r[7] = cpu->r[7] + 0x00003820u;
|
|
/* 0292464C */ cpu->r[30] = cpu->r[31] + 0x00000100u;
|
|
/* 0292464C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02924650 */ _t100 = cpu->r[1] + 0x00000054u;
|
|
/* 02924650 */ rbrew_write32(cpu->mem, _t100, cpu->r[7]);
|
|
/* 02924654 */ _t101 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02924654 */ _t102 = _t101 & 0x00000001u;
|
|
/* 02924654 */ if (_t102) goto L_02924658; else goto L_02924668;
|
|
L_02924658: ; // 0x2924658
|
|
/* 02924658 */ cpu->r[3] = 0x00000010u;
|
|
/* 0292465C */ Gambit_fn_02801A78(cpu);
|
|
/* 02924660 */ cpu->r[30] = cpu->r[3];
|
|
/* 02924660 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02924664 */ _t103 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02924664 */ _t104 = _t103 & 0x00000001u;
|
|
/* 02924664 */ if (_t104) goto L_029246A0; else goto L_02924668;
|
|
L_02924668: ; // 0x2924668
|
|
/* 02924668 */ cpu->r[3] = cpu->r[30];
|
|
/* 0292466C */ Gambit_fn_0294F7F0(cpu);
|
|
/* 02924670 */ cpu->r[0] = 0x10140000u;
|
|
/* 02924674 */ cpu->r[3] = cpu->r[30];
|
|
/* 02924678 */ cpu->r[7] = cpu->r[31];
|
|
/* 0292467C */ cpu->r[0] = cpu->r[0] + 0x00003468u;
|
|
/* 02924680 */ cpu->r[6] = cpu->r[1] + 0x00000054u;
|
|
/* 02924684 */ cpu->r[4] = cpu->r[1] + 0x00000044u;
|
|
/* 02924688 */ cpu->r[5] = cpu->r[1] + 0x0000004Cu;
|
|
/* 0292468C */ _t105 = cpu->r[30] + 0x00000008u;
|
|
/* 0292468C */ rbrew_write32(cpu->mem, _t105, cpu->r[0]);
|
|
/* 02924690 */ Gambit_fn_0294F794(cpu);
|
|
/* 02924694 */ cpu->r[7] = 0x10140000u;
|
|
/* 02924698 */ _t106 = cpu->r[7] + 0x000036A8u;
|
|
/* 02924698 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t106);
|
|
/* 0292469C */ _t107 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0292469C */ rbrew_write_f32(cpu->mem, _t107, cpu->f[12]);
|
|
L_029246A0: ; // 0x29246a0
|
|
/* 029246A0 */ _t108 = cpu->r[1] + 0x00000060u;
|
|
/* 029246A0 */ rbrew_write32(cpu->mem, _t108, cpu->r[29]);
|
|
/* 029246A4 */ cpu->r[9] = 0x101F0000u;
|
|
/* 029246A8 */ _t109 = cpu->r[9] + 0x00006368u;
|
|
/* 029246A8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t109);
|
|
/* 029246A8 */ cpu->r[9] = _t109;
|
|
/* 029246AC */ cpu->r[6] = 0x10140000u;
|
|
/* 029246B0 */ _t110 = cpu->r[1] + 0x00000068u;
|
|
/* 029246B0 */ rbrew_write32(cpu->mem, _t110, cpu->r[29]);
|
|
/* 029246B4 */ cpu->f[11] = -cpu->f[13];
|
|
/* 029246B8 */ _t111 = cpu->r[9] + 0x00000004u;
|
|
/* 029246B8 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t111);
|
|
/* 029246BC */ cpu->r[6] = cpu->r[6] + 0x000037C0u;
|
|
/* 029246C0 */ _t112 = cpu->r[9] + 0x00000008u;
|
|
/* 029246C0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t112);
|
|
/* 029246C4 */ cpu->f[0] = -cpu->f[9];
|
|
/* 029246C8 */ _t113 = cpu->r[1] + 0x00000008u;
|
|
/* 029246C8 */ rbrew_write_f32(cpu->mem, _t113, cpu->f[11]);
|
|
/* 029246CC */ _t114 = cpu->r[1] + 0x00000008u;
|
|
/* 029246CC */ cpu->r[12] = rbrew_read32(cpu->mem, _t114);
|
|
/* 029246D0 */ cpu->f[10] = -cpu->f[13];
|
|
/* 029246D4 */ _t115 = cpu->r[1] + 0x0000005Cu;
|
|
/* 029246D4 */ rbrew_write32(cpu->mem, _t115, cpu->r[6]);
|
|
/* 029246D8 */ cpu->r[7] = 0x10140000u;
|
|
/* 029246DC */ _t116 = cpu->r[1] + 0x0000000Cu;
|
|
/* 029246DC */ rbrew_write_f32(cpu->mem, _t116, cpu->f[0]);
|
|
/* 029246E0 */ _t117 = cpu->r[1] + 0x0000000Cu;
|
|
/* 029246E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t117);
|
|
/* 029246E4 */ cpu->r[7] = cpu->r[7] + 0x0000378Cu;
|
|
/* 029246E8 */ _t118 = cpu->r[1] + 0x00000010u;
|
|
/* 029246E8 */ rbrew_write_f32(cpu->mem, _t118, cpu->f[10]);
|
|
/* 029246EC */ _t119 = cpu->r[1] + 0x00000010u;
|
|
/* 029246EC */ cpu->r[5] = rbrew_read32(cpu->mem, _t119);
|
|
/* 029246F0 */ _t120 = cpu->r[1] + 0x00000064u;
|
|
/* 029246F0 */ rbrew_write32(cpu->mem, _t120, cpu->r[7]);
|
|
/* 029246F4 */ cpu->r[30] = cpu->r[31] + 0x00000110u;
|
|
/* 029246F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 029246F8 */ _t121 = cpu->r[1] + 0x000000A8u;
|
|
/* 029246F8 */ rbrew_write32(cpu->mem, _t121, cpu->r[0]);
|
|
/* 029246FC */ _t122 = cpu->r[1] + 0x000000A4u;
|
|
/* 029246FC */ rbrew_write32(cpu->mem, _t122, cpu->r[12]);
|
|
/* 02924700 */ _t123 = cpu->r[1] + 0x000000ACu;
|
|
/* 02924700 */ rbrew_write32(cpu->mem, _t123, cpu->r[5]);
|
|
/* 02924704 */ _t124 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02924704 */ _t125 = _t124 & 0x00000001u;
|
|
/* 02924704 */ if (_t125) goto L_02924708; else goto L_02924718;
|
|
L_02924708: ; // 0x2924708
|
|
/* 02924708 */ cpu->r[3] = 0x00000018u;
|
|
/* 0292470C */ Gambit_fn_02801A78(cpu);
|
|
/* 02924710 */ cpu->r[30] = cpu->r[3];
|
|
/* 02924710 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02924714 */ _t126 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02924714 */ _t127 = _t126 & 0x00000001u;
|
|
/* 02924714 */ if (_t127) goto L_0292476C; else goto L_02924718;
|
|
L_02924718: ; // 0x2924718
|
|
/* 02924718 */ cpu->r[3] = cpu->r[30];
|
|
/* 0292471C */ Gambit_fn_0294F7F0(cpu);
|
|
/* 02924720 */ cpu->r[8] = 0x10140000u;
|
|
/* 02924724 */ cpu->r[3] = cpu->r[30];
|
|
/* 02924728 */ cpu->r[8] = cpu->r[8] + 0x000034F8u;
|
|
/* 0292472C */ cpu->r[9] = 0x10140000u;
|
|
/* 02924730 */ cpu->r[7] = cpu->r[31];
|
|
/* 02924734 */ _t128 = cpu->r[30] + 0x00000008u;
|
|
/* 02924734 */ rbrew_write32(cpu->mem, _t128, cpu->r[8]);
|
|
/* 02924738 */ cpu->r[9] = cpu->r[9] + 0x0000339Eu;
|
|
/* 0292473C */ cpu->r[4] = cpu->r[1] + 0x0000005Cu;
|
|
/* 02924740 */ _t129 = cpu->r[1] + 0x00000098u;
|
|
/* 02924740 */ rbrew_write32(cpu->mem, _t129, cpu->r[29]);
|
|
/* 02924744 */ cpu->r[6] = cpu->r[1] + 0x00000094u;
|
|
/* 02924748 */ cpu->r[5] = cpu->r[1] + 0x00000064u;
|
|
/* 0292474C */ _t130 = cpu->r[1] + 0x00000094u;
|
|
/* 0292474C */ rbrew_write32(cpu->mem, _t130, cpu->r[9]);
|
|
/* 02924750 */ Gambit_fn_0294F794(cpu);
|
|
/* 02924754 */ _t131 = cpu->r[1] + 0x000000A4u;
|
|
/* 02924754 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t131);
|
|
/* 02924758 */ _t132 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02924758 */ rbrew_write_f32(cpu->mem, _t132, cpu->f[0]);
|
|
/* 0292475C */ _t133 = cpu->r[1] + 0x000000A8u;
|
|
/* 0292475C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t133);
|
|
/* 02924760 */ _t134 = cpu->r[30] + 0x00000010u;
|
|
/* 02924760 */ rbrew_write_f32(cpu->mem, _t134, cpu->f[9]);
|
|
/* 02924764 */ _t135 = cpu->r[1] + 0x000000ACu;
|
|
/* 02924764 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t135);
|
|
/* 02924768 */ _t136 = cpu->r[30] + 0x00000014u;
|
|
/* 02924768 */ rbrew_write_f32(cpu->mem, _t136, cpu->f[10]);
|
|
L_0292476C: ; // 0x292476c
|
|
/* 0292476C */ cpu->r[12] = 0x10140000u;
|
|
/* 02924770 */ cpu->r[0] = 0x10140000u;
|
|
/* 02924774 */ cpu->r[12] = cpu->r[12] + 0x00003618u;
|
|
/* 02924778 */ cpu->r[0] = cpu->r[0] + 0x00003840u;
|
|
/* 0292477C */ _t137 = cpu->r[31] + 0x00000118u;
|
|
/* 0292477C */ rbrew_write32(cpu->mem, _t137, cpu->r[12]);
|
|
/* 02924780 */ cpu->r[5] = 0x10140000u;
|
|
/* 02924784 */ _t138 = cpu->r[1] + 0x00000074u;
|
|
/* 02924784 */ rbrew_write32(cpu->mem, _t138, cpu->r[0]);
|
|
/* 02924788 */ cpu->r[5] = cpu->r[5] + 0x00003830u;
|
|
/* 0292478C */ _t139 = cpu->r[1] + 0x00000078u;
|
|
/* 0292478C */ rbrew_write32(cpu->mem, _t139, cpu->r[29]);
|
|
/* 02924790 */ cpu->r[30] = cpu->r[31] + 0x00000128u;
|
|
/* 02924790 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02924794 */ _t140 = cpu->r[1] + 0x00000070u;
|
|
/* 02924794 */ rbrew_write32(cpu->mem, _t140, cpu->r[29]);
|
|
/* 02924798 */ _t141 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02924798 */ rbrew_write32(cpu->mem, _t141, cpu->r[5]);
|
|
/* 0292479C */ _t142 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292479C */ _t143 = _t142 & 0x00000001u;
|
|
/* 0292479C */ if (_t143) goto L_029247A0; else goto L_029247B0;
|
|
L_029247A0: ; // 0x29247a0
|
|
/* 029247A0 */ cpu->r[3] = 0x00000010u;
|
|
/* 029247A4 */ Gambit_fn_02801A78(cpu);
|
|
/* 029247A8 */ cpu->r[30] = cpu->r[3];
|
|
/* 029247A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 029247AC */ _t144 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029247AC */ _t145 = _t144 & 0x00000001u;
|
|
/* 029247AC */ if (_t145) goto L_029247F4; else goto L_029247B0;
|
|
L_029247B0: ; // 0x29247b0
|
|
/* 029247B0 */ cpu->r[3] = cpu->r[30];
|
|
/* 029247B4 */ Gambit_fn_0294F7F0(cpu);
|
|
/* 029247B8 */ cpu->r[8] = 0x10140000u;
|
|
/* 029247BC */ cpu->r[3] = cpu->r[30];
|
|
/* 029247C0 */ cpu->r[7] = cpu->r[31];
|
|
/* 029247C4 */ cpu->r[8] = cpu->r[8] + 0x000033D8u;
|
|
/* 029247C8 */ cpu->r[4] = cpu->r[1] + 0x0000006Cu;
|
|
/* 029247CC */ cpu->r[0] = 0x10140000u;
|
|
/* 029247D0 */ _t146 = cpu->r[30] + 0x00000008u;
|
|
/* 029247D0 */ rbrew_write32(cpu->mem, _t146, cpu->r[8]);
|
|
/* 029247D4 */ cpu->r[5] = cpu->r[1] + 0x00000074u;
|
|
/* 029247D8 */ cpu->r[0] = cpu->r[0] + 0x0000339Cu;
|
|
/* 029247DC */ _t147 = cpu->r[1] + 0x000000A0u;
|
|
/* 029247DC */ rbrew_write32(cpu->mem, _t147, cpu->r[29]);
|
|
/* 029247E0 */ cpu->r[6] = cpu->r[1] + 0x0000009Cu;
|
|
/* 029247E4 */ _t148 = cpu->r[1] + 0x0000009Cu;
|
|
/* 029247E4 */ rbrew_write32(cpu->mem, _t148, cpu->r[0]);
|
|
/* 029247E8 */ Gambit_fn_0294F794(cpu);
|
|
/* 029247EC */ cpu->r[10] = 0x00000000u;
|
|
/* 029247F0 */ _t149 = cpu->r[30] + 0x0000000Cu;
|
|
/* 029247F0 */ rbrew_write8(cpu->mem, _t149, (uint8_t)cpu->r[10]);
|
|
L_029247F4: ; // 0x29247f4
|
|
/* 029247F4 */ cpu->r[3] = cpu->r[31] + 0x00000138u;
|
|
/* 029247F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 029247F8 */ _t150 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029247F8 */ _t151 = _t150 & 0x00000001u;
|
|
/* 029247F8 */ if (_t151) goto L_029247FC; else goto L_0292480C;
|
|
L_029247FC: ; // 0x29247fc
|
|
/* 029247FC */ cpu->r[3] = 0x00000008u;
|
|
/* 02924800 */ Gambit_fn_02801A78(cpu);
|
|
/* 02924804 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02924808 */ _t152 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02924808 */ _t153 = _t152 & 0x00000001u;
|
|
/* 02924808 */ if (_t153) goto L_02924818; else goto L_0292480C;
|
|
L_0292480C: ; // 0x292480c
|
|
/* 0292480C */ cpu->r[11] = 0x00000000u;
|
|
/* 02924810 */ _t154 = cpu->r[3] + 0x00000004u;
|
|
/* 02924810 */ rbrew_write32(cpu->mem, _t154, cpu->r[11]);
|
|
/* 02924814 */ _t155 = cpu->r[3] + 0x00000000u;
|
|
/* 02924814 */ rbrew_write32(cpu->mem, _t155, cpu->r[11]);
|
|
L_02924818: ; // 0x2924818
|
|
/* 02924818 */ cpu->r[0] = cpu->r[31] + 0x00000140u;
|
|
/* 02924818 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0292481C */ _t156 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292481C */ _t157 = _t156 & 0x00000001u;
|
|
/* 0292481C */ if (_t157) goto L_02924820; else goto L_02924828;
|
|
L_02924820: ; // 0x2924820
|
|
/* 02924820 */ cpu->r[3] = 0x00000030u;
|
|
/* 02924824 */ Gambit_fn_02801A78(cpu);
|
|
L_02924828: ; // 0x2924828
|
|
/* 02924828 */ cpu->r[5] = cpu->r[31] + 0x00000170u;
|
|
/* 02924828 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 0292482C */ _t158 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292482C */ _t159 = _t158 & 0x00000001u;
|
|
/* 0292482C */ if (_t159) goto L_02924830; else goto L_02924838;
|
|
L_02924830: ; // 0x2924830
|
|
/* 02924830 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02924834 */ Gambit_fn_02801A78(cpu);
|
|
L_02924838: ; // 0x2924838
|
|
/* 02924838 */ cpu->r[6] = cpu->r[31] + 0x0000017Cu;
|
|
/* 02924838 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 0292483C */ _t160 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292483C */ _t161 = _t160 & 0x00000001u;
|
|
/* 0292483C */ if (_t161) goto L_02924840; else goto L_02924848;
|
|
L_02924840: ; // 0x2924840
|
|
/* 02924840 */ cpu->r[3] = 0x00000008u;
|
|
/* 02924844 */ Gambit_fn_02801A78(cpu);
|
|
L_02924848: ; // 0x2924848
|
|
/* 02924848 */ _t162 = cpu->r[31] + 0x00000120u;
|
|
/* 02924848 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t162);
|
|
/* 0292484C */ cpu->f[10] = cpu->f[0] * cpu->f[0];
|
|
/* 02924850 */ _t163 = cpu->r[31] + 0x0000011Cu;
|
|
/* 02924850 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t163);
|
|
/* 02924854 */ cpu->f[12] = fma(cpu->f[12], cpu->f[12], cpu->f[10]);
|
|
/* 02924858 */ _t164 = cpu->r[31] + 0x00000124u;
|
|
/* 02924858 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t164);
|
|
/* 0292485C */ cpu->r[10] = 0x10140000u;
|
|
/* 02924860 */ cpu->f[12] = fma(cpu->f[10], cpu->f[10], cpu->f[12]);
|
|
/* 02924864 */ _t165 = cpu->r[10] + 0x0000377Cu;
|
|
/* 02924864 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t165);
|
|
/* 02924868 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[13]);
|
|
/* 0292486C */ _t166 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0292486C */ _t167 = _t166 & 0x00000001u;
|
|
/* 0292486C */ if (_t167) goto L_02924870; else goto L_029248AC;
|
|
L_02924870: ; // 0x2924870
|
|
/* 02924870 */ cpu->r[8] = 0x10140000u;
|
|
/* 02924874 */ cpu->r[7] = 0x10140000u;
|
|
/* 02924878 */ _t168 = cpu->r[8] + 0x00003780u;
|
|
/* 02924878 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t168);
|
|
/* 0292487C */ _t169 = cpu->r[7] + 0x00003784u;
|
|
/* 0292487C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t169);
|
|
/* 02924880 */ _ft170 = sqrt(cpu->f[12]);
|
|
/* 02924880 */ _ft171 = (double)(int32_t)0x00000001u;
|
|
/* 02924880 */ cpu->f[13] = _ft171 / _ft170;
|
|
/* 02924884 */ cpu->f[9] = cpu->f[13] * cpu->f[13];
|
|
/* 02924888 */ cpu->f[10] = cpu->f[13] * cpu->f[11];
|
|
/* 0292488C */ cpu->f[9] = -fma(cpu->f[9], cpu->f[12], -(cpu->f[0]));
|
|
/* 02924890 */ cpu->f[13] = cpu->f[9] * cpu->f[10];
|
|
/* 02924894 */ _t172 = cpu->r[31] + 0x00000124u;
|
|
/* 02924894 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t172);
|
|
/* 02924898 */ /* nop */
|
|
/* 0292489C */ cpu->f[11] = cpu->f[11] * cpu->f[13];
|
|
/* 029248A0 */ /* nop */
|
|
/* 029248A4 */ _t173 = cpu->r[31] + 0x00000124u;
|
|
/* 029248A4 */ rbrew_write_f32(cpu->mem, _t173, cpu->f[11]);
|
|
/* 029248A8 */ /* nop */
|
|
L_029248AC: ; // 0x29248ac
|
|
/* 029248AC */ cpu->r[3] = cpu->r[31];
|
|
/* 029248B0 */ Gambit_fn_02924244(cpu);
|
|
L_029248B4: ; // 0x29248b4
|
|
/* 029248B4 */ cpu->r[3] = cpu->r[31];
|
|
/* 029248B8 */ /* nop */
|
|
/* 029248BC */ _t174 = cpu->r[1] + 0x000000D4u;
|
|
/* 029248BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t174);
|
|
/* 029248C0 */ cpu->lr = cpu->r[0];
|
|
/* 029248C4 */ cpu->r[1] = cpu->r[1] + 0x000000D0u;
|
|
/* 029248C8 */ return;
|
|
}
|
|
|
|
// fn_029248CC @ 0x29248cc
|
|
void Gambit_fn_029248CC(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_029248CC: ; // 0x29248cc
|
|
/* 029248CC */ cpu->r[0] = cpu->lr;
|
|
/* 029248D0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 029248D0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 029248D0 */ cpu->r[1] = _t0;
|
|
/* 029248D4 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 029248D4 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 029248D8 */ cpu->r[30] = cpu->r[3];
|
|
/* 029248DC */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 029248DC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 029248E0 */ cpu->r[31] = cpu->r[4];
|
|
/* 029248E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 029248E4 */ cpu->r[3] = cpu->r[5];
|
|
/* 029248E8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 029248E8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 029248EC */ _t4 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 029248EC */ _t5 = _t4 & 0x00000001u;
|
|
/* 029248EC */ if (_t5) goto L_029248F0; else goto L_0292493C;
|
|
L_029248F0: ; // 0x29248f0
|
|
/* 029248F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 029248F4 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029248F4 */ _t7 = _t6 & 0x00000001u;
|
|
/* 029248F4 */ if (_t7) goto L_029248F8; else goto L_02924904;
|
|
L_029248F8: ; // 0x29248f8
|
|
/* 029248F8 */ cpu->r[3] = 0x101D0000u;
|
|
/* 029248FC */ _t8 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 029248FC */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02924900 */ Gambit_fn_02826F20(cpu);
|
|
L_02924904: ; // 0x2924904
|
|
/* 02924904 */ _t9 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02924904 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02924908 */ _t10 = cpu->r[12] + 0x00000034u;
|
|
/* 02924908 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0292490C */ cpu->ctr = cpu->r[0];
|
|
/* 02924910 */ cpu->r[5] = 0x00000004u;
|
|
/* 02924914 */ cpu->r[4] = (uint32_t)((int32_t)cpu->r[31] * (int32_t)0x0000000Cu);
|
|
/* 02924918 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0292491C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02924920 */ cpu->r[0] = cpu->r[31];
|
|
/* 02924924 */ _t11 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02924924 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02924924 */ if (_t12) goto L_0292492C; else goto L_02924928;
|
|
L_02924928: ; // 0x2924928
|
|
/* 02924928 */ cpu->r[0] = 0x00000001u;
|
|
L_0292492C: ; // 0x292492c
|
|
/* 0292492C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02924930 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02924930 */ _t14 = _t13 & 0x00000001u;
|
|
/* 02924930 */ if (_t14) goto L_0292493C; else goto L_02924934;
|
|
L_02924934: ; // 0x2924934
|
|
/* 02924934 */ _t15 = cpu->r[30] + 0x0000013Cu;
|
|
/* 02924934 */ rbrew_write32(cpu->mem, _t15, cpu->r[3]);
|
|
/* 02924938 */ _t16 = cpu->r[30] + 0x00000138u;
|
|
/* 02924938 */ rbrew_write32(cpu->mem, _t16, cpu->r[31]);
|
|
L_0292493C: ; // 0x292493c
|
|
/* 0292493C */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 0292493C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02924940 */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 02924940 */ cpu->r[30] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02924944 */ cpu->lr = cpu->r[0];
|
|
/* 02924948 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02924948 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0292494C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02924950 */ return;
|
|
}
|
|
|
|
// fn_029248D0 @ 0x29248d0
|
|
void Gambit_fn_029248D0(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_029248D0: ; // 0x29248d0
|
|
/* 029248D0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 029248D0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 029248D0 */ cpu->r[1] = _t0;
|
|
/* 029248D4 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 029248D4 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 029248D8 */ cpu->r[30] = cpu->r[3];
|
|
/* 029248DC */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 029248DC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 029248E0 */ cpu->r[31] = cpu->r[4];
|
|
/* 029248E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 029248E4 */ cpu->r[3] = cpu->r[5];
|
|
/* 029248E8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 029248E8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 029248EC */ _t4 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 029248EC */ _t5 = _t4 & 0x00000001u;
|
|
/* 029248EC */ if (_t5) goto L_029248F0; else goto L_0292493C;
|
|
L_029248F0: ; // 0x29248f0
|
|
/* 029248F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 029248F4 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029248F4 */ _t7 = _t6 & 0x00000001u;
|
|
/* 029248F4 */ if (_t7) goto L_029248F8; else goto L_02924904;
|
|
L_029248F8: ; // 0x29248f8
|
|
/* 029248F8 */ cpu->r[3] = 0x101D0000u;
|
|
/* 029248FC */ _t8 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 029248FC */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02924900 */ Gambit_fn_02826F20(cpu);
|
|
L_02924904: ; // 0x2924904
|
|
/* 02924904 */ _t9 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02924904 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02924908 */ _t10 = cpu->r[12] + 0x00000034u;
|
|
/* 02924908 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0292490C */ cpu->ctr = cpu->r[0];
|
|
/* 02924910 */ cpu->r[5] = 0x00000004u;
|
|
/* 02924914 */ cpu->r[4] = (uint32_t)((int32_t)cpu->r[31] * (int32_t)0x0000000Cu);
|
|
/* 02924918 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0292491C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02924920 */ cpu->r[0] = cpu->r[31];
|
|
/* 02924924 */ _t11 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02924924 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02924924 */ if (_t12) goto L_0292492C; else goto L_02924928;
|
|
L_02924928: ; // 0x2924928
|
|
/* 02924928 */ cpu->r[0] = 0x00000001u;
|
|
L_0292492C: ; // 0x292492c
|
|
/* 0292492C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02924930 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02924930 */ _t14 = _t13 & 0x00000001u;
|
|
/* 02924930 */ if (_t14) goto L_0292493C; else goto L_02924934;
|
|
L_02924934: ; // 0x2924934
|
|
/* 02924934 */ _t15 = cpu->r[30] + 0x0000013Cu;
|
|
/* 02924934 */ rbrew_write32(cpu->mem, _t15, cpu->r[3]);
|
|
/* 02924938 */ _t16 = cpu->r[30] + 0x00000138u;
|
|
/* 02924938 */ rbrew_write32(cpu->mem, _t16, cpu->r[31]);
|
|
L_0292493C: ; // 0x292493c
|
|
/* 0292493C */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 0292493C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02924940 */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 02924940 */ cpu->r[30] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02924944 */ cpu->lr = cpu->r[0];
|
|
/* 02924948 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02924948 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0292494C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02924950 */ return;
|
|
}
|
|
|
|
// fn_02924954 @ 0x2924954
|
|
void Gambit_fn_02924954(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t37, _t38, _t39, _t40, _t41;
|
|
double _ft35, _ft36;
|
|
|
|
L_02924954: ; // 0x2924954
|
|
/* 02924954 */ cpu->r[0] = cpu->lr;
|
|
/* 02924958 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02924958 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02924958 */ cpu->r[1] = _t0;
|
|
/* 0292495C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0292495C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02924960 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02924960 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02924964 */ cpu->r[30] = cpu->r[3];
|
|
/* 02924968 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02924968 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0292496C */ _t4 = cpu->r[30] + 0x00000134u;
|
|
/* 0292496C */ cpu->r[0] = rbrew_read8(cpu->mem, _t4);
|
|
/* 02924970 */ cpu->r[31] = cpu->r[6];
|
|
/* 02924974 */ _t5 = cpu->r[30] + 0x00000138u;
|
|
/* 02924974 */ cpu->r[7] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02924978 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0292497C */ _t6 = cpu->r[30] + 0x0000013Cu;
|
|
/* 0292497C */ cpu->r[5] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02924980 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02924980 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02924980 */ if (_t8) goto L_02924984; else goto L_029249B4;
|
|
L_02924984: ; // 0x2924984
|
|
/* 02924984 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[7]);
|
|
/* 02924988 */ _t9 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02924988 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02924988 */ if (_t10) goto L_0292498C; else goto L_02924994;
|
|
L_0292498C: ; // 0x292498c
|
|
/* 0292498C */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[31] * (int32_t)0x0000000Cu);
|
|
/* 02924990 */ cpu->r[5] = cpu->r[5] + cpu->r[0];
|
|
L_02924994: ; // 0x2924994
|
|
/* 02924994 */ cpu->r[3] = cpu->r[4];
|
|
/* 02924998 */ cpu->r[4] = cpu->r[30] + 0x0000011Cu;
|
|
/* 0292499C */ Gambit_fn_02C694BC(cpu);
|
|
/* 029249A0 */ _t11 = cpu->r[30] + 0x00000138u;
|
|
/* 029249A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 029249A4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 029249A8 */ _t12 = cpu->r[30] + 0x0000013Cu;
|
|
/* 029249A8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 029249AC */ _t13 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 029249AC */ _t14 = _t13 & 0x00000001u;
|
|
/* 029249AC */ if (_t14) goto L_029249EC; else goto L_029249B0;
|
|
L_029249B0: ; // 0x29249b0
|
|
/* 029249B0 */ goto L_029249F4;
|
|
L_029249B4: ; // 0x29249b4
|
|
/* 029249B4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[7]);
|
|
/* 029249B8 */ _t15 = cpu->r[30] + 0x0000011Cu;
|
|
/* 029249B8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 029249BC */ _t16 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 029249BC */ _t17 = _t16 & 0x00000001u;
|
|
/* 029249BC */ if (_t17) goto L_029249C0; else goto L_029249C8;
|
|
L_029249C0: ; // 0x29249c0
|
|
/* 029249C0 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[31] * (int32_t)0x0000000Cu);
|
|
/* 029249C4 */ cpu->r[5] = cpu->r[5] + cpu->r[0];
|
|
L_029249C8: ; // 0x29249c8
|
|
/* 029249C8 */ _t18 = cpu->r[5] + 0x00000000u;
|
|
/* 029249C8 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[0]);
|
|
/* 029249CC */ _t19 = cpu->r[30] + 0x00000120u;
|
|
/* 029249CC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 029249D0 */ _t20 = cpu->r[5] + 0x00000004u;
|
|
/* 029249D0 */ rbrew_write_f32(cpu->mem, _t20, cpu->f[9]);
|
|
/* 029249D4 */ _t21 = cpu->r[30] + 0x00000124u;
|
|
/* 029249D4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 029249D8 */ _t22 = cpu->r[5] + 0x00000008u;
|
|
/* 029249D8 */ rbrew_write_f32(cpu->mem, _t22, cpu->f[11]);
|
|
/* 029249DC */ _t23 = cpu->r[30] + 0x00000138u;
|
|
/* 029249DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 029249E0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 029249E4 */ _t24 = cpu->r[30] + 0x0000013Cu;
|
|
/* 029249E4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t24);
|
|
/* 029249E8 */ _t25 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 029249E8 */ _t26 = _t25 & 0x00000001u;
|
|
/* 029249E8 */ if (_t26) goto L_029249EC; else goto L_029249B0;
|
|
L_029249EC: ; // 0x29249ec
|
|
/* 029249EC */ cpu->r[5] = (uint32_t)((int32_t)cpu->r[31] * (int32_t)0x0000000Cu);
|
|
/* 029249F0 */ cpu->r[12] = cpu->r[12] + cpu->r[5];
|
|
L_029249F4: ; // 0x29249f4
|
|
/* 029249F4 */ _t27 = cpu->r[12] + 0x00000004u;
|
|
/* 029249F4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 029249F8 */ _t28 = cpu->r[12] + 0x00000000u;
|
|
/* 029249F8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 029249FC */ cpu->f[10] = cpu->f[12] * cpu->f[12];
|
|
/* 02924A00 */ cpu->f[11] = fma(cpu->f[0], cpu->f[0], cpu->f[10]);
|
|
/* 02924A04 */ _t29 = cpu->r[12] + 0x00000008u;
|
|
/* 02924A04 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 02924A08 */ cpu->r[6] = 0x10140000u;
|
|
/* 02924A0C */ cpu->f[9] = fma(cpu->f[13], cpu->f[13], cpu->f[11]);
|
|
/* 02924A10 */ _t30 = cpu->r[6] + 0x0000377Cu;
|
|
/* 02924A10 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 02924A14 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[13]);
|
|
/* 02924A18 */ _t31 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02924A18 */ _t32 = _t31 & 0x00000001u;
|
|
/* 02924A18 */ if (_t32) goto L_02924A1C; else goto L_02924A58;
|
|
L_02924A1C: ; // 0x2924a1c
|
|
/* 02924A1C */ cpu->r[11] = 0x10140000u;
|
|
/* 02924A20 */ _t33 = cpu->r[11] + 0x00003780u;
|
|
/* 02924A20 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 02924A24 */ cpu->r[11] = 0x10140000u;
|
|
/* 02924A28 */ _t34 = cpu->r[11] + 0x00003784u;
|
|
/* 02924A28 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 02924A2C */ _ft35 = sqrt(cpu->f[9]);
|
|
/* 02924A2C */ _ft36 = (double)(int32_t)0x00000001u;
|
|
/* 02924A2C */ cpu->f[11] = _ft36 / _ft35;
|
|
/* 02924A30 */ cpu->f[8] = cpu->f[11] * cpu->f[11];
|
|
/* 02924A34 */ cpu->f[10] = cpu->f[11] * cpu->f[12];
|
|
/* 02924A38 */ cpu->f[8] = -fma(cpu->f[8], cpu->f[9], -(cpu->f[0]));
|
|
/* 02924A3C */ cpu->f[11] = cpu->f[8] * cpu->f[10];
|
|
/* 02924A40 */ _t37 = cpu->r[12] + 0x00000008u;
|
|
/* 02924A40 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 02924A44 */ /* nop */
|
|
/* 02924A48 */ cpu->f[13] = cpu->f[13] * cpu->f[11];
|
|
/* 02924A4C */ /* nop */
|
|
/* 02924A50 */ _t38 = cpu->r[12] + 0x00000008u;
|
|
/* 02924A50 */ rbrew_write_f32(cpu->mem, _t38, cpu->f[13]);
|
|
/* 02924A54 */ /* nop */
|
|
L_02924A58: ; // 0x2924a58
|
|
/* 02924A58 */ _t39 = cpu->r[1] + 0x00000014u;
|
|
/* 02924A58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02924A5C */ _t40 = cpu->r[1] + 0x00000008u;
|
|
/* 02924A5C */ cpu->r[30] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02924A60 */ cpu->lr = cpu->r[0];
|
|
/* 02924A64 */ _t41 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02924A64 */ cpu->r[31] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02924A68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02924A6C */ return;
|
|
}
|
|
|
|
// fn_02924958 @ 0x2924958
|
|
void Gambit_fn_02924958(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t37, _t38, _t39, _t40, _t41;
|
|
double _ft35, _ft36;
|
|
|
|
L_02924958: ; // 0x2924958
|
|
/* 02924958 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02924958 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02924958 */ cpu->r[1] = _t0;
|
|
/* 0292495C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0292495C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02924960 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02924960 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02924964 */ cpu->r[30] = cpu->r[3];
|
|
/* 02924968 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02924968 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0292496C */ _t4 = cpu->r[30] + 0x00000134u;
|
|
/* 0292496C */ cpu->r[0] = rbrew_read8(cpu->mem, _t4);
|
|
/* 02924970 */ cpu->r[31] = cpu->r[6];
|
|
/* 02924974 */ _t5 = cpu->r[30] + 0x00000138u;
|
|
/* 02924974 */ cpu->r[7] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02924978 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0292497C */ _t6 = cpu->r[30] + 0x0000013Cu;
|
|
/* 0292497C */ cpu->r[5] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02924980 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02924980 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02924980 */ if (_t8) goto L_02924984; else goto L_029249B4;
|
|
L_02924984: ; // 0x2924984
|
|
/* 02924984 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[7]);
|
|
/* 02924988 */ _t9 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02924988 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02924988 */ if (_t10) goto L_0292498C; else goto L_02924994;
|
|
L_0292498C: ; // 0x292498c
|
|
/* 0292498C */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[31] * (int32_t)0x0000000Cu);
|
|
/* 02924990 */ cpu->r[5] = cpu->r[5] + cpu->r[0];
|
|
L_02924994: ; // 0x2924994
|
|
/* 02924994 */ cpu->r[3] = cpu->r[4];
|
|
/* 02924998 */ cpu->r[4] = cpu->r[30] + 0x0000011Cu;
|
|
/* 0292499C */ Gambit_fn_02C694BC(cpu);
|
|
/* 029249A0 */ _t11 = cpu->r[30] + 0x00000138u;
|
|
/* 029249A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 029249A4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 029249A8 */ _t12 = cpu->r[30] + 0x0000013Cu;
|
|
/* 029249A8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 029249AC */ _t13 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 029249AC */ _t14 = _t13 & 0x00000001u;
|
|
/* 029249AC */ if (_t14) goto L_029249EC; else goto L_029249B0;
|
|
L_029249B0: ; // 0x29249b0
|
|
/* 029249B0 */ goto L_029249F4;
|
|
L_029249B4: ; // 0x29249b4
|
|
/* 029249B4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[7]);
|
|
/* 029249B8 */ _t15 = cpu->r[30] + 0x0000011Cu;
|
|
/* 029249B8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 029249BC */ _t16 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 029249BC */ _t17 = _t16 & 0x00000001u;
|
|
/* 029249BC */ if (_t17) goto L_029249C0; else goto L_029249C8;
|
|
L_029249C0: ; // 0x29249c0
|
|
/* 029249C0 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[31] * (int32_t)0x0000000Cu);
|
|
/* 029249C4 */ cpu->r[5] = cpu->r[5] + cpu->r[0];
|
|
L_029249C8: ; // 0x29249c8
|
|
/* 029249C8 */ _t18 = cpu->r[5] + 0x00000000u;
|
|
/* 029249C8 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[0]);
|
|
/* 029249CC */ _t19 = cpu->r[30] + 0x00000120u;
|
|
/* 029249CC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 029249D0 */ _t20 = cpu->r[5] + 0x00000004u;
|
|
/* 029249D0 */ rbrew_write_f32(cpu->mem, _t20, cpu->f[9]);
|
|
/* 029249D4 */ _t21 = cpu->r[30] + 0x00000124u;
|
|
/* 029249D4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 029249D8 */ _t22 = cpu->r[5] + 0x00000008u;
|
|
/* 029249D8 */ rbrew_write_f32(cpu->mem, _t22, cpu->f[11]);
|
|
/* 029249DC */ _t23 = cpu->r[30] + 0x00000138u;
|
|
/* 029249DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 029249E0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 029249E4 */ _t24 = cpu->r[30] + 0x0000013Cu;
|
|
/* 029249E4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t24);
|
|
/* 029249E8 */ _t25 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 029249E8 */ _t26 = _t25 & 0x00000001u;
|
|
/* 029249E8 */ if (_t26) goto L_029249EC; else goto L_029249B0;
|
|
L_029249EC: ; // 0x29249ec
|
|
/* 029249EC */ cpu->r[5] = (uint32_t)((int32_t)cpu->r[31] * (int32_t)0x0000000Cu);
|
|
/* 029249F0 */ cpu->r[12] = cpu->r[12] + cpu->r[5];
|
|
L_029249F4: ; // 0x29249f4
|
|
/* 029249F4 */ _t27 = cpu->r[12] + 0x00000004u;
|
|
/* 029249F4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 029249F8 */ _t28 = cpu->r[12] + 0x00000000u;
|
|
/* 029249F8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 029249FC */ cpu->f[10] = cpu->f[12] * cpu->f[12];
|
|
/* 02924A00 */ cpu->f[11] = fma(cpu->f[0], cpu->f[0], cpu->f[10]);
|
|
/* 02924A04 */ _t29 = cpu->r[12] + 0x00000008u;
|
|
/* 02924A04 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 02924A08 */ cpu->r[6] = 0x10140000u;
|
|
/* 02924A0C */ cpu->f[9] = fma(cpu->f[13], cpu->f[13], cpu->f[11]);
|
|
/* 02924A10 */ _t30 = cpu->r[6] + 0x0000377Cu;
|
|
/* 02924A10 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 02924A14 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[13]);
|
|
/* 02924A18 */ _t31 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02924A18 */ _t32 = _t31 & 0x00000001u;
|
|
/* 02924A18 */ if (_t32) goto L_02924A1C; else goto L_02924A58;
|
|
L_02924A1C: ; // 0x2924a1c
|
|
/* 02924A1C */ cpu->r[11] = 0x10140000u;
|
|
/* 02924A20 */ _t33 = cpu->r[11] + 0x00003780u;
|
|
/* 02924A20 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 02924A24 */ cpu->r[11] = 0x10140000u;
|
|
/* 02924A28 */ _t34 = cpu->r[11] + 0x00003784u;
|
|
/* 02924A28 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 02924A2C */ _ft35 = sqrt(cpu->f[9]);
|
|
/* 02924A2C */ _ft36 = (double)(int32_t)0x00000001u;
|
|
/* 02924A2C */ cpu->f[11] = _ft36 / _ft35;
|
|
/* 02924A30 */ cpu->f[8] = cpu->f[11] * cpu->f[11];
|
|
/* 02924A34 */ cpu->f[10] = cpu->f[11] * cpu->f[12];
|
|
/* 02924A38 */ cpu->f[8] = -fma(cpu->f[8], cpu->f[9], -(cpu->f[0]));
|
|
/* 02924A3C */ cpu->f[11] = cpu->f[8] * cpu->f[10];
|
|
/* 02924A40 */ _t37 = cpu->r[12] + 0x00000008u;
|
|
/* 02924A40 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 02924A44 */ /* nop */
|
|
/* 02924A48 */ cpu->f[13] = cpu->f[13] * cpu->f[11];
|
|
/* 02924A4C */ /* nop */
|
|
/* 02924A50 */ _t38 = cpu->r[12] + 0x00000008u;
|
|
/* 02924A50 */ rbrew_write_f32(cpu->mem, _t38, cpu->f[13]);
|
|
/* 02924A54 */ /* nop */
|
|
L_02924A58: ; // 0x2924a58
|
|
/* 02924A58 */ _t39 = cpu->r[1] + 0x00000014u;
|
|
/* 02924A58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02924A5C */ _t40 = cpu->r[1] + 0x00000008u;
|
|
/* 02924A5C */ cpu->r[30] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02924A60 */ cpu->lr = cpu->r[0];
|
|
/* 02924A64 */ _t41 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02924A64 */ cpu->r[31] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02924A68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02924A6C */ return;
|
|
}
|
|
|
|
// fn_02924A70 @ 0x2924a70
|
|
void Gambit_fn_02924A70(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40;
|
|
double _ft11, _ft12, _ft23, _ft24;
|
|
|
|
L_02924244: ; // 0x2924244
|
|
/* 02924244 */ cpu->r[0] = cpu->lr;
|
|
/* 02924248 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 02924248 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02924248 */ cpu->r[1] = _t0;
|
|
/* 0292424C */ _t1 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0292424C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02924250 */ cpu->r[31] = cpu->r[3];
|
|
/* 02924254 */ _t2 = cpu->r[1] + 0x00000024u;
|
|
/* 02924254 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02924258 */ _t3 = cpu->r[31] + 0x00000120u;
|
|
/* 02924258 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 0292425C */ cpu->f[13] = cpu->f[11] * cpu->f[11];
|
|
/* 02924260 */ _t4 = cpu->r[31] + 0x0000011Cu;
|
|
/* 02924260 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 02924264 */ cpu->f[0] = fma(cpu->f[9], cpu->f[9], cpu->f[13]);
|
|
/* 02924268 */ _t5 = cpu->r[31] + 0x00000124u;
|
|
/* 02924268 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 0292426C */ cpu->r[8] = 0x10140000u;
|
|
/* 02924270 */ cpu->f[6] = fma(cpu->f[13], cpu->f[13], cpu->f[0]);
|
|
/* 02924274 */ _t6 = cpu->r[8] + 0x0000377Cu;
|
|
/* 02924274 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 02924278 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[6], cpu->f[13]);
|
|
/* 0292427C */ _t7 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0292427C */ _t8 = _t7 & 0x00000001u;
|
|
/* 0292427C */ if (_t8) goto L_02924280; else goto L_02924374;
|
|
L_02924280: ; // 0x2924280
|
|
/* 02924280 */ cpu->r[12] = 0x10140000u;
|
|
/* 02924284 */ cpu->r[10] = 0x10140000u;
|
|
/* 02924288 */ _t9 = cpu->r[12] + 0x00003780u;
|
|
/* 02924288 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 0292428C */ _t10 = cpu->r[10] + 0x00003784u;
|
|
/* 0292428C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 02924290 */ _ft11 = sqrt(cpu->f[6]);
|
|
/* 02924290 */ _ft12 = (double)(int32_t)0x00000001u;
|
|
/* 02924290 */ cpu->f[7] = _ft12 / _ft11;
|
|
/* 02924294 */ cpu->f[12] = cpu->f[7] * cpu->f[7];
|
|
/* 02924298 */ cpu->f[8] = cpu->f[7] * cpu->f[0];
|
|
/* 0292429C */ cpu->f[12] = -fma(cpu->f[12], cpu->f[6], -(cpu->f[11]));
|
|
/* 029242A0 */ cpu->f[7] = cpu->f[12] * cpu->f[8];
|
|
/* 029242A4 */ /* nop */
|
|
/* 029242A8 */ cpu->f[6] = cpu->f[6] * cpu->f[7];
|
|
/* 029242AC */ /* nop */
|
|
/* 029242B0 */ _t13 = cpu->r[31] + 0x00000124u;
|
|
/* 029242B0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 029242B4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[6]);
|
|
/* 029242B8 */ cpu->f[10] = cpu->f[10] * cpu->f[7];
|
|
/* 029242BC */ /* nop */
|
|
/* 029242C0 */ _t14 = cpu->r[1] + 0x00000018u;
|
|
/* 029242C0 */ rbrew_write_f32(cpu->mem, _t14, cpu->f[10]);
|
|
/* 029242C4 */ _t15 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 029242C4 */ _t16 = _t15 & 0x00000001u;
|
|
/* 029242C4 */ if (_t16) goto L_029242C8; else goto L_02924374;
|
|
L_029242C8: ; // 0x29242c8
|
|
/* 029242C8 */ _t17 = cpu->r[1] + 0x00000010u;
|
|
/* 029242C8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 029242CC */ cpu->f[11] = -cpu->f[11];
|
|
/* 029242D0 */ cpu->f[10] = -cpu->f[10];
|
|
/* 029242D4 */ cpu->f[12] = cpu->f[11] * cpu->f[11];
|
|
/* 029242D8 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 029242D8 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[11]);
|
|
/* 029242DC */ cpu->f[8] = fma(cpu->f[10], cpu->f[10], cpu->f[12]);
|
|
/* 029242E0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[13]);
|
|
/* 029242E4 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 029242E4 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[10]);
|
|
/* 029242E8 */ _t20 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 029242E8 */ _t21 = _t20 & 0x00000001u;
|
|
/* 029242E8 */ if (_t21) goto L_029242EC; else goto L_02924330;
|
|
L_029242EC: ; // 0x29242ec
|
|
/* 029242EC */ cpu->r[9] = 0x10140000u;
|
|
/* 029242F0 */ _t22 = cpu->r[9] + 0x00003784u;
|
|
/* 029242F0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 029242F4 */ _ft23 = sqrt(cpu->f[8]);
|
|
/* 029242F4 */ _ft24 = (double)(int32_t)0x00000001u;
|
|
/* 029242F4 */ cpu->f[9] = _ft24 / _ft23;
|
|
/* 029242F8 */ cpu->f[10] = cpu->f[9] * cpu->f[9];
|
|
/* 029242FC */ cpu->f[11] = cpu->f[9] * cpu->f[0];
|
|
/* 02924300 */ cpu->f[10] = -fma(cpu->f[10], cpu->f[8], -(cpu->f[12]));
|
|
/* 02924304 */ cpu->f[9] = cpu->f[10] * cpu->f[11];
|
|
/* 02924308 */ cpu->f[8] = cpu->f[8] * cpu->f[9];
|
|
/* 0292430C */ /* nop */
|
|
/* 02924310 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[8]);
|
|
/* 02924314 */ /* nop */
|
|
/* 02924318 */ /* nop */
|
|
/* 0292431C */ _t25 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0292431C */ _t26 = _t25 & 0x00000001u;
|
|
/* 0292431C */ if (_t26) goto L_02924320; else goto L_02924330;
|
|
L_02924320: ; // 0x2924320
|
|
/* 02924320 */ _t27 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02924320 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 02924324 */ _t28 = cpu->r[1] + 0x00000008u;
|
|
/* 02924324 */ cpu->f[2] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 02924328 */ Gambit_fn_02C89074(cpu);
|
|
/* 0292432C */ _t29 = cpu->r[31] + 0x0000017Cu;
|
|
/* 0292432C */ rbrew_write_f32(cpu->mem, _t29, cpu->f[1]);
|
|
L_02924330: ; // 0x2924330
|
|
/* 02924330 */ _t30 = cpu->r[1] + 0x00000014u;
|
|
/* 02924330 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 02924334 */ cpu->r[7] = 0x10140000u;
|
|
/* 02924338 */ cpu->f[1] = -cpu->f[9];
|
|
/* 0292433C */ _t31 = cpu->r[7] + 0x00003788u;
|
|
/* 0292433C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 02924340 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[10]);
|
|
/* 02924344 */ _t32 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02924344 */ _t33 = _t32 & 0x00000001u;
|
|
/* 02924344 */ if (_t33) goto L_02924348; else goto L_02924358;
|
|
L_02924348: ; // 0x2924348
|
|
/* 02924348 */ cpu->f[1] = cpu->f[10];
|
|
/* 0292434C */ Gambit_fn_02C8926C(cpu);
|
|
/* 02924350 */ _t34 = cpu->r[31] + 0x00000180u;
|
|
/* 02924350 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[1]);
|
|
/* 02924354 */ goto L_02924374;
|
|
L_02924358: ; // 0x2924358
|
|
/* 02924358 */ cpu->r[11] = 0x10140000u;
|
|
/* 0292435C */ _t35 = cpu->r[11] + 0x000036A8u;
|
|
/* 0292435C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 02924360 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[9]);
|
|
/* 02924364 */ _t36 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02924364 */ _t37 = _t36 & 0x00000001u;
|
|
/* 02924364 */ if (_t37) goto L_02924368; else goto L_0292436C;
|
|
L_02924368: ; // 0x2924368
|
|
/* 02924368 */ cpu->f[1] = cpu->f[9];
|
|
L_0292436C: ; // 0x292436c
|
|
/* 0292436C */ Gambit_fn_02C8926C(cpu);
|
|
/* 02924370 */ _t38 = cpu->r[31] + 0x00000180u;
|
|
/* 02924370 */ rbrew_write_f32(cpu->mem, _t38, cpu->f[1]);
|
|
L_02924374: ; // 0x2924374
|
|
/* 02924374 */ _t39 = cpu->r[1] + 0x00000024u;
|
|
/* 02924374 */ cpu->r[0] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02924378 */ _t40 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02924378 */ cpu->r[31] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0292437C */ cpu->lr = cpu->r[0];
|
|
/* 02924380 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 02924384 */ return;
|
|
L_02924A70: ; // 0x2924a70
|
|
/* 02924A70 */ goto L_02924244;
|
|
}
|
|
|
|
// fn_02924A74 @ 0x2924a74
|
|
void Gambit_fn_02924A74(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t117, _t118, _t119, _t120, _t121, _t122, _t123, _t124, _t125, _t126, _t127, _t128, _t129, _t130, _t131, _t132;
|
|
|
|
L_02924A74: ; // 0x2924a74
|
|
/* 02924A74 */ _t0 = cpu->r[1] + 0xFFFFFF40u;
|
|
/* 02924A74 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02924A74 */ cpu->r[1] = _t0;
|
|
/* 02924A78 */ _t1 = cpu->r[1] + 0x000000B0u;
|
|
/* 02924A78 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 02924A7C */ cpu->r[0] = cpu->lr;
|
|
/* 02924A80 */ /* nop */
|
|
/* 02924A84 */ /* nop */
|
|
/* 02924A88 */ _t2 = cpu->r[1] + 0x000000C4u;
|
|
/* 02924A88 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02924A8C */ cpu->r[31] = cpu->r[3];
|
|
/* 02924A8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02924A90 */ _t3 = cpu->r[1] + 0x000000B8u;
|
|
/* 02924A90 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 02924A94 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02924A94 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02924A94 */ if (_t5) goto L_02924A98; else goto L_02924AA8;
|
|
L_02924A98: ; // 0x2924a98
|
|
/* 02924A98 */ cpu->r[3] = 0x00000134u;
|
|
/* 02924A9C */ Gambit_fn_02801A78(cpu);
|
|
/* 02924AA0 */ cpu->r[31] = cpu->r[3];
|
|
/* 02924AA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02924AA4 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02924AA4 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02924AA4 */ if (_t7) goto L_02924E78; else goto L_02924AA8;
|
|
L_02924AA8: ; // 0x2924aa8
|
|
/* 02924AA8 */ cpu->r[3] = cpu->r[31];
|
|
/* 02924AAC */ Gambit_fn_0291E274(cpu);
|
|
/* 02924AB0 */ cpu->r[9] = 0x10140000u;
|
|
/* 02924AB4 */ cpu->r[10] = 0x10140000u;
|
|
/* 02924AB8 */ cpu->r[28] = 0x10140000u;
|
|
/* 02924ABC */ cpu->r[9] = cpu->r[9] + 0x00003DCCu;
|
|
/* 02924AC0 */ cpu->r[10] = cpu->r[10] + 0x00003B34u;
|
|
/* 02924AC4 */ _t8 = cpu->r[31] + 0x00000018u;
|
|
/* 02924AC4 */ rbrew_write32(cpu->mem, _t8, cpu->r[9]);
|
|
/* 02924AC8 */ cpu->r[28] = cpu->r[28] + 0x000033A0u;
|
|
/* 02924ACC */ cpu->r[11] = 0x10140000u;
|
|
/* 02924AD0 */ _t9 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02924AD0 */ rbrew_write32(cpu->mem, _t9, cpu->r[10]);
|
|
/* 02924AD4 */ cpu->r[11] = cpu->r[11] + 0x000038A8u;
|
|
/* 02924AD8 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02924AD8 */ rbrew_write32(cpu->mem, _t10, cpu->r[28]);
|
|
/* 02924ADC */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 02924ADC */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 02924AE0 */ cpu->r[0] = 0x10140000u;
|
|
/* 02924AE4 */ cpu->r[27] = cpu->r[31] + 0x000000ACu;
|
|
/* 02924AE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02924AE8 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02924AE8 */ rbrew_write32(cpu->mem, _t12, cpu->r[28]);
|
|
/* 02924AEC */ cpu->r[29] = 0x10140000u;
|
|
/* 02924AF0 */ cpu->r[0] = cpu->r[0] + 0x000038B8u;
|
|
/* 02924AF4 */ cpu->r[30] = 0x101F0000u;
|
|
/* 02924AF8 */ cpu->r[29] = cpu->r[29] + 0x0000339Fu;
|
|
/* 02924AFC */ cpu->r[30] = cpu->r[30] + 0x00005BECu;
|
|
/* 02924B00 */ _t13 = cpu->r[1] + 0x00000010u;
|
|
/* 02924B00 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02924B04 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02924B04 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02924B04 */ if (_t15) goto L_02924B08; else goto L_02924B18;
|
|
L_02924B08: ; // 0x2924b08
|
|
/* 02924B08 */ cpu->r[3] = 0x0000001Cu;
|
|
/* 02924B0C */ Gambit_fn_02801A78(cpu);
|
|
/* 02924B10 */ cpu->r[27] = cpu->r[3];
|
|
/* 02924B10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02924B14 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02924B14 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02924B14 */ if (_t17) goto L_02924BA4; else goto L_02924B18;
|
|
L_02924B18: ; // 0x2924b18
|
|
/* 02924B18 */ cpu->r[3] = cpu->r[27];
|
|
/* 02924B1C */ Gambit_fn_0294F7F0(cpu);
|
|
/* 02924B20 */ cpu->r[0] = 0x10140000u;
|
|
/* 02924B24 */ cpu->r[0] = cpu->r[0] + 0x00003588u;
|
|
/* 02924B28 */ cpu->r[3] = cpu->r[27] + 0x0000000Cu;
|
|
/* 02924B28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02924B2C */ _t18 = cpu->r[27] + 0x00000008u;
|
|
/* 02924B2C */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
/* 02924B30 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02924B30 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02924B30 */ if (_t20) goto L_02924B34; else goto L_02924B44;
|
|
L_02924B34: ; // 0x2924b34
|
|
/* 02924B34 */ cpu->r[3] = 0x00000010u;
|
|
/* 02924B38 */ Gambit_fn_02801A78(cpu);
|
|
/* 02924B3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02924B40 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02924B40 */ _t22 = _t21 & 0x00000001u;
|
|
/* 02924B40 */ if (_t22) goto L_02924B64; else goto L_02924B44;
|
|
L_02924B44: ; // 0x2924b44
|
|
/* 02924B44 */ cpu->r[12] = 0x10110000u;
|
|
/* 02924B48 */ _t23 = cpu->r[12] + 0x00004468u;
|
|
/* 02924B48 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 02924B4C */ _t24 = cpu->r[3] + 0x00000000u;
|
|
/* 02924B4C */ rbrew_write_f32(cpu->mem, _t24, cpu->f[0]);
|
|
/* 02924B50 */ _t25 = cpu->r[3] + 0x00000004u;
|
|
/* 02924B50 */ rbrew_write_f32(cpu->mem, _t25, cpu->f[0]);
|
|
/* 02924B54 */ cpu->r[10] = 0x10110000u;
|
|
/* 02924B58 */ _t26 = cpu->r[3] + 0x00000008u;
|
|
/* 02924B58 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[0]);
|
|
/* 02924B5C */ _t27 = cpu->r[10] + 0x00004464u;
|
|
/* 02924B5C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 02924B60 */ _t28 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02924B60 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[0]);
|
|
L_02924B64: ; // 0x2924b64
|
|
/* 02924B64 */ cpu->r[3] = cpu->r[27];
|
|
/* 02924B68 */ cpu->r[7] = cpu->r[31];
|
|
/* 02924B6C */ _t29 = cpu->r[1] + 0x00000070u;
|
|
/* 02924B6C */ rbrew_write32(cpu->mem, _t29, cpu->r[29]);
|
|
/* 02924B70 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 02924B74 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02924B78 */ cpu->r[6] = cpu->r[1] + 0x00000070u;
|
|
/* 02924B7C */ _t30 = cpu->r[1] + 0x00000074u;
|
|
/* 02924B7C */ rbrew_write32(cpu->mem, _t30, cpu->r[28]);
|
|
/* 02924B80 */ Gambit_fn_0294F794(cpu);
|
|
/* 02924B84 */ _t31 = cpu->r[30] + 0x00000000u;
|
|
/* 02924B84 */ cpu->r[6] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02924B88 */ _t32 = cpu->r[27] + 0x0000000Cu;
|
|
/* 02924B88 */ rbrew_write32(cpu->mem, _t32, cpu->r[6]);
|
|
/* 02924B8C */ _t33 = cpu->r[30] + 0x00000004u;
|
|
/* 02924B8C */ cpu->r[7] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02924B90 */ _t34 = cpu->r[27] + 0x00000010u;
|
|
/* 02924B90 */ rbrew_write32(cpu->mem, _t34, cpu->r[7]);
|
|
/* 02924B94 */ _t35 = cpu->r[30] + 0x00000008u;
|
|
/* 02924B94 */ cpu->r[0] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02924B98 */ _t36 = cpu->r[27] + 0x00000014u;
|
|
/* 02924B98 */ rbrew_write32(cpu->mem, _t36, cpu->r[0]);
|
|
/* 02924B9C */ _t37 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02924B9C */ cpu->r[9] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02924BA0 */ _t38 = cpu->r[27] + 0x00000018u;
|
|
/* 02924BA0 */ rbrew_write32(cpu->mem, _t38, cpu->r[9]);
|
|
L_02924BA4: ; // 0x2924ba4
|
|
/* 02924BA4 */ cpu->r[0] = 0x10140000u;
|
|
/* 02924BA8 */ _t39 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02924BA8 */ rbrew_write32(cpu->mem, _t39, cpu->r[28]);
|
|
/* 02924BAC */ cpu->r[0] = cpu->r[0] + 0x000038CCu;
|
|
/* 02924BB0 */ _t40 = cpu->r[1] + 0x00000024u;
|
|
/* 02924BB0 */ rbrew_write32(cpu->mem, _t40, cpu->r[28]);
|
|
/* 02924BB4 */ cpu->r[10] = 0x10140000u;
|
|
/* 02924BB8 */ _t41 = cpu->r[1] + 0x00000020u;
|
|
/* 02924BB8 */ rbrew_write32(cpu->mem, _t41, cpu->r[0]);
|
|
/* 02924BBC */ cpu->r[10] = cpu->r[10] + 0x00003880u;
|
|
/* 02924BC0 */ cpu->r[27] = cpu->r[31] + 0x000000C8u;
|
|
/* 02924BC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02924BC4 */ _t42 = cpu->r[1] + 0x00000018u;
|
|
/* 02924BC4 */ rbrew_write32(cpu->mem, _t42, cpu->r[10]);
|
|
/* 02924BC8 */ _t43 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02924BC8 */ _t44 = _t43 & 0x00000001u;
|
|
/* 02924BC8 */ if (_t44) goto L_02924BCC; else goto L_02924BDC;
|
|
L_02924BCC: ; // 0x2924bcc
|
|
/* 02924BCC */ cpu->r[3] = 0x0000001Cu;
|
|
/* 02924BD0 */ Gambit_fn_02801A78(cpu);
|
|
/* 02924BD4 */ cpu->r[27] = cpu->r[3];
|
|
/* 02924BD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02924BD8 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02924BD8 */ _t46 = _t45 & 0x00000001u;
|
|
/* 02924BD8 */ if (_t46) goto L_02924C68; else goto L_02924BDC;
|
|
L_02924BDC: ; // 0x2924bdc
|
|
/* 02924BDC */ cpu->r[3] = cpu->r[27];
|
|
/* 02924BE0 */ Gambit_fn_0294F7F0(cpu);
|
|
/* 02924BE4 */ cpu->r[12] = 0x10140000u;
|
|
/* 02924BE8 */ cpu->r[12] = cpu->r[12] + 0x00003588u;
|
|
/* 02924BEC */ cpu->r[3] = cpu->r[27] + 0x0000000Cu;
|
|
/* 02924BEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02924BF0 */ _t47 = cpu->r[27] + 0x00000008u;
|
|
/* 02924BF0 */ rbrew_write32(cpu->mem, _t47, cpu->r[12]);
|
|
/* 02924BF4 */ _t48 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02924BF4 */ _t49 = _t48 & 0x00000001u;
|
|
/* 02924BF4 */ if (_t49) goto L_02924BF8; else goto L_02924C08;
|
|
L_02924BF8: ; // 0x2924bf8
|
|
/* 02924BF8 */ cpu->r[3] = 0x00000010u;
|
|
/* 02924BFC */ Gambit_fn_02801A78(cpu);
|
|
/* 02924C00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02924C04 */ _t50 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02924C04 */ _t51 = _t50 & 0x00000001u;
|
|
/* 02924C04 */ if (_t51) goto L_02924C28; else goto L_02924C08;
|
|
L_02924C08: ; // 0x2924c08
|
|
/* 02924C08 */ cpu->r[7] = 0x10110000u;
|
|
/* 02924C0C */ _t52 = cpu->r[7] + 0x00004468u;
|
|
/* 02924C0C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 02924C10 */ _t53 = cpu->r[3] + 0x00000000u;
|
|
/* 02924C10 */ rbrew_write_f32(cpu->mem, _t53, cpu->f[0]);
|
|
/* 02924C14 */ _t54 = cpu->r[3] + 0x00000004u;
|
|
/* 02924C14 */ rbrew_write_f32(cpu->mem, _t54, cpu->f[0]);
|
|
/* 02924C18 */ cpu->r[12] = 0x10110000u;
|
|
/* 02924C1C */ _t55 = cpu->r[3] + 0x00000008u;
|
|
/* 02924C1C */ rbrew_write_f32(cpu->mem, _t55, cpu->f[0]);
|
|
/* 02924C20 */ _t56 = cpu->r[12] + 0x00004464u;
|
|
/* 02924C20 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 02924C24 */ _t57 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02924C24 */ rbrew_write_f32(cpu->mem, _t57, cpu->f[0]);
|
|
L_02924C28: ; // 0x2924c28
|
|
/* 02924C28 */ cpu->r[3] = cpu->r[27];
|
|
/* 02924C2C */ cpu->r[7] = cpu->r[31];
|
|
/* 02924C30 */ _t58 = cpu->r[1] + 0x00000078u;
|
|
/* 02924C30 */ rbrew_write32(cpu->mem, _t58, cpu->r[29]);
|
|
/* 02924C34 */ cpu->r[5] = cpu->r[1] + 0x00000020u;
|
|
/* 02924C38 */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 02924C3C */ cpu->r[6] = cpu->r[1] + 0x00000078u;
|
|
/* 02924C40 */ _t59 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02924C40 */ rbrew_write32(cpu->mem, _t59, cpu->r[28]);
|
|
/* 02924C44 */ Gambit_fn_0294F794(cpu);
|
|
/* 02924C48 */ _t60 = cpu->r[30] + 0x00000000u;
|
|
/* 02924C48 */ cpu->r[0] = rbrew_read32(cpu->mem, _t60);
|
|
/* 02924C4C */ _t61 = cpu->r[27] + 0x0000000Cu;
|
|
/* 02924C4C */ rbrew_write32(cpu->mem, _t61, cpu->r[0]);
|
|
/* 02924C50 */ _t62 = cpu->r[30] + 0x00000004u;
|
|
/* 02924C50 */ cpu->r[6] = rbrew_read32(cpu->mem, _t62);
|
|
/* 02924C54 */ _t63 = cpu->r[27] + 0x00000010u;
|
|
/* 02924C54 */ rbrew_write32(cpu->mem, _t63, cpu->r[6]);
|
|
/* 02924C58 */ _t64 = cpu->r[30] + 0x00000008u;
|
|
/* 02924C58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t64);
|
|
/* 02924C5C */ _t65 = cpu->r[27] + 0x00000014u;
|
|
/* 02924C5C */ rbrew_write32(cpu->mem, _t65, cpu->r[0]);
|
|
/* 02924C60 */ _t66 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02924C60 */ cpu->r[8] = rbrew_read32(cpu->mem, _t66);
|
|
/* 02924C64 */ _t67 = cpu->r[27] + 0x00000018u;
|
|
/* 02924C64 */ rbrew_write32(cpu->mem, _t67, cpu->r[8]);
|
|
L_02924C68: ; // 0x2924c68
|
|
/* 02924C68 */ cpu->r[10] = 0x10140000u;
|
|
/* 02924C6C */ _t68 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02924C6C */ rbrew_write32(cpu->mem, _t68, cpu->r[28]);
|
|
/* 02924C70 */ cpu->r[10] = cpu->r[10] + 0x00003854u;
|
|
/* 02924C74 */ _t69 = cpu->r[1] + 0x00000034u;
|
|
/* 02924C74 */ rbrew_write32(cpu->mem, _t69, cpu->r[28]);
|
|
/* 02924C78 */ cpu->r[9] = 0x10140000u;
|
|
/* 02924C7C */ _t70 = cpu->r[1] + 0x00000030u;
|
|
/* 02924C7C */ rbrew_write32(cpu->mem, _t70, cpu->r[10]);
|
|
/* 02924C80 */ cpu->r[9] = cpu->r[9] + 0x000038E0u;
|
|
/* 02924C84 */ cpu->r[30] = cpu->r[31] + 0x000000E4u;
|
|
/* 02924C84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02924C88 */ _t71 = cpu->r[1] + 0x00000028u;
|
|
/* 02924C88 */ rbrew_write32(cpu->mem, _t71, cpu->r[9]);
|
|
/* 02924C8C */ _t72 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02924C8C */ _t73 = _t72 & 0x00000001u;
|
|
/* 02924C8C */ if (_t73) goto L_02924C90; else goto L_02924CA0;
|
|
L_02924C90: ; // 0x2924c90
|
|
/* 02924C90 */ cpu->r[3] = 0x00000018u;
|
|
/* 02924C94 */ Gambit_fn_02801A78(cpu);
|
|
/* 02924C98 */ cpu->r[30] = cpu->r[3];
|
|
/* 02924C98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02924C9C */ _t74 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02924C9C */ _t75 = _t74 & 0x00000001u;
|
|
/* 02924C9C */ if (_t75) goto L_02924CF8; else goto L_02924CA0;
|
|
L_02924CA0: ; // 0x2924ca0
|
|
/* 02924CA0 */ cpu->r[3] = cpu->r[30];
|
|
/* 02924CA4 */ Gambit_fn_0294F7F0(cpu);
|
|
/* 02924CA8 */ cpu->r[11] = 0x10140000u;
|
|
/* 02924CAC */ cpu->r[3] = cpu->r[30];
|
|
/* 02924CB0 */ cpu->r[7] = cpu->r[31];
|
|
/* 02924CB4 */ cpu->r[11] = cpu->r[11] + 0x000034F8u;
|
|
/* 02924CB8 */ cpu->r[4] = cpu->r[1] + 0x00000028u;
|
|
/* 02924CBC */ cpu->r[0] = 0x10140000u;
|
|
/* 02924CC0 */ _t76 = cpu->r[30] + 0x00000008u;
|
|
/* 02924CC0 */ rbrew_write32(cpu->mem, _t76, cpu->r[11]);
|
|
/* 02924CC4 */ cpu->r[5] = cpu->r[1] + 0x00000030u;
|
|
/* 02924CC8 */ cpu->r[0] = cpu->r[0] + 0x0000339Eu;
|
|
/* 02924CCC */ _t77 = cpu->r[1] + 0x00000084u;
|
|
/* 02924CCC */ rbrew_write32(cpu->mem, _t77, cpu->r[28]);
|
|
/* 02924CD0 */ cpu->r[6] = cpu->r[1] + 0x00000080u;
|
|
/* 02924CD4 */ _t78 = cpu->r[1] + 0x00000080u;
|
|
/* 02924CD4 */ rbrew_write32(cpu->mem, _t78, cpu->r[0]);
|
|
/* 02924CD8 */ Gambit_fn_0294F794(cpu);
|
|
/* 02924CDC */ cpu->r[11] = 0x101F0000u;
|
|
/* 02924CE0 */ _t79 = cpu->r[11] + 0x00006338u;
|
|
/* 02924CE0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t79);
|
|
/* 02924CE0 */ cpu->r[11] = _t79;
|
|
/* 02924CE4 */ _t80 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02924CE4 */ rbrew_write_f32(cpu->mem, _t80, cpu->f[0]);
|
|
/* 02924CE8 */ _t81 = cpu->r[11] + 0x00000004u;
|
|
/* 02924CE8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t81);
|
|
/* 02924CEC */ _t82 = cpu->r[30] + 0x00000010u;
|
|
/* 02924CEC */ rbrew_write_f32(cpu->mem, _t82, cpu->f[0]);
|
|
/* 02924CF0 */ _t83 = cpu->r[11] + 0x00000008u;
|
|
/* 02924CF0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t83);
|
|
/* 02924CF4 */ _t84 = cpu->r[30] + 0x00000014u;
|
|
/* 02924CF4 */ rbrew_write_f32(cpu->mem, _t84, cpu->f[0]);
|
|
L_02924CF8: ; // 0x2924cf8
|
|
/* 02924CF8 */ _t85 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02924CF8 */ rbrew_write32(cpu->mem, _t85, cpu->r[28]);
|
|
/* 02924CFC */ cpu->r[7] = 0x10140000u;
|
|
/* 02924D00 */ cpu->r[0] = 0x10140000u;
|
|
/* 02924D04 */ _t86 = cpu->r[1] + 0x00000044u;
|
|
/* 02924D04 */ rbrew_write32(cpu->mem, _t86, cpu->r[28]);
|
|
/* 02924D08 */ cpu->r[6] = 0x10140000u;
|
|
/* 02924D0C */ cpu->r[0] = cpu->r[0] + 0x0000385Cu;
|
|
/* 02924D10 */ _t87 = cpu->r[7] + 0x000036A8u;
|
|
/* 02924D10 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t87);
|
|
/* 02924D14 */ cpu->r[27] = cpu->r[31] + 0x000000FCu;
|
|
/* 02924D18 */ cpu->r[6] = cpu->r[6] + 0x00003864u;
|
|
/* 02924D1C */ _t88 = cpu->r[1] + 0x00000038u;
|
|
/* 02924D1C */ rbrew_write32(cpu->mem, _t88, cpu->r[0]);
|
|
/* 02924D20 */ cpu->r[29] = 0x10140000u;
|
|
/* 02924D24 */ cpu->r[30] = 0x10140000u;
|
|
/* 02924D28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02924D2C */ cpu->r[29] = cpu->r[29] + 0x00003468u;
|
|
/* 02924D30 */ cpu->r[30] = cpu->r[30] + 0x0000339Du;
|
|
/* 02924D34 */ _t89 = cpu->r[1] + 0x00000040u;
|
|
/* 02924D34 */ rbrew_write32(cpu->mem, _t89, cpu->r[6]);
|
|
/* 02924D38 */ _t90 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02924D38 */ _t91 = _t90 & 0x00000001u;
|
|
/* 02924D38 */ if (_t91) goto L_02924D3C; else goto L_02924D4C;
|
|
L_02924D3C: ; // 0x2924d3c
|
|
/* 02924D3C */ cpu->r[3] = 0x00000010u;
|
|
/* 02924D40 */ Gambit_fn_02801A78(cpu);
|
|
/* 02924D44 */ cpu->r[27] = cpu->r[3];
|
|
/* 02924D44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02924D48 */ _t92 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02924D48 */ _t93 = _t92 & 0x00000001u;
|
|
/* 02924D48 */ if (_t93) goto L_02924D7C; else goto L_02924D4C;
|
|
L_02924D4C: ; // 0x2924d4c
|
|
/* 02924D4C */ cpu->r[3] = cpu->r[27];
|
|
/* 02924D50 */ Gambit_fn_0294F7F0(cpu);
|
|
/* 02924D54 */ _t94 = cpu->r[27] + 0x00000008u;
|
|
/* 02924D54 */ rbrew_write32(cpu->mem, _t94, cpu->r[29]);
|
|
/* 02924D58 */ cpu->r[7] = cpu->r[31];
|
|
/* 02924D5C */ cpu->r[4] = cpu->r[1] + 0x00000038u;
|
|
/* 02924D60 */ _t95 = cpu->r[1] + 0x0000008Cu;
|
|
/* 02924D60 */ rbrew_write32(cpu->mem, _t95, cpu->r[28]);
|
|
/* 02924D64 */ cpu->r[5] = cpu->r[1] + 0x00000040u;
|
|
/* 02924D68 */ cpu->r[3] = cpu->r[27];
|
|
/* 02924D6C */ _t96 = cpu->r[1] + 0x00000088u;
|
|
/* 02924D6C */ rbrew_write32(cpu->mem, _t96, cpu->r[30]);
|
|
/* 02924D70 */ cpu->r[6] = cpu->r[1] + 0x00000088u;
|
|
/* 02924D74 */ Gambit_fn_0294F794(cpu);
|
|
/* 02924D78 */ _t97 = cpu->r[27] + 0x0000000Cu;
|
|
/* 02924D78 */ rbrew_write_f32(cpu->mem, _t97, cpu->f[31]);
|
|
L_02924D7C: ; // 0x2924d7c
|
|
/* 02924D7C */ cpu->r[9] = 0x10140000u;
|
|
/* 02924D80 */ _t98 = cpu->r[1] + 0x00000054u;
|
|
/* 02924D80 */ rbrew_write32(cpu->mem, _t98, cpu->r[28]);
|
|
/* 02924D84 */ cpu->r[9] = cpu->r[9] + 0x000038ECu;
|
|
/* 02924D88 */ _t99 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02924D88 */ rbrew_write32(cpu->mem, _t99, cpu->r[28]);
|
|
/* 02924D8C */ cpu->r[8] = 0x10140000u;
|
|
/* 02924D90 */ _t100 = cpu->r[1] + 0x00000050u;
|
|
/* 02924D90 */ rbrew_write32(cpu->mem, _t100, cpu->r[9]);
|
|
/* 02924D94 */ cpu->r[8] = cpu->r[8] + 0x00003890u;
|
|
/* 02924D98 */ _t101 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02924D98 */ rbrew_write32(cpu->mem, _t101, cpu->r[28]);
|
|
/* 02924D9C */ cpu->r[10] = 0x10140000u;
|
|
/* 02924DA0 */ _t102 = cpu->r[1] + 0x00000048u;
|
|
/* 02924DA0 */ rbrew_write32(cpu->mem, _t102, cpu->r[8]);
|
|
/* 02924DA4 */ cpu->r[10] = cpu->r[10] + 0x00003874u;
|
|
/* 02924DA8 */ cpu->r[27] = cpu->r[31] + 0x0000010Cu;
|
|
/* 02924DA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02924DAC */ _t103 = cpu->r[1] + 0x00000058u;
|
|
/* 02924DAC */ rbrew_write32(cpu->mem, _t103, cpu->r[10]);
|
|
/* 02924DB0 */ _t104 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02924DB0 */ _t105 = _t104 & 0x00000001u;
|
|
/* 02924DB0 */ if (_t105) goto L_02924DB4; else goto L_02924DC4;
|
|
L_02924DB4: ; // 0x2924db4
|
|
/* 02924DB4 */ cpu->r[3] = 0x00000010u;
|
|
/* 02924DB8 */ Gambit_fn_02801A78(cpu);
|
|
/* 02924DBC */ cpu->r[27] = cpu->r[3];
|
|
/* 02924DBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02924DC0 */ _t106 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02924DC0 */ _t107 = _t106 & 0x00000001u;
|
|
/* 02924DC0 */ if (_t107) goto L_02924DEC; else goto L_02924DC4;
|
|
L_02924DC4: ; // 0x2924dc4
|
|
/* 02924DC4 */ cpu->r[3] = cpu->r[27];
|
|
/* 02924DC8 */ Gambit_fn_0294F7F0(cpu);
|
|
/* 02924DCC */ _t108 = cpu->r[27] + 0x00000008u;
|
|
/* 02924DCC */ rbrew_write32(cpu->mem, _t108, cpu->r[29]);
|
|
/* 02924DD0 */ cpu->r[5] = cpu->r[1] + 0x00000050u;
|
|
/* 02924DD4 */ cpu->r[4] = cpu->r[1] + 0x00000048u;
|
|
/* 02924DD8 */ cpu->r[7] = cpu->r[31];
|
|
/* 02924DDC */ cpu->r[3] = cpu->r[27];
|
|
/* 02924DE0 */ cpu->r[6] = cpu->r[1] + 0x00000058u;
|
|
/* 02924DE4 */ Gambit_fn_0294F794(cpu);
|
|
/* 02924DE8 */ _t109 = cpu->r[27] + 0x0000000Cu;
|
|
/* 02924DE8 */ rbrew_write_f32(cpu->mem, _t109, cpu->f[31]);
|
|
L_02924DEC: ; // 0x2924dec
|
|
/* 02924DEC */ cpu->r[6] = 0x10140000u;
|
|
/* 02924DF0 */ _t110 = cpu->r[1] + 0x00000064u;
|
|
/* 02924DF0 */ rbrew_write32(cpu->mem, _t110, cpu->r[28]);
|
|
/* 02924DF4 */ cpu->r[6] = cpu->r[6] + 0x0000386Cu;
|
|
/* 02924DF8 */ _t111 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02924DF8 */ rbrew_write32(cpu->mem, _t111, cpu->r[28]);
|
|
/* 02924DFC */ cpu->r[0] = 0x10140000u;
|
|
/* 02924E00 */ _t112 = cpu->r[1] + 0x00000068u;
|
|
/* 02924E00 */ rbrew_write32(cpu->mem, _t112, cpu->r[6]);
|
|
/* 02924E04 */ cpu->r[0] = cpu->r[0] + 0x0000389Cu;
|
|
/* 02924E08 */ cpu->r[27] = cpu->r[31] + 0x0000011Cu;
|
|
/* 02924E08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02924E0C */ _t113 = cpu->r[1] + 0x00000060u;
|
|
/* 02924E0C */ rbrew_write32(cpu->mem, _t113, cpu->r[0]);
|
|
/* 02924E10 */ _t114 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02924E10 */ _t115 = _t114 & 0x00000001u;
|
|
/* 02924E10 */ if (_t115) goto L_02924E14; else goto L_02924E24;
|
|
L_02924E14: ; // 0x2924e14
|
|
/* 02924E14 */ cpu->r[3] = 0x00000010u;
|
|
/* 02924E18 */ Gambit_fn_02801A78(cpu);
|
|
/* 02924E1C */ cpu->r[27] = cpu->r[3];
|
|
/* 02924E1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02924E20 */ _t116 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02924E20 */ _t117 = _t116 & 0x00000001u;
|
|
/* 02924E20 */ if (_t117) goto L_02924E54; else goto L_02924E24;
|
|
L_02924E24: ; // 0x2924e24
|
|
/* 02924E24 */ cpu->r[3] = cpu->r[27];
|
|
/* 02924E28 */ Gambit_fn_0294F7F0(cpu);
|
|
/* 02924E2C */ _t118 = cpu->r[27] + 0x00000008u;
|
|
/* 02924E2C */ rbrew_write32(cpu->mem, _t118, cpu->r[29]);
|
|
/* 02924E30 */ cpu->r[7] = cpu->r[31];
|
|
/* 02924E34 */ cpu->r[4] = cpu->r[1] + 0x00000060u;
|
|
/* 02924E38 */ _t119 = cpu->r[1] + 0x00000094u;
|
|
/* 02924E38 */ rbrew_write32(cpu->mem, _t119, cpu->r[28]);
|
|
/* 02924E3C */ cpu->r[5] = cpu->r[1] + 0x00000068u;
|
|
/* 02924E40 */ cpu->r[3] = cpu->r[27];
|
|
/* 02924E44 */ _t120 = cpu->r[1] + 0x00000090u;
|
|
/* 02924E44 */ rbrew_write32(cpu->mem, _t120, cpu->r[30]);
|
|
/* 02924E48 */ cpu->r[6] = cpu->r[1] + 0x00000090u;
|
|
/* 02924E4C */ Gambit_fn_0294F794(cpu);
|
|
/* 02924E50 */ _t121 = cpu->r[27] + 0x0000000Cu;
|
|
/* 02924E50 */ rbrew_write_f32(cpu->mem, _t121, cpu->f[31]);
|
|
L_02924E54: ; // 0x2924e54
|
|
/* 02924E54 */ cpu->r[3] = cpu->r[31] + 0x0000012Cu;
|
|
/* 02924E54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02924E58 */ _t122 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02924E58 */ _t123 = _t122 & 0x00000001u;
|
|
/* 02924E58 */ if (_t123) goto L_02924E5C; else goto L_02924E6C;
|
|
L_02924E5C: ; // 0x2924e5c
|
|
/* 02924E5C */ cpu->r[3] = 0x00000008u;
|
|
/* 02924E60 */ Gambit_fn_02801A78(cpu);
|
|
/* 02924E64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02924E68 */ _t124 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02924E68 */ _t125 = _t124 & 0x00000001u;
|
|
/* 02924E68 */ if (_t125) goto L_02924E78; else goto L_02924E6C;
|
|
L_02924E6C: ; // 0x2924e6c
|
|
/* 02924E6C */ cpu->r[8] = 0x00000000u;
|
|
/* 02924E70 */ _t126 = cpu->r[3] + 0x00000004u;
|
|
/* 02924E70 */ rbrew_write32(cpu->mem, _t126, cpu->r[8]);
|
|
/* 02924E74 */ _t127 = cpu->r[3] + 0x00000000u;
|
|
/* 02924E74 */ rbrew_write32(cpu->mem, _t127, cpu->r[8]);
|
|
L_02924E78: ; // 0x2924e78
|
|
/* 02924E78 */ cpu->r[3] = cpu->r[31];
|
|
/* 02924E7C */ /* nop */
|
|
/* 02924E80 */ _t128 = cpu->r[1] + 0x000000B8u;
|
|
/* 02924E80 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t128);
|
|
/* 02924E84 */ _t129 = cpu->r[1] + 0x000000B0u;
|
|
/* 02924E84 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t129);
|
|
/* 02924E88 */ _t130 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02924E88 */ _t131 = _t130 & 0x00000001u;
|
|
/* 02924E88 */ if (_t131) goto L_02924E8C; // else: addr-0 trap, fall-through
|
|
L_02924E8C: ; // 0x2924e8c
|
|
/* 02924E8C */ _t132 = cpu->r[1] + 0x000000C4u;
|
|
/* 02924E8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t132);
|
|
/* 02924E90 */ cpu->lr = cpu->r[0];
|
|
/* 02924E94 */ cpu->r[1] = cpu->r[1] + 0x000000C0u;
|
|
/* 02924E98 */ return;
|
|
}
|
|
|
|
// fn_02924E9C @ 0x2924e9c
|
|
void Gambit_fn_02924E9C(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_02924E9C: ; // 0x2924e9c
|
|
/* 02924E9C */ cpu->r[0] = cpu->lr;
|
|
/* 02924EA0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02924EA0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02924EA0 */ cpu->r[1] = _t0;
|
|
/* 02924EA4 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02924EA4 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02924EA8 */ cpu->r[30] = cpu->r[3];
|
|
/* 02924EAC */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02924EAC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02924EB0 */ cpu->r[31] = cpu->r[4];
|
|
/* 02924EB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02924EB4 */ cpu->r[3] = cpu->r[5];
|
|
/* 02924EB8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02924EB8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02924EBC */ _t4 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02924EBC */ _t5 = _t4 & 0x00000001u;
|
|
/* 02924EBC */ if (_t5) goto L_02924EC0; else goto L_02924F0C;
|
|
L_02924EC0: ; // 0x2924ec0
|
|
/* 02924EC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02924EC4 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02924EC4 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02924EC4 */ if (_t7) goto L_02924EC8; else goto L_02924ED4;
|
|
L_02924EC8: ; // 0x2924ec8
|
|
/* 02924EC8 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02924ECC */ _t8 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02924ECC */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02924ED0 */ Gambit_fn_02826F20(cpu);
|
|
L_02924ED4: ; // 0x2924ed4
|
|
/* 02924ED4 */ _t9 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02924ED4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02924ED8 */ _t10 = cpu->r[12] + 0x00000034u;
|
|
/* 02924ED8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02924EDC */ cpu->ctr = cpu->r[0];
|
|
/* 02924EE0 */ cpu->r[5] = 0x00000004u;
|
|
/* 02924EE4 */ cpu->r[4] = (uint32_t)((int32_t)cpu->r[31] * (int32_t)0x0000000Cu);
|
|
/* 02924EE8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02924EEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02924EF0 */ cpu->r[0] = cpu->r[31];
|
|
/* 02924EF4 */ _t11 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02924EF4 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02924EF4 */ if (_t12) goto L_02924EFC; else goto L_02924EF8;
|
|
L_02924EF8: ; // 0x2924ef8
|
|
/* 02924EF8 */ cpu->r[0] = 0x00000001u;
|
|
L_02924EFC: ; // 0x2924efc
|
|
/* 02924EFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02924F00 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02924F00 */ _t14 = _t13 & 0x00000001u;
|
|
/* 02924F00 */ if (_t14) goto L_02924F0C; else goto L_02924F04;
|
|
L_02924F04: ; // 0x2924f04
|
|
/* 02924F04 */ _t15 = cpu->r[30] + 0x00000130u;
|
|
/* 02924F04 */ rbrew_write32(cpu->mem, _t15, cpu->r[3]);
|
|
/* 02924F08 */ _t16 = cpu->r[30] + 0x0000012Cu;
|
|
/* 02924F08 */ rbrew_write32(cpu->mem, _t16, cpu->r[31]);
|
|
L_02924F0C: ; // 0x2924f0c
|
|
/* 02924F0C */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 02924F0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02924F10 */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 02924F10 */ cpu->r[30] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02924F14 */ cpu->lr = cpu->r[0];
|
|
/* 02924F18 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02924F18 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02924F1C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02924F20 */ return;
|
|
}
|
|
|
|
// fn_02924EA0 @ 0x2924ea0
|
|
void Gambit_fn_02924EA0(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_02924EA0: ; // 0x2924ea0
|
|
/* 02924EA0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02924EA0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02924EA0 */ cpu->r[1] = _t0;
|
|
/* 02924EA4 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02924EA4 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02924EA8 */ cpu->r[30] = cpu->r[3];
|
|
/* 02924EAC */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02924EAC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02924EB0 */ cpu->r[31] = cpu->r[4];
|
|
/* 02924EB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02924EB4 */ cpu->r[3] = cpu->r[5];
|
|
/* 02924EB8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02924EB8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02924EBC */ _t4 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02924EBC */ _t5 = _t4 & 0x00000001u;
|
|
/* 02924EBC */ if (_t5) goto L_02924EC0; else goto L_02924F0C;
|
|
L_02924EC0: ; // 0x2924ec0
|
|
/* 02924EC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02924EC4 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02924EC4 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02924EC4 */ if (_t7) goto L_02924EC8; else goto L_02924ED4;
|
|
L_02924EC8: ; // 0x2924ec8
|
|
/* 02924EC8 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02924ECC */ _t8 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02924ECC */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02924ED0 */ Gambit_fn_02826F20(cpu);
|
|
L_02924ED4: ; // 0x2924ed4
|
|
/* 02924ED4 */ _t9 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02924ED4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02924ED8 */ _t10 = cpu->r[12] + 0x00000034u;
|
|
/* 02924ED8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02924EDC */ cpu->ctr = cpu->r[0];
|
|
/* 02924EE0 */ cpu->r[5] = 0x00000004u;
|
|
/* 02924EE4 */ cpu->r[4] = (uint32_t)((int32_t)cpu->r[31] * (int32_t)0x0000000Cu);
|
|
/* 02924EE8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02924EEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02924EF0 */ cpu->r[0] = cpu->r[31];
|
|
/* 02924EF4 */ _t11 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02924EF4 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02924EF4 */ if (_t12) goto L_02924EFC; else goto L_02924EF8;
|
|
L_02924EF8: ; // 0x2924ef8
|
|
/* 02924EF8 */ cpu->r[0] = 0x00000001u;
|
|
L_02924EFC: ; // 0x2924efc
|
|
/* 02924EFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02924F00 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02924F00 */ _t14 = _t13 & 0x00000001u;
|
|
/* 02924F00 */ if (_t14) goto L_02924F0C; else goto L_02924F04;
|
|
L_02924F04: ; // 0x2924f04
|
|
/* 02924F04 */ _t15 = cpu->r[30] + 0x00000130u;
|
|
/* 02924F04 */ rbrew_write32(cpu->mem, _t15, cpu->r[3]);
|
|
/* 02924F08 */ _t16 = cpu->r[30] + 0x0000012Cu;
|
|
/* 02924F08 */ rbrew_write32(cpu->mem, _t16, cpu->r[31]);
|
|
L_02924F0C: ; // 0x2924f0c
|
|
/* 02924F0C */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 02924F0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02924F10 */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 02924F10 */ cpu->r[30] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02924F14 */ cpu->lr = cpu->r[0];
|
|
/* 02924F18 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02924F18 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02924F1C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02924F20 */ return;
|
|
}
|
|
|
|
// fn_02924F24 @ 0x2924f24
|
|
void Gambit_fn_02924F24(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_02924F24: ; // 0x2924f24
|
|
/* 02924F24 */ cpu->r[12] = cpu->r[3];
|
|
/* 02924F28 */ _t0 = cpu->r[12] + 0x0000012Cu;
|
|
/* 02924F28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02924F2C */ cpu->r[3] = cpu->r[4];
|
|
/* 02924F30 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[0]);
|
|
/* 02924F34 */ _t1 = cpu->r[12] + 0x00000130u;
|
|
/* 02924F34 */ cpu->r[5] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02924F38 */ _t2 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02924F38 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02924F38 */ if (_t3) goto L_02924F3C; else goto L_02924F44;
|
|
L_02924F3C: ; // 0x2924f3c
|
|
/* 02924F3C */ cpu->r[11] = (uint32_t)((int32_t)cpu->r[6] * (int32_t)0x0000000Cu);
|
|
/* 02924F40 */ cpu->r[5] = cpu->r[5] + cpu->r[11];
|
|
L_02924F44: ; // 0x2924f44
|
|
/* 02924F44 */ cpu->r[4] = cpu->r[12] + 0x000000F0u;
|
|
/* 02924F48 */ goto L_02C69468;
|
|
L_02C69468: ; // 0x2c69468
|
|
/* 02C69468 */ /* nop */
|
|
/* 02C6946C */ /* nop */
|
|
/* 02C69470 */ /* nop */
|
|
/* 02C69474 */ /* nop */
|
|
/* 02C69478 */ /* nop */
|
|
/* 02C6947C */ /* nop */
|
|
/* 02C69480 */ /* nop */
|
|
/* 02C69484 */ /* nop */
|
|
/* 02C69488 */ /* nop */
|
|
/* 02C6948C */ /* nop */
|
|
/* 02C69490 */ /* nop */
|
|
/* 02C69494 */ /* nop */
|
|
/* 02C69498 */ /* nop */
|
|
/* 02C6949C */ /* nop */
|
|
/* 02C694A0 */ /* nop */
|
|
/* 02C694A4 */ /* nop */
|
|
/* 02C694A8 */ /* nop */
|
|
/* 02C694AC */ /* nop */
|
|
/* 02C694B0 */ /* nop */
|
|
/* 02C694B4 */ /* nop */
|
|
/* 02C694B8 */ return;
|
|
}
|
|
|
|
// fn_02924F4C @ 0x2924f4c
|
|
void Gambit_fn_02924F4C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _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, _t200, _t201, _t202, _t203, _t204, _t205, _t206, _t207, _t208;
|
|
double _ft198, _ft199;
|
|
|
|
L_02924F4C: ; // 0x2924f4c
|
|
/* 02924F4C */ _t0 = cpu->r[1] + 0xFFFFFEC8u;
|
|
/* 02924F4C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02924F4C */ cpu->r[1] = _t0;
|
|
/* 02924F50 */ _t1 = cpu->r[1] + 0x00000118u;
|
|
/* 02924F50 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[30]);
|
|
/* 02924F54 */ /* nop */
|
|
/* 02924F58 */ _t2 = cpu->r[1] + 0x00000128u;
|
|
/* 02924F58 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 02924F5C */ _t3 = cpu->r[1] + 0x00000120u;
|
|
/* 02924F5C */ rbrew_write_f32(cpu->mem, _t3, cpu->f[30]);
|
|
/* 02924F60 */ cpu->r[0] = cpu->lr;
|
|
/* 02924F64 */ /* nop */
|
|
/* 02924F68 */ /* nop */
|
|
/* 02924F6C */ _t4 = cpu->r[1] + 0x00000130u;
|
|
/* 02924F6C */ rbrew_write_f32(cpu->mem, _t4, cpu->f[31]);
|
|
/* 02924F70 */ cpu->r[31] = cpu->r[3];
|
|
/* 02924F70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02924F74 */ _t5 = cpu->r[1] + 0x0000013Cu;
|
|
/* 02924F74 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02924F78 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02924F78 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02924F78 */ if (_t7) goto L_02924F7C; else goto L_02924F8C;
|
|
L_02924F7C: ; // 0x2924f7c
|
|
/* 02924F7C */ cpu->r[3] = 0x00000174u;
|
|
/* 02924F80 */ Gambit_fn_02801A78(cpu);
|
|
/* 02924F84 */ cpu->r[31] = cpu->r[3];
|
|
/* 02924F84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02924F88 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02924F88 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02924F88 */ if (_t9) goto L_0292557C; else goto L_02924F8C;
|
|
L_02924F8C: ; // 0x2924f8c
|
|
/* 02924F8C */ cpu->r[3] = cpu->r[31];
|
|
/* 02924F90 */ Gambit_fn_0291E274(cpu);
|
|
/* 02924F94 */ cpu->r[9] = 0x10140000u;
|
|
/* 02924F98 */ cpu->r[11] = 0x10140000u;
|
|
/* 02924F9C */ cpu->r[9] = cpu->r[9] + 0x00003E84u;
|
|
/* 02924FA0 */ cpu->r[11] = cpu->r[11] + 0x00003B6Cu;
|
|
/* 02924FA4 */ cpu->r[26] = 0x10140000u;
|
|
/* 02924FA8 */ _t10 = cpu->r[31] + 0x00000018u;
|
|
/* 02924FA8 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 02924FAC */ cpu->r[26] = cpu->r[26] + 0x000033A0u;
|
|
/* 02924FB0 */ _t11 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02924FB0 */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 02924FB4 */ cpu->r[6] = 0x10140000u;
|
|
/* 02924FB8 */ cpu->r[0] = 0x10140000u;
|
|
/* 02924FBC */ _t12 = cpu->r[1] + 0x00000018u;
|
|
/* 02924FBC */ rbrew_write32(cpu->mem, _t12, cpu->r[26]);
|
|
/* 02924FC0 */ cpu->r[6] = cpu->r[6] + 0x00003974u;
|
|
/* 02924FC4 */ cpu->r[0] = cpu->r[0] + 0x00003964u;
|
|
/* 02924FC8 */ _t13 = cpu->r[1] + 0x00000020u;
|
|
/* 02924FC8 */ rbrew_write32(cpu->mem, _t13, cpu->r[26]);
|
|
/* 02924FCC */ cpu->r[30] = cpu->r[31] + 0x000000ACu;
|
|
/* 02924FCC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02924FD0 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02924FD0 */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
/* 02924FD4 */ _t15 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02924FD4 */ rbrew_write32(cpu->mem, _t15, cpu->r[6]);
|
|
/* 02924FD8 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02924FD8 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02924FD8 */ if (_t17) goto L_02924FDC; else goto L_02924FEC;
|
|
L_02924FDC: ; // 0x2924fdc
|
|
/* 02924FDC */ cpu->r[3] = 0x0000001Cu;
|
|
/* 02924FE0 */ Gambit_fn_02801A78(cpu);
|
|
/* 02924FE4 */ cpu->r[30] = cpu->r[3];
|
|
/* 02924FE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02924FE8 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02924FE8 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02924FE8 */ if (_t19) goto L_02925084; else goto L_02924FEC;
|
|
L_02924FEC: ; // 0x2924fec
|
|
/* 02924FEC */ cpu->r[3] = cpu->r[30];
|
|
/* 02924FF0 */ Gambit_fn_0294F7F0(cpu);
|
|
/* 02924FF4 */ cpu->r[9] = 0x10140000u;
|
|
/* 02924FF8 */ cpu->r[9] = cpu->r[9] + 0x00003588u;
|
|
/* 02924FFC */ cpu->r[3] = cpu->r[30] + 0x0000000Cu;
|
|
/* 02924FFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02925000 */ _t20 = cpu->r[30] + 0x00000008u;
|
|
/* 02925000 */ rbrew_write32(cpu->mem, _t20, cpu->r[9]);
|
|
/* 02925004 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02925004 */ _t22 = _t21 & 0x00000001u;
|
|
/* 02925004 */ if (_t22) goto L_02925008; else goto L_02925018;
|
|
L_02925008: ; // 0x2925008
|
|
/* 02925008 */ cpu->r[3] = 0x00000010u;
|
|
/* 0292500C */ Gambit_fn_02801A78(cpu);
|
|
/* 02925010 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02925014 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02925014 */ _t24 = _t23 & 0x00000001u;
|
|
/* 02925014 */ if (_t24) goto L_02925038; else goto L_02925018;
|
|
L_02925018: ; // 0x2925018
|
|
/* 02925018 */ cpu->r[5] = 0x10110000u;
|
|
/* 0292501C */ _t25 = cpu->r[5] + 0x00004468u;
|
|
/* 0292501C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 02925020 */ _t26 = cpu->r[3] + 0x00000000u;
|
|
/* 02925020 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[13]);
|
|
/* 02925024 */ _t27 = cpu->r[3] + 0x00000004u;
|
|
/* 02925024 */ rbrew_write_f32(cpu->mem, _t27, cpu->f[13]);
|
|
/* 02925028 */ cpu->r[11] = 0x10110000u;
|
|
/* 0292502C */ _t28 = cpu->r[3] + 0x00000008u;
|
|
/* 0292502C */ rbrew_write_f32(cpu->mem, _t28, cpu->f[13]);
|
|
/* 02925030 */ _t29 = cpu->r[11] + 0x00004464u;
|
|
/* 02925030 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 02925034 */ _t30 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02925034 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[0]);
|
|
L_02925038: ; // 0x2925038
|
|
/* 02925038 */ cpu->r[0] = 0x10140000u;
|
|
/* 0292503C */ _t31 = cpu->r[1] + 0x000000B0u;
|
|
/* 0292503C */ rbrew_write32(cpu->mem, _t31, cpu->r[26]);
|
|
/* 02925040 */ cpu->r[3] = cpu->r[30];
|
|
/* 02925044 */ cpu->r[0] = cpu->r[0] + 0x0000339Fu;
|
|
/* 02925048 */ cpu->r[7] = cpu->r[31];
|
|
/* 0292504C */ cpu->r[6] = cpu->r[1] + 0x000000ACu;
|
|
/* 02925050 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 02925054 */ cpu->r[5] = cpu->r[1] + 0x0000001Cu;
|
|
/* 02925058 */ _t32 = cpu->r[1] + 0x000000ACu;
|
|
/* 02925058 */ rbrew_write32(cpu->mem, _t32, cpu->r[0]);
|
|
/* 0292505C */ Gambit_fn_0294F794(cpu);
|
|
/* 02925060 */ cpu->r[5] = 0x101F0000u;
|
|
/* 02925064 */ _t33 = cpu->r[5] + 0x00005BECu;
|
|
/* 02925064 */ cpu->r[8] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02925064 */ cpu->r[5] = _t33;
|
|
/* 02925068 */ _t34 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02925068 */ rbrew_write32(cpu->mem, _t34, cpu->r[8]);
|
|
/* 0292506C */ _t35 = cpu->r[5] + 0x00000004u;
|
|
/* 0292506C */ cpu->r[9] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02925070 */ _t36 = cpu->r[30] + 0x00000010u;
|
|
/* 02925070 */ rbrew_write32(cpu->mem, _t36, cpu->r[9]);
|
|
/* 02925074 */ _t37 = cpu->r[5] + 0x00000008u;
|
|
/* 02925074 */ cpu->r[10] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02925078 */ _t38 = cpu->r[30] + 0x00000014u;
|
|
/* 02925078 */ rbrew_write32(cpu->mem, _t38, cpu->r[10]);
|
|
/* 0292507C */ _t39 = cpu->r[5] + 0x0000000Cu;
|
|
/* 0292507C */ cpu->r[12] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02925080 */ _t40 = cpu->r[30] + 0x00000018u;
|
|
/* 02925080 */ rbrew_write32(cpu->mem, _t40, cpu->r[12]);
|
|
L_02925084: ; // 0x2925084
|
|
/* 02925084 */ cpu->r[6] = 0x10140000u;
|
|
/* 02925088 */ _t41 = cpu->r[1] + 0x00000028u;
|
|
/* 02925088 */ rbrew_write32(cpu->mem, _t41, cpu->r[26]);
|
|
/* 0292508C */ cpu->r[6] = cpu->r[6] + 0x00003988u;
|
|
/* 02925090 */ _t42 = cpu->r[1] + 0x00000030u;
|
|
/* 02925090 */ rbrew_write32(cpu->mem, _t42, cpu->r[26]);
|
|
/* 02925094 */ cpu->r[0] = 0x10140000u;
|
|
/* 02925098 */ _t43 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02925098 */ rbrew_write32(cpu->mem, _t43, cpu->r[6]);
|
|
/* 0292509C */ cpu->r[0] = cpu->r[0] + 0x00003930u;
|
|
/* 029250A0 */ cpu->r[30] = cpu->r[31] + 0x000000C8u;
|
|
/* 029250A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 029250A4 */ _t44 = cpu->r[1] + 0x00000024u;
|
|
/* 029250A4 */ rbrew_write32(cpu->mem, _t44, cpu->r[0]);
|
|
/* 029250A8 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029250A8 */ _t46 = _t45 & 0x00000001u;
|
|
/* 029250A8 */ if (_t46) goto L_029250AC; else goto L_029250BC;
|
|
L_029250AC: ; // 0x29250ac
|
|
/* 029250AC */ cpu->r[3] = 0x0000001Cu;
|
|
/* 029250B0 */ Gambit_fn_02801A78(cpu);
|
|
/* 029250B4 */ cpu->r[30] = cpu->r[3];
|
|
/* 029250B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 029250B8 */ _t47 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029250B8 */ _t48 = _t47 & 0x00000001u;
|
|
/* 029250B8 */ if (_t48) goto L_02925154; else goto L_029250BC;
|
|
L_029250BC: ; // 0x29250bc
|
|
/* 029250BC */ cpu->r[3] = cpu->r[30];
|
|
/* 029250C0 */ Gambit_fn_0294F7F0(cpu);
|
|
/* 029250C4 */ cpu->r[0] = 0x10140000u;
|
|
/* 029250C8 */ cpu->r[0] = cpu->r[0] + 0x00003588u;
|
|
/* 029250CC */ cpu->r[3] = cpu->r[30] + 0x0000000Cu;
|
|
/* 029250CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 029250D0 */ _t49 = cpu->r[30] + 0x00000008u;
|
|
/* 029250D0 */ rbrew_write32(cpu->mem, _t49, cpu->r[0]);
|
|
/* 029250D4 */ _t50 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029250D4 */ _t51 = _t50 & 0x00000001u;
|
|
/* 029250D4 */ if (_t51) goto L_029250D8; else goto L_029250E8;
|
|
L_029250D8: ; // 0x29250d8
|
|
/* 029250D8 */ cpu->r[3] = 0x00000010u;
|
|
/* 029250DC */ Gambit_fn_02801A78(cpu);
|
|
/* 029250E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 029250E4 */ _t52 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029250E4 */ _t53 = _t52 & 0x00000001u;
|
|
/* 029250E4 */ if (_t53) goto L_02925108; else goto L_029250E8;
|
|
L_029250E8: ; // 0x29250e8
|
|
/* 029250E8 */ cpu->r[7] = 0x10110000u;
|
|
/* 029250EC */ _t54 = cpu->r[7] + 0x00004468u;
|
|
/* 029250EC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 029250F0 */ _t55 = cpu->r[3] + 0x00000000u;
|
|
/* 029250F0 */ rbrew_write_f32(cpu->mem, _t55, cpu->f[13]);
|
|
/* 029250F4 */ _t56 = cpu->r[3] + 0x00000004u;
|
|
/* 029250F4 */ rbrew_write_f32(cpu->mem, _t56, cpu->f[13]);
|
|
/* 029250F8 */ cpu->r[6] = 0x10110000u;
|
|
/* 029250FC */ _t57 = cpu->r[3] + 0x00000008u;
|
|
/* 029250FC */ rbrew_write_f32(cpu->mem, _t57, cpu->f[13]);
|
|
/* 02925100 */ _t58 = cpu->r[6] + 0x00004464u;
|
|
/* 02925100 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 02925104 */ _t59 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02925104 */ rbrew_write_f32(cpu->mem, _t59, cpu->f[11]);
|
|
L_02925108: ; // 0x2925108
|
|
/* 02925108 */ cpu->r[0] = 0x10140000u;
|
|
/* 0292510C */ _t60 = cpu->r[1] + 0x000000B8u;
|
|
/* 0292510C */ rbrew_write32(cpu->mem, _t60, cpu->r[26]);
|
|
/* 02925110 */ cpu->r[3] = cpu->r[30];
|
|
/* 02925114 */ cpu->r[0] = cpu->r[0] + 0x0000339Fu;
|
|
/* 02925118 */ cpu->r[7] = cpu->r[31];
|
|
/* 0292511C */ cpu->r[6] = cpu->r[1] + 0x000000B4u;
|
|
/* 02925120 */ cpu->r[4] = cpu->r[1] + 0x00000024u;
|
|
/* 02925124 */ cpu->r[5] = cpu->r[1] + 0x0000002Cu;
|
|
/* 02925128 */ _t61 = cpu->r[1] + 0x000000B4u;
|
|
/* 02925128 */ rbrew_write32(cpu->mem, _t61, cpu->r[0]);
|
|
/* 0292512C */ Gambit_fn_0294F794(cpu);
|
|
/* 02925130 */ cpu->r[9] = 0x101F0000u;
|
|
/* 02925134 */ _t62 = cpu->r[9] + 0x00005BECu;
|
|
/* 02925134 */ cpu->r[10] = rbrew_read32(cpu->mem, _t62);
|
|
/* 02925134 */ cpu->r[9] = _t62;
|
|
/* 02925138 */ _t63 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02925138 */ rbrew_write32(cpu->mem, _t63, cpu->r[10]);
|
|
/* 0292513C */ _t64 = cpu->r[9] + 0x00000004u;
|
|
/* 0292513C */ cpu->r[11] = rbrew_read32(cpu->mem, _t64);
|
|
/* 02925140 */ _t65 = cpu->r[30] + 0x00000010u;
|
|
/* 02925140 */ rbrew_write32(cpu->mem, _t65, cpu->r[11]);
|
|
/* 02925144 */ _t66 = cpu->r[9] + 0x00000008u;
|
|
/* 02925144 */ cpu->r[12] = rbrew_read32(cpu->mem, _t66);
|
|
/* 02925148 */ _t67 = cpu->r[30] + 0x00000014u;
|
|
/* 02925148 */ rbrew_write32(cpu->mem, _t67, cpu->r[12]);
|
|
/* 0292514C */ _t68 = cpu->r[9] + 0x0000000Cu;
|
|
/* 0292514C */ cpu->r[0] = rbrew_read32(cpu->mem, _t68);
|
|
/* 02925150 */ _t69 = cpu->r[30] + 0x00000018u;
|
|
/* 02925150 */ rbrew_write32(cpu->mem, _t69, cpu->r[0]);
|
|
L_02925154: ; // 0x2925154
|
|
/* 02925154 */ cpu->r[5] = 0x10140000u;
|
|
/* 02925158 */ _t70 = cpu->r[1] + 0x00000040u;
|
|
/* 02925158 */ rbrew_write32(cpu->mem, _t70, cpu->r[26]);
|
|
/* 0292515C */ cpu->r[5] = cpu->r[5] + 0x00003940u;
|
|
/* 02925160 */ _t71 = cpu->r[1] + 0x00000038u;
|
|
/* 02925160 */ rbrew_write32(cpu->mem, _t71, cpu->r[26]);
|
|
/* 02925164 */ cpu->r[6] = 0x10140000u;
|
|
/* 02925168 */ _t72 = cpu->r[1] + 0x00000034u;
|
|
/* 02925168 */ rbrew_write32(cpu->mem, _t72, cpu->r[5]);
|
|
/* 0292516C */ cpu->r[6] = cpu->r[6] + 0x0000399Cu;
|
|
/* 02925170 */ cpu->r[30] = cpu->r[31] + 0x000000E4u;
|
|
/* 02925170 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02925174 */ _t73 = cpu->r[1] + 0x00000048u;
|
|
/* 02925174 */ rbrew_write32(cpu->mem, _t73, cpu->r[26]);
|
|
/* 02925178 */ cpu->r[7] = 0x10140000u;
|
|
/* 0292517C */ cpu->r[12] = 0x10140000u;
|
|
/* 02925180 */ _t74 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02925180 */ rbrew_write32(cpu->mem, _t74, cpu->r[6]);
|
|
/* 02925184 */ cpu->r[7] = cpu->r[7] + 0x00003924u;
|
|
/* 02925188 */ cpu->r[27] = 0x10140000u;
|
|
/* 0292518C */ _t75 = cpu->r[12] + 0x000036A8u;
|
|
/* 0292518C */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t75);
|
|
/* 02925190 */ cpu->r[27] = cpu->r[27] + 0x00003468u;
|
|
/* 02925194 */ _t76 = cpu->r[1] + 0x00000044u;
|
|
/* 02925194 */ rbrew_write32(cpu->mem, _t76, cpu->r[7]);
|
|
/* 02925198 */ _t77 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02925198 */ _t78 = _t77 & 0x00000001u;
|
|
/* 02925198 */ if (_t78) goto L_0292519C; else goto L_029251AC;
|
|
L_0292519C: ; // 0x292519c
|
|
/* 0292519C */ cpu->r[3] = 0x00000010u;
|
|
/* 029251A0 */ Gambit_fn_02801A78(cpu);
|
|
/* 029251A4 */ cpu->r[30] = cpu->r[3];
|
|
/* 029251A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 029251A8 */ _t79 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029251A8 */ _t80 = _t79 & 0x00000001u;
|
|
/* 029251A8 */ if (_t80) goto L_029251D4; else goto L_029251AC;
|
|
L_029251AC: ; // 0x29251ac
|
|
/* 029251AC */ cpu->r[3] = cpu->r[30];
|
|
/* 029251B0 */ Gambit_fn_0294F7F0(cpu);
|
|
/* 029251B4 */ _t81 = cpu->r[30] + 0x00000008u;
|
|
/* 029251B4 */ rbrew_write32(cpu->mem, _t81, cpu->r[27]);
|
|
/* 029251B8 */ cpu->r[5] = cpu->r[1] + 0x0000003Cu;
|
|
/* 029251BC */ cpu->r[4] = cpu->r[1] + 0x00000034u;
|
|
/* 029251C0 */ cpu->r[7] = cpu->r[31];
|
|
/* 029251C4 */ cpu->r[3] = cpu->r[30];
|
|
/* 029251C8 */ cpu->r[6] = cpu->r[1] + 0x00000044u;
|
|
/* 029251CC */ Gambit_fn_0294F794(cpu);
|
|
/* 029251D0 */ _t82 = cpu->r[30] + 0x0000000Cu;
|
|
/* 029251D0 */ rbrew_write_f32(cpu->mem, _t82, cpu->f[30]);
|
|
L_029251D4: ; // 0x29251d4
|
|
/* 029251D4 */ _t83 = cpu->r[1] + 0x00000050u;
|
|
/* 029251D4 */ rbrew_write32(cpu->mem, _t83, cpu->r[26]);
|
|
/* 029251D8 */ cpu->r[0] = 0x10140000u;
|
|
/* 029251DC */ cpu->r[8] = 0x10140000u;
|
|
/* 029251E0 */ _t84 = cpu->r[1] + 0x00000058u;
|
|
/* 029251E0 */ rbrew_write32(cpu->mem, _t84, cpu->r[26]);
|
|
/* 029251E4 */ cpu->r[0] = cpu->r[0] + 0x0000390Cu;
|
|
/* 029251E8 */ cpu->r[30] = cpu->r[31] + 0x000000F4u;
|
|
/* 029251E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 029251EC */ cpu->r[28] = 0x10140000u;
|
|
/* 029251F0 */ _t85 = cpu->r[1] + 0x00000054u;
|
|
/* 029251F0 */ rbrew_write32(cpu->mem, _t85, cpu->r[0]);
|
|
/* 029251F4 */ cpu->r[8] = cpu->r[8] + 0x00003904u;
|
|
/* 029251F8 */ cpu->r[28] = cpu->r[28] + 0x0000339Du;
|
|
/* 029251FC */ _t86 = cpu->r[1] + 0x0000004Cu;
|
|
/* 029251FC */ rbrew_write32(cpu->mem, _t86, cpu->r[8]);
|
|
/* 02925200 */ _t87 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02925200 */ _t88 = _t87 & 0x00000001u;
|
|
/* 02925200 */ if (_t88) goto L_02925204; else goto L_02925214;
|
|
L_02925204: ; // 0x2925204
|
|
/* 02925204 */ cpu->r[3] = 0x00000010u;
|
|
/* 02925208 */ Gambit_fn_02801A78(cpu);
|
|
/* 0292520C */ cpu->r[30] = cpu->r[3];
|
|
/* 0292520C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02925210 */ _t89 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02925210 */ _t90 = _t89 & 0x00000001u;
|
|
/* 02925210 */ if (_t90) goto L_02925244; else goto L_02925214;
|
|
L_02925214: ; // 0x2925214
|
|
/* 02925214 */ cpu->r[3] = cpu->r[30];
|
|
/* 02925218 */ Gambit_fn_0294F7F0(cpu);
|
|
/* 0292521C */ _t91 = cpu->r[30] + 0x00000008u;
|
|
/* 0292521C */ rbrew_write32(cpu->mem, _t91, cpu->r[27]);
|
|
/* 02925220 */ cpu->r[7] = cpu->r[31];
|
|
/* 02925224 */ cpu->r[4] = cpu->r[1] + 0x0000004Cu;
|
|
/* 02925228 */ _t92 = cpu->r[1] + 0x000000C0u;
|
|
/* 02925228 */ rbrew_write32(cpu->mem, _t92, cpu->r[26]);
|
|
/* 0292522C */ cpu->r[5] = cpu->r[1] + 0x00000054u;
|
|
/* 02925230 */ cpu->r[3] = cpu->r[30];
|
|
/* 02925234 */ _t93 = cpu->r[1] + 0x000000BCu;
|
|
/* 02925234 */ rbrew_write32(cpu->mem, _t93, cpu->r[28]);
|
|
/* 02925238 */ cpu->r[6] = cpu->r[1] + 0x000000BCu;
|
|
/* 0292523C */ Gambit_fn_0294F794(cpu);
|
|
/* 02925240 */ _t94 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02925240 */ rbrew_write_f32(cpu->mem, _t94, cpu->f[30]);
|
|
L_02925244: ; // 0x2925244
|
|
/* 02925244 */ cpu->r[10] = 0x101F0000u;
|
|
/* 02925248 */ _t95 = cpu->r[1] + 0x00000060u;
|
|
/* 02925248 */ rbrew_write32(cpu->mem, _t95, cpu->r[26]);
|
|
/* 0292524C */ cpu->r[0] = 0x10140000u;
|
|
/* 02925250 */ _t96 = cpu->r[10] + 0x00006368u;
|
|
/* 02925250 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t96);
|
|
/* 02925250 */ cpu->r[10] = _t96;
|
|
/* 02925254 */ cpu->r[0] = cpu->r[0] + 0x00003914u;
|
|
/* 02925258 */ _t97 = cpu->r[10] + 0x00000004u;
|
|
/* 02925258 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t97);
|
|
/* 0292525C */ cpu->f[10] = -cpu->f[12];
|
|
/* 02925260 */ _t98 = cpu->r[10] + 0x00000008u;
|
|
/* 02925260 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t98);
|
|
/* 02925264 */ cpu->f[13] = -cpu->f[0];
|
|
/* 02925268 */ _t99 = cpu->r[1] + 0x00000068u;
|
|
/* 02925268 */ rbrew_write32(cpu->mem, _t99, cpu->r[26]);
|
|
/* 0292526C */ cpu->r[12] = 0x10140000u;
|
|
/* 02925270 */ _t100 = cpu->r[1] + 0x00000064u;
|
|
/* 02925270 */ rbrew_write32(cpu->mem, _t100, cpu->r[0]);
|
|
/* 02925274 */ cpu->f[8] = -cpu->f[11];
|
|
/* 02925278 */ _t101 = cpu->r[1] + 0x00000008u;
|
|
/* 02925278 */ rbrew_write_f32(cpu->mem, _t101, cpu->f[10]);
|
|
/* 0292527C */ _t102 = cpu->r[1] + 0x00000008u;
|
|
/* 0292527C */ cpu->r[8] = rbrew_read32(cpu->mem, _t102);
|
|
/* 02925280 */ cpu->r[12] = cpu->r[12] + 0x0000394Cu;
|
|
/* 02925284 */ _t103 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02925284 */ rbrew_write_f32(cpu->mem, _t103, cpu->f[13]);
|
|
/* 02925288 */ _t104 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02925288 */ cpu->r[9] = rbrew_read32(cpu->mem, _t104);
|
|
/* 0292528C */ _t105 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0292528C */ rbrew_write32(cpu->mem, _t105, cpu->r[12]);
|
|
/* 02925290 */ _t106 = cpu->r[1] + 0x00000010u;
|
|
/* 02925290 */ rbrew_write_f32(cpu->mem, _t106, cpu->f[8]);
|
|
/* 02925294 */ _t107 = cpu->r[1] + 0x00000010u;
|
|
/* 02925294 */ cpu->r[0] = rbrew_read32(cpu->mem, _t107);
|
|
/* 02925298 */ cpu->r[29] = 0x10140000u;
|
|
/* 0292529C */ cpu->r[29] = cpu->r[29] + 0x000034F8u;
|
|
/* 029252A0 */ cpu->r[25] = cpu->r[31] + 0x00000104u;
|
|
/* 029252A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 029252A4 */ _t108 = cpu->r[1] + 0x000000ECu;
|
|
/* 029252A4 */ rbrew_write32(cpu->mem, _t108, cpu->r[8]);
|
|
/* 029252A8 */ cpu->r[30] = 0x10140000u;
|
|
/* 029252AC */ _t109 = cpu->r[1] + 0x000000F0u;
|
|
/* 029252AC */ rbrew_write32(cpu->mem, _t109, cpu->r[9]);
|
|
/* 029252B0 */ cpu->r[30] = cpu->r[30] + 0x0000339Eu;
|
|
/* 029252B4 */ _t110 = cpu->r[1] + 0x000000F4u;
|
|
/* 029252B4 */ rbrew_write32(cpu->mem, _t110, cpu->r[0]);
|
|
/* 029252B8 */ _t111 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029252B8 */ _t112 = _t111 & 0x00000001u;
|
|
/* 029252B8 */ if (_t112) goto L_029252BC; else goto L_029252CC;
|
|
L_029252BC: ; // 0x29252bc
|
|
/* 029252BC */ cpu->r[3] = 0x00000018u;
|
|
/* 029252C0 */ Gambit_fn_02801A78(cpu);
|
|
/* 029252C4 */ cpu->r[25] = cpu->r[3];
|
|
/* 029252C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 029252C8 */ _t113 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029252C8 */ _t114 = _t113 & 0x00000001u;
|
|
/* 029252C8 */ if (_t114) goto L_02925310; else goto L_029252CC;
|
|
L_029252CC: ; // 0x29252cc
|
|
/* 029252CC */ cpu->r[3] = cpu->r[25];
|
|
/* 029252D0 */ Gambit_fn_0294F7F0(cpu);
|
|
/* 029252D4 */ _t115 = cpu->r[25] + 0x00000008u;
|
|
/* 029252D4 */ rbrew_write32(cpu->mem, _t115, cpu->r[29]);
|
|
/* 029252D8 */ cpu->r[7] = cpu->r[31];
|
|
/* 029252DC */ cpu->r[4] = cpu->r[1] + 0x0000005Cu;
|
|
/* 029252E0 */ _t116 = cpu->r[1] + 0x000000C8u;
|
|
/* 029252E0 */ rbrew_write32(cpu->mem, _t116, cpu->r[26]);
|
|
/* 029252E4 */ cpu->r[5] = cpu->r[1] + 0x00000064u;
|
|
/* 029252E8 */ cpu->r[3] = cpu->r[25];
|
|
/* 029252EC */ _t117 = cpu->r[1] + 0x000000C4u;
|
|
/* 029252EC */ rbrew_write32(cpu->mem, _t117, cpu->r[30]);
|
|
/* 029252F0 */ cpu->r[6] = cpu->r[1] + 0x000000C4u;
|
|
/* 029252F4 */ Gambit_fn_0294F794(cpu);
|
|
/* 029252F8 */ _t118 = cpu->r[1] + 0x000000ECu;
|
|
/* 029252F8 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t118);
|
|
/* 029252FC */ _t119 = cpu->r[25] + 0x0000000Cu;
|
|
/* 029252FC */ rbrew_write_f32(cpu->mem, _t119, cpu->f[7]);
|
|
/* 02925300 */ _t120 = cpu->r[1] + 0x000000F0u;
|
|
/* 02925300 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t120);
|
|
/* 02925304 */ _t121 = cpu->r[25] + 0x00000010u;
|
|
/* 02925304 */ rbrew_write_f32(cpu->mem, _t121, cpu->f[8]);
|
|
/* 02925308 */ _t122 = cpu->r[1] + 0x000000F4u;
|
|
/* 02925308 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t122);
|
|
/* 0292530C */ _t123 = cpu->r[25] + 0x00000014u;
|
|
/* 0292530C */ rbrew_write_f32(cpu->mem, _t123, cpu->f[9]);
|
|
L_02925310: ; // 0x2925310
|
|
/* 02925310 */ cpu->r[5] = 0x10140000u;
|
|
/* 02925314 */ cpu->r[0] = 0x10140000u;
|
|
/* 02925318 */ cpu->r[5] = cpu->r[5] + 0x00003618u;
|
|
/* 0292531C */ cpu->r[0] = cpu->r[0] + 0x0000391Cu;
|
|
/* 02925320 */ _t124 = cpu->r[31] + 0x0000010Cu;
|
|
/* 02925320 */ rbrew_write32(cpu->mem, _t124, cpu->r[5]);
|
|
/* 02925324 */ cpu->r[6] = 0x10140000u;
|
|
/* 02925328 */ _t125 = cpu->r[1] + 0x00000074u;
|
|
/* 02925328 */ rbrew_write32(cpu->mem, _t125, cpu->r[0]);
|
|
/* 0292532C */ cpu->r[6] = cpu->r[6] + 0x000039ACu;
|
|
/* 02925330 */ _t126 = cpu->r[1] + 0x00000078u;
|
|
/* 02925330 */ rbrew_write32(cpu->mem, _t126, cpu->r[26]);
|
|
/* 02925334 */ cpu->r[25] = cpu->r[31] + 0x0000011Cu;
|
|
/* 02925334 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 02925338 */ _t127 = cpu->r[1] + 0x00000070u;
|
|
/* 02925338 */ rbrew_write32(cpu->mem, _t127, cpu->r[26]);
|
|
/* 0292533C */ _t128 = cpu->r[1] + 0x0000006Cu;
|
|
/* 0292533C */ rbrew_write32(cpu->mem, _t128, cpu->r[6]);
|
|
/* 02925340 */ _t129 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02925340 */ _t130 = _t129 & 0x00000001u;
|
|
/* 02925340 */ if (_t130) goto L_02925344; else goto L_02925354;
|
|
L_02925344: ; // 0x2925344
|
|
/* 02925344 */ cpu->r[3] = 0x00000018u;
|
|
/* 02925348 */ Gambit_fn_02801A78(cpu);
|
|
/* 0292534C */ cpu->r[25] = cpu->r[3];
|
|
/* 0292534C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 02925350 */ _t131 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02925350 */ _t132 = _t131 & 0x00000001u;
|
|
/* 02925350 */ if (_t132) goto L_0292539C; else goto L_02925354;
|
|
L_02925354: ; // 0x2925354
|
|
/* 02925354 */ cpu->r[3] = cpu->r[25];
|
|
/* 02925358 */ Gambit_fn_0294F7F0(cpu);
|
|
/* 0292535C */ cpu->r[3] = cpu->r[25];
|
|
/* 02925360 */ _t133 = cpu->r[25] + 0x00000008u;
|
|
/* 02925360 */ rbrew_write32(cpu->mem, _t133, cpu->r[29]);
|
|
/* 02925364 */ cpu->r[7] = cpu->r[31];
|
|
/* 02925368 */ cpu->r[4] = cpu->r[1] + 0x0000006Cu;
|
|
/* 0292536C */ _t134 = cpu->r[1] + 0x000000D0u;
|
|
/* 0292536C */ rbrew_write32(cpu->mem, _t134, cpu->r[26]);
|
|
/* 02925370 */ cpu->r[5] = cpu->r[1] + 0x00000074u;
|
|
/* 02925374 */ cpu->r[6] = cpu->r[1] + 0x000000CCu;
|
|
/* 02925378 */ _t135 = cpu->r[1] + 0x000000CCu;
|
|
/* 02925378 */ rbrew_write32(cpu->mem, _t135, cpu->r[30]);
|
|
/* 0292537C */ Gambit_fn_0294F794(cpu);
|
|
/* 02925380 */ cpu->r[5] = 0x101F0000u;
|
|
/* 02925384 */ _t136 = cpu->r[5] + 0x00006338u;
|
|
/* 02925384 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t136);
|
|
/* 02925384 */ cpu->r[5] = _t136;
|
|
/* 02925388 */ _t137 = cpu->r[25] + 0x0000000Cu;
|
|
/* 02925388 */ rbrew_write_f32(cpu->mem, _t137, cpu->f[8]);
|
|
/* 0292538C */ _t138 = cpu->r[5] + 0x00000004u;
|
|
/* 0292538C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t138);
|
|
/* 02925390 */ _t139 = cpu->r[25] + 0x00000010u;
|
|
/* 02925390 */ rbrew_write_f32(cpu->mem, _t139, cpu->f[9]);
|
|
/* 02925394 */ _t140 = cpu->r[5] + 0x00000008u;
|
|
/* 02925394 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t140);
|
|
/* 02925398 */ _t141 = cpu->r[25] + 0x00000014u;
|
|
/* 02925398 */ rbrew_write_f32(cpu->mem, _t141, cpu->f[10]);
|
|
L_0292539C: ; // 0x292539c
|
|
/* 0292539C */ cpu->r[11] = 0x10140000u;
|
|
/* 029253A0 */ _t142 = cpu->r[1] + 0x00000088u;
|
|
/* 029253A0 */ rbrew_write32(cpu->mem, _t142, cpu->r[26]);
|
|
/* 029253A4 */ cpu->r[8] = 0x10140000u;
|
|
/* 029253A8 */ _t143 = cpu->r[11] + 0x00003780u;
|
|
/* 029253A8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t143);
|
|
/* 029253AC */ cpu->r[8] = cpu->r[8] + 0x000038FCu;
|
|
/* 029253B0 */ _t144 = cpu->r[1] + 0x00000080u;
|
|
/* 029253B0 */ rbrew_write32(cpu->mem, _t144, cpu->r[26]);
|
|
/* 029253B4 */ cpu->r[10] = 0x10140000u;
|
|
/* 029253B8 */ _t145 = cpu->r[1] + 0x0000007Cu;
|
|
/* 029253B8 */ rbrew_write32(cpu->mem, _t145, cpu->r[8]);
|
|
/* 029253BC */ cpu->r[10] = cpu->r[10] + 0x000039B8u;
|
|
/* 029253C0 */ cpu->r[30] = cpu->r[31] + 0x00000134u;
|
|
/* 029253C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 029253C4 */ _t146 = cpu->r[1] + 0x00000084u;
|
|
/* 029253C4 */ rbrew_write32(cpu->mem, _t146, cpu->r[10]);
|
|
/* 029253C8 */ _t147 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029253C8 */ _t148 = _t147 & 0x00000001u;
|
|
/* 029253C8 */ if (_t148) goto L_029253CC; else goto L_029253DC;
|
|
L_029253CC: ; // 0x29253cc
|
|
/* 029253CC */ cpu->r[3] = 0x00000010u;
|
|
/* 029253D0 */ Gambit_fn_02801A78(cpu);
|
|
/* 029253D4 */ cpu->r[30] = cpu->r[3];
|
|
/* 029253D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 029253D8 */ _t149 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029253D8 */ _t150 = _t149 & 0x00000001u;
|
|
/* 029253D8 */ if (_t150) goto L_0292540C; else goto L_029253DC;
|
|
L_029253DC: ; // 0x29253dc
|
|
/* 029253DC */ cpu->r[3] = cpu->r[30];
|
|
/* 029253E0 */ Gambit_fn_0294F7F0(cpu);
|
|
/* 029253E4 */ _t151 = cpu->r[30] + 0x00000008u;
|
|
/* 029253E4 */ rbrew_write32(cpu->mem, _t151, cpu->r[27]);
|
|
/* 029253E8 */ cpu->r[7] = cpu->r[31];
|
|
/* 029253EC */ cpu->r[4] = cpu->r[1] + 0x0000007Cu;
|
|
/* 029253F0 */ _t152 = cpu->r[1] + 0x000000D8u;
|
|
/* 029253F0 */ rbrew_write32(cpu->mem, _t152, cpu->r[26]);
|
|
/* 029253F4 */ cpu->r[5] = cpu->r[1] + 0x00000084u;
|
|
/* 029253F8 */ cpu->r[3] = cpu->r[30];
|
|
/* 029253FC */ _t153 = cpu->r[1] + 0x000000D4u;
|
|
/* 029253FC */ rbrew_write32(cpu->mem, _t153, cpu->r[28]);
|
|
/* 02925400 */ cpu->r[6] = cpu->r[1] + 0x000000D4u;
|
|
/* 02925404 */ Gambit_fn_0294F794(cpu);
|
|
/* 02925408 */ _t154 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02925408 */ rbrew_write_f32(cpu->mem, _t154, cpu->f[31]);
|
|
L_0292540C: ; // 0x292540c
|
|
/* 0292540C */ cpu->r[5] = 0x10140000u;
|
|
/* 02925410 */ _t155 = cpu->r[1] + 0x00000090u;
|
|
/* 02925410 */ rbrew_write32(cpu->mem, _t155, cpu->r[26]);
|
|
/* 02925414 */ cpu->r[5] = cpu->r[5] + 0x000039D0u;
|
|
/* 02925418 */ _t156 = cpu->r[1] + 0x00000098u;
|
|
/* 02925418 */ rbrew_write32(cpu->mem, _t156, cpu->r[26]);
|
|
/* 0292541C */ cpu->r[12] = 0x10140000u;
|
|
/* 02925420 */ _t157 = cpu->r[1] + 0x00000094u;
|
|
/* 02925420 */ rbrew_write32(cpu->mem, _t157, cpu->r[5]);
|
|
/* 02925424 */ cpu->r[12] = cpu->r[12] + 0x000039C4u;
|
|
/* 02925428 */ cpu->r[30] = cpu->r[31] + 0x00000144u;
|
|
/* 02925428 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0292542C */ _t158 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0292542C */ rbrew_write32(cpu->mem, _t158, cpu->r[12]);
|
|
/* 02925430 */ _t159 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02925430 */ _t160 = _t159 & 0x00000001u;
|
|
/* 02925430 */ if (_t160) goto L_02925434; else goto L_02925444;
|
|
L_02925434: ; // 0x2925434
|
|
/* 02925434 */ cpu->r[3] = 0x00000010u;
|
|
/* 02925438 */ Gambit_fn_02801A78(cpu);
|
|
/* 0292543C */ cpu->r[30] = cpu->r[3];
|
|
/* 0292543C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02925440 */ _t161 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02925440 */ _t162 = _t161 & 0x00000001u;
|
|
/* 02925440 */ if (_t162) goto L_02925474; else goto L_02925444;
|
|
L_02925444: ; // 0x2925444
|
|
/* 02925444 */ cpu->r[3] = cpu->r[30];
|
|
/* 02925448 */ Gambit_fn_0294F7F0(cpu);
|
|
/* 0292544C */ _t163 = cpu->r[30] + 0x00000008u;
|
|
/* 0292544C */ rbrew_write32(cpu->mem, _t163, cpu->r[27]);
|
|
/* 02925450 */ cpu->r[7] = cpu->r[31];
|
|
/* 02925454 */ cpu->r[4] = cpu->r[1] + 0x0000008Cu;
|
|
/* 02925458 */ _t164 = cpu->r[1] + 0x000000E0u;
|
|
/* 02925458 */ rbrew_write32(cpu->mem, _t164, cpu->r[26]);
|
|
/* 0292545C */ cpu->r[5] = cpu->r[1] + 0x00000094u;
|
|
/* 02925460 */ cpu->r[3] = cpu->r[30];
|
|
/* 02925464 */ _t165 = cpu->r[1] + 0x000000DCu;
|
|
/* 02925464 */ rbrew_write32(cpu->mem, _t165, cpu->r[28]);
|
|
/* 02925468 */ cpu->r[6] = cpu->r[1] + 0x000000DCu;
|
|
/* 0292546C */ Gambit_fn_0294F794(cpu);
|
|
/* 02925470 */ _t166 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02925470 */ rbrew_write_f32(cpu->mem, _t166, cpu->f[30]);
|
|
L_02925474: ; // 0x2925474
|
|
/* 02925474 */ cpu->r[8] = 0x10140000u;
|
|
/* 02925478 */ _t167 = cpu->r[1] + 0x000000A0u;
|
|
/* 02925478 */ rbrew_write32(cpu->mem, _t167, cpu->r[26]);
|
|
/* 0292547C */ cpu->r[8] = cpu->r[8] + 0x000039DCu;
|
|
/* 02925480 */ _t168 = cpu->r[1] + 0x000000A8u;
|
|
/* 02925480 */ rbrew_write32(cpu->mem, _t168, cpu->r[26]);
|
|
/* 02925484 */ cpu->r[0] = 0x10140000u;
|
|
/* 02925488 */ _t169 = cpu->r[1] + 0x000000A4u;
|
|
/* 02925488 */ rbrew_write32(cpu->mem, _t169, cpu->r[8]);
|
|
/* 0292548C */ cpu->r[0] = cpu->r[0] + 0x00003958u;
|
|
/* 02925490 */ cpu->r[30] = cpu->r[31] + 0x00000154u;
|
|
/* 02925490 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02925494 */ _t170 = cpu->r[1] + 0x0000009Cu;
|
|
/* 02925494 */ rbrew_write32(cpu->mem, _t170, cpu->r[0]);
|
|
/* 02925498 */ _t171 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02925498 */ _t172 = _t171 & 0x00000001u;
|
|
/* 02925498 */ if (_t172) goto L_0292549C; else goto L_029254AC;
|
|
L_0292549C: ; // 0x292549c
|
|
/* 0292549C */ cpu->r[3] = 0x00000010u;
|
|
/* 029254A0 */ Gambit_fn_02801A78(cpu);
|
|
/* 029254A4 */ cpu->r[30] = cpu->r[3];
|
|
/* 029254A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 029254A8 */ _t173 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029254A8 */ _t174 = _t173 & 0x00000001u;
|
|
/* 029254A8 */ if (_t174) goto L_029254DC; else goto L_029254AC;
|
|
L_029254AC: ; // 0x29254ac
|
|
/* 029254AC */ cpu->r[3] = cpu->r[30];
|
|
/* 029254B0 */ Gambit_fn_0294F7F0(cpu);
|
|
/* 029254B4 */ _t175 = cpu->r[30] + 0x00000008u;
|
|
/* 029254B4 */ rbrew_write32(cpu->mem, _t175, cpu->r[27]);
|
|
/* 029254B8 */ cpu->r[7] = cpu->r[31];
|
|
/* 029254BC */ cpu->r[4] = cpu->r[1] + 0x0000009Cu;
|
|
/* 029254C0 */ _t176 = cpu->r[1] + 0x000000E8u;
|
|
/* 029254C0 */ rbrew_write32(cpu->mem, _t176, cpu->r[26]);
|
|
/* 029254C4 */ cpu->r[5] = cpu->r[1] + 0x000000A4u;
|
|
/* 029254C8 */ cpu->r[3] = cpu->r[30];
|
|
/* 029254CC */ _t177 = cpu->r[1] + 0x000000E4u;
|
|
/* 029254CC */ rbrew_write32(cpu->mem, _t177, cpu->r[28]);
|
|
/* 029254D0 */ cpu->r[6] = cpu->r[1] + 0x000000E4u;
|
|
/* 029254D4 */ Gambit_fn_0294F794(cpu);
|
|
/* 029254D8 */ _t178 = cpu->r[30] + 0x0000000Cu;
|
|
/* 029254D8 */ rbrew_write_f32(cpu->mem, _t178, cpu->f[30]);
|
|
L_029254DC: ; // 0x29254dc
|
|
/* 029254DC */ cpu->r[3] = cpu->r[31] + 0x00000164u;
|
|
/* 029254DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 029254E0 */ cpu->r[30] = 0x00000000u;
|
|
/* 029254E4 */ _t179 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029254E4 */ _t180 = _t179 & 0x00000001u;
|
|
/* 029254E4 */ if (_t180) goto L_029254E8; else goto L_029254F8;
|
|
L_029254E8: ; // 0x29254e8
|
|
/* 029254E8 */ cpu->r[3] = 0x00000008u;
|
|
/* 029254EC */ Gambit_fn_02801A78(cpu);
|
|
/* 029254F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 029254F4 */ _t181 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029254F4 */ _t182 = _t181 & 0x00000001u;
|
|
/* 029254F4 */ if (_t182) goto L_02925500; else goto L_029254F8;
|
|
L_029254F8: ; // 0x29254f8
|
|
/* 029254F8 */ _t183 = cpu->r[3] + 0x00000004u;
|
|
/* 029254F8 */ rbrew_write32(cpu->mem, _t183, cpu->r[30]);
|
|
/* 029254FC */ _t184 = cpu->r[3] + 0x00000000u;
|
|
/* 029254FC */ rbrew_write32(cpu->mem, _t184, cpu->r[30]);
|
|
L_02925500: ; // 0x2925500
|
|
/* 02925500 */ cpu->r[3] = cpu->r[31] + 0x0000016Cu;
|
|
/* 02925500 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02925504 */ _t185 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02925504 */ _t186 = _t185 & 0x00000001u;
|
|
/* 02925504 */ if (_t186) goto L_02925508; else goto L_02925518;
|
|
L_02925508: ; // 0x2925508
|
|
/* 02925508 */ cpu->r[3] = 0x00000008u;
|
|
/* 0292550C */ Gambit_fn_02801A78(cpu);
|
|
/* 02925510 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02925514 */ _t187 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02925514 */ _t188 = _t187 & 0x00000001u;
|
|
/* 02925514 */ if (_t188) goto L_02925520; else goto L_02925518;
|
|
L_02925518: ; // 0x2925518
|
|
/* 02925518 */ _t189 = cpu->r[3] + 0x00000004u;
|
|
/* 02925518 */ rbrew_write32(cpu->mem, _t189, cpu->r[30]);
|
|
/* 0292551C */ _t190 = cpu->r[3] + 0x00000000u;
|
|
/* 0292551C */ rbrew_write32(cpu->mem, _t190, cpu->r[30]);
|
|
L_02925520: ; // 0x2925520
|
|
/* 02925520 */ _t191 = cpu->r[31] + 0x00000114u;
|
|
/* 02925520 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t191);
|
|
/* 02925524 */ _t192 = cpu->r[31] + 0x00000110u;
|
|
/* 02925524 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t192);
|
|
/* 02925528 */ cpu->f[8] = cpu->f[12] * cpu->f[12];
|
|
/* 0292552C */ cpu->f[9] = fma(cpu->f[0], cpu->f[0], cpu->f[8]);
|
|
/* 02925530 */ _t193 = cpu->r[31] + 0x00000118u;
|
|
/* 02925530 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t193);
|
|
/* 02925534 */ cpu->r[10] = 0x10140000u;
|
|
/* 02925538 */ cpu->f[11] = fma(cpu->f[13], cpu->f[13], cpu->f[9]);
|
|
/* 0292553C */ _t194 = cpu->r[10] + 0x0000377Cu;
|
|
/* 0292553C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t194);
|
|
/* 02925540 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[10]);
|
|
/* 02925544 */ _t195 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02925544 */ _t196 = _t195 & 0x00000001u;
|
|
/* 02925544 */ if (_t196) goto L_02925548; else goto L_0292557C;
|
|
L_02925548: ; // 0x2925548
|
|
/* 02925548 */ cpu->r[7] = 0x10140000u;
|
|
/* 0292554C */ _t197 = cpu->r[7] + 0x00003784u;
|
|
/* 0292554C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t197);
|
|
/* 02925550 */ _ft198 = sqrt(cpu->f[11]);
|
|
/* 02925550 */ _ft199 = (double)(int32_t)0x00000001u;
|
|
/* 02925550 */ cpu->f[13] = _ft199 / _ft198;
|
|
/* 02925554 */ cpu->f[0] = cpu->f[13] * cpu->f[13];
|
|
/* 02925558 */ cpu->f[7] = cpu->f[13] * cpu->f[31];
|
|
/* 0292555C */ cpu->f[0] = -fma(cpu->f[0], cpu->f[11], -(cpu->f[12]));
|
|
/* 02925560 */ cpu->f[13] = cpu->f[0] * cpu->f[7];
|
|
/* 02925564 */ _t200 = cpu->r[31] + 0x00000118u;
|
|
/* 02925564 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t200);
|
|
/* 02925568 */ /* nop */
|
|
/* 0292556C */ cpu->f[10] = cpu->f[10] * cpu->f[13];
|
|
/* 02925570 */ /* nop */
|
|
/* 02925574 */ _t201 = cpu->r[31] + 0x00000118u;
|
|
/* 02925574 */ rbrew_write_f32(cpu->mem, _t201, cpu->f[10]);
|
|
/* 02925578 */ /* nop */
|
|
L_0292557C: ; // 0x292557c
|
|
/* 0292557C */ cpu->r[3] = cpu->r[31];
|
|
/* 02925580 */ /* nop */
|
|
/* 02925584 */ _t202 = cpu->r[1] + 0x00000120u;
|
|
/* 02925584 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t202);
|
|
/* 02925588 */ _t203 = cpu->r[1] + 0x00000130u;
|
|
/* 02925588 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t203);
|
|
/* 0292558C */ _t204 = cpu->r[1] + 0x00000118u;
|
|
/* 0292558C */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t204);
|
|
/* 02925590 */ _t205 = cpu->r[1] + 0x00000128u;
|
|
/* 02925590 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t205);
|
|
/* 02925594 */ _t206 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02925594 */ _t207 = _t206 & 0x00000001u;
|
|
/* 02925594 */ if (_t207) goto L_02925598; // else: addr-0 trap, fall-through
|
|
L_02925598: ; // 0x2925598
|
|
/* 02925598 */ _t208 = cpu->r[1] + 0x0000013Cu;
|
|
/* 02925598 */ cpu->r[0] = rbrew_read32(cpu->mem, _t208);
|
|
/* 0292559C */ cpu->lr = cpu->r[0];
|
|
/* 029255A0 */ cpu->r[1] = cpu->r[1] + 0x00000138u;
|
|
/* 029255A4 */ return;
|
|
}
|
|
|
|
// fn_029255A8 @ 0x29255a8
|
|
void Gambit_fn_029255A8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36;
|
|
|
|
L_029255A8: ; // 0x29255a8
|
|
/* 029255A8 */ cpu->r[0] = cpu->lr;
|
|
/* 029255AC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 029255AC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 029255AC */ cpu->r[1] = _t0;
|
|
/* 029255B0 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 029255B0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 029255B4 */ cpu->r[31] = cpu->r[5];
|
|
/* 029255B8 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 029255B8 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 029255BC */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 029255BC */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 029255C0 */ cpu->r[30] = cpu->r[3];
|
|
/* 029255C4 */ cpu->r[3] = cpu->r[31];
|
|
/* 029255C8 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 029255C8 */ rbrew_write32(cpu->mem, _t4, cpu->r[29]);
|
|
/* 029255CC */ cpu->r[28] = cpu->r[4];
|
|
/* 029255CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 029255D0 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 029255D0 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 029255D4 */ cpu->r[29] = 0x101D0000u;
|
|
/* 029255D8 */ _t6 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 029255D8 */ _t7 = _t6 & 0x00000001u;
|
|
/* 029255D8 */ if (_t7) goto L_029255DC; else goto L_02925624;
|
|
L_029255DC: ; // 0x29255dc
|
|
/* 029255DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 029255E0 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029255E0 */ _t9 = _t8 & 0x00000001u;
|
|
/* 029255E0 */ if (_t9) goto L_029255E4; else goto L_029255EC;
|
|
L_029255E4: ; // 0x29255e4
|
|
/* 029255E4 */ _t10 = cpu->r[29] + 0xFFFF98F0u;
|
|
/* 029255E4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 029255E8 */ Gambit_fn_02826F20(cpu);
|
|
L_029255EC: ; // 0x29255ec
|
|
/* 029255EC */ _t11 = cpu->r[3] + 0x0000000Cu;
|
|
/* 029255EC */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 029255F0 */ _t12 = cpu->r[10] + 0x00000034u;
|
|
/* 029255F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 029255F4 */ cpu->ctr = cpu->r[0];
|
|
/* 029255F8 */ cpu->r[5] = 0x00000004u;
|
|
/* 029255FC */ cpu->r[4] = (uint32_t)((int32_t)cpu->r[28] * (int32_t)0x0000000Cu);
|
|
/* 02925600 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02925604 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 02925608 */ cpu->r[0] = cpu->r[28];
|
|
/* 0292560C */ _t13 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0292560C */ _t14 = _t13 & 0x00000001u;
|
|
/* 0292560C */ if (_t14) goto L_02925614; else goto L_02925610;
|
|
L_02925610: ; // 0x2925610
|
|
/* 02925610 */ cpu->r[0] = 0x00000001u;
|
|
L_02925614: ; // 0x2925614
|
|
/* 02925614 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02925618 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02925618 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02925618 */ if (_t16) goto L_02925624; else goto L_0292561C;
|
|
L_0292561C: ; // 0x292561c
|
|
/* 0292561C */ _t17 = cpu->r[30] + 0x00000170u;
|
|
/* 0292561C */ rbrew_write32(cpu->mem, _t17, cpu->r[3]);
|
|
/* 02925620 */ _t18 = cpu->r[30] + 0x0000016Cu;
|
|
/* 02925620 */ rbrew_write32(cpu->mem, _t18, cpu->r[28]);
|
|
L_02925624: ; // 0x2925624
|
|
/* 02925624 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 02925628 */ cpu->r[3] = cpu->r[31];
|
|
/* 0292562C */ _t19 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0292562C */ _t20 = _t19 & 0x00000001u;
|
|
/* 0292562C */ if (_t20) goto L_02925630; else goto L_02925678;
|
|
L_02925630: ; // 0x2925630
|
|
/* 02925630 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02925634 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02925634 */ _t22 = _t21 & 0x00000001u;
|
|
/* 02925634 */ if (_t22) goto L_02925638; else goto L_02925640;
|
|
L_02925638: ; // 0x2925638
|
|
/* 02925638 */ _t23 = cpu->r[29] + 0xFFFF98F0u;
|
|
/* 02925638 */ cpu->r[3] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0292563C */ Gambit_fn_02826F20(cpu);
|
|
L_02925640: ; // 0x2925640
|
|
/* 02925640 */ _t24 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02925640 */ cpu->r[8] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02925644 */ _t25 = cpu->r[8] + 0x00000034u;
|
|
/* 02925644 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02925648 */ cpu->ctr = cpu->r[0];
|
|
/* 0292564C */ cpu->r[5] = 0x00000004u;
|
|
/* 02925650 */ cpu->r[4] = (uint32_t)((int32_t)cpu->r[28] * (int32_t)0x0000000Cu);
|
|
/* 02925654 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02925658 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0292565C */ cpu->r[12] = cpu->r[28];
|
|
/* 02925660 */ _t26 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02925660 */ _t27 = _t26 & 0x00000001u;
|
|
/* 02925660 */ if (_t27) goto L_02925668; else goto L_02925664;
|
|
L_02925664: ; // 0x2925664
|
|
/* 02925664 */ cpu->r[12] = 0x00000001u;
|
|
L_02925668: ; // 0x2925668
|
|
/* 02925668 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0292566C */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292566C */ _t29 = _t28 & 0x00000001u;
|
|
/* 0292566C */ if (_t29) goto L_02925678; else goto L_02925670;
|
|
L_02925670: ; // 0x2925670
|
|
/* 02925670 */ _t30 = cpu->r[30] + 0x00000168u;
|
|
/* 02925670 */ rbrew_write32(cpu->mem, _t30, cpu->r[3]);
|
|
/* 02925674 */ _t31 = cpu->r[30] + 0x00000164u;
|
|
/* 02925674 */ rbrew_write32(cpu->mem, _t31, cpu->r[28]);
|
|
L_02925678: ; // 0x2925678
|
|
/* 02925678 */ _t32 = cpu->r[1] + 0x00000008u;
|
|
/* 02925678 */ cpu->r[28] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0292567C */ _t33 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0292567C */ cpu->r[29] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02925680 */ _t34 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02925680 */ cpu->r[0] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02925684 */ _t35 = cpu->r[1] + 0x00000010u;
|
|
/* 02925684 */ cpu->r[30] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02925688 */ cpu->lr = cpu->r[0];
|
|
/* 0292568C */ _t36 = cpu->r[1] + 0x00000014u;
|
|
/* 0292568C */ cpu->r[31] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02925690 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02925694 */ return;
|
|
}
|
|
|
|
// fn_029255AC @ 0x29255ac
|
|
void Gambit_fn_029255AC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36;
|
|
|
|
L_029255AC: ; // 0x29255ac
|
|
/* 029255AC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 029255AC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 029255AC */ cpu->r[1] = _t0;
|
|
/* 029255B0 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 029255B0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 029255B4 */ cpu->r[31] = cpu->r[5];
|
|
/* 029255B8 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 029255B8 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 029255BC */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 029255BC */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 029255C0 */ cpu->r[30] = cpu->r[3];
|
|
/* 029255C4 */ cpu->r[3] = cpu->r[31];
|
|
/* 029255C8 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 029255C8 */ rbrew_write32(cpu->mem, _t4, cpu->r[29]);
|
|
/* 029255CC */ cpu->r[28] = cpu->r[4];
|
|
/* 029255CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 029255D0 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 029255D0 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 029255D4 */ cpu->r[29] = 0x101D0000u;
|
|
/* 029255D8 */ _t6 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 029255D8 */ _t7 = _t6 & 0x00000001u;
|
|
/* 029255D8 */ if (_t7) goto L_029255DC; else goto L_02925624;
|
|
L_029255DC: ; // 0x29255dc
|
|
/* 029255DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 029255E0 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029255E0 */ _t9 = _t8 & 0x00000001u;
|
|
/* 029255E0 */ if (_t9) goto L_029255E4; else goto L_029255EC;
|
|
L_029255E4: ; // 0x29255e4
|
|
/* 029255E4 */ _t10 = cpu->r[29] + 0xFFFF98F0u;
|
|
/* 029255E4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 029255E8 */ Gambit_fn_02826F20(cpu);
|
|
L_029255EC: ; // 0x29255ec
|
|
/* 029255EC */ _t11 = cpu->r[3] + 0x0000000Cu;
|
|
/* 029255EC */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 029255F0 */ _t12 = cpu->r[10] + 0x00000034u;
|
|
/* 029255F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 029255F4 */ cpu->ctr = cpu->r[0];
|
|
/* 029255F8 */ cpu->r[5] = 0x00000004u;
|
|
/* 029255FC */ cpu->r[4] = (uint32_t)((int32_t)cpu->r[28] * (int32_t)0x0000000Cu);
|
|
/* 02925600 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02925604 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 02925608 */ cpu->r[0] = cpu->r[28];
|
|
/* 0292560C */ _t13 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0292560C */ _t14 = _t13 & 0x00000001u;
|
|
/* 0292560C */ if (_t14) goto L_02925614; else goto L_02925610;
|
|
L_02925610: ; // 0x2925610
|
|
/* 02925610 */ cpu->r[0] = 0x00000001u;
|
|
L_02925614: ; // 0x2925614
|
|
/* 02925614 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02925618 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02925618 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02925618 */ if (_t16) goto L_02925624; else goto L_0292561C;
|
|
L_0292561C: ; // 0x292561c
|
|
/* 0292561C */ _t17 = cpu->r[30] + 0x00000170u;
|
|
/* 0292561C */ rbrew_write32(cpu->mem, _t17, cpu->r[3]);
|
|
/* 02925620 */ _t18 = cpu->r[30] + 0x0000016Cu;
|
|
/* 02925620 */ rbrew_write32(cpu->mem, _t18, cpu->r[28]);
|
|
L_02925624: ; // 0x2925624
|
|
/* 02925624 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 02925628 */ cpu->r[3] = cpu->r[31];
|
|
/* 0292562C */ _t19 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0292562C */ _t20 = _t19 & 0x00000001u;
|
|
/* 0292562C */ if (_t20) goto L_02925630; else goto L_02925678;
|
|
L_02925630: ; // 0x2925630
|
|
/* 02925630 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02925634 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02925634 */ _t22 = _t21 & 0x00000001u;
|
|
/* 02925634 */ if (_t22) goto L_02925638; else goto L_02925640;
|
|
L_02925638: ; // 0x2925638
|
|
/* 02925638 */ _t23 = cpu->r[29] + 0xFFFF98F0u;
|
|
/* 02925638 */ cpu->r[3] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0292563C */ Gambit_fn_02826F20(cpu);
|
|
L_02925640: ; // 0x2925640
|
|
/* 02925640 */ _t24 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02925640 */ cpu->r[8] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02925644 */ _t25 = cpu->r[8] + 0x00000034u;
|
|
/* 02925644 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02925648 */ cpu->ctr = cpu->r[0];
|
|
/* 0292564C */ cpu->r[5] = 0x00000004u;
|
|
/* 02925650 */ cpu->r[4] = (uint32_t)((int32_t)cpu->r[28] * (int32_t)0x0000000Cu);
|
|
/* 02925654 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02925658 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0292565C */ cpu->r[12] = cpu->r[28];
|
|
/* 02925660 */ _t26 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02925660 */ _t27 = _t26 & 0x00000001u;
|
|
/* 02925660 */ if (_t27) goto L_02925668; else goto L_02925664;
|
|
L_02925664: ; // 0x2925664
|
|
/* 02925664 */ cpu->r[12] = 0x00000001u;
|
|
L_02925668: ; // 0x2925668
|
|
/* 02925668 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0292566C */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292566C */ _t29 = _t28 & 0x00000001u;
|
|
/* 0292566C */ if (_t29) goto L_02925678; else goto L_02925670;
|
|
L_02925670: ; // 0x2925670
|
|
/* 02925670 */ _t30 = cpu->r[30] + 0x00000168u;
|
|
/* 02925670 */ rbrew_write32(cpu->mem, _t30, cpu->r[3]);
|
|
/* 02925674 */ _t31 = cpu->r[30] + 0x00000164u;
|
|
/* 02925674 */ rbrew_write32(cpu->mem, _t31, cpu->r[28]);
|
|
L_02925678: ; // 0x2925678
|
|
/* 02925678 */ _t32 = cpu->r[1] + 0x00000008u;
|
|
/* 02925678 */ cpu->r[28] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0292567C */ _t33 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0292567C */ cpu->r[29] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02925680 */ _t34 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02925680 */ cpu->r[0] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02925684 */ _t35 = cpu->r[1] + 0x00000010u;
|
|
/* 02925684 */ cpu->r[30] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02925688 */ cpu->lr = cpu->r[0];
|
|
/* 0292568C */ _t36 = cpu->r[1] + 0x00000014u;
|
|
/* 0292568C */ cpu->r[31] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02925690 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02925694 */ return;
|
|
}
|
|
|
|
// fn_02925698 @ 0x2925698
|
|
void Gambit_fn_02925698(CPUState* cpu) {
|
|
uint32_t _t0, _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;
|
|
double _ft25, _ft26;
|
|
|
|
L_02925698: ; // 0x2925698
|
|
/* 02925698 */ cpu->r[0] = cpu->lr;
|
|
/* 0292569C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0292569C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0292569C */ cpu->r[1] = _t0;
|
|
/* 029256A0 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 029256A0 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 029256A4 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 029256A4 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 029256A8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 029256A8 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 029256AC */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 029256AC */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 029256B0 */ cpu->r[29] = cpu->r[3];
|
|
/* 029256B4 */ cpu->r[31] = cpu->r[6];
|
|
/* 029256B8 */ _t5 = cpu->r[29] + 0x0000016Cu;
|
|
/* 029256B8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t5);
|
|
/* 029256BC */ cpu->r[30] = cpu->r[4];
|
|
/* 029256C0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[9]);
|
|
/* 029256C4 */ _t6 = cpu->r[29] + 0x00000170u;
|
|
/* 029256C4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t6);
|
|
/* 029256C8 */ _t7 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 029256C8 */ _t8 = _t7 & 0x00000001u;
|
|
/* 029256C8 */ if (_t8) goto L_029256CC; else goto L_029256D4;
|
|
L_029256CC: ; // 0x29256cc
|
|
/* 029256CC */ cpu->r[12] = (uint32_t)((int32_t)cpu->r[31] * (int32_t)0x0000000Cu);
|
|
/* 029256D0 */ cpu->r[5] = cpu->r[5] + cpu->r[12];
|
|
L_029256D4: ; // 0x29256d4
|
|
/* 029256D4 */ cpu->r[4] = cpu->r[29] + 0x00000128u;
|
|
/* 029256D8 */ cpu->r[3] = cpu->r[30];
|
|
/* 029256DC */ Gambit_fn_02C69468(cpu);
|
|
/* 029256E0 */ _t9 = cpu->r[29] + 0x00000164u;
|
|
/* 029256E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 029256E4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 029256E8 */ _t10 = cpu->r[29] + 0x00000168u;
|
|
/* 029256E8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t10);
|
|
/* 029256EC */ _t11 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 029256EC */ _t12 = _t11 & 0x00000001u;
|
|
/* 029256EC */ if (_t12) goto L_029256F0; else goto L_029256F8;
|
|
L_029256F0: ; // 0x29256f0
|
|
/* 029256F0 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[31] * (int32_t)0x0000000Cu);
|
|
/* 029256F4 */ cpu->r[5] = cpu->r[5] + cpu->r[0];
|
|
L_029256F8: ; // 0x29256f8
|
|
/* 029256F8 */ cpu->r[4] = cpu->r[29] + 0x00000110u;
|
|
/* 029256FC */ cpu->r[3] = cpu->r[30];
|
|
/* 02925700 */ Gambit_fn_02C694BC(cpu);
|
|
/* 02925704 */ _t13 = cpu->r[29] + 0x00000164u;
|
|
/* 02925704 */ cpu->r[8] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02925708 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[8]);
|
|
/* 0292570C */ _t14 = cpu->r[29] + 0x00000168u;
|
|
/* 0292570C */ cpu->r[12] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02925710 */ _t15 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02925710 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02925710 */ if (_t16) goto L_02925714; else goto L_0292571C;
|
|
L_02925714: ; // 0x2925714
|
|
/* 02925714 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[31] * (int32_t)0x0000000Cu);
|
|
/* 02925718 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_0292571C: ; // 0x292571c
|
|
/* 0292571C */ _t17 = cpu->r[12] + 0x00000004u;
|
|
/* 0292571C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 02925720 */ _t18 = cpu->r[12] + 0x00000000u;
|
|
/* 02925720 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 02925724 */ cpu->f[12] = cpu->f[9] * cpu->f[9];
|
|
/* 02925728 */ cpu->f[0] = fma(cpu->f[13], cpu->f[13], cpu->f[12]);
|
|
/* 0292572C */ _t19 = cpu->r[12] + 0x00000008u;
|
|
/* 0292572C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 02925730 */ cpu->r[11] = 0x10140000u;
|
|
/* 02925734 */ cpu->f[8] = fma(cpu->f[11], cpu->f[11], cpu->f[0]);
|
|
/* 02925738 */ _t20 = cpu->r[11] + 0x0000377Cu;
|
|
/* 02925738 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 0292573C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[0]);
|
|
/* 02925740 */ _t21 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02925740 */ _t22 = _t21 & 0x00000001u;
|
|
/* 02925740 */ if (_t22) goto L_02925744; else goto L_02925780;
|
|
L_02925744: ; // 0x2925744
|
|
/* 02925744 */ cpu->r[7] = 0x10140000u;
|
|
/* 02925748 */ cpu->r[6] = 0x10140000u;
|
|
/* 0292574C */ _t23 = cpu->r[7] + 0x00003780u;
|
|
/* 0292574C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 02925750 */ _t24 = cpu->r[6] + 0x00003784u;
|
|
/* 02925750 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 02925754 */ _ft25 = sqrt(cpu->f[8]);
|
|
/* 02925754 */ _ft26 = (double)(int32_t)0x00000001u;
|
|
/* 02925754 */ cpu->f[9] = _ft26 / _ft25;
|
|
/* 02925758 */ cpu->f[10] = cpu->f[9] * cpu->f[9];
|
|
/* 0292575C */ cpu->f[11] = cpu->f[9] * cpu->f[13];
|
|
/* 02925760 */ cpu->f[10] = -fma(cpu->f[10], cpu->f[8], -(cpu->f[12]));
|
|
/* 02925764 */ cpu->f[9] = cpu->f[10] * cpu->f[11];
|
|
/* 02925768 */ _t27 = cpu->r[12] + 0x00000008u;
|
|
/* 02925768 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 0292576C */ /* nop */
|
|
/* 02925770 */ cpu->f[0] = cpu->f[0] * cpu->f[9];
|
|
/* 02925774 */ /* nop */
|
|
/* 02925778 */ _t28 = cpu->r[12] + 0x00000008u;
|
|
/* 02925778 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[0]);
|
|
/* 0292577C */ /* nop */
|
|
L_02925780: ; // 0x2925780
|
|
/* 02925780 */ _t29 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02925780 */ cpu->r[29] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02925784 */ _t30 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02925784 */ cpu->r[0] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02925788 */ _t31 = cpu->r[1] + 0x00000010u;
|
|
/* 02925788 */ cpu->r[30] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0292578C */ cpu->lr = cpu->r[0];
|
|
/* 02925790 */ _t32 = cpu->r[1] + 0x00000014u;
|
|
/* 02925790 */ cpu->r[31] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02925794 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02925798 */ return;
|
|
}
|
|
|
|
// fn_0292569C @ 0x292569c
|
|
void Gambit_fn_0292569C(CPUState* cpu) {
|
|
uint32_t _t0, _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;
|
|
double _ft25, _ft26;
|
|
|
|
L_0292569C: ; // 0x292569c
|
|
/* 0292569C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0292569C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0292569C */ cpu->r[1] = _t0;
|
|
/* 029256A0 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 029256A0 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 029256A4 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 029256A4 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 029256A8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 029256A8 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 029256AC */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 029256AC */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 029256B0 */ cpu->r[29] = cpu->r[3];
|
|
/* 029256B4 */ cpu->r[31] = cpu->r[6];
|
|
/* 029256B8 */ _t5 = cpu->r[29] + 0x0000016Cu;
|
|
/* 029256B8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t5);
|
|
/* 029256BC */ cpu->r[30] = cpu->r[4];
|
|
/* 029256C0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[9]);
|
|
/* 029256C4 */ _t6 = cpu->r[29] + 0x00000170u;
|
|
/* 029256C4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t6);
|
|
/* 029256C8 */ _t7 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 029256C8 */ _t8 = _t7 & 0x00000001u;
|
|
/* 029256C8 */ if (_t8) goto L_029256CC; else goto L_029256D4;
|
|
L_029256CC: ; // 0x29256cc
|
|
/* 029256CC */ cpu->r[12] = (uint32_t)((int32_t)cpu->r[31] * (int32_t)0x0000000Cu);
|
|
/* 029256D0 */ cpu->r[5] = cpu->r[5] + cpu->r[12];
|
|
L_029256D4: ; // 0x29256d4
|
|
/* 029256D4 */ cpu->r[4] = cpu->r[29] + 0x00000128u;
|
|
/* 029256D8 */ cpu->r[3] = cpu->r[30];
|
|
/* 029256DC */ Gambit_fn_02C69468(cpu);
|
|
/* 029256E0 */ _t9 = cpu->r[29] + 0x00000164u;
|
|
/* 029256E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 029256E4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 029256E8 */ _t10 = cpu->r[29] + 0x00000168u;
|
|
/* 029256E8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t10);
|
|
/* 029256EC */ _t11 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 029256EC */ _t12 = _t11 & 0x00000001u;
|
|
/* 029256EC */ if (_t12) goto L_029256F0; else goto L_029256F8;
|
|
L_029256F0: ; // 0x29256f0
|
|
/* 029256F0 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[31] * (int32_t)0x0000000Cu);
|
|
/* 029256F4 */ cpu->r[5] = cpu->r[5] + cpu->r[0];
|
|
L_029256F8: ; // 0x29256f8
|
|
/* 029256F8 */ cpu->r[4] = cpu->r[29] + 0x00000110u;
|
|
/* 029256FC */ cpu->r[3] = cpu->r[30];
|
|
/* 02925700 */ Gambit_fn_02C694BC(cpu);
|
|
/* 02925704 */ _t13 = cpu->r[29] + 0x00000164u;
|
|
/* 02925704 */ cpu->r[8] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02925708 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[8]);
|
|
/* 0292570C */ _t14 = cpu->r[29] + 0x00000168u;
|
|
/* 0292570C */ cpu->r[12] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02925710 */ _t15 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02925710 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02925710 */ if (_t16) goto L_02925714; else goto L_0292571C;
|
|
L_02925714: ; // 0x2925714
|
|
/* 02925714 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[31] * (int32_t)0x0000000Cu);
|
|
/* 02925718 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_0292571C: ; // 0x292571c
|
|
/* 0292571C */ _t17 = cpu->r[12] + 0x00000004u;
|
|
/* 0292571C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 02925720 */ _t18 = cpu->r[12] + 0x00000000u;
|
|
/* 02925720 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 02925724 */ cpu->f[12] = cpu->f[9] * cpu->f[9];
|
|
/* 02925728 */ cpu->f[0] = fma(cpu->f[13], cpu->f[13], cpu->f[12]);
|
|
/* 0292572C */ _t19 = cpu->r[12] + 0x00000008u;
|
|
/* 0292572C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 02925730 */ cpu->r[11] = 0x10140000u;
|
|
/* 02925734 */ cpu->f[8] = fma(cpu->f[11], cpu->f[11], cpu->f[0]);
|
|
/* 02925738 */ _t20 = cpu->r[11] + 0x0000377Cu;
|
|
/* 02925738 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 0292573C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[0]);
|
|
/* 02925740 */ _t21 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02925740 */ _t22 = _t21 & 0x00000001u;
|
|
/* 02925740 */ if (_t22) goto L_02925744; else goto L_02925780;
|
|
L_02925744: ; // 0x2925744
|
|
/* 02925744 */ cpu->r[7] = 0x10140000u;
|
|
/* 02925748 */ cpu->r[6] = 0x10140000u;
|
|
/* 0292574C */ _t23 = cpu->r[7] + 0x00003780u;
|
|
/* 0292574C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 02925750 */ _t24 = cpu->r[6] + 0x00003784u;
|
|
/* 02925750 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 02925754 */ _ft25 = sqrt(cpu->f[8]);
|
|
/* 02925754 */ _ft26 = (double)(int32_t)0x00000001u;
|
|
/* 02925754 */ cpu->f[9] = _ft26 / _ft25;
|
|
/* 02925758 */ cpu->f[10] = cpu->f[9] * cpu->f[9];
|
|
/* 0292575C */ cpu->f[11] = cpu->f[9] * cpu->f[13];
|
|
/* 02925760 */ cpu->f[10] = -fma(cpu->f[10], cpu->f[8], -(cpu->f[12]));
|
|
/* 02925764 */ cpu->f[9] = cpu->f[10] * cpu->f[11];
|
|
/* 02925768 */ _t27 = cpu->r[12] + 0x00000008u;
|
|
/* 02925768 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 0292576C */ /* nop */
|
|
/* 02925770 */ cpu->f[0] = cpu->f[0] * cpu->f[9];
|
|
/* 02925774 */ /* nop */
|
|
/* 02925778 */ _t28 = cpu->r[12] + 0x00000008u;
|
|
/* 02925778 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[0]);
|
|
/* 0292577C */ /* nop */
|
|
L_02925780: ; // 0x2925780
|
|
/* 02925780 */ _t29 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02925780 */ cpu->r[29] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02925784 */ _t30 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02925784 */ cpu->r[0] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02925788 */ _t31 = cpu->r[1] + 0x00000010u;
|
|
/* 02925788 */ cpu->r[30] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0292578C */ cpu->lr = cpu->r[0];
|
|
/* 02925790 */ _t32 = cpu->r[1] + 0x00000014u;
|
|
/* 02925790 */ cpu->r[31] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02925794 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02925798 */ return;
|
|
}
|
|
|
|
// fn_0292579C @ 0x292579c
|
|
void Gambit_fn_0292579C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _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_0292579C: ; // 0x292579c
|
|
/* 0292579C */ cpu->r[0] = cpu->lr;
|
|
/* 029257A0 */ _t0 = cpu->r[1] + 0xFFFFFFA0u;
|
|
/* 029257A0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 029257A0 */ cpu->r[1] = _t0;
|
|
/* 029257A4 */ _t1 = cpu->r[1] + 0x0000005Cu;
|
|
/* 029257A4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 029257A8 */ cpu->r[7] = 0x000000D8u;
|
|
/* 029257AC */ cpu->r[31] = 0x10140000u;
|
|
/* 029257B0 */ cpu->r[5] = 0x02920000u;
|
|
/* 029257B4 */ cpu->r[31] = cpu->r[31] + 0x000033A0u;
|
|
/* 029257B8 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 029257BC */ cpu->r[5] = cpu->r[5] + 0x00005B78u;
|
|
/* 029257C0 */ _t2 = cpu->r[1] + 0x00000064u;
|
|
/* 029257C0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 029257C4 */ cpu->r[0] = 0x10140000u;
|
|
/* 029257C8 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 029257C8 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 029257CC */ cpu->r[0] = cpu->r[0] + 0x00003A14u;
|
|
/* 029257D0 */ cpu->r[6] = 0x00000000u;
|
|
/* 029257D4 */ _t4 = cpu->r[1] + 0x00000010u;
|
|
/* 029257D4 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 029257D8 */ cpu->r[0] = 0x10140000u;
|
|
/* 029257DC */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 029257DC */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 029257E0 */ cpu->r[0] = cpu->r[0] + 0x00003A04u;
|
|
/* 029257E4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 029257E8 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 029257E8 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 029257EC */ Gambit_fn_0291EAD8(cpu);
|
|
/* 029257F0 */ cpu->r[12] = 0x10200000u;
|
|
/* 029257F4 */ cpu->r[5] = 0x02920000u;
|
|
/* 029257F8 */ cpu->r[6] = 0x00000000u;
|
|
/* 029257FC */ _t7 = cpu->r[12] + 0xFFFF8204u;
|
|
/* 029257FC */ rbrew_write32(cpu->mem, _t7, cpu->r[3]);
|
|
/* 02925800 */ cpu->r[12] = 0x10140000u;
|
|
/* 02925804 */ cpu->r[5] = cpu->r[5] + 0x00005C34u;
|
|
/* 02925808 */ _t8 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02925808 */ rbrew_write32(cpu->mem, _t8, cpu->r[31]);
|
|
/* 0292580C */ cpu->r[12] = cpu->r[12] + 0x000039E8u;
|
|
/* 02925810 */ cpu->r[3] = cpu->r[1] + 0x00000018u;
|
|
/* 02925814 */ cpu->r[0] = 0x10140000u;
|
|
/* 02925818 */ _t9 = cpu->r[1] + 0x00000018u;
|
|
/* 02925818 */ rbrew_write32(cpu->mem, _t9, cpu->r[12]);
|
|
/* 0292581C */ _t10 = cpu->r[1] + 0x00000024u;
|
|
/* 0292581C */ rbrew_write32(cpu->mem, _t10, cpu->r[31]);
|
|
/* 02925820 */ cpu->r[0] = cpu->r[0] + 0x00003A28u;
|
|
/* 02925824 */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 02925828 */ cpu->r[7] = 0x00000114u;
|
|
/* 0292582C */ _t11 = cpu->r[1] + 0x00000020u;
|
|
/* 0292582C */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02925830 */ Gambit_fn_0291EAD8(cpu);
|
|
/* 02925834 */ cpu->r[10] = 0x10200000u;
|
|
/* 02925838 */ cpu->r[4] = cpu->r[1] + 0x00000030u;
|
|
/* 0292583C */ cpu->r[12] = 0x10140000u;
|
|
/* 02925840 */ _t12 = cpu->r[10] + 0xFFFF8208u;
|
|
/* 02925840 */ rbrew_write32(cpu->mem, _t12, cpu->r[3]);
|
|
/* 02925844 */ cpu->r[5] = 0x02920000u;
|
|
/* 02925848 */ cpu->r[6] = 0x00000000u;
|
|
/* 0292584C */ _t13 = cpu->r[1] + 0x00000034u;
|
|
/* 0292584C */ rbrew_write32(cpu->mem, _t13, cpu->r[31]);
|
|
/* 02925850 */ cpu->r[5] = cpu->r[5] + 0x00005CF0u;
|
|
/* 02925854 */ cpu->r[12] = cpu->r[12] + 0x00003A48u;
|
|
/* 02925858 */ _t14 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02925858 */ rbrew_write32(cpu->mem, _t14, cpu->r[31]);
|
|
/* 0292585C */ cpu->r[0] = 0x10140000u;
|
|
/* 02925860 */ cpu->r[7] = 0x00000184u;
|
|
/* 02925864 */ _t15 = cpu->r[1] + 0x00000030u;
|
|
/* 02925864 */ rbrew_write32(cpu->mem, _t15, cpu->r[12]);
|
|
/* 02925868 */ cpu->r[0] = cpu->r[0] + 0x00003A34u;
|
|
/* 0292586C */ cpu->r[3] = cpu->r[1] + 0x00000028u;
|
|
/* 02925870 */ _t16 = cpu->r[1] + 0x00000028u;
|
|
/* 02925870 */ rbrew_write32(cpu->mem, _t16, cpu->r[0]);
|
|
/* 02925874 */ Gambit_fn_0291EAD8(cpu);
|
|
/* 02925878 */ cpu->r[12] = 0x10200000u;
|
|
/* 0292587C */ cpu->r[11] = 0x10140000u;
|
|
/* 02925880 */ cpu->r[5] = 0x02920000u;
|
|
/* 02925884 */ _t17 = cpu->r[12] + 0xFFFF820Cu;
|
|
/* 02925884 */ rbrew_write32(cpu->mem, _t17, cpu->r[3]);
|
|
/* 02925888 */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 0292588C */ cpu->r[11] = cpu->r[11] + 0x00003A6Cu;
|
|
/* 02925890 */ _t18 = cpu->r[1] + 0x00000044u;
|
|
/* 02925890 */ rbrew_write32(cpu->mem, _t18, cpu->r[31]);
|
|
/* 02925894 */ cpu->r[5] = cpu->r[5] + 0x00005DACu;
|
|
/* 02925898 */ cpu->r[4] = cpu->r[1] + 0x00000040u;
|
|
/* 0292589C */ _t19 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0292589C */ rbrew_write32(cpu->mem, _t19, cpu->r[31]);
|
|
/* 029258A0 */ cpu->r[10] = 0x10140000u;
|
|
/* 029258A4 */ cpu->r[6] = 0x00000000u;
|
|
/* 029258A8 */ _t20 = cpu->r[1] + 0x00000040u;
|
|
/* 029258A8 */ rbrew_write32(cpu->mem, _t20, cpu->r[11]);
|
|
/* 029258AC */ cpu->r[10] = cpu->r[10] + 0x00003A60u;
|
|
/* 029258B0 */ cpu->r[7] = 0x00000134u;
|
|
/* 029258B4 */ _t21 = cpu->r[1] + 0x00000038u;
|
|
/* 029258B4 */ rbrew_write32(cpu->mem, _t21, cpu->r[10]);
|
|
/* 029258B8 */ Gambit_fn_0291EAD8(cpu);
|
|
/* 029258BC */ cpu->r[10] = 0x10200000u;
|
|
/* 029258C0 */ cpu->r[6] = 0x00000000u;
|
|
/* 029258C4 */ cpu->r[5] = 0x02920000u;
|
|
/* 029258C8 */ _t22 = cpu->r[10] + 0xFFFF8210u;
|
|
/* 029258C8 */ rbrew_write32(cpu->mem, _t22, cpu->r[3]);
|
|
/* 029258CC */ cpu->r[0] = 0x10140000u;
|
|
/* 029258D0 */ cpu->r[5] = cpu->r[5] + 0x00005E68u;
|
|
/* 029258D4 */ _t23 = cpu->r[1] + 0x00000054u;
|
|
/* 029258D4 */ rbrew_write32(cpu->mem, _t23, cpu->r[31]);
|
|
/* 029258D8 */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 029258DC */ cpu->r[0] = cpu->r[0] + 0x00003A7Cu;
|
|
/* 029258E0 */ _t24 = cpu->r[1] + 0x0000004Cu;
|
|
/* 029258E0 */ rbrew_write32(cpu->mem, _t24, cpu->r[31]);
|
|
/* 029258E4 */ cpu->r[12] = 0x10140000u;
|
|
/* 029258E8 */ cpu->r[4] = cpu->r[1] + 0x00000050u;
|
|
/* 029258EC */ _t25 = cpu->r[1] + 0x00000050u;
|
|
/* 029258EC */ rbrew_write32(cpu->mem, _t25, cpu->r[0]);
|
|
/* 029258F0 */ cpu->r[12] = cpu->r[12] + 0x000039F8u;
|
|
/* 029258F4 */ cpu->r[7] = 0x00000174u;
|
|
/* 029258F8 */ _t26 = cpu->r[1] + 0x00000048u;
|
|
/* 029258F8 */ rbrew_write32(cpu->mem, _t26, cpu->r[12]);
|
|
/* 029258FC */ Gambit_fn_0291EAD8(cpu);
|
|
/* 02925900 */ cpu->r[11] = 0x10200000u;
|
|
/* 02925904 */ _t27 = cpu->r[11] + 0xFFFF8214u;
|
|
/* 02925904 */ rbrew_write32(cpu->mem, _t27, cpu->r[3]);
|
|
/* 02925908 */ _t28 = cpu->r[1] + 0x00000064u;
|
|
/* 02925908 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0292590C */ cpu->lr = cpu->r[0];
|
|
/* 02925910 */ _t29 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02925910 */ cpu->r[31] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02925914 */ cpu->r[1] = cpu->r[1] + 0x00000060u;
|
|
/* 02925918 */ return;
|
|
}
|
|
|
|
// fn_029257A0 @ 0x29257a0
|
|
void Gambit_fn_029257A0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _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_029257A0: ; // 0x29257a0
|
|
/* 029257A0 */ _t0 = cpu->r[1] + 0xFFFFFFA0u;
|
|
/* 029257A0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 029257A0 */ cpu->r[1] = _t0;
|
|
/* 029257A4 */ _t1 = cpu->r[1] + 0x0000005Cu;
|
|
/* 029257A4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 029257A8 */ cpu->r[7] = 0x000000D8u;
|
|
/* 029257AC */ cpu->r[31] = 0x10140000u;
|
|
/* 029257B0 */ cpu->r[5] = 0x02920000u;
|
|
/* 029257B4 */ cpu->r[31] = cpu->r[31] + 0x000033A0u;
|
|
/* 029257B8 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 029257BC */ cpu->r[5] = cpu->r[5] + 0x00005B78u;
|
|
/* 029257C0 */ _t2 = cpu->r[1] + 0x00000064u;
|
|
/* 029257C0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 029257C4 */ cpu->r[0] = 0x10140000u;
|
|
/* 029257C8 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 029257C8 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 029257CC */ cpu->r[0] = cpu->r[0] + 0x00003A14u;
|
|
/* 029257D0 */ cpu->r[6] = 0x00000000u;
|
|
/* 029257D4 */ _t4 = cpu->r[1] + 0x00000010u;
|
|
/* 029257D4 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 029257D8 */ cpu->r[0] = 0x10140000u;
|
|
/* 029257DC */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 029257DC */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 029257E0 */ cpu->r[0] = cpu->r[0] + 0x00003A04u;
|
|
/* 029257E4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 029257E8 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 029257E8 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 029257EC */ Gambit_fn_0291EAD8(cpu);
|
|
/* 029257F0 */ cpu->r[12] = 0x10200000u;
|
|
/* 029257F4 */ cpu->r[5] = 0x02920000u;
|
|
/* 029257F8 */ cpu->r[6] = 0x00000000u;
|
|
/* 029257FC */ _t7 = cpu->r[12] + 0xFFFF8204u;
|
|
/* 029257FC */ rbrew_write32(cpu->mem, _t7, cpu->r[3]);
|
|
/* 02925800 */ cpu->r[12] = 0x10140000u;
|
|
/* 02925804 */ cpu->r[5] = cpu->r[5] + 0x00005C34u;
|
|
/* 02925808 */ _t8 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02925808 */ rbrew_write32(cpu->mem, _t8, cpu->r[31]);
|
|
/* 0292580C */ cpu->r[12] = cpu->r[12] + 0x000039E8u;
|
|
/* 02925810 */ cpu->r[3] = cpu->r[1] + 0x00000018u;
|
|
/* 02925814 */ cpu->r[0] = 0x10140000u;
|
|
/* 02925818 */ _t9 = cpu->r[1] + 0x00000018u;
|
|
/* 02925818 */ rbrew_write32(cpu->mem, _t9, cpu->r[12]);
|
|
/* 0292581C */ _t10 = cpu->r[1] + 0x00000024u;
|
|
/* 0292581C */ rbrew_write32(cpu->mem, _t10, cpu->r[31]);
|
|
/* 02925820 */ cpu->r[0] = cpu->r[0] + 0x00003A28u;
|
|
/* 02925824 */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 02925828 */ cpu->r[7] = 0x00000114u;
|
|
/* 0292582C */ _t11 = cpu->r[1] + 0x00000020u;
|
|
/* 0292582C */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02925830 */ Gambit_fn_0291EAD8(cpu);
|
|
/* 02925834 */ cpu->r[10] = 0x10200000u;
|
|
/* 02925838 */ cpu->r[4] = cpu->r[1] + 0x00000030u;
|
|
/* 0292583C */ cpu->r[12] = 0x10140000u;
|
|
/* 02925840 */ _t12 = cpu->r[10] + 0xFFFF8208u;
|
|
/* 02925840 */ rbrew_write32(cpu->mem, _t12, cpu->r[3]);
|
|
/* 02925844 */ cpu->r[5] = 0x02920000u;
|
|
/* 02925848 */ cpu->r[6] = 0x00000000u;
|
|
/* 0292584C */ _t13 = cpu->r[1] + 0x00000034u;
|
|
/* 0292584C */ rbrew_write32(cpu->mem, _t13, cpu->r[31]);
|
|
/* 02925850 */ cpu->r[5] = cpu->r[5] + 0x00005CF0u;
|
|
/* 02925854 */ cpu->r[12] = cpu->r[12] + 0x00003A48u;
|
|
/* 02925858 */ _t14 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02925858 */ rbrew_write32(cpu->mem, _t14, cpu->r[31]);
|
|
/* 0292585C */ cpu->r[0] = 0x10140000u;
|
|
/* 02925860 */ cpu->r[7] = 0x00000184u;
|
|
/* 02925864 */ _t15 = cpu->r[1] + 0x00000030u;
|
|
/* 02925864 */ rbrew_write32(cpu->mem, _t15, cpu->r[12]);
|
|
/* 02925868 */ cpu->r[0] = cpu->r[0] + 0x00003A34u;
|
|
/* 0292586C */ cpu->r[3] = cpu->r[1] + 0x00000028u;
|
|
/* 02925870 */ _t16 = cpu->r[1] + 0x00000028u;
|
|
/* 02925870 */ rbrew_write32(cpu->mem, _t16, cpu->r[0]);
|
|
/* 02925874 */ Gambit_fn_0291EAD8(cpu);
|
|
/* 02925878 */ cpu->r[12] = 0x10200000u;
|
|
/* 0292587C */ cpu->r[11] = 0x10140000u;
|
|
/* 02925880 */ cpu->r[5] = 0x02920000u;
|
|
/* 02925884 */ _t17 = cpu->r[12] + 0xFFFF820Cu;
|
|
/* 02925884 */ rbrew_write32(cpu->mem, _t17, cpu->r[3]);
|
|
/* 02925888 */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 0292588C */ cpu->r[11] = cpu->r[11] + 0x00003A6Cu;
|
|
/* 02925890 */ _t18 = cpu->r[1] + 0x00000044u;
|
|
/* 02925890 */ rbrew_write32(cpu->mem, _t18, cpu->r[31]);
|
|
/* 02925894 */ cpu->r[5] = cpu->r[5] + 0x00005DACu;
|
|
/* 02925898 */ cpu->r[4] = cpu->r[1] + 0x00000040u;
|
|
/* 0292589C */ _t19 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0292589C */ rbrew_write32(cpu->mem, _t19, cpu->r[31]);
|
|
/* 029258A0 */ cpu->r[10] = 0x10140000u;
|
|
/* 029258A4 */ cpu->r[6] = 0x00000000u;
|
|
/* 029258A8 */ _t20 = cpu->r[1] + 0x00000040u;
|
|
/* 029258A8 */ rbrew_write32(cpu->mem, _t20, cpu->r[11]);
|
|
/* 029258AC */ cpu->r[10] = cpu->r[10] + 0x00003A60u;
|
|
/* 029258B0 */ cpu->r[7] = 0x00000134u;
|
|
/* 029258B4 */ _t21 = cpu->r[1] + 0x00000038u;
|
|
/* 029258B4 */ rbrew_write32(cpu->mem, _t21, cpu->r[10]);
|
|
/* 029258B8 */ Gambit_fn_0291EAD8(cpu);
|
|
/* 029258BC */ cpu->r[10] = 0x10200000u;
|
|
/* 029258C0 */ cpu->r[6] = 0x00000000u;
|
|
/* 029258C4 */ cpu->r[5] = 0x02920000u;
|
|
/* 029258C8 */ _t22 = cpu->r[10] + 0xFFFF8210u;
|
|
/* 029258C8 */ rbrew_write32(cpu->mem, _t22, cpu->r[3]);
|
|
/* 029258CC */ cpu->r[0] = 0x10140000u;
|
|
/* 029258D0 */ cpu->r[5] = cpu->r[5] + 0x00005E68u;
|
|
/* 029258D4 */ _t23 = cpu->r[1] + 0x00000054u;
|
|
/* 029258D4 */ rbrew_write32(cpu->mem, _t23, cpu->r[31]);
|
|
/* 029258D8 */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 029258DC */ cpu->r[0] = cpu->r[0] + 0x00003A7Cu;
|
|
/* 029258E0 */ _t24 = cpu->r[1] + 0x0000004Cu;
|
|
/* 029258E0 */ rbrew_write32(cpu->mem, _t24, cpu->r[31]);
|
|
/* 029258E4 */ cpu->r[12] = 0x10140000u;
|
|
/* 029258E8 */ cpu->r[4] = cpu->r[1] + 0x00000050u;
|
|
/* 029258EC */ _t25 = cpu->r[1] + 0x00000050u;
|
|
/* 029258EC */ rbrew_write32(cpu->mem, _t25, cpu->r[0]);
|
|
/* 029258F0 */ cpu->r[12] = cpu->r[12] + 0x000039F8u;
|
|
/* 029258F4 */ cpu->r[7] = 0x00000174u;
|
|
/* 029258F8 */ _t26 = cpu->r[1] + 0x00000048u;
|
|
/* 029258F8 */ rbrew_write32(cpu->mem, _t26, cpu->r[12]);
|
|
/* 029258FC */ Gambit_fn_0291EAD8(cpu);
|
|
/* 02925900 */ cpu->r[11] = 0x10200000u;
|
|
/* 02925904 */ _t27 = cpu->r[11] + 0xFFFF8214u;
|
|
/* 02925904 */ rbrew_write32(cpu->mem, _t27, cpu->r[3]);
|
|
/* 02925908 */ _t28 = cpu->r[1] + 0x00000064u;
|
|
/* 02925908 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0292590C */ cpu->lr = cpu->r[0];
|
|
/* 02925910 */ _t29 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02925910 */ cpu->r[31] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02925914 */ cpu->r[1] = cpu->r[1] + 0x00000060u;
|
|
/* 02925918 */ return;
|
|
}
|
|
|
|
// fn_0292591C @ 0x292591c
|
|
void Gambit_fn_0292591C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0292591C: ; // 0x292591c
|
|
/* 0292591C */ cpu->r[0] = cpu->lr;
|
|
/* 02925920 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02925920 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02925920 */ cpu->r[1] = _t0;
|
|
/* 02925924 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02925924 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02925928 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02925928 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0292592C */ cpu->r[30] = cpu->r[3];
|
|
/* 0292592C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02925930 */ cpu->r[31] = cpu->r[4];
|
|
/* 02925934 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02925934 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02925938 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02925938 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02925938 */ if (_t5) goto L_02925964; else goto L_0292593C;
|
|
L_0292593C: ; // 0x292593c
|
|
/* 0292593C */ cpu->r[0] = 0x10140000u;
|
|
/* 02925940 */ cpu->r[3] = cpu->r[30];
|
|
/* 02925944 */ cpu->r[0] = cpu->r[0] + 0x00003A8Cu;
|
|
/* 02925948 */ cpu->r[4] = 0x00000000u;
|
|
/* 0292594C */ _t6 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0292594C */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02925950 */ Gambit_fn_0291E1F4(cpu);
|
|
/* 02925954 */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02925954 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02925958 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02925958 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02925958 */ if (_t8) goto L_02925964; else goto L_0292595C;
|
|
L_0292595C: ; // 0x292595c
|
|
/* 0292595C */ cpu->r[3] = cpu->r[30];
|
|
/* 02925960 */ Gambit_fn_02801BB0(cpu);
|
|
L_02925964: ; // 0x2925964
|
|
/* 02925964 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02925964 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02925968 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 02925968 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0292596C */ cpu->lr = cpu->r[0];
|
|
/* 02925970 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02925970 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02925974 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02925978 */ return;
|
|
}
|
|
|
|
// fn_02925920 @ 0x2925920
|
|
void Gambit_fn_02925920(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_02925920: ; // 0x2925920
|
|
/* 02925920 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02925920 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02925920 */ cpu->r[1] = _t0;
|
|
/* 02925924 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02925924 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02925928 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02925928 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0292592C */ cpu->r[30] = cpu->r[3];
|
|
/* 0292592C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02925930 */ cpu->r[31] = cpu->r[4];
|
|
/* 02925934 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02925934 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02925938 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02925938 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02925938 */ if (_t5) goto L_02925964; else goto L_0292593C;
|
|
L_0292593C: ; // 0x292593c
|
|
/* 0292593C */ cpu->r[0] = 0x10140000u;
|
|
/* 02925940 */ cpu->r[3] = cpu->r[30];
|
|
/* 02925944 */ cpu->r[0] = cpu->r[0] + 0x00003A8Cu;
|
|
/* 02925948 */ cpu->r[4] = 0x00000000u;
|
|
/* 0292594C */ _t6 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0292594C */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02925950 */ Gambit_fn_0291E1F4(cpu);
|
|
/* 02925954 */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02925954 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02925958 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02925958 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02925958 */ if (_t8) goto L_02925964; else goto L_0292595C;
|
|
L_0292595C: ; // 0x292595c
|
|
/* 0292595C */ cpu->r[3] = cpu->r[30];
|
|
/* 02925960 */ Gambit_fn_02801BB0(cpu);
|
|
L_02925964: ; // 0x2925964
|
|
/* 02925964 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02925964 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02925968 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 02925968 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0292596C */ cpu->lr = cpu->r[0];
|
|
/* 02925970 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02925970 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02925974 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02925978 */ return;
|
|
}
|
|
|
|
// fn_0292597C @ 0x292597c
|
|
void Gambit_fn_0292597C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0292597C: ; // 0x292597c
|
|
/* 0292597C */ _t0 = cpu->r[3] + 0x00000018u;
|
|
/* 0292597C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02925980 */ _t1 = cpu->r[12] + 0x00000084u;
|
|
/* 02925980 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02925984 */ cpu->ctr = cpu->r[0];
|
|
/* 02925988 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0292598C @ 0x292598c
|
|
void Gambit_fn_0292598C(CPUState* cpu) {
|
|
L_0292598C: ; // 0x292598c
|
|
/* 0292598C */ cpu->r[3] = cpu->r[3] + 0x0000007Cu;
|
|
/* 02925990 */ return;
|
|
}
|
|
|
|
// fn_02925994 @ 0x2925994
|
|
void Gambit_fn_02925994(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02925994: ; // 0x2925994
|
|
/* 02925994 */ _t0 = cpu->r[3] + 0x00000018u;
|
|
/* 02925994 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02925998 */ _t1 = cpu->r[12] + 0x000000B4u;
|
|
/* 02925998 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0292599C */ cpu->ctr = cpu->r[0];
|
|
/* 029259A0 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_029259A4 @ 0x29259a4
|
|
void Gambit_fn_029259A4(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_029259A4: ; // 0x29259a4
|
|
/* 029259A4 */ _t0 = cpu->r[3] + 0x0000006Eu;
|
|
/* 029259A4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 029259A8 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 029259AC */ return;
|
|
}
|
|
|
|
// fn_029259B0 @ 0x29259b0
|
|
void Gambit_fn_029259B0(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_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t0;
|
|
/* 02801B38 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02801B48 */ _t3 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02801B50 */ if (_t5) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02801B60 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 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 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B74 */ if (_t9) 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 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02801B84 */ if (_t11) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t12 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02801B8C */ _t13 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02801BA0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
L_029259B0: ; // 0x29259b0
|
|
/* 029259B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 029259B4 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029259B4 */ _t17 = _t16 & 0x00000001u;
|
|
/* 029259B4 */ if (_t17) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 029259B4 */ goto L_029259B8;
|
|
L_029259B8: ; // 0x29259b8
|
|
/* 029259B8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 029259B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 029259BC */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029259BC */ _t19 = _t18 & 0x00000001u;
|
|
/* 029259BC */ if (_t19) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 029259BC */ goto L_029259C0;
|
|
L_029259C0: ; // 0x29259c0
|
|
/* 029259C0 */ goto L_02801BB0;
|
|
}
|
|
|
|
// fn_029259C4 @ 0x29259c4
|
|
void Gambit_fn_029259C4(CPUState* cpu) {
|
|
L_029259C4: ; // 0x29259c4
|
|
/* 029259C4 */ return;
|
|
}
|
|
|
|
// fn_029259C8 @ 0x29259c8
|
|
void Gambit_fn_029259C8(CPUState* cpu) {
|
|
L_029259C8: ; // 0x29259c8
|
|
/* 029259C8 */ return;
|
|
}
|
|
|
|
// fn_029259CC @ 0x29259cc
|
|
void Gambit_fn_029259CC(CPUState* cpu) {
|
|
L_029259CC: ; // 0x29259cc
|
|
/* 029259CC */ cpu->r[3] = 0x00000001u;
|
|
/* 029259D0 */ return;
|
|
}
|
|
|
|
// fn_029259D4 @ 0x29259d4
|
|
void Gambit_fn_029259D4(CPUState* cpu) {
|
|
L_029259D4: ; // 0x29259d4
|
|
/* 029259D4 */ cpu->r[3] = 0x00000000u;
|
|
/* 029259D8 */ return;
|
|
}
|
|
|
|
// fn_029259DC @ 0x29259dc
|
|
void Gambit_fn_029259DC(CPUState* cpu) {
|
|
L_029259DC: ; // 0x29259dc
|
|
/* 029259DC */ cpu->r[3] = cpu->r[3] + 0x0000000Cu;
|
|
/* 029259E0 */ return;
|
|
}
|
|
|
|
// fn_029259E4 @ 0x29259e4
|
|
void Gambit_fn_029259E4(CPUState* cpu) {
|
|
L_029259E4: ; // 0x29259e4
|
|
/* 029259E4 */ cpu->r[3] = cpu->r[3] + 0x0000000Cu;
|
|
/* 029259E8 */ return;
|
|
}
|
|
|
|
// fn_029259EC @ 0x29259ec
|
|
void Gambit_fn_029259EC(CPUState* cpu) {
|
|
L_029259EC: ; // 0x29259ec
|
|
/* 029259EC */ cpu->r[3] = cpu->r[3] + 0x0000000Cu;
|
|
/* 029259F0 */ return;
|
|
}
|
|
|
|
// fn_029259F4 @ 0x29259f4
|
|
void Gambit_fn_029259F4(CPUState* cpu) {
|
|
L_029259F4: ; // 0x29259f4
|
|
/* 029259F4 */ cpu->r[3] = cpu->r[3] + 0x0000000Cu;
|
|
/* 029259F8 */ return;
|
|
}
|
|
|
|
// fn_029259FC @ 0x29259fc
|
|
void Gambit_fn_029259FC(CPUState* cpu) {
|
|
L_029259FC: ; // 0x29259fc
|
|
/* 029259FC */ cpu->r[3] = 0x00000001u;
|
|
/* 02925A00 */ return;
|
|
}
|
|
|
|
// fn_02925A04 @ 0x2925a04
|
|
void Gambit_fn_02925A04(CPUState* cpu) {
|
|
L_02925A04: ; // 0x2925a04
|
|
/* 02925A04 */ cpu->r[3] = 0x00000001u;
|
|
/* 02925A08 */ return;
|
|
}
|
|
|
|
// fn_02925A0C @ 0x2925a0c
|
|
void Gambit_fn_02925A0C(CPUState* cpu) {
|
|
L_02925A0C: ; // 0x2925a0c
|
|
/* 02925A0C */ cpu->r[3] = cpu->r[3] + 0x0000000Cu;
|
|
/* 02925A10 */ return;
|
|
}
|
|
|
|
// fn_02925A14 @ 0x2925a14
|
|
void Gambit_fn_02925A14(CPUState* cpu) {
|
|
L_02925A14: ; // 0x2925a14
|
|
/* 02925A14 */ cpu->r[3] = cpu->r[3] + 0x0000000Cu;
|
|
/* 02925A18 */ return;
|
|
}
|
|
|
|
// fn_02925A1C @ 0x2925a1c
|
|
void Gambit_fn_02925A1C(CPUState* cpu) {
|
|
L_02925A1C: ; // 0x2925a1c
|
|
/* 02925A1C */ cpu->r[3] = cpu->r[3] + 0x0000000Cu;
|
|
/* 02925A20 */ return;
|
|
}
|
|
|
|
// fn_02925A24 @ 0x2925a24
|
|
void Gambit_fn_02925A24(CPUState* cpu) {
|
|
L_02925A24: ; // 0x2925a24
|
|
/* 02925A24 */ cpu->r[3] = cpu->r[3] + 0x0000000Cu;
|
|
/* 02925A28 */ return;
|
|
}
|
|
|
|
// fn_02925A2C @ 0x2925a2c
|
|
void Gambit_fn_02925A2C(CPUState* cpu) {
|
|
L_02925A2C: ; // 0x2925a2c
|
|
/* 02925A2C */ cpu->r[3] = 0x00000004u;
|
|
/* 02925A30 */ return;
|
|
}
|
|
|
|
// fn_02925A34 @ 0x2925a34
|
|
void Gambit_fn_02925A34(CPUState* cpu) {
|
|
L_02925A34: ; // 0x2925a34
|
|
/* 02925A34 */ cpu->r[3] = 0x00000004u;
|
|
/* 02925A38 */ return;
|
|
}
|
|
|
|
// fn_02925A3C @ 0x2925a3c
|
|
void Gambit_fn_02925A3C(CPUState* cpu) {
|
|
L_02925A3C: ; // 0x2925a3c
|
|
/* 02925A3C */ cpu->r[3] = cpu->r[3] + 0x0000000Cu;
|
|
/* 02925A40 */ return;
|
|
}
|
|
|
|
// fn_02925A44 @ 0x2925a44
|
|
void Gambit_fn_02925A44(CPUState* cpu) {
|
|
L_02925A44: ; // 0x2925a44
|
|
/* 02925A44 */ cpu->r[3] = cpu->r[3] + 0x0000000Cu;
|
|
/* 02925A48 */ return;
|
|
}
|
|
|
|
// fn_02925A4C @ 0x2925a4c
|
|
void Gambit_fn_02925A4C(CPUState* cpu) {
|
|
L_02925A4C: ; // 0x2925a4c
|
|
/* 02925A4C */ cpu->r[3] = cpu->r[3] + 0x0000000Cu;
|
|
/* 02925A50 */ return;
|
|
}
|
|
|
|
// fn_02925A54 @ 0x2925a54
|
|
void Gambit_fn_02925A54(CPUState* cpu) {
|
|
L_02925A54: ; // 0x2925a54
|
|
/* 02925A54 */ cpu->r[3] = cpu->r[3] + 0x0000000Cu;
|
|
/* 02925A58 */ return;
|
|
}
|
|
|
|
// fn_02925A5C @ 0x2925a5c
|
|
void Gambit_fn_02925A5C(CPUState* cpu) {
|
|
L_02925A5C: ; // 0x2925a5c
|
|
/* 02925A5C */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02925A60 */ return;
|
|
}
|
|
|
|
// fn_02925A64 @ 0x2925a64
|
|
void Gambit_fn_02925A64(CPUState* cpu) {
|
|
L_02925A64: ; // 0x2925a64
|
|
/* 02925A64 */ cpu->r[3] = 0x00000006u;
|
|
/* 02925A68 */ return;
|
|
}
|
|
|
|
// fn_02925A6C @ 0x2925a6c
|
|
void Gambit_fn_02925A6C(CPUState* cpu) {
|
|
L_02925A6C: ; // 0x2925a6c
|
|
/* 02925A6C */ cpu->r[3] = cpu->r[3] + 0x0000000Cu;
|
|
/* 02925A70 */ return;
|
|
}
|
|
|
|
// fn_02925A74 @ 0x2925a74
|
|
void Gambit_fn_02925A74(CPUState* cpu) {
|
|
L_02925A74: ; // 0x2925a74
|
|
/* 02925A74 */ cpu->r[3] = cpu->r[3] + 0x0000000Cu;
|
|
/* 02925A78 */ return;
|
|
}
|
|
|
|
// fn_02925A7C @ 0x2925a7c
|
|
void Gambit_fn_02925A7C(CPUState* cpu) {
|
|
L_02925A7C: ; // 0x2925a7c
|
|
/* 02925A7C */ cpu->r[3] = cpu->r[3] + 0x0000000Cu;
|
|
/* 02925A80 */ return;
|
|
}
|
|
|
|
// fn_02925A84 @ 0x2925a84
|
|
void Gambit_fn_02925A84(CPUState* cpu) {
|
|
L_02925A84: ; // 0x2925a84
|
|
/* 02925A84 */ cpu->r[3] = cpu->r[3] + 0x0000000Cu;
|
|
/* 02925A88 */ return;
|
|
}
|
|
|
|
// fn_02925A8C @ 0x2925a8c
|
|
void Gambit_fn_02925A8C(CPUState* cpu) {
|
|
L_02925A8C: ; // 0x2925a8c
|
|
/* 02925A8C */ cpu->r[3] = 0x00000010u;
|
|
/* 02925A90 */ return;
|
|
}
|
|
|
|
// fn_02925A94 @ 0x2925a94
|
|
void Gambit_fn_02925A94(CPUState* cpu) {
|
|
L_02925A94: ; // 0x2925a94
|
|
/* 02925A94 */ cpu->r[3] = 0x00000001u;
|
|
/* 02925A98 */ return;
|
|
}
|
|
|
|
// fn_02925A9C @ 0x2925a9c
|
|
void Gambit_fn_02925A9C(CPUState* cpu) {
|
|
L_02925A9C: ; // 0x2925a9c
|
|
/* 02925A9C */ cpu->r[3] = 0x00000001u;
|
|
/* 02925AA0 */ return;
|
|
}
|
|
|
|
// fn_02925AA4 @ 0x2925aa4
|
|
void Gambit_fn_02925AA4(CPUState* cpu) {
|
|
L_02925AA4: ; // 0x2925aa4
|
|
/* 02925AA4 */ return;
|
|
}
|
|
|
|
// fn_02925AA8 @ 0x2925aa8
|
|
void Gambit_fn_02925AA8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_02925AA8: ; // 0x2925aa8
|
|
/* 02925AA8 */ _t0 = cpu->r[4] + 0x00000000u;
|
|
/* 02925AA8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02925AAC */ _t1 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02925AAC */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02925AB0 */ _t2 = cpu->r[11] + 0x00000008u;
|
|
/* 02925AB0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02925AB4 */ cpu->r[0] = cpu->r[11] ^ cpu->r[12];
|
|
/* 02925AB8 */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 02925ABC */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 02925AC0 */ return;
|
|
}
|
|
|
|
// fn_02925AC4 @ 0x2925ac4
|
|
void Gambit_fn_02925AC4(CPUState* cpu) {
|
|
L_02925AC4: ; // 0x2925ac4
|
|
/* 02925AC4 */ return;
|
|
}
|
|
|
|
// fn_02925AC8 @ 0x2925ac8
|
|
void Gambit_fn_02925AC8(CPUState* cpu) {
|
|
L_02925AC8: ; // 0x2925ac8
|
|
/* 02925AC8 */ return;
|
|
}
|
|
|
|
// fn_02925ACC @ 0x2925acc
|
|
void Gambit_fn_02925ACC(CPUState* cpu) {
|
|
L_02925ACC: ; // 0x2925acc
|
|
/* 02925ACC */ return;
|
|
}
|
|
|
|
// fn_02925AD0 @ 0x2925ad0
|
|
void Gambit_fn_02925AD0(CPUState* cpu) {
|
|
L_02925AD0: ; // 0x2925ad0
|
|
/* 02925AD0 */ return;
|
|
}
|
|
|
|
// fn_02925AD4 @ 0x2925ad4
|
|
void Gambit_fn_02925AD4(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02925AD4: ; // 0x2925ad4
|
|
/* 02925AD4 */ _t0 = cpu->r[3] + 0x00000018u;
|
|
/* 02925AD4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02925AD8 */ _t1 = cpu->r[12] + 0x0000007Cu;
|
|
/* 02925AD8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02925ADC */ cpu->ctr = cpu->r[0];
|
|
/* 02925AE0 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02925AE4 @ 0x2925ae4
|
|
void Gambit_fn_02925AE4(CPUState* cpu) {
|
|
L_02925AE4: ; // 0x2925ae4
|
|
/* 02925AE4 */ cpu->r[3] = cpu->r[3] + 0x00000040u;
|
|
/* 02925AE8 */ return;
|
|
}
|
|
|
|
// fn_02925AEC @ 0x2925aec
|
|
void Gambit_fn_02925AEC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_02925AEC: ; // 0x2925aec
|
|
/* 02925AEC */ cpu->r[9] = 0x101D0000u;
|
|
/* 02925AF0 */ _t0 = cpu->r[9] + 0x00000544u;
|
|
/* 02925AF0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02925AF0 */ cpu->r[9] = _t0;
|
|
/* 02925AF4 */ cpu->r[12] = 0x101D0000u;
|
|
/* 02925AF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02925AFC */ cpu->r[12] = cpu->r[12] + 0x00001A8Cu;
|
|
/* 02925B00 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02925B00 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02925B00 */ if (_t2) goto L_02925B04; else goto L_02925B18;
|
|
L_02925B04: ; // 0x2925b04
|
|
/* 02925B04 */ cpu->r[7] = 0x10140000u;
|
|
/* 02925B08 */ cpu->r[0] = 0x00000001u;
|
|
/* 02925B0C */ cpu->r[7] = cpu->r[7] + 0x000033C8u;
|
|
/* 02925B10 */ _t3 = cpu->r[9] + 0x00000000u;
|
|
/* 02925B10 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02925B14 */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 02925B14 */ rbrew_write32(cpu->mem, _t4, cpu->r[7]);
|
|
L_02925B18: ; // 0x2925b18
|
|
/* 02925B18 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 02925B1C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02925B1C */ _t6 = _t5 & 0x00000001u;
|
|
/* 02925B1C */ if (_t6) goto L_02925B20; else goto L_02925B28;
|
|
L_02925B20: ; // 0x2925b20
|
|
/* 02925B20 */ cpu->r[3] = 0x00000001u;
|
|
/* 02925B24 */ return;
|
|
L_02925B28: ; // 0x2925b28
|
|
/* 02925B28 */ cpu->r[7] = 0x101D0000u;
|
|
/* 02925B2C */ _t7 = cpu->r[7] + 0xFFFFDB10u;
|
|
/* 02925B2C */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02925B2C */ cpu->r[7] = _t7;
|
|
/* 02925B30 */ cpu->r[11] = 0x101D0000u;
|
|
/* 02925B34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02925B38 */ cpu->r[11] = cpu->r[11] + 0xFFFFE1CCu;
|
|
/* 02925B3C */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02925B3C */ _t9 = _t8 & 0x00000001u;
|
|
/* 02925B3C */ if (_t9) goto L_02925B40; else goto L_02925B54;
|
|
L_02925B40: ; // 0x2925b40
|
|
/* 02925B40 */ cpu->r[0] = 0x10140000u;
|
|
/* 02925B44 */ cpu->r[9] = 0x00000001u;
|
|
/* 02925B48 */ cpu->r[0] = cpu->r[0] + 0x000033B8u;
|
|
/* 02925B4C */ _t10 = cpu->r[7] + 0x00000000u;
|
|
/* 02925B4C */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 02925B50 */ _t11 = cpu->r[11] + 0x00000000u;
|
|
/* 02925B50 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_02925B54: ; // 0x2925b54
|
|
/* 02925B54 */ cpu->r[0] = cpu->r[4] ^ cpu->r[11];
|
|
/* 02925B58 */ cpu->r[8] = rbrew_clz32(cpu->r[0]);
|
|
/* 02925B5C */ cpu->r[3] = rbrew_rlwinm(cpu->r[8], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
/* 02925B60 */ return;
|
|
}
|
|
|
|
// fn_02925B64 @ 0x2925b64
|
|
void Gambit_fn_02925B64(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02925B64: ; // 0x2925b64
|
|
/* 02925B64 */ cpu->r[12] = 0x10200000u;
|
|
/* 02925B68 */ _t0 = cpu->r[12] + 0xFFFF8204u;
|
|
/* 02925B68 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02925B6C */ _t1 = cpu->r[12] + 0x00000000u;
|
|
/* 02925B6C */ cpu->r[3] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t1);
|
|
/* 02925B70 */ return;
|
|
}
|
|
|
|
// fn_02925B74 @ 0x2925b74
|
|
void Gambit_fn_02925B74(CPUState* cpu) {
|
|
L_02925B74: ; // 0x2925b74
|
|
/* 02925B74 */ return;
|
|
}
|
|
|
|
// fn_02925B8C @ 0x2925b8c
|
|
void Gambit_fn_02925B8C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_02925B8C: ; // 0x2925b8c
|
|
/* 02925B8C */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 02925B8C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02925B8C */ cpu->r[1] = _t0;
|
|
/* 02925B90 */ Gambit_fn_02801AC8(cpu);
|
|
/* 02925B94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02925B98 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02925B98 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02925B98 */ rbrew_dispatch(cpu, (_t2) ? 0x02925b9cu : 0x02923b98u); return;
|
|
/* 02925B9C */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02925B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02925BA0 */ cpu->lr = cpu->r[0];
|
|
/* 02925BA4 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 02925BA8 */ return;
|
|
}
|
|
|
|
// fn_02925BAC @ 0x2925bac
|
|
void Gambit_fn_02925BAC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_02925BAC: ; // 0x2925bac
|
|
/* 02925BAC */ cpu->r[9] = 0x101D0000u;
|
|
/* 02925BB0 */ _t0 = cpu->r[9] + 0x00000548u;
|
|
/* 02925BB0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02925BB0 */ cpu->r[9] = _t0;
|
|
/* 02925BB4 */ cpu->r[12] = 0x101D0000u;
|
|
/* 02925BB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02925BBC */ cpu->r[12] = cpu->r[12] + 0x00001A90u;
|
|
/* 02925BC0 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02925BC0 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02925BC0 */ if (_t2) goto L_02925BC4; else goto L_02925BD8;
|
|
L_02925BC4: ; // 0x2925bc4
|
|
/* 02925BC4 */ cpu->r[7] = 0x10140000u;
|
|
/* 02925BC8 */ cpu->r[0] = 0x00000001u;
|
|
/* 02925BCC */ cpu->r[7] = cpu->r[7] + 0x000033C8u;
|
|
/* 02925BD0 */ _t3 = cpu->r[9] + 0x00000000u;
|
|
/* 02925BD0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02925BD4 */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 02925BD4 */ rbrew_write32(cpu->mem, _t4, cpu->r[7]);
|
|
L_02925BD8: ; // 0x2925bd8
|
|
/* 02925BD8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 02925BDC */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02925BDC */ _t6 = _t5 & 0x00000001u;
|
|
/* 02925BDC */ if (_t6) goto L_02925BE0; else goto L_02925BE8;
|
|
L_02925BE0: ; // 0x2925be0
|
|
/* 02925BE0 */ cpu->r[3] = 0x00000001u;
|
|
/* 02925BE4 */ return;
|
|
L_02925BE8: ; // 0x2925be8
|
|
/* 02925BE8 */ cpu->r[7] = 0x101D0000u;
|
|
/* 02925BEC */ _t7 = cpu->r[7] + 0xFFFFDB10u;
|
|
/* 02925BEC */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02925BEC */ cpu->r[7] = _t7;
|
|
/* 02925BF0 */ cpu->r[11] = 0x101D0000u;
|
|
/* 02925BF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02925BF8 */ cpu->r[11] = cpu->r[11] + 0xFFFFE1CCu;
|
|
/* 02925BFC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02925BFC */ _t9 = _t8 & 0x00000001u;
|
|
/* 02925BFC */ if (_t9) goto L_02925C00; else goto L_02925C14;
|
|
L_02925C00: ; // 0x2925c00
|
|
/* 02925C00 */ cpu->r[0] = 0x10140000u;
|
|
/* 02925C04 */ cpu->r[9] = 0x00000001u;
|
|
/* 02925C08 */ cpu->r[0] = cpu->r[0] + 0x000033B8u;
|
|
/* 02925C0C */ _t10 = cpu->r[7] + 0x00000000u;
|
|
/* 02925C0C */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 02925C10 */ _t11 = cpu->r[11] + 0x00000000u;
|
|
/* 02925C10 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_02925C14: ; // 0x2925c14
|
|
/* 02925C14 */ cpu->r[0] = cpu->r[4] ^ cpu->r[11];
|
|
/* 02925C18 */ cpu->r[8] = rbrew_clz32(cpu->r[0]);
|
|
/* 02925C1C */ cpu->r[3] = rbrew_rlwinm(cpu->r[8], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
/* 02925C20 */ return;
|
|
}
|
|
|
|
// fn_02925C24 @ 0x2925c24
|
|
void Gambit_fn_02925C24(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02925C24: ; // 0x2925c24
|
|
/* 02925C24 */ cpu->r[12] = 0x10200000u;
|
|
/* 02925C28 */ _t0 = cpu->r[12] + 0xFFFF8208u;
|
|
/* 02925C28 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02925C2C */ _t1 = cpu->r[12] + 0x00000000u;
|
|
/* 02925C2C */ cpu->r[3] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t1);
|
|
/* 02925C30 */ return;
|
|
}
|
|
|
|
// fn_02925C48 @ 0x2925c48
|
|
void Gambit_fn_02925C48(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_02925C48: ; // 0x2925c48
|
|
/* 02925C48 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 02925C48 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02925C48 */ cpu->r[1] = _t0;
|
|
/* 02925C4C */ Gambit_fn_02801AC8(cpu);
|
|
/* 02925C50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02925C54 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02925C54 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02925C54 */ rbrew_dispatch(cpu, (_t2) ? 0x02925c58u : 0x02923d60u); return;
|
|
/* 02925C58 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02925C58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02925C5C */ cpu->lr = cpu->r[0];
|
|
/* 02925C60 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 02925C64 */ return;
|
|
}
|
|
|
|
// fn_02925C68 @ 0x2925c68
|
|
void Gambit_fn_02925C68(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_02925C68: ; // 0x2925c68
|
|
/* 02925C68 */ cpu->r[9] = 0x101D0000u;
|
|
/* 02925C6C */ _t0 = cpu->r[9] + 0x00000538u;
|
|
/* 02925C6C */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02925C6C */ cpu->r[9] = _t0;
|
|
/* 02925C70 */ cpu->r[12] = 0x101D0000u;
|
|
/* 02925C74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02925C78 */ cpu->r[12] = cpu->r[12] + 0x0000053Cu;
|
|
/* 02925C7C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02925C7C */ _t2 = _t1 & 0x00000001u;
|
|
/* 02925C7C */ if (_t2) goto L_02925C80; else goto L_02925C94;
|
|
L_02925C80: ; // 0x2925c80
|
|
/* 02925C80 */ cpu->r[7] = 0x10140000u;
|
|
/* 02925C84 */ cpu->r[0] = 0x00000001u;
|
|
/* 02925C88 */ cpu->r[7] = cpu->r[7] + 0x000033C8u;
|
|
/* 02925C8C */ _t3 = cpu->r[9] + 0x00000000u;
|
|
/* 02925C8C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02925C90 */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 02925C90 */ rbrew_write32(cpu->mem, _t4, cpu->r[7]);
|
|
L_02925C94: ; // 0x2925c94
|
|
/* 02925C94 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 02925C98 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02925C98 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02925C98 */ if (_t6) goto L_02925C9C; else goto L_02925CA4;
|
|
L_02925C9C: ; // 0x2925c9c
|
|
/* 02925C9C */ cpu->r[3] = 0x00000001u;
|
|
/* 02925CA0 */ return;
|
|
L_02925CA4: ; // 0x2925ca4
|
|
/* 02925CA4 */ cpu->r[7] = 0x101D0000u;
|
|
/* 02925CA8 */ _t7 = cpu->r[7] + 0xFFFFDB10u;
|
|
/* 02925CA8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02925CA8 */ cpu->r[7] = _t7;
|
|
/* 02925CAC */ cpu->r[11] = 0x101D0000u;
|
|
/* 02925CB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02925CB4 */ cpu->r[11] = cpu->r[11] + 0xFFFFE1CCu;
|
|
/* 02925CB8 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02925CB8 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02925CB8 */ if (_t9) goto L_02925CBC; else goto L_02925CD0;
|
|
L_02925CBC: ; // 0x2925cbc
|
|
/* 02925CBC */ cpu->r[0] = 0x10140000u;
|
|
/* 02925CC0 */ cpu->r[9] = 0x00000001u;
|
|
/* 02925CC4 */ cpu->r[0] = cpu->r[0] + 0x000033B8u;
|
|
/* 02925CC8 */ _t10 = cpu->r[7] + 0x00000000u;
|
|
/* 02925CC8 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 02925CCC */ _t11 = cpu->r[11] + 0x00000000u;
|
|
/* 02925CCC */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_02925CD0: ; // 0x2925cd0
|
|
/* 02925CD0 */ cpu->r[0] = cpu->r[4] ^ cpu->r[11];
|
|
/* 02925CD4 */ cpu->r[8] = rbrew_clz32(cpu->r[0]);
|
|
/* 02925CD8 */ cpu->r[3] = rbrew_rlwinm(cpu->r[8], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
/* 02925CDC */ return;
|
|
}
|
|
|
|
// fn_02925CE0 @ 0x2925ce0
|
|
void Gambit_fn_02925CE0(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02925CE0: ; // 0x2925ce0
|
|
/* 02925CE0 */ cpu->r[12] = 0x10200000u;
|
|
/* 02925CE4 */ _t0 = cpu->r[12] + 0xFFFF820Cu;
|
|
/* 02925CE4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02925CE8 */ _t1 = cpu->r[12] + 0x00000000u;
|
|
/* 02925CE8 */ cpu->r[3] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t1);
|
|
/* 02925CEC */ return;
|
|
}
|
|
|
|
// fn_02925D04 @ 0x2925d04
|
|
void Gambit_fn_02925D04(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_02925D04: ; // 0x2925d04
|
|
/* 02925D04 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 02925D04 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02925D04 */ cpu->r[1] = _t0;
|
|
/* 02925D08 */ Gambit_fn_02801AC8(cpu);
|
|
/* 02925D0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02925D10 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02925D10 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02925D10 */ rbrew_dispatch(cpu, (_t2) ? 0x02925d14u : 0x02924388u); return;
|
|
/* 02925D14 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02925D14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02925D18 */ cpu->lr = cpu->r[0];
|
|
/* 02925D1C */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 02925D20 */ return;
|
|
}
|
|
|
|
// fn_02925D24 @ 0x2925d24
|
|
void Gambit_fn_02925D24(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_02925D24: ; // 0x2925d24
|
|
/* 02925D24 */ cpu->r[9] = 0x101D0000u;
|
|
/* 02925D28 */ _t0 = cpu->r[9] + 0x0000054Cu;
|
|
/* 02925D28 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02925D28 */ cpu->r[9] = _t0;
|
|
/* 02925D2C */ cpu->r[12] = 0x101D0000u;
|
|
/* 02925D30 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02925D34 */ cpu->r[12] = cpu->r[12] + 0x00001A94u;
|
|
/* 02925D38 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02925D38 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02925D38 */ if (_t2) goto L_02925D3C; else goto L_02925D50;
|
|
L_02925D3C: ; // 0x2925d3c
|
|
/* 02925D3C */ cpu->r[7] = 0x10140000u;
|
|
/* 02925D40 */ cpu->r[0] = 0x00000001u;
|
|
/* 02925D44 */ cpu->r[7] = cpu->r[7] + 0x000033C8u;
|
|
/* 02925D48 */ _t3 = cpu->r[9] + 0x00000000u;
|
|
/* 02925D48 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02925D4C */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 02925D4C */ rbrew_write32(cpu->mem, _t4, cpu->r[7]);
|
|
L_02925D50: ; // 0x2925d50
|
|
/* 02925D50 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 02925D54 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02925D54 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02925D54 */ if (_t6) goto L_02925D58; else goto L_02925D60;
|
|
L_02925D58: ; // 0x2925d58
|
|
/* 02925D58 */ cpu->r[3] = 0x00000001u;
|
|
/* 02925D5C */ return;
|
|
L_02925D60: ; // 0x2925d60
|
|
/* 02925D60 */ cpu->r[7] = 0x101D0000u;
|
|
/* 02925D64 */ _t7 = cpu->r[7] + 0xFFFFDB10u;
|
|
/* 02925D64 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02925D64 */ cpu->r[7] = _t7;
|
|
/* 02925D68 */ cpu->r[11] = 0x101D0000u;
|
|
/* 02925D6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02925D70 */ cpu->r[11] = cpu->r[11] + 0xFFFFE1CCu;
|
|
/* 02925D74 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02925D74 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02925D74 */ if (_t9) goto L_02925D78; else goto L_02925D8C;
|
|
L_02925D78: ; // 0x2925d78
|
|
/* 02925D78 */ cpu->r[0] = 0x10140000u;
|
|
/* 02925D7C */ cpu->r[9] = 0x00000001u;
|
|
/* 02925D80 */ cpu->r[0] = cpu->r[0] + 0x000033B8u;
|
|
/* 02925D84 */ _t10 = cpu->r[7] + 0x00000000u;
|
|
/* 02925D84 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 02925D88 */ _t11 = cpu->r[11] + 0x00000000u;
|
|
/* 02925D88 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_02925D8C: ; // 0x2925d8c
|
|
/* 02925D8C */ cpu->r[0] = cpu->r[4] ^ cpu->r[11];
|
|
/* 02925D90 */ cpu->r[8] = rbrew_clz32(cpu->r[0]);
|
|
/* 02925D94 */ cpu->r[3] = rbrew_rlwinm(cpu->r[8], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
/* 02925D98 */ return;
|
|
}
|
|
|
|
// fn_02925D9C @ 0x2925d9c
|
|
void Gambit_fn_02925D9C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02925D9C: ; // 0x2925d9c
|
|
/* 02925D9C */ cpu->r[12] = 0x10200000u;
|
|
/* 02925DA0 */ _t0 = cpu->r[12] + 0xFFFF8210u;
|
|
/* 02925DA0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02925DA4 */ _t1 = cpu->r[12] + 0x00000000u;
|
|
/* 02925DA4 */ cpu->r[3] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t1);
|
|
/* 02925DA8 */ return;
|
|
}
|
|
|
|
// fn_02925DC0 @ 0x2925dc0
|
|
void Gambit_fn_02925DC0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_02925DC0: ; // 0x2925dc0
|
|
/* 02925DC0 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 02925DC0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02925DC0 */ cpu->r[1] = _t0;
|
|
/* 02925DC4 */ Gambit_fn_02801AC8(cpu);
|
|
/* 02925DC8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02925DCC */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02925DCC */ _t2 = _t1 & 0x00000001u;
|
|
/* 02925DCC */ rbrew_dispatch(cpu, (_t2) ? 0x02925dd0u : 0x02924a74u); return;
|
|
/* 02925DD0 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02925DD0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02925DD4 */ cpu->lr = cpu->r[0];
|
|
/* 02925DD8 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 02925DDC */ return;
|
|
}
|
|
|
|
// fn_02925DE0 @ 0x2925de0
|
|
void Gambit_fn_02925DE0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_02925DE0: ; // 0x2925de0
|
|
/* 02925DE0 */ cpu->r[9] = 0x101D0000u;
|
|
/* 02925DE4 */ _t0 = cpu->r[9] + 0x00000550u;
|
|
/* 02925DE4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02925DE4 */ cpu->r[9] = _t0;
|
|
/* 02925DE8 */ cpu->r[12] = 0x101D0000u;
|
|
/* 02925DEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02925DF0 */ cpu->r[12] = cpu->r[12] + 0x00001A98u;
|
|
/* 02925DF4 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02925DF4 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02925DF4 */ if (_t2) goto L_02925DF8; else goto L_02925E0C;
|
|
L_02925DF8: ; // 0x2925df8
|
|
/* 02925DF8 */ cpu->r[7] = 0x10140000u;
|
|
/* 02925DFC */ cpu->r[0] = 0x00000001u;
|
|
/* 02925E00 */ cpu->r[7] = cpu->r[7] + 0x000033C8u;
|
|
/* 02925E04 */ _t3 = cpu->r[9] + 0x00000000u;
|
|
/* 02925E04 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02925E08 */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 02925E08 */ rbrew_write32(cpu->mem, _t4, cpu->r[7]);
|
|
L_02925E0C: ; // 0x2925e0c
|
|
/* 02925E0C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 02925E10 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02925E10 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02925E10 */ if (_t6) goto L_02925E14; else goto L_02925E1C;
|
|
L_02925E14: ; // 0x2925e14
|
|
/* 02925E14 */ cpu->r[3] = 0x00000001u;
|
|
/* 02925E18 */ return;
|
|
L_02925E1C: ; // 0x2925e1c
|
|
/* 02925E1C */ cpu->r[7] = 0x101D0000u;
|
|
/* 02925E20 */ _t7 = cpu->r[7] + 0xFFFFDB10u;
|
|
/* 02925E20 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02925E20 */ cpu->r[7] = _t7;
|
|
/* 02925E24 */ cpu->r[11] = 0x101D0000u;
|
|
/* 02925E28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02925E2C */ cpu->r[11] = cpu->r[11] + 0xFFFFE1CCu;
|
|
/* 02925E30 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02925E30 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02925E30 */ if (_t9) goto L_02925E34; else goto L_02925E48;
|
|
L_02925E34: ; // 0x2925e34
|
|
/* 02925E34 */ cpu->r[0] = 0x10140000u;
|
|
/* 02925E38 */ cpu->r[9] = 0x00000001u;
|
|
/* 02925E3C */ cpu->r[0] = cpu->r[0] + 0x000033B8u;
|
|
/* 02925E40 */ _t10 = cpu->r[7] + 0x00000000u;
|
|
/* 02925E40 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 02925E44 */ _t11 = cpu->r[11] + 0x00000000u;
|
|
/* 02925E44 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_02925E48: ; // 0x2925e48
|
|
/* 02925E48 */ cpu->r[0] = cpu->r[4] ^ cpu->r[11];
|
|
/* 02925E4C */ cpu->r[8] = rbrew_clz32(cpu->r[0]);
|
|
/* 02925E50 */ cpu->r[3] = rbrew_rlwinm(cpu->r[8], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
/* 02925E54 */ return;
|
|
}
|
|
|
|
// fn_02925E58 @ 0x2925e58
|
|
void Gambit_fn_02925E58(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02925E58: ; // 0x2925e58
|
|
/* 02925E58 */ cpu->r[12] = 0x10200000u;
|
|
/* 02925E5C */ _t0 = cpu->r[12] + 0xFFFF8214u;
|
|
/* 02925E5C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02925E60 */ _t1 = cpu->r[12] + 0x00000000u;
|
|
/* 02925E60 */ cpu->r[3] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t1);
|
|
/* 02925E64 */ return;
|
|
}
|
|
|
|
// fn_02925E7C @ 0x2925e7c
|
|
void Gambit_fn_02925E7C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_02925E7C: ; // 0x2925e7c
|
|
/* 02925E7C */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 02925E7C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02925E7C */ cpu->r[1] = _t0;
|
|
/* 02925E80 */ Gambit_fn_02801AC8(cpu);
|
|
/* 02925E84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02925E88 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02925E88 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02925E88 */ rbrew_dispatch(cpu, (_t2) ? 0x02925e8cu : 0x02924f4cu); return;
|
|
/* 02925E8C */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02925E8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02925E90 */ cpu->lr = cpu->r[0];
|
|
/* 02925E94 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 02925E98 */ return;
|
|
}
|
|
|
|
// fn_02925E9C @ 0x2925e9c
|
|
void Gambit_fn_02925E9C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t117, _t118, _t119, _t120, _t121, _t122, _t123, _t124, _t125, _t126, _t127, _t128, _t129, _t130, _t131, _t132, _t133, _t134, _t135, _t136, _t137, _t138, _t139, _t140, _t141, _t142, _t143, _t144, _t145, _t146, _t147, _t148, _t149, _t150, _t151, _t152, _t153, _t154, _t155, _t156, _t157, _t158, _t159, _t160, _t161, _t162, _t163;
|
|
|
|
L_02925E9C: ; // 0x2925e9c
|
|
/* 02925E9C */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 02925E9C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02925E9C */ cpu->r[1] = _t0;
|
|
/* 02925EA0 */ /* nop */
|
|
/* 02925EA4 */ cpu->r[0] = cpu->lr;
|
|
/* 02925EA8 */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02925EA8 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02925EAC */ _t2 = cpu->r[3] + 0x00000004u;
|
|
/* 02925EAC */ cpu->r[6] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02925EB0 */ _t3 = cpu->r[6] + 0x00000014u;
|
|
/* 02925EB0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02925EB4 */ cpu->ctr = cpu->r[0];
|
|
/* 02925EB8 */ cpu->r[29] = cpu->r[3];
|
|
/* 02925EBC */ cpu->r[27] = cpu->r[4];
|
|
/* 02925EC0 */ cpu->r[28] = cpu->r[5];
|
|
/* 02925EC4 */ cpu->r[26] = 0x00000000u;
|
|
/* 02925EC8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02925ECC */ cpu->r[30] = 0x10110000u;
|
|
/* 02925ED0 */ _t4 = cpu->r[29] + 0x00000000u;
|
|
/* 02925ED0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02925ED4 */ _t5 = cpu->r[30] + 0x00007399u;
|
|
/* 02925ED4 */ cpu->r[31] = rbrew_read8(cpu->mem, _t5);
|
|
/* 02925ED4 */ cpu->r[30] = _t5;
|
|
/* 02925ED8 */ _t6 = cpu->r[8] + 0x00000000u;
|
|
/* 02925ED8 */ cpu->r[5] = rbrew_read8(cpu->mem, _t6);
|
|
/* 02925EDC */ cpu->r[12] = cpu->r[26];
|
|
/* 02925EE0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[31]);
|
|
/* 02925EE4 */ cpu->r[0] = 0x00080000u;
|
|
/* 02925EE8 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02925EE8 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02925EE8 */ if (_t8) goto L_02925F10; else goto L_02925EEC;
|
|
L_02925EEC: ; // 0x2925eec
|
|
/* 02925EEC */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 02925EF0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], cpu->r[0]);
|
|
/* 02925EF4 */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 02925EF8 */ _t9 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02925EF8 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02925EF8 */ if (_t10) goto L_02925F0C; else goto L_02925EFC;
|
|
L_02925EFC: ; // 0x2925efc
|
|
/* 02925EFC */ _t11 = cpu->r[8] + 0x00000000u;
|
|
/* 02925EFC */ cpu->r[6] = rbrew_read8(cpu->mem, _t11);
|
|
/* 02925F00 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[31]);
|
|
/* 02925F04 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02925F04 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02925F04 */ if (_t13) goto L_02925F08; else goto L_02925EEC;
|
|
L_02925F08: ; // 0x2925f08
|
|
/* 02925F08 */ goto L_02925F10;
|
|
L_02925F0C: ; // 0x2925f0c
|
|
/* 02925F0C */ cpu->r[12] = 0x00000000u;
|
|
L_02925F10: ; // 0x2925f10
|
|
/* 02925F10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 02925F14 */ cpu->r[28] = cpu->r[29];
|
|
/* 02925F18 */ cpu->r[25] = cpu->r[12] + 0x00000001u;
|
|
/* 02925F1C */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02925F1C */ _t15 = _t14 & 0x00000001u;
|
|
/* 02925F1C */ if (_t15) goto L_029262A4; else goto L_02925F20;
|
|
L_02925F20: ; // 0x2925f20
|
|
/* 02925F20 */ goto L_02926170;
|
|
L_02925F24: ; // 0x2925f24
|
|
/* 02925F24 */ _t16 = cpu->r[29] + 0x00000004u;
|
|
/* 02925F24 */ cpu->r[7] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02925F28 */ _t17 = cpu->r[7] + 0x00000014u;
|
|
/* 02925F28 */ cpu->r[8] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02925F2C */ cpu->ctr = cpu->r[8];
|
|
/* 02925F30 */ cpu->r[3] = cpu->r[29];
|
|
/* 02925F34 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02925F38 */ _t18 = cpu->r[29] + 0x00000000u;
|
|
/* 02925F38 */ cpu->r[10] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02925F3C */ cpu->r[6] = cpu->r[10];
|
|
/* 02925F40 */ _t19 = cpu->r[6] + 0x00000000u;
|
|
/* 02925F40 */ cpu->r[9] = rbrew_read8(cpu->mem, _t19);
|
|
/* 02925F44 */ cpu->r[8] = 0x00000000u;
|
|
/* 02925F48 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[31]);
|
|
/* 02925F4C */ cpu->r[7] = 0x00080000u;
|
|
/* 02925F50 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02925F50 */ _t21 = _t20 & 0x00000001u;
|
|
/* 02925F50 */ if (_t21) goto L_02925F78; else goto L_02925F54;
|
|
L_02925F54: ; // 0x2925f54
|
|
/* 02925F54 */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 02925F58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], cpu->r[7]);
|
|
/* 02925F5C */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 02925F60 */ _t22 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02925F60 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02925F60 */ if (_t23) goto L_02925F74; else goto L_02925F64;
|
|
L_02925F64: ; // 0x2925f64
|
|
/* 02925F64 */ _t24 = cpu->r[6] + 0x00000000u;
|
|
/* 02925F64 */ cpu->r[12] = rbrew_read8(cpu->mem, _t24);
|
|
/* 02925F68 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[31]);
|
|
/* 02925F6C */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02925F6C */ _t26 = _t25 & 0x00000001u;
|
|
/* 02925F6C */ if (_t26) goto L_02925F70; else goto L_02925F54;
|
|
L_02925F70: ; // 0x2925f70
|
|
/* 02925F70 */ goto L_02925F78;
|
|
L_02925F74: ; // 0x2925f74
|
|
/* 02925F74 */ cpu->r[8] = 0x00000000u;
|
|
L_02925F78: ; // 0x2925f78
|
|
/* 02925F78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 02925F7C */ _t27 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02925F7C */ _t28 = _t27 & 0x00000001u;
|
|
/* 02925F7C */ if (_t28) goto L_02925F88; else goto L_02925F80;
|
|
L_02925F80: ; // 0x2925f80
|
|
/* 02925F80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], cpu->r[8]);
|
|
/* 02925F84 */ _t29 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02925F84 */ _t30 = _t29 & 0x00000001u;
|
|
/* 02925F84 */ if (_t30) goto L_02925F88; else goto L_02925F98;
|
|
L_02925F88: ; // 0x2925f88
|
|
/* 02925F88 */ _t31 = cpu->r[30] + 0x00000000u;
|
|
/* 02925F88 */ cpu->r[0] = rbrew_read8(cpu->mem, _t31);
|
|
/* 02925F8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000005Cu);
|
|
/* 02925F90 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02925F90 */ _t33 = _t32 & 0x00000001u;
|
|
/* 02925F90 */ if (_t33) goto L_02925F94; else goto L_02925FA4;
|
|
L_02925F94: ; // 0x2925f94
|
|
/* 02925F94 */ goto L_02926024;
|
|
L_02925F98: ; // 0x2925f98
|
|
/* 02925F98 */ _t34 = cpu->r[10] + cpu->r[26];
|
|
/* 02925F98 */ cpu->r[0] = rbrew_read8(cpu->mem, _t34);
|
|
/* 02925F9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000005Cu);
|
|
/* 02925FA0 */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02925FA0 */ _t36 = _t35 & 0x00000001u;
|
|
/* 02925FA0 */ if (_t36) goto L_02926024; else goto L_02925FA4;
|
|
L_02925FA4: ; // 0x2925fa4
|
|
/* 02925FA4 */ _t37 = cpu->r[29] + 0x00000004u;
|
|
/* 02925FA4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02925FA8 */ _t38 = cpu->r[4] + 0x00000014u;
|
|
/* 02925FA8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02925FAC */ cpu->ctr = cpu->r[5];
|
|
/* 02925FB0 */ cpu->r[3] = cpu->r[29];
|
|
/* 02925FB4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02925FB8 */ _t39 = cpu->r[29] + 0x00000000u;
|
|
/* 02925FB8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02925FBC */ cpu->r[10] = cpu->r[11];
|
|
/* 02925FC0 */ _t40 = cpu->r[10] + 0x00000000u;
|
|
/* 02925FC0 */ cpu->r[6] = rbrew_read8(cpu->mem, _t40);
|
|
/* 02925FC4 */ cpu->r[9] = 0x00000000u;
|
|
/* 02925FC8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[31]);
|
|
/* 02925FCC */ cpu->r[0] = 0x00080000u;
|
|
/* 02925FD0 */ _t41 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02925FD0 */ _t42 = _t41 & 0x00000001u;
|
|
/* 02925FD0 */ if (_t42) goto L_02925FF8; else goto L_02925FD4;
|
|
L_02925FD4: ; // 0x2925fd4
|
|
/* 02925FD4 */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 02925FD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], cpu->r[0]);
|
|
/* 02925FDC */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 02925FE0 */ _t43 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02925FE0 */ _t44 = _t43 & 0x00000001u;
|
|
/* 02925FE0 */ if (_t44) goto L_02925FF4; else goto L_02925FE4;
|
|
L_02925FE4: ; // 0x2925fe4
|
|
/* 02925FE4 */ _t45 = cpu->r[10] + 0x00000000u;
|
|
/* 02925FE4 */ cpu->r[7] = rbrew_read8(cpu->mem, _t45);
|
|
/* 02925FE8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[31]);
|
|
/* 02925FEC */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02925FEC */ _t47 = _t46 & 0x00000001u;
|
|
/* 02925FEC */ if (_t47) goto L_02925FF0; else goto L_02925FD4;
|
|
L_02925FF0: ; // 0x2925ff0
|
|
/* 02925FF0 */ goto L_02925FF8;
|
|
L_02925FF4: ; // 0x2925ff4
|
|
/* 02925FF4 */ cpu->r[9] = 0x00000000u;
|
|
L_02925FF8: ; // 0x2925ff8
|
|
/* 02925FF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 02925FFC */ _t48 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02925FFC */ _t49 = _t48 & 0x00000001u;
|
|
/* 02925FFC */ if (_t49) goto L_02926008; else goto L_02926000;
|
|
L_02926000: ; // 0x2926000
|
|
/* 02926000 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], cpu->r[9]);
|
|
/* 02926004 */ _t50 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02926004 */ _t51 = _t50 & 0x00000001u;
|
|
/* 02926004 */ if (_t51) goto L_02926008; else goto L_02926018;
|
|
L_02926008: ; // 0x2926008
|
|
/* 02926008 */ _t52 = cpu->r[30] + 0x00000000u;
|
|
/* 02926008 */ cpu->r[8] = rbrew_read8(cpu->mem, _t52);
|
|
/* 0292600C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x0000002Fu);
|
|
/* 02926010 */ _t53 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02926010 */ _t54 = _t53 & 0x00000001u;
|
|
/* 02926010 */ if (_t54) goto L_02926014; else goto L_02926048;
|
|
L_02926014: ; // 0x2926014
|
|
/* 02926014 */ goto L_02926024;
|
|
L_02926018: ; // 0x2926018
|
|
/* 02926018 */ _t55 = cpu->r[11] + cpu->r[26];
|
|
/* 02926018 */ cpu->r[8] = rbrew_read8(cpu->mem, _t55);
|
|
/* 0292601C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x0000002Fu);
|
|
/* 02926020 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02926020 */ _t57 = _t56 & 0x00000001u;
|
|
/* 02926020 */ if (_t57) goto L_02926024; else goto L_02926048;
|
|
L_02926024: ; // 0x2926024
|
|
/* 02926024 */ _t58 = cpu->r[29] + 0x00000004u;
|
|
/* 02926024 */ cpu->r[9] = rbrew_read32(cpu->mem, _t58);
|
|
/* 02926028 */ _t59 = cpu->r[9] + 0x00000014u;
|
|
/* 02926028 */ cpu->r[10] = rbrew_read32(cpu->mem, _t59);
|
|
/* 0292602C */ cpu->ctr = cpu->r[10];
|
|
/* 02926030 */ cpu->r[3] = cpu->r[29];
|
|
/* 02926034 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02926038 */ _t60 = cpu->r[29] + 0x00000000u;
|
|
/* 02926038 */ cpu->r[11] = rbrew_read32(cpu->mem, _t60);
|
|
/* 0292603C */ _t61 = cpu->r[11] + cpu->r[26];
|
|
/* 0292603C */ rbrew_write8(cpu->mem, _t61, (uint8_t)cpu->r[27]);
|
|
/* 02926040 */ cpu->r[26] = cpu->r[26] + 0x00000001u;
|
|
/* 02926044 */ goto L_02926170;
|
|
L_02926048: ; // 0x2926048
|
|
/* 02926048 */ _t62 = cpu->r[29] + 0x00000004u;
|
|
/* 02926048 */ cpu->r[11] = rbrew_read32(cpu->mem, _t62);
|
|
/* 0292604C */ _t63 = cpu->r[11] + 0x00000014u;
|
|
/* 0292604C */ cpu->r[12] = rbrew_read32(cpu->mem, _t63);
|
|
/* 02926050 */ cpu->ctr = cpu->r[12];
|
|
/* 02926054 */ cpu->r[3] = cpu->r[29];
|
|
/* 02926058 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0292605C */ _t64 = cpu->r[29] + 0x00000000u;
|
|
/* 0292605C */ cpu->r[4] = rbrew_read32(cpu->mem, _t64);
|
|
/* 02926060 */ cpu->r[12] = cpu->r[4];
|
|
/* 02926064 */ _t65 = cpu->r[12] + 0x00000000u;
|
|
/* 02926064 */ cpu->r[0] = rbrew_read8(cpu->mem, _t65);
|
|
/* 02926068 */ cpu->r[11] = 0x00000000u;
|
|
/* 0292606C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 02926070 */ cpu->r[6] = 0x00080000u;
|
|
/* 02926074 */ _t66 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02926074 */ _t67 = _t66 & 0x00000001u;
|
|
/* 02926074 */ if (_t67) goto L_0292609C; else goto L_02926078;
|
|
L_02926078: ; // 0x2926078
|
|
/* 02926078 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 0292607C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], cpu->r[6]);
|
|
/* 02926080 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 02926084 */ _t68 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02926084 */ _t69 = _t68 & 0x00000001u;
|
|
/* 02926084 */ if (_t69) goto L_02926098; else goto L_02926088;
|
|
L_02926088: ; // 0x2926088
|
|
/* 02926088 */ _t70 = cpu->r[12] + 0x00000000u;
|
|
/* 02926088 */ cpu->r[5] = rbrew_read8(cpu->mem, _t70);
|
|
/* 0292608C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[31]);
|
|
/* 02926090 */ _t71 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02926090 */ _t72 = _t71 & 0x00000001u;
|
|
/* 02926090 */ if (_t72) goto L_02926094; else goto L_02926078;
|
|
L_02926094: ; // 0x2926094
|
|
/* 02926094 */ goto L_0292609C;
|
|
L_02926098: ; // 0x2926098
|
|
/* 02926098 */ cpu->r[11] = 0x00000000u;
|
|
L_0292609C: ; // 0x292609c
|
|
/* 0292609C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 029260A0 */ _t73 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 029260A0 */ _t74 = _t73 & 0x00000001u;
|
|
/* 029260A0 */ if (_t74) goto L_029260AC; else goto L_029260A4;
|
|
L_029260A4: ; // 0x29260a4
|
|
/* 029260A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], cpu->r[11]);
|
|
/* 029260A8 */ _t75 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 029260A8 */ _t76 = _t75 & 0x00000001u;
|
|
/* 029260A8 */ if (_t76) goto L_029260AC; else goto L_029260BC;
|
|
L_029260AC: ; // 0x29260ac
|
|
/* 029260AC */ _t77 = cpu->r[30] + 0x00000000u;
|
|
/* 029260AC */ cpu->r[6] = rbrew_read8(cpu->mem, _t77);
|
|
/* 029260B0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], 0x00000041u);
|
|
/* 029260B4 */ _t78 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 029260B4 */ _t79 = _t78 & 0x00000001u;
|
|
/* 029260B4 */ if (_t79) goto L_0292616C; else goto L_029260B8;
|
|
L_029260B8: ; // 0x29260b8
|
|
/* 029260B8 */ goto L_029260C8;
|
|
L_029260BC: ; // 0x29260bc
|
|
/* 029260BC */ _t80 = cpu->r[4] + cpu->r[26];
|
|
/* 029260BC */ cpu->r[6] = rbrew_read8(cpu->mem, _t80);
|
|
/* 029260C0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], 0x00000041u);
|
|
/* 029260C4 */ _t81 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 029260C4 */ _t82 = _t81 & 0x00000001u;
|
|
/* 029260C4 */ if (_t82) goto L_0292616C; else goto L_029260C8;
|
|
L_029260C8: ; // 0x29260c8
|
|
/* 029260C8 */ _t83 = cpu->r[29] + 0x00000004u;
|
|
/* 029260C8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t83);
|
|
/* 029260CC */ _t84 = cpu->r[7] + 0x00000014u;
|
|
/* 029260CC */ cpu->r[8] = rbrew_read32(cpu->mem, _t84);
|
|
/* 029260D0 */ cpu->ctr = cpu->r[8];
|
|
/* 029260D4 */ cpu->r[3] = cpu->r[29];
|
|
/* 029260D8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 029260DC */ _t85 = cpu->r[29] + 0x00000000u;
|
|
/* 029260DC */ cpu->r[5] = rbrew_read32(cpu->mem, _t85);
|
|
/* 029260E0 */ cpu->r[6] = cpu->r[5];
|
|
/* 029260E4 */ _t86 = cpu->r[6] + 0x00000000u;
|
|
/* 029260E4 */ cpu->r[9] = rbrew_read8(cpu->mem, _t86);
|
|
/* 029260E8 */ cpu->r[10] = 0x00000000u;
|
|
/* 029260EC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[31]);
|
|
/* 029260F0 */ cpu->r[9] = 0x00080000u;
|
|
/* 029260F4 */ _t87 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029260F4 */ _t88 = _t87 & 0x00000001u;
|
|
/* 029260F4 */ if (_t88) goto L_0292611C; else goto L_029260F8;
|
|
L_029260F8: ; // 0x29260f8
|
|
/* 029260F8 */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 029260FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], cpu->r[9]);
|
|
/* 02926100 */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 02926104 */ _t89 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02926104 */ _t90 = _t89 & 0x00000001u;
|
|
/* 02926104 */ if (_t90) goto L_02926118; else goto L_02926108;
|
|
L_02926108: ; // 0x2926108
|
|
/* 02926108 */ _t91 = cpu->r[6] + 0x00000000u;
|
|
/* 02926108 */ cpu->r[12] = rbrew_read8(cpu->mem, _t91);
|
|
/* 0292610C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[31]);
|
|
/* 02926110 */ _t92 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02926110 */ _t93 = _t92 & 0x00000001u;
|
|
/* 02926110 */ if (_t93) goto L_02926114; else goto L_029260F8;
|
|
L_02926114: ; // 0x2926114
|
|
/* 02926114 */ goto L_0292611C;
|
|
L_02926118: ; // 0x2926118
|
|
/* 02926118 */ cpu->r[10] = 0x00000000u;
|
|
L_0292611C: ; // 0x292611c
|
|
/* 0292611C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 02926120 */ _t94 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02926120 */ _t95 = _t94 & 0x00000001u;
|
|
/* 02926120 */ if (_t95) goto L_0292612C; else goto L_02926124;
|
|
L_02926124: ; // 0x2926124
|
|
/* 02926124 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], cpu->r[10]);
|
|
/* 02926128 */ _t96 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02926128 */ _t97 = _t96 & 0x00000001u;
|
|
/* 02926128 */ if (_t97) goto L_0292612C; else goto L_0292613C;
|
|
L_0292612C: ; // 0x292612c
|
|
/* 0292612C */ _t98 = cpu->r[30] + 0x00000000u;
|
|
/* 0292612C */ cpu->r[4] = rbrew_read8(cpu->mem, _t98);
|
|
/* 02926130 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], 0x0000005Au);
|
|
/* 02926134 */ _t99 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02926134 */ _t100 = _t99 & 0x00000001u;
|
|
/* 02926134 */ if (_t100) goto L_0292616C; else goto L_02926138;
|
|
L_02926138: ; // 0x2926138
|
|
/* 02926138 */ goto L_02926148;
|
|
L_0292613C: ; // 0x292613c
|
|
/* 0292613C */ _t101 = cpu->r[5] + cpu->r[26];
|
|
/* 0292613C */ cpu->r[4] = rbrew_read8(cpu->mem, _t101);
|
|
/* 02926140 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], 0x0000005Au);
|
|
/* 02926144 */ _t102 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02926144 */ _t103 = _t102 & 0x00000001u;
|
|
/* 02926144 */ if (_t103) goto L_0292616C; else goto L_02926148;
|
|
L_02926148: ; // 0x2926148
|
|
/* 02926148 */ _t104 = cpu->r[29] + 0x00000004u;
|
|
/* 02926148 */ cpu->r[5] = rbrew_read32(cpu->mem, _t104);
|
|
/* 0292614C */ _t105 = cpu->r[5] + 0x00000014u;
|
|
/* 0292614C */ cpu->r[9] = rbrew_read32(cpu->mem, _t105);
|
|
/* 02926150 */ cpu->ctr = cpu->r[9];
|
|
/* 02926154 */ cpu->r[3] = cpu->r[29];
|
|
/* 02926158 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0292615C */ _t106 = cpu->r[29] + 0x00000000u;
|
|
/* 0292615C */ cpu->r[10] = rbrew_read32(cpu->mem, _t106);
|
|
/* 02926160 */ _t107 = cpu->r[10] + cpu->r[26];
|
|
/* 02926160 */ cpu->r[11] = rbrew_read8(cpu->mem, _t107);
|
|
/* 02926164 */ cpu->r[11] = cpu->r[11] + 0xFFFFFF20u;
|
|
/* 02926168 */ _t108 = cpu->r[10] + cpu->r[26];
|
|
/* 02926168 */ rbrew_write8(cpu->mem, _t108, (uint8_t)cpu->r[11]);
|
|
L_0292616C: ; // 0x292616c
|
|
/* 0292616C */ cpu->r[26] = cpu->r[26] + 0x00000001u;
|
|
L_02926170: ; // 0x2926170
|
|
/* 02926170 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[28]);
|
|
/* 02926174 */ _t109 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02926174 */ _t110 = _t109 & 0x00000001u;
|
|
/* 02926174 */ if (_t110) goto L_02926178; else goto L_02925F24;
|
|
L_02926178: ; // 0x2926178
|
|
/* 02926178 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], cpu->r[25]);
|
|
/* 0292617C */ _t111 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292617C */ _t112 = _t111 & 0x00000001u;
|
|
/* 0292617C */ if (_t112) goto L_02926180; else goto L_02925F24;
|
|
L_02926180: ; // 0x2926180
|
|
/* 02926180 */ goto L_029262B4;
|
|
L_02926184: ; // 0x2926184
|
|
/* 02926184 */ _t113 = cpu->r[29] + 0x00000004u;
|
|
/* 02926184 */ cpu->r[12] = rbrew_read32(cpu->mem, _t113);
|
|
/* 02926188 */ _t114 = cpu->r[12] + 0x00000014u;
|
|
/* 02926188 */ cpu->r[4] = rbrew_read32(cpu->mem, _t114);
|
|
/* 0292618C */ cpu->ctr = cpu->r[4];
|
|
/* 02926190 */ cpu->r[3] = cpu->r[29];
|
|
/* 02926194 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02926198 */ _t115 = cpu->r[29] + 0x00000000u;
|
|
/* 02926198 */ cpu->r[10] = rbrew_read32(cpu->mem, _t115);
|
|
/* 0292619C */ cpu->r[6] = cpu->r[10];
|
|
/* 029261A0 */ _t116 = cpu->r[6] + 0x00000000u;
|
|
/* 029261A0 */ cpu->r[5] = rbrew_read8(cpu->mem, _t116);
|
|
/* 029261A4 */ cpu->r[8] = 0x00000000u;
|
|
/* 029261A8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[31]);
|
|
/* 029261AC */ cpu->r[0] = 0x00080000u;
|
|
/* 029261B0 */ _t117 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029261B0 */ _t118 = _t117 & 0x00000001u;
|
|
/* 029261B0 */ if (_t118) goto L_029261D8; else goto L_029261B4;
|
|
L_029261B4: ; // 0x29261b4
|
|
/* 029261B4 */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 029261B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], cpu->r[0]);
|
|
/* 029261BC */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 029261C0 */ _t119 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 029261C0 */ _t120 = _t119 & 0x00000001u;
|
|
/* 029261C0 */ if (_t120) goto L_029261D4; else goto L_029261C4;
|
|
L_029261C4: ; // 0x29261c4
|
|
/* 029261C4 */ _t121 = cpu->r[6] + 0x00000000u;
|
|
/* 029261C4 */ cpu->r[7] = rbrew_read8(cpu->mem, _t121);
|
|
/* 029261C8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[31]);
|
|
/* 029261CC */ _t122 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029261CC */ _t123 = _t122 & 0x00000001u;
|
|
/* 029261CC */ if (_t123) goto L_029261D0; else goto L_029261B4;
|
|
L_029261D0: ; // 0x29261d0
|
|
/* 029261D0 */ goto L_029261D8;
|
|
L_029261D4: ; // 0x29261d4
|
|
/* 029261D4 */ cpu->r[8] = 0x00000000u;
|
|
L_029261D8: ; // 0x29261d8
|
|
/* 029261D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 029261DC */ _t124 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 029261DC */ _t125 = _t124 & 0x00000001u;
|
|
/* 029261DC */ if (_t125) goto L_029261E8; else goto L_029261E0;
|
|
L_029261E0: ; // 0x29261e0
|
|
/* 029261E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], cpu->r[8]);
|
|
/* 029261E4 */ _t126 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 029261E4 */ _t127 = _t126 & 0x00000001u;
|
|
/* 029261E4 */ if (_t127) goto L_029261E8; else goto L_029261F8;
|
|
L_029261E8: ; // 0x29261e8
|
|
/* 029261E8 */ _t128 = cpu->r[30] + 0x00000000u;
|
|
/* 029261E8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t128);
|
|
/* 029261EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000005Cu);
|
|
/* 029261F0 */ _t129 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029261F0 */ _t130 = _t129 & 0x00000001u;
|
|
/* 029261F0 */ if (_t130) goto L_029261F4; else goto L_02926204;
|
|
L_029261F4: ; // 0x29261f4
|
|
/* 029261F4 */ goto L_02926284;
|
|
L_029261F8: ; // 0x29261f8
|
|
/* 029261F8 */ _t131 = cpu->r[10] + cpu->r[26];
|
|
/* 029261F8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t131);
|
|
/* 029261FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000005Cu);
|
|
/* 02926200 */ _t132 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02926200 */ _t133 = _t132 & 0x00000001u;
|
|
/* 02926200 */ if (_t133) goto L_02926284; else goto L_02926204;
|
|
L_02926204: ; // 0x2926204
|
|
/* 02926204 */ _t134 = cpu->r[29] + 0x00000004u;
|
|
/* 02926204 */ cpu->r[11] = rbrew_read32(cpu->mem, _t134);
|
|
/* 02926208 */ _t135 = cpu->r[11] + 0x00000014u;
|
|
/* 02926208 */ cpu->r[5] = rbrew_read32(cpu->mem, _t135);
|
|
/* 0292620C */ cpu->ctr = cpu->r[5];
|
|
/* 02926210 */ cpu->r[3] = cpu->r[29];
|
|
/* 02926214 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02926218 */ _t136 = cpu->r[29] + 0x00000000u;
|
|
/* 02926218 */ cpu->r[11] = rbrew_read32(cpu->mem, _t136);
|
|
/* 0292621C */ cpu->r[10] = cpu->r[11];
|
|
/* 02926220 */ _t137 = cpu->r[10] + 0x00000000u;
|
|
/* 02926220 */ cpu->r[7] = rbrew_read8(cpu->mem, _t137);
|
|
/* 02926224 */ cpu->r[9] = 0x00000000u;
|
|
/* 02926228 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[31]);
|
|
/* 0292622C */ cpu->r[0] = 0x00080000u;
|
|
/* 02926230 */ _t138 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02926230 */ _t139 = _t138 & 0x00000001u;
|
|
/* 02926230 */ if (_t139) goto L_02926258; else goto L_02926234;
|
|
L_02926234: ; // 0x2926234
|
|
/* 02926234 */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 02926238 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], cpu->r[0]);
|
|
/* 0292623C */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 02926240 */ _t140 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02926240 */ _t141 = _t140 & 0x00000001u;
|
|
/* 02926240 */ if (_t141) goto L_02926254; else goto L_02926244;
|
|
L_02926244: ; // 0x2926244
|
|
/* 02926244 */ _t142 = cpu->r[10] + 0x00000000u;
|
|
/* 02926244 */ cpu->r[8] = rbrew_read8(cpu->mem, _t142);
|
|
/* 02926248 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[31]);
|
|
/* 0292624C */ _t143 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292624C */ _t144 = _t143 & 0x00000001u;
|
|
/* 0292624C */ if (_t144) goto L_02926250; else goto L_02926234;
|
|
L_02926250: ; // 0x2926250
|
|
/* 02926250 */ goto L_02926258;
|
|
L_02926254: ; // 0x2926254
|
|
/* 02926254 */ cpu->r[9] = 0x00000000u;
|
|
L_02926258: ; // 0x2926258
|
|
/* 02926258 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 0292625C */ _t145 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0292625C */ _t146 = _t145 & 0x00000001u;
|
|
/* 0292625C */ if (_t146) goto L_02926268; else goto L_02926260;
|
|
L_02926260: ; // 0x2926260
|
|
/* 02926260 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], cpu->r[9]);
|
|
/* 02926264 */ _t147 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02926264 */ _t148 = _t147 & 0x00000001u;
|
|
/* 02926264 */ if (_t148) goto L_02926268; else goto L_02926278;
|
|
L_02926268: ; // 0x2926268
|
|
/* 02926268 */ _t149 = cpu->r[30] + 0x00000000u;
|
|
/* 02926268 */ cpu->r[12] = rbrew_read8(cpu->mem, _t149);
|
|
/* 0292626C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x0000002Fu);
|
|
/* 02926270 */ _t150 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02926270 */ _t151 = _t150 & 0x00000001u;
|
|
/* 02926270 */ if (_t151) goto L_02926274; else goto L_029262A0;
|
|
L_02926274: ; // 0x2926274
|
|
/* 02926274 */ goto L_02926284;
|
|
L_02926278: ; // 0x2926278
|
|
/* 02926278 */ _t152 = cpu->r[11] + cpu->r[26];
|
|
/* 02926278 */ cpu->r[12] = rbrew_read8(cpu->mem, _t152);
|
|
/* 0292627C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x0000002Fu);
|
|
/* 02926280 */ _t153 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02926280 */ _t154 = _t153 & 0x00000001u;
|
|
/* 02926280 */ if (_t154) goto L_02926284; else goto L_029262A0;
|
|
L_02926284: ; // 0x2926284
|
|
/* 02926284 */ _t155 = cpu->r[29] + 0x00000004u;
|
|
/* 02926284 */ cpu->r[4] = rbrew_read32(cpu->mem, _t155);
|
|
/* 02926288 */ _t156 = cpu->r[4] + 0x00000014u;
|
|
/* 02926288 */ cpu->r[5] = rbrew_read32(cpu->mem, _t156);
|
|
/* 0292628C */ cpu->ctr = cpu->r[5];
|
|
/* 02926290 */ cpu->r[3] = cpu->r[29];
|
|
/* 02926294 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02926298 */ _t157 = cpu->r[29] + 0x00000000u;
|
|
/* 02926298 */ cpu->r[11] = rbrew_read32(cpu->mem, _t157);
|
|
/* 0292629C */ _t158 = cpu->r[11] + cpu->r[26];
|
|
/* 0292629C */ rbrew_write8(cpu->mem, _t158, (uint8_t)cpu->r[27]);
|
|
L_029262A0: ; // 0x29262a0
|
|
/* 029262A0 */ cpu->r[26] = cpu->r[26] + 0x00000001u;
|
|
L_029262A4: ; // 0x29262a4
|
|
/* 029262A4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[28]);
|
|
/* 029262A8 */ _t159 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029262A8 */ _t160 = _t159 & 0x00000001u;
|
|
/* 029262A8 */ if (_t160) goto L_029262AC; else goto L_02926184;
|
|
L_029262AC: ; // 0x29262ac
|
|
/* 029262AC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], cpu->r[25]);
|
|
/* 029262B0 */ _t161 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029262B0 */ _t162 = _t161 & 0x00000001u;
|
|
/* 029262B0 */ if (_t162) goto L_029262B4; else goto L_02926184;
|
|
L_029262B4: ; // 0x29262b4
|
|
/* 029262B4 */ /* nop */
|
|
/* 029262B8 */ _t163 = cpu->r[1] + 0x0000002Cu;
|
|
/* 029262B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t163);
|
|
/* 029262BC */ cpu->lr = cpu->r[0];
|
|
/* 029262C0 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 029262C4 */ return;
|
|
}
|
|
|
|
// fn_029262C8 @ 0x29262c8
|
|
void Gambit_fn_029262C8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t117, _t118, _t119, _t120, _t121, _t122, _t123, _t124, _t125, _t126, _t127, _t128, _t129, _t130, _t131, _t132, _t133, _t134, _t135, _t136, _t137, _t138, _t139, _t140, _t141, _t142, _t143, _t144, _t145, _t146, _t147, _t148, _t149, _t150, _t151, _t152, _t153, _t154, _t155, _t156, _t157, _t158, _t159, _t160, _t161, _t162, _t163, _t164, _t165, _t166, _t167, _t168, _t169, _t170, _t171, _t172, _t173, _t174, _t175, _t176, _t177, _t178, _t179, _t180, _t181, _t182, _t183, _t184, _t185, _t186, _t187, _t188, _t189, _t190, _t191, _t192, _t193, _t194, _t195, _t196, _t197, _t198, _t199, _t200, _t201, _t202, _t203, _t204, _t205, _t206, _t207, _t208, _t209, _t210, _t211, _t212, _t213, _t214, _t215, _t216, _t217, _t218, _t219, _t220, _t221, _t222, _t223, _t224, _t225, _t226, _t227, _t228, _t229, _t230, _t231, _t232, _t233, _t234, _t235, _t236, _t237, _t238, _t239, _t240, _t241, _t242, _t243, _t244, _t245, _t246, _t247, _t248, _t249, _t250, _t251, _t252, _t253, _t254, _t255, _t256, _t257, _t258, _t259, _t260, _t261, _t262, _t263, _t264, _t265, _t266, _t267, _t268, _t269, _t270, _t271, _t272, _t273, _t274, _t275, _t276, _t277, _t278, _t279, _t280, _t281, _t282, _t283, _t284, _t285, _t286, _t287, _t288, _t289, _t290, _t291, _t292, _t293, _t294, _t295, _t296, _t297, _t298, _t299, _t300, _t301, _t302, _t303, _t304, _t305, _t306, _t307, _t308, _t309, _t310, _t311, _t312, _t313, _t314, _t315, _t316, _t317, _t318, _t319, _t320, _t321, _t322, _t323, _t324, _t325, _t326, _t327, _t328, _t329, _t330, _t331, _t332, _t333, _t334, _t335, _t336, _t337, _t338, _t339, _t340, _t341, _t342, _t343, _t344, _t345, _t346, _t347, _t348, _t349, _t350, _t351, _t352, _t353, _t354, _t355, _t356, _t357, _t358, _t359, _t360, _t361, _t362, _t363, _t364, _t365, _t366, _t367, _t368, _t369, _t370, _t371, _t372, _t373, _t374, _t375, _t376, _t377, _t378, _t379, _t380, _t381, _t382, _t383, _t384, _t385, _t386, _t387, _t388, _t389, _t390, _t391, _t392, _t393, _t394, _t395, _t396, _t397, _t398, _t399, _t400, _t401, _t402, _t403, _t404, _t405, _t406, _t407, _t408, _t409, _t410, _t411, _t412, _t413, _t414, _t415, _t416, _t417, _t418, _t419, _t420, _t421, _t422, _t423, _t424, _t425, _t426, _t427, _t428, _t429, _t430, _t431, _t432, _t433, _t434, _t435, _t436, _t437, _t438, _t439, _t440, _t441, _t442, _t443, _t444, _t445, _t446, _t447, _t448, _t449, _t450, _t451, _t452, _t453, _t454, _t455, _t456, _t457, _t458, _t459, _t460, _t461, _t462, _t463, _t464, _t465, _t466, _t467, _t468, _t469, _t470, _t471, _t472, _t473, _t474, _t475, _t476, _t477, _t478, _t479, _t480, _t481, _t482, _t483, _t484, _t485, _t486, _t487, _t488, _t489, _t490, _t491, _t492, _t493, _t494, _t495, _t496, _t497, _t498, _t499, _t500, _t501, _t502, _t503, _t504, _t505, _t506, _t507, _t508, _t509, _t510, _t511, _t512, _t513, _t514, _t515, _t516, _t517, _t518, _t519, _t520, _t521, _t522, _t523, _t524, _t525, _t526, _t527, _t528, _t529, _t530, _t531, _t532, _t533, _t534, _t535, _t536, _t537, _t538, _t539, _t540, _t541, _t542, _t543, _t544, _t545, _t546, _t547, _t548, _t549, _t550, _t551, _t552, _t553, _t554, _t555, _t556, _t557, _t558, _t559, _t560, _t561, _t562, _t563, _t564, _t565, _t566, _t567, _t568, _t569, _t570, _t571, _t572, _t573, _t574, _t575, _t576, _t577, _t578, _t579, _t580, _t581, _t582, _t583, _t584, _t585, _t586, _t587, _t588, _t589, _t590, _t591, _t592, _t593, _t594, _t595, _t596, _t597, _t598, _t599, _t600, _t601, _t602, _t603, _t604, _t605, _t606, _t607, _t608, _t609, _t610, _t611, _t612, _t613, _t614, _t615, _t616, _t617, _t618, _t619, _t620, _t621, _t622, _t623, _t624, _t625, _t626, _t627, _t628, _t629, _t630, _t631, _t632, _t633, _t634, _t635, _t636, _t637, _t638, _t639, _t640, _t641, _t642, _t643, _t644, _t645, _t646, _t647, _t648, _t649, _t650, _t651, _t652, _t653, _t654, _t655, _t656, _t657, _t658, _t659, _t660, _t661, _t662, _t663, _t664, _t665, _t666, _t667, _t668, _t669, _t670, _t671, _t672, _t673, _t674, _t675, _t676, _t677, _t678, _t679, _t680, _t681, _t682, _t683, _t684, _t685, _t686, _t687, _t688, _t689, _t690, _t691, _t692, _t693, _t694, _t695, _t696, _t697, _t698;
|
|
|
|
L_029262C8: ; // 0x29262c8
|
|
/* 029262C8 */ _t0 = cpu->r[1] + 0xFFFFFD20u;
|
|
/* 029262C8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 029262C8 */ cpu->r[1] = _t0;
|
|
/* 029262CC */ /* nop */
|
|
/* 029262D0 */ cpu->r[0] = cpu->lr;
|
|
/* 029262D4 */ _t1 = cpu->r[1] + 0x000002E4u;
|
|
/* 029262D4 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 029262D8 */ _t2 = cpu->r[3] + 0x00000004u;
|
|
/* 029262D8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t2);
|
|
/* 029262DC */ _t3 = cpu->r[6] + 0x00000014u;
|
|
/* 029262DC */ cpu->r[7] = rbrew_read32(cpu->mem, _t3);
|
|
/* 029262E0 */ _t4 = cpu->r[1] + 0x00000018u;
|
|
/* 029262E0 */ rbrew_write32(cpu->mem, _t4, cpu->r[5]);
|
|
/* 029262E4 */ cpu->ctr = cpu->r[7];
|
|
/* 029262E8 */ _t5 = cpu->r[1] + 0x00000020u;
|
|
/* 029262E8 */ rbrew_write32(cpu->mem, _t5, cpu->r[3]);
|
|
/* 029262EC */ cpu->r[31] = cpu->r[4];
|
|
/* 029262F0 */ cpu->r[25] = 0x00000000u;
|
|
/* 029262F4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 029262F8 */ cpu->r[6] = 0x10110000u;
|
|
/* 029262FC */ _t6 = cpu->r[1] + 0x00000020u;
|
|
/* 029262FC */ cpu->r[10] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02926300 */ cpu->r[11] = cpu->r[1] + 0x00000090u;
|
|
/* 02926304 */ _t7 = cpu->r[6] + 0x00007399u;
|
|
/* 02926304 */ cpu->r[6] = rbrew_read8(cpu->mem, _t7);
|
|
/* 02926308 */ _t8 = cpu->r[10] + 0x00000008u;
|
|
/* 02926308 */ cpu->r[14] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0292630C */ _t9 = cpu->r[1] + 0x00000024u;
|
|
/* 0292630C */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[6]);
|
|
/* 02926310 */ cpu->r[0] = 0x10140000u;
|
|
/* 02926314 */ _t10 = cpu->r[1] + 0x00000018u;
|
|
/* 02926314 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02926318 */ cpu->r[0] = cpu->r[0] + 0x0000406Cu;
|
|
/* 0292631C */ _t11 = cpu->r[1] + 0x00000193u;
|
|
/* 0292631C */ rbrew_write8(cpu->mem, _t11, (uint8_t)cpu->r[6]);
|
|
/* 02926320 */ cpu->r[12] = 0x00000104u;
|
|
/* 02926324 */ _t12 = cpu->r[1] + 0x00000088u;
|
|
/* 02926324 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 02926328 */ _t13 = cpu->r[1] + 0x0000008Cu;
|
|
/* 02926328 */ rbrew_write32(cpu->mem, _t13, cpu->r[12]);
|
|
/* 0292632C */ _t14 = cpu->r[1] + 0x00000084u;
|
|
/* 0292632C */ rbrew_write32(cpu->mem, _t14, cpu->r[11]);
|
|
/* 02926330 */ _t15 = cpu->r[10] + 0x00000000u;
|
|
/* 02926330 */ cpu->r[15] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02926334 */ _t16 = cpu->r[1] + 0x00000090u;
|
|
/* 02926334 */ rbrew_write8(cpu->mem, _t16, (uint8_t)cpu->r[6]);
|
|
/* 02926338 */ _t17 = cpu->r[15] + 0x00000000u;
|
|
/* 02926338 */ rbrew_write8(cpu->mem, _t17, (uint8_t)cpu->r[6]);
|
|
/* 0292633C */ _t18 = cpu->r[3] + 0x00000004u;
|
|
/* 0292633C */ cpu->r[5] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02926340 */ cpu->r[29] = 0x10140000u;
|
|
/* 02926344 */ cpu->r[29] = cpu->r[29] + 0x00003F4Cu;
|
|
/* 02926348 */ _t19 = cpu->r[5] + 0x00000014u;
|
|
/* 02926348 */ cpu->r[6] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0292634C */ cpu->ctr = cpu->r[6];
|
|
/* 02926350 */ cpu->r[22] = 0x10140000u;
|
|
/* 02926354 */ cpu->r[23] = cpu->r[25];
|
|
/* 02926358 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0292635C */ cpu->r[27] = 0x10140000u;
|
|
/* 02926360 */ _t20 = cpu->r[1] + 0x00000024u;
|
|
/* 02926360 */ cpu->r[8] = rbrew_read8(cpu->mem, _t20);
|
|
/* 02926364 */ cpu->r[28] = 0x10140000u;
|
|
/* 02926368 */ cpu->r[30] = 0x00080000u;
|
|
/* 0292636C */ _t21 = cpu->r[1] + 0x00000018u;
|
|
/* 0292636C */ cpu->r[6] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02926370 */ cpu->r[27] = cpu->r[27] + 0x0000402Cu;
|
|
/* 02926374 */ cpu->r[24] = 0x10140000u;
|
|
/* 02926378 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 0292637C */ _t22 = cpu->r[6] + 0x00000000u;
|
|
/* 0292637C */ cpu->r[9] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02926380 */ cpu->r[28] = cpu->r[28] + 0x000040B1u;
|
|
/* 02926384 */ cpu->ctr = cpu->r[30];
|
|
/* 02926388 */ cpu->r[24] = cpu->r[24] + 0x000040B4u;
|
|
/* 0292638C */ cpu->r[9] = cpu->r[9] + 0xFFFFFFFFu;
|
|
L_02926390: ; // 0x2926390
|
|
/* 02926390 */ _t23 = cpu->r[9] + 0x00000001u;
|
|
/* 02926390 */ cpu->r[10] = rbrew_read8(cpu->mem, _t23);
|
|
/* 02926390 */ cpu->r[9] = _t23;
|
|
/* 02926394 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[8]);
|
|
/* 02926398 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02926398 */ _t25 = _t24 & 0x00000001u;
|
|
/* 02926398 */ if (_t25) goto L_029263A8; else goto L_0292639C;
|
|
L_0292639C: ; // 0x292639c
|
|
/* 0292639C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x0000003Au);
|
|
/* 029263A0 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029263A0 */ _t27 = _t26 & 0x00000001u;
|
|
/* 029263A0 */ if (_t27) goto L_029263E4; else goto L_029263A4;
|
|
L_029263A4: ; // 0x29263a4
|
|
/* 029263A4 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 029263A4 */ _t28 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 029263A4 */ _t29 = _t28 >> (0x00000002u & 31u);
|
|
/* 029263A4 */ _t30 = _t29 & 0x00000001u;
|
|
/* 029263A4 */ if (_t30) goto L_02926390; else goto L_029263A8;
|
|
L_029263A8: ; // 0x29263a8
|
|
/* 029263A8 */ _t31 = cpu->r[31] + 0x00000004u;
|
|
/* 029263A8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t31);
|
|
/* 029263AC */ _t32 = cpu->r[7] + 0x00000014u;
|
|
/* 029263AC */ cpu->r[8] = rbrew_read32(cpu->mem, _t32);
|
|
/* 029263B0 */ cpu->ctr = cpu->r[8];
|
|
/* 029263B4 */ cpu->r[3] = cpu->r[31];
|
|
/* 029263B8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 029263BC */ _t33 = cpu->r[31] + 0x00000000u;
|
|
/* 029263BC */ cpu->r[7] = rbrew_read32(cpu->mem, _t33);
|
|
/* 029263C0 */ cpu->ctr = cpu->r[30];
|
|
/* 029263C4 */ _t34 = cpu->r[1] + 0x00000024u;
|
|
/* 029263C4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t34);
|
|
/* 029263C8 */ cpu->r[7] = cpu->r[7] + 0xFFFFFFFFu;
|
|
L_029263CC: ; // 0x29263cc
|
|
/* 029263CC */ _t35 = cpu->r[7] + 0x00000001u;
|
|
/* 029263CC */ cpu->r[11] = rbrew_read8(cpu->mem, _t35);
|
|
/* 029263CC */ cpu->r[7] = _t35;
|
|
/* 029263D0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[0]);
|
|
/* 029263D4 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029263D4 */ _t37 = _t36 & 0x00000001u;
|
|
/* 029263D4 */ if (_t37) goto L_029263E4; else goto L_029263D8;
|
|
L_029263D8: ; // 0x29263d8
|
|
/* 029263D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x0000003Au);
|
|
/* 029263DC */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029263DC */ _t39 = _t38 & 0x00000001u;
|
|
/* 029263DC */ if (_t39) goto L_0292643C; else goto L_029263E0;
|
|
L_029263E0: ; // 0x29263e0
|
|
/* 029263E0 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 029263E0 */ _t40 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 029263E0 */ _t41 = _t40 >> (0x00000002u & 31u);
|
|
/* 029263E0 */ _t42 = _t41 & 0x00000001u;
|
|
/* 029263E0 */ if (_t42) goto L_029263CC; else goto L_029263E4;
|
|
L_029263E4: ; // 0x29263e4
|
|
/* 029263E4 */ _t43 = cpu->r[1] + 0x00000018u;
|
|
/* 029263E4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t43);
|
|
/* 029263E8 */ cpu->r[7] = 0x00000000u;
|
|
/* 029263EC */ _t44 = cpu->r[1] + 0x00000070u;
|
|
/* 029263EC */ rbrew_write32(cpu->mem, _t44, cpu->r[27]);
|
|
/* 029263F0 */ _t45 = cpu->r[1] + 0x0000006Cu;
|
|
/* 029263F0 */ rbrew_write32(cpu->mem, _t45, cpu->r[7]);
|
|
/* 029263F4 */ _t46 = cpu->r[1] + 0x00000068u;
|
|
/* 029263F4 */ rbrew_write32(cpu->mem, _t46, cpu->r[3]);
|
|
/* 029263F8 */ _t47 = cpu->r[3] + 0x00000004u;
|
|
/* 029263F8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t47);
|
|
/* 029263FC */ _t48 = cpu->r[1] + 0x00000078u;
|
|
/* 029263FC */ rbrew_write32(cpu->mem, _t48, cpu->r[29]);
|
|
/* 02926400 */ _t49 = cpu->r[1] + 0x00000074u;
|
|
/* 02926400 */ rbrew_write32(cpu->mem, _t49, cpu->r[28]);
|
|
/* 02926404 */ _t50 = cpu->r[9] + 0x00000014u;
|
|
/* 02926404 */ cpu->r[0] = rbrew_read32(cpu->mem, _t50);
|
|
/* 02926408 */ _t51 = cpu->r[1] + 0x00000014u;
|
|
/* 02926408 */ rbrew_write32(cpu->mem, _t51, cpu->r[28]);
|
|
/* 0292640C */ cpu->ctr = cpu->r[0];
|
|
/* 02926410 */ _t52 = cpu->r[1] + 0x00000010u;
|
|
/* 02926410 */ rbrew_write32(cpu->mem, _t52, cpu->r[27]);
|
|
/* 02926414 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02926418 */ _t53 = cpu->r[1] + 0x00000018u;
|
|
/* 02926418 */ cpu->r[12] = rbrew_read32(cpu->mem, _t53);
|
|
/* 0292641C */ _t54 = cpu->r[12] + 0x00000000u;
|
|
/* 0292641C */ cpu->r[11] = rbrew_read32(cpu->mem, _t54);
|
|
/* 02926420 */ _t55 = cpu->r[1] + 0x00000024u;
|
|
/* 02926420 */ cpu->r[0] = rbrew_read8(cpu->mem, _t55);
|
|
/* 02926424 */ _t56 = cpu->r[11] + 0x00000000u;
|
|
/* 02926424 */ cpu->r[10] = rbrew_read8(cpu->mem, _t56);
|
|
/* 02926428 */ cpu->r[8] = 0x00000000u;
|
|
/* 0292642C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[0]);
|
|
/* 02926430 */ cpu->r[12] = 0x00080000u;
|
|
/* 02926434 */ _t57 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02926434 */ _t58 = _t57 & 0x00000001u;
|
|
/* 02926434 */ if (_t58) goto L_02926438; else goto L_02926D9C;
|
|
L_02926438: ; // 0x2926438
|
|
/* 02926438 */ goto L_02926DCC;
|
|
L_0292643C: ; // 0x292643c
|
|
/* 0292643C */ _t59 = cpu->r[1] + 0x00000074u;
|
|
/* 0292643C */ rbrew_write32(cpu->mem, _t59, cpu->r[28]);
|
|
/* 02926440 */ cpu->r[0] = 0x00000000u;
|
|
/* 02926444 */ _t60 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02926444 */ rbrew_write32(cpu->mem, _t60, cpu->r[0]);
|
|
/* 02926448 */ _t61 = cpu->r[1] + 0x00000078u;
|
|
/* 02926448 */ rbrew_write32(cpu->mem, _t61, cpu->r[29]);
|
|
/* 0292644C */ _t62 = cpu->r[31] + 0x00000004u;
|
|
/* 0292644C */ cpu->r[9] = rbrew_read32(cpu->mem, _t62);
|
|
/* 02926450 */ _t63 = cpu->r[1] + 0x00000070u;
|
|
/* 02926450 */ rbrew_write32(cpu->mem, _t63, cpu->r[27]);
|
|
/* 02926454 */ _t64 = cpu->r[1] + 0x00000068u;
|
|
/* 02926454 */ rbrew_write32(cpu->mem, _t64, cpu->r[31]);
|
|
/* 02926458 */ _t65 = cpu->r[9] + 0x00000014u;
|
|
/* 02926458 */ cpu->r[0] = rbrew_read32(cpu->mem, _t65);
|
|
/* 0292645C */ _t66 = cpu->r[1] + 0x00000014u;
|
|
/* 0292645C */ rbrew_write32(cpu->mem, _t66, cpu->r[28]);
|
|
/* 02926460 */ cpu->ctr = cpu->r[0];
|
|
/* 02926464 */ _t67 = cpu->r[1] + 0x00000010u;
|
|
/* 02926464 */ rbrew_write32(cpu->mem, _t67, cpu->r[27]);
|
|
/* 02926468 */ cpu->r[3] = cpu->r[31];
|
|
/* 0292646C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02926470 */ _t68 = cpu->r[31] + 0x00000000u;
|
|
/* 02926470 */ cpu->r[5] = rbrew_read32(cpu->mem, _t68);
|
|
/* 02926474 */ _t69 = cpu->r[1] + 0x00000024u;
|
|
/* 02926474 */ cpu->r[0] = rbrew_read8(cpu->mem, _t69);
|
|
/* 02926478 */ _t70 = cpu->r[5] + 0x00000000u;
|
|
/* 02926478 */ cpu->r[11] = rbrew_read8(cpu->mem, _t70);
|
|
/* 0292647C */ cpu->r[7] = 0x00000000u;
|
|
/* 02926480 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[0]);
|
|
/* 02926484 */ cpu->r[6] = 0x00080000u;
|
|
/* 02926488 */ _t71 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02926488 */ _t72 = _t71 & 0x00000001u;
|
|
/* 02926488 */ if (_t72) goto L_029264B4; else goto L_0292648C;
|
|
L_0292648C: ; // 0x292648c
|
|
/* 0292648C */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 02926490 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], cpu->r[6]);
|
|
/* 02926494 */ cpu->r[5] = cpu->r[5] + 0x00000001u;
|
|
/* 02926498 */ _t73 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02926498 */ _t74 = _t73 & 0x00000001u;
|
|
/* 02926498 */ if (_t74) goto L_029264B0; else goto L_0292649C;
|
|
L_0292649C: ; // 0x292649c
|
|
/* 0292649C */ _t75 = cpu->r[5] + 0x00000000u;
|
|
/* 0292649C */ cpu->r[12] = rbrew_read8(cpu->mem, _t75);
|
|
/* 029264A0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[0]);
|
|
/* 029264A4 */ _t76 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029264A4 */ _t77 = _t76 & 0x00000001u;
|
|
/* 029264A4 */ if (_t77) goto L_029264A8; else goto L_0292648C;
|
|
L_029264A8: ; // 0x29264a8
|
|
/* 029264A8 */ cpu->r[30] = cpu->r[7] + 0x00000001u;
|
|
/* 029264AC */ goto L_029264B8;
|
|
L_029264B0: ; // 0x29264b0
|
|
/* 029264B0 */ cpu->r[7] = 0x00000000u;
|
|
L_029264B4: ; // 0x29264b4
|
|
/* 029264B4 */ cpu->r[30] = cpu->r[7] + 0x00000001u;
|
|
L_029264B8: ; // 0x29264b8
|
|
/* 029264B8 */ _t78 = cpu->r[1] + 0x00000024u;
|
|
/* 029264B8 */ cpu->r[9] = rbrew_read8(cpu->mem, _t78);
|
|
/* 029264BC */ _t79 = cpu->r[1] + 0x00000008u;
|
|
/* 029264BC */ rbrew_write8(cpu->mem, _t79, (uint8_t)cpu->r[9]);
|
|
L_029264C0: ; // 0x29264c0
|
|
/* 029264C0 */ _t80 = cpu->r[1] + 0x00000008u;
|
|
/* 029264C0 */ cpu->r[28] = rbrew_read8(cpu->mem, _t80);
|
|
/* 029264C4 */ cpu->r[8] = 0x00000000u;
|
|
/* 029264C8 */ _t81 = cpu->r[1] + 0x0000000Cu;
|
|
/* 029264C8 */ rbrew_write32(cpu->mem, _t81, cpu->r[8]);
|
|
/* 029264CC */ cpu->r[7] = 0x00080000u;
|
|
/* 029264D0 */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 029264D4 */ _t82 = cpu->r[1] + 0x0000001Cu;
|
|
/* 029264D4 */ rbrew_write32(cpu->mem, _t82, cpu->r[7]);
|
|
L_029264D8: ; // 0x29264d8
|
|
/* 029264D8 */ _t83 = cpu->r[1] + 0x00000068u;
|
|
/* 029264D8 */ cpu->r[27] = rbrew_read32(cpu->mem, _t83);
|
|
/* 029264DC */ cpu->r[21] = cpu->r[28];
|
|
/* 029264E0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], cpu->r[31]);
|
|
/* 029264E4 */ _t84 = cpu->r[1] + 0x0000006Cu;
|
|
/* 029264E4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t84);
|
|
/* 029264E8 */ _t85 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029264E8 */ _t86 = _t85 & 0x00000001u;
|
|
/* 029264E8 */ if (_t86) goto L_02926D40; else goto L_029264EC;
|
|
L_029264EC: ; // 0x29264ec
|
|
/* 029264EC */ _t87 = cpu->r[27] + 0x00000004u;
|
|
/* 029264EC */ cpu->r[5] = rbrew_read32(cpu->mem, _t87);
|
|
/* 029264F0 */ _t88 = cpu->r[5] + 0x00000014u;
|
|
/* 029264F0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t88);
|
|
/* 029264F4 */ cpu->ctr = cpu->r[6];
|
|
/* 029264F8 */ cpu->r[3] = cpu->r[27];
|
|
/* 029264FC */ cpu->r[18] = cpu->r[11];
|
|
/* 02926500 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02926504 */ _t89 = cpu->r[27] + 0x00000000u;
|
|
/* 02926504 */ cpu->r[10] = rbrew_read32(cpu->mem, _t89);
|
|
/* 02926508 */ cpu->r[12] = cpu->r[21];
|
|
/* 0292650C */ _t90 = cpu->r[10] + 0x00000000u;
|
|
/* 0292650C */ cpu->r[7] = rbrew_read8(cpu->mem, _t90);
|
|
/* 02926510 */ cpu->r[9] = 0x00000000u;
|
|
/* 02926514 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[12]);
|
|
/* 02926518 */ cpu->r[11] = 0x00080000u;
|
|
/* 0292651C */ _t91 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292651C */ _t92 = _t91 & 0x00000001u;
|
|
/* 0292651C */ if (_t92) goto L_0292654C; else goto L_02926520;
|
|
L_02926520: ; // 0x2926520
|
|
/* 02926520 */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 02926524 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], cpu->r[11]);
|
|
/* 02926528 */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 0292652C */ _t93 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0292652C */ _t94 = _t93 & 0x00000001u;
|
|
/* 0292652C */ if (_t94) goto L_02926548; else goto L_02926530;
|
|
L_02926530: ; // 0x2926530
|
|
/* 02926530 */ _t95 = cpu->r[10] + 0x00000000u;
|
|
/* 02926530 */ cpu->r[8] = rbrew_read8(cpu->mem, _t95);
|
|
/* 02926534 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[12]);
|
|
/* 02926538 */ _t96 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02926538 */ _t97 = _t96 & 0x00000001u;
|
|
/* 02926538 */ if (_t97) goto L_0292653C; else goto L_02926520;
|
|
L_0292653C: ; // 0x292653c
|
|
/* 0292653C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[18], 0x00000000u);
|
|
/* 02926540 */ _t98 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02926540 */ _t99 = _t98 & 0x00000001u;
|
|
/* 02926540 */ if (_t99) goto L_02926544; else goto L_02926554;
|
|
L_02926544: ; // 0x2926544
|
|
/* 02926544 */ goto L_0292655C;
|
|
L_02926548: ; // 0x2926548
|
|
/* 02926548 */ cpu->r[9] = 0x00000000u;
|
|
L_0292654C: ; // 0x292654c
|
|
/* 0292654C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[18], 0x00000000u);
|
|
/* 02926550 */ _t100 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02926550 */ _t101 = _t100 & 0x00000001u;
|
|
/* 02926550 */ if (_t101) goto L_0292655C; else goto L_02926554;
|
|
L_02926554: ; // 0x2926554
|
|
/* 02926554 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[18], cpu->r[9]);
|
|
/* 02926558 */ _t102 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02926558 */ _t103 = _t102 & 0x00000001u;
|
|
/* 02926558 */ if (_t103) goto L_0292655C; else goto L_029265D0;
|
|
L_0292655C: ; // 0x292655c
|
|
/* 0292655C */ cpu->r[27] = 0x10140000u;
|
|
/* 02926560 */ _t104 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02926560 */ rbrew_write32(cpu->mem, _t104, cpu->r[29]);
|
|
/* 02926564 */ cpu->r[27] = cpu->r[27] + 0x000040AFu;
|
|
/* 02926568 */ _t105 = cpu->r[1] + 0x00000088u;
|
|
/* 02926568 */ cpu->r[11] = rbrew_read32(cpu->mem, _t105);
|
|
/* 0292656C */ _t106 = cpu->r[1] + 0x00000038u;
|
|
/* 0292656C */ rbrew_write32(cpu->mem, _t106, cpu->r[27]);
|
|
/* 02926570 */ _t107 = cpu->r[11] + 0x00000014u;
|
|
/* 02926570 */ cpu->r[12] = rbrew_read32(cpu->mem, _t107);
|
|
/* 02926574 */ cpu->ctr = cpu->r[12];
|
|
/* 02926578 */ cpu->r[26] = 0x00000000u;
|
|
/* 0292657C */ cpu->r[3] = cpu->r[1] + 0x00000084u;
|
|
/* 02926580 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02926584 */ _t108 = cpu->r[1] + 0x00000088u;
|
|
/* 02926584 */ cpu->r[5] = rbrew_read32(cpu->mem, _t108);
|
|
/* 02926588 */ _t109 = cpu->r[5] + 0x00000014u;
|
|
/* 02926588 */ cpu->r[6] = rbrew_read32(cpu->mem, _t109);
|
|
/* 0292658C */ cpu->ctr = cpu->r[6];
|
|
/* 02926590 */ cpu->r[3] = cpu->r[1] + 0x00000084u;
|
|
/* 02926594 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02926598 */ _t110 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02926598 */ cpu->r[7] = rbrew_read32(cpu->mem, _t110);
|
|
/* 0292659C */ _t111 = cpu->r[7] + 0x00000014u;
|
|
/* 0292659C */ cpu->r[8] = rbrew_read32(cpu->mem, _t111);
|
|
/* 029265A0 */ cpu->ctr = cpu->r[8];
|
|
/* 029265A4 */ _t112 = cpu->r[1] + 0x00000084u;
|
|
/* 029265A4 */ cpu->r[20] = rbrew_read32(cpu->mem, _t112);
|
|
/* 029265A8 */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 029265AC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 029265B0 */ _t113 = cpu->r[1] + 0x00000038u;
|
|
/* 029265B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t113);
|
|
/* 029265B4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[20], cpu->r[0]);
|
|
/* 029265B8 */ _t114 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029265B8 */ _t115 = _t114 & 0x00000001u;
|
|
/* 029265B8 */ if (_t115) goto L_029265BC; else goto L_029266E0;
|
|
L_029265BC: ; // 0x29265bc
|
|
/* 029265BC */ _t116 = cpu->r[1] + 0x00000068u;
|
|
/* 029265BC */ cpu->r[27] = rbrew_read32(cpu->mem, _t116);
|
|
/* 029265C0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], cpu->r[31]);
|
|
/* 029265C4 */ _t117 = cpu->r[1] + 0x0000006Cu;
|
|
/* 029265C4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t117);
|
|
/* 029265C8 */ _t118 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029265C8 */ _t119 = _t118 & 0x00000001u;
|
|
/* 029265C8 */ if (_t119) goto L_029265CC; else goto L_029264EC;
|
|
L_029265CC: ; // 0x29265cc
|
|
/* 029265CC */ goto L_02926D40;
|
|
L_029265D0: ; // 0x29265d0
|
|
/* 029265D0 */ _t120 = cpu->r[1] + 0x00000088u;
|
|
/* 029265D0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t120);
|
|
/* 029265D4 */ _t121 = cpu->r[5] + 0x00000014u;
|
|
/* 029265D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t121);
|
|
/* 029265D8 */ cpu->ctr = cpu->r[0];
|
|
/* 029265DC */ cpu->r[3] = cpu->r[1] + 0x00000084u;
|
|
/* 029265E0 */ cpu->r[27] = 0x00000000u;
|
|
/* 029265E4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 029265E8 */ _t122 = cpu->r[1] + 0x0000008Cu;
|
|
/* 029265E8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t122);
|
|
/* 029265EC */ _t123 = cpu->r[1] + 0x00000084u;
|
|
/* 029265EC */ cpu->r[17] = rbrew_read32(cpu->mem, _t123);
|
|
/* 029265F0 */ cpu->r[20] = cpu->r[18] + 0x00000001u;
|
|
/* 029265F4 */ _t124 = cpu->r[1] + 0x0000001Cu;
|
|
/* 029265F4 */ cpu->r[26] = rbrew_read32(cpu->mem, _t124);
|
|
/* 029265F8 */ cpu->r[19] = cpu->r[6] + 0xFFFFFFFFu;
|
|
/* 029265FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[19], cpu->r[27]);
|
|
/* 02926600 */ _t125 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02926600 */ _t126 = _t125 & 0x00000001u;
|
|
/* 02926600 */ if (_t126) goto L_0292655C; else goto L_02926604;
|
|
L_02926604: ; // 0x2926604
|
|
/* 02926604 */ _t127 = cpu->r[1] + 0x00000068u;
|
|
/* 02926604 */ cpu->r[5] = rbrew_read32(cpu->mem, _t127);
|
|
/* 02926608 */ _t128 = cpu->r[5] + 0x00000000u;
|
|
/* 02926608 */ cpu->r[7] = rbrew_read32(cpu->mem, _t128);
|
|
/* 0292660C */ _t129 = cpu->r[7] + cpu->r[18];
|
|
/* 0292660C */ cpu->r[8] = rbrew_read8(cpu->mem, _t129);
|
|
/* 02926610 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[21]);
|
|
/* 02926614 */ cpu->r[16] = cpu->r[7] + cpu->r[18];
|
|
/* 02926618 */ _t130 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02926618 */ _t131 = _t130 & 0x00000001u;
|
|
/* 02926618 */ if (_t131) goto L_02926678; else goto L_0292661C;
|
|
L_0292661C: ; // 0x292661c
|
|
/* 0292661C */ _t132 = cpu->r[1] + 0x00000078u;
|
|
/* 0292661C */ cpu->r[9] = rbrew_read32(cpu->mem, _t132);
|
|
/* 02926620 */ _t133 = cpu->r[9] + 0x00000014u;
|
|
/* 02926620 */ cpu->r[10] = rbrew_read32(cpu->mem, _t133);
|
|
/* 02926624 */ cpu->ctr = cpu->r[10];
|
|
/* 02926628 */ cpu->r[3] = cpu->r[1] + 0x00000074u;
|
|
/* 0292662C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02926630 */ _t134 = cpu->r[1] + 0x00000074u;
|
|
/* 02926630 */ cpu->r[9] = rbrew_read32(cpu->mem, _t134);
|
|
/* 02926634 */ cpu->ctr = cpu->r[26];
|
|
/* 02926638 */ _t135 = cpu->r[16] + 0x00000000u;
|
|
/* 02926638 */ cpu->r[0] = rbrew_read8(cpu->mem, _t135);
|
|
/* 0292663C */ cpu->r[11] = cpu->r[21];
|
|
L_02926640: ; // 0x2926640
|
|
/* 02926640 */ _t136 = cpu->r[9] + 0x00000000u;
|
|
/* 02926640 */ cpu->r[12] = rbrew_read8(cpu->mem, _t136);
|
|
/* 02926644 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[11]);
|
|
/* 02926648 */ _t137 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02926648 */ _t138 = _t137 & 0x00000001u;
|
|
/* 02926648 */ if (_t138) goto L_0292665C; else goto L_0292664C;
|
|
L_0292664C: ; // 0x292664c
|
|
/* 0292664C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[0]);
|
|
/* 02926650 */ _t139 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02926650 */ _t140 = _t139 & 0x00000001u;
|
|
/* 02926650 */ if (_t140) goto L_02926678; else goto L_02926654;
|
|
L_02926654: ; // 0x2926654
|
|
/* 02926654 */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 02926658 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02926658 */ _t141 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02926658 */ _t142 = _t141 >> (0x00000002u & 31u);
|
|
/* 02926658 */ _t143 = _t142 & 0x00000001u;
|
|
/* 02926658 */ if (_t143) goto L_02926640; else goto L_0292665C;
|
|
L_0292665C: ; // 0x292665c
|
|
/* 0292665C */ _t144 = cpu->r[17] + cpu->r[27];
|
|
/* 0292665C */ rbrew_write8(cpu->mem, _t144, (uint8_t)cpu->r[0]);
|
|
/* 02926660 */ cpu->r[27] = cpu->r[27] + 0x00000001u;
|
|
/* 02926664 */ cpu->r[20] = cpu->r[20] + 0x00000001u;
|
|
/* 02926668 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[19], cpu->r[27]);
|
|
/* 0292666C */ cpu->r[18] = cpu->r[18] + 0x00000001u;
|
|
/* 02926670 */ _t145 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02926670 */ _t146 = _t145 & 0x00000001u;
|
|
/* 02926670 */ if (_t146) goto L_0292655C; else goto L_02926674;
|
|
L_02926674: ; // 0x2926674
|
|
/* 02926674 */ goto L_02926604;
|
|
L_02926678: ; // 0x2926678
|
|
/* 02926678 */ _t147 = cpu->r[17] + cpu->r[27];
|
|
/* 02926678 */ rbrew_write8(cpu->mem, _t147, (uint8_t)cpu->r[21]);
|
|
/* 0292667C */ cpu->r[26] = cpu->r[27];
|
|
/* 02926680 */ _t148 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02926680 */ rbrew_write32(cpu->mem, _t148, cpu->r[20]);
|
|
/* 02926684 */ cpu->r[27] = 0x10140000u;
|
|
/* 02926688 */ _t149 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02926688 */ rbrew_write32(cpu->mem, _t149, cpu->r[29]);
|
|
/* 0292668C */ cpu->r[27] = cpu->r[27] + 0x000040AFu;
|
|
/* 02926690 */ _t150 = cpu->r[1] + 0x00000088u;
|
|
/* 02926690 */ cpu->r[11] = rbrew_read32(cpu->mem, _t150);
|
|
/* 02926694 */ _t151 = cpu->r[1] + 0x00000038u;
|
|
/* 02926694 */ rbrew_write32(cpu->mem, _t151, cpu->r[27]);
|
|
/* 02926698 */ _t152 = cpu->r[11] + 0x00000014u;
|
|
/* 02926698 */ cpu->r[12] = rbrew_read32(cpu->mem, _t152);
|
|
/* 0292669C */ cpu->ctr = cpu->r[12];
|
|
/* 029266A0 */ cpu->r[3] = cpu->r[1] + 0x00000084u;
|
|
/* 029266A4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 029266A8 */ _t153 = cpu->r[1] + 0x00000088u;
|
|
/* 029266A8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t153);
|
|
/* 029266AC */ _t154 = cpu->r[5] + 0x00000014u;
|
|
/* 029266AC */ cpu->r[6] = rbrew_read32(cpu->mem, _t154);
|
|
/* 029266B0 */ cpu->ctr = cpu->r[6];
|
|
/* 029266B4 */ cpu->r[3] = cpu->r[1] + 0x00000084u;
|
|
/* 029266B8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 029266BC */ _t155 = cpu->r[1] + 0x0000003Cu;
|
|
/* 029266BC */ cpu->r[7] = rbrew_read32(cpu->mem, _t155);
|
|
/* 029266C0 */ _t156 = cpu->r[7] + 0x00000014u;
|
|
/* 029266C0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t156);
|
|
/* 029266C4 */ cpu->ctr = cpu->r[8];
|
|
/* 029266C8 */ _t157 = cpu->r[1] + 0x00000084u;
|
|
/* 029266C8 */ cpu->r[20] = rbrew_read32(cpu->mem, _t157);
|
|
/* 029266CC */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 029266D0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 029266D4 */ _t158 = cpu->r[1] + 0x00000038u;
|
|
/* 029266D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t158);
|
|
/* 029266D8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[20], cpu->r[0]);
|
|
/* 029266DC */ _t159 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029266DC */ _t160 = _t159 & 0x00000001u;
|
|
/* 029266DC */ if (_t160) goto L_029265BC; else goto L_029266E0;
|
|
L_029266E0: ; // 0x29266e0
|
|
/* 029266E0 */ _t161 = cpu->r[1] + 0x0000001Cu;
|
|
/* 029266E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t161);
|
|
/* 029266E4 */ cpu->r[10] = cpu->r[21];
|
|
/* 029266E8 */ _t162 = cpu->r[1] + 0x00000038u;
|
|
/* 029266E8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t162);
|
|
/* 029266EC */ cpu->ctr = cpu->r[0];
|
|
/* 029266F0 */ _t163 = cpu->r[1] + 0x00000084u;
|
|
/* 029266F0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t163);
|
|
/* 029266F4 */ cpu->r[8] = cpu->r[8] + 0xFFFFFFFFu;
|
|
L_029266F8: ; // 0x29266f8
|
|
/* 029266F8 */ _t164 = cpu->r[7] + 0x00000000u;
|
|
/* 029266F8 */ cpu->r[5] = rbrew_read8(cpu->mem, _t164);
|
|
/* 029266FC */ _t165 = cpu->r[8] + 0x00000001u;
|
|
/* 029266FC */ cpu->r[9] = rbrew_read8(cpu->mem, _t165);
|
|
/* 029266FC */ cpu->r[8] = _t165;
|
|
/* 02926700 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[9]);
|
|
/* 02926704 */ _t166 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02926704 */ _t167 = _t166 & 0x00000001u;
|
|
/* 02926704 */ if (_t167) goto L_02926708; else goto L_02926718;
|
|
L_02926708: ; // 0x2926708
|
|
/* 02926708 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[10]);
|
|
/* 0292670C */ _t168 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292670C */ _t169 = _t168 & 0x00000001u;
|
|
/* 0292670C */ if (_t169) goto L_029265BC; else goto L_02926710;
|
|
L_02926710: ; // 0x2926710
|
|
/* 02926710 */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 02926714 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02926714 */ _t170 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02926714 */ _t171 = _t170 >> (0x00000002u & 31u);
|
|
/* 02926714 */ _t172 = _t171 & 0x00000001u;
|
|
/* 02926714 */ if (_t172) goto L_029266F8; else goto L_02926718;
|
|
L_02926718: ; // 0x2926718
|
|
/* 02926718 */ _t173 = cpu->r[1] + 0x00000088u;
|
|
/* 02926718 */ cpu->r[10] = rbrew_read32(cpu->mem, _t173);
|
|
/* 0292671C */ _t174 = cpu->r[1] + 0x00000040u;
|
|
/* 0292671C */ rbrew_write32(cpu->mem, _t174, cpu->r[24]);
|
|
/* 02926720 */ _t175 = cpu->r[1] + 0x00000044u;
|
|
/* 02926720 */ rbrew_write32(cpu->mem, _t175, cpu->r[29]);
|
|
/* 02926724 */ _t176 = cpu->r[10] + 0x00000014u;
|
|
/* 02926724 */ cpu->r[11] = rbrew_read32(cpu->mem, _t176);
|
|
/* 02926728 */ cpu->ctr = cpu->r[11];
|
|
/* 0292672C */ cpu->r[3] = cpu->r[1] + 0x00000084u;
|
|
/* 02926730 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02926734 */ _t177 = cpu->r[1] + 0x00000088u;
|
|
/* 02926734 */ cpu->r[12] = rbrew_read32(cpu->mem, _t177);
|
|
/* 02926738 */ _t178 = cpu->r[12] + 0x00000014u;
|
|
/* 02926738 */ cpu->r[5] = rbrew_read32(cpu->mem, _t178);
|
|
/* 0292673C */ cpu->ctr = cpu->r[5];
|
|
/* 02926740 */ cpu->r[3] = cpu->r[1] + 0x00000084u;
|
|
/* 02926744 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02926748 */ _t179 = cpu->r[1] + 0x00000044u;
|
|
/* 02926748 */ cpu->r[6] = rbrew_read32(cpu->mem, _t179);
|
|
/* 0292674C */ _t180 = cpu->r[6] + 0x00000014u;
|
|
/* 0292674C */ cpu->r[7] = rbrew_read32(cpu->mem, _t180);
|
|
/* 02926750 */ cpu->ctr = cpu->r[7];
|
|
/* 02926754 */ _t181 = cpu->r[1] + 0x00000084u;
|
|
/* 02926754 */ cpu->r[21] = rbrew_read32(cpu->mem, _t181);
|
|
/* 02926758 */ cpu->r[3] = cpu->r[1] + 0x00000040u;
|
|
/* 0292675C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02926760 */ _t182 = cpu->r[1] + 0x00000040u;
|
|
/* 02926760 */ cpu->r[8] = rbrew_read32(cpu->mem, _t182);
|
|
/* 02926764 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[21], cpu->r[8]);
|
|
/* 02926768 */ _t183 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02926768 */ _t184 = _t183 & 0x00000001u;
|
|
/* 02926768 */ if (_t184) goto L_0292676C; else goto L_0292678C;
|
|
L_0292676C: ; // 0x292676c
|
|
/* 0292676C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u);
|
|
/* 02926770 */ _t185 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02926770 */ _t186 = _t185 & 0x00000001u;
|
|
/* 02926770 */ if (_t186) goto L_02926774; else goto L_02926800;
|
|
L_02926774: ; // 0x2926774
|
|
/* 02926774 */ /* nop */
|
|
/* 02926778 */ _t187 = cpu->r[1] + 0x000002E4u;
|
|
/* 02926778 */ cpu->r[0] = rbrew_read32(cpu->mem, _t187);
|
|
/* 0292677C */ cpu->lr = cpu->r[0];
|
|
/* 02926780 */ cpu->r[1] = cpu->r[1] + 0x000002E0u;
|
|
/* 02926784 */ cpu->r[3] = 0x00000000u;
|
|
/* 02926788 */ return;
|
|
L_0292678C: ; // 0x292678c
|
|
/* 0292678C */ _t188 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0292678C */ cpu->r[8] = rbrew_read32(cpu->mem, _t188);
|
|
/* 02926790 */ cpu->r[9] = cpu->r[28];
|
|
/* 02926794 */ _t189 = cpu->r[1] + 0x00000040u;
|
|
/* 02926794 */ cpu->r[5] = rbrew_read32(cpu->mem, _t189);
|
|
/* 02926798 */ cpu->ctr = cpu->r[8];
|
|
/* 0292679C */ _t190 = cpu->r[1] + 0x00000084u;
|
|
/* 0292679C */ cpu->r[12] = rbrew_read32(cpu->mem, _t190);
|
|
/* 029267A0 */ cpu->r[5] = cpu->r[5] + 0xFFFFFFFFu;
|
|
L_029267A4: ; // 0x29267a4
|
|
/* 029267A4 */ _t191 = cpu->r[12] + 0x00000000u;
|
|
/* 029267A4 */ cpu->r[6] = rbrew_read8(cpu->mem, _t191);
|
|
/* 029267A8 */ _t192 = cpu->r[5] + 0x00000001u;
|
|
/* 029267A8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t192);
|
|
/* 029267A8 */ cpu->r[5] = _t192;
|
|
/* 029267AC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[0]);
|
|
/* 029267B0 */ _t193 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029267B0 */ _t194 = _t193 & 0x00000001u;
|
|
/* 029267B0 */ if (_t194) goto L_029267B4; else goto L_029267C4;
|
|
L_029267B4: ; // 0x29267b4
|
|
/* 029267B4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[9]);
|
|
/* 029267B8 */ _t195 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029267B8 */ _t196 = _t195 & 0x00000001u;
|
|
/* 029267B8 */ if (_t196) goto L_0292676C; else goto L_029267BC;
|
|
L_029267BC: ; // 0x29267bc
|
|
/* 029267BC */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 029267C0 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 029267C0 */ _t197 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 029267C0 */ _t198 = _t197 >> (0x00000002u & 31u);
|
|
/* 029267C0 */ _t199 = _t198 & 0x00000001u;
|
|
/* 029267C0 */ if (_t199) goto L_029267A4; else goto L_029267C4;
|
|
L_029267C4: ; // 0x29267c4
|
|
/* 029267C4 */ _t200 = cpu->r[1] + 0x00000088u;
|
|
/* 029267C4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t200);
|
|
/* 029267C8 */ _t201 = cpu->r[1] + 0x0000002Cu;
|
|
/* 029267C8 */ rbrew_write32(cpu->mem, _t201, cpu->r[29]);
|
|
/* 029267CC */ _t202 = cpu->r[1] + 0x00000028u;
|
|
/* 029267CC */ rbrew_write32(cpu->mem, _t202, cpu->r[27]);
|
|
/* 029267D0 */ _t203 = cpu->r[8] + 0x00000014u;
|
|
/* 029267D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t203);
|
|
/* 029267D4 */ cpu->ctr = cpu->r[0];
|
|
/* 029267D8 */ cpu->r[3] = cpu->r[1] + 0x00000084u;
|
|
/* 029267DC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 029267E0 */ _t204 = cpu->r[1] + 0x00000084u;
|
|
/* 029267E0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t204);
|
|
/* 029267E4 */ cpu->r[8] = cpu->r[28];
|
|
/* 029267E8 */ _t205 = cpu->r[10] + 0x00000000u;
|
|
/* 029267E8 */ cpu->r[9] = rbrew_read8(cpu->mem, _t205);
|
|
/* 029267EC */ cpu->r[21] = 0x00000000u;
|
|
/* 029267F0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[8]);
|
|
/* 029267F4 */ cpu->r[11] = 0x00080000u;
|
|
/* 029267F8 */ _t206 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029267F8 */ _t207 = _t206 & 0x00000001u;
|
|
/* 029267F8 */ if (_t207) goto L_029267FC; else goto L_029268B0;
|
|
L_029267FC: ; // 0x29267fc
|
|
/* 029267FC */ goto L_02926904;
|
|
L_02926800: ; // 0x2926800
|
|
/* 02926800 */ cpu->r[23] = cpu->r[23] + 0xFFFFFFFFu;
|
|
/* 02926804 */ cpu->r[0] = cpu->r[23];
|
|
/* 02926808 */ cpu->r[27] = cpu->r[1] + 0x00000194u;
|
|
/* 0292680C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000040u);
|
|
/* 02926810 */ cpu->r[9] = cpu->r[27];
|
|
/* 02926814 */ _t208 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02926814 */ _t209 = _t208 & 0x00000001u;
|
|
/* 02926814 */ if (_t209) goto L_02926818; else goto L_02926820;
|
|
L_02926818: ; // 0x2926818
|
|
/* 02926818 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0292681C */ cpu->r[9] = cpu->r[27] + cpu->r[10];
|
|
L_02926820: ; // 0x2926820
|
|
/* 02926820 */ _t210 = cpu->r[9] + 0x00000000u;
|
|
/* 02926820 */ cpu->r[11] = rbrew_read32(cpu->mem, _t210);
|
|
/* 02926824 */ _t211 = cpu->r[1] + 0x00000020u;
|
|
/* 02926824 */ cpu->r[7] = rbrew_read32(cpu->mem, _t211);
|
|
/* 02926828 */ cpu->r[25] = cpu->r[25] - cpu->r[11];
|
|
/* 0292682C */ _t212 = cpu->r[7] + 0x00000008u;
|
|
/* 0292682C */ cpu->r[12] = rbrew_read32(cpu->mem, _t212);
|
|
/* 02926830 */ cpu->r[0] = cpu->r[25];
|
|
/* 02926834 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], cpu->r[12]);
|
|
/* 02926838 */ _t213 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02926838 */ _t214 = _t213 & 0x00000001u;
|
|
/* 02926838 */ if (_t214) goto L_02926890; else goto L_0292683C;
|
|
L_0292683C: ; // 0x292683c
|
|
/* 0292683C */ _t215 = cpu->r[1] + 0x00000020u;
|
|
/* 0292683C */ cpu->r[3] = rbrew_read32(cpu->mem, _t215);
|
|
/* 02926840 */ _t216 = cpu->r[3] + 0x00000004u;
|
|
/* 02926840 */ cpu->r[5] = rbrew_read32(cpu->mem, _t216);
|
|
/* 02926844 */ _t217 = cpu->r[5] + 0x00000014u;
|
|
/* 02926844 */ cpu->r[6] = rbrew_read32(cpu->mem, _t217);
|
|
/* 02926848 */ cpu->ctr = cpu->r[6];
|
|
/* 0292684C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02926850 */ _t218 = cpu->r[1] + 0x00000020u;
|
|
/* 02926850 */ cpu->r[11] = rbrew_read32(cpu->mem, _t218);
|
|
/* 02926854 */ _t219 = cpu->r[1] + 0x00000008u;
|
|
/* 02926854 */ cpu->r[5] = rbrew_read8(cpu->mem, _t219);
|
|
/* 02926858 */ _t220 = cpu->r[11] + 0x00000000u;
|
|
/* 02926858 */ cpu->r[6] = rbrew_read32(cpu->mem, _t220);
|
|
/* 0292685C */ _t221 = cpu->r[6] + 0x00000000u;
|
|
/* 0292685C */ cpu->r[7] = rbrew_read8(cpu->mem, _t221);
|
|
/* 02926860 */ cpu->r[12] = 0x00000000u;
|
|
/* 02926864 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[5]);
|
|
/* 02926868 */ cpu->r[0] = 0x00080000u;
|
|
/* 0292686C */ _t222 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292686C */ _t223 = _t222 & 0x00000001u;
|
|
/* 0292686C */ if (_t223) goto L_029264C0; else goto L_02926870;
|
|
L_02926870: ; // 0x2926870
|
|
/* 02926870 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 02926874 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], cpu->r[0]);
|
|
/* 02926878 */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 0292687C */ _t224 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0292687C */ _t225 = _t224 & 0x00000001u;
|
|
/* 0292687C */ if (_t225) goto L_029264B8; else goto L_02926880;
|
|
L_02926880: ; // 0x2926880
|
|
/* 02926880 */ _t226 = cpu->r[6] + 0x00000000u;
|
|
/* 02926880 */ cpu->r[7] = rbrew_read8(cpu->mem, _t226);
|
|
/* 02926884 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[5]);
|
|
/* 02926888 */ _t227 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02926888 */ _t228 = _t227 & 0x00000001u;
|
|
/* 02926888 */ if (_t228) goto L_0292688C; else goto L_02926870;
|
|
L_0292688C: ; // 0x292688c
|
|
/* 0292688C */ goto L_029264C0;
|
|
L_02926890: ; // 0x2926890
|
|
/* 02926890 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02926894 */ _t229 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02926894 */ _t230 = _t229 & 0x00000001u;
|
|
/* 02926894 */ if (_t230) goto L_02926898; else goto L_0292689C;
|
|
L_02926898: ; // 0x2926898
|
|
/* 02926898 */ cpu->r[0] = 0x00000000u;
|
|
L_0292689C: ; // 0x292689c
|
|
/* 0292689C */ _t231 = cpu->r[1] + 0x00000020u;
|
|
/* 0292689C */ cpu->r[6] = rbrew_read32(cpu->mem, _t231);
|
|
/* 029268A0 */ _t232 = cpu->r[1] + 0x00000008u;
|
|
/* 029268A0 */ cpu->r[5] = rbrew_read8(cpu->mem, _t232);
|
|
/* 029268A4 */ _t233 = cpu->r[6] + 0x00000000u;
|
|
/* 029268A4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t233);
|
|
/* 029268A8 */ _t234 = cpu->r[8] + cpu->r[0];
|
|
/* 029268A8 */ rbrew_write8(cpu->mem, _t234, (uint8_t)cpu->r[5]);
|
|
/* 029268AC */ goto L_029264B8;
|
|
L_029268B0: ; // 0x29268b0
|
|
/* 029268B0 */ cpu->r[21] = cpu->r[21] + 0x00000001u;
|
|
/* 029268B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], cpu->r[11]);
|
|
/* 029268B8 */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 029268BC */ _t235 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 029268BC */ _t236 = _t235 & 0x00000001u;
|
|
/* 029268BC */ if (_t236) goto L_02926900; else goto L_029268C0;
|
|
L_029268C0: ; // 0x29268c0
|
|
/* 029268C0 */ _t237 = cpu->r[10] + 0x00000000u;
|
|
/* 029268C0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t237);
|
|
/* 029268C4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[8]);
|
|
/* 029268C8 */ _t238 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029268C8 */ _t239 = _t238 & 0x00000001u;
|
|
/* 029268C8 */ if (_t239) goto L_029268CC; else goto L_029268B0;
|
|
L_029268CC: ; // 0x29268cc
|
|
/* 029268CC */ _t240 = cpu->r[1] + 0x0000002Cu;
|
|
/* 029268CC */ cpu->r[11] = rbrew_read32(cpu->mem, _t240);
|
|
/* 029268D0 */ _t241 = cpu->r[11] + 0x00000014u;
|
|
/* 029268D0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t241);
|
|
/* 029268D4 */ cpu->ctr = cpu->r[12];
|
|
/* 029268D8 */ cpu->r[3] = cpu->r[1] + 0x00000028u;
|
|
/* 029268DC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 029268E0 */ _t242 = cpu->r[1] + 0x00000028u;
|
|
/* 029268E0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t242);
|
|
/* 029268E4 */ cpu->r[7] = cpu->r[28];
|
|
/* 029268E8 */ _t243 = cpu->r[8] + 0x00000000u;
|
|
/* 029268E8 */ cpu->r[6] = rbrew_read8(cpu->mem, _t243);
|
|
/* 029268EC */ cpu->r[27] = 0x00000000u;
|
|
/* 029268F0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[7]);
|
|
/* 029268F4 */ cpu->r[9] = 0x00080000u;
|
|
/* 029268F8 */ _t244 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029268F8 */ _t245 = _t244 & 0x00000001u;
|
|
/* 029268F8 */ if (_t245) goto L_029268FC; else goto L_02926934;
|
|
L_029268FC: ; // 0x29268fc
|
|
/* 029268FC */ goto L_02926964;
|
|
L_02926900: ; // 0x2926900
|
|
/* 02926900 */ cpu->r[21] = 0x00000000u;
|
|
L_02926904: ; // 0x2926904
|
|
/* 02926904 */ _t246 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02926904 */ cpu->r[11] = rbrew_read32(cpu->mem, _t246);
|
|
/* 02926908 */ _t247 = cpu->r[11] + 0x00000014u;
|
|
/* 02926908 */ cpu->r[12] = rbrew_read32(cpu->mem, _t247);
|
|
/* 0292690C */ cpu->ctr = cpu->r[12];
|
|
/* 02926910 */ cpu->r[3] = cpu->r[1] + 0x00000028u;
|
|
/* 02926914 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02926918 */ _t248 = cpu->r[1] + 0x00000028u;
|
|
/* 02926918 */ cpu->r[8] = rbrew_read32(cpu->mem, _t248);
|
|
/* 0292691C */ cpu->r[7] = cpu->r[28];
|
|
/* 02926920 */ _t249 = cpu->r[8] + 0x00000000u;
|
|
/* 02926920 */ cpu->r[6] = rbrew_read8(cpu->mem, _t249);
|
|
/* 02926924 */ cpu->r[27] = 0x00000000u;
|
|
/* 02926928 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[7]);
|
|
/* 0292692C */ cpu->r[9] = 0x00080000u;
|
|
/* 02926930 */ _t250 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02926930 */ _t251 = _t250 & 0x00000001u;
|
|
/* 02926930 */ if (_t251) goto L_02926964; else goto L_02926934;
|
|
L_02926934: ; // 0x2926934
|
|
/* 02926934 */ cpu->r[27] = cpu->r[27] + 0x00000001u;
|
|
/* 02926938 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], cpu->r[9]);
|
|
/* 0292693C */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 02926940 */ _t252 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02926940 */ _t253 = _t252 & 0x00000001u;
|
|
/* 02926940 */ if (_t253) goto L_02926960; else goto L_02926944;
|
|
L_02926944: ; // 0x2926944
|
|
/* 02926944 */ _t254 = cpu->r[8] + 0x00000000u;
|
|
/* 02926944 */ cpu->r[0] = rbrew_read8(cpu->mem, _t254);
|
|
/* 02926948 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 0292694C */ _t255 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292694C */ _t256 = _t255 & 0x00000001u;
|
|
/* 0292694C */ if (_t256) goto L_02926950; else goto L_02926934;
|
|
L_02926950: ; // 0x2926950
|
|
/* 02926950 */ cpu->r[0] = cpu->r[21] - cpu->r[27];
|
|
/* 02926950 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02926954 */ cpu->r[21] = 0x00000000u;
|
|
/* 02926958 */ _t257 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02926958 */ _t258 = _t257 & 0x00000001u;
|
|
/* 02926958 */ if (_t258) goto L_0292695C; else goto L_02926970;
|
|
L_0292695C: ; // 0x292695c
|
|
/* 0292695C */ goto L_02926A3C;
|
|
L_02926960: ; // 0x2926960
|
|
/* 02926960 */ cpu->r[27] = 0x00000000u;
|
|
L_02926964: ; // 0x2926964
|
|
/* 02926964 */ cpu->r[0] = cpu->r[21] - cpu->r[27];
|
|
/* 02926964 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02926968 */ cpu->r[21] = 0x00000000u;
|
|
/* 0292696C */ _t259 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0292696C */ _t260 = _t259 & 0x00000001u;
|
|
/* 0292696C */ if (_t260) goto L_02926A3C; else goto L_02926970;
|
|
L_02926970: ; // 0x2926970
|
|
/* 02926970 */ cpu->r[20] = cpu->r[0];
|
|
/* 02926974 */ cpu->r[19] = cpu->r[28];
|
|
L_02926978: ; // 0x2926978
|
|
/* 02926978 */ _t261 = cpu->r[1] + 0x00000084u;
|
|
/* 02926978 */ cpu->r[8] = rbrew_read32(cpu->mem, _t261);
|
|
/* 0292697C */ _t262 = cpu->r[1] + 0x00000034u;
|
|
/* 0292697C */ rbrew_write32(cpu->mem, _t262, cpu->r[29]);
|
|
/* 02926980 */ cpu->r[7] = cpu->r[8] + cpu->r[21];
|
|
/* 02926984 */ cpu->r[3] = cpu->r[1] + 0x00000030u;
|
|
/* 02926988 */ _t263 = cpu->r[1] + 0x00000030u;
|
|
/* 02926988 */ rbrew_write32(cpu->mem, _t263, cpu->r[7]);
|
|
/* 0292698C */ Gambit_fn_02928BD0(cpu);
|
|
/* 02926990 */ _t264 = cpu->r[1] + 0x00000034u;
|
|
/* 02926990 */ cpu->r[9] = rbrew_read32(cpu->mem, _t264);
|
|
/* 02926994 */ _t265 = cpu->r[9] + 0x00000014u;
|
|
/* 02926994 */ cpu->r[0] = rbrew_read32(cpu->mem, _t265);
|
|
/* 02926998 */ cpu->ctr = cpu->r[0];
|
|
/* 0292699C */ cpu->r[3] = cpu->r[1] + 0x00000030u;
|
|
/* 029269A0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 029269A4 */ _t266 = cpu->r[1] + 0x0000002Cu;
|
|
/* 029269A4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t266);
|
|
/* 029269A8 */ _t267 = cpu->r[10] + 0x00000014u;
|
|
/* 029269A8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t267);
|
|
/* 029269AC */ cpu->ctr = cpu->r[11];
|
|
/* 029269B0 */ _t268 = cpu->r[1] + 0x00000030u;
|
|
/* 029269B0 */ cpu->r[18] = rbrew_read32(cpu->mem, _t268);
|
|
/* 029269B4 */ cpu->r[3] = cpu->r[1] + 0x00000028u;
|
|
/* 029269B8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 029269BC */ _t269 = cpu->r[1] + 0x00000028u;
|
|
/* 029269BC */ cpu->r[12] = rbrew_read32(cpu->mem, _t269);
|
|
/* 029269C0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[18], cpu->r[12]);
|
|
/* 029269C4 */ _t270 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029269C4 */ _t271 = _t270 & 0x00000001u;
|
|
/* 029269C4 */ if (_t271) goto L_02926A1C; else goto L_029269C8;
|
|
L_029269C8: ; // 0x29269c8
|
|
/* 029269C8 */ cpu->r[6] = cpu->r[27];
|
|
/* 029269C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 029269CC */ _t272 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 029269CC */ _t273 = _t272 & 0x00000001u;
|
|
/* 029269CC */ if (_t273) goto L_029269D0; else goto L_02926A1C;
|
|
L_029269D0: ; // 0x29269d0
|
|
/* 029269D0 */ _t274 = cpu->r[1] + 0x00000028u;
|
|
/* 029269D0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t274);
|
|
/* 029269D4 */ cpu->ctr = cpu->r[6];
|
|
/* 029269D8 */ _t275 = cpu->r[1] + 0x00000030u;
|
|
/* 029269D8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t275);
|
|
/* 029269DC */ cpu->r[0] = cpu->r[19];
|
|
L_029269E0: ; // 0x29269e0
|
|
/* 029269E0 */ _t276 = cpu->r[7] + 0x00000000u;
|
|
/* 029269E0 */ cpu->r[6] = rbrew_read8(cpu->mem, _t276);
|
|
/* 029269E4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[0]);
|
|
/* 029269E8 */ _t277 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029269E8 */ _t278 = _t277 & 0x00000001u;
|
|
/* 029269E8 */ if (_t278) goto L_029269EC; else goto L_029269FC;
|
|
L_029269EC: ; // 0x29269ec
|
|
/* 029269EC */ _t279 = cpu->r[12] + 0x00000000u;
|
|
/* 029269EC */ cpu->r[5] = rbrew_read8(cpu->mem, _t279);
|
|
/* 029269F0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[0]);
|
|
/* 029269F4 */ _t280 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029269F4 */ _t281 = _t280 & 0x00000001u;
|
|
/* 029269F4 */ if (_t281) goto L_02926A1C; else goto L_029269F8;
|
|
L_029269F8: ; // 0x29269f8
|
|
/* 029269F8 */ goto L_02926A30;
|
|
L_029269FC: ; // 0x29269fc
|
|
/* 029269FC */ _t282 = cpu->r[12] + 0x00000000u;
|
|
/* 029269FC */ cpu->r[5] = rbrew_read8(cpu->mem, _t282);
|
|
/* 02926A00 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[0]);
|
|
/* 02926A04 */ _t283 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02926A04 */ _t284 = _t283 & 0x00000001u;
|
|
/* 02926A04 */ if (_t284) goto L_02926A30; else goto L_02926A08;
|
|
L_02926A08: ; // 0x2926a08
|
|
/* 02926A08 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[6]);
|
|
/* 02926A0C */ _t285 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02926A0C */ _t286 = _t285 & 0x00000001u;
|
|
/* 02926A0C */ if (_t286) goto L_02926A10; else goto L_02926A30;
|
|
L_02926A10: ; // 0x2926a10
|
|
/* 02926A10 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 02926A14 */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 02926A18 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02926A18 */ _t287 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02926A18 */ _t288 = _t287 >> (0x00000002u & 31u);
|
|
/* 02926A18 */ _t289 = _t288 & 0x00000001u;
|
|
/* 02926A18 */ if (_t289) goto L_029269E0; else goto L_02926A1C;
|
|
L_02926A1C: ; // 0x2926a1c
|
|
/* 02926A1C */ _t290 = cpu->r[21] | cpu->r[21];
|
|
/* 02926A1C */ cpu->r[6] = ~_t290;
|
|
/* 02926A20 */ cpu->r[7] = cpu->r[6] + 0xFFFFFFFFu;
|
|
/* 02926A24 */ cpu->r[10] = cpu->r[6] - cpu->r[7];
|
|
/* 02926A24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02926A28 */ _t291 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02926A28 */ _t292 = _t291 & 0x00000001u;
|
|
/* 02926A28 */ if (_t292) goto L_02926A2C; else goto L_029264D8;
|
|
L_02926A2C: ; // 0x2926a2c
|
|
/* 02926A2C */ goto L_02926A4C;
|
|
L_02926A30: ; // 0x2926a30
|
|
/* 02926A30 */ cpu->r[21] = cpu->r[21] + 0x00000001u;
|
|
/* 02926A34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], cpu->r[20]);
|
|
/* 02926A38 */ _t293 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02926A38 */ _t294 = _t293 & 0x00000001u;
|
|
/* 02926A38 */ if (_t294) goto L_02926A3C; else goto L_02926978;
|
|
L_02926A3C: ; // 0x2926a3c
|
|
/* 02926A3C */ cpu->r[6] = 0x00000000u;
|
|
/* 02926A40 */ cpu->r[7] = cpu->r[6] + 0xFFFFFFFFu;
|
|
/* 02926A44 */ cpu->r[10] = ~cpu->r[7];
|
|
/* 02926A44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02926A48 */ _t295 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02926A48 */ _t296 = _t295 & 0x00000001u;
|
|
/* 02926A48 */ if (_t296) goto L_02926A4C; else goto L_029264D8;
|
|
L_02926A4C: ; // 0x2926a4c
|
|
/* 02926A4C */ cpu->r[11] = cpu->r[22] + 0x00003F64u;
|
|
/* 02926A50 */ cpu->r[10] = cpu->r[14] - cpu->r[25];
|
|
/* 02926A50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02926A54 */ cpu->r[27] = cpu->r[15] + cpu->r[25];
|
|
/* 02926A58 */ _t297 = cpu->r[1] + 0x00000054u;
|
|
/* 02926A58 */ rbrew_write32(cpu->mem, _t297, cpu->r[11]);
|
|
/* 02926A5C */ _t298 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02926A5C */ _t299 = _t298 & 0x00000001u;
|
|
/* 02926A5C */ if (_t299) goto L_02926AA0; else goto L_02926A60;
|
|
L_02926A60: ; // 0x2926a60
|
|
/* 02926A60 */ cpu->r[27] = 0x00000000u;
|
|
/* 02926A64 */ cpu->r[0] = 0x00000000u;
|
|
/* 02926A68 */ _t300 = cpu->r[1] + 0x00000050u;
|
|
/* 02926A68 */ rbrew_write32(cpu->mem, _t300, cpu->r[27]);
|
|
/* 02926A6C */ _t301 = cpu->r[1] + 0x00000058u;
|
|
/* 02926A6C */ rbrew_write32(cpu->mem, _t301, cpu->r[0]);
|
|
/* 02926A70 */ _t302 = cpu->r[11] + 0x00000014u;
|
|
/* 02926A70 */ cpu->r[9] = rbrew_read32(cpu->mem, _t302);
|
|
/* 02926A74 */ cpu->ctr = cpu->r[9];
|
|
/* 02926A78 */ cpu->r[3] = cpu->r[1] + 0x00000050u;
|
|
/* 02926A7C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02926A80 */ _t303 = cpu->r[1] + 0x00000050u;
|
|
/* 02926A80 */ cpu->r[11] = rbrew_read32(cpu->mem, _t303);
|
|
/* 02926A84 */ cpu->r[6] = cpu->r[28];
|
|
/* 02926A88 */ _t304 = cpu->r[11] + 0x00000000u;
|
|
/* 02926A88 */ cpu->r[10] = rbrew_read8(cpu->mem, _t304);
|
|
/* 02926A8C */ cpu->r[21] = 0x00000000u;
|
|
/* 02926A90 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[6]);
|
|
/* 02926A94 */ cpu->r[0] = 0x00080000u;
|
|
/* 02926A98 */ _t305 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02926A98 */ _t306 = _t305 & 0x00000001u;
|
|
/* 02926A98 */ if (_t306) goto L_02926A9C; else goto L_02926AE4;
|
|
L_02926A9C: ; // 0x2926a9c
|
|
/* 02926A9C */ goto L_02926B18;
|
|
L_02926AA0: ; // 0x2926aa0
|
|
/* 02926AA0 */ _t307 = cpu->r[1] + 0x00000058u;
|
|
/* 02926AA0 */ rbrew_write32(cpu->mem, _t307, cpu->r[10]);
|
|
/* 02926AA4 */ cpu->r[8] = cpu->r[27] + cpu->r[10];
|
|
/* 02926AA8 */ _t308 = cpu->r[1] + 0x00000050u;
|
|
/* 02926AA8 */ rbrew_write32(cpu->mem, _t308, cpu->r[27]);
|
|
/* 02926AAC */ _t309 = cpu->r[8] + 0xFFFFFFFFu;
|
|
/* 02926AAC */ rbrew_write8(cpu->mem, _t309, (uint8_t)cpu->r[28]);
|
|
/* 02926AB0 */ _t310 = cpu->r[1] + 0x00000054u;
|
|
/* 02926AB0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t310);
|
|
/* 02926AB4 */ _t311 = cpu->r[11] + 0x00000014u;
|
|
/* 02926AB4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t311);
|
|
/* 02926AB8 */ cpu->ctr = cpu->r[9];
|
|
/* 02926ABC */ _t312 = cpu->r[1] + 0x00000050u;
|
|
/* 02926ABC */ cpu->r[27] = rbrew_read32(cpu->mem, _t312);
|
|
/* 02926AC0 */ cpu->r[3] = cpu->r[1] + 0x00000050u;
|
|
/* 02926AC4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02926AC8 */ _t313 = cpu->r[1] + 0x00000050u;
|
|
/* 02926AC8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t313);
|
|
/* 02926ACC */ cpu->r[6] = cpu->r[28];
|
|
/* 02926AD0 */ _t314 = cpu->r[11] + 0x00000000u;
|
|
/* 02926AD0 */ cpu->r[10] = rbrew_read8(cpu->mem, _t314);
|
|
/* 02926AD4 */ cpu->r[21] = 0x00000000u;
|
|
/* 02926AD8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[6]);
|
|
/* 02926ADC */ cpu->r[0] = 0x00080000u;
|
|
/* 02926AE0 */ _t315 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02926AE0 */ _t316 = _t315 & 0x00000001u;
|
|
/* 02926AE0 */ if (_t316) goto L_02926B18; else goto L_02926AE4;
|
|
L_02926AE4: ; // 0x2926ae4
|
|
/* 02926AE4 */ cpu->r[21] = cpu->r[21] + 0x00000001u;
|
|
/* 02926AE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], cpu->r[0]);
|
|
/* 02926AEC */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 02926AF0 */ _t317 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02926AF0 */ _t318 = _t317 & 0x00000001u;
|
|
/* 02926AF0 */ if (_t318) goto L_02926B14; else goto L_02926AF4;
|
|
L_02926AF4: ; // 0x2926af4
|
|
/* 02926AF4 */ _t319 = cpu->r[11] + 0x00000000u;
|
|
/* 02926AF4 */ cpu->r[12] = rbrew_read8(cpu->mem, _t319);
|
|
/* 02926AF8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[6]);
|
|
/* 02926AFC */ _t320 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02926AFC */ _t321 = _t320 & 0x00000001u;
|
|
/* 02926AFC */ if (_t321) goto L_02926B00; else goto L_02926AE4;
|
|
L_02926B00: ; // 0x2926b00
|
|
/* 02926B00 */ _t322 = cpu->r[1] + 0x00000088u;
|
|
/* 02926B00 */ cpu->r[6] = rbrew_read32(cpu->mem, _t322);
|
|
/* 02926B04 */ cpu->r[19] = cpu->r[21];
|
|
/* 02926B04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[19], 0x00000000u);
|
|
/* 02926B08 */ _t323 = cpu->r[6] + 0x00000014u;
|
|
/* 02926B08 */ cpu->r[7] = rbrew_read32(cpu->mem, _t323);
|
|
/* 02926B0C */ _t324 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02926B0C */ _t325 = _t324 & 0x00000001u;
|
|
/* 02926B0C */ if (_t325) goto L_02926B10; else goto L_02926B2C;
|
|
L_02926B10: ; // 0x2926b10
|
|
/* 02926B10 */ goto L_02926B28;
|
|
L_02926B14: ; // 0x2926b14
|
|
/* 02926B14 */ cpu->r[21] = 0x00000000u;
|
|
L_02926B18: ; // 0x2926b18
|
|
/* 02926B18 */ _t326 = cpu->r[1] + 0x00000088u;
|
|
/* 02926B18 */ cpu->r[6] = rbrew_read32(cpu->mem, _t326);
|
|
/* 02926B1C */ cpu->r[19] = cpu->r[21];
|
|
/* 02926B1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[19], 0x00000000u);
|
|
/* 02926B20 */ _t327 = cpu->r[6] + 0x00000014u;
|
|
/* 02926B20 */ cpu->r[7] = rbrew_read32(cpu->mem, _t327);
|
|
/* 02926B24 */ _t328 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02926B24 */ _t329 = _t328 & 0x00000001u;
|
|
/* 02926B24 */ if (_t329) goto L_02926B28; else goto L_02926B2C;
|
|
L_02926B28: ; // 0x2926b28
|
|
/* 02926B28 */ cpu->r[19] = 0x00000000u;
|
|
L_02926B2C: ; // 0x2926b2c
|
|
/* 02926B2C */ cpu->ctr = cpu->r[7];
|
|
/* 02926B30 */ cpu->r[3] = cpu->r[1] + 0x00000084u;
|
|
/* 02926B34 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02926B38 */ _t330 = cpu->r[1] + 0x00000084u;
|
|
/* 02926B38 */ cpu->r[9] = rbrew_read32(cpu->mem, _t330);
|
|
/* 02926B3C */ cpu->r[5] = cpu->r[28];
|
|
/* 02926B40 */ _t331 = cpu->r[9] + 0x00000000u;
|
|
/* 02926B40 */ cpu->r[8] = rbrew_read8(cpu->mem, _t331);
|
|
/* 02926B44 */ cpu->r[20] = 0x00000000u;
|
|
/* 02926B48 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[5]);
|
|
/* 02926B4C */ cpu->r[10] = 0x00080000u;
|
|
/* 02926B50 */ _t332 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02926B50 */ _t333 = _t332 & 0x00000001u;
|
|
/* 02926B50 */ if (_t333) goto L_02926B88; else goto L_02926B54;
|
|
L_02926B54: ; // 0x2926b54
|
|
/* 02926B54 */ cpu->r[20] = cpu->r[20] + 0x00000001u;
|
|
/* 02926B58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[20], cpu->r[10]);
|
|
/* 02926B5C */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 02926B60 */ _t334 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02926B60 */ _t335 = _t334 & 0x00000001u;
|
|
/* 02926B60 */ if (_t335) goto L_02926B84; else goto L_02926B64;
|
|
L_02926B64: ; // 0x2926b64
|
|
/* 02926B64 */ _t336 = cpu->r[9] + 0x00000000u;
|
|
/* 02926B64 */ cpu->r[0] = rbrew_read8(cpu->mem, _t336);
|
|
/* 02926B68 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[5]);
|
|
/* 02926B6C */ _t337 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02926B6C */ _t338 = _t337 & 0x00000001u;
|
|
/* 02926B6C */ if (_t338) goto L_02926B70; else goto L_02926B54;
|
|
L_02926B70: ; // 0x2926b70
|
|
/* 02926B70 */ _t339 = cpu->r[1] + 0x00000058u;
|
|
/* 02926B70 */ cpu->r[10] = rbrew_read32(cpu->mem, _t339);
|
|
/* 02926B74 */ cpu->r[7] = cpu->r[10] - cpu->r[19];
|
|
/* 02926B78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[20], cpu->r[7]);
|
|
/* 02926B7C */ _t340 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02926B7C */ _t341 = _t340 & 0x00000001u;
|
|
/* 02926B7C */ if (_t341) goto L_02926B9C; else goto L_02926B80;
|
|
L_02926B80: ; // 0x2926b80
|
|
/* 02926B80 */ goto L_02926B98;
|
|
L_02926B84: ; // 0x2926b84
|
|
/* 02926B84 */ cpu->r[20] = 0x00000000u;
|
|
L_02926B88: ; // 0x2926b88
|
|
/* 02926B88 */ _t342 = cpu->r[1] + 0x00000058u;
|
|
/* 02926B88 */ cpu->r[10] = rbrew_read32(cpu->mem, _t342);
|
|
/* 02926B8C */ cpu->r[7] = cpu->r[10] - cpu->r[19];
|
|
/* 02926B90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[20], cpu->r[7]);
|
|
/* 02926B94 */ _t343 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02926B94 */ _t344 = _t343 & 0x00000001u;
|
|
/* 02926B94 */ if (_t344) goto L_02926B9C; else goto L_02926B98;
|
|
L_02926B98: ; // 0x2926b98
|
|
/* 02926B98 */ cpu->r[20] = cpu->r[7] + 0xFFFFFFFFu;
|
|
L_02926B9C: ; // 0x2926b9c
|
|
/* 02926B9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[20], 0x00000000u);
|
|
/* 02926BA0 */ _t345 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02926BA0 */ _t346 = _t345 & 0x00000001u;
|
|
/* 02926BA0 */ if (_t346) goto L_02926BBC; else goto L_02926BA4;
|
|
L_02926BA4: ; // 0x2926ba4
|
|
/* 02926BA4 */ cpu->r[11] = cpu->r[22] + 0x00003F64u;
|
|
/* 02926BA8 */ cpu->r[27] = cpu->r[15] + cpu->r[25];
|
|
/* 02926BAC */ cpu->r[10] = cpu->r[14] - cpu->r[25];
|
|
/* 02926BAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02926BB0 */ _t347 = cpu->r[1] + 0x00000054u;
|
|
/* 02926BB0 */ rbrew_write32(cpu->mem, _t347, cpu->r[11]);
|
|
/* 02926BB4 */ _t348 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02926BB4 */ _t349 = _t348 & 0x00000001u;
|
|
/* 02926BB4 */ if (_t349) goto L_02926BB8; else goto L_02926C10;
|
|
L_02926BB8: ; // 0x2926bb8
|
|
/* 02926BB8 */ goto L_02926C50;
|
|
L_02926BBC: ; // 0x2926bbc
|
|
/* 02926BBC */ _t350 = cpu->r[1] + 0x00000088u;
|
|
/* 02926BBC */ cpu->r[9] = rbrew_read32(cpu->mem, _t350);
|
|
/* 02926BC0 */ _t351 = cpu->r[9] + 0x00000014u;
|
|
/* 02926BC0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t351);
|
|
/* 02926BC4 */ cpu->ctr = cpu->r[0];
|
|
/* 02926BC8 */ cpu->r[18] = cpu->r[27] + cpu->r[19];
|
|
/* 02926BCC */ cpu->r[3] = cpu->r[1] + 0x00000084u;
|
|
/* 02926BD0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02926BD4 */ _t352 = cpu->r[1] + 0x00000084u;
|
|
/* 02926BD4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t352);
|
|
/* 02926BD8 */ cpu->r[6] = 0x00000000u;
|
|
/* 02926BDC */ cpu->r[5] = cpu->r[20];
|
|
/* 02926BE0 */ cpu->r[3] = cpu->r[18];
|
|
/* 02926BE4 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 02926BE8 */ cpu->r[12] = cpu->r[19] + cpu->r[20];
|
|
/* 02926BEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], cpu->r[21]);
|
|
/* 02926BF0 */ _t353 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02926BF0 */ _t354 = _t353 & 0x00000001u;
|
|
/* 02926BF0 */ if (_t354) goto L_02926BF4; else goto L_02926BF8;
|
|
L_02926BF4: ; // 0x2926bf4
|
|
/* 02926BF4 */ _t355 = cpu->r[27] + cpu->r[12];
|
|
/* 02926BF4 */ rbrew_write8(cpu->mem, _t355, (uint8_t)cpu->r[28]);
|
|
L_02926BF8: ; // 0x2926bf8
|
|
/* 02926BF8 */ cpu->r[25] = cpu->r[25] + cpu->r[20];
|
|
/* 02926BFC */ cpu->r[11] = cpu->r[22] + 0x00003F64u;
|
|
/* 02926C00 */ cpu->r[10] = cpu->r[14] - cpu->r[25];
|
|
/* 02926C00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02926C04 */ cpu->r[27] = cpu->r[15] + cpu->r[25];
|
|
/* 02926C08 */ _t356 = cpu->r[1] + 0x00000054u;
|
|
/* 02926C08 */ rbrew_write32(cpu->mem, _t356, cpu->r[11]);
|
|
/* 02926C0C */ _t357 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02926C0C */ _t358 = _t357 & 0x00000001u;
|
|
/* 02926C0C */ if (_t358) goto L_02926C50; else goto L_02926C10;
|
|
L_02926C10: ; // 0x2926c10
|
|
/* 02926C10 */ cpu->r[9] = 0x00000000u;
|
|
/* 02926C14 */ _t359 = cpu->r[1] + 0x00000050u;
|
|
/* 02926C14 */ rbrew_write32(cpu->mem, _t359, cpu->r[9]);
|
|
/* 02926C18 */ _t360 = cpu->r[1] + 0x00000058u;
|
|
/* 02926C18 */ rbrew_write32(cpu->mem, _t360, cpu->r[9]);
|
|
/* 02926C1C */ _t361 = cpu->r[11] + 0x00000014u;
|
|
/* 02926C1C */ cpu->r[11] = rbrew_read32(cpu->mem, _t361);
|
|
/* 02926C20 */ cpu->ctr = cpu->r[11];
|
|
/* 02926C24 */ cpu->r[3] = cpu->r[1] + 0x00000050u;
|
|
/* 02926C28 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02926C2C */ _t362 = cpu->r[1] + 0x00000050u;
|
|
/* 02926C2C */ cpu->r[27] = rbrew_read32(cpu->mem, _t362);
|
|
/* 02926C30 */ cpu->r[7] = cpu->r[27];
|
|
/* 02926C34 */ cpu->r[0] = cpu->r[28];
|
|
/* 02926C38 */ _t363 = cpu->r[7] + 0x00000000u;
|
|
/* 02926C38 */ cpu->r[12] = rbrew_read8(cpu->mem, _t363);
|
|
/* 02926C3C */ cpu->r[5] = 0x00000000u;
|
|
/* 02926C40 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[0]);
|
|
/* 02926C44 */ cpu->r[8] = 0x00080000u;
|
|
/* 02926C48 */ _t364 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02926C48 */ _t365 = _t364 & 0x00000001u;
|
|
/* 02926C48 */ if (_t365) goto L_02926C4C; else goto L_02926C94;
|
|
L_02926C4C: ; // 0x2926c4c
|
|
/* 02926C4C */ goto L_02926CC8;
|
|
L_02926C50: ; // 0x2926c50
|
|
/* 02926C50 */ _t366 = cpu->r[1] + 0x00000058u;
|
|
/* 02926C50 */ rbrew_write32(cpu->mem, _t366, cpu->r[10]);
|
|
/* 02926C54 */ cpu->r[10] = cpu->r[27] + cpu->r[10];
|
|
/* 02926C58 */ _t367 = cpu->r[1] + 0x00000050u;
|
|
/* 02926C58 */ rbrew_write32(cpu->mem, _t367, cpu->r[27]);
|
|
/* 02926C5C */ _t368 = cpu->r[10] + 0xFFFFFFFFu;
|
|
/* 02926C5C */ rbrew_write8(cpu->mem, _t368, (uint8_t)cpu->r[28]);
|
|
/* 02926C60 */ _t369 = cpu->r[1] + 0x00000054u;
|
|
/* 02926C60 */ cpu->r[11] = rbrew_read32(cpu->mem, _t369);
|
|
/* 02926C64 */ _t370 = cpu->r[11] + 0x00000014u;
|
|
/* 02926C64 */ cpu->r[11] = rbrew_read32(cpu->mem, _t370);
|
|
/* 02926C68 */ cpu->ctr = cpu->r[11];
|
|
/* 02926C6C */ cpu->r[3] = cpu->r[1] + 0x00000050u;
|
|
/* 02926C70 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02926C74 */ _t371 = cpu->r[1] + 0x00000050u;
|
|
/* 02926C74 */ cpu->r[27] = rbrew_read32(cpu->mem, _t371);
|
|
/* 02926C78 */ cpu->r[7] = cpu->r[27];
|
|
/* 02926C7C */ cpu->r[0] = cpu->r[28];
|
|
/* 02926C80 */ _t372 = cpu->r[7] + 0x00000000u;
|
|
/* 02926C80 */ cpu->r[12] = rbrew_read8(cpu->mem, _t372);
|
|
/* 02926C84 */ cpu->r[5] = 0x00000000u;
|
|
/* 02926C88 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[0]);
|
|
/* 02926C8C */ cpu->r[8] = 0x00080000u;
|
|
/* 02926C90 */ _t373 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02926C90 */ _t374 = _t373 & 0x00000001u;
|
|
/* 02926C90 */ if (_t374) goto L_02926C4C; else goto L_02926C94;
|
|
L_02926C94: ; // 0x2926c94
|
|
/* 02926C94 */ cpu->r[5] = cpu->r[5] + 0x00000001u;
|
|
/* 02926C98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], cpu->r[8]);
|
|
/* 02926C9C */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 02926CA0 */ _t375 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02926CA0 */ _t376 = _t375 & 0x00000001u;
|
|
/* 02926CA0 */ if (_t376) goto L_02926CC4; else goto L_02926CA4;
|
|
L_02926CA4: ; // 0x2926ca4
|
|
/* 02926CA4 */ _t377 = cpu->r[7] + 0x00000000u;
|
|
/* 02926CA4 */ cpu->r[6] = rbrew_read8(cpu->mem, _t377);
|
|
/* 02926CA8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[0]);
|
|
/* 02926CAC */ _t378 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02926CAC */ _t379 = _t378 & 0x00000001u;
|
|
/* 02926CAC */ if (_t379) goto L_02926CB0; else goto L_02926C94;
|
|
L_02926CB0: ; // 0x2926cb0
|
|
/* 02926CB0 */ _t380 = cpu->r[1] + 0x00000058u;
|
|
/* 02926CB0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t380);
|
|
/* 02926CB4 */ cpu->r[8] = cpu->r[9] + 0xFFFFFFFFu;
|
|
/* 02926CB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], cpu->r[8]);
|
|
/* 02926CBC */ _t381 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02926CBC */ _t382 = _t381 & 0x00000001u;
|
|
/* 02926CBC */ if (_t382) goto L_02926CC0; else goto L_02926CD8;
|
|
L_02926CC0: ; // 0x2926cc0
|
|
/* 02926CC0 */ goto L_02926CF4;
|
|
L_02926CC4: ; // 0x2926cc4
|
|
/* 02926CC4 */ cpu->r[5] = 0x00000000u;
|
|
L_02926CC8: ; // 0x2926cc8
|
|
/* 02926CC8 */ _t383 = cpu->r[1] + 0x00000058u;
|
|
/* 02926CC8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t383);
|
|
/* 02926CCC */ cpu->r[8] = cpu->r[9] + 0xFFFFFFFFu;
|
|
/* 02926CD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], cpu->r[8]);
|
|
/* 02926CD4 */ _t384 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02926CD4 */ _t385 = _t384 & 0x00000001u;
|
|
/* 02926CD4 */ if (_t385) goto L_02926CF4; else goto L_02926CD8;
|
|
L_02926CD8: ; // 0x2926cd8
|
|
/* 02926CD8 */ cpu->r[10] = cpu->r[23];
|
|
/* 02926CDC */ cpu->r[27] = cpu->r[1] + 0x00000194u;
|
|
/* 02926CE0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], 0x00000040u);
|
|
/* 02926CE4 */ cpu->r[12] = cpu->r[27];
|
|
/* 02926CE8 */ cpu->r[23] = cpu->r[23] + 0x00000001u;
|
|
/* 02926CEC */ _t386 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02926CEC */ _t387 = _t386 & 0x00000001u;
|
|
/* 02926CEC */ if (_t387) goto L_02926CF0; else goto L_02926D28;
|
|
L_02926CF0: ; // 0x2926cf0
|
|
/* 02926CF0 */ goto L_02926D20;
|
|
L_02926CF4: ; // 0x2926cf4
|
|
/* 02926CF4 */ cpu->r[10] = 0x0000002Fu;
|
|
/* 02926CF8 */ cpu->r[11] = cpu->r[27] + cpu->r[5];
|
|
/* 02926CFC */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 02926D00 */ _t388 = cpu->r[27] + cpu->r[5];
|
|
/* 02926D00 */ rbrew_write8(cpu->mem, _t388, (uint8_t)cpu->r[10]);
|
|
/* 02926D04 */ cpu->r[10] = cpu->r[23];
|
|
/* 02926D08 */ cpu->r[23] = cpu->r[23] + 0x00000001u;
|
|
/* 02926D0C */ cpu->r[27] = cpu->r[1] + 0x00000194u;
|
|
/* 02926D10 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], 0x00000040u);
|
|
/* 02926D14 */ _t389 = cpu->r[11] + 0x00000001u;
|
|
/* 02926D14 */ rbrew_write8(cpu->mem, _t389, (uint8_t)cpu->r[28]);
|
|
/* 02926D18 */ cpu->r[12] = cpu->r[27];
|
|
/* 02926D1C */ _t390 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02926D1C */ _t391 = _t390 & 0x00000001u;
|
|
/* 02926D1C */ if (_t391) goto L_02926D20; else goto L_02926D28;
|
|
L_02926D20: ; // 0x2926d20
|
|
/* 02926D20 */ cpu->r[6] = rbrew_rlwinm(cpu->r[10], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02926D24 */ cpu->r[12] = cpu->r[27] + cpu->r[6];
|
|
L_02926D28: ; // 0x2926d28
|
|
/* 02926D28 */ cpu->r[7] = cpu->r[26] + 0x00000001u;
|
|
/* 02926D2C */ _t392 = cpu->r[12] + 0x00000000u;
|
|
/* 02926D2C */ rbrew_write32(cpu->mem, _t392, cpu->r[7]);
|
|
/* 02926D30 */ cpu->r[7] = 0x00080000u;
|
|
/* 02926D34 */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 02926D38 */ _t393 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02926D38 */ rbrew_write32(cpu->mem, _t393, cpu->r[7]);
|
|
/* 02926D3C */ goto L_029264D8;
|
|
L_02926D40: ; // 0x2926d40
|
|
/* 02926D40 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[30]);
|
|
/* 02926D44 */ _t394 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02926D44 */ _t395 = _t394 & 0x00000001u;
|
|
/* 02926D44 */ if (_t395) goto L_02926D48; else goto L_029264EC;
|
|
L_02926D48: ; // 0x2926d48
|
|
/* 02926D48 */ _t396 = cpu->r[1] + 0x00000018u;
|
|
/* 02926D48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t396);
|
|
/* 02926D4C */ cpu->r[7] = 0x00000000u;
|
|
/* 02926D50 */ _t397 = cpu->r[1] + 0x00000010u;
|
|
/* 02926D50 */ cpu->r[6] = rbrew_read32(cpu->mem, _t397);
|
|
/* 02926D54 */ _t398 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02926D54 */ rbrew_write32(cpu->mem, _t398, cpu->r[7]);
|
|
/* 02926D58 */ _t399 = cpu->r[1] + 0x00000070u;
|
|
/* 02926D58 */ rbrew_write32(cpu->mem, _t399, cpu->r[6]);
|
|
/* 02926D5C */ _t400 = cpu->r[1] + 0x00000068u;
|
|
/* 02926D5C */ rbrew_write32(cpu->mem, _t400, cpu->r[3]);
|
|
/* 02926D60 */ _t401 = cpu->r[1] + 0x00000014u;
|
|
/* 02926D60 */ cpu->r[0] = rbrew_read32(cpu->mem, _t401);
|
|
/* 02926D64 */ _t402 = cpu->r[3] + 0x00000004u;
|
|
/* 02926D64 */ cpu->r[9] = rbrew_read32(cpu->mem, _t402);
|
|
/* 02926D68 */ _t403 = cpu->r[1] + 0x00000074u;
|
|
/* 02926D68 */ rbrew_write32(cpu->mem, _t403, cpu->r[0]);
|
|
/* 02926D6C */ _t404 = cpu->r[1] + 0x00000078u;
|
|
/* 02926D6C */ rbrew_write32(cpu->mem, _t404, cpu->r[29]);
|
|
/* 02926D70 */ _t405 = cpu->r[9] + 0x00000014u;
|
|
/* 02926D70 */ cpu->r[0] = rbrew_read32(cpu->mem, _t405);
|
|
/* 02926D74 */ cpu->ctr = cpu->r[0];
|
|
/* 02926D78 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02926D7C */ _t406 = cpu->r[1] + 0x00000018u;
|
|
/* 02926D7C */ cpu->r[12] = rbrew_read32(cpu->mem, _t406);
|
|
/* 02926D80 */ _t407 = cpu->r[12] + 0x00000000u;
|
|
/* 02926D80 */ cpu->r[11] = rbrew_read32(cpu->mem, _t407);
|
|
/* 02926D84 */ _t408 = cpu->r[1] + 0x00000024u;
|
|
/* 02926D84 */ cpu->r[0] = rbrew_read8(cpu->mem, _t408);
|
|
/* 02926D88 */ _t409 = cpu->r[11] + 0x00000000u;
|
|
/* 02926D88 */ cpu->r[10] = rbrew_read8(cpu->mem, _t409);
|
|
/* 02926D8C */ cpu->r[8] = 0x00000000u;
|
|
/* 02926D90 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[0]);
|
|
/* 02926D94 */ cpu->r[12] = 0x00080000u;
|
|
/* 02926D98 */ _t410 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02926D98 */ _t411 = _t410 & 0x00000001u;
|
|
/* 02926D98 */ if (_t411) goto L_02926438; else goto L_02926D9C;
|
|
L_02926D9C: ; // 0x2926d9c
|
|
/* 02926D9C */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 02926DA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], cpu->r[12]);
|
|
/* 02926DA4 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 02926DA8 */ _t412 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02926DA8 */ _t413 = _t412 & 0x00000001u;
|
|
/* 02926DA8 */ if (_t413) goto L_02926DC8; else goto L_02926DAC;
|
|
L_02926DAC: ; // 0x2926dac
|
|
/* 02926DAC */ _t414 = cpu->r[11] + 0x00000000u;
|
|
/* 02926DAC */ cpu->r[7] = rbrew_read8(cpu->mem, _t414);
|
|
/* 02926DB0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[0]);
|
|
/* 02926DB4 */ _t415 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02926DB4 */ _t416 = _t415 & 0x00000001u;
|
|
/* 02926DB4 */ if (_t416) goto L_02926DB8; else goto L_02926D9C;
|
|
L_02926DB8: ; // 0x2926db8
|
|
/* 02926DB8 */ _t417 = cpu->r[1] + 0x00000018u;
|
|
/* 02926DB8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t417);
|
|
/* 02926DBC */ cpu->r[30] = cpu->r[8] + 0x00000001u;
|
|
/* 02926DC0 */ cpu->r[27] = cpu->r[1] + 0x00000194u;
|
|
/* 02926DC4 */ goto L_02926DD8;
|
|
L_02926DC8: ; // 0x2926dc8
|
|
/* 02926DC8 */ cpu->r[8] = 0x00000000u;
|
|
L_02926DCC: ; // 0x2926dcc
|
|
/* 02926DCC */ _t418 = cpu->r[1] + 0x00000018u;
|
|
/* 02926DCC */ cpu->r[31] = rbrew_read32(cpu->mem, _t418);
|
|
/* 02926DD0 */ cpu->r[27] = cpu->r[1] + 0x00000194u;
|
|
/* 02926DD4 */ cpu->r[30] = cpu->r[8] + 0x00000001u;
|
|
L_02926DD8: ; // 0x2926dd8
|
|
/* 02926DD8 */ _t419 = cpu->r[1] + 0x00000024u;
|
|
/* 02926DD8 */ cpu->r[11] = rbrew_read8(cpu->mem, _t419);
|
|
/* 02926DDC */ _t420 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02926DDC */ rbrew_write8(cpu->mem, _t420, (uint8_t)cpu->r[11]);
|
|
L_02926DE0: ; // 0x2926de0
|
|
/* 02926DE0 */ cpu->r[0] = 0x00080000u;
|
|
/* 02926DE4 */ _t421 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02926DE4 */ cpu->r[28] = rbrew_read8(cpu->mem, _t421);
|
|
/* 02926DE8 */ cpu->r[10] = 0x00000000u;
|
|
/* 02926DEC */ cpu->r[0] = cpu->r[0] | 0x00000001u;
|
|
/* 02926DF0 */ _t422 = cpu->r[1] + 0x00000014u;
|
|
/* 02926DF0 */ rbrew_write32(cpu->mem, _t422, cpu->r[10]);
|
|
/* 02926DF4 */ cpu->r[8] = 0x0000002Fu;
|
|
/* 02926DF8 */ _t423 = cpu->r[1] + 0x00000010u;
|
|
/* 02926DF8 */ rbrew_write32(cpu->mem, _t423, cpu->r[0]);
|
|
/* 02926DFC */ _t424 = cpu->r[1] + 0x00000008u;
|
|
/* 02926DFC */ rbrew_write8(cpu->mem, _t424, (uint8_t)cpu->r[8]);
|
|
/* 02926E00 */ _t425 = cpu->r[1] + 0x00000010u;
|
|
/* 02926E00 */ cpu->r[7] = rbrew_read32(cpu->mem, _t425);
|
|
/* 02926E04 */ _t426 = cpu->r[1] + 0x00000068u;
|
|
/* 02926E04 */ cpu->r[26] = rbrew_read32(cpu->mem, _t426);
|
|
/* 02926E08 */ _t427 = cpu->r[1] + 0x00000008u;
|
|
/* 02926E08 */ rbrew_write32(cpu->mem, _t427, cpu->r[7]);
|
|
/* 02926E0C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], cpu->r[31]);
|
|
/* 02926E10 */ _t428 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02926E10 */ cpu->r[12] = rbrew_read32(cpu->mem, _t428);
|
|
/* 02926E14 */ _t429 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02926E14 */ _t430 = _t429 & 0x00000001u;
|
|
/* 02926E14 */ if (_t430) goto L_0292747C; else goto L_02926E18;
|
|
L_02926E18: ; // 0x2926e18
|
|
/* 02926E18 */ _t431 = cpu->r[26] + 0x00000004u;
|
|
/* 02926E18 */ cpu->r[9] = rbrew_read32(cpu->mem, _t431);
|
|
/* 02926E1C */ _t432 = cpu->r[9] + 0x00000014u;
|
|
/* 02926E1C */ cpu->r[11] = rbrew_read32(cpu->mem, _t432);
|
|
/* 02926E20 */ cpu->ctr = cpu->r[11];
|
|
/* 02926E24 */ cpu->r[3] = cpu->r[26];
|
|
/* 02926E28 */ cpu->r[19] = cpu->r[12];
|
|
/* 02926E2C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02926E30 */ _t433 = cpu->r[26] + 0x00000000u;
|
|
/* 02926E30 */ cpu->r[7] = rbrew_read32(cpu->mem, _t433);
|
|
/* 02926E34 */ cpu->r[10] = cpu->r[28];
|
|
/* 02926E38 */ _t434 = cpu->r[7] + 0x00000000u;
|
|
/* 02926E38 */ cpu->r[5] = rbrew_read8(cpu->mem, _t434);
|
|
/* 02926E3C */ cpu->r[8] = 0x00000000u;
|
|
/* 02926E40 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[10]);
|
|
/* 02926E44 */ cpu->r[0] = 0x00080000u;
|
|
/* 02926E48 */ _t435 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02926E48 */ _t436 = _t435 & 0x00000001u;
|
|
/* 02926E48 */ if (_t436) goto L_02926E78; else goto L_02926E4C;
|
|
L_02926E4C: ; // 0x2926e4c
|
|
/* 02926E4C */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 02926E50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], cpu->r[0]);
|
|
/* 02926E54 */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 02926E58 */ _t437 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02926E58 */ _t438 = _t437 & 0x00000001u;
|
|
/* 02926E58 */ if (_t438) goto L_02926E74; else goto L_02926E5C;
|
|
L_02926E5C: ; // 0x2926e5c
|
|
/* 02926E5C */ _t439 = cpu->r[7] + 0x00000000u;
|
|
/* 02926E5C */ cpu->r[6] = rbrew_read8(cpu->mem, _t439);
|
|
/* 02926E60 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[10]);
|
|
/* 02926E64 */ _t440 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02926E64 */ _t441 = _t440 & 0x00000001u;
|
|
/* 02926E64 */ if (_t441) goto L_02926E68; else goto L_02926E4C;
|
|
L_02926E68: ; // 0x2926e68
|
|
/* 02926E68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[19], 0x00000000u);
|
|
/* 02926E6C */ _t442 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02926E6C */ _t443 = _t442 & 0x00000001u;
|
|
/* 02926E6C */ if (_t443) goto L_02926E70; else goto L_02926E80;
|
|
L_02926E70: ; // 0x2926e70
|
|
/* 02926E70 */ goto L_02926E88;
|
|
L_02926E74: ; // 0x2926e74
|
|
/* 02926E74 */ cpu->r[8] = 0x00000000u;
|
|
L_02926E78: ; // 0x2926e78
|
|
/* 02926E78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[19], 0x00000000u);
|
|
/* 02926E7C */ _t444 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02926E7C */ _t445 = _t444 & 0x00000001u;
|
|
/* 02926E7C */ if (_t445) goto L_02926E88; else goto L_02926E80;
|
|
L_02926E80: ; // 0x2926e80
|
|
/* 02926E80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[19], cpu->r[8]);
|
|
/* 02926E84 */ _t446 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02926E84 */ _t447 = _t446 & 0x00000001u;
|
|
/* 02926E84 */ if (_t447) goto L_02926E88; else goto L_02926EFC;
|
|
L_02926E88: ; // 0x2926e88
|
|
/* 02926E88 */ cpu->r[0] = 0x10140000u;
|
|
/* 02926E8C */ _t448 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02926E8C */ rbrew_write32(cpu->mem, _t448, cpu->r[29]);
|
|
/* 02926E90 */ cpu->r[0] = cpu->r[0] + 0x000040AFu;
|
|
/* 02926E94 */ _t449 = cpu->r[1] + 0x00000088u;
|
|
/* 02926E94 */ cpu->r[5] = rbrew_read32(cpu->mem, _t449);
|
|
/* 02926E98 */ _t450 = cpu->r[1] + 0x00000048u;
|
|
/* 02926E98 */ rbrew_write32(cpu->mem, _t450, cpu->r[0]);
|
|
/* 02926E9C */ _t451 = cpu->r[5] + 0x00000014u;
|
|
/* 02926E9C */ cpu->r[6] = rbrew_read32(cpu->mem, _t451);
|
|
/* 02926EA0 */ cpu->ctr = cpu->r[6];
|
|
/* 02926EA4 */ cpu->r[26] = 0x00000000u;
|
|
/* 02926EA8 */ cpu->r[3] = cpu->r[1] + 0x00000084u;
|
|
/* 02926EAC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02926EB0 */ _t452 = cpu->r[1] + 0x00000088u;
|
|
/* 02926EB0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t452);
|
|
/* 02926EB4 */ _t453 = cpu->r[7] + 0x00000014u;
|
|
/* 02926EB4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t453);
|
|
/* 02926EB8 */ cpu->ctr = cpu->r[8];
|
|
/* 02926EBC */ cpu->r[3] = cpu->r[1] + 0x00000084u;
|
|
/* 02926EC0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02926EC4 */ _t454 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02926EC4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t454);
|
|
/* 02926EC8 */ _t455 = cpu->r[9] + 0x00000014u;
|
|
/* 02926EC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t455);
|
|
/* 02926ECC */ cpu->ctr = cpu->r[0];
|
|
/* 02926ED0 */ _t456 = cpu->r[1] + 0x00000084u;
|
|
/* 02926ED0 */ cpu->r[21] = rbrew_read32(cpu->mem, _t456);
|
|
/* 02926ED4 */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 02926ED8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02926EDC */ _t457 = cpu->r[1] + 0x00000048u;
|
|
/* 02926EDC */ cpu->r[10] = rbrew_read32(cpu->mem, _t457);
|
|
/* 02926EE0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[21], cpu->r[10]);
|
|
/* 02926EE4 */ _t458 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02926EE4 */ _t459 = _t458 & 0x00000001u;
|
|
/* 02926EE4 */ if (_t459) goto L_02926EE8; else goto L_0292700C;
|
|
L_02926EE8: ; // 0x2926ee8
|
|
/* 02926EE8 */ _t460 = cpu->r[1] + 0x00000068u;
|
|
/* 02926EE8 */ cpu->r[26] = rbrew_read32(cpu->mem, _t460);
|
|
/* 02926EEC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], cpu->r[31]);
|
|
/* 02926EF0 */ _t461 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02926EF0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t461);
|
|
/* 02926EF4 */ _t462 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02926EF4 */ _t463 = _t462 & 0x00000001u;
|
|
/* 02926EF4 */ if (_t463) goto L_02926EF8; else goto L_02926E18;
|
|
L_02926EF8: ; // 0x2926ef8
|
|
/* 02926EF8 */ goto L_0292747C;
|
|
L_02926EFC: ; // 0x2926efc
|
|
/* 02926EFC */ _t464 = cpu->r[1] + 0x00000088u;
|
|
/* 02926EFC */ cpu->r[8] = rbrew_read32(cpu->mem, _t464);
|
|
/* 02926F00 */ _t465 = cpu->r[8] + 0x00000014u;
|
|
/* 02926F00 */ cpu->r[0] = rbrew_read32(cpu->mem, _t465);
|
|
/* 02926F04 */ cpu->ctr = cpu->r[0];
|
|
/* 02926F08 */ cpu->r[26] = 0x00000000u;
|
|
/* 02926F0C */ cpu->r[3] = cpu->r[1] + 0x00000084u;
|
|
/* 02926F10 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02926F14 */ _t466 = cpu->r[1] + 0x0000008Cu;
|
|
/* 02926F14 */ cpu->r[9] = rbrew_read32(cpu->mem, _t466);
|
|
/* 02926F18 */ cpu->r[21] = cpu->r[19] + 0x00000001u;
|
|
/* 02926F1C */ cpu->r[16] = cpu->r[28];
|
|
/* 02926F20 */ _t467 = cpu->r[1] + 0x00000084u;
|
|
/* 02926F20 */ cpu->r[17] = rbrew_read32(cpu->mem, _t467);
|
|
/* 02926F24 */ cpu->r[18] = cpu->r[9] + 0xFFFFFFFFu;
|
|
/* 02926F28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[18], cpu->r[26]);
|
|
/* 02926F2C */ _t468 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02926F2C */ _t469 = _t468 & 0x00000001u;
|
|
/* 02926F2C */ if (_t469) goto L_02926E88; else goto L_02926F30;
|
|
L_02926F30: ; // 0x2926f30
|
|
/* 02926F30 */ _t470 = cpu->r[1] + 0x00000068u;
|
|
/* 02926F30 */ cpu->r[11] = rbrew_read32(cpu->mem, _t470);
|
|
/* 02926F34 */ _t471 = cpu->r[11] + 0x00000000u;
|
|
/* 02926F34 */ cpu->r[10] = rbrew_read32(cpu->mem, _t471);
|
|
/* 02926F38 */ _t472 = cpu->r[10] + cpu->r[19];
|
|
/* 02926F38 */ cpu->r[11] = rbrew_read8(cpu->mem, _t472);
|
|
/* 02926F3C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[16]);
|
|
/* 02926F40 */ cpu->r[20] = cpu->r[10] + cpu->r[19];
|
|
/* 02926F44 */ _t473 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02926F44 */ _t474 = _t473 & 0x00000001u;
|
|
/* 02926F44 */ if (_t474) goto L_02926FA8; else goto L_02926F48;
|
|
L_02926F48: ; // 0x2926f48
|
|
/* 02926F48 */ _t475 = cpu->r[1] + 0x00000078u;
|
|
/* 02926F48 */ cpu->r[12] = rbrew_read32(cpu->mem, _t475);
|
|
/* 02926F4C */ _t476 = cpu->r[12] + 0x00000014u;
|
|
/* 02926F4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t476);
|
|
/* 02926F50 */ cpu->ctr = cpu->r[0];
|
|
/* 02926F54 */ cpu->r[3] = cpu->r[1] + 0x00000074u;
|
|
/* 02926F58 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02926F5C */ _t477 = cpu->r[1] + 0x00000008u;
|
|
/* 02926F5C */ cpu->r[5] = rbrew_read32(cpu->mem, _t477);
|
|
/* 02926F60 */ _t478 = cpu->r[1] + 0x00000074u;
|
|
/* 02926F60 */ cpu->r[6] = rbrew_read32(cpu->mem, _t478);
|
|
/* 02926F64 */ cpu->ctr = cpu->r[5];
|
|
/* 02926F68 */ _t479 = cpu->r[20] + 0x00000000u;
|
|
/* 02926F68 */ cpu->r[8] = rbrew_read8(cpu->mem, _t479);
|
|
/* 02926F6C */ cpu->r[0] = cpu->r[16];
|
|
L_02926F70: ; // 0x2926f70
|
|
/* 02926F70 */ _t480 = cpu->r[6] + 0x00000000u;
|
|
/* 02926F70 */ cpu->r[7] = rbrew_read8(cpu->mem, _t480);
|
|
/* 02926F74 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[0]);
|
|
/* 02926F78 */ _t481 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02926F78 */ _t482 = _t481 & 0x00000001u;
|
|
/* 02926F78 */ if (_t482) goto L_02926F8C; else goto L_02926F7C;
|
|
L_02926F7C: ; // 0x2926f7c
|
|
/* 02926F7C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[8]);
|
|
/* 02926F80 */ _t483 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02926F80 */ _t484 = _t483 & 0x00000001u;
|
|
/* 02926F80 */ if (_t484) goto L_02926FA8; else goto L_02926F84;
|
|
L_02926F84: ; // 0x2926f84
|
|
/* 02926F84 */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 02926F88 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02926F88 */ _t485 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02926F88 */ _t486 = _t485 >> (0x00000002u & 31u);
|
|
/* 02926F88 */ _t487 = _t486 & 0x00000001u;
|
|
/* 02926F88 */ if (_t487) goto L_02926F70; else goto L_02926F8C;
|
|
L_02926F8C: ; // 0x2926f8c
|
|
/* 02926F8C */ _t488 = cpu->r[17] + cpu->r[26];
|
|
/* 02926F8C */ rbrew_write8(cpu->mem, _t488, (uint8_t)cpu->r[8]);
|
|
/* 02926F90 */ cpu->r[26] = cpu->r[26] + 0x00000001u;
|
|
/* 02926F94 */ cpu->r[21] = cpu->r[21] + 0x00000001u;
|
|
/* 02926F98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[18], cpu->r[26]);
|
|
/* 02926F9C */ cpu->r[19] = cpu->r[19] + 0x00000001u;
|
|
/* 02926FA0 */ _t489 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02926FA0 */ _t490 = _t489 & 0x00000001u;
|
|
/* 02926FA0 */ if (_t490) goto L_02926E88; else goto L_02926FA4;
|
|
L_02926FA4: ; // 0x2926fa4
|
|
/* 02926FA4 */ goto L_02926F30;
|
|
L_02926FA8: ; // 0x2926fa8
|
|
/* 02926FA8 */ _t491 = cpu->r[17] + cpu->r[26];
|
|
/* 02926FA8 */ rbrew_write8(cpu->mem, _t491, (uint8_t)cpu->r[16]);
|
|
/* 02926FAC */ cpu->r[0] = 0x10140000u;
|
|
/* 02926FB0 */ _t492 = cpu->r[1] + 0x00000088u;
|
|
/* 02926FB0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t492);
|
|
/* 02926FB4 */ cpu->r[0] = cpu->r[0] + 0x000040AFu;
|
|
/* 02926FB8 */ _t493 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02926FB8 */ rbrew_write32(cpu->mem, _t493, cpu->r[21]);
|
|
/* 02926FBC */ _t494 = cpu->r[1] + 0x00000048u;
|
|
/* 02926FBC */ rbrew_write32(cpu->mem, _t494, cpu->r[0]);
|
|
/* 02926FC0 */ _t495 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02926FC0 */ rbrew_write32(cpu->mem, _t495, cpu->r[29]);
|
|
/* 02926FC4 */ _t496 = cpu->r[5] + 0x00000014u;
|
|
/* 02926FC4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t496);
|
|
/* 02926FC8 */ cpu->ctr = cpu->r[6];
|
|
/* 02926FCC */ cpu->r[3] = cpu->r[1] + 0x00000084u;
|
|
/* 02926FD0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02926FD4 */ _t497 = cpu->r[1] + 0x00000088u;
|
|
/* 02926FD4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t497);
|
|
/* 02926FD8 */ _t498 = cpu->r[7] + 0x00000014u;
|
|
/* 02926FD8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t498);
|
|
/* 02926FDC */ cpu->ctr = cpu->r[8];
|
|
/* 02926FE0 */ cpu->r[3] = cpu->r[1] + 0x00000084u;
|
|
/* 02926FE4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02926FE8 */ _t499 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02926FE8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t499);
|
|
/* 02926FEC */ _t500 = cpu->r[9] + 0x00000014u;
|
|
/* 02926FEC */ cpu->r[0] = rbrew_read32(cpu->mem, _t500);
|
|
/* 02926FF0 */ cpu->ctr = cpu->r[0];
|
|
/* 02926FF4 */ _t501 = cpu->r[1] + 0x00000084u;
|
|
/* 02926FF4 */ cpu->r[21] = rbrew_read32(cpu->mem, _t501);
|
|
/* 02926FF8 */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 02926FFC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02927000 */ _t502 = cpu->r[1] + 0x00000048u;
|
|
/* 02927000 */ cpu->r[10] = rbrew_read32(cpu->mem, _t502);
|
|
/* 02927004 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[21], cpu->r[10]);
|
|
/* 02927008 */ _t503 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02927008 */ _t504 = _t503 & 0x00000001u;
|
|
/* 02927008 */ if (_t504) goto L_02926EE8; else goto L_0292700C;
|
|
L_0292700C: ; // 0x292700c
|
|
/* 0292700C */ _t505 = cpu->r[1] + 0x00000008u;
|
|
/* 0292700C */ cpu->r[0] = rbrew_read32(cpu->mem, _t505);
|
|
/* 02927010 */ cpu->r[9] = cpu->r[28];
|
|
/* 02927014 */ _t506 = cpu->r[1] + 0x00000048u;
|
|
/* 02927014 */ cpu->r[5] = rbrew_read32(cpu->mem, _t506);
|
|
/* 02927018 */ cpu->ctr = cpu->r[0];
|
|
/* 0292701C */ _t507 = cpu->r[1] + 0x00000084u;
|
|
/* 0292701C */ cpu->r[12] = rbrew_read32(cpu->mem, _t507);
|
|
/* 02927020 */ cpu->r[5] = cpu->r[5] + 0xFFFFFFFFu;
|
|
L_02927024: ; // 0x2927024
|
|
/* 02927024 */ _t508 = cpu->r[12] + 0x00000000u;
|
|
/* 02927024 */ cpu->r[8] = rbrew_read8(cpu->mem, _t508);
|
|
/* 02927028 */ _t509 = cpu->r[5] + 0x00000001u;
|
|
/* 02927028 */ cpu->r[11] = rbrew_read8(cpu->mem, _t509);
|
|
/* 02927028 */ cpu->r[5] = _t509;
|
|
/* 0292702C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[11]);
|
|
/* 02927030 */ _t510 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02927030 */ _t511 = _t510 & 0x00000001u;
|
|
/* 02927030 */ if (_t511) goto L_02927034; else goto L_02927044;
|
|
L_02927034: ; // 0x2927034
|
|
/* 02927034 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[9]);
|
|
/* 02927038 */ _t512 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02927038 */ _t513 = _t512 & 0x00000001u;
|
|
/* 02927038 */ if (_t513) goto L_02926EE8; else goto L_0292703C;
|
|
L_0292703C: ; // 0x292703c
|
|
/* 0292703C */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 02927040 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02927040 */ _t514 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02927040 */ _t515 = _t514 >> (0x00000002u & 31u);
|
|
/* 02927040 */ _t516 = _t515 & 0x00000001u;
|
|
/* 02927040 */ if (_t516) goto L_02927024; else goto L_02927044;
|
|
L_02927044: ; // 0x2927044
|
|
/* 02927044 */ _t517 = cpu->r[1] + 0x00000088u;
|
|
/* 02927044 */ cpu->r[6] = rbrew_read32(cpu->mem, _t517);
|
|
/* 02927048 */ _t518 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02927048 */ rbrew_write32(cpu->mem, _t518, cpu->r[24]);
|
|
/* 0292704C */ _t519 = cpu->r[1] + 0x00000080u;
|
|
/* 0292704C */ rbrew_write32(cpu->mem, _t519, cpu->r[29]);
|
|
/* 02927050 */ _t520 = cpu->r[6] + 0x00000014u;
|
|
/* 02927050 */ cpu->r[7] = rbrew_read32(cpu->mem, _t520);
|
|
/* 02927054 */ cpu->ctr = cpu->r[7];
|
|
/* 02927058 */ cpu->r[3] = cpu->r[1] + 0x00000084u;
|
|
/* 0292705C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02927060 */ _t521 = cpu->r[1] + 0x00000088u;
|
|
/* 02927060 */ cpu->r[8] = rbrew_read32(cpu->mem, _t521);
|
|
/* 02927064 */ _t522 = cpu->r[8] + 0x00000014u;
|
|
/* 02927064 */ cpu->r[0] = rbrew_read32(cpu->mem, _t522);
|
|
/* 02927068 */ cpu->ctr = cpu->r[0];
|
|
/* 0292706C */ cpu->r[3] = cpu->r[1] + 0x00000084u;
|
|
/* 02927070 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02927074 */ _t523 = cpu->r[1] + 0x00000080u;
|
|
/* 02927074 */ cpu->r[9] = rbrew_read32(cpu->mem, _t523);
|
|
/* 02927078 */ _t524 = cpu->r[9] + 0x00000014u;
|
|
/* 02927078 */ cpu->r[10] = rbrew_read32(cpu->mem, _t524);
|
|
/* 0292707C */ cpu->ctr = cpu->r[10];
|
|
/* 02927080 */ _t525 = cpu->r[1] + 0x00000084u;
|
|
/* 02927080 */ cpu->r[21] = rbrew_read32(cpu->mem, _t525);
|
|
/* 02927084 */ cpu->r[3] = cpu->r[1] + 0x0000007Cu;
|
|
/* 02927088 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0292708C */ _t526 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0292708C */ cpu->r[11] = rbrew_read32(cpu->mem, _t526);
|
|
/* 02927090 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[21], cpu->r[11]);
|
|
/* 02927094 */ _t527 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02927094 */ _t528 = _t527 & 0x00000001u;
|
|
/* 02927094 */ if (_t528) goto L_02927098; else goto L_029270A4;
|
|
L_02927098: ; // 0x2927098
|
|
/* 02927098 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u);
|
|
/* 0292709C */ _t529 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292709C */ _t530 = _t529 & 0x00000001u;
|
|
/* 0292709C */ if (_t530) goto L_02926774; else goto L_029270A0;
|
|
L_029270A0: ; // 0x29270a0
|
|
/* 029270A0 */ goto L_02927130;
|
|
L_029270A4: ; // 0x29270a4
|
|
/* 029270A4 */ _t531 = cpu->r[1] + 0x00000010u;
|
|
/* 029270A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t531);
|
|
/* 029270A8 */ cpu->r[11] = cpu->r[28];
|
|
/* 029270AC */ _t532 = cpu->r[1] + 0x0000007Cu;
|
|
/* 029270AC */ cpu->r[9] = rbrew_read32(cpu->mem, _t532);
|
|
/* 029270B0 */ cpu->ctr = cpu->r[12];
|
|
/* 029270B4 */ _t533 = cpu->r[1] + 0x00000084u;
|
|
/* 029270B4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t533);
|
|
/* 029270B8 */ cpu->r[9] = cpu->r[9] + 0xFFFFFFFFu;
|
|
L_029270BC: ; // 0x29270bc
|
|
/* 029270BC */ _t534 = cpu->r[8] + 0x00000000u;
|
|
/* 029270BC */ cpu->r[10] = rbrew_read8(cpu->mem, _t534);
|
|
/* 029270C0 */ _t535 = cpu->r[9] + 0x00000001u;
|
|
/* 029270C0 */ cpu->r[12] = rbrew_read8(cpu->mem, _t535);
|
|
/* 029270C0 */ cpu->r[9] = _t535;
|
|
/* 029270C4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[12]);
|
|
/* 029270C8 */ _t536 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029270C8 */ _t537 = _t536 & 0x00000001u;
|
|
/* 029270C8 */ if (_t537) goto L_029270CC; else goto L_029270DC;
|
|
L_029270CC: ; // 0x29270cc
|
|
/* 029270CC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[11]);
|
|
/* 029270D0 */ _t538 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029270D0 */ _t539 = _t538 & 0x00000001u;
|
|
/* 029270D0 */ if (_t539) goto L_02927098; else goto L_029270D4;
|
|
L_029270D4: ; // 0x29270d4
|
|
/* 029270D4 */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 029270D8 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 029270D8 */ _t540 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 029270D8 */ _t541 = _t540 >> (0x00000002u & 31u);
|
|
/* 029270D8 */ _t542 = _t541 & 0x00000001u;
|
|
/* 029270D8 */ if (_t542) goto L_029270BC; else goto L_029270DC;
|
|
L_029270DC: ; // 0x29270dc
|
|
/* 029270DC */ cpu->r[12] = cpu->r[22] + 0x00003F64u;
|
|
/* 029270E0 */ cpu->r[11] = cpu->r[14] - cpu->r[25];
|
|
/* 029270E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 029270E4 */ cpu->r[21] = cpu->r[15] + cpu->r[25];
|
|
/* 029270E8 */ _t543 = cpu->r[1] + 0x00000060u;
|
|
/* 029270E8 */ rbrew_write32(cpu->mem, _t543, cpu->r[12]);
|
|
/* 029270EC */ _t544 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 029270EC */ _t545 = _t544 & 0x00000001u;
|
|
/* 029270EC */ if (_t545) goto L_029271DC; else goto L_029270F0;
|
|
L_029270F0: ; // 0x29270f0
|
|
/* 029270F0 */ cpu->r[21] = 0x00000000u;
|
|
/* 029270F4 */ cpu->r[5] = 0x00000000u;
|
|
/* 029270F8 */ _t546 = cpu->r[1] + 0x0000005Cu;
|
|
/* 029270F8 */ rbrew_write32(cpu->mem, _t546, cpu->r[21]);
|
|
/* 029270FC */ _t547 = cpu->r[1] + 0x00000064u;
|
|
/* 029270FC */ rbrew_write32(cpu->mem, _t547, cpu->r[5]);
|
|
/* 02927100 */ _t548 = cpu->r[12] + 0x00000014u;
|
|
/* 02927100 */ cpu->r[0] = rbrew_read32(cpu->mem, _t548);
|
|
/* 02927104 */ cpu->ctr = cpu->r[0];
|
|
/* 02927108 */ cpu->r[3] = cpu->r[1] + 0x0000005Cu;
|
|
/* 0292710C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02927110 */ _t549 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02927110 */ cpu->r[6] = rbrew_read32(cpu->mem, _t549);
|
|
/* 02927114 */ cpu->r[8] = cpu->r[28];
|
|
/* 02927118 */ _t550 = cpu->r[6] + 0x00000000u;
|
|
/* 02927118 */ cpu->r[12] = rbrew_read8(cpu->mem, _t550);
|
|
/* 0292711C */ cpu->r[20] = 0x00000000u;
|
|
/* 02927120 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[8]);
|
|
/* 02927124 */ cpu->r[7] = 0x00080000u;
|
|
/* 02927128 */ _t551 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02927128 */ _t552 = _t551 & 0x00000001u;
|
|
/* 02927128 */ if (_t552) goto L_0292712C; else goto L_02927220;
|
|
L_0292712C: ; // 0x292712c
|
|
/* 0292712C */ goto L_02927254;
|
|
L_02927130: ; // 0x2927130
|
|
/* 02927130 */ cpu->r[23] = cpu->r[23] + 0xFFFFFFFFu;
|
|
/* 02927134 */ cpu->r[10] = cpu->r[23];
|
|
/* 02927138 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], 0x00000040u);
|
|
/* 0292713C */ cpu->r[6] = cpu->r[27];
|
|
/* 02927140 */ _t553 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02927140 */ _t554 = _t553 & 0x00000001u;
|
|
/* 02927140 */ if (_t554) goto L_02927144; else goto L_0292714C;
|
|
L_02927144: ; // 0x2927144
|
|
/* 02927144 */ cpu->r[5] = rbrew_rlwinm(cpu->r[10], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02927148 */ cpu->r[6] = cpu->r[27] + cpu->r[5];
|
|
L_0292714C: ; // 0x292714c
|
|
/* 0292714C */ _t555 = cpu->r[6] + 0x00000000u;
|
|
/* 0292714C */ cpu->r[6] = rbrew_read32(cpu->mem, _t555);
|
|
/* 02927150 */ _t556 = cpu->r[1] + 0x00000020u;
|
|
/* 02927150 */ cpu->r[11] = rbrew_read32(cpu->mem, _t556);
|
|
/* 02927154 */ cpu->r[25] = cpu->r[25] - cpu->r[6];
|
|
/* 02927158 */ _t557 = cpu->r[11] + 0x00000008u;
|
|
/* 02927158 */ cpu->r[7] = rbrew_read32(cpu->mem, _t557);
|
|
/* 0292715C */ cpu->r[0] = cpu->r[25];
|
|
/* 02927160 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], cpu->r[7]);
|
|
/* 02927164 */ _t558 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02927164 */ _t559 = _t558 & 0x00000001u;
|
|
/* 02927164 */ if (_t559) goto L_029271BC; else goto L_02927168;
|
|
L_02927168: ; // 0x2927168
|
|
/* 02927168 */ _t560 = cpu->r[1] + 0x00000020u;
|
|
/* 02927168 */ cpu->r[3] = rbrew_read32(cpu->mem, _t560);
|
|
/* 0292716C */ _t561 = cpu->r[3] + 0x00000004u;
|
|
/* 0292716C */ cpu->r[8] = rbrew_read32(cpu->mem, _t561);
|
|
/* 02927170 */ _t562 = cpu->r[8] + 0x00000014u;
|
|
/* 02927170 */ cpu->r[9] = rbrew_read32(cpu->mem, _t562);
|
|
/* 02927174 */ cpu->ctr = cpu->r[9];
|
|
/* 02927178 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0292717C */ _t563 = cpu->r[1] + 0x00000020u;
|
|
/* 0292717C */ cpu->r[7] = rbrew_read32(cpu->mem, _t563);
|
|
/* 02927180 */ _t564 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02927180 */ cpu->r[8] = rbrew_read8(cpu->mem, _t564);
|
|
/* 02927184 */ _t565 = cpu->r[7] + 0x00000000u;
|
|
/* 02927184 */ cpu->r[9] = rbrew_read32(cpu->mem, _t565);
|
|
/* 02927188 */ _t566 = cpu->r[9] + 0x00000000u;
|
|
/* 02927188 */ cpu->r[10] = rbrew_read8(cpu->mem, _t566);
|
|
/* 0292718C */ cpu->r[6] = 0x00000000u;
|
|
/* 02927190 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[8]);
|
|
/* 02927194 */ cpu->r[0] = 0x00080000u;
|
|
/* 02927198 */ _t567 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02927198 */ _t568 = _t567 & 0x00000001u;
|
|
/* 02927198 */ if (_t568) goto L_02926DE0; else goto L_0292719C;
|
|
L_0292719C: ; // 0x292719c
|
|
/* 0292719C */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 029271A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], cpu->r[0]);
|
|
/* 029271A4 */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 029271A8 */ _t569 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 029271A8 */ _t570 = _t569 & 0x00000001u;
|
|
/* 029271A8 */ if (_t570) goto L_02926DD8; else goto L_029271AC;
|
|
L_029271AC: ; // 0x29271ac
|
|
/* 029271AC */ _t571 = cpu->r[9] + 0x00000000u;
|
|
/* 029271AC */ cpu->r[10] = rbrew_read8(cpu->mem, _t571);
|
|
/* 029271B0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[8]);
|
|
/* 029271B4 */ _t572 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029271B4 */ _t573 = _t572 & 0x00000001u;
|
|
/* 029271B4 */ if (_t573) goto L_029271B8; else goto L_0292719C;
|
|
L_029271B8: ; // 0x29271b8
|
|
/* 029271B8 */ goto L_02926DE0;
|
|
L_029271BC: ; // 0x29271bc
|
|
/* 029271BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 029271C0 */ _t574 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 029271C0 */ _t575 = _t574 & 0x00000001u;
|
|
/* 029271C0 */ if (_t575) goto L_029271C4; else goto L_029271C8;
|
|
L_029271C4: ; // 0x29271c4
|
|
/* 029271C4 */ cpu->r[0] = 0x00000000u;
|
|
L_029271C8: ; // 0x29271c8
|
|
/* 029271C8 */ _t576 = cpu->r[1] + 0x00000020u;
|
|
/* 029271C8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t576);
|
|
/* 029271CC */ _t577 = cpu->r[1] + 0x0000000Cu;
|
|
/* 029271CC */ cpu->r[9] = rbrew_read8(cpu->mem, _t577);
|
|
/* 029271D0 */ _t578 = cpu->r[10] + 0x00000000u;
|
|
/* 029271D0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t578);
|
|
/* 029271D4 */ _t579 = cpu->r[12] + cpu->r[0];
|
|
/* 029271D4 */ rbrew_write8(cpu->mem, _t579, (uint8_t)cpu->r[9]);
|
|
/* 029271D8 */ goto L_02926DD8;
|
|
L_029271DC: ; // 0x29271dc
|
|
/* 029271DC */ _t580 = cpu->r[1] + 0x00000064u;
|
|
/* 029271DC */ rbrew_write32(cpu->mem, _t580, cpu->r[11]);
|
|
/* 029271E0 */ cpu->r[11] = cpu->r[21] + cpu->r[11];
|
|
/* 029271E4 */ _t581 = cpu->r[1] + 0x0000005Cu;
|
|
/* 029271E4 */ rbrew_write32(cpu->mem, _t581, cpu->r[21]);
|
|
/* 029271E8 */ _t582 = cpu->r[11] + 0xFFFFFFFFu;
|
|
/* 029271E8 */ rbrew_write8(cpu->mem, _t582, (uint8_t)cpu->r[28]);
|
|
/* 029271EC */ _t583 = cpu->r[1] + 0x00000060u;
|
|
/* 029271EC */ cpu->r[12] = rbrew_read32(cpu->mem, _t583);
|
|
/* 029271F0 */ _t584 = cpu->r[12] + 0x00000014u;
|
|
/* 029271F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t584);
|
|
/* 029271F4 */ cpu->ctr = cpu->r[0];
|
|
/* 029271F8 */ _t585 = cpu->r[1] + 0x0000005Cu;
|
|
/* 029271F8 */ cpu->r[21] = rbrew_read32(cpu->mem, _t585);
|
|
/* 029271FC */ cpu->r[3] = cpu->r[1] + 0x0000005Cu;
|
|
/* 02927200 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02927204 */ _t586 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02927204 */ cpu->r[6] = rbrew_read32(cpu->mem, _t586);
|
|
/* 02927208 */ cpu->r[8] = cpu->r[28];
|
|
/* 0292720C */ _t587 = cpu->r[6] + 0x00000000u;
|
|
/* 0292720C */ cpu->r[12] = rbrew_read8(cpu->mem, _t587);
|
|
/* 02927210 */ cpu->r[20] = 0x00000000u;
|
|
/* 02927214 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[8]);
|
|
/* 02927218 */ cpu->r[7] = 0x00080000u;
|
|
/* 0292721C */ _t588 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292721C */ _t589 = _t588 & 0x00000001u;
|
|
/* 0292721C */ if (_t589) goto L_02927254; else goto L_02927220;
|
|
L_02927220: ; // 0x2927220
|
|
/* 02927220 */ cpu->r[20] = cpu->r[20] + 0x00000001u;
|
|
/* 02927224 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[20], cpu->r[7]);
|
|
/* 02927228 */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 0292722C */ _t590 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0292722C */ _t591 = _t590 & 0x00000001u;
|
|
/* 0292722C */ if (_t591) goto L_02927250; else goto L_02927230;
|
|
L_02927230: ; // 0x2927230
|
|
/* 02927230 */ _t592 = cpu->r[6] + 0x00000000u;
|
|
/* 02927230 */ cpu->r[5] = rbrew_read8(cpu->mem, _t592);
|
|
/* 02927234 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[8]);
|
|
/* 02927238 */ _t593 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02927238 */ _t594 = _t593 & 0x00000001u;
|
|
/* 02927238 */ if (_t594) goto L_0292723C; else goto L_02927220;
|
|
L_0292723C: ; // 0x292723c
|
|
/* 0292723C */ _t595 = cpu->r[1] + 0x00000088u;
|
|
/* 0292723C */ cpu->r[9] = rbrew_read32(cpu->mem, _t595);
|
|
/* 02927240 */ cpu->r[19] = cpu->r[20];
|
|
/* 02927240 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[19], 0x00000000u);
|
|
/* 02927244 */ _t596 = cpu->r[9] + 0x00000014u;
|
|
/* 02927244 */ cpu->r[0] = rbrew_read32(cpu->mem, _t596);
|
|
/* 02927248 */ _t597 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02927248 */ _t598 = _t597 & 0x00000001u;
|
|
/* 02927248 */ if (_t598) goto L_0292724C; else goto L_02927268;
|
|
L_0292724C: ; // 0x292724c
|
|
/* 0292724C */ goto L_02927264;
|
|
L_02927250: ; // 0x2927250
|
|
/* 02927250 */ cpu->r[20] = 0x00000000u;
|
|
L_02927254: ; // 0x2927254
|
|
/* 02927254 */ _t599 = cpu->r[1] + 0x00000088u;
|
|
/* 02927254 */ cpu->r[9] = rbrew_read32(cpu->mem, _t599);
|
|
/* 02927258 */ cpu->r[19] = cpu->r[20];
|
|
/* 02927258 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[19], 0x00000000u);
|
|
/* 0292725C */ _t600 = cpu->r[9] + 0x00000014u;
|
|
/* 0292725C */ cpu->r[0] = rbrew_read32(cpu->mem, _t600);
|
|
/* 02927260 */ _t601 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02927260 */ _t602 = _t601 & 0x00000001u;
|
|
/* 02927260 */ if (_t602) goto L_02927264; else goto L_02927268;
|
|
L_02927264: ; // 0x2927264
|
|
/* 02927264 */ cpu->r[19] = 0x00000000u;
|
|
L_02927268: ; // 0x2927268
|
|
/* 02927268 */ cpu->ctr = cpu->r[0];
|
|
/* 0292726C */ cpu->r[3] = cpu->r[1] + 0x00000084u;
|
|
/* 02927270 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02927274 */ _t603 = cpu->r[1] + 0x00000084u;
|
|
/* 02927274 */ cpu->r[12] = rbrew_read32(cpu->mem, _t603);
|
|
/* 02927278 */ cpu->r[0] = cpu->r[28];
|
|
/* 0292727C */ _t604 = cpu->r[12] + 0x00000000u;
|
|
/* 0292727C */ cpu->r[10] = rbrew_read8(cpu->mem, _t604);
|
|
/* 02927280 */ cpu->r[18] = 0x00000000u;
|
|
/* 02927284 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[0]);
|
|
/* 02927288 */ cpu->r[5] = 0x00080000u;
|
|
/* 0292728C */ _t605 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292728C */ _t606 = _t605 & 0x00000001u;
|
|
/* 0292728C */ if (_t606) goto L_029272C4; else goto L_02927290;
|
|
L_02927290: ; // 0x2927290
|
|
/* 02927290 */ cpu->r[18] = cpu->r[18] + 0x00000001u;
|
|
/* 02927294 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[18], cpu->r[5]);
|
|
/* 02927298 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 0292729C */ _t607 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0292729C */ _t608 = _t607 & 0x00000001u;
|
|
/* 0292729C */ if (_t608) goto L_029272C0; else goto L_029272A0;
|
|
L_029272A0: ; // 0x29272a0
|
|
/* 029272A0 */ _t609 = cpu->r[12] + 0x00000000u;
|
|
/* 029272A0 */ cpu->r[11] = rbrew_read8(cpu->mem, _t609);
|
|
/* 029272A4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[0]);
|
|
/* 029272A8 */ _t610 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029272A8 */ _t611 = _t610 & 0x00000001u;
|
|
/* 029272A8 */ if (_t611) goto L_029272AC; else goto L_02927290;
|
|
L_029272AC: ; // 0x29272ac
|
|
/* 029272AC */ _t612 = cpu->r[1] + 0x00000064u;
|
|
/* 029272AC */ cpu->r[11] = rbrew_read32(cpu->mem, _t612);
|
|
/* 029272B0 */ cpu->r[9] = cpu->r[11] - cpu->r[19];
|
|
/* 029272B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[18], cpu->r[9]);
|
|
/* 029272B8 */ _t613 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 029272B8 */ _t614 = _t613 & 0x00000001u;
|
|
/* 029272B8 */ if (_t614) goto L_029272D8; else goto L_029272BC;
|
|
L_029272BC: ; // 0x29272bc
|
|
/* 029272BC */ goto L_029272D4;
|
|
L_029272C0: ; // 0x29272c0
|
|
/* 029272C0 */ cpu->r[18] = 0x00000000u;
|
|
L_029272C4: ; // 0x29272c4
|
|
/* 029272C4 */ _t615 = cpu->r[1] + 0x00000064u;
|
|
/* 029272C4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t615);
|
|
/* 029272C8 */ cpu->r[9] = cpu->r[11] - cpu->r[19];
|
|
/* 029272CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[18], cpu->r[9]);
|
|
/* 029272D0 */ _t616 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 029272D0 */ _t617 = _t616 & 0x00000001u;
|
|
/* 029272D0 */ if (_t617) goto L_029272D8; else goto L_029272D4;
|
|
L_029272D4: ; // 0x29272d4
|
|
/* 029272D4 */ cpu->r[18] = cpu->r[9] + 0xFFFFFFFFu;
|
|
L_029272D8: ; // 0x29272d8
|
|
/* 029272D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[18], 0x00000000u);
|
|
/* 029272DC */ _t618 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 029272DC */ _t619 = _t618 & 0x00000001u;
|
|
/* 029272DC */ if (_t619) goto L_029272F8; else goto L_029272E0;
|
|
L_029272E0: ; // 0x29272e0
|
|
/* 029272E0 */ cpu->r[12] = cpu->r[22] + 0x00003F64u;
|
|
/* 029272E4 */ cpu->r[21] = cpu->r[15] + cpu->r[25];
|
|
/* 029272E8 */ cpu->r[11] = cpu->r[14] - cpu->r[25];
|
|
/* 029272E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 029272EC */ _t620 = cpu->r[1] + 0x00000060u;
|
|
/* 029272EC */ rbrew_write32(cpu->mem, _t620, cpu->r[12]);
|
|
/* 029272F0 */ _t621 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 029272F0 */ _t622 = _t621 & 0x00000001u;
|
|
/* 029272F0 */ if (_t622) goto L_029272F4; else goto L_0292734C;
|
|
L_029272F4: ; // 0x29272f4
|
|
/* 029272F4 */ goto L_0292738C;
|
|
L_029272F8: ; // 0x29272f8
|
|
/* 029272F8 */ _t623 = cpu->r[1] + 0x00000088u;
|
|
/* 029272F8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t623);
|
|
/* 029272FC */ _t624 = cpu->r[5] + 0x00000014u;
|
|
/* 029272FC */ cpu->r[6] = rbrew_read32(cpu->mem, _t624);
|
|
/* 02927300 */ cpu->ctr = cpu->r[6];
|
|
/* 02927304 */ cpu->r[17] = cpu->r[21] + cpu->r[19];
|
|
/* 02927308 */ cpu->r[3] = cpu->r[1] + 0x00000084u;
|
|
/* 0292730C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02927310 */ _t625 = cpu->r[1] + 0x00000084u;
|
|
/* 02927310 */ cpu->r[4] = rbrew_read32(cpu->mem, _t625);
|
|
/* 02927314 */ cpu->r[6] = 0x00000000u;
|
|
/* 02927318 */ cpu->r[5] = cpu->r[18];
|
|
/* 0292731C */ cpu->r[3] = cpu->r[17];
|
|
/* 02927320 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 02927324 */ cpu->r[5] = cpu->r[19] + cpu->r[18];
|
|
/* 02927328 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], cpu->r[20]);
|
|
/* 0292732C */ _t626 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0292732C */ _t627 = _t626 & 0x00000001u;
|
|
/* 0292732C */ if (_t627) goto L_02927330; else goto L_02927334;
|
|
L_02927330: ; // 0x2927330
|
|
/* 02927330 */ _t628 = cpu->r[21] + cpu->r[5];
|
|
/* 02927330 */ rbrew_write8(cpu->mem, _t628, (uint8_t)cpu->r[28]);
|
|
L_02927334: ; // 0x2927334
|
|
/* 02927334 */ cpu->r[25] = cpu->r[25] + cpu->r[18];
|
|
/* 02927338 */ cpu->r[12] = cpu->r[22] + 0x00003F64u;
|
|
/* 0292733C */ cpu->r[11] = cpu->r[14] - cpu->r[25];
|
|
/* 0292733C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02927340 */ cpu->r[21] = cpu->r[15] + cpu->r[25];
|
|
/* 02927344 */ _t629 = cpu->r[1] + 0x00000060u;
|
|
/* 02927344 */ rbrew_write32(cpu->mem, _t629, cpu->r[12]);
|
|
/* 02927348 */ _t630 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02927348 */ _t631 = _t630 & 0x00000001u;
|
|
/* 02927348 */ if (_t631) goto L_0292738C; else goto L_0292734C;
|
|
L_0292734C: ; // 0x292734c
|
|
/* 0292734C */ cpu->r[0] = 0x00000000u;
|
|
/* 02927350 */ _t632 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02927350 */ rbrew_write32(cpu->mem, _t632, cpu->r[0]);
|
|
/* 02927354 */ _t633 = cpu->r[1] + 0x00000064u;
|
|
/* 02927354 */ rbrew_write32(cpu->mem, _t633, cpu->r[0]);
|
|
/* 02927358 */ _t634 = cpu->r[12] + 0x00000014u;
|
|
/* 02927358 */ cpu->r[8] = rbrew_read32(cpu->mem, _t634);
|
|
/* 0292735C */ cpu->ctr = cpu->r[8];
|
|
/* 02927360 */ cpu->r[3] = cpu->r[1] + 0x0000005Cu;
|
|
/* 02927364 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02927368 */ _t635 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02927368 */ cpu->r[21] = rbrew_read32(cpu->mem, _t635);
|
|
/* 0292736C */ cpu->r[10] = cpu->r[21];
|
|
/* 02927370 */ cpu->r[7] = cpu->r[28];
|
|
/* 02927374 */ _t636 = cpu->r[10] + 0x00000000u;
|
|
/* 02927374 */ cpu->r[0] = rbrew_read8(cpu->mem, _t636);
|
|
/* 02927378 */ cpu->r[12] = 0x00000000u;
|
|
/* 0292737C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 02927380 */ cpu->r[11] = 0x00080000u;
|
|
/* 02927384 */ _t637 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02927384 */ _t638 = _t637 & 0x00000001u;
|
|
/* 02927384 */ if (_t638) goto L_02927388; else goto L_029273D0;
|
|
L_02927388: ; // 0x2927388
|
|
/* 02927388 */ goto L_02927404;
|
|
L_0292738C: ; // 0x292738c
|
|
/* 0292738C */ _t639 = cpu->r[1] + 0x00000064u;
|
|
/* 0292738C */ rbrew_write32(cpu->mem, _t639, cpu->r[11]);
|
|
/* 02927390 */ cpu->r[7] = cpu->r[21] + cpu->r[11];
|
|
/* 02927394 */ _t640 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02927394 */ rbrew_write32(cpu->mem, _t640, cpu->r[21]);
|
|
/* 02927398 */ _t641 = cpu->r[7] + 0xFFFFFFFFu;
|
|
/* 02927398 */ rbrew_write8(cpu->mem, _t641, (uint8_t)cpu->r[28]);
|
|
/* 0292739C */ _t642 = cpu->r[1] + 0x00000060u;
|
|
/* 0292739C */ cpu->r[12] = rbrew_read32(cpu->mem, _t642);
|
|
/* 029273A0 */ _t643 = cpu->r[12] + 0x00000014u;
|
|
/* 029273A0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t643);
|
|
/* 029273A4 */ cpu->ctr = cpu->r[8];
|
|
/* 029273A8 */ cpu->r[3] = cpu->r[1] + 0x0000005Cu;
|
|
/* 029273AC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 029273B0 */ _t644 = cpu->r[1] + 0x0000005Cu;
|
|
/* 029273B0 */ cpu->r[21] = rbrew_read32(cpu->mem, _t644);
|
|
/* 029273B4 */ cpu->r[10] = cpu->r[21];
|
|
/* 029273B8 */ cpu->r[7] = cpu->r[28];
|
|
/* 029273BC */ _t645 = cpu->r[10] + 0x00000000u;
|
|
/* 029273BC */ cpu->r[0] = rbrew_read8(cpu->mem, _t645);
|
|
/* 029273C0 */ cpu->r[12] = 0x00000000u;
|
|
/* 029273C4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 029273C8 */ cpu->r[11] = 0x00080000u;
|
|
/* 029273CC */ _t646 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029273CC */ _t647 = _t646 & 0x00000001u;
|
|
/* 029273CC */ if (_t647) goto L_02927388; else goto L_029273D0;
|
|
L_029273D0: ; // 0x29273d0
|
|
/* 029273D0 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 029273D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], cpu->r[11]);
|
|
/* 029273D8 */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 029273DC */ _t648 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 029273DC */ _t649 = _t648 & 0x00000001u;
|
|
/* 029273DC */ if (_t649) goto L_02927400; else goto L_029273E0;
|
|
L_029273E0: ; // 0x29273e0
|
|
/* 029273E0 */ _t650 = cpu->r[10] + 0x00000000u;
|
|
/* 029273E0 */ cpu->r[9] = rbrew_read8(cpu->mem, _t650);
|
|
/* 029273E4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[7]);
|
|
/* 029273E8 */ _t651 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029273E8 */ _t652 = _t651 & 0x00000001u;
|
|
/* 029273E8 */ if (_t652) goto L_029273EC; else goto L_029273D0;
|
|
L_029273EC: ; // 0x29273ec
|
|
/* 029273EC */ _t653 = cpu->r[1] + 0x00000064u;
|
|
/* 029273EC */ cpu->r[11] = rbrew_read32(cpu->mem, _t653);
|
|
/* 029273F0 */ cpu->r[10] = cpu->r[11] + 0xFFFFFFFFu;
|
|
/* 029273F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], cpu->r[10]);
|
|
/* 029273F8 */ _t654 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 029273F8 */ _t655 = _t654 & 0x00000001u;
|
|
/* 029273F8 */ if (_t655) goto L_029273FC; else goto L_02927414;
|
|
L_029273FC: ; // 0x29273fc
|
|
/* 029273FC */ goto L_0292742C;
|
|
L_02927400: ; // 0x2927400
|
|
/* 02927400 */ cpu->r[12] = 0x00000000u;
|
|
L_02927404: ; // 0x2927404
|
|
/* 02927404 */ _t656 = cpu->r[1] + 0x00000064u;
|
|
/* 02927404 */ cpu->r[11] = rbrew_read32(cpu->mem, _t656);
|
|
/* 02927408 */ cpu->r[10] = cpu->r[11] + 0xFFFFFFFFu;
|
|
/* 0292740C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], cpu->r[10]);
|
|
/* 02927410 */ _t657 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02927410 */ _t658 = _t657 & 0x00000001u;
|
|
/* 02927410 */ if (_t658) goto L_0292742C; else goto L_02927414;
|
|
L_02927414: ; // 0x2927414
|
|
/* 02927414 */ cpu->r[12] = cpu->r[23];
|
|
/* 02927418 */ cpu->r[5] = cpu->r[27];
|
|
/* 0292741C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], 0x00000040u);
|
|
/* 02927420 */ cpu->r[23] = cpu->r[23] + 0x00000001u;
|
|
/* 02927424 */ _t659 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02927424 */ _t660 = _t659 & 0x00000001u;
|
|
/* 02927424 */ if (_t660) goto L_02927428; else goto L_0292745C;
|
|
L_02927428: ; // 0x2927428
|
|
/* 02927428 */ goto L_02927454;
|
|
L_0292742C: ; // 0x292742c
|
|
/* 0292742C */ cpu->r[11] = 0x0000002Fu;
|
|
/* 02927430 */ cpu->r[5] = cpu->r[21] + cpu->r[12];
|
|
/* 02927434 */ _t661 = cpu->r[21] + cpu->r[12];
|
|
/* 02927434 */ rbrew_write8(cpu->mem, _t661, (uint8_t)cpu->r[11]);
|
|
/* 02927438 */ cpu->r[12] = cpu->r[23];
|
|
/* 0292743C */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 02927440 */ _t662 = cpu->r[5] + 0x00000001u;
|
|
/* 02927440 */ rbrew_write8(cpu->mem, _t662, (uint8_t)cpu->r[28]);
|
|
/* 02927444 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], 0x00000040u);
|
|
/* 02927448 */ cpu->r[5] = cpu->r[27];
|
|
/* 0292744C */ cpu->r[23] = cpu->r[23] + 0x00000001u;
|
|
/* 02927450 */ _t663 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02927450 */ _t664 = _t663 & 0x00000001u;
|
|
/* 02927450 */ if (_t664) goto L_02927454; else goto L_0292745C;
|
|
L_02927454: ; // 0x2927454
|
|
/* 02927454 */ cpu->r[0] = rbrew_rlwinm(cpu->r[12], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02927458 */ cpu->r[5] = cpu->r[27] + cpu->r[0];
|
|
L_0292745C: ; // 0x292745c
|
|
/* 0292745C */ _t665 = cpu->r[1] + 0x00000010u;
|
|
/* 0292745C */ cpu->r[7] = rbrew_read32(cpu->mem, _t665);
|
|
/* 02927460 */ cpu->r[6] = cpu->r[26] + 0x00000001u;
|
|
/* 02927464 */ _t666 = cpu->r[1] + 0x00000068u;
|
|
/* 02927464 */ cpu->r[26] = rbrew_read32(cpu->mem, _t666);
|
|
/* 02927468 */ _t667 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02927468 */ cpu->r[12] = rbrew_read32(cpu->mem, _t667);
|
|
/* 0292746C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], cpu->r[31]);
|
|
/* 02927470 */ _t668 = cpu->r[5] + 0x00000000u;
|
|
/* 02927470 */ rbrew_write32(cpu->mem, _t668, cpu->r[6]);
|
|
/* 02927474 */ _t669 = cpu->r[1] + 0x00000008u;
|
|
/* 02927474 */ rbrew_write32(cpu->mem, _t669, cpu->r[7]);
|
|
/* 02927478 */ _t670 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02927478 */ _t671 = _t670 & 0x00000001u;
|
|
/* 02927478 */ if (_t671) goto L_0292747C; else goto L_02926E18;
|
|
L_0292747C: ; // 0x292747c
|
|
/* 0292747C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[30]);
|
|
/* 02927480 */ _t672 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02927480 */ _t673 = _t672 & 0x00000001u;
|
|
/* 02927480 */ if (_t673) goto L_02927484; else goto L_02926E18;
|
|
L_02927484: ; // 0x2927484
|
|
/* 02927484 */ _t674 = cpu->r[1] + 0x00000020u;
|
|
/* 02927484 */ cpu->r[10] = rbrew_read32(cpu->mem, _t674);
|
|
/* 02927488 */ _t675 = cpu->r[10] + 0x00000008u;
|
|
/* 02927488 */ cpu->r[7] = rbrew_read32(cpu->mem, _t675);
|
|
/* 0292748C */ cpu->r[12] = cpu->r[25] + 0xFFFFFFFFu;
|
|
/* 02927490 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], cpu->r[7]);
|
|
/* 02927494 */ _t676 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02927494 */ _t677 = _t676 & 0x00000001u;
|
|
/* 02927494 */ if (_t677) goto L_029274EC; else goto L_02927498;
|
|
L_02927498: ; // 0x2927498
|
|
/* 02927498 */ _t678 = cpu->r[1] + 0x00000020u;
|
|
/* 02927498 */ cpu->r[3] = rbrew_read32(cpu->mem, _t678);
|
|
/* 0292749C */ _t679 = cpu->r[3] + 0x00000004u;
|
|
/* 0292749C */ cpu->r[8] = rbrew_read32(cpu->mem, _t679);
|
|
/* 029274A0 */ _t680 = cpu->r[8] + 0x00000014u;
|
|
/* 029274A0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t680);
|
|
/* 029274A4 */ cpu->ctr = cpu->r[9];
|
|
/* 029274A8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 029274AC */ _t681 = cpu->r[1] + 0x00000020u;
|
|
/* 029274AC */ cpu->r[5] = rbrew_read32(cpu->mem, _t681);
|
|
/* 029274B0 */ _t682 = cpu->r[1] + 0x00000024u;
|
|
/* 029274B0 */ cpu->r[8] = rbrew_read8(cpu->mem, _t682);
|
|
/* 029274B4 */ _t683 = cpu->r[5] + 0x00000000u;
|
|
/* 029274B4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t683);
|
|
/* 029274B8 */ _t684 = cpu->r[9] + 0x00000000u;
|
|
/* 029274B8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t684);
|
|
/* 029274BC */ cpu->r[7] = 0x00000000u;
|
|
/* 029274C0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[8]);
|
|
/* 029274C4 */ cpu->r[10] = 0x00080000u;
|
|
/* 029274C8 */ _t685 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029274C8 */ _t686 = _t685 & 0x00000001u;
|
|
/* 029274C8 */ if (_t686) goto L_02927508; else goto L_029274CC;
|
|
L_029274CC: ; // 0x29274cc
|
|
/* 029274CC */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 029274D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], cpu->r[10]);
|
|
/* 029274D4 */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 029274D8 */ _t687 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 029274D8 */ _t688 = _t687 & 0x00000001u;
|
|
/* 029274D8 */ if (_t688) goto L_02927508; else goto L_029274DC;
|
|
L_029274DC: ; // 0x29274dc
|
|
/* 029274DC */ _t689 = cpu->r[9] + 0x00000000u;
|
|
/* 029274DC */ cpu->r[0] = rbrew_read8(cpu->mem, _t689);
|
|
/* 029274E0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[8]);
|
|
/* 029274E4 */ _t690 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029274E4 */ _t691 = _t690 & 0x00000001u;
|
|
/* 029274E4 */ if (_t691) goto L_029274E8; else goto L_029274CC;
|
|
L_029274E8: ; // 0x29274e8
|
|
/* 029274E8 */ goto L_02927508;
|
|
L_029274EC: ; // 0x29274ec
|
|
/* 029274EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 029274F0 */ _t692 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 029274F0 */ _t693 = _t692 & 0x00000001u;
|
|
/* 029274F0 */ if (_t693) goto L_029274F4; else goto L_029274F8;
|
|
L_029274F4: ; // 0x29274f4
|
|
/* 029274F4 */ cpu->r[12] = 0x00000000u;
|
|
L_029274F8: ; // 0x29274f8
|
|
/* 029274F8 */ _t694 = cpu->r[1] + 0x00000020u;
|
|
/* 029274F8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t694);
|
|
/* 029274FC */ _t695 = cpu->r[1] + 0x00000024u;
|
|
/* 029274FC */ cpu->r[8] = rbrew_read8(cpu->mem, _t695);
|
|
/* 02927500 */ _t696 = cpu->r[9] + 0x00000000u;
|
|
/* 02927500 */ cpu->r[6] = rbrew_read32(cpu->mem, _t696);
|
|
/* 02927504 */ _t697 = cpu->r[6] + cpu->r[12];
|
|
/* 02927504 */ rbrew_write8(cpu->mem, _t697, (uint8_t)cpu->r[8]);
|
|
L_02927508: ; // 0x2927508
|
|
/* 02927508 */ /* nop */
|
|
/* 0292750C */ _t698 = cpu->r[1] + 0x000002E4u;
|
|
/* 0292750C */ cpu->r[0] = rbrew_read32(cpu->mem, _t698);
|
|
/* 02927510 */ cpu->lr = cpu->r[0];
|
|
/* 02927514 */ cpu->r[1] = cpu->r[1] + 0x000002E0u;
|
|
/* 02927518 */ cpu->r[3] = 0x00000001u;
|
|
/* 0292751C */ return;
|
|
}
|
|
|
|
// fn_02927520 @ 0x2927520
|
|
void Gambit_fn_02927520(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_02927520: ; // 0x2927520
|
|
/* 02927520 */ cpu->r[7] = 0x00000001u;
|
|
/* 02927524 */ cpu->r[6] = 0x00000000u;
|
|
/* 02927528 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[4]);
|
|
/* 0292752C */ cpu->r[12] = cpu->r[6];
|
|
/* 02927530 */ _t0 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02927530 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02927530 */ if (_t1) goto L_02927534; else goto L_02927594;
|
|
L_02927534: ; // 0x2927534
|
|
/* 02927534 */ cpu->r[0] = 0x0000002Fu;
|
|
/* 02927538 */ cpu->r[9] = 0x00000001u;
|
|
L_0292753C: ; // 0x292753c
|
|
/* 0292753C */ _t2 = cpu->r[5] + cpu->r[6];
|
|
/* 0292753C */ cpu->r[11] = rbrew_read8(cpu->mem, _t2);
|
|
/* 02927540 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02927544 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02927544 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02927544 */ if (_t4) goto L_02927594; else goto L_02927548;
|
|
L_02927548: ; // 0x2927548
|
|
/* 02927548 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x0000003Au);
|
|
/* 0292754C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292754C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0292754C */ if (_t6) goto L_02927550; else goto L_0292756C;
|
|
L_02927550: ; // 0x2927550
|
|
/* 02927550 */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 02927554 */ _t7 = cpu->r[3] + cpu->r[12];
|
|
/* 02927554 */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[0]);
|
|
/* 02927558 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[4]);
|
|
/* 0292755C */ cpu->r[6] = cpu->r[6] + 0x00000002u;
|
|
/* 02927560 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 02927564 */ _t8 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02927564 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02927564 */ if (_t9) goto L_0292753C; else goto L_02927568;
|
|
L_02927568: ; // 0x2927568
|
|
/* 02927568 */ goto L_02927594;
|
|
L_0292756C: ; // 0x292756c
|
|
/* 0292756C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x0000005Cu);
|
|
/* 02927570 */ cpu->r[8] = 0x0000002Fu;
|
|
/* 02927574 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02927574 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02927574 */ if (_t11) goto L_0292757C; else goto L_02927578;
|
|
L_02927578: ; // 0x2927578
|
|
/* 02927578 */ cpu->r[8] = cpu->r[11];
|
|
L_0292757C: ; // 0x292757c
|
|
/* 0292757C */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 02927580 */ _t12 = cpu->r[3] + cpu->r[12];
|
|
/* 02927580 */ rbrew_write8(cpu->mem, _t12, (uint8_t)cpu->r[8]);
|
|
/* 02927584 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[4]);
|
|
/* 02927588 */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 0292758C */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 02927590 */ _t13 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02927590 */ _t14 = _t13 & 0x00000001u;
|
|
/* 02927590 */ if (_t14) goto L_0292753C; else goto L_02927594;
|
|
L_02927594: ; // 0x2927594
|
|
/* 02927594 */ cpu->r[10] = 0x00000000u;
|
|
/* 02927598 */ _t15 = cpu->r[3] + cpu->r[12];
|
|
/* 02927598 */ rbrew_write8(cpu->mem, _t15, (uint8_t)cpu->r[10]);
|
|
/* 0292759C */ cpu->r[3] = cpu->r[12];
|
|
/* 029275A0 */ return;
|
|
}
|
|
|
|
// fn_029275A4 @ 0x29275a4
|
|
void Gambit_fn_029275A4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _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;
|
|
|
|
L_029275A4: ; // 0x29275a4
|
|
/* 029275A4 */ _t0 = cpu->r[1] + 0xFFFFFD88u;
|
|
/* 029275A4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 029275A4 */ cpu->r[1] = _t0;
|
|
/* 029275A8 */ /* nop */
|
|
/* 029275AC */ cpu->r[0] = cpu->lr;
|
|
/* 029275B0 */ _t1 = cpu->r[1] + 0x0000027Cu;
|
|
/* 029275B0 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 029275B4 */ cpu->r[29] = cpu->r[4];
|
|
/* 029275B8 */ cpu->r[8] = 0x10140000u;
|
|
/* 029275BC */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 029275BC */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 029275C0 */ cpu->r[8] = cpu->r[8] + 0x0000402Cu;
|
|
/* 029275C4 */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 029275C4 */ rbrew_write32(cpu->mem, _t3, cpu->r[8]);
|
|
/* 029275C8 */ cpu->r[4] = cpu->r[1] + 0x00000030u;
|
|
/* 029275CC */ _t4 = cpu->r[1] + 0x00000024u;
|
|
/* 029275CC */ rbrew_write32(cpu->mem, _t4, cpu->r[4]);
|
|
/* 029275D0 */ cpu->r[7] = 0x00000100u;
|
|
/* 029275D4 */ cpu->r[26] = 0x10140000u;
|
|
/* 029275D8 */ _t5 = cpu->r[1] + 0x0000002Cu;
|
|
/* 029275D8 */ rbrew_write32(cpu->mem, _t5, cpu->r[7]);
|
|
/* 029275DC */ cpu->r[23] = 0x10140000u;
|
|
/* 029275E0 */ cpu->r[26] = cpu->r[26] + 0x00003F4Cu;
|
|
/* 029275E4 */ _t6 = cpu->r[1] + 0x00000018u;
|
|
/* 029275E4 */ rbrew_write32(cpu->mem, _t6, cpu->r[26]);
|
|
/* 029275E8 */ cpu->r[0] = 0x10140000u;
|
|
/* 029275EC */ _t7 = cpu->r[29] + 0x00000004u;
|
|
/* 029275EC */ cpu->r[4] = rbrew_read32(cpu->mem, _t7);
|
|
/* 029275F0 */ cpu->r[30] = 0x10110000u;
|
|
/* 029275F4 */ cpu->r[23] = cpu->r[23] + 0x00003F94u;
|
|
/* 029275F8 */ _t8 = cpu->r[30] + 0x00007399u;
|
|
/* 029275F8 */ cpu->r[30] = rbrew_read8(cpu->mem, _t8);
|
|
/* 029275FC */ cpu->r[0] = cpu->r[0] + 0x000040BCu;
|
|
/* 02927600 */ _t9 = cpu->r[1] + 0x00000028u;
|
|
/* 02927600 */ rbrew_write32(cpu->mem, _t9, cpu->r[23]);
|
|
/* 02927604 */ _t10 = cpu->r[1] + 0x0000012Fu;
|
|
/* 02927604 */ rbrew_write8(cpu->mem, _t10, (uint8_t)cpu->r[30]);
|
|
/* 02927608 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 02927608 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 0292760C */ cpu->r[31] = 0x00000000u;
|
|
/* 02927610 */ _t12 = cpu->r[1] + 0x00000030u;
|
|
/* 02927610 */ rbrew_write8(cpu->mem, _t12, (uint8_t)cpu->r[30]);
|
|
/* 02927614 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02927614 */ rbrew_write32(cpu->mem, _t13, cpu->r[31]);
|
|
/* 02927618 */ _t14 = cpu->r[4] + 0x00000014u;
|
|
/* 02927618 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0292761C */ cpu->r[27] = cpu->r[3];
|
|
/* 02927620 */ cpu->r[28] = 0xFFFFFFFFu;
|
|
/* 02927624 */ cpu->ctr = cpu->r[0];
|
|
/* 02927628 */ cpu->r[25] = cpu->r[5];
|
|
/* 0292762C */ cpu->r[3] = cpu->r[29];
|
|
/* 02927630 */ cpu->r[24] = cpu->r[28];
|
|
/* 02927634 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02927638 */ _t15 = cpu->r[29] + 0x00000000u;
|
|
/* 02927638 */ cpu->r[7] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0292763C */ _t16 = cpu->r[7] + 0x00000000u;
|
|
/* 0292763C */ cpu->r[5] = rbrew_read8(cpu->mem, _t16);
|
|
/* 02927640 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[30]);
|
|
/* 02927644 */ cpu->r[0] = 0x00080000u;
|
|
/* 02927648 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02927648 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02927648 */ if (_t18) goto L_02927670; else goto L_0292764C;
|
|
L_0292764C: ; // 0x292764c
|
|
/* 0292764C */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 02927650 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[0]);
|
|
/* 02927654 */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 02927658 */ _t19 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02927658 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02927658 */ if (_t20) goto L_0292766C; else goto L_0292765C;
|
|
L_0292765C: ; // 0x292765c
|
|
/* 0292765C */ _t21 = cpu->r[7] + 0x00000000u;
|
|
/* 0292765C */ cpu->r[6] = rbrew_read8(cpu->mem, _t21);
|
|
/* 02927660 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[30]);
|
|
/* 02927664 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02927664 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02927664 */ if (_t23) goto L_02927668; else goto L_0292764C;
|
|
L_02927668: ; // 0x2927668
|
|
/* 02927668 */ goto L_02927670;
|
|
L_0292766C: ; // 0x292766c
|
|
/* 0292766C */ cpu->r[31] = 0x00000000u;
|
|
L_02927670: ; // 0x2927670
|
|
/* 02927670 */ _t24 = cpu->r[1] + 0x00000008u;
|
|
/* 02927670 */ cpu->r[20] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02927674 */ cpu->r[21] = cpu->r[31] + 0x00000001u;
|
|
/* 02927678 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[20], cpu->r[29]);
|
|
/* 0292767C */ _t25 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0292767C */ cpu->r[31] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02927680 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02927680 */ _t27 = _t26 & 0x00000001u;
|
|
/* 02927680 */ if (_t27) goto L_02927684; else goto L_0292768C;
|
|
L_02927684: ; // 0x2927684
|
|
/* 02927684 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[21]);
|
|
/* 02927688 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02927688 */ _t29 = _t28 & 0x00000001u;
|
|
/* 02927688 */ if (_t29) goto L_029278B0; else goto L_0292768C;
|
|
L_0292768C: ; // 0x292768c
|
|
/* 0292768C */ _t30 = cpu->r[20] + 0x00000004u;
|
|
/* 0292768C */ cpu->r[8] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02927690 */ _t31 = cpu->r[8] + 0x00000014u;
|
|
/* 02927690 */ cpu->r[9] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02927694 */ cpu->ctr = cpu->r[9];
|
|
/* 02927698 */ cpu->r[3] = cpu->r[20];
|
|
/* 0292769C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 029276A0 */ _t32 = cpu->r[20] + 0x00000000u;
|
|
/* 029276A0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t32);
|
|
/* 029276A4 */ _t33 = cpu->r[12] + 0x00000000u;
|
|
/* 029276A4 */ cpu->r[10] = rbrew_read8(cpu->mem, _t33);
|
|
/* 029276A8 */ cpu->r[11] = 0x00000000u;
|
|
/* 029276AC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[30]);
|
|
/* 029276B0 */ cpu->r[4] = 0x00080000u;
|
|
/* 029276B4 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029276B4 */ _t35 = _t34 & 0x00000001u;
|
|
/* 029276B4 */ if (_t35) goto L_029276DC; else goto L_029276B8;
|
|
L_029276B8: ; // 0x29276b8
|
|
/* 029276B8 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 029276BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], cpu->r[4]);
|
|
/* 029276C0 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 029276C4 */ _t36 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 029276C4 */ _t37 = _t36 & 0x00000001u;
|
|
/* 029276C4 */ if (_t37) goto L_029276D8; else goto L_029276C8;
|
|
L_029276C8: ; // 0x29276c8
|
|
/* 029276C8 */ _t38 = cpu->r[12] + 0x00000000u;
|
|
/* 029276C8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t38);
|
|
/* 029276CC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]);
|
|
/* 029276D0 */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029276D0 */ _t40 = _t39 & 0x00000001u;
|
|
/* 029276D0 */ if (_t40) goto L_029276D4; else goto L_029276B8;
|
|
L_029276D4: ; // 0x29276d4
|
|
/* 029276D4 */ goto L_029276DC;
|
|
L_029276D8: ; // 0x29276d8
|
|
/* 029276D8 */ cpu->r[11] = 0x00000000u;
|
|
L_029276DC: ; // 0x29276dc
|
|
/* 029276DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 029276E0 */ _t41 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 029276E0 */ _t42 = _t41 & 0x00000001u;
|
|
/* 029276E0 */ if (_t42) goto L_029276EC; else goto L_029276E4;
|
|
L_029276E4: ; // 0x29276e4
|
|
/* 029276E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[11]);
|
|
/* 029276E8 */ _t43 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 029276E8 */ _t44 = _t43 & 0x00000001u;
|
|
/* 029276E8 */ if (_t44) goto L_029276EC; else goto L_02927700;
|
|
L_029276EC: ; // 0x29276ec
|
|
/* 029276EC */ _t45 = cpu->r[1] + 0x00000008u;
|
|
/* 029276EC */ cpu->r[20] = rbrew_read32(cpu->mem, _t45);
|
|
/* 029276F0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[20], cpu->r[29]);
|
|
/* 029276F4 */ _t46 = cpu->r[1] + 0x0000000Cu;
|
|
/* 029276F4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t46);
|
|
/* 029276F8 */ _t47 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029276F8 */ _t48 = _t47 & 0x00000001u;
|
|
/* 029276F8 */ if (_t48) goto L_02927788; else goto L_029276FC;
|
|
L_029276FC: ; // 0x29276fc
|
|
/* 029276FC */ goto L_02927790;
|
|
L_02927700: ; // 0x2927700
|
|
/* 02927700 */ cpu->r[19] = 0x00080000u;
|
|
/* 02927704 */ cpu->r[22] = cpu->r[30];
|
|
/* 02927708 */ cpu->r[19] = cpu->r[19] + 0x00000001u;
|
|
L_0292770C: ; // 0x292770c
|
|
/* 0292770C */ _t49 = cpu->r[1] + 0x00000008u;
|
|
/* 0292770C */ cpu->r[20] = rbrew_read32(cpu->mem, _t49);
|
|
/* 02927710 */ _t50 = cpu->r[20] + 0x00000000u;
|
|
/* 02927710 */ cpu->r[5] = rbrew_read32(cpu->mem, _t50);
|
|
/* 02927714 */ _t51 = cpu->r[5] + cpu->r[31];
|
|
/* 02927714 */ cpu->r[6] = rbrew_read8(cpu->mem, _t51);
|
|
/* 02927718 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[22]);
|
|
/* 0292771C */ cpu->r[18] = cpu->r[5] + cpu->r[31];
|
|
/* 02927720 */ _t52 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02927720 */ _t53 = _t52 & 0x00000001u;
|
|
/* 02927720 */ if (_t53) goto L_02927778; else goto L_02927724;
|
|
L_02927724: ; // 0x2927724
|
|
/* 02927724 */ _t54 = cpu->r[1] + 0x00000018u;
|
|
/* 02927724 */ cpu->r[7] = rbrew_read32(cpu->mem, _t54);
|
|
/* 02927728 */ _t55 = cpu->r[7] + 0x00000014u;
|
|
/* 02927728 */ cpu->r[8] = rbrew_read32(cpu->mem, _t55);
|
|
/* 0292772C */ cpu->ctr = cpu->r[8];
|
|
/* 02927730 */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 02927734 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02927738 */ cpu->ctr = cpu->r[19];
|
|
/* 0292773C */ _t56 = cpu->r[1] + 0x00000014u;
|
|
/* 0292773C */ cpu->r[7] = rbrew_read32(cpu->mem, _t56);
|
|
L_02927740: ; // 0x2927740
|
|
/* 02927740 */ _t57 = cpu->r[7] + 0x00000000u;
|
|
/* 02927740 */ cpu->r[8] = rbrew_read8(cpu->mem, _t57);
|
|
/* 02927744 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[22]);
|
|
/* 02927748 */ _t58 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02927748 */ _t59 = _t58 & 0x00000001u;
|
|
/* 02927748 */ if (_t59) goto L_02927770; else goto L_0292774C;
|
|
L_0292774C: ; // 0x292774c
|
|
/* 0292774C */ _t60 = cpu->r[18] + 0x00000000u;
|
|
/* 0292774C */ cpu->r[9] = rbrew_read8(cpu->mem, _t60);
|
|
/* 02927750 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[9]);
|
|
/* 02927754 */ _t61 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02927754 */ _t62 = _t61 & 0x00000001u;
|
|
/* 02927754 */ if (_t62) goto L_02927758; else goto L_02927768;
|
|
L_02927758: ; // 0x2927758
|
|
/* 02927758 */ _t63 = cpu->r[1] + 0x00000008u;
|
|
/* 02927758 */ cpu->r[20] = rbrew_read32(cpu->mem, _t63);
|
|
/* 0292775C */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 02927760 */ _t64 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02927760 */ rbrew_write32(cpu->mem, _t64, cpu->r[31]);
|
|
/* 02927764 */ goto L_02927780;
|
|
L_02927768: ; // 0x2927768
|
|
/* 02927768 */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 0292776C */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0292776C */ _t65 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0292776C */ _t66 = _t65 >> (0x00000002u & 31u);
|
|
/* 0292776C */ _t67 = _t66 & 0x00000001u;
|
|
/* 0292776C */ if (_t67) goto L_02927740; else goto L_02927770;
|
|
L_02927770: ; // 0x2927770
|
|
/* 02927770 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 02927774 */ goto L_0292770C;
|
|
L_02927778: ; // 0x2927778
|
|
/* 02927778 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 0292777C */ _t68 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0292777C */ rbrew_write32(cpu->mem, _t68, cpu->r[31]);
|
|
L_02927780: ; // 0x2927780
|
|
/* 02927780 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[20], cpu->r[29]);
|
|
/* 02927784 */ _t69 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02927784 */ _t70 = _t69 & 0x00000001u;
|
|
/* 02927784 */ if (_t70) goto L_02927788; else goto L_02927790;
|
|
L_02927788: ; // 0x2927788
|
|
/* 02927788 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[21]);
|
|
/* 0292778C */ _t71 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292778C */ _t72 = _t71 & 0x00000001u;
|
|
/* 0292778C */ if (_t72) goto L_029278B0; else goto L_02927790;
|
|
L_02927790: ; // 0x2927790
|
|
/* 02927790 */ _t73 = cpu->r[20] + 0x00000004u;
|
|
/* 02927790 */ cpu->r[10] = rbrew_read32(cpu->mem, _t73);
|
|
/* 02927794 */ _t74 = cpu->r[10] + 0x00000014u;
|
|
/* 02927794 */ cpu->r[12] = rbrew_read32(cpu->mem, _t74);
|
|
/* 02927798 */ cpu->ctr = cpu->r[12];
|
|
/* 0292779C */ cpu->r[24] = cpu->r[31];
|
|
/* 029277A0 */ cpu->r[3] = cpu->r[20];
|
|
/* 029277A4 */ cpu->r[28] = cpu->r[31] + 0xFFFFFFFFu;
|
|
/* 029277A8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 029277AC */ _t75 = cpu->r[20] + 0x00000000u;
|
|
/* 029277AC */ cpu->r[11] = rbrew_read32(cpu->mem, _t75);
|
|
/* 029277B0 */ _t76 = cpu->r[11] + 0x00000000u;
|
|
/* 029277B0 */ cpu->r[4] = rbrew_read8(cpu->mem, _t76);
|
|
/* 029277B4 */ cpu->r[12] = 0x00000000u;
|
|
/* 029277B8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[30]);
|
|
/* 029277BC */ cpu->r[0] = 0x00080000u;
|
|
/* 029277C0 */ _t77 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029277C0 */ _t78 = _t77 & 0x00000001u;
|
|
/* 029277C0 */ if (_t78) goto L_029277E8; else goto L_029277C4;
|
|
L_029277C4: ; // 0x29277c4
|
|
/* 029277C4 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 029277C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], cpu->r[0]);
|
|
/* 029277CC */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 029277D0 */ _t79 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 029277D0 */ _t80 = _t79 & 0x00000001u;
|
|
/* 029277D0 */ if (_t80) goto L_029277E4; else goto L_029277D4;
|
|
L_029277D4: ; // 0x29277d4
|
|
/* 029277D4 */ _t81 = cpu->r[11] + 0x00000000u;
|
|
/* 029277D4 */ cpu->r[6] = rbrew_read8(cpu->mem, _t81);
|
|
/* 029277D8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[30]);
|
|
/* 029277DC */ _t82 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029277DC */ _t83 = _t82 & 0x00000001u;
|
|
/* 029277DC */ if (_t83) goto L_029277E0; else goto L_029277C4;
|
|
L_029277E0: ; // 0x29277e0
|
|
/* 029277E0 */ goto L_029277E8;
|
|
L_029277E4: ; // 0x29277e4
|
|
/* 029277E4 */ cpu->r[12] = 0x00000000u;
|
|
L_029277E8: ; // 0x29277e8
|
|
/* 029277E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 029277EC */ _t84 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 029277EC */ _t85 = _t84 & 0x00000001u;
|
|
/* 029277EC */ if (_t85) goto L_029277F8; else goto L_029277F0;
|
|
L_029277F0: ; // 0x29277f0
|
|
/* 029277F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], cpu->r[12]);
|
|
/* 029277F4 */ _t86 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 029277F4 */ _t87 = _t86 & 0x00000001u;
|
|
/* 029277F4 */ if (_t87) goto L_029277F8; else goto L_02927800;
|
|
L_029277F8: ; // 0x29277f8
|
|
/* 029277F8 */ _t88 = cpu->r[1] + 0x0000000Cu;
|
|
/* 029277F8 */ cpu->r[24] = rbrew_read32(cpu->mem, _t88);
|
|
/* 029277FC */ goto L_029278B0;
|
|
L_02927800: ; // 0x2927800
|
|
/* 02927800 */ _t89 = cpu->r[1] + 0x00000028u;
|
|
/* 02927800 */ cpu->r[7] = rbrew_read32(cpu->mem, _t89);
|
|
/* 02927804 */ _t90 = cpu->r[7] + 0x00000014u;
|
|
/* 02927804 */ cpu->r[0] = rbrew_read32(cpu->mem, _t90);
|
|
/* 02927808 */ cpu->ctr = cpu->r[0];
|
|
/* 0292780C */ cpu->r[3] = cpu->r[1] + 0x00000024u;
|
|
/* 02927810 */ cpu->r[18] = 0x00000000u;
|
|
/* 02927814 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02927818 */ cpu->r[17] = 0x00080000u;
|
|
/* 0292781C */ cpu->r[22] = cpu->r[30];
|
|
/* 02927820 */ _t91 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02927820 */ cpu->r[9] = rbrew_read32(cpu->mem, _t91);
|
|
/* 02927824 */ cpu->r[17] = cpu->r[17] + 0x00000001u;
|
|
/* 02927828 */ cpu->r[31] = cpu->r[24] + 0x00000001u;
|
|
/* 0292782C */ _t92 = cpu->r[1] + 0x00000024u;
|
|
/* 0292782C */ cpu->r[19] = rbrew_read32(cpu->mem, _t92);
|
|
/* 02927830 */ cpu->r[20] = cpu->r[9] + 0xFFFFFFFFu;
|
|
L_02927834: ; // 0x2927834
|
|
/* 02927834 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[20], cpu->r[18]);
|
|
/* 02927838 */ _t93 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02927838 */ _t94 = _t93 & 0x00000001u;
|
|
/* 02927838 */ if (_t94) goto L_029277F8; else goto L_0292783C;
|
|
L_0292783C: ; // 0x292783c
|
|
/* 0292783C */ _t95 = cpu->r[1] + 0x00000008u;
|
|
/* 0292783C */ cpu->r[4] = rbrew_read32(cpu->mem, _t95);
|
|
/* 02927840 */ _t96 = cpu->r[4] + 0x00000000u;
|
|
/* 02927840 */ cpu->r[10] = rbrew_read32(cpu->mem, _t96);
|
|
/* 02927844 */ _t97 = cpu->r[10] + cpu->r[24];
|
|
/* 02927844 */ cpu->r[4] = rbrew_read8(cpu->mem, _t97);
|
|
/* 02927848 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[22]);
|
|
/* 0292784C */ cpu->r[21] = cpu->r[10] + cpu->r[24];
|
|
/* 02927850 */ _t98 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02927850 */ _t99 = _t98 & 0x00000001u;
|
|
/* 02927850 */ if (_t99) goto L_029278A4; else goto L_02927854;
|
|
L_02927854: ; // 0x2927854
|
|
/* 02927854 */ _t100 = cpu->r[1] + 0x00000018u;
|
|
/* 02927854 */ cpu->r[6] = rbrew_read32(cpu->mem, _t100);
|
|
/* 02927858 */ _t101 = cpu->r[6] + 0x00000014u;
|
|
/* 02927858 */ cpu->r[0] = rbrew_read32(cpu->mem, _t101);
|
|
/* 0292785C */ cpu->ctr = cpu->r[0];
|
|
/* 02927860 */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 02927864 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02927868 */ _t102 = cpu->r[1] + 0x00000014u;
|
|
/* 02927868 */ cpu->r[5] = rbrew_read32(cpu->mem, _t102);
|
|
/* 0292786C */ cpu->ctr = cpu->r[17];
|
|
/* 02927870 */ _t103 = cpu->r[21] + 0x00000000u;
|
|
/* 02927870 */ cpu->r[6] = rbrew_read8(cpu->mem, _t103);
|
|
L_02927874: ; // 0x2927874
|
|
/* 02927874 */ _t104 = cpu->r[5] + 0x00000000u;
|
|
/* 02927874 */ cpu->r[10] = rbrew_read8(cpu->mem, _t104);
|
|
/* 02927878 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[22]);
|
|
/* 0292787C */ _t105 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292787C */ _t106 = _t105 & 0x00000001u;
|
|
/* 0292787C */ if (_t106) goto L_02927890; else goto L_02927880;
|
|
L_02927880: ; // 0x2927880
|
|
/* 02927880 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[6]);
|
|
/* 02927884 */ _t107 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02927884 */ _t108 = _t107 & 0x00000001u;
|
|
/* 02927884 */ if (_t108) goto L_029278A4; else goto L_02927888;
|
|
L_02927888: ; // 0x2927888
|
|
/* 02927888 */ cpu->r[5] = cpu->r[5] + 0x00000001u;
|
|
/* 0292788C */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0292788C */ _t109 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0292788C */ _t110 = _t109 >> (0x00000002u & 31u);
|
|
/* 0292788C */ _t111 = _t110 & 0x00000001u;
|
|
/* 0292788C */ if (_t111) goto L_02927874; else goto L_02927890;
|
|
L_02927890: ; // 0x2927890
|
|
/* 02927890 */ _t112 = cpu->r[19] + cpu->r[18];
|
|
/* 02927890 */ rbrew_write8(cpu->mem, _t112, (uint8_t)cpu->r[6]);
|
|
/* 02927894 */ cpu->r[18] = cpu->r[18] + 0x00000001u;
|
|
/* 02927898 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 0292789C */ cpu->r[24] = cpu->r[24] + 0x00000001u;
|
|
/* 029278A0 */ goto L_02927834;
|
|
L_029278A4: ; // 0x29278a4
|
|
/* 029278A4 */ _t113 = cpu->r[19] + cpu->r[18];
|
|
/* 029278A4 */ rbrew_write8(cpu->mem, _t113, (uint8_t)cpu->r[22]);
|
|
/* 029278A8 */ cpu->r[24] = cpu->r[31];
|
|
/* 029278AC */ _t114 = cpu->r[1] + 0x0000000Cu;
|
|
/* 029278AC */ rbrew_write32(cpu->mem, _t114, cpu->r[31]);
|
|
L_029278B0: ; // 0x29278b0
|
|
/* 029278B0 */ _t115 = cpu->r[1] + 0x00000024u;
|
|
/* 029278B0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t115);
|
|
/* 029278B4 */ _t116 = cpu->r[9] + 0x00000000u;
|
|
/* 029278B4 */ cpu->r[10] = rbrew_read8(cpu->mem, _t116);
|
|
/* 029278B8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[30]);
|
|
/* 029278BC */ cpu->r[22] = 0x10140000u;
|
|
/* 029278C0 */ _t117 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029278C0 */ _t118 = _t117 & 0x00000001u;
|
|
/* 029278C0 */ if (_t118) goto L_029278C4; else goto L_02927984;
|
|
L_029278C4: ; // 0x29278c4
|
|
/* 029278C4 */ _t119 = cpu->r[25] + 0x00000000u;
|
|
/* 029278C4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t119);
|
|
/* 029278C8 */ _t120 = cpu->r[11] + 0x00000000u;
|
|
/* 029278C8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t120);
|
|
/* 029278CC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]);
|
|
/* 029278D0 */ _t121 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029278D0 */ _t122 = _t121 & 0x00000001u;
|
|
/* 029278D0 */ if (_t122) goto L_029278D4; else goto L_02927914;
|
|
L_029278D4: ; // 0x29278d4
|
|
/* 029278D4 */ _t123 = cpu->r[27] + 0x00000004u;
|
|
/* 029278D4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t123);
|
|
/* 029278D8 */ _t124 = cpu->r[10] + 0x00000014u;
|
|
/* 029278D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t124);
|
|
/* 029278DC */ cpu->ctr = cpu->r[0];
|
|
/* 029278E0 */ cpu->r[3] = cpu->r[27];
|
|
/* 029278E4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 029278E8 */ _t125 = cpu->r[29] + 0x00000004u;
|
|
/* 029278E8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t125);
|
|
/* 029278EC */ _t126 = cpu->r[12] + 0x00000014u;
|
|
/* 029278EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t126);
|
|
/* 029278F0 */ cpu->ctr = cpu->r[0];
|
|
/* 029278F4 */ _t127 = cpu->r[27] + 0x00000000u;
|
|
/* 029278F4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t127);
|
|
/* 029278F8 */ cpu->r[3] = cpu->r[29];
|
|
/* 029278FC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02927900 */ _t128 = cpu->r[29] + 0x00000000u;
|
|
/* 02927900 */ cpu->r[5] = rbrew_read32(cpu->mem, _t128);
|
|
/* 02927904 */ cpu->r[3] = cpu->r[31];
|
|
/* 02927908 */ _t129 = cpu->r[27] + 0x00000008u;
|
|
/* 02927908 */ cpu->r[4] = rbrew_read32(cpu->mem, _t129);
|
|
/* 0292790C */ Gambit_fn_02927520(cpu);
|
|
/* 02927910 */ goto L_02927C9C;
|
|
L_02927914: ; // 0x2927914
|
|
/* 02927914 */ _t130 = cpu->r[25] + 0x00000004u;
|
|
/* 02927914 */ cpu->r[5] = rbrew_read32(cpu->mem, _t130);
|
|
/* 02927918 */ _t131 = cpu->r[5] + 0x00000014u;
|
|
/* 02927918 */ cpu->r[6] = rbrew_read32(cpu->mem, _t131);
|
|
/* 0292791C */ cpu->ctr = cpu->r[6];
|
|
/* 02927920 */ cpu->r[3] = cpu->r[25];
|
|
/* 02927924 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02927928 */ _t132 = cpu->r[25] + 0x00000000u;
|
|
/* 02927928 */ cpu->r[5] = rbrew_read32(cpu->mem, _t132);
|
|
/* 0292792C */ cpu->r[3] = cpu->r[27];
|
|
/* 02927930 */ cpu->r[4] = cpu->r[22] + 0x000040B8u;
|
|
/* 02927934 */ _t133 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 02927934 */ _t134 = _t133 & 0x00000001u;
|
|
/* 02927934 */ if (_t134) goto L_02927938; // else: addr-0 trap, fall-through
|
|
L_02927938: ; // 0x2927938
|
|
/* 02927938 */ Gambit_fn_0282A5F4(cpu);
|
|
/* 0292793C */ _t135 = cpu->r[27] + 0x00000004u;
|
|
/* 0292793C */ cpu->r[10] = rbrew_read32(cpu->mem, _t135);
|
|
/* 02927940 */ _t136 = cpu->r[10] + 0x00000014u;
|
|
/* 02927940 */ cpu->r[0] = rbrew_read32(cpu->mem, _t136);
|
|
/* 02927944 */ cpu->r[30] = cpu->r[3];
|
|
/* 02927948 */ cpu->ctr = cpu->r[0];
|
|
/* 0292794C */ cpu->r[3] = cpu->r[27];
|
|
/* 02927950 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02927954 */ _t137 = cpu->r[29] + 0x00000004u;
|
|
/* 02927954 */ cpu->r[12] = rbrew_read32(cpu->mem, _t137);
|
|
/* 02927958 */ _t138 = cpu->r[12] + 0x00000014u;
|
|
/* 02927958 */ cpu->r[0] = rbrew_read32(cpu->mem, _t138);
|
|
/* 0292795C */ cpu->ctr = cpu->r[0];
|
|
/* 02927960 */ _t139 = cpu->r[27] + 0x00000000u;
|
|
/* 02927960 */ cpu->r[31] = rbrew_read32(cpu->mem, _t139);
|
|
/* 02927964 */ cpu->r[3] = cpu->r[29];
|
|
/* 02927968 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0292796C */ _t140 = cpu->r[27] + 0x00000008u;
|
|
/* 0292796C */ cpu->r[7] = rbrew_read32(cpu->mem, _t140);
|
|
/* 02927970 */ _t141 = cpu->r[29] + 0x00000000u;
|
|
/* 02927970 */ cpu->r[5] = rbrew_read32(cpu->mem, _t141);
|
|
/* 02927974 */ cpu->r[4] = cpu->r[7] - cpu->r[30];
|
|
/* 02927978 */ cpu->r[3] = cpu->r[31] + cpu->r[30];
|
|
/* 0292797C */ Gambit_fn_02927520(cpu);
|
|
/* 02927980 */ goto L_02927C9C;
|
|
L_02927984: ; // 0x2927984
|
|
/* 02927984 */ _t142 = cpu->r[1] + 0x00000134u;
|
|
/* 02927984 */ rbrew_write32(cpu->mem, _t142, cpu->r[23]);
|
|
/* 02927988 */ cpu->r[0] = 0x00000100u;
|
|
/* 0292798C */ _t143 = cpu->r[1] + 0x00000028u;
|
|
/* 0292798C */ cpu->r[4] = rbrew_read32(cpu->mem, _t143);
|
|
/* 02927990 */ cpu->r[9] = cpu->r[1] + 0x0000013Cu;
|
|
/* 02927994 */ _t144 = cpu->r[1] + 0x0000023Bu;
|
|
/* 02927994 */ rbrew_write8(cpu->mem, _t144, (uint8_t)cpu->r[30]);
|
|
/* 02927998 */ _t145 = cpu->r[1] + 0x00000138u;
|
|
/* 02927998 */ rbrew_write32(cpu->mem, _t145, cpu->r[0]);
|
|
/* 0292799C */ _t146 = cpu->r[1] + 0x00000130u;
|
|
/* 0292799C */ rbrew_write32(cpu->mem, _t146, cpu->r[9]);
|
|
/* 029279A0 */ _t147 = cpu->r[1] + 0x0000013Cu;
|
|
/* 029279A0 */ rbrew_write8(cpu->mem, _t147, (uint8_t)cpu->r[30]);
|
|
/* 029279A4 */ _t148 = cpu->r[4] + 0x00000014u;
|
|
/* 029279A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t148);
|
|
/* 029279A8 */ cpu->ctr = cpu->r[0];
|
|
/* 029279AC */ cpu->r[3] = cpu->r[1] + 0x00000024u;
|
|
/* 029279B0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 029279B4 */ _t149 = cpu->r[1] + 0x00000134u;
|
|
/* 029279B4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t149);
|
|
/* 029279B8 */ _t150 = cpu->r[7] + 0x00000014u;
|
|
/* 029279B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t150);
|
|
/* 029279BC */ cpu->ctr = cpu->r[0];
|
|
/* 029279C0 */ _t151 = cpu->r[1] + 0x00000024u;
|
|
/* 029279C0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t151);
|
|
/* 029279C4 */ cpu->r[3] = cpu->r[1] + 0x00000130u;
|
|
/* 029279C8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 029279CC */ _t152 = cpu->r[1] + 0x00000138u;
|
|
/* 029279CC */ cpu->r[5] = rbrew_read32(cpu->mem, _t152);
|
|
/* 029279D0 */ cpu->r[3] = cpu->r[31];
|
|
/* 029279D4 */ _t153 = cpu->r[1] + 0x00000130u;
|
|
/* 029279D4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t153);
|
|
/* 029279D8 */ rbrew_dispatch(cpu, 0x02d09418u);
|
|
/* 029279DC */ _t154 = cpu->r[25] + 0x00000000u;
|
|
/* 029279DC */ cpu->r[10] = rbrew_read32(cpu->mem, _t154);
|
|
/* 029279E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 029279E4 */ _t155 = cpu->r[10] + 0x00000000u;
|
|
/* 029279E4 */ cpu->r[11] = rbrew_read8(cpu->mem, _t155);
|
|
/* 029279E8 */ _t156 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029279E8 */ _t157 = _t156 & 0x00000001u;
|
|
/* 029279E8 */ if (_t157) goto L_029279EC; else goto L_02927BEC;
|
|
L_029279EC: ; // 0x29279ec
|
|
/* 029279EC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[30]);
|
|
/* 029279F0 */ _t158 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029279F0 */ _t159 = _t158 & 0x00000001u;
|
|
/* 029279F0 */ if (_t159) goto L_029279F4; else goto L_02927A04;
|
|
L_029279F4: ; // 0x29279f4
|
|
/* 029279F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 029279F8 */ cpu->r[25] = 0x00000000u;
|
|
/* 029279FC */ _t160 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 029279FC */ _t161 = _t160 & 0x00000001u;
|
|
/* 029279FC */ if (_t161) goto L_02927A00; else goto L_02927AD0;
|
|
L_02927A00: ; // 0x2927a00
|
|
/* 02927A00 */ goto L_02927A38;
|
|
L_02927A04: ; // 0x2927a04
|
|
/* 02927A04 */ _t162 = cpu->r[25] + 0x00000004u;
|
|
/* 02927A04 */ cpu->r[10] = rbrew_read32(cpu->mem, _t162);
|
|
/* 02927A08 */ _t163 = cpu->r[10] + 0x00000014u;
|
|
/* 02927A08 */ cpu->r[0] = rbrew_read32(cpu->mem, _t163);
|
|
/* 02927A0C */ cpu->ctr = cpu->r[0];
|
|
/* 02927A10 */ cpu->r[3] = cpu->r[25];
|
|
/* 02927A14 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02927A18 */ _t164 = cpu->r[25] + 0x00000000u;
|
|
/* 02927A18 */ cpu->r[5] = rbrew_read32(cpu->mem, _t164);
|
|
/* 02927A1C */ cpu->r[3] = cpu->r[27];
|
|
/* 02927A20 */ cpu->r[4] = cpu->r[22] + 0x000040B8u;
|
|
/* 02927A24 */ _t165 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 02927A24 */ _t166 = _t165 & 0x00000001u;
|
|
/* 02927A24 */ if (_t166) goto L_02927A28; // else: addr-0 trap, fall-through
|
|
L_02927A28: ; // 0x2927a28
|
|
/* 02927A28 */ Gambit_fn_0282A5F4(cpu);
|
|
/* 02927A2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 02927A30 */ cpu->r[25] = cpu->r[3];
|
|
/* 02927A34 */ _t167 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02927A34 */ _t168 = _t167 & 0x00000001u;
|
|
/* 02927A34 */ if (_t168) goto L_02927A38; else goto L_02927AD0;
|
|
L_02927A38: ; // 0x2927a38
|
|
/* 02927A38 */ _t169 = cpu->r[27] + 0x00000004u;
|
|
/* 02927A38 */ cpu->r[12] = rbrew_read32(cpu->mem, _t169);
|
|
/* 02927A3C */ _t170 = cpu->r[12] + 0x00000014u;
|
|
/* 02927A3C */ cpu->r[5] = rbrew_read32(cpu->mem, _t170);
|
|
/* 02927A40 */ cpu->ctr = cpu->r[5];
|
|
/* 02927A44 */ cpu->r[3] = cpu->r[27];
|
|
/* 02927A48 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02927A4C */ _t171 = cpu->r[27] + 0x00000008u;
|
|
/* 02927A4C */ cpu->r[6] = rbrew_read32(cpu->mem, _t171);
|
|
/* 02927A50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], cpu->r[6]);
|
|
/* 02927A54 */ _t172 = cpu->r[27] + 0x00000000u;
|
|
/* 02927A54 */ cpu->r[5] = rbrew_read32(cpu->mem, _t172);
|
|
/* 02927A58 */ _t173 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02927A58 */ _t174 = _t173 & 0x00000001u;
|
|
/* 02927A58 */ if (_t174) goto L_02927A5C; else goto L_02927A64;
|
|
L_02927A5C: ; // 0x2927a5c
|
|
/* 02927A5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 02927A60 */ _t175 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02927A60 */ _t176 = _t175 & 0x00000001u;
|
|
/* 02927A60 */ if (_t176) goto L_02927A64; else goto L_02927A80;
|
|
L_02927A64: ; // 0x2927a64
|
|
/* 02927A64 */ cpu->r[31] = 0x00000000u;
|
|
/* 02927A68 */ _t177 = cpu->r[29] + 0x00000004u;
|
|
/* 02927A68 */ cpu->r[12] = rbrew_read32(cpu->mem, _t177);
|
|
/* 02927A6C */ cpu->r[9] = cpu->r[31];
|
|
/* 02927A70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 02927A74 */ _t178 = cpu->r[12] + 0x00000014u;
|
|
/* 02927A74 */ cpu->r[5] = rbrew_read32(cpu->mem, _t178);
|
|
/* 02927A78 */ _t179 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02927A78 */ _t180 = _t179 & 0x00000001u;
|
|
/* 02927A78 */ if (_t180) goto L_02927A7C; else goto L_02927AA4;
|
|
L_02927A7C: ; // 0x2927a7c
|
|
/* 02927A7C */ goto L_02927AA8;
|
|
L_02927A80: ; // 0x2927a80
|
|
/* 02927A80 */ _t181 = cpu->r[27] + 0x00000008u;
|
|
/* 02927A80 */ cpu->r[8] = rbrew_read32(cpu->mem, _t181);
|
|
/* 02927A84 */ cpu->r[31] = cpu->r[5] + cpu->r[25];
|
|
/* 02927A88 */ cpu->r[9] = cpu->r[8] - cpu->r[25];
|
|
/* 02927A8C */ cpu->r[10] = cpu->r[31] + cpu->r[9];
|
|
/* 02927A90 */ _t182 = cpu->r[10] + 0xFFFFFFFFu;
|
|
/* 02927A90 */ rbrew_write8(cpu->mem, _t182, (uint8_t)cpu->r[30]);
|
|
/* 02927A94 */ _t183 = cpu->r[29] + 0x00000004u;
|
|
/* 02927A94 */ cpu->r[12] = rbrew_read32(cpu->mem, _t183);
|
|
/* 02927A98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], cpu->r[9]);
|
|
/* 02927A9C */ _t184 = cpu->r[12] + 0x00000014u;
|
|
/* 02927A9C */ cpu->r[5] = rbrew_read32(cpu->mem, _t184);
|
|
/* 02927AA0 */ _t185 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02927AA0 */ _t186 = _t185 & 0x00000001u;
|
|
/* 02927AA0 */ if (_t186) goto L_02927AA8; else goto L_02927AA4;
|
|
L_02927AA4: ; // 0x2927aa4
|
|
/* 02927AA4 */ cpu->r[28] = cpu->r[9] + 0xFFFFFFFFu;
|
|
L_02927AA8: ; // 0x2927aa8
|
|
/* 02927AA8 */ cpu->ctr = cpu->r[5];
|
|
/* 02927AAC */ cpu->r[3] = cpu->r[29];
|
|
/* 02927AB0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02927AB4 */ _t187 = cpu->r[29] + 0x00000000u;
|
|
/* 02927AB4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t187);
|
|
/* 02927AB8 */ cpu->r[3] = cpu->r[31];
|
|
/* 02927ABC */ cpu->r[5] = cpu->r[28];
|
|
/* 02927AC0 */ cpu->r[6] = 0x00000000u;
|
|
/* 02927AC4 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 02927AC8 */ cpu->r[25] = cpu->r[25] + cpu->r[28];
|
|
/* 02927ACC */ _t188 = cpu->r[31] + cpu->r[28];
|
|
/* 02927ACC */ rbrew_write8(cpu->mem, _t188, (uint8_t)cpu->r[30]);
|
|
L_02927AD0: ; // 0x2927ad0
|
|
/* 02927AD0 */ _t189 = cpu->r[27] + 0x00000004u;
|
|
/* 02927AD0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t189);
|
|
/* 02927AD4 */ _t190 = cpu->r[7] + 0x00000014u;
|
|
/* 02927AD4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t190);
|
|
/* 02927AD8 */ cpu->ctr = cpu->r[8];
|
|
/* 02927ADC */ cpu->r[3] = cpu->r[27];
|
|
/* 02927AE0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02927AE4 */ _t191 = cpu->r[1] + 0x00000134u;
|
|
/* 02927AE4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t191);
|
|
/* 02927AE8 */ _t192 = cpu->r[9] + 0x00000014u;
|
|
/* 02927AE8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t192);
|
|
/* 02927AEC */ cpu->ctr = cpu->r[10];
|
|
/* 02927AF0 */ _t193 = cpu->r[27] + 0x00000000u;
|
|
/* 02927AF0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t193);
|
|
/* 02927AF4 */ cpu->r[3] = cpu->r[1] + 0x00000130u;
|
|
/* 02927AF8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02927AFC */ _t194 = cpu->r[27] + 0x00000008u;
|
|
/* 02927AFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t194);
|
|
/* 02927B00 */ cpu->r[3] = cpu->r[31] + cpu->r[25];
|
|
/* 02927B04 */ _t195 = cpu->r[1] + 0x00000130u;
|
|
/* 02927B04 */ cpu->r[5] = rbrew_read32(cpu->mem, _t195);
|
|
/* 02927B08 */ cpu->r[4] = cpu->r[0] - cpu->r[25];
|
|
/* 02927B0C */ Gambit_fn_02927520(cpu);
|
|
/* 02927B10 */ _t196 = cpu->r[27] + 0x00000004u;
|
|
/* 02927B10 */ cpu->r[12] = rbrew_read32(cpu->mem, _t196);
|
|
/* 02927B14 */ _t197 = cpu->r[12] + 0x00000014u;
|
|
/* 02927B14 */ cpu->r[4] = rbrew_read32(cpu->mem, _t197);
|
|
/* 02927B18 */ cpu->r[25] = cpu->r[25] + cpu->r[3];
|
|
/* 02927B1C */ cpu->ctr = cpu->r[4];
|
|
/* 02927B20 */ cpu->r[3] = cpu->r[27];
|
|
/* 02927B24 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02927B28 */ _t198 = cpu->r[29] + 0x00000004u;
|
|
/* 02927B28 */ cpu->r[5] = rbrew_read32(cpu->mem, _t198);
|
|
/* 02927B2C */ _t199 = cpu->r[5] + 0x00000014u;
|
|
/* 02927B2C */ cpu->r[6] = rbrew_read32(cpu->mem, _t199);
|
|
/* 02927B30 */ cpu->ctr = cpu->r[6];
|
|
/* 02927B34 */ _t200 = cpu->r[27] + 0x00000000u;
|
|
/* 02927B34 */ cpu->r[31] = rbrew_read32(cpu->mem, _t200);
|
|
/* 02927B38 */ cpu->r[3] = cpu->r[29];
|
|
/* 02927B3C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02927B40 */ _t201 = cpu->r[29] + 0x00000000u;
|
|
/* 02927B40 */ cpu->r[12] = rbrew_read32(cpu->mem, _t201);
|
|
/* 02927B44 */ cpu->r[11] = cpu->r[12];
|
|
/* 02927B48 */ _t202 = cpu->r[11] + 0x00000000u;
|
|
/* 02927B48 */ cpu->r[7] = rbrew_read8(cpu->mem, _t202);
|
|
/* 02927B4C */ cpu->r[9] = 0x00000000u;
|
|
/* 02927B50 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[30]);
|
|
/* 02927B54 */ cpu->r[0] = 0x00080000u;
|
|
/* 02927B58 */ _t203 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02927B58 */ _t204 = _t203 & 0x00000001u;
|
|
/* 02927B58 */ if (_t204) goto L_02927B80; else goto L_02927B5C;
|
|
L_02927B5C: ; // 0x2927b5c
|
|
/* 02927B5C */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 02927B60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], cpu->r[0]);
|
|
/* 02927B64 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 02927B68 */ _t205 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02927B68 */ _t206 = _t205 & 0x00000001u;
|
|
/* 02927B68 */ if (_t206) goto L_02927B7C; else goto L_02927B6C;
|
|
L_02927B6C: ; // 0x2927b6c
|
|
/* 02927B6C */ _t207 = cpu->r[11] + 0x00000000u;
|
|
/* 02927B6C */ cpu->r[8] = rbrew_read8(cpu->mem, _t207);
|
|
/* 02927B70 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[30]);
|
|
/* 02927B74 */ _t208 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02927B74 */ _t209 = _t208 & 0x00000001u;
|
|
/* 02927B74 */ if (_t209) goto L_02927B78; else goto L_02927B5C;
|
|
L_02927B78: ; // 0x2927b78
|
|
/* 02927B78 */ goto L_02927B80;
|
|
L_02927B7C: ; // 0x2927b7c
|
|
/* 02927B7C */ cpu->r[9] = 0x00000000u;
|
|
L_02927B80: ; // 0x2927b80
|
|
/* 02927B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 02927B84 */ _t210 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02927B84 */ _t211 = _t210 & 0x00000001u;
|
|
/* 02927B84 */ if (_t211) goto L_02927B90; else goto L_02927B88;
|
|
L_02927B88: ; // 0x2927b88
|
|
/* 02927B88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], cpu->r[9]);
|
|
/* 02927B8C */ _t212 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02927B8C */ _t213 = _t212 & 0x00000001u;
|
|
/* 02927B8C */ if (_t213) goto L_02927B90; else goto L_02927BC0;
|
|
L_02927B90: ; // 0x2927b90
|
|
/* 02927B90 */ cpu->r[10] = 0x101F0000u;
|
|
/* 02927B94 */ _t214 = cpu->r[1] + 0x00000020u;
|
|
/* 02927B94 */ rbrew_write32(cpu->mem, _t214, cpu->r[26]);
|
|
/* 02927B98 */ _t215 = cpu->r[10] + 0x000066E8u;
|
|
/* 02927B98 */ cpu->r[10] = rbrew_read32(cpu->mem, _t215);
|
|
/* 02927B9C */ cpu->r[3] = cpu->r[1] + 0x0000001Cu;
|
|
/* 02927BA0 */ _t216 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02927BA0 */ rbrew_write32(cpu->mem, _t216, cpu->r[10]);
|
|
/* 02927BA4 */ Gambit_fn_02928BD0(cpu);
|
|
/* 02927BA8 */ _t217 = cpu->r[27] + 0x00000008u;
|
|
/* 02927BA8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t217);
|
|
/* 02927BAC */ cpu->r[3] = cpu->r[31] + cpu->r[25];
|
|
/* 02927BB0 */ _t218 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02927BB0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t218);
|
|
/* 02927BB4 */ cpu->r[4] = cpu->r[9] - cpu->r[25];
|
|
/* 02927BB8 */ Gambit_fn_02927520(cpu);
|
|
/* 02927BBC */ goto L_02927C9C;
|
|
L_02927BC0: ; // 0x2927bc0
|
|
/* 02927BC0 */ _t219 = cpu->r[1] + 0x00000020u;
|
|
/* 02927BC0 */ rbrew_write32(cpu->mem, _t219, cpu->r[26]);
|
|
/* 02927BC4 */ cpu->r[10] = cpu->r[12] + cpu->r[24];
|
|
/* 02927BC8 */ cpu->r[3] = cpu->r[1] + 0x0000001Cu;
|
|
/* 02927BCC */ _t220 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02927BCC */ rbrew_write32(cpu->mem, _t220, cpu->r[10]);
|
|
/* 02927BD0 */ Gambit_fn_02928BD0(cpu);
|
|
/* 02927BD4 */ _t221 = cpu->r[27] + 0x00000008u;
|
|
/* 02927BD4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t221);
|
|
/* 02927BD8 */ cpu->r[3] = cpu->r[31] + cpu->r[25];
|
|
/* 02927BDC */ _t222 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02927BDC */ cpu->r[5] = rbrew_read32(cpu->mem, _t222);
|
|
/* 02927BE0 */ cpu->r[4] = cpu->r[9] - cpu->r[25];
|
|
/* 02927BE4 */ Gambit_fn_02927520(cpu);
|
|
/* 02927BE8 */ goto L_02927C9C;
|
|
L_02927BEC: ; // 0x2927bec
|
|
/* 02927BEC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[30]);
|
|
/* 02927BF0 */ _t223 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02927BF0 */ _t224 = _t223 & 0x00000001u;
|
|
/* 02927BF0 */ if (_t224) goto L_02927BF4; else goto L_02927C30;
|
|
L_02927BF4: ; // 0x2927bf4
|
|
/* 02927BF4 */ _t225 = cpu->r[27] + 0x00000004u;
|
|
/* 02927BF4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t225);
|
|
/* 02927BF8 */ _t226 = cpu->r[4] + 0x00000014u;
|
|
/* 02927BF8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t226);
|
|
/* 02927BFC */ cpu->ctr = cpu->r[5];
|
|
/* 02927C00 */ cpu->r[3] = cpu->r[27];
|
|
/* 02927C04 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02927C08 */ _t227 = cpu->r[29] + 0x00000004u;
|
|
/* 02927C08 */ cpu->r[6] = rbrew_read32(cpu->mem, _t227);
|
|
/* 02927C0C */ _t228 = cpu->r[6] + 0x00000014u;
|
|
/* 02927C0C */ cpu->r[7] = rbrew_read32(cpu->mem, _t228);
|
|
/* 02927C10 */ cpu->ctr = cpu->r[7];
|
|
/* 02927C14 */ _t229 = cpu->r[27] + 0x00000000u;
|
|
/* 02927C14 */ cpu->r[31] = rbrew_read32(cpu->mem, _t229);
|
|
/* 02927C18 */ cpu->r[3] = cpu->r[29];
|
|
/* 02927C1C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02927C20 */ _t230 = cpu->r[27] + 0x00000008u;
|
|
/* 02927C20 */ cpu->r[4] = rbrew_read32(cpu->mem, _t230);
|
|
/* 02927C24 */ cpu->r[3] = cpu->r[31];
|
|
/* 02927C28 */ _t231 = cpu->r[29] + 0x00000000u;
|
|
/* 02927C28 */ cpu->r[5] = rbrew_read32(cpu->mem, _t231);
|
|
/* 02927C2C */ goto L_02927C98;
|
|
L_02927C30: ; // 0x2927c30
|
|
/* 02927C30 */ _t232 = cpu->r[25] + 0x00000004u;
|
|
/* 02927C30 */ cpu->r[12] = rbrew_read32(cpu->mem, _t232);
|
|
/* 02927C34 */ _t233 = cpu->r[12] + 0x00000014u;
|
|
/* 02927C34 */ cpu->r[0] = rbrew_read32(cpu->mem, _t233);
|
|
/* 02927C38 */ cpu->ctr = cpu->r[0];
|
|
/* 02927C3C */ cpu->r[3] = cpu->r[25];
|
|
/* 02927C40 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02927C44 */ _t234 = cpu->r[25] + 0x00000000u;
|
|
/* 02927C44 */ cpu->r[5] = rbrew_read32(cpu->mem, _t234);
|
|
/* 02927C48 */ cpu->r[3] = cpu->r[27];
|
|
/* 02927C4C */ cpu->r[4] = cpu->r[22] + 0x000040B8u;
|
|
/* 02927C50 */ _t235 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 02927C50 */ _t236 = _t235 & 0x00000001u;
|
|
/* 02927C50 */ if (_t236) goto L_02927C54; // else: addr-0 trap, fall-through
|
|
L_02927C54: ; // 0x2927c54
|
|
/* 02927C54 */ Gambit_fn_0282A5F4(cpu);
|
|
/* 02927C58 */ _t237 = cpu->r[27] + 0x00000004u;
|
|
/* 02927C58 */ cpu->r[4] = rbrew_read32(cpu->mem, _t237);
|
|
/* 02927C5C */ _t238 = cpu->r[4] + 0x00000014u;
|
|
/* 02927C5C */ cpu->r[5] = rbrew_read32(cpu->mem, _t238);
|
|
/* 02927C60 */ cpu->r[30] = cpu->r[3];
|
|
/* 02927C64 */ cpu->ctr = cpu->r[5];
|
|
/* 02927C68 */ cpu->r[3] = cpu->r[27];
|
|
/* 02927C6C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02927C70 */ _t239 = cpu->r[29] + 0x00000004u;
|
|
/* 02927C70 */ cpu->r[6] = rbrew_read32(cpu->mem, _t239);
|
|
/* 02927C74 */ _t240 = cpu->r[6] + 0x00000014u;
|
|
/* 02927C74 */ cpu->r[7] = rbrew_read32(cpu->mem, _t240);
|
|
/* 02927C78 */ cpu->ctr = cpu->r[7];
|
|
/* 02927C7C */ _t241 = cpu->r[27] + 0x00000000u;
|
|
/* 02927C7C */ cpu->r[31] = rbrew_read32(cpu->mem, _t241);
|
|
/* 02927C80 */ cpu->r[3] = cpu->r[29];
|
|
/* 02927C84 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02927C88 */ _t242 = cpu->r[27] + 0x00000008u;
|
|
/* 02927C88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t242);
|
|
/* 02927C8C */ _t243 = cpu->r[29] + 0x00000000u;
|
|
/* 02927C8C */ cpu->r[5] = rbrew_read32(cpu->mem, _t243);
|
|
/* 02927C90 */ cpu->r[4] = cpu->r[0] - cpu->r[30];
|
|
/* 02927C94 */ cpu->r[3] = cpu->r[31] + cpu->r[30];
|
|
L_02927C98: ; // 0x2927c98
|
|
/* 02927C98 */ Gambit_fn_02927520(cpu);
|
|
L_02927C9C: ; // 0x2927c9c
|
|
/* 02927C9C */ /* nop */
|
|
/* 02927CA0 */ _t244 = cpu->r[1] + 0x0000027Cu;
|
|
/* 02927CA0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t244);
|
|
/* 02927CA4 */ cpu->lr = cpu->r[0];
|
|
/* 02927CA8 */ cpu->r[1] = cpu->r[1] + 0x00000278u;
|
|
/* 02927CAC */ return;
|
|
}
|
|
|
|
// fn_02927CB0 @ 0x2927cb0
|
|
void Gambit_fn_02927CB0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _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_02927CB0: ; // 0x2927cb0
|
|
/* 02927CB0 */ _t0 = cpu->r[1] + 0xFFFFF3D8u;
|
|
/* 02927CB0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02927CB0 */ cpu->r[1] = _t0;
|
|
/* 02927CB4 */ cpu->r[0] = cpu->lr;
|
|
/* 02927CB8 */ _t1 = cpu->r[1] + 0x00000C20u;
|
|
/* 02927CB8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02927CBC */ cpu->r[7] = cpu->r[1] + 0x00000020u;
|
|
/* 02927CC0 */ cpu->r[9] = 0x10140000u;
|
|
/* 02927CC4 */ _t2 = cpu->r[1] + 0x00000C24u;
|
|
/* 02927CC4 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02927CC8 */ cpu->r[9] = cpu->r[9] + 0x00004084u;
|
|
/* 02927CCC */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02927CCC */ rbrew_write32(cpu->mem, _t3, cpu->r[7]);
|
|
/* 02927CD0 */ cpu->r[8] = 0x00000118u;
|
|
/* 02927CD4 */ _t4 = cpu->r[1] + 0x00000018u;
|
|
/* 02927CD4 */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
/* 02927CD8 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02927CD8 */ rbrew_write32(cpu->mem, _t5, cpu->r[8]);
|
|
/* 02927CDC */ cpu->r[11] = 0x101D0000u;
|
|
/* 02927CE0 */ cpu->r[12] = 0x10110000u;
|
|
/* 02927CE4 */ _t6 = cpu->r[1] + 0x00000C2Cu;
|
|
/* 02927CE4 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02927CE8 */ cpu->r[0] = 0x10140000u;
|
|
/* 02927CEC */ _t7 = cpu->r[11] + 0xFFFF988Cu;
|
|
/* 02927CEC */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02927CF0 */ cpu->r[0] = cpu->r[0] + 0x00003F4Cu;
|
|
/* 02927CF4 */ _t8 = cpu->r[12] + 0x00007399u;
|
|
/* 02927CF4 */ cpu->r[12] = rbrew_read8(cpu->mem, _t8);
|
|
/* 02927CF8 */ cpu->r[4] = cpu->r[3];
|
|
/* 02927CFC */ _t9 = cpu->r[1] + 0x00000010u;
|
|
/* 02927CFC */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 02927D00 */ cpu->r[10] = cpu->r[11] + 0x00001724u;
|
|
/* 02927D04 */ _t10 = cpu->r[1] + 0x00000020u;
|
|
/* 02927D04 */ rbrew_write8(cpu->mem, _t10, (uint8_t)cpu->r[12]);
|
|
/* 02927D08 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02927D0C */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 02927D10 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02927D10 */ rbrew_write32(cpu->mem, _t11, cpu->r[10]);
|
|
/* 02927D14 */ cpu->r[30] = cpu->r[11] + 0x00000024u;
|
|
/* 02927D18 */ _t12 = cpu->r[1] + 0x00000137u;
|
|
/* 02927D18 */ rbrew_write8(cpu->mem, _t12, (uint8_t)cpu->r[12]);
|
|
/* 02927D1C */ Gambit_fn_029275A4(cpu);
|
|
/* 02927D20 */ cpu->r[3] = cpu->r[1] + 0x0000019Cu;
|
|
/* 02927D24 */ rbrew_dispatch(cpu, 0x02d09958u);
|
|
/* 02927D28 */ _t13 = cpu->r[1] + 0x00000018u;
|
|
/* 02927D28 */ cpu->r[9] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02927D2C */ _t14 = cpu->r[9] + 0x00000014u;
|
|
/* 02927D2C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02927D30 */ cpu->ctr = cpu->r[0];
|
|
/* 02927D34 */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 02927D38 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02927D3C */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 02927D3C */ cpu->r[5] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02927D40 */ cpu->r[6] = 0x10140000u;
|
|
/* 02927D44 */ cpu->r[3] = cpu->r[30];
|
|
/* 02927D48 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 02927D4C */ cpu->r[6] = cpu->r[6] + 0x000040BEu;
|
|
/* 02927D50 */ cpu->r[8] = 0xFFFFFFFFu;
|
|
/* 02927D54 */ cpu->r[4] = cpu->r[1] + 0x0000019Cu;
|
|
/* 02927D58 */ rbrew_dispatch(cpu, 0x02d099c0u);
|
|
/* 02927D5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02927D60 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02927D60 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02927D60 */ if (_t17) goto L_02927D84; else goto L_02927D64;
|
|
L_02927D64: ; // 0x2927d64
|
|
/* 02927D64 */ _t18 = cpu->r[1] + 0x00000C2Cu;
|
|
/* 02927D64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02927D68 */ cpu->r[4] = 0x00000000u;
|
|
/* 02927D6C */ _t19 = cpu->r[1] + 0x00000C24u;
|
|
/* 02927D6C */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02927D70 */ cpu->lr = cpu->r[0];
|
|
/* 02927D74 */ _t20 = cpu->r[1] + 0x00000C20u;
|
|
/* 02927D74 */ cpu->r[30] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02927D78 */ cpu->r[3] = cpu->r[4];
|
|
/* 02927D7C */ cpu->r[1] = cpu->r[1] + 0x00000C28u;
|
|
/* 02927D80 */ return;
|
|
L_02927D84: ; // 0x2927d84
|
|
/* 02927D84 */ cpu->r[0] = 0x04000000u;
|
|
/* 02927D88 */ cpu->r[3] = cpu->r[30];
|
|
/* 02927D8C */ _t21 = cpu->r[1] + 0x00000008u;
|
|
/* 02927D8C */ cpu->r[5] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02927D90 */ cpu->r[4] = cpu->r[1] + 0x0000019Cu;
|
|
/* 02927D94 */ cpu->r[6] = cpu->r[1] + 0x00000138u;
|
|
/* 02927D98 */ cpu->r[7] = 0x00000000u;
|
|
/* 02927D9C */ _t22 = cpu->r[1] + 0x00000138u;
|
|
/* 02927D9C */ rbrew_write32(cpu->mem, _t22, cpu->r[0]);
|
|
/* 02927DA0 */ rbrew_dispatch(cpu, 0x02d09918u);
|
|
/* 02927DA4 */ cpu->r[31] = cpu->r[3];
|
|
/* 02927DA8 */ _t23 = cpu->r[1] + 0x00000008u;
|
|
/* 02927DA8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02927DAC */ cpu->r[6] = 0x00000000u;
|
|
/* 02927DB0 */ cpu->r[4] = cpu->r[1] + 0x0000019Cu;
|
|
/* 02927DB4 */ cpu->r[3] = cpu->r[30];
|
|
/* 02927DB8 */ rbrew_dispatch(cpu, 0x02d097e0u);
|
|
/* 02927DBC */ cpu->r[3] = 0x00000000u;
|
|
/* 02927DC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02927DC4 */ cpu->r[4] = cpu->r[3];
|
|
/* 02927DC8 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02927DC8 */ _t25 = _t24 & 0x00000001u;
|
|
/* 02927DC8 */ if (_t25) goto L_02927DCC; else goto L_02927DD4;
|
|
L_02927DCC: ; // 0x2927dcc
|
|
/* 02927DCC */ _t26 = cpu->r[1] + 0x00000168u;
|
|
/* 02927DCC */ cpu->r[4] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02927DD0 */ _t27 = cpu->r[1] + 0x00000164u;
|
|
/* 02927DD0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t27);
|
|
L_02927DD4: ; // 0x2927dd4
|
|
/* 02927DD4 */ _t28 = cpu->r[1] + 0x00000C2Cu;
|
|
/* 02927DD4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02927DD8 */ _t29 = cpu->r[1] + 0x00000C20u;
|
|
/* 02927DD8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02927DDC */ cpu->lr = cpu->r[0];
|
|
/* 02927DE0 */ _t30 = cpu->r[1] + 0x00000C24u;
|
|
/* 02927DE0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02927DE4 */ cpu->r[1] = cpu->r[1] + 0x00000C28u;
|
|
/* 02927DE8 */ return;
|
|
}
|
|
|
|
// fn_02927DEC @ 0x2927dec
|
|
void Gambit_fn_02927DEC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _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;
|
|
|
|
L_02927DEC: ; // 0x2927dec
|
|
/* 02927DEC */ _t0 = cpu->r[1] + 0xFFFFFD70u;
|
|
/* 02927DEC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02927DEC */ cpu->r[1] = _t0;
|
|
/* 02927DF0 */ /* nop */
|
|
/* 02927DF4 */ cpu->r[10] = 0x10140000u;
|
|
/* 02927DF8 */ cpu->r[0] = cpu->lr;
|
|
/* 02927DFC */ _t1 = cpu->r[1] + 0x00000294u;
|
|
/* 02927DFC */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02927E00 */ cpu->r[29] = cpu->r[5];
|
|
/* 02927E04 */ cpu->r[10] = cpu->r[10] + 0x000040C0u;
|
|
/* 02927E08 */ cpu->r[28] = cpu->r[4];
|
|
/* 02927E0C */ cpu->r[20] = 0x10140000u;
|
|
/* 02927E10 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02927E10 */ rbrew_write32(cpu->mem, _t2, cpu->r[10]);
|
|
/* 02927E14 */ cpu->r[4] = 0x10140000u;
|
|
/* 02927E18 */ cpu->r[20] = cpu->r[20] + 0x00003F4Cu;
|
|
/* 02927E1C */ _t3 = cpu->r[1] + 0x00000018u;
|
|
/* 02927E1C */ rbrew_write32(cpu->mem, _t3, cpu->r[20]);
|
|
/* 02927E20 */ cpu->r[4] = cpu->r[4] + 0x0000402Cu;
|
|
/* 02927E24 */ _t4 = cpu->r[1] + 0x00000010u;
|
|
/* 02927E24 */ rbrew_write32(cpu->mem, _t4, cpu->r[4]);
|
|
/* 02927E28 */ cpu->r[26] = 0x00000000u;
|
|
/* 02927E2C */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02927E2C */ rbrew_write32(cpu->mem, _t5, cpu->r[26]);
|
|
/* 02927E30 */ _t6 = cpu->r[28] + 0x00000004u;
|
|
/* 02927E30 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02927E34 */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 02927E34 */ rbrew_write32(cpu->mem, _t7, cpu->r[28]);
|
|
/* 02927E38 */ _t8 = cpu->r[12] + 0x00000014u;
|
|
/* 02927E38 */ cpu->r[4] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02927E3C */ cpu->r[27] = cpu->r[3];
|
|
/* 02927E40 */ cpu->ctr = cpu->r[4];
|
|
/* 02927E44 */ cpu->r[30] = cpu->r[6];
|
|
/* 02927E48 */ cpu->r[3] = cpu->r[28];
|
|
/* 02927E4C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02927E50 */ _t9 = cpu->r[28] + 0x00000000u;
|
|
/* 02927E50 */ cpu->r[4] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02927E54 */ cpu->r[12] = 0x10110000u;
|
|
/* 02927E58 */ _t10 = cpu->r[12] + 0x00007399u;
|
|
/* 02927E58 */ cpu->r[31] = rbrew_read8(cpu->mem, _t10);
|
|
/* 02927E5C */ _t11 = cpu->r[4] + 0x00000000u;
|
|
/* 02927E5C */ cpu->r[12] = rbrew_read8(cpu->mem, _t11);
|
|
/* 02927E60 */ cpu->r[8] = cpu->r[31];
|
|
/* 02927E64 */ cpu->r[9] = cpu->r[26];
|
|
/* 02927E68 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[8]);
|
|
/* 02927E6C */ cpu->r[6] = 0x00080000u;
|
|
/* 02927E70 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02927E70 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02927E70 */ if (_t13) goto L_02927E98; else goto L_02927E74;
|
|
L_02927E74: ; // 0x2927e74
|
|
/* 02927E74 */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 02927E78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], cpu->r[6]);
|
|
/* 02927E7C */ cpu->r[4] = cpu->r[4] + 0x00000001u;
|
|
/* 02927E80 */ _t14 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02927E80 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02927E80 */ if (_t15) goto L_02927E94; else goto L_02927E84;
|
|
L_02927E84: ; // 0x2927e84
|
|
/* 02927E84 */ _t16 = cpu->r[4] + 0x00000000u;
|
|
/* 02927E84 */ cpu->r[0] = rbrew_read8(cpu->mem, _t16);
|
|
/* 02927E88 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[8]);
|
|
/* 02927E8C */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02927E8C */ _t18 = _t17 & 0x00000001u;
|
|
/* 02927E8C */ if (_t18) goto L_02927E90; else goto L_02927E74;
|
|
L_02927E90: ; // 0x2927e90
|
|
/* 02927E90 */ goto L_02927E98;
|
|
L_02927E94: ; // 0x2927e94
|
|
/* 02927E94 */ cpu->r[9] = 0x00000000u;
|
|
L_02927E98: ; // 0x2927e98
|
|
/* 02927E98 */ _t19 = cpu->r[1] + 0x00000247u;
|
|
/* 02927E98 */ rbrew_write8(cpu->mem, _t19, (uint8_t)cpu->r[31]);
|
|
/* 02927E9C */ cpu->r[5] = cpu->r[1] + 0x00000148u;
|
|
/* 02927EA0 */ _t20 = cpu->r[1] + 0x00000148u;
|
|
/* 02927EA0 */ rbrew_write8(cpu->mem, _t20, (uint8_t)cpu->r[31]);
|
|
/* 02927EA4 */ cpu->r[11] = cpu->r[1] + 0x0000003Cu;
|
|
/* 02927EA8 */ _t21 = cpu->r[1] + 0x0000013Cu;
|
|
/* 02927EA8 */ rbrew_write32(cpu->mem, _t21, cpu->r[5]);
|
|
/* 02927EAC */ cpu->r[7] = 0x00000100u;
|
|
/* 02927EB0 */ _t22 = cpu->r[1] + 0x00000030u;
|
|
/* 02927EB0 */ rbrew_write32(cpu->mem, _t22, cpu->r[11]);
|
|
/* 02927EB4 */ cpu->r[8] = 0x10140000u;
|
|
/* 02927EB8 */ _t23 = cpu->r[1] + 0x00000144u;
|
|
/* 02927EB8 */ rbrew_write32(cpu->mem, _t23, cpu->r[7]);
|
|
/* 02927EBC */ cpu->r[8] = cpu->r[8] + 0x00003F94u;
|
|
/* 02927EC0 */ _t24 = cpu->r[1] + 0x00000038u;
|
|
/* 02927EC0 */ rbrew_write32(cpu->mem, _t24, cpu->r[7]);
|
|
/* 02927EC4 */ cpu->r[15] = 0x00000000u;
|
|
/* 02927EC8 */ _t25 = cpu->r[1] + 0x00000034u;
|
|
/* 02927EC8 */ rbrew_write32(cpu->mem, _t25, cpu->r[8]);
|
|
/* 02927ECC */ cpu->r[14] = 0x10140000u;
|
|
/* 02927ED0 */ _t26 = cpu->r[1] + 0x00000140u;
|
|
/* 02927ED0 */ rbrew_write32(cpu->mem, _t26, cpu->r[8]);
|
|
/* 02927ED4 */ cpu->r[14] = cpu->r[14] + 0x00003F64u;
|
|
/* 02927ED8 */ _t27 = cpu->r[1] + 0x0000013Bu;
|
|
/* 02927ED8 */ rbrew_write8(cpu->mem, _t27, (uint8_t)cpu->r[31]);
|
|
/* 02927EDC */ cpu->r[19] = cpu->r[9] + 0x00000001u;
|
|
/* 02927EE0 */ _t28 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02927EE0 */ rbrew_write8(cpu->mem, _t28, (uint8_t)cpu->r[31]);
|
|
/* 02927EE4 */ _t29 = cpu->r[27] + 0x00000004u;
|
|
/* 02927EE4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02927EE8 */ _t30 = cpu->r[5] + 0x00000014u;
|
|
/* 02927EE8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02927EEC */ cpu->ctr = cpu->r[7];
|
|
/* 02927EF0 */ cpu->r[3] = cpu->r[27];
|
|
/* 02927EF4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02927EF8 */ _t31 = cpu->r[27] + 0x00000000u;
|
|
/* 02927EF8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02927EFC */ _t32 = cpu->r[27] + 0x00000008u;
|
|
/* 02927EFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02927F00 */ cpu->r[7] = cpu->r[9] + cpu->r[15];
|
|
/* 02927F04 */ cpu->r[0] = cpu->r[0] - cpu->r[15];
|
|
/* 02927F04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02927F08 */ _t33 = cpu->r[1] + 0x00000028u;
|
|
/* 02927F08 */ rbrew_write32(cpu->mem, _t33, cpu->r[14]);
|
|
/* 02927F0C */ _t34 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02927F0C */ _t35 = _t34 & 0x00000001u;
|
|
/* 02927F0C */ if (_t35) goto L_02927F54; else goto L_02927F10;
|
|
L_02927F10: ; // 0x2927f10
|
|
/* 02927F10 */ _t36 = cpu->r[1] + 0x00000008u;
|
|
/* 02927F10 */ cpu->r[25] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02927F14 */ _t37 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02927F14 */ rbrew_write32(cpu->mem, _t37, cpu->r[26]);
|
|
/* 02927F18 */ _t38 = cpu->r[1] + 0x00000024u;
|
|
/* 02927F18 */ rbrew_write32(cpu->mem, _t38, cpu->r[26]);
|
|
/* 02927F1C */ _t39 = cpu->r[25] + 0x00000004u;
|
|
/* 02927F1C */ cpu->r[12] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02927F20 */ _t40 = cpu->r[12] + 0x00000014u;
|
|
/* 02927F20 */ cpu->r[4] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02927F24 */ cpu->ctr = cpu->r[4];
|
|
/* 02927F28 */ _t41 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02927F28 */ cpu->r[21] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02927F2C */ cpu->r[3] = cpu->r[25];
|
|
/* 02927F30 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02927F34 */ _t42 = cpu->r[25] + 0x00000000u;
|
|
/* 02927F34 */ cpu->r[8] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02927F38 */ cpu->r[7] = cpu->r[31];
|
|
/* 02927F3C */ _t43 = cpu->r[8] + 0x00000000u;
|
|
/* 02927F3C */ cpu->r[6] = rbrew_read8(cpu->mem, _t43);
|
|
/* 02927F40 */ cpu->r[11] = 0x00000000u;
|
|
/* 02927F44 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[7]);
|
|
/* 02927F48 */ cpu->r[0] = 0x00080000u;
|
|
/* 02927F4C */ _t44 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02927F4C */ _t45 = _t44 & 0x00000001u;
|
|
/* 02927F4C */ if (_t45) goto L_02927F50; else goto L_02927F9C;
|
|
L_02927F50: ; // 0x2927f50
|
|
/* 02927F50 */ goto L_02927FC0;
|
|
L_02927F54: ; // 0x2927f54
|
|
/* 02927F54 */ _t46 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02927F54 */ rbrew_write32(cpu->mem, _t46, cpu->r[0]);
|
|
/* 02927F58 */ cpu->r[11] = cpu->r[7] + cpu->r[0];
|
|
/* 02927F5C */ _t47 = cpu->r[1] + 0x00000024u;
|
|
/* 02927F5C */ rbrew_write32(cpu->mem, _t47, cpu->r[7]);
|
|
/* 02927F60 */ _t48 = cpu->r[11] + 0xFFFFFFFFu;
|
|
/* 02927F60 */ rbrew_write8(cpu->mem, _t48, (uint8_t)cpu->r[31]);
|
|
/* 02927F64 */ _t49 = cpu->r[1] + 0x00000008u;
|
|
/* 02927F64 */ cpu->r[25] = rbrew_read32(cpu->mem, _t49);
|
|
/* 02927F68 */ _t50 = cpu->r[25] + 0x00000004u;
|
|
/* 02927F68 */ cpu->r[12] = rbrew_read32(cpu->mem, _t50);
|
|
/* 02927F6C */ _t51 = cpu->r[12] + 0x00000014u;
|
|
/* 02927F6C */ cpu->r[4] = rbrew_read32(cpu->mem, _t51);
|
|
/* 02927F70 */ cpu->ctr = cpu->r[4];
|
|
/* 02927F74 */ _t52 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02927F74 */ cpu->r[21] = rbrew_read32(cpu->mem, _t52);
|
|
/* 02927F78 */ cpu->r[3] = cpu->r[25];
|
|
/* 02927F7C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02927F80 */ _t53 = cpu->r[25] + 0x00000000u;
|
|
/* 02927F80 */ cpu->r[8] = rbrew_read32(cpu->mem, _t53);
|
|
/* 02927F84 */ cpu->r[7] = cpu->r[31];
|
|
/* 02927F88 */ _t54 = cpu->r[8] + 0x00000000u;
|
|
/* 02927F88 */ cpu->r[6] = rbrew_read8(cpu->mem, _t54);
|
|
/* 02927F8C */ cpu->r[11] = 0x00000000u;
|
|
/* 02927F90 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[7]);
|
|
/* 02927F94 */ cpu->r[0] = 0x00080000u;
|
|
/* 02927F98 */ _t55 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02927F98 */ _t56 = _t55 & 0x00000001u;
|
|
/* 02927F98 */ if (_t56) goto L_02927F50; else goto L_02927F9C;
|
|
L_02927F9C: ; // 0x2927f9c
|
|
/* 02927F9C */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 02927FA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], cpu->r[0]);
|
|
/* 02927FA4 */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 02927FA8 */ _t57 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02927FA8 */ _t58 = _t57 & 0x00000001u;
|
|
/* 02927FA8 */ if (_t58) goto L_02927FBC; else goto L_02927FAC;
|
|
L_02927FAC: ; // 0x2927fac
|
|
/* 02927FAC */ _t59 = cpu->r[8] + 0x00000000u;
|
|
/* 02927FAC */ cpu->r[10] = rbrew_read8(cpu->mem, _t59);
|
|
/* 02927FB0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[7]);
|
|
/* 02927FB4 */ _t60 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02927FB4 */ _t61 = _t60 & 0x00000001u;
|
|
/* 02927FB4 */ if (_t61) goto L_02927FB8; else goto L_02927F9C;
|
|
L_02927FB8: ; // 0x2927fb8
|
|
/* 02927FB8 */ goto L_02927FC0;
|
|
L_02927FBC: ; // 0x2927fbc
|
|
/* 02927FBC */ cpu->r[11] = 0x00000000u;
|
|
L_02927FC0: ; // 0x2927fc0
|
|
/* 02927FC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], 0x00000000u);
|
|
/* 02927FC4 */ _t62 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02927FC4 */ _t63 = _t62 & 0x00000001u;
|
|
/* 02927FC4 */ if (_t63) goto L_02927FD0; else goto L_02927FC8;
|
|
L_02927FC8: ; // 0x2927fc8
|
|
/* 02927FC8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], cpu->r[11]);
|
|
/* 02927FCC */ _t64 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02927FCC */ _t65 = _t64 & 0x00000001u;
|
|
/* 02927FCC */ if (_t65) goto L_02927FD0; else goto L_02927FE4;
|
|
L_02927FD0: ; // 0x2927fd0
|
|
/* 02927FD0 */ _t66 = cpu->r[1] + 0x00000008u;
|
|
/* 02927FD0 */ cpu->r[25] = rbrew_read32(cpu->mem, _t66);
|
|
/* 02927FD4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], cpu->r[28]);
|
|
/* 02927FD8 */ _t67 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02927FD8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t67);
|
|
/* 02927FDC */ _t68 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02927FDC */ _t69 = _t68 & 0x00000001u;
|
|
/* 02927FDC */ if (_t69) goto L_02927FE0; else goto L_029280AC;
|
|
L_02927FE0: ; // 0x2927fe0
|
|
/* 02927FE0 */ goto L_029280A4;
|
|
L_02927FE4: ; // 0x2927fe4
|
|
/* 02927FE4 */ _t70 = cpu->r[1] + 0x00000028u;
|
|
/* 02927FE4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t70);
|
|
/* 02927FE8 */ _t71 = cpu->r[12] + 0x00000014u;
|
|
/* 02927FE8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t71);
|
|
/* 02927FEC */ cpu->ctr = cpu->r[0];
|
|
/* 02927FF0 */ cpu->r[3] = cpu->r[1] + 0x00000024u;
|
|
/* 02927FF4 */ cpu->r[22] = 0x00000000u;
|
|
/* 02927FF8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02927FFC */ cpu->r[17] = 0x00080000u;
|
|
/* 02928000 */ _t72 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02928000 */ cpu->r[4] = rbrew_read32(cpu->mem, _t72);
|
|
/* 02928004 */ cpu->r[18] = cpu->r[21] + 0x00000001u;
|
|
/* 02928008 */ cpu->r[17] = cpu->r[17] + 0x00000001u;
|
|
/* 0292800C */ _t73 = cpu->r[1] + 0x00000024u;
|
|
/* 0292800C */ cpu->r[23] = rbrew_read32(cpu->mem, _t73);
|
|
/* 02928010 */ cpu->r[24] = cpu->r[4] + 0xFFFFFFFFu;
|
|
L_02928014: ; // 0x2928014
|
|
/* 02928014 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], cpu->r[22]);
|
|
/* 02928018 */ _t74 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02928018 */ _t75 = _t74 & 0x00000001u;
|
|
/* 02928018 */ if (_t75) goto L_02927FD0; else goto L_0292801C;
|
|
L_0292801C: ; // 0x292801c
|
|
/* 0292801C */ _t76 = cpu->r[1] + 0x00000008u;
|
|
/* 0292801C */ cpu->r[12] = rbrew_read32(cpu->mem, _t76);
|
|
/* 02928020 */ _t77 = cpu->r[12] + 0x00000000u;
|
|
/* 02928020 */ cpu->r[5] = rbrew_read32(cpu->mem, _t77);
|
|
/* 02928024 */ _t78 = cpu->r[5] + cpu->r[21];
|
|
/* 02928024 */ cpu->r[6] = rbrew_read8(cpu->mem, _t78);
|
|
/* 02928028 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[31]);
|
|
/* 0292802C */ cpu->r[25] = cpu->r[5] + cpu->r[21];
|
|
/* 02928030 */ _t79 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928030 */ _t80 = _t79 & 0x00000001u;
|
|
/* 02928030 */ if (_t80) goto L_02928088; else goto L_02928034;
|
|
L_02928034: ; // 0x2928034
|
|
/* 02928034 */ _t81 = cpu->r[1] + 0x00000018u;
|
|
/* 02928034 */ cpu->r[7] = rbrew_read32(cpu->mem, _t81);
|
|
/* 02928038 */ _t82 = cpu->r[7] + 0x00000014u;
|
|
/* 02928038 */ cpu->r[9] = rbrew_read32(cpu->mem, _t82);
|
|
/* 0292803C */ cpu->ctr = cpu->r[9];
|
|
/* 02928040 */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 02928044 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02928048 */ _t83 = cpu->r[1] + 0x00000014u;
|
|
/* 02928048 */ cpu->r[11] = rbrew_read32(cpu->mem, _t83);
|
|
/* 0292804C */ cpu->ctr = cpu->r[17];
|
|
/* 02928050 */ _t84 = cpu->r[25] + 0x00000000u;
|
|
/* 02928050 */ cpu->r[8] = rbrew_read8(cpu->mem, _t84);
|
|
/* 02928054 */ cpu->r[10] = cpu->r[31];
|
|
L_02928058: ; // 0x2928058
|
|
/* 02928058 */ _t85 = cpu->r[11] + 0x00000000u;
|
|
/* 02928058 */ cpu->r[9] = rbrew_read8(cpu->mem, _t85);
|
|
/* 0292805C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[10]);
|
|
/* 02928060 */ _t86 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928060 */ _t87 = _t86 & 0x00000001u;
|
|
/* 02928060 */ if (_t87) goto L_02928074; else goto L_02928064;
|
|
L_02928064: ; // 0x2928064
|
|
/* 02928064 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[8]);
|
|
/* 02928068 */ _t88 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928068 */ _t89 = _t88 & 0x00000001u;
|
|
/* 02928068 */ if (_t89) goto L_02928088; else goto L_0292806C;
|
|
L_0292806C: ; // 0x292806c
|
|
/* 0292806C */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 02928070 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02928070 */ _t90 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02928070 */ _t91 = _t90 >> (0x00000002u & 31u);
|
|
/* 02928070 */ _t92 = _t91 & 0x00000001u;
|
|
/* 02928070 */ if (_t92) goto L_02928058; else goto L_02928074;
|
|
L_02928074: ; // 0x2928074
|
|
/* 02928074 */ _t93 = cpu->r[23] + cpu->r[22];
|
|
/* 02928074 */ rbrew_write8(cpu->mem, _t93, (uint8_t)cpu->r[8]);
|
|
/* 02928078 */ cpu->r[22] = cpu->r[22] + 0x00000001u;
|
|
/* 0292807C */ cpu->r[18] = cpu->r[18] + 0x00000001u;
|
|
/* 02928080 */ cpu->r[21] = cpu->r[21] + 0x00000001u;
|
|
/* 02928084 */ goto L_02928014;
|
|
L_02928088: ; // 0x2928088
|
|
/* 02928088 */ _t94 = cpu->r[23] + cpu->r[22];
|
|
/* 02928088 */ rbrew_write8(cpu->mem, _t94, (uint8_t)cpu->r[31]);
|
|
/* 0292808C */ _t95 = cpu->r[1] + 0x00000008u;
|
|
/* 0292808C */ cpu->r[25] = rbrew_read32(cpu->mem, _t95);
|
|
/* 02928090 */ cpu->r[12] = cpu->r[18];
|
|
/* 02928094 */ cpu->r[15] = cpu->r[15] + cpu->r[22];
|
|
/* 02928098 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], cpu->r[28]);
|
|
/* 0292809C */ _t96 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0292809C */ rbrew_write32(cpu->mem, _t96, cpu->r[12]);
|
|
/* 029280A0 */ _t97 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029280A0 */ _t98 = _t97 & 0x00000001u;
|
|
/* 029280A0 */ if (_t98) goto L_029280A4; else goto L_029280AC;
|
|
L_029280A4: ; // 0x29280a4
|
|
/* 029280A4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[19]);
|
|
/* 029280A8 */ _t99 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029280A8 */ _t100 = _t99 & 0x00000001u;
|
|
/* 029280A8 */ if (_t100) goto L_0292852C; else goto L_029280AC;
|
|
L_029280AC: ; // 0x29280ac
|
|
/* 029280AC */ _t101 = cpu->r[25] + 0x00000004u;
|
|
/* 029280AC */ cpu->r[11] = rbrew_read32(cpu->mem, _t101);
|
|
/* 029280B0 */ _t102 = cpu->r[11] + 0x00000014u;
|
|
/* 029280B0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t102);
|
|
/* 029280B4 */ cpu->ctr = cpu->r[5];
|
|
/* 029280B8 */ cpu->r[16] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 029280BC */ cpu->r[3] = cpu->r[25];
|
|
/* 029280C0 */ cpu->r[21] = cpu->r[12];
|
|
/* 029280C4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 029280C8 */ _t103 = cpu->r[25] + 0x00000000u;
|
|
/* 029280C8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t103);
|
|
/* 029280CC */ cpu->r[6] = cpu->r[31];
|
|
/* 029280D0 */ _t104 = cpu->r[5] + 0x00000000u;
|
|
/* 029280D0 */ cpu->r[7] = rbrew_read8(cpu->mem, _t104);
|
|
/* 029280D4 */ cpu->r[8] = 0x00000000u;
|
|
/* 029280D8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[6]);
|
|
/* 029280DC */ cpu->r[9] = 0x00080000u;
|
|
/* 029280E0 */ _t105 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029280E0 */ _t106 = _t105 & 0x00000001u;
|
|
/* 029280E0 */ if (_t106) goto L_02928108; else goto L_029280E4;
|
|
L_029280E4: ; // 0x29280e4
|
|
/* 029280E4 */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 029280E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], cpu->r[9]);
|
|
/* 029280EC */ cpu->r[5] = cpu->r[5] + 0x00000001u;
|
|
/* 029280F0 */ _t107 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 029280F0 */ _t108 = _t107 & 0x00000001u;
|
|
/* 029280F0 */ if (_t108) goto L_02928104; else goto L_029280F4;
|
|
L_029280F4: ; // 0x29280f4
|
|
/* 029280F4 */ _t109 = cpu->r[5] + 0x00000000u;
|
|
/* 029280F4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t109);
|
|
/* 029280F8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[6]);
|
|
/* 029280FC */ _t110 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029280FC */ _t111 = _t110 & 0x00000001u;
|
|
/* 029280FC */ if (_t111) goto L_02928100; else goto L_029280E4;
|
|
L_02928100: ; // 0x2928100
|
|
/* 02928100 */ goto L_02928108;
|
|
L_02928104: ; // 0x2928104
|
|
/* 02928104 */ cpu->r[8] = 0x00000000u;
|
|
L_02928108: ; // 0x2928108
|
|
/* 02928108 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], 0x00000000u);
|
|
/* 0292810C */ _t112 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0292810C */ _t113 = _t112 & 0x00000001u;
|
|
/* 0292810C */ if (_t113) goto L_02928118; else goto L_02928110;
|
|
L_02928110: ; // 0x2928110
|
|
/* 02928110 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], cpu->r[8]);
|
|
/* 02928114 */ _t114 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02928114 */ _t115 = _t114 & 0x00000001u;
|
|
/* 02928114 */ if (_t115) goto L_02928118; else goto L_02928130;
|
|
L_02928118: ; // 0x2928118
|
|
/* 02928118 */ _t116 = cpu->r[1] + 0x00000008u;
|
|
/* 02928118 */ cpu->r[0] = rbrew_read32(cpu->mem, _t116);
|
|
/* 0292811C */ _t117 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0292811C */ cpu->r[12] = rbrew_read32(cpu->mem, _t117);
|
|
/* 02928120 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[28]);
|
|
/* 02928124 */ cpu->r[25] = cpu->r[12];
|
|
/* 02928128 */ _t118 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928128 */ _t119 = _t118 & 0x00000001u;
|
|
/* 02928128 */ if (_t119) goto L_029281F0; else goto L_0292812C;
|
|
L_0292812C: ; // 0x292812c
|
|
/* 0292812C */ goto L_029281F8;
|
|
L_02928130: ; // 0x2928130
|
|
/* 02928130 */ _t120 = cpu->r[1] + 0x00000140u;
|
|
/* 02928130 */ cpu->r[9] = rbrew_read32(cpu->mem, _t120);
|
|
/* 02928134 */ _t121 = cpu->r[9] + 0x00000014u;
|
|
/* 02928134 */ cpu->r[0] = rbrew_read32(cpu->mem, _t121);
|
|
/* 02928138 */ cpu->ctr = cpu->r[0];
|
|
/* 0292813C */ cpu->r[3] = cpu->r[1] + 0x0000013Cu;
|
|
/* 02928140 */ cpu->r[22] = 0x00000000u;
|
|
/* 02928144 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02928148 */ cpu->r[17] = 0x00080000u;
|
|
/* 0292814C */ _t122 = cpu->r[1] + 0x00000144u;
|
|
/* 0292814C */ cpu->r[11] = rbrew_read32(cpu->mem, _t122);
|
|
/* 02928150 */ cpu->r[18] = cpu->r[21] + 0x00000001u;
|
|
/* 02928154 */ cpu->r[17] = cpu->r[17] + 0x00000001u;
|
|
/* 02928158 */ _t123 = cpu->r[1] + 0x0000013Cu;
|
|
/* 02928158 */ cpu->r[23] = rbrew_read32(cpu->mem, _t123);
|
|
/* 0292815C */ cpu->r[24] = cpu->r[11] + 0xFFFFFFFFu;
|
|
L_02928160: ; // 0x2928160
|
|
/* 02928160 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], cpu->r[22]);
|
|
/* 02928164 */ _t124 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02928164 */ _t125 = _t124 & 0x00000001u;
|
|
/* 02928164 */ if (_t125) goto L_02928118; else goto L_02928168;
|
|
L_02928168: ; // 0x2928168
|
|
/* 02928168 */ _t126 = cpu->r[1] + 0x00000008u;
|
|
/* 02928168 */ cpu->r[6] = rbrew_read32(cpu->mem, _t126);
|
|
/* 0292816C */ _t127 = cpu->r[6] + 0x00000000u;
|
|
/* 0292816C */ cpu->r[4] = rbrew_read32(cpu->mem, _t127);
|
|
/* 02928170 */ _t128 = cpu->r[4] + cpu->r[21];
|
|
/* 02928170 */ cpu->r[5] = rbrew_read8(cpu->mem, _t128);
|
|
/* 02928174 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[31]);
|
|
/* 02928178 */ cpu->r[25] = cpu->r[4] + cpu->r[21];
|
|
/* 0292817C */ _t129 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292817C */ _t130 = _t129 & 0x00000001u;
|
|
/* 0292817C */ if (_t130) goto L_029281D4; else goto L_02928180;
|
|
L_02928180: ; // 0x2928180
|
|
/* 02928180 */ _t131 = cpu->r[1] + 0x00000018u;
|
|
/* 02928180 */ cpu->r[6] = rbrew_read32(cpu->mem, _t131);
|
|
/* 02928184 */ _t132 = cpu->r[6] + 0x00000014u;
|
|
/* 02928184 */ cpu->r[7] = rbrew_read32(cpu->mem, _t132);
|
|
/* 02928188 */ cpu->ctr = cpu->r[7];
|
|
/* 0292818C */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 02928190 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02928194 */ _t133 = cpu->r[1] + 0x00000014u;
|
|
/* 02928194 */ cpu->r[8] = rbrew_read32(cpu->mem, _t133);
|
|
/* 02928198 */ cpu->ctr = cpu->r[17];
|
|
/* 0292819C */ _t134 = cpu->r[25] + 0x00000000u;
|
|
/* 0292819C */ cpu->r[12] = rbrew_read8(cpu->mem, _t134);
|
|
/* 029281A0 */ cpu->r[9] = cpu->r[31];
|
|
L_029281A4: ; // 0x29281a4
|
|
/* 029281A4 */ _t135 = cpu->r[8] + 0x00000000u;
|
|
/* 029281A4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t135);
|
|
/* 029281A8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[9]);
|
|
/* 029281AC */ _t136 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029281AC */ _t137 = _t136 & 0x00000001u;
|
|
/* 029281AC */ if (_t137) goto L_029281C0; else goto L_029281B0;
|
|
L_029281B0: ; // 0x29281b0
|
|
/* 029281B0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[12]);
|
|
/* 029281B4 */ _t138 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029281B4 */ _t139 = _t138 & 0x00000001u;
|
|
/* 029281B4 */ if (_t139) goto L_029281D4; else goto L_029281B8;
|
|
L_029281B8: ; // 0x29281b8
|
|
/* 029281B8 */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 029281BC */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 029281BC */ _t140 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 029281BC */ _t141 = _t140 >> (0x00000002u & 31u);
|
|
/* 029281BC */ _t142 = _t141 & 0x00000001u;
|
|
/* 029281BC */ if (_t142) goto L_029281A4; else goto L_029281C0;
|
|
L_029281C0: ; // 0x29281c0
|
|
/* 029281C0 */ _t143 = cpu->r[23] + cpu->r[22];
|
|
/* 029281C0 */ rbrew_write8(cpu->mem, _t143, (uint8_t)cpu->r[12]);
|
|
/* 029281C4 */ cpu->r[22] = cpu->r[22] + 0x00000001u;
|
|
/* 029281C8 */ cpu->r[18] = cpu->r[18] + 0x00000001u;
|
|
/* 029281CC */ cpu->r[21] = cpu->r[21] + 0x00000001u;
|
|
/* 029281D0 */ goto L_02928160;
|
|
L_029281D4: ; // 0x29281d4
|
|
/* 029281D4 */ _t144 = cpu->r[23] + cpu->r[22];
|
|
/* 029281D4 */ rbrew_write8(cpu->mem, _t144, (uint8_t)cpu->r[31]);
|
|
/* 029281D8 */ _t145 = cpu->r[1] + 0x00000008u;
|
|
/* 029281D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t145);
|
|
/* 029281DC */ cpu->r[12] = cpu->r[18];
|
|
/* 029281E0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[28]);
|
|
/* 029281E4 */ cpu->r[25] = cpu->r[12];
|
|
/* 029281E8 */ _t146 = cpu->r[1] + 0x0000000Cu;
|
|
/* 029281E8 */ rbrew_write32(cpu->mem, _t146, cpu->r[12]);
|
|
/* 029281EC */ _t147 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029281EC */ _t148 = _t147 & 0x00000001u;
|
|
/* 029281EC */ if (_t148) goto L_029281F0; else goto L_029281F8;
|
|
L_029281F0: ; // 0x29281f0
|
|
/* 029281F0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[19]);
|
|
/* 029281F4 */ _t149 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029281F4 */ _t150 = _t149 & 0x00000001u;
|
|
/* 029281F4 */ if (_t150) goto L_02928368; else goto L_029281F8;
|
|
L_029281F8: ; // 0x29281f8
|
|
/* 029281F8 */ _t151 = cpu->r[1] + 0x00000140u;
|
|
/* 029281F8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t151);
|
|
/* 029281FC */ _t152 = cpu->r[4] + 0x00000014u;
|
|
/* 029281FC */ cpu->r[5] = rbrew_read32(cpu->mem, _t152);
|
|
/* 02928200 */ cpu->ctr = cpu->r[5];
|
|
/* 02928204 */ cpu->r[3] = cpu->r[1] + 0x0000013Cu;
|
|
/* 02928208 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0292820C */ _t153 = cpu->r[1] + 0x00000034u;
|
|
/* 0292820C */ cpu->r[6] = rbrew_read32(cpu->mem, _t153);
|
|
/* 02928210 */ _t154 = cpu->r[6] + 0x00000014u;
|
|
/* 02928210 */ cpu->r[0] = rbrew_read32(cpu->mem, _t154);
|
|
/* 02928214 */ cpu->ctr = cpu->r[0];
|
|
/* 02928218 */ _t155 = cpu->r[1] + 0x0000013Cu;
|
|
/* 02928218 */ cpu->r[24] = rbrew_read32(cpu->mem, _t155);
|
|
/* 0292821C */ cpu->r[3] = cpu->r[1] + 0x00000030u;
|
|
/* 02928220 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02928224 */ _t156 = cpu->r[1] + 0x00000038u;
|
|
/* 02928224 */ cpu->r[5] = rbrew_read32(cpu->mem, _t156);
|
|
/* 02928228 */ cpu->r[3] = cpu->r[24];
|
|
/* 0292822C */ _t157 = cpu->r[1] + 0x00000030u;
|
|
/* 0292822C */ cpu->r[4] = rbrew_read32(cpu->mem, _t157);
|
|
/* 02928230 */ rbrew_dispatch(cpu, 0x02d09418u);
|
|
/* 02928234 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02928238 */ _t158 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928238 */ _t159 = _t158 & 0x00000001u;
|
|
/* 02928238 */ if (_t159) goto L_0292823C; else goto L_02928368;
|
|
L_0292823C: ; // 0x292823c
|
|
/* 0292823C */ _t160 = cpu->r[27] + 0x00000004u;
|
|
/* 0292823C */ cpu->r[5] = rbrew_read32(cpu->mem, _t160);
|
|
/* 02928240 */ _t161 = cpu->r[5] + 0x00000014u;
|
|
/* 02928240 */ cpu->r[7] = rbrew_read32(cpu->mem, _t161);
|
|
/* 02928244 */ cpu->ctr = cpu->r[7];
|
|
/* 02928248 */ cpu->r[3] = cpu->r[27];
|
|
/* 0292824C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02928250 */ _t162 = cpu->r[27] + 0x00000008u;
|
|
/* 02928250 */ cpu->r[0] = rbrew_read32(cpu->mem, _t162);
|
|
/* 02928254 */ _t163 = cpu->r[27] + 0x00000000u;
|
|
/* 02928254 */ cpu->r[10] = rbrew_read32(cpu->mem, _t163);
|
|
/* 02928258 */ cpu->r[23] = cpu->r[0] - cpu->r[15];
|
|
/* 02928258 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u);
|
|
/* 0292825C */ cpu->r[24] = cpu->r[10] + cpu->r[15];
|
|
/* 02928260 */ _t164 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02928260 */ _t165 = _t164 & 0x00000001u;
|
|
/* 02928260 */ if (_t165) goto L_029282A0; else goto L_02928264;
|
|
L_02928264: ; // 0x2928264
|
|
/* 02928264 */ _t166 = cpu->r[1] + 0x00000034u;
|
|
/* 02928264 */ cpu->r[4] = rbrew_read32(cpu->mem, _t166);
|
|
/* 02928268 */ _t167 = cpu->r[4] + 0x00000014u;
|
|
/* 02928268 */ cpu->r[0] = rbrew_read32(cpu->mem, _t167);
|
|
/* 0292826C */ cpu->r[24] = 0x00000000u;
|
|
/* 02928270 */ cpu->ctr = cpu->r[0];
|
|
/* 02928274 */ cpu->r[23] = cpu->r[24];
|
|
/* 02928278 */ cpu->r[3] = cpu->r[1] + 0x00000030u;
|
|
/* 0292827C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02928280 */ _t168 = cpu->r[1] + 0x00000030u;
|
|
/* 02928280 */ cpu->r[4] = rbrew_read32(cpu->mem, _t168);
|
|
/* 02928284 */ cpu->r[0] = cpu->r[31];
|
|
/* 02928288 */ _t169 = cpu->r[4] + 0x00000000u;
|
|
/* 02928288 */ cpu->r[6] = rbrew_read8(cpu->mem, _t169);
|
|
/* 0292828C */ cpu->r[25] = cpu->r[24];
|
|
/* 02928290 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[0]);
|
|
/* 02928294 */ cpu->r[6] = 0x00080000u;
|
|
/* 02928298 */ _t170 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928298 */ _t171 = _t170 & 0x00000001u;
|
|
/* 02928298 */ if (_t171) goto L_0292829C; else goto L_029282D8;
|
|
L_0292829C: ; // 0x292829c
|
|
/* 0292829C */ goto L_029282FC;
|
|
L_029282A0: ; // 0x29282a0
|
|
/* 029282A0 */ cpu->r[12] = cpu->r[24] + cpu->r[23];
|
|
/* 029282A4 */ _t172 = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 029282A4 */ rbrew_write8(cpu->mem, _t172, (uint8_t)cpu->r[31]);
|
|
/* 029282A8 */ _t173 = cpu->r[1] + 0x00000034u;
|
|
/* 029282A8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t173);
|
|
/* 029282AC */ _t174 = cpu->r[4] + 0x00000014u;
|
|
/* 029282AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t174);
|
|
/* 029282B0 */ cpu->ctr = cpu->r[0];
|
|
/* 029282B4 */ cpu->r[3] = cpu->r[1] + 0x00000030u;
|
|
/* 029282B8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 029282BC */ _t175 = cpu->r[1] + 0x00000030u;
|
|
/* 029282BC */ cpu->r[4] = rbrew_read32(cpu->mem, _t175);
|
|
/* 029282C0 */ cpu->r[0] = cpu->r[31];
|
|
/* 029282C4 */ _t176 = cpu->r[4] + 0x00000000u;
|
|
/* 029282C4 */ cpu->r[6] = rbrew_read8(cpu->mem, _t176);
|
|
/* 029282C8 */ cpu->r[25] = 0x00000000u;
|
|
/* 029282CC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[0]);
|
|
/* 029282D0 */ cpu->r[6] = 0x00080000u;
|
|
/* 029282D4 */ _t177 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029282D4 */ _t178 = _t177 & 0x00000001u;
|
|
/* 029282D4 */ if (_t178) goto L_0292829C; else goto L_029282D8;
|
|
L_029282D8: ; // 0x29282d8
|
|
/* 029282D8 */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 029282DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], cpu->r[6]);
|
|
/* 029282E0 */ cpu->r[4] = cpu->r[4] + 0x00000001u;
|
|
/* 029282E4 */ _t179 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 029282E4 */ _t180 = _t179 & 0x00000001u;
|
|
/* 029282E4 */ if (_t180) goto L_029282F8; else goto L_029282E8;
|
|
L_029282E8: ; // 0x29282e8
|
|
/* 029282E8 */ _t181 = cpu->r[4] + 0x00000000u;
|
|
/* 029282E8 */ cpu->r[7] = rbrew_read8(cpu->mem, _t181);
|
|
/* 029282EC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[0]);
|
|
/* 029282F0 */ _t182 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029282F0 */ _t183 = _t182 & 0x00000001u;
|
|
/* 029282F0 */ if (_t183) goto L_029282F4; else goto L_029282D8;
|
|
L_029282F4: ; // 0x29282f4
|
|
/* 029282F4 */ goto L_029282FC;
|
|
L_029282F8: ; // 0x29282f8
|
|
/* 029282F8 */ cpu->r[25] = 0x00000000u;
|
|
L_029282FC: ; // 0x29282fc
|
|
/* 029282FC */ _t184 = cpu->r[1] + 0x00000034u;
|
|
/* 029282FC */ cpu->r[8] = rbrew_read32(cpu->mem, _t184);
|
|
/* 02928300 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], cpu->r[23]);
|
|
/* 02928304 */ _t185 = cpu->r[8] + 0x00000014u;
|
|
/* 02928304 */ cpu->r[9] = rbrew_read32(cpu->mem, _t185);
|
|
/* 02928308 */ _t186 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02928308 */ _t187 = _t186 & 0x00000001u;
|
|
/* 02928308 */ if (_t187) goto L_02928310; else goto L_0292830C;
|
|
L_0292830C: ; // 0x292830c
|
|
/* 0292830C */ cpu->r[25] = cpu->r[23] + 0xFFFFFFFFu;
|
|
L_02928310: ; // 0x2928310
|
|
/* 02928310 */ cpu->ctr = cpu->r[9];
|
|
/* 02928314 */ cpu->r[3] = cpu->r[1] + 0x00000030u;
|
|
/* 02928318 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0292831C */ _t188 = cpu->r[1] + 0x00000030u;
|
|
/* 0292831C */ cpu->r[4] = rbrew_read32(cpu->mem, _t188);
|
|
/* 02928320 */ cpu->r[6] = 0x00000000u;
|
|
/* 02928324 */ cpu->r[5] = cpu->r[25];
|
|
/* 02928328 */ cpu->r[3] = cpu->r[24];
|
|
/* 0292832C */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 02928330 */ _t189 = cpu->r[24] + cpu->r[25];
|
|
/* 02928330 */ rbrew_write8(cpu->mem, _t189, (uint8_t)cpu->r[31]);
|
|
/* 02928334 */ _t190 = cpu->r[27] + 0x00000004u;
|
|
/* 02928334 */ cpu->r[5] = rbrew_read32(cpu->mem, _t190);
|
|
/* 02928338 */ _t191 = cpu->r[5] + 0x00000014u;
|
|
/* 02928338 */ cpu->r[7] = rbrew_read32(cpu->mem, _t191);
|
|
/* 0292833C */ cpu->ctr = cpu->r[7];
|
|
/* 02928340 */ cpu->r[15] = cpu->r[15] + cpu->r[25];
|
|
/* 02928344 */ cpu->r[3] = cpu->r[27];
|
|
/* 02928348 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0292834C */ _t192 = cpu->r[27] + 0x00000000u;
|
|
/* 0292834C */ cpu->r[9] = rbrew_read32(cpu->mem, _t192);
|
|
/* 02928350 */ _t193 = cpu->r[27] + 0x00000008u;
|
|
/* 02928350 */ cpu->r[0] = rbrew_read32(cpu->mem, _t193);
|
|
/* 02928354 */ cpu->r[7] = cpu->r[9] + cpu->r[15];
|
|
/* 02928358 */ cpu->r[0] = cpu->r[0] - cpu->r[15];
|
|
/* 02928358 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0292835C */ _t194 = cpu->r[1] + 0x00000028u;
|
|
/* 0292835C */ rbrew_write32(cpu->mem, _t194, cpu->r[14]);
|
|
/* 02928360 */ _t195 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02928360 */ _t196 = _t195 & 0x00000001u;
|
|
/* 02928360 */ if (_t196) goto L_02928364; else goto L_02927F10;
|
|
L_02928364: ; // 0x2928364
|
|
/* 02928364 */ goto L_02927F54;
|
|
L_02928368: ; // 0x2928368
|
|
/* 02928368 */ _t197 = cpu->r[27] + 0x00000004u;
|
|
/* 02928368 */ cpu->r[11] = rbrew_read32(cpu->mem, _t197);
|
|
/* 0292836C */ _t198 = cpu->r[11] + 0x00000014u;
|
|
/* 0292836C */ cpu->r[0] = rbrew_read32(cpu->mem, _t198);
|
|
/* 02928370 */ cpu->ctr = cpu->r[0];
|
|
/* 02928374 */ cpu->r[3] = cpu->r[27];
|
|
/* 02928378 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0292837C */ _t199 = cpu->r[27] + 0x00000008u;
|
|
/* 0292837C */ cpu->r[6] = rbrew_read32(cpu->mem, _t199);
|
|
/* 02928380 */ _t200 = cpu->r[27] + 0x00000000u;
|
|
/* 02928380 */ cpu->r[5] = rbrew_read32(cpu->mem, _t200);
|
|
/* 02928384 */ cpu->r[24] = cpu->r[6] - cpu->r[15];
|
|
/* 02928384 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 02928388 */ cpu->r[23] = cpu->r[5] + cpu->r[15];
|
|
/* 0292838C */ _t201 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0292838C */ _t202 = _t201 & 0x00000001u;
|
|
/* 0292838C */ if (_t202) goto L_029283D0; else goto L_02928390;
|
|
L_02928390: ; // 0x2928390
|
|
/* 02928390 */ _t203 = cpu->r[28] + 0x00000004u;
|
|
/* 02928390 */ cpu->r[8] = rbrew_read32(cpu->mem, _t203);
|
|
/* 02928394 */ _t204 = cpu->r[8] + 0x00000014u;
|
|
/* 02928394 */ cpu->r[9] = rbrew_read32(cpu->mem, _t204);
|
|
/* 02928398 */ cpu->r[23] = 0x00000000u;
|
|
/* 0292839C */ cpu->ctr = cpu->r[9];
|
|
/* 029283A0 */ cpu->r[24] = cpu->r[23];
|
|
/* 029283A4 */ cpu->r[3] = cpu->r[28];
|
|
/* 029283A8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 029283AC */ _t205 = cpu->r[28] + 0x00000000u;
|
|
/* 029283AC */ cpu->r[12] = rbrew_read32(cpu->mem, _t205);
|
|
/* 029283B0 */ cpu->r[4] = cpu->r[12];
|
|
/* 029283B4 */ cpu->r[0] = cpu->r[31];
|
|
/* 029283B8 */ _t206 = cpu->r[4] + 0x00000000u;
|
|
/* 029283B8 */ cpu->r[10] = rbrew_read8(cpu->mem, _t206);
|
|
/* 029283BC */ cpu->r[5] = cpu->r[23];
|
|
/* 029283C0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[0]);
|
|
/* 029283C4 */ cpu->r[6] = 0x00080000u;
|
|
/* 029283C8 */ _t207 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029283C8 */ _t208 = _t207 & 0x00000001u;
|
|
/* 029283C8 */ if (_t208) goto L_029283CC; else goto L_0292840C;
|
|
L_029283CC: ; // 0x29283cc
|
|
/* 029283CC */ goto L_02928430;
|
|
L_029283D0: ; // 0x29283d0
|
|
/* 029283D0 */ cpu->r[7] = cpu->r[23] + cpu->r[24];
|
|
/* 029283D4 */ _t209 = cpu->r[7] + 0xFFFFFFFFu;
|
|
/* 029283D4 */ rbrew_write8(cpu->mem, _t209, (uint8_t)cpu->r[31]);
|
|
/* 029283D8 */ _t210 = cpu->r[28] + 0x00000004u;
|
|
/* 029283D8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t210);
|
|
/* 029283DC */ _t211 = cpu->r[8] + 0x00000014u;
|
|
/* 029283DC */ cpu->r[9] = rbrew_read32(cpu->mem, _t211);
|
|
/* 029283E0 */ cpu->ctr = cpu->r[9];
|
|
/* 029283E4 */ cpu->r[3] = cpu->r[28];
|
|
/* 029283E8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 029283EC */ _t212 = cpu->r[28] + 0x00000000u;
|
|
/* 029283EC */ cpu->r[12] = rbrew_read32(cpu->mem, _t212);
|
|
/* 029283F0 */ cpu->r[4] = cpu->r[12];
|
|
/* 029283F4 */ cpu->r[0] = cpu->r[31];
|
|
/* 029283F8 */ _t213 = cpu->r[4] + 0x00000000u;
|
|
/* 029283F8 */ cpu->r[10] = rbrew_read8(cpu->mem, _t213);
|
|
/* 029283FC */ cpu->r[5] = 0x00000000u;
|
|
/* 02928400 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[0]);
|
|
/* 02928404 */ cpu->r[6] = 0x00080000u;
|
|
/* 02928408 */ _t214 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928408 */ _t215 = _t214 & 0x00000001u;
|
|
/* 02928408 */ if (_t215) goto L_029283CC; else goto L_0292840C;
|
|
L_0292840C: ; // 0x292840c
|
|
/* 0292840C */ cpu->r[5] = cpu->r[5] + 0x00000001u;
|
|
/* 02928410 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], cpu->r[6]);
|
|
/* 02928414 */ cpu->r[4] = cpu->r[4] + 0x00000001u;
|
|
/* 02928418 */ _t216 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02928418 */ _t217 = _t216 & 0x00000001u;
|
|
/* 02928418 */ if (_t217) goto L_0292842C; else goto L_0292841C;
|
|
L_0292841C: ; // 0x292841c
|
|
/* 0292841C */ _t218 = cpu->r[4] + 0x00000000u;
|
|
/* 0292841C */ cpu->r[11] = rbrew_read8(cpu->mem, _t218);
|
|
/* 02928420 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[0]);
|
|
/* 02928424 */ _t219 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928424 */ _t220 = _t219 & 0x00000001u;
|
|
/* 02928424 */ if (_t220) goto L_02928428; else goto L_0292840C;
|
|
L_02928428: ; // 0x2928428
|
|
/* 02928428 */ goto L_02928430;
|
|
L_0292842C: ; // 0x292842c
|
|
/* 0292842C */ cpu->r[5] = 0x00000000u;
|
|
L_02928430: ; // 0x2928430
|
|
/* 02928430 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[16], 0x00000000u);
|
|
/* 02928434 */ _t221 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02928434 */ _t222 = _t221 & 0x00000001u;
|
|
/* 02928434 */ if (_t222) goto L_02928440; else goto L_02928438;
|
|
L_02928438: ; // 0x2928438
|
|
/* 02928438 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[16], cpu->r[5]);
|
|
/* 0292843C */ _t223 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0292843C */ _t224 = _t223 & 0x00000001u;
|
|
/* 0292843C */ if (_t224) goto L_02928440; else goto L_02928460;
|
|
L_02928440: ; // 0x2928440
|
|
/* 02928440 */ cpu->r[10] = 0x101F0000u;
|
|
/* 02928444 */ cpu->r[8] = cpu->r[20];
|
|
/* 02928448 */ _t225 = cpu->r[10] + 0x000066E8u;
|
|
/* 02928448 */ cpu->r[10] = rbrew_read32(cpu->mem, _t225);
|
|
/* 0292844C */ _t226 = cpu->r[1] + 0x00000020u;
|
|
/* 0292844C */ rbrew_write32(cpu->mem, _t226, cpu->r[8]);
|
|
/* 02928450 */ cpu->r[25] = cpu->r[25] - cpu->r[16];
|
|
/* 02928450 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 02928454 */ _t227 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02928454 */ rbrew_write32(cpu->mem, _t227, cpu->r[10]);
|
|
/* 02928458 */ _t228 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02928458 */ _t229 = _t228 & 0x00000001u;
|
|
/* 02928458 */ if (_t229) goto L_02928478; else goto L_0292845C;
|
|
L_0292845C: ; // 0x292845c
|
|
/* 0292845C */ goto L_029284C4;
|
|
L_02928460: ; // 0x2928460
|
|
/* 02928460 */ cpu->r[8] = cpu->r[20];
|
|
/* 02928464 */ cpu->r[10] = cpu->r[12] + cpu->r[16];
|
|
/* 02928468 */ _t230 = cpu->r[1] + 0x00000020u;
|
|
/* 02928468 */ rbrew_write32(cpu->mem, _t230, cpu->r[8]);
|
|
/* 0292846C */ cpu->r[25] = cpu->r[25] - cpu->r[16];
|
|
/* 0292846C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 02928470 */ _t231 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02928470 */ rbrew_write32(cpu->mem, _t231, cpu->r[10]);
|
|
/* 02928474 */ _t232 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02928474 */ _t233 = _t232 & 0x00000001u;
|
|
/* 02928474 */ if (_t233) goto L_02928478; else goto L_029284C4;
|
|
L_02928478: ; // 0x2928478
|
|
/* 02928478 */ cpu->r[3] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0292847C */ Gambit_fn_02928BD0(cpu);
|
|
/* 02928480 */ _t234 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02928480 */ cpu->r[10] = rbrew_read32(cpu->mem, _t234);
|
|
/* 02928484 */ cpu->r[4] = cpu->r[31];
|
|
/* 02928488 */ _t235 = cpu->r[10] + 0x00000000u;
|
|
/* 02928488 */ cpu->r[12] = rbrew_read8(cpu->mem, _t235);
|
|
/* 0292848C */ cpu->r[25] = 0x00000000u;
|
|
/* 02928490 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[4]);
|
|
/* 02928494 */ cpu->r[12] = 0x00080000u;
|
|
/* 02928498 */ _t236 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928498 */ _t237 = _t236 & 0x00000001u;
|
|
/* 02928498 */ if (_t237) goto L_029284C0; else goto L_0292849C;
|
|
L_0292849C: ; // 0x292849c
|
|
/* 0292849C */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 029284A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], cpu->r[12]);
|
|
/* 029284A4 */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 029284A8 */ _t238 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 029284A8 */ _t239 = _t238 & 0x00000001u;
|
|
/* 029284A8 */ if (_t239) goto L_029284BC; else goto L_029284AC;
|
|
L_029284AC: ; // 0x29284ac
|
|
/* 029284AC */ _t240 = cpu->r[10] + 0x00000000u;
|
|
/* 029284AC */ cpu->r[0] = rbrew_read8(cpu->mem, _t240);
|
|
/* 029284B0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[4]);
|
|
/* 029284B4 */ _t241 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029284B4 */ _t242 = _t241 & 0x00000001u;
|
|
/* 029284B4 */ if (_t242) goto L_029284B8; else goto L_0292849C;
|
|
L_029284B8: ; // 0x29284b8
|
|
/* 029284B8 */ goto L_029284C0;
|
|
L_029284BC: ; // 0x29284bc
|
|
/* 029284BC */ cpu->r[25] = 0x00000000u;
|
|
L_029284C0: ; // 0x29284c0
|
|
/* 029284C0 */ _t243 = cpu->r[1] + 0x00000020u;
|
|
/* 029284C0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t243);
|
|
L_029284C4: ; // 0x29284c4
|
|
/* 029284C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], cpu->r[24]);
|
|
/* 029284C8 */ _t244 = cpu->r[8] + 0x00000014u;
|
|
/* 029284C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t244);
|
|
/* 029284CC */ _t245 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 029284CC */ _t246 = _t245 & 0x00000001u;
|
|
/* 029284CC */ if (_t246) goto L_029284D4; else goto L_029284D0;
|
|
L_029284D0: ; // 0x29284d0
|
|
/* 029284D0 */ cpu->r[25] = cpu->r[24] + 0xFFFFFFFFu;
|
|
L_029284D4: ; // 0x29284d4
|
|
/* 029284D4 */ cpu->ctr = cpu->r[0];
|
|
/* 029284D8 */ cpu->r[3] = cpu->r[1] + 0x0000001Cu;
|
|
/* 029284DC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 029284E0 */ _t247 = cpu->r[1] + 0x0000001Cu;
|
|
/* 029284E0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t247);
|
|
/* 029284E4 */ cpu->r[6] = 0x00000000u;
|
|
/* 029284E8 */ cpu->r[5] = cpu->r[25];
|
|
/* 029284EC */ cpu->r[3] = cpu->r[23];
|
|
/* 029284F0 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 029284F4 */ _t248 = cpu->r[23] + cpu->r[25];
|
|
/* 029284F4 */ rbrew_write8(cpu->mem, _t248, (uint8_t)cpu->r[31]);
|
|
/* 029284F8 */ _t249 = cpu->r[27] + 0x00000004u;
|
|
/* 029284F8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t249);
|
|
/* 029284FC */ _t250 = cpu->r[5] + 0x00000014u;
|
|
/* 029284FC */ cpu->r[7] = rbrew_read32(cpu->mem, _t250);
|
|
/* 02928500 */ cpu->ctr = cpu->r[7];
|
|
/* 02928504 */ cpu->r[15] = cpu->r[15] + cpu->r[25];
|
|
/* 02928508 */ cpu->r[3] = cpu->r[27];
|
|
/* 0292850C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02928510 */ _t251 = cpu->r[27] + 0x00000000u;
|
|
/* 02928510 */ cpu->r[9] = rbrew_read32(cpu->mem, _t251);
|
|
/* 02928514 */ _t252 = cpu->r[27] + 0x00000008u;
|
|
/* 02928514 */ cpu->r[0] = rbrew_read32(cpu->mem, _t252);
|
|
/* 02928518 */ cpu->r[7] = cpu->r[9] + cpu->r[15];
|
|
/* 0292851C */ cpu->r[0] = cpu->r[0] - cpu->r[15];
|
|
/* 0292851C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02928520 */ _t253 = cpu->r[1] + 0x00000028u;
|
|
/* 02928520 */ rbrew_write32(cpu->mem, _t253, cpu->r[14]);
|
|
/* 02928524 */ _t254 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02928524 */ _t255 = _t254 & 0x00000001u;
|
|
/* 02928524 */ if (_t255) goto L_02928528; else goto L_02927F10;
|
|
L_02928528: ; // 0x2928528
|
|
/* 02928528 */ goto L_02927F54;
|
|
L_0292852C: ; // 0x292852c
|
|
/* 0292852C */ cpu->r[5] = cpu->r[30];
|
|
/* 02928530 */ cpu->r[4] = cpu->r[29];
|
|
/* 02928534 */ cpu->r[3] = cpu->r[27];
|
|
/* 02928538 */ Gambit_fn_02925E9C(cpu);
|
|
/* 0292853C */ /* nop */
|
|
/* 02928540 */ _t256 = cpu->r[1] + 0x00000294u;
|
|
/* 02928540 */ cpu->r[0] = rbrew_read32(cpu->mem, _t256);
|
|
/* 02928544 */ cpu->lr = cpu->r[0];
|
|
/* 02928548 */ cpu->r[1] = cpu->r[1] + 0x00000290u;
|
|
/* 0292854C */ return;
|
|
}
|
|
|
|
// fn_02928550 @ 0x2928550
|
|
void Gambit_fn_02928550(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _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_02928550: ; // 0x2928550
|
|
/* 02928550 */ _t0 = cpu->r[1] + 0xFFFFFF48u;
|
|
/* 02928550 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02928550 */ cpu->r[1] = _t0;
|
|
/* 02928554 */ cpu->r[0] = cpu->lr;
|
|
/* 02928558 */ /* nop */
|
|
/* 0292855C */ cpu->r[27] = cpu->r[5];
|
|
/* 02928560 */ cpu->r[30] = cpu->r[8];
|
|
/* 02928564 */ cpu->r[28] = cpu->r[6];
|
|
/* 02928568 */ cpu->r[31] = cpu->r[9];
|
|
/* 0292856C */ cpu->r[25] = cpu->r[3];
|
|
/* 02928570 */ cpu->r[5] = cpu->r[30];
|
|
/* 02928574 */ cpu->r[23] = 0x00000000u;
|
|
/* 02928578 */ cpu->r[26] = cpu->r[4];
|
|
/* 0292857C */ _t1 = cpu->r[1] + 0x000000BCu;
|
|
/* 0292857C */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02928580 */ cpu->r[29] = cpu->r[7];
|
|
/* 02928584 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02928588 */ cpu->r[3] = cpu->r[29];
|
|
/* 0292858C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0292858C */ rbrew_write8(cpu->mem, _t2, (uint8_t)cpu->r[23]);
|
|
/* 02928590 */ Gambit_fn_0280CE64(cpu);
|
|
/* 02928594 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02928598 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928598 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02928598 */ if (_t4) goto L_02928610; else goto L_0292859C;
|
|
L_0292859C: ; // 0x292859c
|
|
/* 0292859C */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 0292859C */ cpu->r[12] = rbrew_read8(cpu->mem, _t5);
|
|
/* 029285A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 029285A4 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029285A4 */ _t7 = _t6 & 0x00000001u;
|
|
/* 029285A4 */ if (_t7) goto L_02928610; else goto L_029285A8;
|
|
L_029285A8: ; // 0x29285a8
|
|
/* 029285A8 */ cpu->r[0] = 0x10140000u;
|
|
/* 029285AC */ _t8 = cpu->r[1] + 0x00000010u;
|
|
/* 029285AC */ rbrew_write32(cpu->mem, _t8, cpu->r[23]);
|
|
/* 029285B0 */ cpu->r[4] = 0x00000020u;
|
|
/* 029285B4 */ cpu->r[0] = cpu->r[0] + 0x00003FDCu;
|
|
/* 029285B8 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 029285B8 */ rbrew_write32(cpu->mem, _t9, cpu->r[23]);
|
|
/* 029285BC */ cpu->r[3] = cpu->r[1] + 0x00000018u;
|
|
/* 029285C0 */ _t10 = cpu->r[1] + 0x00000038u;
|
|
/* 029285C0 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 029285C4 */ Gambit_fn_02C89380(cpu);
|
|
/* 029285C8 */ cpu->r[24] = 0x10140000u;
|
|
/* 029285CC */ cpu->r[3] = cpu->r[29];
|
|
/* 029285D0 */ cpu->r[6] = 0x00000000u;
|
|
/* 029285D4 */ cpu->r[24] = cpu->r[24] + 0x00003FECu;
|
|
/* 029285D8 */ cpu->r[5] = cpu->r[30];
|
|
/* 029285DC */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 029285E0 */ _t11 = cpu->r[1] + 0x00000038u;
|
|
/* 029285E0 */ rbrew_write32(cpu->mem, _t11, cpu->r[24]);
|
|
/* 029285E4 */ cpu->r[7] = cpu->r[6];
|
|
/* 029285E8 */ _t12 = cpu->r[1] + 0x0000003Cu;
|
|
/* 029285E8 */ rbrew_write32(cpu->mem, _t12, cpu->r[23]);
|
|
/* 029285EC */ Gambit_fn_0280C9B0(cpu);
|
|
/* 029285F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 029285F4 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029285F4 */ _t14 = _t13 & 0x00000001u;
|
|
/* 029285F4 */ if (_t14) goto L_029285F8; else goto L_02928628;
|
|
L_029285F8: ; // 0x29285f8
|
|
/* 029285F8 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 029285F8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t15);
|
|
/* 029285FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02928600 */ _t16 = cpu->r[1] + 0x00000038u;
|
|
/* 02928600 */ rbrew_write32(cpu->mem, _t16, cpu->r[24]);
|
|
/* 02928604 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928604 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02928604 */ if (_t18) goto L_02928610; else goto L_02928608;
|
|
L_02928608: ; // 0x2928608
|
|
/* 02928608 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 0292860C */ Gambit_fn_0280C80C(cpu);
|
|
L_02928610: ; // 0x2928610
|
|
/* 02928610 */ /* nop */
|
|
/* 02928614 */ _t19 = cpu->r[1] + 0x000000BCu;
|
|
/* 02928614 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02928618 */ cpu->lr = cpu->r[0];
|
|
/* 0292861C */ cpu->r[1] = cpu->r[1] + 0x000000B8u;
|
|
/* 02928620 */ cpu->r[3] = 0x00000000u;
|
|
/* 02928624 */ return;
|
|
L_02928628: ; // 0x2928628
|
|
/* 02928628 */ cpu->r[3] = cpu->r[1] + 0x00000040u;
|
|
/* 0292862C */ cpu->r[4] = 0x00000000u;
|
|
/* 02928630 */ Gambit_fn_02833BE0(cpu);
|
|
/* 02928634 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 02928638 */ cpu->r[3] = cpu->r[29];
|
|
/* 0292863C */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02928640 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02928640 */ rbrew_write32(cpu->mem, _t20, cpu->r[23]);
|
|
/* 02928644 */ Gambit_fn_0280CE30(cpu);
|
|
/* 02928648 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0292864C */ _t21 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0292864C */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02928650 */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02928650 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02928650 */ if (_t23) goto L_0292865C; else goto L_02928654;
|
|
L_02928654: ; // 0x2928654
|
|
/* 02928654 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 02928658 */ _t24 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02928658 */ _t25 = _t24 & 0x00000001u;
|
|
/* 02928658 */ if (_t25) goto L_0292865C; else goto L_0292869C;
|
|
L_0292865C: ; // 0x292865c
|
|
/* 0292865C */ _t26 = cpu->r[26] + 0x00000000u;
|
|
/* 0292865C */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 02928660 */ _t27 = cpu->r[27] + 0x00000090u;
|
|
/* 02928660 */ cpu->r[12] = rbrew_read16(cpu->mem, _t27);
|
|
/* 02928664 */ _t28 = cpu->r[27] + 0x0000000Cu;
|
|
/* 02928664 */ cpu->r[6] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02928668 */ cpu->r[0] = rbrew_rlwinm(cpu->r[12], 0x00000000u, 0x0000001Cu, 0x0000001Au);
|
|
/* 0292866C */ _t29 = cpu->r[27] + 0x00000090u;
|
|
/* 0292866C */ rbrew_write16(cpu->mem, _t29, (uint16_t)cpu->r[0]);
|
|
/* 02928670 */ _t30 = cpu->r[6] + 0x00000034u;
|
|
/* 02928670 */ cpu->r[0] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02928674 */ cpu->ctr = cpu->r[0];
|
|
/* 02928678 */ _t31 = cpu->r[26] + 0x00000000u;
|
|
/* 02928678 */ cpu->r[4] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0292867C */ cpu->r[31] = rbrew_rlwinm(cpu->r[12], 0x0000001Cu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02928680 */ cpu->r[5] = cpu->r[28];
|
|
/* 02928684 */ cpu->r[3] = cpu->r[27];
|
|
/* 02928688 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0292868C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02928690 */ _t32 = cpu->r[25] + 0x00000000u;
|
|
/* 02928690 */ rbrew_write32(cpu->mem, _t32, cpu->r[3]);
|
|
/* 02928694 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928694 */ _t34 = _t33 & 0x00000001u;
|
|
/* 02928694 */ if (_t34) goto L_029286F4; else goto L_02928698;
|
|
L_02928698: ; // 0x2928698
|
|
/* 02928698 */ goto L_029286D8;
|
|
L_0292869C: ; // 0x292869c
|
|
/* 0292869C */ _t35 = cpu->r[26] + 0x00000000u;
|
|
/* 0292869C */ rbrew_write32(cpu->mem, _t35, cpu->r[31]);
|
|
/* 029286A0 */ _t36 = cpu->r[27] + 0x00000090u;
|
|
/* 029286A0 */ cpu->r[12] = rbrew_read16(cpu->mem, _t36);
|
|
/* 029286A4 */ _t37 = cpu->r[27] + 0x0000000Cu;
|
|
/* 029286A4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t37);
|
|
/* 029286A8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[12], 0x00000000u, 0x0000001Cu, 0x0000001Au);
|
|
/* 029286AC */ _t38 = cpu->r[27] + 0x00000090u;
|
|
/* 029286AC */ rbrew_write16(cpu->mem, _t38, (uint16_t)cpu->r[0]);
|
|
/* 029286B0 */ _t39 = cpu->r[6] + 0x00000034u;
|
|
/* 029286B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t39);
|
|
/* 029286B4 */ cpu->ctr = cpu->r[0];
|
|
/* 029286B8 */ _t40 = cpu->r[26] + 0x00000000u;
|
|
/* 029286B8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t40);
|
|
/* 029286BC */ cpu->r[31] = rbrew_rlwinm(cpu->r[12], 0x0000001Cu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 029286C0 */ cpu->r[5] = cpu->r[28];
|
|
/* 029286C4 */ cpu->r[3] = cpu->r[27];
|
|
/* 029286C8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 029286CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 029286D0 */ _t41 = cpu->r[25] + 0x00000000u;
|
|
/* 029286D0 */ rbrew_write32(cpu->mem, _t41, cpu->r[3]);
|
|
/* 029286D4 */ _t42 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029286D4 */ _t43 = _t42 & 0x00000001u;
|
|
/* 029286D4 */ if (_t43) goto L_029286F4; else goto L_029286D8;
|
|
L_029286D8: ; // 0x29286d8
|
|
/* 029286D8 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 029286DC */ cpu->r[3] = cpu->r[1] + 0x00000040u;
|
|
/* 029286E0 */ Gambit_fn_02833D50(cpu);
|
|
/* 029286E4 */ _t44 = cpu->r[26] + 0x00000000u;
|
|
/* 029286E4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t44);
|
|
/* 029286E8 */ cpu->r[3] = cpu->r[1] + 0x00000040u;
|
|
/* 029286EC */ _t45 = cpu->r[25] + 0x00000000u;
|
|
/* 029286EC */ cpu->r[4] = rbrew_read32(cpu->mem, _t45);
|
|
/* 029286F0 */ Gambit_fn_02834518(cpu);
|
|
L_029286F4: ; // 0x29286f4
|
|
/* 029286F4 */ cpu->r[3] = cpu->r[29];
|
|
/* 029286F8 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 029286FC */ Gambit_fn_0280C80C(cpu);
|
|
/* 02928700 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02928704 */ _t46 = cpu->r[27] + 0x00000090u;
|
|
/* 02928704 */ cpu->r[0] = rbrew_read16(cpu->mem, _t46);
|
|
/* 02928708 */ _t47 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928708 */ _t48 = _t47 & 0x00000001u;
|
|
/* 02928708 */ if (_t48) goto L_02928740; else goto L_0292870C;
|
|
L_0292870C: ; // 0x292870c
|
|
/* 0292870C */ cpu->r[0] = cpu->r[0] | 0x00000010u;
|
|
/* 02928710 */ _t49 = cpu->r[27] + 0x00000090u;
|
|
/* 02928710 */ rbrew_write16(cpu->mem, _t49, (uint16_t)cpu->r[0]);
|
|
/* 02928714 */ _t50 = cpu->r[25] + 0x00000000u;
|
|
/* 02928714 */ cpu->r[10] = rbrew_read32(cpu->mem, _t50);
|
|
/* 02928718 */ cpu->r[3] = cpu->r[1] + 0x00000040u;
|
|
/* 0292871C */ cpu->r[0] = cpu->r[10] + 0xFFFFFFFFu;
|
|
/* 02928720 */ cpu->r[4] = 0x00000002u;
|
|
/* 02928724 */ cpu->r[31] = cpu->r[10] - cpu->r[0];
|
|
/* 02928728 */ Gambit_fn_02833CE8(cpu);
|
|
/* 0292872C */ _t51 = cpu->r[1] + 0x00000014u;
|
|
/* 0292872C */ cpu->r[3] = rbrew_read32(cpu->mem, _t51);
|
|
/* 02928730 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02928734 */ _t52 = cpu->r[1] + 0x00000038u;
|
|
/* 02928734 */ rbrew_write32(cpu->mem, _t52, cpu->r[24]);
|
|
/* 02928738 */ _t53 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928738 */ _t54 = _t53 & 0x00000001u;
|
|
/* 02928738 */ if (_t54) goto L_0292873C; else goto L_02928770;
|
|
L_0292873C: ; // 0x292873c
|
|
/* 0292873C */ goto L_02928778;
|
|
L_02928740: ; // 0x2928740
|
|
/* 02928740 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Cu, 0x0000001Au);
|
|
/* 02928744 */ _t55 = cpu->r[27] + 0x00000090u;
|
|
/* 02928744 */ rbrew_write16(cpu->mem, _t55, (uint16_t)cpu->r[0]);
|
|
/* 02928748 */ _t56 = cpu->r[25] + 0x00000000u;
|
|
/* 02928748 */ cpu->r[10] = rbrew_read32(cpu->mem, _t56);
|
|
/* 0292874C */ cpu->r[3] = cpu->r[1] + 0x00000040u;
|
|
/* 02928750 */ cpu->r[0] = cpu->r[10] + 0xFFFFFFFFu;
|
|
/* 02928754 */ cpu->r[4] = 0x00000002u;
|
|
/* 02928758 */ cpu->r[31] = cpu->r[10] - cpu->r[0];
|
|
/* 0292875C */ Gambit_fn_02833CE8(cpu);
|
|
/* 02928760 */ _t57 = cpu->r[1] + 0x00000014u;
|
|
/* 02928760 */ cpu->r[3] = rbrew_read32(cpu->mem, _t57);
|
|
/* 02928764 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02928768 */ _t58 = cpu->r[1] + 0x00000038u;
|
|
/* 02928768 */ rbrew_write32(cpu->mem, _t58, cpu->r[24]);
|
|
/* 0292876C */ _t59 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292876C */ _t60 = _t59 & 0x00000001u;
|
|
/* 0292876C */ if (_t60) goto L_02928778; else goto L_02928770;
|
|
L_02928770: ; // 0x2928770
|
|
/* 02928770 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 02928774 */ Gambit_fn_0280C80C(cpu);
|
|
L_02928778: ; // 0x2928778
|
|
/* 02928778 */ cpu->r[3] = cpu->r[31];
|
|
/* 0292877C */ /* nop */
|
|
/* 02928780 */ _t61 = cpu->r[1] + 0x000000BCu;
|
|
/* 02928780 */ cpu->r[0] = rbrew_read32(cpu->mem, _t61);
|
|
/* 02928784 */ cpu->lr = cpu->r[0];
|
|
/* 02928788 */ cpu->r[1] = cpu->r[1] + 0x000000B8u;
|
|
/* 0292878C */ return;
|
|
}
|
|
|
|
// fn_02928790 @ 0x2928790
|
|
void Gambit_fn_02928790(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43;
|
|
|
|
L_02928790: ; // 0x2928790
|
|
/* 02928790 */ _t0 = cpu->r[1] + 0xFFFFFF70u;
|
|
/* 02928790 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02928790 */ cpu->r[1] = _t0;
|
|
/* 02928794 */ /* nop */
|
|
/* 02928798 */ cpu->r[0] = cpu->lr;
|
|
/* 0292879C */ _t1 = cpu->r[1] + 0x00000094u;
|
|
/* 0292879C */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 029287A0 */ cpu->r[29] = cpu->r[10];
|
|
/* 029287A4 */ _t2 = cpu->r[3] + 0x00000090u;
|
|
/* 029287A4 */ cpu->r[0] = rbrew_read16(cpu->mem, _t2);
|
|
/* 029287A8 */ cpu->r[26] = cpu->r[5];
|
|
/* 029287AC */ _t3 = cpu->r[3] + 0x0000000Cu;
|
|
/* 029287AC */ cpu->r[5] = rbrew_read32(cpu->mem, _t3);
|
|
/* 029287B0 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Cu, 0x0000001Au);
|
|
/* 029287B4 */ cpu->r[31] = cpu->r[8];
|
|
/* 029287B8 */ _t4 = cpu->r[3] + 0x00000090u;
|
|
/* 029287B8 */ rbrew_write16(cpu->mem, _t4, (uint16_t)cpu->r[12]);
|
|
/* 029287BC */ _t5 = cpu->r[5] + 0x00000084u;
|
|
/* 029287BC */ cpu->r[8] = rbrew_read32(cpu->mem, _t5);
|
|
/* 029287C0 */ cpu->r[22] = cpu->r[4];
|
|
/* 029287C4 */ cpu->ctr = cpu->r[8];
|
|
/* 029287C8 */ cpu->r[23] = rbrew_rlwinm(cpu->r[0], 0x0000001Cu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 029287CC */ cpu->r[27] = cpu->r[6];
|
|
/* 029287D0 */ cpu->r[30] = cpu->r[7];
|
|
/* 029287D4 */ cpu->r[28] = cpu->r[9];
|
|
/* 029287D8 */ cpu->r[4] = 0x00000040u;
|
|
/* 029287DC */ cpu->r[25] = cpu->r[3];
|
|
/* 029287E0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 029287E4 */ cpu->r[0] = cpu->r[3] + 0xFFFFFFC0u;
|
|
/* 029287E8 */ cpu->r[4] = cpu->r[25];
|
|
/* 029287EC */ cpu->r[21] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000000u, 0x00000019u);
|
|
/* 029287F0 */ cpu->r[5] = 0x00000040u;
|
|
/* 029287F4 */ cpu->r[3] = cpu->r[21];
|
|
/* 029287F8 */ Gambit_fn_02801ADC(cpu);
|
|
/* 029287FC */ cpu->r[5] = cpu->r[21];
|
|
/* 02928800 */ cpu->r[21] = 0x00000000u;
|
|
/* 02928804 */ cpu->r[24] = cpu->r[3];
|
|
/* 02928808 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0292880C */ cpu->r[6] = cpu->r[21];
|
|
/* 02928810 */ cpu->r[4] = cpu->r[24];
|
|
/* 02928814 */ Gambit_fn_02833F9C(cpu);
|
|
/* 02928818 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0292881C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292881C */ _t7 = _t6 & 0x00000001u;
|
|
/* 0292881C */ if (_t7) goto L_02928844; else goto L_02928820;
|
|
L_02928820: ; // 0x2928820
|
|
/* 02928820 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02928824 */ cpu->r[4] = 0x000000EFu;
|
|
/* 02928828 */ Gambit_fn_02834638(cpu);
|
|
/* 0292882C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02928830 */ cpu->r[4] = 0x000000BBu;
|
|
/* 02928834 */ Gambit_fn_02834638(cpu);
|
|
/* 02928838 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0292883C */ cpu->r[4] = 0x000000BFu;
|
|
/* 02928840 */ Gambit_fn_02834638(cpu);
|
|
L_02928844: ; // 0x2928844
|
|
/* 02928844 */ cpu->r[6] = 0x00000000u;
|
|
/* 02928848 */ cpu->r[5] = cpu->r[25];
|
|
/* 0292884C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02928850 */ cpu->r[7] = cpu->r[6];
|
|
/* 02928854 */ cpu->r[3] = cpu->r[27];
|
|
/* 02928858 */ Gambit_fn_0283F5B0(cpu);
|
|
/* 0292885C */ cpu->r[29] = cpu->r[3];
|
|
/* 0292885C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02928860 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928860 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02928860 */ if (_t9) goto L_029289B4; else goto L_02928864;
|
|
L_02928864: ; // 0x2928864
|
|
/* 02928864 */ cpu->r[0] = 0x10140000u;
|
|
/* 02928868 */ _t10 = cpu->r[1] + 0x00000034u;
|
|
/* 02928868 */ rbrew_write32(cpu->mem, _t10, cpu->r[21]);
|
|
/* 0292886C */ cpu->r[4] = 0x00000020u;
|
|
/* 02928870 */ cpu->r[0] = cpu->r[0] + 0x00003FDCu;
|
|
/* 02928874 */ _t11 = cpu->r[1] + 0x00000038u;
|
|
/* 02928874 */ rbrew_write32(cpu->mem, _t11, cpu->r[21]);
|
|
/* 02928878 */ cpu->r[3] = cpu->r[1] + 0x0000003Cu;
|
|
/* 0292887C */ _t12 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0292887C */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 02928880 */ Gambit_fn_02C89380(cpu);
|
|
/* 02928884 */ cpu->r[27] = 0x10140000u;
|
|
/* 02928888 */ cpu->r[3] = cpu->r[22];
|
|
/* 0292888C */ cpu->r[27] = cpu->r[27] + 0x00003FECu;
|
|
/* 02928890 */ cpu->r[5] = cpu->r[26];
|
|
/* 02928894 */ _t13 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02928894 */ rbrew_write32(cpu->mem, _t13, cpu->r[27]);
|
|
/* 02928898 */ cpu->r[29] = 0x00000000u;
|
|
/* 0292889C */ cpu->r[4] = cpu->r[1] + 0x00000034u;
|
|
/* 029288A0 */ cpu->r[6] = 0x00000001u;
|
|
/* 029288A4 */ cpu->r[7] = cpu->r[29];
|
|
/* 029288A8 */ _t14 = cpu->r[1] + 0x00000060u;
|
|
/* 029288A8 */ rbrew_write32(cpu->mem, _t14, cpu->r[21]);
|
|
/* 029288AC */ Gambit_fn_0280C9B0(cpu);
|
|
/* 029288B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 029288B4 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029288B4 */ _t16 = _t15 & 0x00000001u;
|
|
/* 029288B4 */ if (_t16) goto L_0292899C; else goto L_029288B8;
|
|
L_029288B8: ; // 0x29288b8
|
|
/* 029288B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 029288BC */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029288BC */ _t18 = _t17 & 0x00000001u;
|
|
/* 029288BC */ if (_t18) goto L_02928970; else goto L_029288C0;
|
|
L_029288C0: ; // 0x29288c0
|
|
/* 029288C0 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 029288C4 */ cpu->r[4] = 0x00000000u;
|
|
/* 029288C8 */ Gambit_fn_02834638(cpu);
|
|
/* 029288CC */ _t19 = cpu->r[1] + 0x00000024u;
|
|
/* 029288CC */ cpu->r[10] = rbrew_read32(cpu->mem, _t19);
|
|
/* 029288D0 */ cpu->r[11] = cpu->r[28] + 0xFFFFFFFFu;
|
|
/* 029288D4 */ cpu->r[0] = cpu->r[10] & cpu->r[11];
|
|
/* 029288D8 */ cpu->r[0] = cpu->r[28] - cpu->r[0];
|
|
/* 029288DC */ cpu->r[29] = cpu->r[0] & cpu->r[11];
|
|
/* 029288DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 029288E0 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029288E0 */ _t21 = _t20 & 0x00000001u;
|
|
/* 029288E0 */ if (_t21) goto L_029288F8; else goto L_029288E4;
|
|
L_029288E4: ; // 0x29288e4
|
|
/* 029288E4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 029288E8 */ cpu->r[4] = 0x00000000u;
|
|
/* 029288EC */ Gambit_fn_02834638(cpu);
|
|
/* 029288F0 */ cpu->r[29] = cpu->r[29] + 0xFFFFFFFFu;
|
|
/* 029288F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 029288F4 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029288F4 */ _t23 = _t22 & 0x00000001u;
|
|
/* 029288F4 */ if (_t23) goto L_029288F8; else goto L_029288E4;
|
|
L_029288F8: ; // 0x29288f8
|
|
/* 029288F8 */ cpu->r[0] = 0x00000040u - cpu->r[30];
|
|
/* 029288FC */ cpu->r[29] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Au, 0x0000001Fu);
|
|
/* 029288FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02928900 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928900 */ _t25 = _t24 & 0x00000001u;
|
|
/* 02928900 */ if (_t25) goto L_02928924; else goto L_02928904;
|
|
L_02928904: ; // 0x2928904
|
|
/* 02928904 */ cpu->r[30] = cpu->r[30] + 0xFFFFFFFFu;
|
|
/* 02928908 */ cpu->r[31] = cpu->r[31] - cpu->r[29];
|
|
L_0292890C: ; // 0x292890c
|
|
/* 0292890C */ _t26 = cpu->r[30] + 0x00000001u;
|
|
/* 0292890C */ cpu->r[4] = rbrew_read8(cpu->mem, _t26);
|
|
/* 0292890C */ cpu->r[30] = _t26;
|
|
/* 02928910 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02928914 */ Gambit_fn_02834638(cpu);
|
|
/* 02928918 */ cpu->r[29] = cpu->r[29] + 0xFFFFFFFFu;
|
|
/* 02928918 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0292891C */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292891C */ _t28 = _t27 & 0x00000001u;
|
|
/* 0292891C */ if (_t28) goto L_02928920; else goto L_0292890C;
|
|
L_02928920: ; // 0x2928920
|
|
/* 02928920 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
L_02928924: ; // 0x2928924
|
|
/* 02928924 */ cpu->r[5] = cpu->r[1] + 0x00000034u;
|
|
/* 02928928 */ cpu->r[3] = cpu->r[22];
|
|
/* 0292892C */ _t29 = cpu->r[1] + 0x00000024u;
|
|
/* 0292892C */ cpu->r[7] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02928930 */ cpu->r[4] = cpu->r[1] + 0x0000002Cu;
|
|
/* 02928934 */ cpu->r[6] = cpu->r[24];
|
|
/* 02928938 */ _t30 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02928938 */ rbrew_write32(cpu->mem, _t30, cpu->r[21]);
|
|
/* 0292893C */ Gambit_fn_0280CBD8(cpu);
|
|
/* 02928940 */ cpu->r[5] = cpu->r[1] + 0x00000034u;
|
|
/* 02928944 */ cpu->r[4] = cpu->r[1] + 0x00000030u;
|
|
/* 02928948 */ cpu->r[3] = cpu->r[22];
|
|
/* 0292894C */ cpu->r[6] = cpu->r[30];
|
|
/* 02928950 */ cpu->r[7] = cpu->r[31];
|
|
/* 02928954 */ _t31 = cpu->r[1] + 0x00000030u;
|
|
/* 02928954 */ rbrew_write32(cpu->mem, _t31, cpu->r[21]);
|
|
/* 02928958 */ Gambit_fn_0280CBD8(cpu);
|
|
/* 0292895C */ cpu->r[4] = cpu->r[1] + 0x00000034u;
|
|
/* 02928960 */ cpu->r[3] = cpu->r[22];
|
|
/* 02928964 */ Gambit_fn_0280C80C(cpu);
|
|
/* 02928968 */ cpu->r[29] = 0x00000001u;
|
|
/* 0292896C */ goto L_0292899C;
|
|
L_02928970: ; // 0x2928970
|
|
/* 02928970 */ cpu->r[5] = cpu->r[1] + 0x00000034u;
|
|
/* 02928974 */ cpu->r[4] = cpu->r[1] + 0x00000028u;
|
|
/* 02928978 */ _t32 = cpu->r[1] + 0x00000024u;
|
|
/* 02928978 */ cpu->r[7] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0292897C */ cpu->r[6] = cpu->r[24];
|
|
/* 02928980 */ cpu->r[3] = cpu->r[22];
|
|
/* 02928984 */ _t33 = cpu->r[1] + 0x00000028u;
|
|
/* 02928984 */ rbrew_write32(cpu->mem, _t33, cpu->r[21]);
|
|
/* 02928988 */ Gambit_fn_0280CBD8(cpu);
|
|
/* 0292898C */ cpu->r[4] = cpu->r[1] + 0x00000034u;
|
|
/* 02928990 */ cpu->r[3] = cpu->r[22];
|
|
/* 02928994 */ Gambit_fn_0280C80C(cpu);
|
|
/* 02928998 */ cpu->r[29] = 0x00000001u;
|
|
L_0292899C: ; // 0x292899c
|
|
/* 0292899C */ _t34 = cpu->r[1] + 0x00000038u;
|
|
/* 0292899C */ cpu->r[3] = rbrew_read32(cpu->mem, _t34);
|
|
/* 029289A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 029289A4 */ _t35 = cpu->r[1] + 0x0000005Cu;
|
|
/* 029289A4 */ rbrew_write32(cpu->mem, _t35, cpu->r[27]);
|
|
/* 029289A8 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029289A8 */ _t37 = _t36 & 0x00000001u;
|
|
/* 029289A8 */ if (_t37) goto L_029289B4; else goto L_029289AC;
|
|
L_029289AC: ; // 0x29289ac
|
|
/* 029289AC */ cpu->r[4] = cpu->r[1] + 0x00000034u;
|
|
/* 029289B0 */ Gambit_fn_0280C80C(cpu);
|
|
L_029289B4: ; // 0x29289b4
|
|
/* 029289B4 */ cpu->r[3] = cpu->r[24];
|
|
/* 029289B8 */ Gambit_fn_02801BB4(cpu);
|
|
/* 029289BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u);
|
|
/* 029289C0 */ _t38 = cpu->r[25] + 0x00000090u;
|
|
/* 029289C0 */ cpu->r[7] = rbrew_read16(cpu->mem, _t38);
|
|
/* 029289C4 */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029289C4 */ _t40 = _t39 & 0x00000001u;
|
|
/* 029289C4 */ if (_t40) goto L_029289E0; else goto L_029289C8;
|
|
L_029289C8: ; // 0x29289c8
|
|
/* 029289C8 */ cpu->r[7] = cpu->r[7] | 0x00000010u;
|
|
/* 029289CC */ cpu->r[4] = 0x00000002u;
|
|
/* 029289D0 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 029289D4 */ _t41 = cpu->r[25] + 0x00000090u;
|
|
/* 029289D4 */ rbrew_write16(cpu->mem, _t41, (uint16_t)cpu->r[7]);
|
|
/* 029289D8 */ Gambit_fn_028340EC(cpu);
|
|
/* 029289DC */ goto L_029289F4;
|
|
L_029289E0: ; // 0x29289e0
|
|
/* 029289E0 */ cpu->r[7] = rbrew_rlwinm(cpu->r[7], 0x00000000u, 0x0000001Cu, 0x0000001Au);
|
|
/* 029289E4 */ cpu->r[4] = 0x00000002u;
|
|
/* 029289E8 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 029289EC */ _t42 = cpu->r[25] + 0x00000090u;
|
|
/* 029289EC */ rbrew_write16(cpu->mem, _t42, (uint16_t)cpu->r[7]);
|
|
/* 029289F0 */ Gambit_fn_028340EC(cpu);
|
|
L_029289F4: ; // 0x29289f4
|
|
/* 029289F4 */ cpu->r[3] = cpu->r[29];
|
|
/* 029289F8 */ /* nop */
|
|
/* 029289FC */ _t43 = cpu->r[1] + 0x00000094u;
|
|
/* 029289FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t43);
|
|
/* 02928A00 */ cpu->lr = cpu->r[0];
|
|
/* 02928A04 */ cpu->r[1] = cpu->r[1] + 0x00000090u;
|
|
/* 02928A08 */ return;
|
|
}
|
|
|
|
// fn_02928A0C @ 0x2928a0c
|
|
void Gambit_fn_02928A0C(CPUState* 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_02928A0C: ; // 0x2928a0c
|
|
/* 02928A0C */ cpu->r[0] = cpu->lr;
|
|
/* 02928A10 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02928A10 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02928A10 */ cpu->r[1] = _t0;
|
|
/* 02928A14 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02928A14 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02928A18 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02928A18 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02928A1C */ cpu->r[30] = cpu->r[3];
|
|
/* 02928A20 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02928A20 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02928A24 */ _t4 = cpu->r[30] + 0x00000004u;
|
|
/* 02928A24 */ cpu->r[31] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02928A28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02928A2C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928A2C */ _t6 = _t5 & 0x00000001u;
|
|
/* 02928A2C */ if (_t6) goto L_02928A48; else goto L_02928A30;
|
|
L_02928A30: ; // 0x2928a30
|
|
/* 02928A30 */ cpu->r[3] = cpu->r[31];
|
|
/* 02928A34 */ Gambit_fn_02928A0C(cpu);
|
|
/* 02928A38 */ _t7 = cpu->r[31] + 0x00000008u;
|
|
/* 02928A38 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02928A3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02928A40 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928A40 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02928A40 */ if (_t9) goto L_02928A44; else goto L_02928A30;
|
|
L_02928A44: ; // 0x2928a44
|
|
/* 02928A44 */ _t10 = cpu->r[30] + 0x00000004u;
|
|
/* 02928A44 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
L_02928A48: ; // 0x2928a48
|
|
/* 02928A48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02928A4C */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928A4C */ _t12 = _t11 & 0x00000001u;
|
|
/* 02928A4C */ if (_t12) goto L_02928A74; else goto L_02928A50;
|
|
L_02928A50: ; // 0x2928a50
|
|
/* 02928A50 */ cpu->r[3] = cpu->r[31];
|
|
/* 02928A54 */ _t13 = cpu->r[3] + 0x00000088u;
|
|
/* 02928A54 */ cpu->r[12] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02928A58 */ _t14 = cpu->r[12] + 0x0000000Cu;
|
|
/* 02928A58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02928A5C */ cpu->ctr = cpu->r[0];
|
|
/* 02928A60 */ _t15 = cpu->r[31] + 0x00000008u;
|
|
/* 02928A60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02928A64 */ cpu->r[4] = 0x00000003u;
|
|
/* 02928A68 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02928A6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02928A70 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928A70 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02928A70 */ if (_t17) goto L_02928A74; else goto L_02928A50;
|
|
L_02928A74: ; // 0x2928a74
|
|
/* 02928A74 */ cpu->r[3] = cpu->r[30];
|
|
/* 02928A78 */ Gambit_fn_028029CC(cpu);
|
|
/* 02928A7C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02928A7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02928A80 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 02928A80 */ cpu->r[30] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02928A84 */ cpu->lr = cpu->r[0];
|
|
/* 02928A88 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02928A88 */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02928A8C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02928A90 */ return;
|
|
}
|
|
|
|
// fn_02928A10 @ 0x2928a10
|
|
void Gambit_fn_02928A10(CPUState* 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_02928A10: ; // 0x2928a10
|
|
/* 02928A10 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02928A10 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02928A10 */ cpu->r[1] = _t0;
|
|
/* 02928A14 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02928A14 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02928A18 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02928A18 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02928A1C */ cpu->r[30] = cpu->r[3];
|
|
/* 02928A20 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02928A20 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02928A24 */ _t4 = cpu->r[30] + 0x00000004u;
|
|
/* 02928A24 */ cpu->r[31] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02928A28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02928A2C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928A2C */ _t6 = _t5 & 0x00000001u;
|
|
/* 02928A2C */ if (_t6) goto L_02928A48; else goto L_02928A30;
|
|
L_02928A30: ; // 0x2928a30
|
|
/* 02928A30 */ cpu->r[3] = cpu->r[31];
|
|
/* 02928A34 */ Gambit_fn_02928A0C(cpu);
|
|
/* 02928A38 */ _t7 = cpu->r[31] + 0x00000008u;
|
|
/* 02928A38 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02928A3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02928A40 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928A40 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02928A40 */ if (_t9) goto L_02928A44; else goto L_02928A30;
|
|
L_02928A44: ; // 0x2928a44
|
|
/* 02928A44 */ _t10 = cpu->r[30] + 0x00000004u;
|
|
/* 02928A44 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
L_02928A48: ; // 0x2928a48
|
|
/* 02928A48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02928A4C */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928A4C */ _t12 = _t11 & 0x00000001u;
|
|
/* 02928A4C */ if (_t12) goto L_02928A74; else goto L_02928A50;
|
|
L_02928A50: ; // 0x2928a50
|
|
/* 02928A50 */ cpu->r[3] = cpu->r[31];
|
|
/* 02928A54 */ _t13 = cpu->r[3] + 0x00000088u;
|
|
/* 02928A54 */ cpu->r[12] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02928A58 */ _t14 = cpu->r[12] + 0x0000000Cu;
|
|
/* 02928A58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02928A5C */ cpu->ctr = cpu->r[0];
|
|
/* 02928A60 */ _t15 = cpu->r[31] + 0x00000008u;
|
|
/* 02928A60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02928A64 */ cpu->r[4] = 0x00000003u;
|
|
/* 02928A68 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02928A6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02928A70 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928A70 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02928A70 */ if (_t17) goto L_02928A74; else goto L_02928A50;
|
|
L_02928A74: ; // 0x2928a74
|
|
/* 02928A74 */ cpu->r[3] = cpu->r[30];
|
|
/* 02928A78 */ Gambit_fn_028029CC(cpu);
|
|
/* 02928A7C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02928A7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02928A80 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 02928A80 */ cpu->r[30] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02928A84 */ cpu->lr = cpu->r[0];
|
|
/* 02928A88 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02928A88 */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02928A8C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02928A90 */ return;
|
|
}
|
|
|
|
// fn_02928A94 @ 0x2928a94
|
|
void Gambit_fn_02928A94(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_02928A94: ; // 0x2928a94
|
|
/* 02928A94 */ cpu->r[0] = cpu->lr;
|
|
/* 02928A98 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02928A98 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02928A98 */ cpu->r[1] = _t0;
|
|
/* 02928A9C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02928A9C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02928AA0 */ cpu->r[31] = cpu->r[3];
|
|
/* 02928AA4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02928AA4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02928AA8 */ Gambit_fn_02802A1C(cpu);
|
|
/* 02928AAC */ cpu->r[3] = cpu->r[31];
|
|
/* 02928AB0 */ Gambit_fn_02928A0C(cpu);
|
|
/* 02928AB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02928AB8 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928AB8 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02928AB8 */ if (_t4) goto L_02928AD4; else goto L_02928ABC;
|
|
L_02928ABC: ; // 0x2928abc
|
|
/* 02928ABC */ _t5 = cpu->r[31] + 0x00000088u;
|
|
/* 02928ABC */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02928AC0 */ _t6 = cpu->r[12] + 0x0000000Cu;
|
|
/* 02928AC0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02928AC4 */ cpu->ctr = cpu->r[0];
|
|
/* 02928AC8 */ cpu->r[3] = cpu->r[31];
|
|
/* 02928ACC */ cpu->r[4] = 0x00000003u;
|
|
/* 02928AD0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02928AD4: ; // 0x2928ad4
|
|
/* 02928AD4 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 02928AD4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02928AD8 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02928AD8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02928ADC */ cpu->lr = cpu->r[0];
|
|
/* 02928AE0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02928AE4 */ return;
|
|
}
|
|
|
|
// fn_02928A98 @ 0x2928a98
|
|
void Gambit_fn_02928A98(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_02928A98: ; // 0x2928a98
|
|
/* 02928A98 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02928A98 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02928A98 */ cpu->r[1] = _t0;
|
|
/* 02928A9C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02928A9C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02928AA0 */ cpu->r[31] = cpu->r[3];
|
|
/* 02928AA4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02928AA4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02928AA8 */ Gambit_fn_02802A1C(cpu);
|
|
/* 02928AAC */ cpu->r[3] = cpu->r[31];
|
|
/* 02928AB0 */ Gambit_fn_02928A0C(cpu);
|
|
/* 02928AB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02928AB8 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928AB8 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02928AB8 */ if (_t4) goto L_02928AD4; else goto L_02928ABC;
|
|
L_02928ABC: ; // 0x2928abc
|
|
/* 02928ABC */ _t5 = cpu->r[31] + 0x00000088u;
|
|
/* 02928ABC */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02928AC0 */ _t6 = cpu->r[12] + 0x0000000Cu;
|
|
/* 02928AC0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02928AC4 */ cpu->ctr = cpu->r[0];
|
|
/* 02928AC8 */ cpu->r[3] = cpu->r[31];
|
|
/* 02928ACC */ cpu->r[4] = 0x00000003u;
|
|
/* 02928AD0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02928AD4: ; // 0x2928ad4
|
|
/* 02928AD4 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 02928AD4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02928AD8 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02928AD8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02928ADC */ cpu->lr = cpu->r[0];
|
|
/* 02928AE0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02928AE4 */ return;
|
|
}
|
|
|
|
// fn_02928AE8 @ 0x2928ae8
|
|
void Gambit_fn_02928AE8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_02928AE8: ; // 0x2928ae8
|
|
/* 02928AE8 */ cpu->r[12] = 0x10110000u;
|
|
/* 02928AEC */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 02928AEC */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 02928AF0 */ _t1 = cpu->r[12] + 0x00007399u;
|
|
/* 02928AF0 */ cpu->r[12] = rbrew_read8(cpu->mem, _t1);
|
|
/* 02928AF4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[12]);
|
|
/* 02928AF8 */ cpu->r[11] = 0x00000000u;
|
|
/* 02928AFC */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928AFC */ _t3 = _t2 & 0x00000001u;
|
|
/* 02928AFC */ if (_t3) goto L_02928B18; else goto L_02928B00;
|
|
L_02928B00: ; // 0x2928b00
|
|
/* 02928B00 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[11]);
|
|
/* 02928B04 */ _t4 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02928B04 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02928B04 */ if (_t5) goto L_02928B08; else goto L_02928B24;
|
|
L_02928B08: ; // 0x2928b08
|
|
/* 02928B08 */ _t6 = cpu->r[3] + 0x00000001u;
|
|
/* 02928B08 */ cpu->r[0] = rbrew_read8(cpu->mem, _t6);
|
|
/* 02928B08 */ cpu->r[3] = _t6;
|
|
/* 02928B0C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[12]);
|
|
/* 02928B10 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 02928B14 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928B14 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02928B14 */ if (_t8) goto L_02928B18; else goto L_02928B00;
|
|
L_02928B18: ; // 0x2928b18
|
|
/* 02928B18 */ cpu->r[8] = cpu->r[4] - cpu->r[11];
|
|
/* 02928B1C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], 0x00000010u);
|
|
/* 02928B20 */ _t9 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02928B20 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02928B20 */ if (_t10) goto L_02928B24; else goto L_02928B2C;
|
|
L_02928B24: ; // 0x2928b24
|
|
/* 02928B24 */ cpu->r[3] = 0x00000000u;
|
|
/* 02928B28 */ return;
|
|
L_02928B2C: ; // 0x2928b2c
|
|
/* 02928B2C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[12]);
|
|
/* 02928B30 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928B30 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02928B30 */ if (_t12) goto L_02928B34; else goto L_02928B44;
|
|
L_02928B34: ; // 0x2928b34
|
|
/* 02928B34 */ _t13 = cpu->r[3] + 0x00000001u;
|
|
/* 02928B34 */ cpu->r[9] = rbrew_read8(cpu->mem, _t13);
|
|
/* 02928B34 */ cpu->r[3] = _t13;
|
|
/* 02928B38 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[12]);
|
|
/* 02928B3C */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 02928B40 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928B40 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02928B40 */ if (_t15) goto L_02928B34; else goto L_02928B44;
|
|
L_02928B44: ; // 0x2928b44
|
|
/* 02928B44 */ cpu->r[3] = cpu->r[11];
|
|
/* 02928B48 */ return;
|
|
}
|
|
|
|
// fn_02928B4C @ 0x2928b4c
|
|
void Gambit_fn_02928B4C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _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;
|
|
|
|
L_02928550: ; // 0x2928550
|
|
/* 02928550 */ _t0 = cpu->r[1] + 0xFFFFFF48u;
|
|
/* 02928550 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02928550 */ cpu->r[1] = _t0;
|
|
/* 02928554 */ cpu->r[0] = cpu->lr;
|
|
/* 02928558 */ /* nop */
|
|
/* 0292855C */ cpu->r[27] = cpu->r[5];
|
|
/* 02928560 */ cpu->r[30] = cpu->r[8];
|
|
/* 02928564 */ cpu->r[28] = cpu->r[6];
|
|
/* 02928568 */ cpu->r[31] = cpu->r[9];
|
|
/* 0292856C */ cpu->r[25] = cpu->r[3];
|
|
/* 02928570 */ cpu->r[5] = cpu->r[30];
|
|
/* 02928574 */ cpu->r[23] = 0x00000000u;
|
|
/* 02928578 */ cpu->r[26] = cpu->r[4];
|
|
/* 0292857C */ _t1 = cpu->r[1] + 0x000000BCu;
|
|
/* 0292857C */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02928580 */ cpu->r[29] = cpu->r[7];
|
|
/* 02928584 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02928588 */ cpu->r[3] = cpu->r[29];
|
|
/* 0292858C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0292858C */ rbrew_write8(cpu->mem, _t2, (uint8_t)cpu->r[23]);
|
|
/* 02928590 */ Gambit_fn_0280CE64(cpu);
|
|
/* 02928594 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02928598 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928598 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02928598 */ if (_t4) goto L_02928610; else goto L_0292859C;
|
|
L_0292859C: ; // 0x292859c
|
|
/* 0292859C */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 0292859C */ cpu->r[12] = rbrew_read8(cpu->mem, _t5);
|
|
/* 029285A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 029285A4 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029285A4 */ _t7 = _t6 & 0x00000001u;
|
|
/* 029285A4 */ if (_t7) goto L_02928610; else goto L_029285A8;
|
|
L_029285A8: ; // 0x29285a8
|
|
/* 029285A8 */ cpu->r[0] = 0x10140000u;
|
|
/* 029285AC */ _t8 = cpu->r[1] + 0x00000010u;
|
|
/* 029285AC */ rbrew_write32(cpu->mem, _t8, cpu->r[23]);
|
|
/* 029285B0 */ cpu->r[4] = 0x00000020u;
|
|
/* 029285B4 */ cpu->r[0] = cpu->r[0] + 0x00003FDCu;
|
|
/* 029285B8 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 029285B8 */ rbrew_write32(cpu->mem, _t9, cpu->r[23]);
|
|
/* 029285BC */ cpu->r[3] = cpu->r[1] + 0x00000018u;
|
|
/* 029285C0 */ _t10 = cpu->r[1] + 0x00000038u;
|
|
/* 029285C0 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 029285C4 */ Gambit_fn_02C89380(cpu);
|
|
/* 029285C8 */ cpu->r[24] = 0x10140000u;
|
|
/* 029285CC */ cpu->r[3] = cpu->r[29];
|
|
/* 029285D0 */ cpu->r[6] = 0x00000000u;
|
|
/* 029285D4 */ cpu->r[24] = cpu->r[24] + 0x00003FECu;
|
|
/* 029285D8 */ cpu->r[5] = cpu->r[30];
|
|
/* 029285DC */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 029285E0 */ _t11 = cpu->r[1] + 0x00000038u;
|
|
/* 029285E0 */ rbrew_write32(cpu->mem, _t11, cpu->r[24]);
|
|
/* 029285E4 */ cpu->r[7] = cpu->r[6];
|
|
/* 029285E8 */ _t12 = cpu->r[1] + 0x0000003Cu;
|
|
/* 029285E8 */ rbrew_write32(cpu->mem, _t12, cpu->r[23]);
|
|
/* 029285EC */ Gambit_fn_0280C9B0(cpu);
|
|
/* 029285F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 029285F4 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029285F4 */ _t14 = _t13 & 0x00000001u;
|
|
/* 029285F4 */ if (_t14) goto L_029285F8; else goto L_02928628;
|
|
L_029285F8: ; // 0x29285f8
|
|
/* 029285F8 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 029285F8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t15);
|
|
/* 029285FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02928600 */ _t16 = cpu->r[1] + 0x00000038u;
|
|
/* 02928600 */ rbrew_write32(cpu->mem, _t16, cpu->r[24]);
|
|
/* 02928604 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928604 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02928604 */ if (_t18) goto L_02928610; else goto L_02928608;
|
|
L_02928608: ; // 0x2928608
|
|
/* 02928608 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 0292860C */ Gambit_fn_0280C80C(cpu);
|
|
L_02928610: ; // 0x2928610
|
|
/* 02928610 */ /* nop */
|
|
/* 02928614 */ _t19 = cpu->r[1] + 0x000000BCu;
|
|
/* 02928614 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02928618 */ cpu->lr = cpu->r[0];
|
|
/* 0292861C */ cpu->r[1] = cpu->r[1] + 0x000000B8u;
|
|
/* 02928620 */ cpu->r[3] = 0x00000000u;
|
|
/* 02928624 */ return;
|
|
L_02928628: ; // 0x2928628
|
|
/* 02928628 */ cpu->r[3] = cpu->r[1] + 0x00000040u;
|
|
/* 0292862C */ cpu->r[4] = 0x00000000u;
|
|
/* 02928630 */ Gambit_fn_02833BE0(cpu);
|
|
/* 02928634 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 02928638 */ cpu->r[3] = cpu->r[29];
|
|
/* 0292863C */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02928640 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02928640 */ rbrew_write32(cpu->mem, _t20, cpu->r[23]);
|
|
/* 02928644 */ Gambit_fn_0280CE30(cpu);
|
|
/* 02928648 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0292864C */ _t21 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0292864C */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02928650 */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02928650 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02928650 */ if (_t23) goto L_0292865C; else goto L_02928654;
|
|
L_02928654: ; // 0x2928654
|
|
/* 02928654 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 02928658 */ _t24 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02928658 */ _t25 = _t24 & 0x00000001u;
|
|
/* 02928658 */ if (_t25) goto L_0292865C; else goto L_0292869C;
|
|
L_0292865C: ; // 0x292865c
|
|
/* 0292865C */ _t26 = cpu->r[26] + 0x00000000u;
|
|
/* 0292865C */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 02928660 */ _t27 = cpu->r[27] + 0x00000090u;
|
|
/* 02928660 */ cpu->r[12] = rbrew_read16(cpu->mem, _t27);
|
|
/* 02928664 */ _t28 = cpu->r[27] + 0x0000000Cu;
|
|
/* 02928664 */ cpu->r[6] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02928668 */ cpu->r[0] = rbrew_rlwinm(cpu->r[12], 0x00000000u, 0x0000001Cu, 0x0000001Au);
|
|
/* 0292866C */ _t29 = cpu->r[27] + 0x00000090u;
|
|
/* 0292866C */ rbrew_write16(cpu->mem, _t29, (uint16_t)cpu->r[0]);
|
|
/* 02928670 */ _t30 = cpu->r[6] + 0x00000034u;
|
|
/* 02928670 */ cpu->r[0] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02928674 */ cpu->ctr = cpu->r[0];
|
|
/* 02928678 */ _t31 = cpu->r[26] + 0x00000000u;
|
|
/* 02928678 */ cpu->r[4] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0292867C */ cpu->r[31] = rbrew_rlwinm(cpu->r[12], 0x0000001Cu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02928680 */ cpu->r[5] = cpu->r[28];
|
|
/* 02928684 */ cpu->r[3] = cpu->r[27];
|
|
/* 02928688 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0292868C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02928690 */ _t32 = cpu->r[25] + 0x00000000u;
|
|
/* 02928690 */ rbrew_write32(cpu->mem, _t32, cpu->r[3]);
|
|
/* 02928694 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928694 */ _t34 = _t33 & 0x00000001u;
|
|
/* 02928694 */ if (_t34) goto L_029286F4; else goto L_02928698;
|
|
L_02928698: ; // 0x2928698
|
|
/* 02928698 */ goto L_029286D8;
|
|
L_0292869C: ; // 0x292869c
|
|
/* 0292869C */ _t35 = cpu->r[26] + 0x00000000u;
|
|
/* 0292869C */ rbrew_write32(cpu->mem, _t35, cpu->r[31]);
|
|
/* 029286A0 */ _t36 = cpu->r[27] + 0x00000090u;
|
|
/* 029286A0 */ cpu->r[12] = rbrew_read16(cpu->mem, _t36);
|
|
/* 029286A4 */ _t37 = cpu->r[27] + 0x0000000Cu;
|
|
/* 029286A4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t37);
|
|
/* 029286A8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[12], 0x00000000u, 0x0000001Cu, 0x0000001Au);
|
|
/* 029286AC */ _t38 = cpu->r[27] + 0x00000090u;
|
|
/* 029286AC */ rbrew_write16(cpu->mem, _t38, (uint16_t)cpu->r[0]);
|
|
/* 029286B0 */ _t39 = cpu->r[6] + 0x00000034u;
|
|
/* 029286B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t39);
|
|
/* 029286B4 */ cpu->ctr = cpu->r[0];
|
|
/* 029286B8 */ _t40 = cpu->r[26] + 0x00000000u;
|
|
/* 029286B8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t40);
|
|
/* 029286BC */ cpu->r[31] = rbrew_rlwinm(cpu->r[12], 0x0000001Cu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 029286C0 */ cpu->r[5] = cpu->r[28];
|
|
/* 029286C4 */ cpu->r[3] = cpu->r[27];
|
|
/* 029286C8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 029286CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 029286D0 */ _t41 = cpu->r[25] + 0x00000000u;
|
|
/* 029286D0 */ rbrew_write32(cpu->mem, _t41, cpu->r[3]);
|
|
/* 029286D4 */ _t42 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029286D4 */ _t43 = _t42 & 0x00000001u;
|
|
/* 029286D4 */ if (_t43) goto L_029286F4; else goto L_029286D8;
|
|
L_029286D8: ; // 0x29286d8
|
|
/* 029286D8 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 029286DC */ cpu->r[3] = cpu->r[1] + 0x00000040u;
|
|
/* 029286E0 */ Gambit_fn_02833D50(cpu);
|
|
/* 029286E4 */ _t44 = cpu->r[26] + 0x00000000u;
|
|
/* 029286E4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t44);
|
|
/* 029286E8 */ cpu->r[3] = cpu->r[1] + 0x00000040u;
|
|
/* 029286EC */ _t45 = cpu->r[25] + 0x00000000u;
|
|
/* 029286EC */ cpu->r[4] = rbrew_read32(cpu->mem, _t45);
|
|
/* 029286F0 */ Gambit_fn_02834518(cpu);
|
|
L_029286F4: ; // 0x29286f4
|
|
/* 029286F4 */ cpu->r[3] = cpu->r[29];
|
|
/* 029286F8 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 029286FC */ Gambit_fn_0280C80C(cpu);
|
|
/* 02928700 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02928704 */ _t46 = cpu->r[27] + 0x00000090u;
|
|
/* 02928704 */ cpu->r[0] = rbrew_read16(cpu->mem, _t46);
|
|
/* 02928708 */ _t47 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928708 */ _t48 = _t47 & 0x00000001u;
|
|
/* 02928708 */ if (_t48) goto L_02928740; else goto L_0292870C;
|
|
L_0292870C: ; // 0x292870c
|
|
/* 0292870C */ cpu->r[0] = cpu->r[0] | 0x00000010u;
|
|
/* 02928710 */ _t49 = cpu->r[27] + 0x00000090u;
|
|
/* 02928710 */ rbrew_write16(cpu->mem, _t49, (uint16_t)cpu->r[0]);
|
|
/* 02928714 */ _t50 = cpu->r[25] + 0x00000000u;
|
|
/* 02928714 */ cpu->r[10] = rbrew_read32(cpu->mem, _t50);
|
|
/* 02928718 */ cpu->r[3] = cpu->r[1] + 0x00000040u;
|
|
/* 0292871C */ cpu->r[0] = cpu->r[10] + 0xFFFFFFFFu;
|
|
/* 02928720 */ cpu->r[4] = 0x00000002u;
|
|
/* 02928724 */ cpu->r[31] = cpu->r[10] - cpu->r[0];
|
|
/* 02928728 */ Gambit_fn_02833CE8(cpu);
|
|
/* 0292872C */ _t51 = cpu->r[1] + 0x00000014u;
|
|
/* 0292872C */ cpu->r[3] = rbrew_read32(cpu->mem, _t51);
|
|
/* 02928730 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02928734 */ _t52 = cpu->r[1] + 0x00000038u;
|
|
/* 02928734 */ rbrew_write32(cpu->mem, _t52, cpu->r[24]);
|
|
/* 02928738 */ _t53 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928738 */ _t54 = _t53 & 0x00000001u;
|
|
/* 02928738 */ if (_t54) goto L_0292873C; else goto L_02928770;
|
|
L_0292873C: ; // 0x292873c
|
|
/* 0292873C */ goto L_02928778;
|
|
L_02928740: ; // 0x2928740
|
|
/* 02928740 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Cu, 0x0000001Au);
|
|
/* 02928744 */ _t55 = cpu->r[27] + 0x00000090u;
|
|
/* 02928744 */ rbrew_write16(cpu->mem, _t55, (uint16_t)cpu->r[0]);
|
|
/* 02928748 */ _t56 = cpu->r[25] + 0x00000000u;
|
|
/* 02928748 */ cpu->r[10] = rbrew_read32(cpu->mem, _t56);
|
|
/* 0292874C */ cpu->r[3] = cpu->r[1] + 0x00000040u;
|
|
/* 02928750 */ cpu->r[0] = cpu->r[10] + 0xFFFFFFFFu;
|
|
/* 02928754 */ cpu->r[4] = 0x00000002u;
|
|
/* 02928758 */ cpu->r[31] = cpu->r[10] - cpu->r[0];
|
|
/* 0292875C */ Gambit_fn_02833CE8(cpu);
|
|
/* 02928760 */ _t57 = cpu->r[1] + 0x00000014u;
|
|
/* 02928760 */ cpu->r[3] = rbrew_read32(cpu->mem, _t57);
|
|
/* 02928764 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02928768 */ _t58 = cpu->r[1] + 0x00000038u;
|
|
/* 02928768 */ rbrew_write32(cpu->mem, _t58, cpu->r[24]);
|
|
/* 0292876C */ _t59 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292876C */ _t60 = _t59 & 0x00000001u;
|
|
/* 0292876C */ if (_t60) goto L_02928778; else goto L_02928770;
|
|
L_02928770: ; // 0x2928770
|
|
/* 02928770 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 02928774 */ Gambit_fn_0280C80C(cpu);
|
|
L_02928778: ; // 0x2928778
|
|
/* 02928778 */ cpu->r[3] = cpu->r[31];
|
|
/* 0292877C */ /* nop */
|
|
/* 02928780 */ _t61 = cpu->r[1] + 0x000000BCu;
|
|
/* 02928780 */ cpu->r[0] = rbrew_read32(cpu->mem, _t61);
|
|
/* 02928784 */ cpu->lr = cpu->r[0];
|
|
/* 02928788 */ cpu->r[1] = cpu->r[1] + 0x000000B8u;
|
|
/* 0292878C */ return;
|
|
L_02928B4C: ; // 0x2928b4c
|
|
/* 02928B4C */ cpu->r[12] = 0x101D0000u;
|
|
/* 02928B50 */ cpu->r[9] = cpu->r[8];
|
|
/* 02928B54 */ _t62 = cpu->r[12] + 0xFFFFA2FCu;
|
|
/* 02928B54 */ cpu->r[12] = rbrew_read32(cpu->mem, _t62);
|
|
/* 02928B58 */ cpu->r[8] = cpu->r[7];
|
|
/* 02928B5C */ _t63 = cpu->r[12] + 0x00000014u;
|
|
/* 02928B5C */ cpu->r[7] = rbrew_read32(cpu->mem, _t63);
|
|
/* 02928B60 */ goto L_02928550;
|
|
}
|
|
|
|
// fn_02928B64 @ 0x2928b64
|
|
void Gambit_fn_02928B64(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_02928B64: ; // 0x2928b64
|
|
/* 02928B64 */ cpu->r[0] = cpu->lr;
|
|
/* 02928B68 */ cpu->r[10] = cpu->r[9];
|
|
/* 02928B6C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02928B6C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02928B6C */ cpu->r[1] = _t0;
|
|
/* 02928B70 */ cpu->r[11] = cpu->r[6];
|
|
/* 02928B74 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02928B74 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02928B78 */ cpu->r[12] = 0x101D0000u;
|
|
/* 02928B7C */ cpu->r[9] = cpu->r[8];
|
|
/* 02928B80 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02928B80 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02928B84 */ cpu->r[6] = cpu->r[5];
|
|
/* 02928B88 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02928B88 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02928B8C */ _t4 = cpu->r[12] + 0xFFFFA2FCu;
|
|
/* 02928B8C */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02928B90 */ cpu->r[5] = cpu->r[4];
|
|
/* 02928B94 */ cpu->r[8] = cpu->r[7];
|
|
/* 02928B98 */ _t5 = cpu->r[12] + 0x00000014u;
|
|
/* 02928B98 */ cpu->r[4] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02928B9C */ cpu->r[7] = cpu->r[11];
|
|
/* 02928BA0 */ Gambit_fn_02928790(cpu);
|
|
/* 02928BA4 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02928BA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02928BA8 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02928BA8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02928BAC */ cpu->lr = cpu->r[0];
|
|
/* 02928BB0 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 02928BB0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02928BB4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02928BB8 */ return;
|
|
}
|
|
|
|
// fn_02928B6C @ 0x2928b6c
|
|
void Gambit_fn_02928B6C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_02928B6C: ; // 0x2928b6c
|
|
/* 02928B6C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02928B6C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02928B6C */ cpu->r[1] = _t0;
|
|
/* 02928B70 */ cpu->r[11] = cpu->r[6];
|
|
/* 02928B74 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02928B74 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02928B78 */ cpu->r[12] = 0x101D0000u;
|
|
/* 02928B7C */ cpu->r[9] = cpu->r[8];
|
|
/* 02928B80 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02928B80 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02928B84 */ cpu->r[6] = cpu->r[5];
|
|
/* 02928B88 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02928B88 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02928B8C */ _t4 = cpu->r[12] + 0xFFFFA2FCu;
|
|
/* 02928B8C */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02928B90 */ cpu->r[5] = cpu->r[4];
|
|
/* 02928B94 */ cpu->r[8] = cpu->r[7];
|
|
/* 02928B98 */ _t5 = cpu->r[12] + 0x00000014u;
|
|
/* 02928B98 */ cpu->r[4] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02928B9C */ cpu->r[7] = cpu->r[11];
|
|
/* 02928BA0 */ Gambit_fn_02928790(cpu);
|
|
/* 02928BA4 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02928BA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02928BA8 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02928BA8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02928BAC */ cpu->lr = cpu->r[0];
|
|
/* 02928BB0 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 02928BB0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02928BB4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02928BB8 */ return;
|
|
}
|
|
|
|
// fn_02928BBC @ 0x2928bbc
|
|
void Gambit_fn_02928BBC(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_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t0;
|
|
/* 02801B38 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02801B48 */ _t3 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02801B50 */ if (_t5) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02801B60 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 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 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B74 */ if (_t9) 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 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02801B84 */ if (_t11) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t12 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02801B8C */ _t13 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02801BA0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
L_02928BBC: ; // 0x2928bbc
|
|
/* 02928BBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02928BC0 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928BC0 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02928BC0 */ if (_t17) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02928BC0 */ goto L_02928BC4;
|
|
L_02928BC4: ; // 0x2928bc4
|
|
/* 02928BC4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02928BC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02928BC8 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928BC8 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02928BC8 */ if (_t19) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02928BC8 */ goto L_02928BCC;
|
|
L_02928BCC: ; // 0x2928bcc
|
|
/* 02928BCC */ goto L_02801BB0;
|
|
}
|
|
|
|
// fn_02928BD0 @ 0x2928bd0
|
|
void Gambit_fn_02928BD0(CPUState* cpu) {
|
|
L_02928BD0: ; // 0x2928bd0
|
|
/* 02928BD0 */ return;
|
|
}
|
|
|
|
// fn_02928BD4 @ 0x2928bd4
|
|
void Gambit_fn_02928BD4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_02928BD4: ; // 0x2928bd4
|
|
/* 02928BD4 */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 02928BD4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02928BD8 */ _t1 = cpu->r[3] + 0x00000008u;
|
|
/* 02928BD8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02928BDC */ cpu->r[12] = cpu->r[11] + cpu->r[12];
|
|
/* 02928BE0 */ cpu->r[11] = 0x10110000u;
|
|
/* 02928BE4 */ _t2 = cpu->r[11] + 0x00007399u;
|
|
/* 02928BE4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t2);
|
|
/* 02928BE8 */ _t3 = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 02928BE8 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]);
|
|
/* 02928BEC */ return;
|
|
}
|
|
|
|
// fn_02928BF0 @ 0x2928bf0
|
|
void Gambit_fn_02928BF0(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_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t0;
|
|
/* 02801B38 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02801B48 */ _t3 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02801B50 */ if (_t5) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02801B60 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 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 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B74 */ if (_t9) 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 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02801B84 */ if (_t11) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t12 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02801B8C */ _t13 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02801BA0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
L_02928BF0: ; // 0x2928bf0
|
|
/* 02928BF0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02928BF4 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928BF4 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02928BF4 */ if (_t17) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02928BF4 */ goto L_02928BF8;
|
|
L_02928BF8: ; // 0x2928bf8
|
|
/* 02928BF8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02928BF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02928BFC */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928BFC */ _t19 = _t18 & 0x00000001u;
|
|
/* 02928BFC */ if (_t19) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02928BFC */ goto L_02928C00;
|
|
L_02928C00: ; // 0x2928c00
|
|
/* 02928C00 */ goto L_02801BB0;
|
|
}
|
|
|
|
// fn_02928C04 @ 0x2928c04
|
|
void Gambit_fn_02928C04(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_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t0;
|
|
/* 02801B38 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02801B48 */ _t3 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02801B50 */ if (_t5) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02801B60 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 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 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B74 */ if (_t9) 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 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02801B84 */ if (_t11) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t12 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02801B8C */ _t13 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02801BA0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
L_02928C04: ; // 0x2928c04
|
|
/* 02928C04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02928C08 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928C08 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02928C08 */ if (_t17) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02928C08 */ goto L_02928C0C;
|
|
L_02928C0C: ; // 0x2928c0c
|
|
/* 02928C0C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02928C0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02928C10 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928C10 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02928C10 */ if (_t19) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02928C10 */ goto L_02928C14;
|
|
L_02928C14: ; // 0x2928c14
|
|
/* 02928C14 */ goto L_02801BB0;
|
|
}
|
|
|
|
// fn_02928C18 @ 0x2928c18
|
|
void Gambit_fn_02928C18(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_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t0;
|
|
/* 02801B38 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02801B48 */ _t3 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02801B50 */ if (_t5) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02801B60 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 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 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B74 */ if (_t9) 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 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02801B84 */ if (_t11) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t12 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02801B8C */ _t13 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02801BA0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
L_02928C18: ; // 0x2928c18
|
|
/* 02928C18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02928C1C */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928C1C */ _t17 = _t16 & 0x00000001u;
|
|
/* 02928C1C */ if (_t17) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02928C1C */ goto L_02928C20;
|
|
L_02928C20: ; // 0x2928c20
|
|
/* 02928C20 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02928C20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02928C24 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928C24 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02928C24 */ if (_t19) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02928C24 */ goto L_02928C28;
|
|
L_02928C28: ; // 0x2928c28
|
|
/* 02928C28 */ goto L_02801BB0;
|
|
}
|
|
|
|
// fn_02928C2C @ 0x2928c2c
|
|
void Gambit_fn_02928C2C(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_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t0;
|
|
/* 02801B38 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02801B48 */ _t3 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02801B50 */ if (_t5) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02801B60 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 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 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B74 */ if (_t9) 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 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02801B84 */ if (_t11) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t12 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02801B8C */ _t13 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02801BA0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
L_02928C2C: ; // 0x2928c2c
|
|
/* 02928C2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02928C30 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928C30 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02928C30 */ if (_t17) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02928C30 */ goto L_02928C34;
|
|
L_02928C34: ; // 0x2928c34
|
|
/* 02928C34 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02928C34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02928C38 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928C38 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02928C38 */ if (_t19) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02928C38 */ goto L_02928C3C;
|
|
L_02928C3C: ; // 0x2928c3c
|
|
/* 02928C3C */ goto L_02801BB0;
|
|
}
|
|
|
|
// fn_02928C40 @ 0x2928c40
|
|
void Gambit_fn_02928C40(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_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t0;
|
|
/* 02801B38 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02801B48 */ _t3 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02801B50 */ if (_t5) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02801B60 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 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 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B74 */ if (_t9) 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 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02801B84 */ if (_t11) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t12 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02801B8C */ _t13 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02801BA0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
L_02928C40: ; // 0x2928c40
|
|
/* 02928C40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02928C44 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928C44 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02928C44 */ if (_t17) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02928C44 */ goto L_02928C48;
|
|
L_02928C48: ; // 0x2928c48
|
|
/* 02928C48 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02928C48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02928C4C */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928C4C */ _t19 = _t18 & 0x00000001u;
|
|
/* 02928C4C */ if (_t19) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02928C4C */ goto L_02928C50;
|
|
L_02928C50: ; // 0x2928c50
|
|
/* 02928C50 */ goto L_02801BB0;
|
|
}
|
|
|
|
// fn_02928C54 @ 0x2928c54
|
|
void Gambit_fn_02928C54(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_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t0;
|
|
/* 02801B38 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02801B48 */ _t3 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02801B50 */ if (_t5) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02801B60 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 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 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B74 */ if (_t9) 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 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02801B84 */ if (_t11) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t12 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02801B8C */ _t13 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02801BA0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
L_02928C54: ; // 0x2928c54
|
|
/* 02928C54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02928C58 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928C58 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02928C58 */ if (_t17) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02928C58 */ goto L_02928C5C;
|
|
L_02928C5C: ; // 0x2928c5c
|
|
/* 02928C5C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02928C5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02928C60 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928C60 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02928C60 */ if (_t19) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02928C60 */ goto L_02928C64;
|
|
L_02928C64: ; // 0x2928c64
|
|
/* 02928C64 */ goto L_02801BB0;
|
|
}
|
|
|
|
// fn_02928C68 @ 0x2928c68
|
|
void Gambit_fn_02928C68(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_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t0;
|
|
/* 02801B38 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02801B48 */ _t3 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02801B50 */ if (_t5) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02801B60 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 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 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B74 */ if (_t9) 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 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02801B84 */ if (_t11) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t12 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02801B8C */ _t13 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02801BA0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
L_02928C68: ; // 0x2928c68
|
|
/* 02928C68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02928C6C */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928C6C */ _t17 = _t16 & 0x00000001u;
|
|
/* 02928C6C */ if (_t17) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02928C6C */ goto L_02928C70;
|
|
L_02928C70: ; // 0x2928c70
|
|
/* 02928C70 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02928C70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02928C74 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928C74 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02928C74 */ if (_t19) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02928C74 */ goto L_02928C78;
|
|
L_02928C78: ; // 0x2928c78
|
|
/* 02928C78 */ goto L_02801BB0;
|
|
}
|
|
|
|
// fn_02928C7C @ 0x2928c7c
|
|
void Gambit_fn_02928C7C(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_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t0;
|
|
/* 02801B38 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02801B48 */ _t3 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02801B50 */ if (_t5) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02801B60 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 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 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B74 */ if (_t9) 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 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02801B84 */ if (_t11) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t12 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02801B8C */ _t13 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02801BA0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
L_02928C7C: ; // 0x2928c7c
|
|
/* 02928C7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02928C80 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928C80 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02928C80 */ if (_t17) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02928C80 */ goto L_02928C84;
|
|
L_02928C84: ; // 0x2928c84
|
|
/* 02928C84 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02928C84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02928C88 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928C88 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02928C88 */ if (_t19) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02928C88 */ goto L_02928C8C;
|
|
L_02928C8C: ; // 0x2928c8c
|
|
/* 02928C8C */ goto L_02801BB0;
|
|
}
|
|
|
|
// fn_02928C90 @ 0x2928c90
|
|
void Gambit_fn_02928C90(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_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t0;
|
|
/* 02801B38 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02801B48 */ _t3 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02801B50 */ if (_t5) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02801B60 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 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 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B74 */ if (_t9) 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 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02801B84 */ if (_t11) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t12 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02801B8C */ _t13 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02801BA0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
L_02928C90: ; // 0x2928c90
|
|
/* 02928C90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02928C94 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928C94 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02928C94 */ if (_t17) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02928C94 */ goto L_02928C98;
|
|
L_02928C98: ; // 0x2928c98
|
|
/* 02928C98 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02928C98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02928C9C */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928C9C */ _t19 = _t18 & 0x00000001u;
|
|
/* 02928C9C */ if (_t19) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02928C9C */ goto L_02928CA0;
|
|
L_02928CA0: ; // 0x2928ca0
|
|
/* 02928CA0 */ goto L_02801BB0;
|
|
}
|
|
|
|
// fn_02928CA4 @ 0x2928ca4
|
|
void Gambit_fn_02928CA4(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_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t0;
|
|
/* 02801B38 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02801B48 */ _t3 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02801B50 */ if (_t5) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02801B60 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 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 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B74 */ if (_t9) 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 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02801B84 */ if (_t11) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t12 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02801B8C */ _t13 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02801BA0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
L_02928CA4: ; // 0x2928ca4
|
|
/* 02928CA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02928CA8 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928CA8 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02928CA8 */ if (_t17) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02928CA8 */ goto L_02928CAC;
|
|
L_02928CAC: ; // 0x2928cac
|
|
/* 02928CAC */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02928CAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02928CB0 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928CB0 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02928CB0 */ if (_t19) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02928CB0 */ goto L_02928CB4;
|
|
L_02928CB4: ; // 0x2928cb4
|
|
/* 02928CB4 */ goto L_02801BB0;
|
|
}
|
|
|
|
// fn_02928CB8 @ 0x2928cb8
|
|
void Gambit_fn_02928CB8(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_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t0;
|
|
/* 02801B38 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02801B48 */ _t3 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02801B50 */ if (_t5) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02801B60 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 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 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B74 */ if (_t9) 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 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02801B84 */ if (_t11) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t12 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02801B8C */ _t13 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02801BA0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
L_02928CB8: ; // 0x2928cb8
|
|
/* 02928CB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02928CBC */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928CBC */ _t17 = _t16 & 0x00000001u;
|
|
/* 02928CBC */ if (_t17) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02928CBC */ goto L_02928CC0;
|
|
L_02928CC0: ; // 0x2928cc0
|
|
/* 02928CC0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02928CC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02928CC4 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928CC4 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02928CC4 */ if (_t19) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02928CC4 */ goto L_02928CC8;
|
|
L_02928CC8: ; // 0x2928cc8
|
|
/* 02928CC8 */ goto L_02801BB0;
|
|
}
|
|
|
|
// fn_02928CCC @ 0x2928ccc
|
|
void Gambit_fn_02928CCC(CPUState* cpu) {
|
|
uint32_t _t0, _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_02928CCC: ; // 0x2928ccc
|
|
/* 02928CCC */ _t0 = cpu->r[1] + 0xFFFFFF48u;
|
|
/* 02928CCC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02928CCC */ cpu->r[1] = _t0;
|
|
/* 02928CD0 */ cpu->r[0] = cpu->lr;
|
|
/* 02928CD4 */ /* nop */
|
|
/* 02928CD8 */ cpu->r[11] = cpu->r[4];
|
|
/* 02928CDC */ _t1 = cpu->r[1] + 0x000000BCu;
|
|
/* 02928CDC */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02928CE0 */ cpu->r[0] = 0x0000000Du;
|
|
/* 02928CE4 */ cpu->r[12] = cpu->r[1] + 0x00000004u;
|
|
/* 02928CE8 */ cpu->ctr = cpu->r[0];
|
|
/* 02928CEC */ cpu->r[29] = cpu->r[3];
|
|
L_02928CF0: ; // 0x2928cf0
|
|
/* 02928CF0 */ _t2 = cpu->r[11] + 0x00000004u;
|
|
/* 02928CF0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02928CF4 */ _t3 = cpu->r[12] + 0x00000004u;
|
|
/* 02928CF4 */ rbrew_write32(cpu->mem, _t3, cpu->r[9]);
|
|
/* 02928CF8 */ _t4 = cpu->r[11] + 0x00000008u;
|
|
/* 02928CF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02928CFC */ _t5 = cpu->r[12] + 0x00000008u;
|
|
/* 02928CFC */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02928D00 */ _t6 = cpu->r[11] + 0x0000000Cu;
|
|
/* 02928D00 */ cpu->r[7] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02928D00 */ cpu->r[11] = _t6;
|
|
/* 02928D04 */ _t7 = cpu->r[12] + 0x0000000Cu;
|
|
/* 02928D04 */ rbrew_write32(cpu->mem, _t7, cpu->r[7]);
|
|
/* 02928D04 */ cpu->r[12] = _t7;
|
|
/* 02928D08 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02928D08 */ _t8 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02928D08 */ _t9 = _t8 >> (0x00000002u & 31u);
|
|
/* 02928D08 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02928D08 */ if (_t10) goto L_02928CF0; else goto L_02928D0C;
|
|
L_02928D0C: ; // 0x2928d0c
|
|
/* 02928D0C */ _t11 = cpu->r[4] + 0x000000B0u;
|
|
/* 02928D0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02928D10 */ cpu->r[10] = cpu->r[4] + 0x000000B0u;
|
|
/* 02928D14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02928D18 */ cpu->r[12] = 0x00000000u;
|
|
/* 02928D1C */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928D1C */ _t13 = _t12 & 0x00000001u;
|
|
/* 02928D1C */ if (_t13) goto L_02928D24; else goto L_02928D20;
|
|
L_02928D20: ; // 0x2928d20
|
|
/* 02928D20 */ cpu->r[12] = cpu->r[10] + cpu->r[0];
|
|
L_02928D24: ; // 0x2928d24
|
|
/* 02928D24 */ _t14 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02928D24 */ rbrew_write32(cpu->mem, _t14, cpu->r[12]);
|
|
/* 02928D28 */ _t15 = cpu->r[4] + 0x000000B4u;
|
|
/* 02928D28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02928D2C */ cpu->r[8] = cpu->r[4] + 0x000000B4u;
|
|
/* 02928D30 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02928D34 */ cpu->r[12] = 0x00000000u;
|
|
/* 02928D38 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928D38 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02928D38 */ if (_t17) goto L_02928D40; else goto L_02928D3C;
|
|
L_02928D3C: ; // 0x2928d3c
|
|
/* 02928D3C */ cpu->r[12] = cpu->r[8] + cpu->r[0];
|
|
L_02928D40: ; // 0x2928d40
|
|
/* 02928D40 */ _t18 = cpu->r[1] + 0x00000034u;
|
|
/* 02928D40 */ rbrew_write32(cpu->mem, _t18, cpu->r[12]);
|
|
/* 02928D44 */ cpu->r[3] = cpu->r[29];
|
|
/* 02928D48 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02928D4C */ Gambit_fn_02905B14(cpu);
|
|
/* 02928D50 */ _t19 = cpu->r[1] + 0x0000008Cu;
|
|
/* 02928D50 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02928D54 */ cpu->r[3] = rbrew_rlwinm(cpu->r[31], 0x00000008u, 0x00000018u, 0x0000001Fu);
|
|
/* 02928D58 */ Gambit_fn_02905AE4(cpu);
|
|
/* 02928D5C */ cpu->r[27] = cpu->r[3];
|
|
/* 02928D60 */ cpu->r[3] = rbrew_rlwinm(cpu->r[31], 0x00000010u, 0x00000018u, 0x0000001Fu);
|
|
/* 02928D64 */ Gambit_fn_02905AE4(cpu);
|
|
/* 02928D68 */ cpu->r[28] = cpu->r[3];
|
|
/* 02928D6C */ cpu->r[3] = rbrew_rlwinm(cpu->r[31], 0x00000018u, 0x00000018u, 0x0000001Fu);
|
|
/* 02928D70 */ Gambit_fn_02905AE4(cpu);
|
|
/* 02928D74 */ cpu->r[30] = cpu->r[3];
|
|
/* 02928D78 */ cpu->r[3] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 02928D7C */ Gambit_fn_02905AE4(cpu);
|
|
/* 02928D80 */ _t20 = cpu->r[29] + 0x00000079u;
|
|
/* 02928D80 */ rbrew_write8(cpu->mem, _t20, (uint8_t)cpu->r[28]);
|
|
/* 02928D84 */ _t21 = cpu->r[29] + 0x0000007Au;
|
|
/* 02928D84 */ rbrew_write8(cpu->mem, _t21, (uint8_t)cpu->r[30]);
|
|
/* 02928D88 */ _t22 = cpu->r[29] + 0x00000078u;
|
|
/* 02928D88 */ rbrew_write8(cpu->mem, _t22, (uint8_t)cpu->r[27]);
|
|
/* 02928D8C */ _t23 = cpu->r[29] + 0x0000007Bu;
|
|
/* 02928D8C */ rbrew_write8(cpu->mem, _t23, (uint8_t)cpu->r[3]);
|
|
/* 02928D90 */ /* nop */
|
|
/* 02928D94 */ _t24 = cpu->r[1] + 0x000000BCu;
|
|
/* 02928D94 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02928D98 */ cpu->lr = cpu->r[0];
|
|
/* 02928D9C */ cpu->r[1] = cpu->r[1] + 0x000000B8u;
|
|
/* 02928DA0 */ return;
|
|
}
|
|
|
|
// fn_02928DA4 @ 0x2928da4
|
|
void Gambit_fn_02928DA4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _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_02928DA4: ; // 0x2928da4
|
|
/* 02928DA4 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 02928DA4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02928DA4 */ cpu->r[1] = _t0;
|
|
/* 02928DA8 */ cpu->r[0] = cpu->lr;
|
|
/* 02928DAC */ /* nop */
|
|
/* 02928DB0 */ cpu->r[28] = 0x00000000u;
|
|
/* 02928DB4 */ cpu->r[31] = cpu->r[3];
|
|
/* 02928DB8 */ cpu->r[30] = cpu->r[5];
|
|
/* 02928DBC */ cpu->r[6] = cpu->r[28];
|
|
/* 02928DC0 */ cpu->r[27] = cpu->r[31] + 0x00000004u;
|
|
/* 02928DC4 */ cpu->r[5] = 0x00000074u;
|
|
/* 02928DC8 */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 02928DC8 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02928DCC */ cpu->r[29] = cpu->r[4];
|
|
/* 02928DD0 */ cpu->r[3] = cpu->r[27];
|
|
/* 02928DD4 */ cpu->r[4] = cpu->r[29] + 0x00000004u;
|
|
/* 02928DD8 */ _t2 = cpu->r[31] + 0x000000A0u;
|
|
/* 02928DD8 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 02928DDC */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 02928DE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02928DE4 */ cpu->r[8] = cpu->r[28];
|
|
/* 02928DE8 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928DE8 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02928DE8 */ if (_t4) goto L_02928DF4; else goto L_02928DEC;
|
|
L_02928DEC: ; // 0x2928dec
|
|
/* 02928DEC */ cpu->r[11] = cpu->r[31] + 0x000000A8u;
|
|
/* 02928DF0 */ cpu->r[8] = cpu->r[30] - cpu->r[11];
|
|
L_02928DF4: ; // 0x2928df4
|
|
/* 02928DF4 */ _t5 = cpu->r[31] + 0x000000B8u;
|
|
/* 02928DF4 */ rbrew_write32(cpu->mem, _t5, cpu->r[28]);
|
|
/* 02928DF8 */ _t6 = cpu->r[31] + 0x000000A8u;
|
|
/* 02928DF8 */ rbrew_write32(cpu->mem, _t6, cpu->r[8]);
|
|
/* 02928DFC */ _t7 = cpu->r[31] + 0x000000ACu;
|
|
/* 02928DFC */ rbrew_write32(cpu->mem, _t7, cpu->r[28]);
|
|
/* 02928E00 */ _t8 = cpu->r[29] + 0x00000028u;
|
|
/* 02928E00 */ cpu->r[11] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02928E04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02928E08 */ cpu->r[9] = 0x00000000u;
|
|
/* 02928E0C */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928E0C */ _t10 = _t9 & 0x00000001u;
|
|
/* 02928E0C */ if (_t10) goto L_02928E18; else goto L_02928E10;
|
|
L_02928E10: ; // 0x2928e10
|
|
/* 02928E10 */ cpu->r[12] = cpu->r[31] + 0x000000B0u;
|
|
/* 02928E14 */ cpu->r[9] = cpu->r[11] - cpu->r[12];
|
|
L_02928E18: ; // 0x2928e18
|
|
/* 02928E18 */ _t11 = cpu->r[31] + 0x000000B0u;
|
|
/* 02928E18 */ rbrew_write32(cpu->mem, _t11, cpu->r[9]);
|
|
/* 02928E1C */ _t12 = cpu->r[29] + 0x00000030u;
|
|
/* 02928E1C */ cpu->r[6] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02928E20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 02928E24 */ cpu->r[0] = 0x00000000u;
|
|
/* 02928E28 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928E28 */ _t14 = _t13 & 0x00000001u;
|
|
/* 02928E28 */ if (_t14) goto L_02928E34; else goto L_02928E2C;
|
|
L_02928E2C: ; // 0x2928e2c
|
|
/* 02928E2C */ cpu->r[0] = cpu->r[31] + 0x000000B4u;
|
|
/* 02928E30 */ cpu->r[0] = cpu->r[6] - cpu->r[0];
|
|
L_02928E34: ; // 0x2928e34
|
|
/* 02928E34 */ _t15 = cpu->r[31] + 0x000000B4u;
|
|
/* 02928E34 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 02928E38 */ _t16 = cpu->r[27] + 0x00000014u;
|
|
/* 02928E38 */ cpu->r[7] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02928E3C */ cpu->r[8] = rbrew_rlwinm(cpu->r[7], 0x00000002u, 0x00000018u, 0x0000001Du);
|
|
/* 02928E40 */ cpu->r[9] = cpu->r[8] + 0x10140000u;
|
|
/* 02928E44 */ _t17 = cpu->r[9] + 0x000040C4u;
|
|
/* 02928E44 */ cpu->r[10] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02928E48 */ _t18 = cpu->r[31] + 0x00000078u;
|
|
/* 02928E48 */ rbrew_write32(cpu->mem, _t18, cpu->r[28]);
|
|
/* 02928E4C */ _t19 = cpu->r[31] + 0x00000088u;
|
|
/* 02928E4C */ rbrew_write32(cpu->mem, _t19, cpu->r[10]);
|
|
/* 02928E50 */ _t20 = cpu->r[27] + 0x00000010u;
|
|
/* 02928E50 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02928E54 */ _t21 = cpu->r[31] + 0x00000080u;
|
|
/* 02928E54 */ rbrew_write32(cpu->mem, _t21, cpu->r[28]);
|
|
/* 02928E58 */ _t22 = cpu->r[31] + 0x0000007Cu;
|
|
/* 02928E58 */ rbrew_write32(cpu->mem, _t22, cpu->r[0]);
|
|
/* 02928E5C */ _t23 = cpu->r[27] + 0x0000000Cu;
|
|
/* 02928E5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02928E60 */ cpu->r[3] = cpu->r[31] + 0x00000004u;
|
|
/* 02928E64 */ _t24 = cpu->r[31] + 0x00000084u;
|
|
/* 02928E64 */ rbrew_write32(cpu->mem, _t24, cpu->r[0]);
|
|
/* 02928E68 */ Gambit_fn_02C65510(cpu);
|
|
/* 02928E6C */ cpu->r[3] = cpu->r[31];
|
|
/* 02928E70 */ Gambit_fn_02C64E58(cpu);
|
|
/* 02928E74 */ cpu->r[3] = cpu->r[31];
|
|
/* 02928E78 */ /* nop */
|
|
/* 02928E7C */ _t25 = cpu->r[1] + 0x00000024u;
|
|
/* 02928E7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02928E80 */ cpu->lr = cpu->r[0];
|
|
/* 02928E84 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 02928E88 */ return;
|
|
}
|
|
|
|
// fn_02928E8C @ 0x2928e8c
|
|
void Gambit_fn_02928E8C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_02928E8C: ; // 0x2928e8c
|
|
/* 02928E8C */ cpu->r[0] = cpu->lr;
|
|
/* 02928E90 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02928E90 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02928E90 */ cpu->r[1] = _t0;
|
|
/* 02928E94 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02928E94 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02928E98 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02928E98 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02928E9C */ cpu->r[30] = cpu->r[3];
|
|
/* 02928E9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02928EA0 */ cpu->r[31] = cpu->r[4];
|
|
/* 02928EA4 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02928EA4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02928EA8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928EA8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02928EA8 */ if (_t5) goto L_02928EEC; else goto L_02928EAC;
|
|
L_02928EAC: ; // 0x2928eac
|
|
/* 02928EAC */ cpu->r[12] = 0x10140000u;
|
|
/* 02928EB0 */ cpu->r[12] = cpu->r[12] + 0x00004214u;
|
|
/* 02928EB4 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02928EB8 */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02928EB8 */ rbrew_write32(cpu->mem, _t6, cpu->r[12]);
|
|
/* 02928EBC */ _t7 = cpu->r[3] + 0xFFFFA498u;
|
|
/* 02928EBC */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02928EC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02928EC4 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928EC4 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02928EC4 */ if (_t9) goto L_02928ED0; else goto L_02928EC8;
|
|
L_02928EC8: ; // 0x2928ec8
|
|
/* 02928EC8 */ cpu->r[4] = cpu->r[30];
|
|
/* 02928ECC */ Gambit_fn_0292D604(cpu);
|
|
L_02928ED0: ; // 0x2928ed0
|
|
/* 02928ED0 */ cpu->r[3] = cpu->r[30];
|
|
/* 02928ED4 */ cpu->r[4] = 0x00000000u;
|
|
/* 02928ED8 */ Gambit_fn_02821E68(cpu);
|
|
/* 02928EDC */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02928EDC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02928EE0 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928EE0 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02928EE0 */ if (_t11) goto L_02928EEC; else goto L_02928EE4;
|
|
L_02928EE4: ; // 0x2928ee4
|
|
/* 02928EE4 */ cpu->r[3] = cpu->r[30];
|
|
/* 02928EE8 */ Gambit_fn_02801BB0(cpu);
|
|
L_02928EEC: ; // 0x2928eec
|
|
/* 02928EEC */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 02928EEC */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02928EF0 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 02928EF0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02928EF4 */ cpu->lr = cpu->r[0];
|
|
/* 02928EF8 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02928EF8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02928EFC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02928F00 */ return;
|
|
}
|
|
|
|
// fn_02928E90 @ 0x2928e90
|
|
void Gambit_fn_02928E90(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_02928E90: ; // 0x2928e90
|
|
/* 02928E90 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02928E90 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02928E90 */ cpu->r[1] = _t0;
|
|
/* 02928E94 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02928E94 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02928E98 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02928E98 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02928E9C */ cpu->r[30] = cpu->r[3];
|
|
/* 02928E9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02928EA0 */ cpu->r[31] = cpu->r[4];
|
|
/* 02928EA4 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02928EA4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02928EA8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928EA8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02928EA8 */ if (_t5) goto L_02928EEC; else goto L_02928EAC;
|
|
L_02928EAC: ; // 0x2928eac
|
|
/* 02928EAC */ cpu->r[12] = 0x10140000u;
|
|
/* 02928EB0 */ cpu->r[12] = cpu->r[12] + 0x00004214u;
|
|
/* 02928EB4 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02928EB8 */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02928EB8 */ rbrew_write32(cpu->mem, _t6, cpu->r[12]);
|
|
/* 02928EBC */ _t7 = cpu->r[3] + 0xFFFFA498u;
|
|
/* 02928EBC */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02928EC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02928EC4 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928EC4 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02928EC4 */ if (_t9) goto L_02928ED0; else goto L_02928EC8;
|
|
L_02928EC8: ; // 0x2928ec8
|
|
/* 02928EC8 */ cpu->r[4] = cpu->r[30];
|
|
/* 02928ECC */ Gambit_fn_0292D604(cpu);
|
|
L_02928ED0: ; // 0x2928ed0
|
|
/* 02928ED0 */ cpu->r[3] = cpu->r[30];
|
|
/* 02928ED4 */ cpu->r[4] = 0x00000000u;
|
|
/* 02928ED8 */ Gambit_fn_02821E68(cpu);
|
|
/* 02928EDC */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02928EDC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02928EE0 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928EE0 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02928EE0 */ if (_t11) goto L_02928EEC; else goto L_02928EE4;
|
|
L_02928EE4: ; // 0x2928ee4
|
|
/* 02928EE4 */ cpu->r[3] = cpu->r[30];
|
|
/* 02928EE8 */ Gambit_fn_02801BB0(cpu);
|
|
L_02928EEC: ; // 0x2928eec
|
|
/* 02928EEC */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 02928EEC */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02928EF0 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 02928EF0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02928EF4 */ cpu->lr = cpu->r[0];
|
|
/* 02928EF8 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02928EF8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02928EFC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02928F00 */ return;
|
|
}
|
|
|
|
// fn_02928F14 @ 0x2928f14
|
|
void Gambit_fn_02928F14(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_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t0;
|
|
/* 02801B38 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02801B48 */ _t3 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02801B50 */ if (_t5) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02801B60 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 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 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B74 */ if (_t9) 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 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02801B84 */ if (_t11) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t12 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02801B8C */ _t13 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02801BA0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
L_02928F14: ; // 0x2928f14
|
|
/* 02928F14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02928F18 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928F18 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02928F18 */ if (_t17) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02928F18 */ goto L_02928F1C;
|
|
L_02928F1C: ; // 0x2928f1c
|
|
/* 02928F1C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02928F1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02928F20 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928F20 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02928F20 */ if (_t19) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02928F20 */ goto L_02928F24;
|
|
L_02928F24: ; // 0x2928f24
|
|
/* 02928F24 */ goto L_02801BB0;
|
|
}
|
|
|
|
// fn_02928F28 @ 0x2928f28
|
|
void Gambit_fn_02928F28(CPUState* cpu) {
|
|
L_02928F28: ; // 0x2928f28
|
|
/* 02928F28 */ return;
|
|
}
|
|
|
|
// fn_02928F2C @ 0x2928f2c
|
|
void Gambit_fn_02928F2C(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_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t0;
|
|
/* 02801B38 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02801B48 */ _t3 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02801B50 */ if (_t5) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02801B60 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 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 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B74 */ if (_t9) 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 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02801B84 */ if (_t11) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t12 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02801B8C */ _t13 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02801BA0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
L_02928F2C: ; // 0x2928f2c
|
|
/* 02928F2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02928F30 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928F30 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02928F30 */ if (_t17) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02928F30 */ goto L_02928F34;
|
|
L_02928F34: ; // 0x2928f34
|
|
/* 02928F34 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02928F34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02928F38 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928F38 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02928F38 */ if (_t19) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02928F38 */ goto L_02928F3C;
|
|
L_02928F3C: ; // 0x2928f3c
|
|
/* 02928F3C */ goto L_02801BB0;
|
|
}
|
|
|
|
// fn_02928F40 @ 0x2928f40
|
|
void Gambit_fn_02928F40(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_02928F40: ; // 0x2928f40
|
|
/* 02928F40 */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 02928F40 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02928F44 */ _t1 = cpu->r[3] + 0x00000008u;
|
|
/* 02928F44 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02928F48 */ cpu->r[12] = cpu->r[11] + cpu->r[12];
|
|
/* 02928F4C */ cpu->r[11] = 0x10110000u;
|
|
/* 02928F50 */ _t2 = cpu->r[11] + 0x00007399u;
|
|
/* 02928F50 */ cpu->r[0] = rbrew_read8(cpu->mem, _t2);
|
|
/* 02928F54 */ _t3 = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 02928F54 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]);
|
|
/* 02928F58 */ return;
|
|
}
|
|
|
|
// fn_02928F5C @ 0x2928f5c
|
|
void Gambit_fn_02928F5C(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_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t0;
|
|
/* 02801B38 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02801B48 */ _t3 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02801B50 */ if (_t5) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02801B60 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 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 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B74 */ if (_t9) 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 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02801B84 */ if (_t11) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t12 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02801B8C */ _t13 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02801BA0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
L_02928F5C: ; // 0x2928f5c
|
|
/* 02928F5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02928F60 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928F60 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02928F60 */ if (_t17) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02928F60 */ goto L_02928F64;
|
|
L_02928F64: ; // 0x2928f64
|
|
/* 02928F64 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02928F64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02928F68 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928F68 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02928F68 */ if (_t19) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02928F68 */ goto L_02928F6C;
|
|
L_02928F6C: ; // 0x2928f6c
|
|
/* 02928F6C */ goto L_02801BB0;
|
|
}
|
|
|
|
// fn_02928F70 @ 0x2928f70
|
|
void Gambit_fn_02928F70(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_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t0;
|
|
/* 02801B38 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02801B48 */ _t3 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02801B50 */ if (_t5) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02801B60 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 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 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B74 */ if (_t9) 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 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02801B84 */ if (_t11) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t12 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02801B8C */ _t13 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02801BA0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
L_02928F70: ; // 0x2928f70
|
|
/* 02928F70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02928F74 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928F74 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02928F74 */ if (_t17) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02928F74 */ goto L_02928F78;
|
|
L_02928F78: ; // 0x2928f78
|
|
/* 02928F78 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02928F78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02928F7C */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928F7C */ _t19 = _t18 & 0x00000001u;
|
|
/* 02928F7C */ if (_t19) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02928F7C */ goto L_02928F80;
|
|
L_02928F80: ; // 0x2928f80
|
|
/* 02928F80 */ goto L_02801BB0;
|
|
}
|
|
|
|
// fn_02928F84 @ 0x2928f84
|
|
void Gambit_fn_02928F84(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_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t0;
|
|
/* 02801B38 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02801B48 */ _t3 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02801B50 */ if (_t5) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02801B60 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 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 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B74 */ if (_t9) 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 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02801B84 */ if (_t11) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t12 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02801B8C */ _t13 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02801BA0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
L_02928F84: ; // 0x2928f84
|
|
/* 02928F84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02928F88 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928F88 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02928F88 */ if (_t17) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02928F88 */ goto L_02928F8C;
|
|
L_02928F8C: ; // 0x2928f8c
|
|
/* 02928F8C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02928F8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02928F90 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928F90 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02928F90 */ if (_t19) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02928F90 */ goto L_02928F94;
|
|
L_02928F94: ; // 0x2928f94
|
|
/* 02928F94 */ goto L_02801BB0;
|
|
}
|
|
|
|
// fn_02928F98 @ 0x2928f98
|
|
void Gambit_fn_02928F98(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_02928F98: ; // 0x2928f98
|
|
/* 02928F98 */ _t0 = cpu->r[3] + 0x00000050u;
|
|
/* 02928F98 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02928F9C */ cpu->r[11] = rbrew_rlwinm(cpu->r[12], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02928FA0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[4]);
|
|
/* 02928FA4 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928FA4 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02928FA4 */ if (_t2) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02928FA4 */ goto L_02928FA8;
|
|
L_02928FA8: ; // 0x2928fa8
|
|
/* 02928FA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 02928FAC */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928FAC */ _t4 = _t3 & 0x00000001u;
|
|
/* 02928FAC */ if (_t4) goto L_02928FCC; else goto L_02928FB0;
|
|
L_02928FB0: ; // 0x2928fb0
|
|
/* 02928FB0 */ cpu->r[0] = cpu->r[12] | 0x00000002u;
|
|
/* 02928FB4 */ _t5 = cpu->r[3] + 0x00000014u;
|
|
/* 02928FB4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02928FB8 */ _t6 = cpu->r[3] + 0x00000050u;
|
|
/* 02928FB8 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02928FBC */ _t7 = cpu->r[12] + 0x00000F98u;
|
|
/* 02928FBC */ cpu->r[10] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02928FC0 */ cpu->r[10] = cpu->r[10] | 0x00000001u;
|
|
/* 02928FC4 */ _t8 = cpu->r[12] + 0x00000F98u;
|
|
/* 02928FC4 */ rbrew_write32(cpu->mem, _t8, cpu->r[10]);
|
|
/* 02928FC8 */ return;
|
|
L_02928FCC: ; // 0x2928fcc
|
|
/* 02928FCC */ cpu->r[0] = rbrew_rlwinm(cpu->r[12], 0x00000000u, 0x0000001Fu, 0x0000001Du);
|
|
/* 02928FD0 */ _t9 = cpu->r[3] + 0x00000014u;
|
|
/* 02928FD0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02928FD4 */ _t10 = cpu->r[3] + 0x00000050u;
|
|
/* 02928FD4 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 02928FD8 */ _t11 = cpu->r[12] + 0x00000F98u;
|
|
/* 02928FD8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02928FDC */ cpu->r[10] = cpu->r[10] | 0x00000001u;
|
|
/* 02928FE0 */ _t12 = cpu->r[12] + 0x00000F98u;
|
|
/* 02928FE0 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 02928FE4 */ return;
|
|
}
|
|
|
|
// fn_02928FE8 @ 0x2928fe8
|
|
void Gambit_fn_02928FE8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_02928FE8: ; // 0x2928fe8
|
|
/* 02928FE8 */ _t0 = cpu->r[3] + 0x00000054u;
|
|
/* 02928FE8 */ cpu->r[12] = rbrew_read8(cpu->mem, _t0);
|
|
/* 02928FEC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[4]);
|
|
/* 02928FF0 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02928FF0 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02928FF0 */ if (_t2) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02928FF0 */ goto L_02928FF4;
|
|
L_02928FF4: ; // 0x2928ff4
|
|
/* 02928FF4 */ _t3 = cpu->r[3] + 0x00000014u;
|
|
/* 02928FF4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02928FF8 */ _t4 = cpu->r[3] + 0x00000054u;
|
|
/* 02928FF8 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[4]);
|
|
/* 02928FFC */ _t5 = cpu->r[11] + 0x00000F98u;
|
|
/* 02928FFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02929000 */ cpu->r[0] = cpu->r[0] | 0x00000001u;
|
|
/* 02929004 */ _t6 = cpu->r[11] + 0x00000F98u;
|
|
/* 02929004 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02929008 */ return;
|
|
}
|
|
|
|
// fn_0292900C @ 0x292900c
|
|
void Gambit_fn_0292900C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0292900C: ; // 0x292900c
|
|
/* 0292900C */ cpu->r[0] = cpu->lr;
|
|
/* 02929010 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02929010 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02929010 */ cpu->r[1] = _t0;
|
|
/* 02929014 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02929014 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02929018 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02929018 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0292901C */ _t3 = cpu->r[3] + 0x00000074u;
|
|
/* 0292901C */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02929020 */ cpu->r[31] = cpu->r[5];
|
|
/* 02929024 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[0]);
|
|
/* 02929028 */ _t4 = cpu->r[3] + 0x00000078u;
|
|
/* 02929028 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0292902C */ _t5 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0292902C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0292902C */ if (_t6) goto L_02929030; else goto L_02929038;
|
|
L_02929030: ; // 0x2929030
|
|
/* 02929030 */ cpu->r[12] = (uint32_t)((int32_t)cpu->r[4] * (int32_t)0x00000414u);
|
|
/* 02929034 */ cpu->r[3] = cpu->r[3] + cpu->r[12];
|
|
L_02929038: ; // 0x2929038
|
|
/* 02929038 */ cpu->r[4] = cpu->r[31];
|
|
/* 0292903C */ Gambit_fn_0292BF10(cpu);
|
|
/* 02929040 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02929044 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02929044 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02929044 */ if (_t8) goto L_02929048; else goto L_0292904C;
|
|
L_02929048: ; // 0x2929048
|
|
/* 02929048 */ cpu->r[31] = 0x00000000u;
|
|
L_0292904C: ; // 0x292904c
|
|
/* 0292904C */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0292904C */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02929050 */ cpu->r[3] = cpu->r[31];
|
|
/* 02929054 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02929054 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02929058 */ cpu->lr = cpu->r[0];
|
|
/* 0292905C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02929060 */ return;
|
|
}
|
|
|
|
// fn_02929010 @ 0x2929010
|
|
void Gambit_fn_02929010(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02929010: ; // 0x2929010
|
|
/* 02929010 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02929010 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02929010 */ cpu->r[1] = _t0;
|
|
/* 02929014 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02929014 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02929018 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02929018 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0292901C */ _t3 = cpu->r[3] + 0x00000074u;
|
|
/* 0292901C */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02929020 */ cpu->r[31] = cpu->r[5];
|
|
/* 02929024 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[0]);
|
|
/* 02929028 */ _t4 = cpu->r[3] + 0x00000078u;
|
|
/* 02929028 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0292902C */ _t5 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0292902C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0292902C */ if (_t6) goto L_02929030; else goto L_02929038;
|
|
L_02929030: ; // 0x2929030
|
|
/* 02929030 */ cpu->r[12] = (uint32_t)((int32_t)cpu->r[4] * (int32_t)0x00000414u);
|
|
/* 02929034 */ cpu->r[3] = cpu->r[3] + cpu->r[12];
|
|
L_02929038: ; // 0x2929038
|
|
/* 02929038 */ cpu->r[4] = cpu->r[31];
|
|
/* 0292903C */ Gambit_fn_0292BF10(cpu);
|
|
/* 02929040 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02929044 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02929044 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02929044 */ if (_t8) goto L_02929048; else goto L_0292904C;
|
|
L_02929048: ; // 0x2929048
|
|
/* 02929048 */ cpu->r[31] = 0x00000000u;
|
|
L_0292904C: ; // 0x292904c
|
|
/* 0292904C */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0292904C */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02929050 */ cpu->r[3] = cpu->r[31];
|
|
/* 02929054 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02929054 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02929058 */ cpu->lr = cpu->r[0];
|
|
/* 0292905C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02929060 */ return;
|
|
}
|
|
|
|
// fn_02929064 @ 0x2929064
|
|
void Gambit_fn_02929064(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02929064: ; // 0x2929064
|
|
/* 02929064 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 02929064 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02929064 */ cpu->r[1] = _t0;
|
|
/* 02929068 */ /* nop */
|
|
/* 0292906C */ cpu->r[0] = cpu->lr;
|
|
/* 02929070 */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 02929070 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02929074 */ cpu->r[27] = cpu->r[3];
|
|
/* 02929078 */ _t2 = cpu->r[27] + 0x00000074u;
|
|
/* 02929078 */ cpu->r[10] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0292907C */ cpu->r[8] = (uint32_t)((int32_t)cpu->r[10] * (int32_t)0x00000414u);
|
|
/* 02929080 */ _t3 = cpu->r[27] + 0x00000078u;
|
|
/* 02929080 */ cpu->r[31] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02929084 */ cpu->r[29] = cpu->r[31] + cpu->r[8];
|
|
/* 02929088 */ cpu->r[28] = cpu->r[4];
|
|
/* 0292908C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[29]);
|
|
/* 02929090 */ cpu->r[26] = 0x00000000u;
|
|
/* 02929094 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02929094 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02929094 */ if (_t5) goto L_029290D4; else goto L_02929098;
|
|
L_02929098: ; // 0x2929098
|
|
/* 02929098 */ cpu->r[30] = cpu->r[31];
|
|
L_0292909C: ; // 0x292909c
|
|
/* 0292909C */ cpu->r[0] = 0x7D8C0000u;
|
|
/* 029290A0 */ cpu->r[11] = cpu->r[30] - cpu->r[31];
|
|
/* 029290A4 */ cpu->r[0] = cpu->r[0] | 0x000042B3u;
|
|
/* 029290A8 */ /* nop */
|
|
/* 029290AC */ cpu->r[5] = cpu->r[28];
|
|
/* 029290B0 */ cpu->r[3] = cpu->r[27];
|
|
/* 029290B4 */ cpu->r[4] = rbrew_rlwinm(cpu->r[12], 0x00000017u, 0x00000009u, 0x0000001Fu);
|
|
/* 029290B8 */ Gambit_fn_0292900C(cpu);
|
|
/* 029290BC */ cpu->r[0] = cpu->r[3] + 0xFFFFFFFFu;
|
|
/* 029290C0 */ cpu->r[30] = cpu->r[30] + 0x00000414u;
|
|
/* 029290C4 */ cpu->r[9] = cpu->r[3] - cpu->r[0];
|
|
/* 029290C8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[29]);
|
|
/* 029290CC */ cpu->r[26] = cpu->r[26] | cpu->r[9];
|
|
/* 029290D0 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029290D0 */ _t7 = _t6 & 0x00000001u;
|
|
/* 029290D0 */ if (_t7) goto L_029290D4; else goto L_0292909C;
|
|
L_029290D4: ; // 0x29290d4
|
|
/* 029290D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 029290D8 */ cpu->r[3] = 0x00000000u;
|
|
/* 029290DC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029290DC */ _t9 = _t8 & 0x00000001u;
|
|
/* 029290DC */ if (_t9) goto L_029290E4; else goto L_029290E0;
|
|
L_029290E0: ; // 0x29290e0
|
|
/* 029290E0 */ cpu->r[3] = cpu->r[28];
|
|
L_029290E4: ; // 0x29290e4
|
|
/* 029290E4 */ /* nop */
|
|
/* 029290E8 */ _t10 = cpu->r[1] + 0x00000024u;
|
|
/* 029290E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 029290EC */ cpu->lr = cpu->r[0];
|
|
/* 029290F0 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 029290F4 */ return;
|
|
}
|
|
|
|
// fn_029290F8 @ 0x29290f8
|
|
void Gambit_fn_029290F8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_029290F8: ; // 0x29290f8
|
|
/* 029290F8 */ cpu->r[0] = cpu->lr;
|
|
/* 029290FC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 029290FC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 029290FC */ cpu->r[1] = _t0;
|
|
/* 02929100 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02929100 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 02929104 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02929104 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 02929108 */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 02929108 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 0292910C */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0292910C */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 02929110 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02929110 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02929114 */ _t6 = cpu->r[3] + 0x00000074u;
|
|
/* 02929114 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02929118 */ cpu->r[12] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x00000414u);
|
|
/* 0292911C */ _t7 = cpu->r[3] + 0x00000078u;
|
|
/* 0292911C */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02929120 */ cpu->r[29] = cpu->r[31] + cpu->r[12];
|
|
/* 02929124 */ cpu->r[28] = cpu->r[4];
|
|
/* 02929128 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[29]);
|
|
/* 0292912C */ cpu->r[30] = 0x00000000u;
|
|
/* 02929130 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02929130 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02929130 */ if (_t9) goto L_02929150; else goto L_02929134;
|
|
L_02929134: ; // 0x2929134
|
|
/* 02929134 */ cpu->r[3] = cpu->r[31];
|
|
/* 02929138 */ cpu->r[4] = cpu->r[28];
|
|
/* 0292913C */ Gambit_fn_0292BF70(cpu);
|
|
/* 02929140 */ cpu->r[31] = cpu->r[31] + 0x00000414u;
|
|
/* 02929144 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[29]);
|
|
/* 02929148 */ cpu->r[30] = cpu->r[30] + cpu->r[3];
|
|
/* 0292914C */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292914C */ _t11 = _t10 & 0x00000001u;
|
|
/* 0292914C */ if (_t11) goto L_02929150; else goto L_02929134;
|
|
L_02929150: ; // 0x2929150
|
|
/* 02929150 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02929150 */ cpu->r[28] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02929154 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02929154 */ cpu->r[29] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02929158 */ _t14 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02929158 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0292915C */ cpu->r[3] = cpu->r[30];
|
|
/* 02929160 */ _t15 = cpu->r[1] + 0x00000010u;
|
|
/* 02929160 */ cpu->r[30] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02929164 */ cpu->lr = cpu->r[0];
|
|
/* 02929168 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 02929168 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0292916C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02929170 */ return;
|
|
}
|
|
|
|
// fn_029290FC @ 0x29290fc
|
|
void Gambit_fn_029290FC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_029290FC: ; // 0x29290fc
|
|
/* 029290FC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 029290FC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 029290FC */ cpu->r[1] = _t0;
|
|
/* 02929100 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02929100 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 02929104 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02929104 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 02929108 */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 02929108 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 0292910C */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0292910C */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 02929110 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02929110 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02929114 */ _t6 = cpu->r[3] + 0x00000074u;
|
|
/* 02929114 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02929118 */ cpu->r[12] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x00000414u);
|
|
/* 0292911C */ _t7 = cpu->r[3] + 0x00000078u;
|
|
/* 0292911C */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02929120 */ cpu->r[29] = cpu->r[31] + cpu->r[12];
|
|
/* 02929124 */ cpu->r[28] = cpu->r[4];
|
|
/* 02929128 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[29]);
|
|
/* 0292912C */ cpu->r[30] = 0x00000000u;
|
|
/* 02929130 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02929130 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02929130 */ if (_t9) goto L_02929150; else goto L_02929134;
|
|
L_02929134: ; // 0x2929134
|
|
/* 02929134 */ cpu->r[3] = cpu->r[31];
|
|
/* 02929138 */ cpu->r[4] = cpu->r[28];
|
|
/* 0292913C */ Gambit_fn_0292BF70(cpu);
|
|
/* 02929140 */ cpu->r[31] = cpu->r[31] + 0x00000414u;
|
|
/* 02929144 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[29]);
|
|
/* 02929148 */ cpu->r[30] = cpu->r[30] + cpu->r[3];
|
|
/* 0292914C */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292914C */ _t11 = _t10 & 0x00000001u;
|
|
/* 0292914C */ if (_t11) goto L_02929150; else goto L_02929134;
|
|
L_02929150: ; // 0x2929150
|
|
/* 02929150 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02929150 */ cpu->r[28] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02929154 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02929154 */ cpu->r[29] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02929158 */ _t14 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02929158 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0292915C */ cpu->r[3] = cpu->r[30];
|
|
/* 02929160 */ _t15 = cpu->r[1] + 0x00000010u;
|
|
/* 02929160 */ cpu->r[30] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02929164 */ cpu->lr = cpu->r[0];
|
|
/* 02929168 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 02929168 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0292916C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02929170 */ return;
|
|
}
|
|
|
|
// fn_02929174 @ 0x2929174
|
|
void Gambit_fn_02929174(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_02929174: ; // 0x2929174
|
|
/* 02929174 */ _t0 = cpu->r[3] + 0x00000050u;
|
|
/* 02929174 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02929178 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Au, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02929178 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0292917C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292917C */ _t2 = _t1 & 0x00000001u;
|
|
/* 0292917C */ if (_t2) goto L_02929180; else goto L_02929188;
|
|
L_02929180: ; // 0x2929180
|
|
/* 02929180 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000000Eu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02929180 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02929184 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02929184 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02929184 */ if (_t4) goto L_0292919C; else goto L_02929188;
|
|
L_02929188: ; // 0x2929188
|
|
/* 02929188 */ cpu->r[11] = rbrew_rlwinm(cpu->r[0], 0x00000019u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02929188 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0292918C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292918C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0292918C */ if (_t6) goto L_0292919C; else goto L_02929190;
|
|
L_02929190: ; // 0x2929190
|
|
/* 02929190 */ _t7 = cpu->r[3] + 0x00000080u;
|
|
/* 02929190 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02929194 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02929198 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02929198 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02929198 */ if (_t9) goto L_0292919C; else goto L_029291B8;
|
|
L_0292919C: ; // 0x292919c
|
|
/* 0292919C */ _t10 = cpu->r[3] + 0x00000048u;
|
|
/* 0292919C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 029291A0 */ cpu->r[3] = 0x10200000u;
|
|
/* 029291A4 */ cpu->r[3] = cpu->r[3] + 0xFFFF8218u;
|
|
/* 029291A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 029291AC */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029291AC */ _t12 = _t11 & 0x00000001u;
|
|
/* 029291AC */ if (_t12) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 029291AC */ goto L_029291B0;
|
|
L_029291B0: ; // 0x29291b0
|
|
/* 029291B0 */ cpu->r[3] = cpu->r[0];
|
|
/* 029291B4 */ return;
|
|
L_029291B8: ; // 0x29291b8
|
|
/* 029291B8 */ cpu->r[3] = cpu->r[11] + 0x00000004u;
|
|
/* 029291BC */ return;
|
|
}
|
|
|
|
// fn_029291C0 @ 0x29291c0
|
|
void Gambit_fn_029291C0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_029291C0: ; // 0x29291c0
|
|
/* 029291C0 */ _t0 = cpu->r[3] + 0x00000050u;
|
|
/* 029291C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 029291C4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000014u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 029291C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 029291C8 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029291C8 */ _t2 = _t1 & 0x00000001u;
|
|
/* 029291C8 */ if (_t2) goto L_029291D8; else goto L_029291CC;
|
|
L_029291CC: ; // 0x29291cc
|
|
/* 029291CC */ _t3 = cpu->r[3] + 0x00000080u;
|
|
/* 029291CC */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 029291D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 029291D4 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029291D4 */ _t5 = _t4 & 0x00000001u;
|
|
/* 029291D4 */ if (_t5) goto L_029291D8; else goto L_029291F4;
|
|
L_029291D8: ; // 0x29291d8
|
|
/* 029291D8 */ _t6 = cpu->r[3] + 0x0000004Cu;
|
|
/* 029291D8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 029291DC */ cpu->r[3] = 0x10200000u;
|
|
/* 029291E0 */ cpu->r[3] = cpu->r[3] + 0xFFFF827Cu;
|
|
/* 029291E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 029291E8 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029291E8 */ _t8 = _t7 & 0x00000001u;
|
|
/* 029291E8 */ if (_t8) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 029291E8 */ goto L_029291EC;
|
|
L_029291EC: ; // 0x29291ec
|
|
/* 029291EC */ cpu->r[3] = cpu->r[12];
|
|
/* 029291F0 */ return;
|
|
L_029291F4: ; // 0x29291f4
|
|
/* 029291F4 */ _t9 = cpu->r[12] + 0x000000E8u;
|
|
/* 029291F4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 029291F8 */ return;
|
|
}
|
|
|
|
// fn_029291FC @ 0x29291fc
|
|
void Gambit_fn_029291FC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_029291FC: ; // 0x29291fc
|
|
/* 029291FC */ _t0 = cpu->r[3] + 0x00000055u;
|
|
/* 029291FC */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 02929200 */ /* nop */
|
|
/* 02929204 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 02929208 */ _t1 = cpu->r[3] + 0x00000014u;
|
|
/* 02929208 */ cpu->r[10] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0292920C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0292920C */ _t3 = _t2 & 0x00000001u;
|
|
/* 0292920C */ if (_t3) goto L_02929210; else goto L_02929214;
|
|
L_02929210: ; // 0x2929210
|
|
/* 02929210 */ _t4 = cpu->r[3] + 0x00000054u;
|
|
/* 02929210 */ cpu->r[0] = rbrew_read8(cpu->mem, _t4);
|
|
L_02929214: ; // 0x2929214
|
|
/* 02929214 */ cpu->r[11] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x0000078Cu);
|
|
/* 02929218 */ cpu->r[12] = cpu->r[10] + cpu->r[11];
|
|
/* 0292921C */ _t5 = cpu->r[12] + 0x00000704u;
|
|
/* 0292921C */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02929220 */ return;
|
|
}
|
|
|
|
// fn_02929224 @ 0x2929224
|
|
void Gambit_fn_02929224(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_02929224: ; // 0x2929224
|
|
/* 02929224 */ _t0 = cpu->r[3] + 0x00000084u;
|
|
/* 02929224 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02929228 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[4]);
|
|
/* 0292922C */ _t1 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0292922C */ _t2 = _t1 & 0x00000001u;
|
|
/* 0292922C */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0292922C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0292922C */ goto L_02929230;
|
|
L_02929230: ; // 0x2929230
|
|
/* 02929230 */ _t4 = cpu->r[3] + 0x00000084u;
|
|
/* 02929230 */ rbrew_write32(cpu->mem, _t4, cpu->r[4]);
|
|
/* 02929234 */ return;
|
|
}
|
|
|
|
// fn_02929238 @ 0x2929238
|
|
void Gambit_fn_02929238(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_02929238: ; // 0x2929238
|
|
/* 02929238 */ _t0 = cpu->r[3] + 0x00000080u;
|
|
/* 02929238 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0292923C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02929240 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02929240 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02929240 */ if (_t2) goto L_02929244; else goto L_02929250;
|
|
L_02929244: ; // 0x2929244
|
|
/* 02929244 */ cpu->r[12] = 0x10140000u;
|
|
/* 02929248 */ _t3 = cpu->r[12] + 0x0000446Cu;
|
|
/* 02929248 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 0292924C */ return;
|
|
L_02929250: ; // 0x2929250
|
|
/* 02929250 */ _t4 = cpu->r[12] + 0x000000B4u;
|
|
/* 02929250 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 02929254 */ return;
|
|
}
|
|
|
|
// fn_02929258 @ 0x2929258
|
|
void Gambit_fn_02929258(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _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_02929258: ; // 0x2929258
|
|
/* 02929258 */ cpu->r[0] = cpu->lr;
|
|
/* 0292925C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0292925C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0292925C */ cpu->r[1] = _t0;
|
|
/* 02929260 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02929260 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 02929264 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 02929264 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02929268 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 02929268 */ rbrew_write32(cpu->mem, _t3, cpu->r[28]);
|
|
/* 0292926C */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0292926C */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 02929270 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02929270 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02929274 */ cpu->r[29] = cpu->r[5];
|
|
/* 02929278 */ _t6 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02929278 */ cpu->r[11] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0292927C */ _t7 = cpu->r[11] + 0x0000004Cu;
|
|
/* 0292927C */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02929280 */ cpu->r[31] = cpu->r[4];
|
|
/* 02929284 */ cpu->ctr = cpu->r[0];
|
|
/* 02929288 */ cpu->r[4] = cpu->r[29];
|
|
/* 0292928C */ cpu->r[30] = cpu->r[3];
|
|
/* 02929290 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02929294 */ _t8 = cpu->r[31] + 0x00000004u;
|
|
/* 02929294 */ cpu->r[8] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02929298 */ _t9 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02929298 */ cpu->r[28] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0292929C */ cpu->r[0] = rbrew_rlwinm(cpu->r[8], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 029292A0 */ cpu->r[31] = cpu->r[28] + cpu->r[0];
|
|
/* 029292A4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[31]);
|
|
/* 029292A8 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029292A8 */ _t11 = _t10 & 0x00000001u;
|
|
/* 029292A8 */ if (_t11) goto L_0292931C; else goto L_029292AC;
|
|
L_029292AC: ; // 0x29292ac
|
|
/* 029292AC */ _t12 = cpu->r[30] + 0x0000000Cu;
|
|
/* 029292AC */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 029292B0 */ _t13 = cpu->r[9] + 0x00000054u;
|
|
/* 029292B0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t13);
|
|
/* 029292B4 */ cpu->ctr = cpu->r[10];
|
|
/* 029292B8 */ _t14 = cpu->r[28] + 0x00000000u;
|
|
/* 029292B8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t14);
|
|
/* 029292BC */ cpu->r[3] = cpu->r[30];
|
|
/* 029292C0 */ cpu->r[4] = cpu->r[29];
|
|
/* 029292C4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 029292C8 */ _t15 = cpu->r[28] + 0x00000000u;
|
|
/* 029292C8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t15);
|
|
/* 029292CC */ cpu->r[12] = cpu->r[5];
|
|
/* 029292D0 */ _t16 = cpu->r[12] + 0x00000020u;
|
|
/* 029292D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 029292D4 */ cpu->r[11] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 029292D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 029292D8 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 029292D8 */ _t18 = _t17 & 0x00000001u;
|
|
/* 029292D8 */ if (_t18) goto L_029292F8; else goto L_029292DC;
|
|
L_029292DC: ; // 0x29292dc
|
|
/* 029292DC */ _t19 = cpu->r[12] + 0x00000024u;
|
|
/* 029292DC */ cpu->r[8] = rbrew_read32(cpu->mem, _t19);
|
|
/* 029292E0 */ _t20 = cpu->r[8] + 0x0000000Cu;
|
|
/* 029292E0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t20);
|
|
/* 029292E4 */ cpu->ctr = cpu->r[9];
|
|
/* 029292E8 */ cpu->r[3] = cpu->r[12] + 0x00000024u;
|
|
/* 029292EC */ cpu->r[4] = cpu->r[29];
|
|
/* 029292F0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 029292F4 */ _t21 = cpu->r[28] + 0x00000000u;
|
|
/* 029292F4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t21);
|
|
L_029292F8: ; // 0x29292f8
|
|
/* 029292F8 */ _t22 = cpu->r[30] + 0x0000000Cu;
|
|
/* 029292F8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t22);
|
|
/* 029292FC */ _t23 = cpu->r[10] + 0x0000005Cu;
|
|
/* 029292FC */ cpu->r[11] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02929300 */ cpu->ctr = cpu->r[11];
|
|
/* 02929304 */ cpu->r[3] = cpu->r[30];
|
|
/* 02929308 */ cpu->r[4] = cpu->r[29];
|
|
/* 0292930C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02929310 */ cpu->r[28] = cpu->r[28] + 0x00000004u;
|
|
/* 02929314 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[31]);
|
|
/* 02929318 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02929318 */ _t25 = _t24 & 0x00000001u;
|
|
/* 02929318 */ if (_t25) goto L_0292931C; else goto L_029292AC;
|
|
L_0292931C: ; // 0x292931c
|
|
/* 0292931C */ _t26 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0292931C */ cpu->r[12] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02929320 */ _t27 = cpu->r[12] + 0x00000064u;
|
|
/* 02929320 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02929324 */ cpu->ctr = cpu->r[0];
|
|
/* 02929328 */ cpu->r[3] = cpu->r[30];
|
|
/* 0292932C */ cpu->r[4] = cpu->r[29];
|
|
/* 02929330 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02929334 */ _t28 = cpu->r[1] + 0x00000008u;
|
|
/* 02929334 */ cpu->r[28] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02929338 */ _t29 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02929338 */ cpu->r[29] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0292933C */ _t30 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0292933C */ cpu->r[0] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02929340 */ _t31 = cpu->r[1] + 0x00000010u;
|
|
/* 02929340 */ cpu->r[30] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02929344 */ cpu->lr = cpu->r[0];
|
|
/* 02929348 */ _t32 = cpu->r[1] + 0x00000014u;
|
|
/* 02929348 */ cpu->r[31] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0292934C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02929350 */ return;
|
|
}
|
|
|