mirror of
https://github.com/ApfelTeeSaft/RebrewU.git
synced 2026-08-26 19:33:27 +00:00
26400 lines
1.3 MiB
Plaintext
26400 lines
1.3 MiB
Plaintext
// Generated by RebrewU -- do not edit
|
|
#include <rebrewu_runtime.h>
|
|
#include <stdint.h>
|
|
#include <math.h>
|
|
|
|
#include "Gambit.h"
|
|
|
|
// fn_02223808 @ 0x2223808
|
|
void Gambit_fn_02223808(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_02223808: ; // 0x2223808
|
|
/* 02223808 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 02223808 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02223808 */ cpu->r[1] = _t0;
|
|
/* 0222380C */ _t1 = cpu->r[3] + 0x00000004u;
|
|
/* 0222380C */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02223810 */ _t2 = cpu->r[12] + 0x0000039Cu;
|
|
/* 02223810 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02223814 */ cpu->ctr = cpu->r[0];
|
|
/* 02223818 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222381C */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222381C */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02223820 */ cpu->lr = cpu->r[0];
|
|
/* 02223824 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 02223828 */ cpu->r[3] = 0x00000001u;
|
|
/* 0222382C */ return;
|
|
}
|
|
|
|
// fn_02223830 @ 0x2223830
|
|
void Gambit_fn_02223830(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_02223830: ; // 0x2223830
|
|
/* 02223830 */ _t0 = cpu->r[4] + 0x00000002u;
|
|
/* 02223830 */ cpu->r[11] = rbrew_read16(cpu->mem, _t0);
|
|
/* 02223834 */ _t1 = cpu->r[3] + 0x00000064u;
|
|
/* 02223834 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t1);
|
|
/* 02223838 */ cpu->r[11] = cpu->r[11] | 0x0000FE00u;
|
|
/* 0222383C */ _t2 = cpu->r[4] + 0x00000000u;
|
|
/* 0222383C */ rbrew_write16(cpu->mem, _t2, (uint16_t)cpu->r[10]);
|
|
/* 02223840 */ cpu->r[12] = cpu->r[11] & 0x0000FEFFu;
|
|
/* 02223840 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02223844 */ cpu->r[0] = 0x00000000u;
|
|
/* 02223848 */ _t3 = cpu->r[4] + 0x00000002u;
|
|
/* 02223848 */ rbrew_write16(cpu->mem, _t3, (uint16_t)cpu->r[12]);
|
|
/* 0222384C */ _t4 = cpu->r[4] + 0x00000003u;
|
|
/* 0222384C */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[0]);
|
|
/* 02223850 */ return;
|
|
}
|
|
|
|
// fn_02223854 @ 0x2223854
|
|
void Gambit_fn_02223854(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_02223854: ; // 0x2223854
|
|
/* 02223854 */ _t0 = cpu->r[4] + 0x00000000u;
|
|
/* 02223854 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02223858 */ _t1 = cpu->r[3] + 0x00000194u;
|
|
/* 02223858 */ rbrew_write32(cpu->mem, _t1, cpu->r[11]);
|
|
/* 0222385C */ _t2 = cpu->r[4] + 0x00000004u;
|
|
/* 0222385C */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02223860 */ cpu->r[10] = 0x00000001u;
|
|
/* 02223864 */ _t3 = cpu->r[3] + 0x00000198u;
|
|
/* 02223864 */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 02223868 */ _t4 = cpu->r[4] + 0x00000008u;
|
|
/* 02223868 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0222386C */ _t5 = cpu->r[3] + 0x000001A0u;
|
|
/* 0222386C */ rbrew_write8(cpu->mem, _t5, (uint8_t)cpu->r[10]);
|
|
/* 02223870 */ _t6 = cpu->r[3] + 0x0000019Cu;
|
|
/* 02223870 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02223874 */ return;
|
|
}
|
|
|
|
// fn_02223878 @ 0x2223878
|
|
void Gambit_fn_02223878(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_02223878: ; // 0x2223878
|
|
/* 02223878 */ cpu->r[0] = cpu->lr;
|
|
/* 0222387C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0222387C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0222387C */ cpu->r[1] = _t0;
|
|
/* 02223880 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02223880 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02223884 */ cpu->r[31] = cpu->r[3];
|
|
/* 02223888 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02223888 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0222388C */ _t3 = cpu->r[31] + 0x000001A0u;
|
|
/* 0222388C */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02223890 */ cpu->r[11] = cpu->r[5];
|
|
/* 02223894 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02223898 */ cpu->r[8] = cpu->r[7];
|
|
/* 0222389C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222389C */ _t5 = _t4 & 0x00000001u;
|
|
/* 0222389C */ if (_t5) goto L_022238D4; else goto L_022238A0;
|
|
L_022238A0: ; // 0x22238a0
|
|
/* 022238A0 */ _t6 = cpu->r[6] + 0x00000000u;
|
|
/* 022238A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022238A4 */ _t7 = cpu->r[31] + 0x00000004u;
|
|
/* 022238A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022238A8 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 022238A8 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 022238AC */ _t9 = cpu->r[12] + 0x00000274u;
|
|
/* 022238AC */ cpu->r[9] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022238B0 */ cpu->ctr = cpu->r[9];
|
|
/* 022238B4 */ cpu->r[6] = cpu->r[11];
|
|
/* 022238B8 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 022238BC */ cpu->r[5] = cpu->r[31] + 0x000000C4u;
|
|
/* 022238C0 */ cpu->r[3] = cpu->r[31];
|
|
/* 022238C4 */ cpu->r[4] = cpu->r[31] + 0x00000194u;
|
|
/* 022238C8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022238CC */ cpu->r[10] = 0x00000000u;
|
|
/* 022238D0 */ _t10 = cpu->r[31] + 0x000001A0u;
|
|
/* 022238D0 */ rbrew_write8(cpu->mem, _t10, (uint8_t)cpu->r[10]);
|
|
L_022238D4: ; // 0x22238d4
|
|
/* 022238D4 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 022238D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022238D8 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022238D8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022238DC */ cpu->lr = cpu->r[0];
|
|
/* 022238E0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022238E4 */ return;
|
|
}
|
|
|
|
// fn_0222387C @ 0x222387c
|
|
void Gambit_fn_0222387C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_0222387C: ; // 0x222387c
|
|
/* 0222387C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0222387C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0222387C */ cpu->r[1] = _t0;
|
|
/* 02223880 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02223880 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02223884 */ cpu->r[31] = cpu->r[3];
|
|
/* 02223888 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02223888 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0222388C */ _t3 = cpu->r[31] + 0x000001A0u;
|
|
/* 0222388C */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02223890 */ cpu->r[11] = cpu->r[5];
|
|
/* 02223894 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02223898 */ cpu->r[8] = cpu->r[7];
|
|
/* 0222389C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222389C */ _t5 = _t4 & 0x00000001u;
|
|
/* 0222389C */ if (_t5) goto L_022238D4; else goto L_022238A0;
|
|
L_022238A0: ; // 0x22238a0
|
|
/* 022238A0 */ _t6 = cpu->r[6] + 0x00000000u;
|
|
/* 022238A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022238A4 */ _t7 = cpu->r[31] + 0x00000004u;
|
|
/* 022238A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022238A8 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 022238A8 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 022238AC */ _t9 = cpu->r[12] + 0x00000274u;
|
|
/* 022238AC */ cpu->r[9] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022238B0 */ cpu->ctr = cpu->r[9];
|
|
/* 022238B4 */ cpu->r[6] = cpu->r[11];
|
|
/* 022238B8 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 022238BC */ cpu->r[5] = cpu->r[31] + 0x000000C4u;
|
|
/* 022238C0 */ cpu->r[3] = cpu->r[31];
|
|
/* 022238C4 */ cpu->r[4] = cpu->r[31] + 0x00000194u;
|
|
/* 022238C8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022238CC */ cpu->r[10] = 0x00000000u;
|
|
/* 022238D0 */ _t10 = cpu->r[31] + 0x000001A0u;
|
|
/* 022238D0 */ rbrew_write8(cpu->mem, _t10, (uint8_t)cpu->r[10]);
|
|
L_022238D4: ; // 0x22238d4
|
|
/* 022238D4 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 022238D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022238D8 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022238D8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022238DC */ cpu->lr = cpu->r[0];
|
|
/* 022238E0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022238E4 */ return;
|
|
}
|
|
|
|
// fn_022238E8 @ 0x22238e8
|
|
void Gambit_fn_022238E8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _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_022238E8: ; // 0x22238e8
|
|
/* 022238E8 */ cpu->r[0] = cpu->lr;
|
|
/* 022238EC */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 022238EC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022238EC */ cpu->r[1] = _t0;
|
|
/* 022238F0 */ _t1 = cpu->r[1] + 0x00000018u;
|
|
/* 022238F0 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[30]);
|
|
/* 022238F4 */ /* nop */
|
|
/* 022238F8 */ _t2 = cpu->r[1] + 0x00000028u;
|
|
/* 022238F8 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 022238FC */ _t3 = cpu->r[1] + 0x00000020u;
|
|
/* 022238FC */ rbrew_write_f32(cpu->mem, _t3, cpu->f[30]);
|
|
/* 02223900 */ /* nop */
|
|
/* 02223904 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02223904 */ rbrew_write32(cpu->mem, _t4, cpu->r[29]);
|
|
/* 02223908 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 02223908 */ rbrew_write32(cpu->mem, _t5, cpu->r[30]);
|
|
/* 0222390C */ _t6 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0222390C */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02223910 */ _t7 = cpu->r[1] + 0x00000030u;
|
|
/* 02223910 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[31]);
|
|
/* 02223914 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 02223914 */ rbrew_write32(cpu->mem, _t8, cpu->r[31]);
|
|
/* 02223918 */ _t9 = cpu->r[3] + 0x00000004u;
|
|
/* 02223918 */ cpu->r[7] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0222391C */ _t10 = cpu->r[7] + 0x000002FCu;
|
|
/* 0222391C */ cpu->r[11] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02223920 */ cpu->r[29] = cpu->r[3];
|
|
/* 02223924 */ cpu->f[30] = cpu->f[1];
|
|
/* 02223928 */ cpu->ctr = cpu->r[11];
|
|
/* 0222392C */ cpu->f[31] = cpu->f[2];
|
|
/* 02223930 */ cpu->r[31] = cpu->r[5];
|
|
/* 02223934 */ cpu->r[30] = cpu->r[4];
|
|
/* 02223938 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222393C */ _t11 = cpu->r[29] + 0x00000052u;
|
|
/* 0222393C */ cpu->r[12] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t11);
|
|
/* 02223940 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], cpu->r[3]);
|
|
/* 02223944 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02223944 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02223944 */ if (_t13) goto L_02223950; else goto L_02223948;
|
|
L_02223948: ; // 0x2223948
|
|
/* 02223948 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0222394C */ _t14 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0222394C */ _t15 = _t14 & 0x00000001u;
|
|
/* 0222394C */ if (_t15) goto L_02223950; else goto L_02223A40;
|
|
L_02223950: ; // 0x2223950
|
|
/* 02223950 */ Gambit_fn_0222E4C4(cpu);
|
|
/* 02223954 */ cpu->r[10] = 0x10050000u;
|
|
/* 02223958 */ cpu->r[11] = 0x101C0000u;
|
|
/* 0222395C */ _t16 = cpu->r[10] + 0xFFFFD978u;
|
|
/* 0222395C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 02223960 */ cpu->f[3] = cpu->f[1];
|
|
/* 02223964 */ _t17 = cpu->r[11] + 0x00001EF8u;
|
|
/* 02223964 */ cpu->r[3] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02223968 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[30], cpu->f[0]);
|
|
/* 0222396C */ _t18 = cpu->r[29] + 0x000000B4u;
|
|
/* 0222396C */ cpu->r[9] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02223970 */ cpu->r[4] = cpu->r[30];
|
|
/* 02223974 */ _t19 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02223974 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02223974 */ if (_t20) goto L_022239DC; else goto L_02223978;
|
|
L_02223978: ; // 0x2223978
|
|
/* 02223978 */ cpu->r[8] = cpu->r[29] + 0x000000B0u;
|
|
/* 0222397C */ cpu->f[1] = cpu->f[31];
|
|
/* 02223980 */ cpu->r[5] = 0x00000000u;
|
|
/* 02223984 */ _t21 = cpu->r[1] + 0x00000008u;
|
|
/* 02223984 */ rbrew_write32(cpu->mem, _t21, cpu->r[8]);
|
|
/* 02223988 */ cpu->f[2] = cpu->f[3];
|
|
/* 0222398C */ cpu->r[6] = cpu->r[5];
|
|
/* 02223990 */ cpu->r[7] = 0x000C0000u;
|
|
/* 02223994 */ cpu->r[8] = 0x000001FFu;
|
|
/* 02223998 */ cpu->r[10] = cpu->r[6];
|
|
/* 0222399C */ cpu->r[7] = cpu->r[7] + 0x0000028Bu;
|
|
/* 022239A0 */ Gambit_fn_0204A4DC(cpu);
|
|
/* 022239A4 */ _t22 = cpu->r[29] + 0x000000B0u;
|
|
/* 022239A4 */ rbrew_write32(cpu->mem, _t22, cpu->r[3]);
|
|
/* 022239A8 */ _t23 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022239A8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t23);
|
|
/* 022239AC */ _t24 = cpu->r[1] + 0x00000020u;
|
|
/* 022239AC */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 022239B0 */ _t25 = cpu->r[1] + 0x00000030u;
|
|
/* 022239B0 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 022239B4 */ _t26 = cpu->r[1] + 0x00000018u;
|
|
/* 022239B4 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t26);
|
|
/* 022239B8 */ _t27 = cpu->r[1] + 0x00000028u;
|
|
/* 022239B8 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t27);
|
|
/* 022239BC */ _t28 = cpu->r[1] + 0x00000010u;
|
|
/* 022239BC */ cpu->r[30] = rbrew_read32(cpu->mem, _t28);
|
|
/* 022239C0 */ _t29 = cpu->r[1] + 0x00000014u;
|
|
/* 022239C0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t29);
|
|
/* 022239C4 */ cpu->r[3] = 0x00000001u;
|
|
/* 022239C8 */ _t30 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022239C8 */ _t31 = _t30 & 0x00000001u;
|
|
/* 022239C8 */ if (_t31) goto L_022239CC; // else: addr-0 trap, fall-through
|
|
L_022239CC: ; // 0x22239cc
|
|
/* 022239CC */ _t32 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022239CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t32);
|
|
/* 022239D0 */ cpu->lr = cpu->r[0];
|
|
/* 022239D4 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 022239D8 */ return;
|
|
L_022239DC: ; // 0x22239dc
|
|
/* 022239DC */ cpu->f[1] = cpu->f[30];
|
|
/* 022239E0 */ cpu->r[8] = cpu->r[9];
|
|
/* 022239E4 */ cpu->r[12] = 0x10050000u;
|
|
/* 022239E8 */ cpu->f[2] = cpu->f[31];
|
|
/* 022239EC */ cpu->r[6] = 0x000C0000u;
|
|
/* 022239F0 */ _t33 = cpu->r[12] + 0xFFFFD974u;
|
|
/* 022239F0 */ cpu->f[4] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 022239F4 */ cpu->r[5] = cpu->r[31];
|
|
/* 022239F8 */ cpu->r[9] = cpu->r[29] + 0x000000B0u;
|
|
/* 022239FC */ cpu->r[6] = cpu->r[6] + 0x0000028Bu;
|
|
/* 02223A00 */ cpu->r[7] = 0x000001FFu;
|
|
/* 02223A04 */ Gambit_fn_0204A864(cpu);
|
|
/* 02223A08 */ _t34 = cpu->r[29] + 0x000000B0u;
|
|
/* 02223A08 */ rbrew_write32(cpu->mem, _t34, cpu->r[3]);
|
|
/* 02223A0C */ _t35 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02223A0C */ cpu->r[29] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02223A10 */ _t36 = cpu->r[1] + 0x00000020u;
|
|
/* 02223A10 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 02223A14 */ _t37 = cpu->r[1] + 0x00000030u;
|
|
/* 02223A14 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 02223A18 */ _t38 = cpu->r[1] + 0x00000018u;
|
|
/* 02223A18 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t38);
|
|
/* 02223A1C */ _t39 = cpu->r[1] + 0x00000028u;
|
|
/* 02223A1C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t39);
|
|
/* 02223A20 */ _t40 = cpu->r[1] + 0x00000010u;
|
|
/* 02223A20 */ cpu->r[30] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02223A24 */ _t41 = cpu->r[1] + 0x00000014u;
|
|
/* 02223A24 */ cpu->r[31] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02223A28 */ cpu->r[3] = 0x00000001u;
|
|
/* 02223A2C */ _t42 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02223A2C */ _t43 = _t42 & 0x00000001u;
|
|
/* 02223A2C */ if (_t43) goto L_02223A30; // else: addr-0 trap, fall-through
|
|
L_02223A30: ; // 0x2223a30
|
|
/* 02223A30 */ _t44 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02223A30 */ cpu->r[0] = rbrew_read32(cpu->mem, _t44);
|
|
/* 02223A34 */ cpu->lr = cpu->r[0];
|
|
/* 02223A38 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 02223A3C */ return;
|
|
L_02223A40: ; // 0x2223a40
|
|
/* 02223A40 */ cpu->f[1] = cpu->f[30];
|
|
/* 02223A44 */ cpu->f[2] = cpu->f[31];
|
|
/* 02223A48 */ cpu->r[3] = cpu->r[29];
|
|
/* 02223A4C */ cpu->r[5] = cpu->r[31];
|
|
/* 02223A50 */ cpu->r[4] = cpu->r[30];
|
|
/* 02223A54 */ Gambit_fn_0222D810(cpu);
|
|
/* 02223A58 */ _t45 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02223A58 */ cpu->r[29] = rbrew_read32(cpu->mem, _t45);
|
|
/* 02223A5C */ _t46 = cpu->r[1] + 0x00000020u;
|
|
/* 02223A5C */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 02223A60 */ _t47 = cpu->r[1] + 0x00000030u;
|
|
/* 02223A60 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 02223A64 */ _t48 = cpu->r[1] + 0x00000018u;
|
|
/* 02223A64 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t48);
|
|
/* 02223A68 */ _t49 = cpu->r[1] + 0x00000028u;
|
|
/* 02223A68 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t49);
|
|
/* 02223A6C */ _t50 = cpu->r[1] + 0x00000014u;
|
|
/* 02223A6C */ cpu->r[31] = rbrew_read32(cpu->mem, _t50);
|
|
/* 02223A70 */ _t51 = cpu->r[1] + 0x00000010u;
|
|
/* 02223A70 */ cpu->r[30] = rbrew_read32(cpu->mem, _t51);
|
|
/* 02223A74 */ _t52 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02223A74 */ _t53 = _t52 & 0x00000001u;
|
|
/* 02223A74 */ if (_t53) goto L_02223A78; // else: addr-0 trap, fall-through
|
|
L_02223A78: ; // 0x2223a78
|
|
/* 02223A78 */ _t54 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02223A78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t54);
|
|
/* 02223A7C */ cpu->lr = cpu->r[0];
|
|
/* 02223A80 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 02223A84 */ return;
|
|
}
|
|
|
|
// fn_022238EC @ 0x22238ec
|
|
void Gambit_fn_022238EC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _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_022238EC: ; // 0x22238ec
|
|
/* 022238EC */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 022238EC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022238EC */ cpu->r[1] = _t0;
|
|
/* 022238F0 */ _t1 = cpu->r[1] + 0x00000018u;
|
|
/* 022238F0 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[30]);
|
|
/* 022238F4 */ /* nop */
|
|
/* 022238F8 */ _t2 = cpu->r[1] + 0x00000028u;
|
|
/* 022238F8 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 022238FC */ _t3 = cpu->r[1] + 0x00000020u;
|
|
/* 022238FC */ rbrew_write_f32(cpu->mem, _t3, cpu->f[30]);
|
|
/* 02223900 */ /* nop */
|
|
/* 02223904 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02223904 */ rbrew_write32(cpu->mem, _t4, cpu->r[29]);
|
|
/* 02223908 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 02223908 */ rbrew_write32(cpu->mem, _t5, cpu->r[30]);
|
|
/* 0222390C */ _t6 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0222390C */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02223910 */ _t7 = cpu->r[1] + 0x00000030u;
|
|
/* 02223910 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[31]);
|
|
/* 02223914 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 02223914 */ rbrew_write32(cpu->mem, _t8, cpu->r[31]);
|
|
/* 02223918 */ _t9 = cpu->r[3] + 0x00000004u;
|
|
/* 02223918 */ cpu->r[7] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0222391C */ _t10 = cpu->r[7] + 0x000002FCu;
|
|
/* 0222391C */ cpu->r[11] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02223920 */ cpu->r[29] = cpu->r[3];
|
|
/* 02223924 */ cpu->f[30] = cpu->f[1];
|
|
/* 02223928 */ cpu->ctr = cpu->r[11];
|
|
/* 0222392C */ cpu->f[31] = cpu->f[2];
|
|
/* 02223930 */ cpu->r[31] = cpu->r[5];
|
|
/* 02223934 */ cpu->r[30] = cpu->r[4];
|
|
/* 02223938 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222393C */ _t11 = cpu->r[29] + 0x00000052u;
|
|
/* 0222393C */ cpu->r[12] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t11);
|
|
/* 02223940 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], cpu->r[3]);
|
|
/* 02223944 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02223944 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02223944 */ if (_t13) goto L_02223950; else goto L_02223948;
|
|
L_02223948: ; // 0x2223948
|
|
/* 02223948 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0222394C */ _t14 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0222394C */ _t15 = _t14 & 0x00000001u;
|
|
/* 0222394C */ if (_t15) goto L_02223950; else goto L_02223A40;
|
|
L_02223950: ; // 0x2223950
|
|
/* 02223950 */ Gambit_fn_0222E4C4(cpu);
|
|
/* 02223954 */ cpu->r[10] = 0x10050000u;
|
|
/* 02223958 */ cpu->r[11] = 0x101C0000u;
|
|
/* 0222395C */ _t16 = cpu->r[10] + 0xFFFFD978u;
|
|
/* 0222395C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 02223960 */ cpu->f[3] = cpu->f[1];
|
|
/* 02223964 */ _t17 = cpu->r[11] + 0x00001EF8u;
|
|
/* 02223964 */ cpu->r[3] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02223968 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[30], cpu->f[0]);
|
|
/* 0222396C */ _t18 = cpu->r[29] + 0x000000B4u;
|
|
/* 0222396C */ cpu->r[9] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02223970 */ cpu->r[4] = cpu->r[30];
|
|
/* 02223974 */ _t19 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02223974 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02223974 */ if (_t20) goto L_022239DC; else goto L_02223978;
|
|
L_02223978: ; // 0x2223978
|
|
/* 02223978 */ cpu->r[8] = cpu->r[29] + 0x000000B0u;
|
|
/* 0222397C */ cpu->f[1] = cpu->f[31];
|
|
/* 02223980 */ cpu->r[5] = 0x00000000u;
|
|
/* 02223984 */ _t21 = cpu->r[1] + 0x00000008u;
|
|
/* 02223984 */ rbrew_write32(cpu->mem, _t21, cpu->r[8]);
|
|
/* 02223988 */ cpu->f[2] = cpu->f[3];
|
|
/* 0222398C */ cpu->r[6] = cpu->r[5];
|
|
/* 02223990 */ cpu->r[7] = 0x000C0000u;
|
|
/* 02223994 */ cpu->r[8] = 0x000001FFu;
|
|
/* 02223998 */ cpu->r[10] = cpu->r[6];
|
|
/* 0222399C */ cpu->r[7] = cpu->r[7] + 0x0000028Bu;
|
|
/* 022239A0 */ Gambit_fn_0204A4DC(cpu);
|
|
/* 022239A4 */ _t22 = cpu->r[29] + 0x000000B0u;
|
|
/* 022239A4 */ rbrew_write32(cpu->mem, _t22, cpu->r[3]);
|
|
/* 022239A8 */ _t23 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022239A8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t23);
|
|
/* 022239AC */ _t24 = cpu->r[1] + 0x00000020u;
|
|
/* 022239AC */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 022239B0 */ _t25 = cpu->r[1] + 0x00000030u;
|
|
/* 022239B0 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 022239B4 */ _t26 = cpu->r[1] + 0x00000018u;
|
|
/* 022239B4 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t26);
|
|
/* 022239B8 */ _t27 = cpu->r[1] + 0x00000028u;
|
|
/* 022239B8 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t27);
|
|
/* 022239BC */ _t28 = cpu->r[1] + 0x00000010u;
|
|
/* 022239BC */ cpu->r[30] = rbrew_read32(cpu->mem, _t28);
|
|
/* 022239C0 */ _t29 = cpu->r[1] + 0x00000014u;
|
|
/* 022239C0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t29);
|
|
/* 022239C4 */ cpu->r[3] = 0x00000001u;
|
|
/* 022239C8 */ _t30 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022239C8 */ _t31 = _t30 & 0x00000001u;
|
|
/* 022239C8 */ if (_t31) goto L_022239CC; // else: addr-0 trap, fall-through
|
|
L_022239CC: ; // 0x22239cc
|
|
/* 022239CC */ _t32 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022239CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t32);
|
|
/* 022239D0 */ cpu->lr = cpu->r[0];
|
|
/* 022239D4 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 022239D8 */ return;
|
|
L_022239DC: ; // 0x22239dc
|
|
/* 022239DC */ cpu->f[1] = cpu->f[30];
|
|
/* 022239E0 */ cpu->r[8] = cpu->r[9];
|
|
/* 022239E4 */ cpu->r[12] = 0x10050000u;
|
|
/* 022239E8 */ cpu->f[2] = cpu->f[31];
|
|
/* 022239EC */ cpu->r[6] = 0x000C0000u;
|
|
/* 022239F0 */ _t33 = cpu->r[12] + 0xFFFFD974u;
|
|
/* 022239F0 */ cpu->f[4] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 022239F4 */ cpu->r[5] = cpu->r[31];
|
|
/* 022239F8 */ cpu->r[9] = cpu->r[29] + 0x000000B0u;
|
|
/* 022239FC */ cpu->r[6] = cpu->r[6] + 0x0000028Bu;
|
|
/* 02223A00 */ cpu->r[7] = 0x000001FFu;
|
|
/* 02223A04 */ Gambit_fn_0204A864(cpu);
|
|
/* 02223A08 */ _t34 = cpu->r[29] + 0x000000B0u;
|
|
/* 02223A08 */ rbrew_write32(cpu->mem, _t34, cpu->r[3]);
|
|
/* 02223A0C */ _t35 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02223A0C */ cpu->r[29] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02223A10 */ _t36 = cpu->r[1] + 0x00000020u;
|
|
/* 02223A10 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 02223A14 */ _t37 = cpu->r[1] + 0x00000030u;
|
|
/* 02223A14 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 02223A18 */ _t38 = cpu->r[1] + 0x00000018u;
|
|
/* 02223A18 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t38);
|
|
/* 02223A1C */ _t39 = cpu->r[1] + 0x00000028u;
|
|
/* 02223A1C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t39);
|
|
/* 02223A20 */ _t40 = cpu->r[1] + 0x00000010u;
|
|
/* 02223A20 */ cpu->r[30] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02223A24 */ _t41 = cpu->r[1] + 0x00000014u;
|
|
/* 02223A24 */ cpu->r[31] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02223A28 */ cpu->r[3] = 0x00000001u;
|
|
/* 02223A2C */ _t42 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02223A2C */ _t43 = _t42 & 0x00000001u;
|
|
/* 02223A2C */ if (_t43) goto L_02223A30; // else: addr-0 trap, fall-through
|
|
L_02223A30: ; // 0x2223a30
|
|
/* 02223A30 */ _t44 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02223A30 */ cpu->r[0] = rbrew_read32(cpu->mem, _t44);
|
|
/* 02223A34 */ cpu->lr = cpu->r[0];
|
|
/* 02223A38 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 02223A3C */ return;
|
|
L_02223A40: ; // 0x2223a40
|
|
/* 02223A40 */ cpu->f[1] = cpu->f[30];
|
|
/* 02223A44 */ cpu->f[2] = cpu->f[31];
|
|
/* 02223A48 */ cpu->r[3] = cpu->r[29];
|
|
/* 02223A4C */ cpu->r[5] = cpu->r[31];
|
|
/* 02223A50 */ cpu->r[4] = cpu->r[30];
|
|
/* 02223A54 */ Gambit_fn_0222D810(cpu);
|
|
/* 02223A58 */ _t45 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02223A58 */ cpu->r[29] = rbrew_read32(cpu->mem, _t45);
|
|
/* 02223A5C */ _t46 = cpu->r[1] + 0x00000020u;
|
|
/* 02223A5C */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 02223A60 */ _t47 = cpu->r[1] + 0x00000030u;
|
|
/* 02223A60 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 02223A64 */ _t48 = cpu->r[1] + 0x00000018u;
|
|
/* 02223A64 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t48);
|
|
/* 02223A68 */ _t49 = cpu->r[1] + 0x00000028u;
|
|
/* 02223A68 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t49);
|
|
/* 02223A6C */ _t50 = cpu->r[1] + 0x00000014u;
|
|
/* 02223A6C */ cpu->r[31] = rbrew_read32(cpu->mem, _t50);
|
|
/* 02223A70 */ _t51 = cpu->r[1] + 0x00000010u;
|
|
/* 02223A70 */ cpu->r[30] = rbrew_read32(cpu->mem, _t51);
|
|
/* 02223A74 */ _t52 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02223A74 */ _t53 = _t52 & 0x00000001u;
|
|
/* 02223A74 */ if (_t53) goto L_02223A78; // else: addr-0 trap, fall-through
|
|
L_02223A78: ; // 0x2223a78
|
|
/* 02223A78 */ _t54 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02223A78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t54);
|
|
/* 02223A7C */ cpu->lr = cpu->r[0];
|
|
/* 02223A80 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 02223A84 */ return;
|
|
}
|
|
|
|
// fn_02223A88 @ 0x2223a88
|
|
void Gambit_fn_02223A88(CPUState* cpu) {
|
|
uint32_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_02223A88: ; // 0x2223a88
|
|
/* 02223A88 */ cpu->r[0] = cpu->lr;
|
|
/* 02223A8C */ _t0 = cpu->r[1] + 0xFFFFFFA8u;
|
|
/* 02223A8C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02223A8C */ cpu->r[1] = _t0;
|
|
/* 02223A90 */ _t1 = cpu->r[1] + 0x00000054u;
|
|
/* 02223A90 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02223A94 */ cpu->r[31] = cpu->r[3];
|
|
/* 02223A98 */ _t2 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02223A98 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02223A9C */ _t3 = cpu->r[31] + 0x000000FCu;
|
|
/* 02223A9C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 02223AA0 */ _t4 = cpu->r[31] + 0x00000100u;
|
|
/* 02223AA0 */ cpu->f[2] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 02223AA4 */ _t5 = cpu->r[31] + 0x00000104u;
|
|
/* 02223AA4 */ cpu->f[3] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 02223AA8 */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 02223AAC */ Gambit_fn_02C69840(cpu);
|
|
/* 02223AB0 */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 02223AB4 */ cpu->r[4] = cpu->r[31] + 0x00000164u;
|
|
/* 02223AB8 */ cpu->r[5] = cpu->r[31] + 0x00000128u;
|
|
/* 02223ABC */ Gambit_fn_02C69544(cpu);
|
|
/* 02223AC0 */ cpu->r[9] = 0x101F0000u;
|
|
/* 02223AC4 */ cpu->r[10] = 0x10050000u;
|
|
/* 02223AC8 */ cpu->r[9] = cpu->r[9] + 0x00006368u;
|
|
/* 02223ACC */ _t6 = cpu->r[10] + 0xFFFFD9E4u;
|
|
/* 02223ACC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 02223AD0 */ /* nop */
|
|
/* 02223AD4 */ /* nop */
|
|
/* 02223AD8 */ /* nop */
|
|
/* 02223ADC */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02223ADC */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02223AE0 */ _t8 = cpu->r[9] + 0x00000008u;
|
|
/* 02223AE0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 02223AE4 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 02223AE4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02223AE8 */ _t10 = cpu->r[1] + 0x00000018u;
|
|
/* 02223AE8 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 02223AEC */ cpu->f[12] = cpu->f[13] * cpu->f[0];
|
|
/* 02223AF0 */ _t11 = cpu->r[1] + 0x00000018u;
|
|
/* 02223AF0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 02223AF4 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 02223AF4 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 02223AF8 */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 02223AF8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 02223AFC */ _t14 = cpu->r[1] + 0x00000010u;
|
|
/* 02223AFC */ rbrew_write_f32(cpu->mem, _t14, cpu->f[12]);
|
|
/* 02223B00 */ _t15 = cpu->r[1] + 0x00000010u;
|
|
/* 02223B00 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02223B04 */ _t16 = cpu->r[31] + 0x00000158u;
|
|
/* 02223B04 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[13]);
|
|
/* 02223B08 */ _t17 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02223B08 */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
/* 02223B0C */ _t18 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02223B0C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 02223B10 */ _t19 = cpu->r[31] + 0x0000015Cu;
|
|
/* 02223B10 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[0]);
|
|
/* 02223B14 */ _t20 = cpu->r[31] + 0x00000160u;
|
|
/* 02223B14 */ rbrew_write_f32(cpu->mem, _t20, cpu->f[13]);
|
|
/* 02223B18 */ _t21 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02223B18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02223B1C */ cpu->lr = cpu->r[0];
|
|
/* 02223B20 */ _t22 = cpu->r[1] + 0x00000054u;
|
|
/* 02223B20 */ cpu->r[31] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02223B24 */ cpu->r[1] = cpu->r[1] + 0x00000058u;
|
|
/* 02223B28 */ return;
|
|
}
|
|
|
|
// fn_02223A8C @ 0x2223a8c
|
|
void Gambit_fn_02223A8C(CPUState* cpu) {
|
|
uint32_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_02223A8C: ; // 0x2223a8c
|
|
/* 02223A8C */ _t0 = cpu->r[1] + 0xFFFFFFA8u;
|
|
/* 02223A8C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02223A8C */ cpu->r[1] = _t0;
|
|
/* 02223A90 */ _t1 = cpu->r[1] + 0x00000054u;
|
|
/* 02223A90 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02223A94 */ cpu->r[31] = cpu->r[3];
|
|
/* 02223A98 */ _t2 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02223A98 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02223A9C */ _t3 = cpu->r[31] + 0x000000FCu;
|
|
/* 02223A9C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 02223AA0 */ _t4 = cpu->r[31] + 0x00000100u;
|
|
/* 02223AA0 */ cpu->f[2] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 02223AA4 */ _t5 = cpu->r[31] + 0x00000104u;
|
|
/* 02223AA4 */ cpu->f[3] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 02223AA8 */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 02223AAC */ Gambit_fn_02C69840(cpu);
|
|
/* 02223AB0 */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 02223AB4 */ cpu->r[4] = cpu->r[31] + 0x00000164u;
|
|
/* 02223AB8 */ cpu->r[5] = cpu->r[31] + 0x00000128u;
|
|
/* 02223ABC */ Gambit_fn_02C69544(cpu);
|
|
/* 02223AC0 */ cpu->r[9] = 0x101F0000u;
|
|
/* 02223AC4 */ cpu->r[10] = 0x10050000u;
|
|
/* 02223AC8 */ cpu->r[9] = cpu->r[9] + 0x00006368u;
|
|
/* 02223ACC */ _t6 = cpu->r[10] + 0xFFFFD9E4u;
|
|
/* 02223ACC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 02223AD0 */ /* nop */
|
|
/* 02223AD4 */ /* nop */
|
|
/* 02223AD8 */ /* nop */
|
|
/* 02223ADC */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02223ADC */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02223AE0 */ _t8 = cpu->r[9] + 0x00000008u;
|
|
/* 02223AE0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 02223AE4 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 02223AE4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02223AE8 */ _t10 = cpu->r[1] + 0x00000018u;
|
|
/* 02223AE8 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 02223AEC */ cpu->f[12] = cpu->f[13] * cpu->f[0];
|
|
/* 02223AF0 */ _t11 = cpu->r[1] + 0x00000018u;
|
|
/* 02223AF0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 02223AF4 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 02223AF4 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 02223AF8 */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 02223AF8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 02223AFC */ _t14 = cpu->r[1] + 0x00000010u;
|
|
/* 02223AFC */ rbrew_write_f32(cpu->mem, _t14, cpu->f[12]);
|
|
/* 02223B00 */ _t15 = cpu->r[1] + 0x00000010u;
|
|
/* 02223B00 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02223B04 */ _t16 = cpu->r[31] + 0x00000158u;
|
|
/* 02223B04 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[13]);
|
|
/* 02223B08 */ _t17 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02223B08 */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
/* 02223B0C */ _t18 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02223B0C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 02223B10 */ _t19 = cpu->r[31] + 0x0000015Cu;
|
|
/* 02223B10 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[0]);
|
|
/* 02223B14 */ _t20 = cpu->r[31] + 0x00000160u;
|
|
/* 02223B14 */ rbrew_write_f32(cpu->mem, _t20, cpu->f[13]);
|
|
/* 02223B18 */ _t21 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02223B18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02223B1C */ cpu->lr = cpu->r[0];
|
|
/* 02223B20 */ _t22 = cpu->r[1] + 0x00000054u;
|
|
/* 02223B20 */ cpu->r[31] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02223B24 */ cpu->r[1] = cpu->r[1] + 0x00000058u;
|
|
/* 02223B28 */ return;
|
|
}
|
|
|
|
// fn_02223B2C @ 0x2223b2c
|
|
void Gambit_fn_02223B2C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_02223B2C: ; // 0x2223b2c
|
|
/* 02223B2C */ cpu->r[0] = cpu->lr;
|
|
/* 02223B30 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02223B30 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02223B30 */ cpu->r[1] = _t0;
|
|
/* 02223B34 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02223B34 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02223B38 */ cpu->r[31] = cpu->r[3];
|
|
/* 02223B3C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02223B3C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02223B40 */ _t3 = cpu->r[31] + 0x000000A0u;
|
|
/* 02223B40 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 02223B44 */ _t4 = cpu->r[31] + 0x000000ACu;
|
|
/* 02223B44 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 02223B48 */ cpu->r[3] = 0x101C0000u;
|
|
/* 02223B4C */ _t5 = cpu->r[31] + 0x000000A4u;
|
|
/* 02223B4C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 02223B50 */ cpu->f[3] = cpu->f[12] - cpu->f[0];
|
|
/* 02223B54 */ _t6 = cpu->r[3] + 0x00001D14u;
|
|
/* 02223B54 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02223B58 */ cpu->f[4] = cpu->f[12] + cpu->f[0];
|
|
/* 02223B5C */ cpu->r[4] = 0x101C0000u;
|
|
/* 02223B60 */ cpu->f[2] = cpu->f[13] + cpu->f[0];
|
|
/* 02223B64 */ _t7 = cpu->r[4] + 0x00004FA8u;
|
|
/* 02223B64 */ cpu->r[4] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02223B68 */ cpu->f[1] = cpu->f[13] - cpu->f[0];
|
|
/* 02223B6C */ _t8 = cpu->r[3] + 0x00005444u;
|
|
/* 02223B6C */ cpu->r[7] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02223B70 */ cpu->r[5] = cpu->r[31];
|
|
/* 02223B74 */ cpu->r[6] = 0x00000000u;
|
|
/* 02223B78 */ Gambit_fn_02031B20(cpu);
|
|
/* 02223B7C */ _t9 = cpu->r[31] + 0x000001A4u;
|
|
/* 02223B7C */ rbrew_write32(cpu->mem, _t9, cpu->r[3]);
|
|
/* 02223B80 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02223B80 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02223B84 */ cpu->lr = cpu->r[0];
|
|
/* 02223B88 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02223B88 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02223B8C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02223B90 */ return;
|
|
}
|
|
|
|
// fn_02223B30 @ 0x2223b30
|
|
void Gambit_fn_02223B30(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_02223B30: ; // 0x2223b30
|
|
/* 02223B30 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02223B30 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02223B30 */ cpu->r[1] = _t0;
|
|
/* 02223B34 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02223B34 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02223B38 */ cpu->r[31] = cpu->r[3];
|
|
/* 02223B3C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02223B3C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02223B40 */ _t3 = cpu->r[31] + 0x000000A0u;
|
|
/* 02223B40 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 02223B44 */ _t4 = cpu->r[31] + 0x000000ACu;
|
|
/* 02223B44 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 02223B48 */ cpu->r[3] = 0x101C0000u;
|
|
/* 02223B4C */ _t5 = cpu->r[31] + 0x000000A4u;
|
|
/* 02223B4C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 02223B50 */ cpu->f[3] = cpu->f[12] - cpu->f[0];
|
|
/* 02223B54 */ _t6 = cpu->r[3] + 0x00001D14u;
|
|
/* 02223B54 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02223B58 */ cpu->f[4] = cpu->f[12] + cpu->f[0];
|
|
/* 02223B5C */ cpu->r[4] = 0x101C0000u;
|
|
/* 02223B60 */ cpu->f[2] = cpu->f[13] + cpu->f[0];
|
|
/* 02223B64 */ _t7 = cpu->r[4] + 0x00004FA8u;
|
|
/* 02223B64 */ cpu->r[4] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02223B68 */ cpu->f[1] = cpu->f[13] - cpu->f[0];
|
|
/* 02223B6C */ _t8 = cpu->r[3] + 0x00005444u;
|
|
/* 02223B6C */ cpu->r[7] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02223B70 */ cpu->r[5] = cpu->r[31];
|
|
/* 02223B74 */ cpu->r[6] = 0x00000000u;
|
|
/* 02223B78 */ Gambit_fn_02031B20(cpu);
|
|
/* 02223B7C */ _t9 = cpu->r[31] + 0x000001A4u;
|
|
/* 02223B7C */ rbrew_write32(cpu->mem, _t9, cpu->r[3]);
|
|
/* 02223B80 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02223B80 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02223B84 */ cpu->lr = cpu->r[0];
|
|
/* 02223B88 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02223B88 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02223B8C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02223B90 */ return;
|
|
}
|
|
|
|
// fn_02223B94 @ 0x2223b94
|
|
void Gambit_fn_02223B94(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22;
|
|
|
|
L_02031BD0: ; // 0x2031bd0
|
|
/* 02031BD0 */ cpu->r[0] = cpu->lr;
|
|
/* 02031BD4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02031BD4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02031BD4 */ cpu->r[1] = _t0;
|
|
/* 02031BD8 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02031BD8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02031BDC */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02031BDC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02031BE0 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02031BE0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02031BE4 */ _t4 = cpu->r[4] + 0x00000000u;
|
|
/* 02031BE4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02031BE8 */ cpu->r[31] = cpu->r[4];
|
|
/* 02031BEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 02031BF0 */ cpu->r[30] = cpu->r[3];
|
|
/* 02031BF4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02031BF4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02031BF4 */ if (_t6) goto L_02031C58; else goto L_02031BF8;
|
|
L_02031BF8: ; // 0x2031bf8
|
|
/* 02031BF8 */ _t7 = cpu->r[31] + 0x00000000u;
|
|
/* 02031BF8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02031BFC */ _t8 = cpu->r[3] + 0x0000011Cu;
|
|
/* 02031BFC */ cpu->r[11] = rbrew_read8(cpu->mem, _t8);
|
|
/* 02031C00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02031C04 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02031C04 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02031C04 */ if (_t10) goto L_02031C58; else goto L_02031C08;
|
|
L_02031C08: ; // 0x2031c08
|
|
/* 02031C08 */ Gambit_fn_020346F4(cpu);
|
|
/* 02031C0C */ _t11 = cpu->r[30] + 0x00000024u;
|
|
/* 02031C0C */ cpu->r[6] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02031C10 */ cpu->r[8] = 0x4D480000u;
|
|
/* 02031C14 */ _t12 = cpu->r[31] + 0x00000000u;
|
|
/* 02031C14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02031C18 */ cpu->r[8] = cpu->r[8] + 0x000073EDu;
|
|
/* 02031C1C */ cpu->r[12] = cpu->r[0] - cpu->r[6];
|
|
/* 02031C20 */ cpu->r[8] = (uint32_t)(((int64_t)(int32_t)cpu->r[8] * (int64_t)(int32_t)cpu->r[12]) >> 32);
|
|
/* 02031C24 */ /* nop */
|
|
/* 02031C28 */ /* nop */
|
|
/* 02031C2C */ cpu->r[8] = cpu->r[8] - cpu->r[7];
|
|
/* 02031C30 */ cpu->r[9] = rbrew_rlwinm(cpu->r[8], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02031C34 */ _t13 = cpu->r[30] + 0x0000102Cu;
|
|
/* 02031C34 */ cpu->r[11] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02031C38 */ cpu->r[10] = cpu->r[30] + cpu->r[9];
|
|
/* 02031C3C */ _t14 = cpu->r[10] + 0x00000028u;
|
|
/* 02031C3C */ rbrew_write32(cpu->mem, _t14, cpu->r[11]);
|
|
/* 02031C40 */ _t15 = cpu->r[30] + 0x00001028u;
|
|
/* 02031C40 */ cpu->r[12] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02031C44 */ _t16 = cpu->r[30] + 0x0000102Cu;
|
|
/* 02031C44 */ rbrew_write32(cpu->mem, _t16, cpu->r[8]);
|
|
/* 02031C48 */ cpu->r[12] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 02031C4C */ cpu->r[0] = 0x00000000u;
|
|
/* 02031C50 */ _t17 = cpu->r[30] + 0x00001028u;
|
|
/* 02031C50 */ rbrew_write32(cpu->mem, _t17, cpu->r[12]);
|
|
/* 02031C54 */ _t18 = cpu->r[31] + 0x00000000u;
|
|
/* 02031C54 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
L_02031C58: ; // 0x2031c58
|
|
/* 02031C58 */ _t19 = cpu->r[1] + 0x00000014u;
|
|
/* 02031C58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02031C5C */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 02031C5C */ cpu->r[30] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02031C60 */ cpu->lr = cpu->r[0];
|
|
/* 02031C64 */ _t21 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02031C64 */ cpu->r[31] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02031C68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02031C6C */ return;
|
|
L_02223B94: ; // 0x2223b94
|
|
/* 02223B94 */ cpu->r[4] = cpu->r[3] + 0x000001A4u;
|
|
/* 02223B98 */ cpu->r[3] = 0x101C0000u;
|
|
/* 02223B9C */ _t22 = cpu->r[3] + 0x00001D14u;
|
|
/* 02223B9C */ cpu->r[3] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02223BA0 */ goto L_02031BD0;
|
|
}
|
|
|
|
// fn_02223BA4 @ 0x2223ba4
|
|
void Gambit_fn_02223BA4(CPUState* cpu) {
|
|
L_02223BA4: ; // 0x2223ba4
|
|
/* 02223BA4 */ return;
|
|
}
|
|
|
|
// fn_02223BA8 @ 0x2223ba8
|
|
void Gambit_fn_02223BA8(CPUState* cpu) {
|
|
L_02223BA8: ; // 0x2223ba8
|
|
/* 02223BA8 */ return;
|
|
}
|
|
|
|
// fn_02223BAC @ 0x2223bac
|
|
void Gambit_fn_02223BAC(CPUState* cpu) {
|
|
L_02223BAC: ; // 0x2223bac
|
|
/* 02223BAC */ return;
|
|
}
|
|
|
|
// fn_02223BB0 @ 0x2223bb0
|
|
void Gambit_fn_02223BB0(CPUState* cpu) {
|
|
L_02223BB0: ; // 0x2223bb0
|
|
/* 02223BB0 */ return;
|
|
}
|
|
|
|
// fn_02223BB4 @ 0x2223bb4
|
|
void Gambit_fn_02223BB4(CPUState* cpu) {
|
|
L_02223BB4: ; // 0x2223bb4
|
|
/* 02223BB4 */ return;
|
|
}
|
|
|
|
// fn_02223BB8 @ 0x2223bb8
|
|
void Gambit_fn_02223BB8(CPUState* cpu) {
|
|
L_02223BB8: ; // 0x2223bb8
|
|
/* 02223BB8 */ return;
|
|
}
|
|
|
|
// fn_02223BBC @ 0x2223bbc
|
|
void Gambit_fn_02223BBC(CPUState* cpu) {
|
|
L_02223BBC: ; // 0x2223bbc
|
|
/* 02223BBC */ return;
|
|
}
|
|
|
|
// fn_02223BC0 @ 0x2223bc0
|
|
void Gambit_fn_02223BC0(CPUState* cpu) {
|
|
L_02223BC0: ; // 0x2223bc0
|
|
/* 02223BC0 */ return;
|
|
}
|
|
|
|
// fn_02223BC4 @ 0x2223bc4
|
|
void Gambit_fn_02223BC4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02223BC4: ; // 0x2223bc4
|
|
/* 02223BC4 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02223BC4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02223BC8 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02223BC8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02223BCC */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02223BCC */ _t2 = _t1 & 0x00000001u;
|
|
/* 02223BCC */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 02223BCC */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02223BCC */ goto L_02223BD0;
|
|
L_02223BD0: ; // 0x2223bd0
|
|
/* 02223BD0 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 02223BD0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02223BD4 */ _t5 = cpu->r[12] + 0x0000004Cu;
|
|
/* 02223BD4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02223BD8 */ cpu->ctr = cpu->r[0];
|
|
/* 02223BDC */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02223BE0 @ 0x2223be0
|
|
void Gambit_fn_02223BE0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02223BE0: ; // 0x2223be0
|
|
/* 02223BE0 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02223BE0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02223BE4 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Du, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02223BE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02223BE8 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02223BE8 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02223BE8 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 02223BE8 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02223BE8 */ goto L_02223BEC;
|
|
L_02223BEC: ; // 0x2223bec
|
|
/* 02223BEC */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 02223BEC */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02223BF0 */ _t5 = cpu->r[12] + 0x0000005Cu;
|
|
/* 02223BF0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02223BF4 */ cpu->ctr = cpu->r[0];
|
|
/* 02223BF8 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02223BFC @ 0x2223bfc
|
|
void Gambit_fn_02223BFC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02223BFC: ; // 0x2223bfc
|
|
/* 02223BFC */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02223BFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02223C00 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Au, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02223C00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02223C04 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02223C04 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02223C04 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 02223C04 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02223C04 */ goto L_02223C08;
|
|
L_02223C08: ; // 0x2223c08
|
|
/* 02223C08 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 02223C08 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02223C0C */ _t5 = cpu->r[11] + 0x00000074u;
|
|
/* 02223C0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02223C10 */ cpu->ctr = cpu->r[0];
|
|
/* 02223C14 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02223C18 @ 0x2223c18
|
|
void Gambit_fn_02223C18(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02223C18: ; // 0x2223c18
|
|
/* 02223C18 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02223C18 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02223C1C */ _t1 = cpu->r[12] + 0x0000002Cu;
|
|
/* 02223C1C */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02223C20 */ cpu->ctr = cpu->r[0];
|
|
/* 02223C24 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02223C28 @ 0x2223c28
|
|
void Gambit_fn_02223C28(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02223C28: ; // 0x2223c28
|
|
/* 02223C28 */ cpu->r[0] = cpu->lr;
|
|
/* 02223C2C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02223C2C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02223C2C */ cpu->r[1] = _t0;
|
|
/* 02223C30 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02223C30 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02223C34 */ cpu->r[31] = cpu->r[3];
|
|
/* 02223C38 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02223C38 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02223C3C */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02223C3C */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02223C40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 02223C44 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02223C44 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02223C44 */ if (_t5) goto L_02223C48; else goto L_02223C64;
|
|
L_02223C48: ; // 0x2223c48
|
|
/* 02223C48 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 02223C48 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02223C4C */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 02223C4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02223C50 */ cpu->ctr = cpu->r[0];
|
|
/* 02223C54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02223C58 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02223C5C */ cpu->r[0] = 0x00000002u;
|
|
/* 02223C60 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02223C60 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_02223C64: ; // 0x2223c64
|
|
/* 02223C64 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02223C64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02223C68 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02223C68 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02223C6C */ cpu->lr = cpu->r[0];
|
|
/* 02223C70 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02223C74 */ return;
|
|
}
|
|
|
|
// fn_02223C2C @ 0x2223c2c
|
|
void Gambit_fn_02223C2C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02223C2C: ; // 0x2223c2c
|
|
/* 02223C2C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02223C2C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02223C2C */ cpu->r[1] = _t0;
|
|
/* 02223C30 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02223C30 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02223C34 */ cpu->r[31] = cpu->r[3];
|
|
/* 02223C38 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02223C38 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02223C3C */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02223C3C */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02223C40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 02223C44 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02223C44 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02223C44 */ if (_t5) goto L_02223C48; else goto L_02223C64;
|
|
L_02223C48: ; // 0x2223c48
|
|
/* 02223C48 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 02223C48 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02223C4C */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 02223C4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02223C50 */ cpu->ctr = cpu->r[0];
|
|
/* 02223C54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02223C58 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02223C5C */ cpu->r[0] = 0x00000002u;
|
|
/* 02223C60 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02223C60 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_02223C64: ; // 0x2223c64
|
|
/* 02223C64 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02223C64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02223C68 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02223C68 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02223C6C */ cpu->lr = cpu->r[0];
|
|
/* 02223C70 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02223C74 */ return;
|
|
}
|
|
|
|
// fn_02223C78 @ 0x2223c78
|
|
void Gambit_fn_02223C78(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02223C78: ; // 0x2223c78
|
|
/* 02223C78 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02223C78 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02223C7C */ _t1 = cpu->r[12] + 0x0000008Cu;
|
|
/* 02223C7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02223C80 */ cpu->ctr = cpu->r[0];
|
|
/* 02223C84 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02223C88 @ 0x2223c88
|
|
void Gambit_fn_02223C88(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02223C88: ; // 0x2223c88
|
|
/* 02223C88 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02223C88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02223C8C */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 02223C8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02223C90 */ cpu->ctr = cpu->r[0];
|
|
/* 02223C94 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02223C98 @ 0x2223c98
|
|
void Gambit_fn_02223C98(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02223C98: ; // 0x2223c98
|
|
/* 02223C98 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02223C98 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02223C9C */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 02223C9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02223CA0 */ cpu->ctr = cpu->r[0];
|
|
/* 02223CA4 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02223CA8 @ 0x2223ca8
|
|
void Gambit_fn_02223CA8(CPUState* cpu) {
|
|
L_02223CA8: ; // 0x2223ca8
|
|
/* 02223CA8 */ cpu->r[3] = 0x00000001u;
|
|
/* 02223CAC */ return;
|
|
}
|
|
|
|
// fn_02223CB0 @ 0x2223cb0
|
|
void Gambit_fn_02223CB0(CPUState* cpu) {
|
|
L_02223CB0: ; // 0x2223cb0
|
|
/* 02223CB0 */ return;
|
|
}
|
|
|
|
// fn_02223CB4 @ 0x2223cb4
|
|
void Gambit_fn_02223CB4(CPUState* cpu) {
|
|
L_02223CB4: ; // 0x2223cb4
|
|
/* 02223CB4 */ return;
|
|
}
|
|
|
|
// fn_02223CB8 @ 0x2223cb8
|
|
void Gambit_fn_02223CB8(CPUState* cpu) {
|
|
L_02223CB8: ; // 0x2223cb8
|
|
/* 02223CB8 */ return;
|
|
}
|
|
|
|
// fn_02223CBC @ 0x2223cbc
|
|
void Gambit_fn_02223CBC(CPUState* cpu) {
|
|
L_02223CBC: ; // 0x2223cbc
|
|
/* 02223CBC */ return;
|
|
}
|
|
|
|
// fn_02223CC0 @ 0x2223cc0
|
|
void Gambit_fn_02223CC0(CPUState* cpu) {
|
|
L_02223CC0: ; // 0x2223cc0
|
|
/* 02223CC0 */ return;
|
|
}
|
|
|
|
// fn_02223CC4 @ 0x2223cc4
|
|
void Gambit_fn_02223CC4(CPUState* cpu) {
|
|
L_02223CC4: ; // 0x2223cc4
|
|
/* 02223CC4 */ return;
|
|
}
|
|
|
|
// fn_02223CC8 @ 0x2223cc8
|
|
void Gambit_fn_02223CC8(CPUState* cpu) {
|
|
L_02223CC8: ; // 0x2223cc8
|
|
/* 02223CC8 */ return;
|
|
}
|
|
|
|
// fn_02223CCC @ 0x2223ccc
|
|
void Gambit_fn_02223CCC(CPUState* cpu) {
|
|
L_02223CCC: ; // 0x2223ccc
|
|
/* 02223CCC */ cpu->r[3] = 0x00000001u;
|
|
/* 02223CD0 */ return;
|
|
}
|
|
|
|
// fn_02223CD4 @ 0x2223cd4
|
|
void Gambit_fn_02223CD4(CPUState* cpu) {
|
|
L_02223CD4: ; // 0x2223cd4
|
|
/* 02223CD4 */ cpu->r[3] = 0x00000000u;
|
|
/* 02223CD8 */ return;
|
|
}
|
|
|
|
// fn_02223CDC @ 0x2223cdc
|
|
void Gambit_fn_02223CDC(CPUState* cpu) {
|
|
L_02223CDC: ; // 0x2223cdc
|
|
/* 02223CDC */ cpu->r[3] = 0x00000001u;
|
|
/* 02223CE0 */ return;
|
|
}
|
|
|
|
// fn_02223CE4 @ 0x2223ce4
|
|
void Gambit_fn_02223CE4(CPUState* cpu) {
|
|
L_02223CE4: ; // 0x2223ce4
|
|
/* 02223CE4 */ cpu->r[3] = 0x00000000u;
|
|
/* 02223CE8 */ return;
|
|
}
|
|
|
|
// fn_02223CEC @ 0x2223cec
|
|
void Gambit_fn_02223CEC(CPUState* cpu) {
|
|
L_02223CEC: ; // 0x2223cec
|
|
/* 02223CEC */ cpu->r[3] = 0x00000000u;
|
|
/* 02223CF0 */ return;
|
|
}
|
|
|
|
// fn_02223CF4 @ 0x2223cf4
|
|
void Gambit_fn_02223CF4(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02223CF4: ; // 0x2223cf4
|
|
/* 02223CF4 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02223CF4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02223CF8 */ _t1 = cpu->r[12] + 0x0000021Cu;
|
|
/* 02223CF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02223CFC */ cpu->ctr = cpu->r[0];
|
|
/* 02223D00 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02223D04 @ 0x2223d04
|
|
void Gambit_fn_02223D04(CPUState* cpu) {
|
|
L_02223D04: ; // 0x2223d04
|
|
/* 02223D04 */ cpu->r[3] = 0x00000000u;
|
|
/* 02223D08 */ return;
|
|
}
|
|
|
|
// fn_02223D0C @ 0x2223d0c
|
|
void Gambit_fn_02223D0C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02223D0C: ; // 0x2223d0c
|
|
/* 02223D0C */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02223D0C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02223D10 */ _t1 = cpu->r[12] + 0x0000027Cu;
|
|
/* 02223D10 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02223D14 */ cpu->ctr = cpu->r[0];
|
|
/* 02223D18 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02223D1C @ 0x2223d1c
|
|
void Gambit_fn_02223D1C(CPUState* cpu) {
|
|
L_02223D1C: ; // 0x2223d1c
|
|
/* 02223D1C */ cpu->r[3] = 0x00000002u;
|
|
/* 02223D20 */ return;
|
|
}
|
|
|
|
// fn_02223D24 @ 0x2223d24
|
|
void Gambit_fn_02223D24(CPUState* cpu) {
|
|
L_02223D24: ; // 0x2223d24
|
|
/* 02223D24 */ cpu->r[3] = 0x00000000u;
|
|
/* 02223D28 */ return;
|
|
}
|
|
|
|
// fn_02223D2C @ 0x2223d2c
|
|
void Gambit_fn_02223D2C(CPUState* cpu) {
|
|
L_02223D2C: ; // 0x2223d2c
|
|
/* 02223D2C */ cpu->r[3] = 0x00000001u;
|
|
/* 02223D30 */ return;
|
|
}
|
|
|
|
// fn_02223D34 @ 0x2223d34
|
|
void Gambit_fn_02223D34(CPUState* cpu) {
|
|
L_02223D34: ; // 0x2223d34
|
|
/* 02223D34 */ cpu->r[3] = 0x00000000u;
|
|
/* 02223D38 */ return;
|
|
}
|
|
|
|
// fn_02223D3C @ 0x2223d3c
|
|
void Gambit_fn_02223D3C(CPUState* cpu) {
|
|
L_02223D3C: ; // 0x2223d3c
|
|
/* 02223D3C */ cpu->r[3] = 0x00000000u;
|
|
/* 02223D40 */ return;
|
|
}
|
|
|
|
// fn_02223D44 @ 0x2223d44
|
|
void Gambit_fn_02223D44(CPUState* cpu) {
|
|
L_02223D44: ; // 0x2223d44
|
|
/* 02223D44 */ cpu->r[3] = cpu->r[3] + 0x00000094u;
|
|
/* 02223D48 */ return;
|
|
}
|
|
|
|
// fn_02223D4C @ 0x2223d4c
|
|
void Gambit_fn_02223D4C(CPUState* cpu) {
|
|
L_02223D4C: ; // 0x2223d4c
|
|
/* 02223D4C */ cpu->r[3] = cpu->r[3] + 0x000000C4u;
|
|
/* 02223D50 */ return;
|
|
}
|
|
|
|
// fn_02223D54 @ 0x2223d54
|
|
void Gambit_fn_02223D54(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02223D54: ; // 0x2223d54
|
|
/* 02223D54 */ cpu->r[12] = 0x10050000u;
|
|
/* 02223D58 */ _t0 = cpu->r[12] + 0xFFFFD9F8u;
|
|
/* 02223D58 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 02223D5C */ return;
|
|
}
|
|
|
|
// fn_02223D60 @ 0x2223d60
|
|
void Gambit_fn_02223D60(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02223D60: ; // 0x2223d60
|
|
/* 02223D60 */ cpu->r[12] = 0x10050000u;
|
|
/* 02223D64 */ _t0 = cpu->r[12] + 0xFFFFD9F8u;
|
|
/* 02223D64 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 02223D68 */ return;
|
|
}
|
|
|
|
// fn_02223D6C @ 0x2223d6c
|
|
void Gambit_fn_02223D6C(CPUState* cpu) {
|
|
L_02223D6C: ; // 0x2223d6c
|
|
/* 02223D6C */ cpu->r[3] = 0x00000001u;
|
|
/* 02223D70 */ return;
|
|
}
|
|
|
|
// fn_02223D74 @ 0x2223d74
|
|
void Gambit_fn_02223D74(CPUState* cpu) {
|
|
L_02223D74: ; // 0x2223d74
|
|
/* 02223D74 */ cpu->r[3] = 0x00000001u;
|
|
/* 02223D78 */ return;
|
|
}
|
|
|
|
// fn_02223D7C @ 0x2223d7c
|
|
void Gambit_fn_02223D7C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02223D7C: ; // 0x2223d7c
|
|
/* 02223D7C */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02223D7C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02223D80 */ _t1 = cpu->r[12] + 0x0000035Cu;
|
|
/* 02223D80 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02223D84 */ cpu->ctr = cpu->r[0];
|
|
/* 02223D88 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02223D8C @ 0x2223d8c
|
|
void Gambit_fn_02223D8C(CPUState* cpu) {
|
|
L_02223D8C: ; // 0x2223d8c
|
|
/* 02223D8C */ cpu->r[3] = 0x00000001u;
|
|
/* 02223D90 */ return;
|
|
}
|
|
|
|
// fn_02223D94 @ 0x2223d94
|
|
void Gambit_fn_02223D94(CPUState* cpu) {
|
|
L_02223D94: ; // 0x2223d94
|
|
/* 02223D94 */ cpu->r[3] = 0x00000000u;
|
|
/* 02223D98 */ return;
|
|
}
|
|
|
|
// fn_02223D9C @ 0x2223d9c
|
|
void Gambit_fn_02223D9C(CPUState* cpu) {
|
|
L_02223D9C: ; // 0x2223d9c
|
|
/* 02223D9C */ cpu->r[3] = 0x00000000u;
|
|
/* 02223DA0 */ return;
|
|
}
|
|
|
|
// fn_02223DA4 @ 0x2223da4
|
|
void Gambit_fn_02223DA4(CPUState* cpu) {
|
|
L_02223DA4: ; // 0x2223da4
|
|
/* 02223DA4 */ cpu->r[3] = 0x00000001u;
|
|
/* 02223DA8 */ return;
|
|
}
|
|
|
|
// fn_02223DAC @ 0x2223dac
|
|
void Gambit_fn_02223DAC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_02223DAC: ; // 0x2223dac
|
|
/* 02223DAC */ _t0 = cpu->r[3] + 0x00000114u;
|
|
/* 02223DAC */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02223DB0 */ cpu->r[0] = 0x00000001u;
|
|
/* 02223DB4 */ _t1 = rbrew_rlwinm(cpu->r[0], 0x00000016u, 0x00000008u, 0x00000009u);
|
|
/* 02223DB4 */ _t2 = cpu->r[12] & 0xFF3FFFFFu;
|
|
/* 02223DB4 */ cpu->r[12] = _t2 | _t1;
|
|
/* 02223DB8 */ _t3 = cpu->r[3] + 0x00000114u;
|
|
/* 02223DB8 */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 02223DBC */ return;
|
|
}
|
|
|
|
// fn_02223DC0 @ 0x2223dc0
|
|
void Gambit_fn_02223DC0(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02223DC0: ; // 0x2223dc0
|
|
/* 02223DC0 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02223DC0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02223DC4 */ _t1 = cpu->r[12] + 0x0000039Cu;
|
|
/* 02223DC4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02223DC8 */ cpu->ctr = cpu->r[0];
|
|
/* 02223DCC */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02223DD0 @ 0x2223dd0
|
|
void Gambit_fn_02223DD0(CPUState* cpu) {
|
|
L_02223DD0: ; // 0x2223dd0
|
|
/* 02223DD0 */ return;
|
|
}
|
|
|
|
// fn_02223DD4 @ 0x2223dd4
|
|
void Gambit_fn_02223DD4(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02223DD4: ; // 0x2223dd4
|
|
/* 02223DD4 */ cpu->r[12] = 0x10050000u;
|
|
/* 02223DD8 */ _t0 = cpu->r[12] + 0xFFFFD978u;
|
|
/* 02223DD8 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 02223DDC */ return;
|
|
}
|
|
|
|
// fn_02223DE0 @ 0x2223de0
|
|
void Gambit_fn_02223DE0(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02223DE0: ; // 0x2223de0
|
|
/* 02223DE0 */ _t0 = cpu->r[3] + 0x000000A0u;
|
|
/* 02223DE0 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 02223DE4 */ return;
|
|
}
|
|
|
|
// fn_02223DE8 @ 0x2223de8
|
|
void Gambit_fn_02223DE8(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02223DE8: ; // 0x2223de8
|
|
/* 02223DE8 */ _t0 = cpu->r[3] + 0x00000020u;
|
|
/* 02223DE8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02223DEC */ return;
|
|
}
|
|
|
|
// fn_02223DF0 @ 0x2223df0
|
|
void Gambit_fn_02223DF0(CPUState* cpu) {
|
|
L_02223DF0: ; // 0x2223df0
|
|
/* 02223DF0 */ cpu->r[3] = 0x00000000u;
|
|
/* 02223DF4 */ return;
|
|
}
|
|
|
|
// fn_02223DF8 @ 0x2223df8
|
|
void Gambit_fn_02223DF8(CPUState* cpu) {
|
|
L_02223DF8: ; // 0x2223df8
|
|
/* 02223DF8 */ cpu->r[3] = 0x00000000u;
|
|
/* 02223DFC */ return;
|
|
}
|
|
|
|
// fn_02223E00 @ 0x2223e00
|
|
void Gambit_fn_02223E00(CPUState* cpu) {
|
|
L_02223E00: ; // 0x2223e00
|
|
/* 02223E00 */ cpu->r[3] = 0x00000001u;
|
|
/* 02223E04 */ return;
|
|
}
|
|
|
|
// fn_02223E08 @ 0x2223e08
|
|
void Gambit_fn_02223E08(CPUState* cpu) {
|
|
L_02223E08: ; // 0x2223e08
|
|
/* 02223E08 */ cpu->r[3] = 0x00000000u;
|
|
/* 02223E0C */ return;
|
|
}
|
|
|
|
// fn_02223E10 @ 0x2223e10
|
|
void Gambit_fn_02223E10(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02223E10: ; // 0x2223e10
|
|
/* 02223E10 */ _t0 = cpu->r[3] + 0x000000C0u;
|
|
/* 02223E10 */ cpu->r[3] = rbrew_read8(cpu->mem, _t0);
|
|
/* 02223E14 */ return;
|
|
}
|
|
|
|
// fn_02223E18 @ 0x2223e18
|
|
void Gambit_fn_02223E18(CPUState* cpu) {
|
|
L_02223E18: ; // 0x2223e18
|
|
/* 02223E18 */ return;
|
|
}
|
|
|
|
// fn_02223E1C @ 0x2223e1c
|
|
void Gambit_fn_02223E1C(CPUState* cpu) {
|
|
L_02223E1C: ; // 0x2223e1c
|
|
/* 02223E1C */ return;
|
|
}
|
|
|
|
// fn_02223E20 @ 0x2223e20
|
|
void Gambit_fn_02223E20(CPUState* cpu) {
|
|
L_02223E20: ; // 0x2223e20
|
|
/* 02223E20 */ cpu->r[3] = 0x00000000u;
|
|
/* 02223E24 */ return;
|
|
}
|
|
|
|
// fn_02223E28 @ 0x2223e28
|
|
void Gambit_fn_02223E28(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02223E28: ; // 0x2223e28
|
|
/* 02223E28 */ cpu->r[12] = 0x10050000u;
|
|
/* 02223E2C */ _t0 = cpu->r[12] + 0xFFFFD978u;
|
|
/* 02223E2C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 02223E30 */ return;
|
|
}
|
|
|
|
// fn_02223E34 @ 0x2223e34
|
|
void Gambit_fn_02223E34(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_02223E34: ; // 0x2223e34
|
|
/* 02223E34 */ _t0 = cpu->r[3] + 0x00000114u;
|
|
/* 02223E34 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02223E38 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000012u, 0x00000013u);
|
|
/* 02223E38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02223E3C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02223E3C */ _t2 = _t1 & 0x00000001u;
|
|
/* 02223E3C */ if (_t2) goto L_02223E4C; else goto L_02223E40;
|
|
L_02223E40: ; // 0x2223e40
|
|
/* 02223E40 */ cpu->r[12] = 0x10050000u;
|
|
/* 02223E44 */ _t3 = cpu->r[12] + 0xFFFFD978u;
|
|
/* 02223E44 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 02223E48 */ return;
|
|
L_02223E4C: ; // 0x2223e4c
|
|
/* 02223E4C */ cpu->r[12] = 0x10050000u;
|
|
/* 02223E50 */ _t4 = cpu->r[12] + 0xFFFFD974u;
|
|
/* 02223E50 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 02223E54 */ return;
|
|
}
|
|
|
|
// fn_02223E58 @ 0x2223e58
|
|
void Gambit_fn_02223E58(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_02223E58: ; // 0x2223e58
|
|
/* 02223E58 */ goto L_0222E4C4;
|
|
L_0222E4C4: ; // 0x222e4c4
|
|
/* 0222E4C4 */ cpu->r[0] = cpu->lr;
|
|
/* 0222E4C8 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 0222E4C8 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 0222E4CC */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 0222E4CC */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 0222E4CC */ cpu->r[1] = _t1;
|
|
/* 0222E4D0 */ Gambit_fn_021F7000(cpu);
|
|
/* 0222E4D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0222E4D8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222E4D8 */ _t3 = _t2 & 0x00000001u;
|
|
/* 0222E4D8 */ if (_t3) goto L_0222E4F4; else goto L_0222E4DC;
|
|
L_0222E4DC: ; // 0x222e4dc
|
|
/* 0222E4DC */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222E4DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0222E4E0 */ cpu->r[12] = 0x101E0000u;
|
|
/* 0222E4E4 */ cpu->lr = cpu->r[0];
|
|
/* 0222E4E8 */ _t5 = cpu->r[12] + 0xFFFF9594u;
|
|
/* 0222E4E8 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 0222E4EC */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 0222E4F0 */ return;
|
|
L_0222E4F4: ; // 0x222e4f4
|
|
/* 0222E4F4 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222E4F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0222E4F8 */ cpu->r[12] = 0x101E0000u;
|
|
/* 0222E4FC */ cpu->lr = cpu->r[0];
|
|
/* 0222E500 */ _t7 = cpu->r[12] + 0xFFFF9590u;
|
|
/* 0222E500 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 0222E504 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 0222E508 */ return;
|
|
}
|
|
|
|
// fn_02223E5C @ 0x2223e5c
|
|
void Gambit_fn_02223E5C(CPUState* cpu) {
|
|
L_02223E5C: ; // 0x2223e5c
|
|
/* 02223E5C */ cpu->r[3] = 0x00000000u;
|
|
/* 02223E60 */ return;
|
|
}
|
|
|
|
// fn_02223E64 @ 0x2223e64
|
|
void Gambit_fn_02223E64(CPUState* cpu) {
|
|
L_02223E64: ; // 0x2223e64
|
|
/* 02223E64 */ cpu->r[3] = 0x00000000u;
|
|
/* 02223E68 */ return;
|
|
}
|
|
|
|
// fn_02223E6C @ 0x2223e6c
|
|
void Gambit_fn_02223E6C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02223E6C: ; // 0x2223e6c
|
|
/* 02223E6C */ _t0 = cpu->r[3] + 0x00000114u;
|
|
/* 02223E6C */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02223E70 */ cpu->r[0] = cpu->r[0] | 0x00020000u;
|
|
/* 02223E74 */ _t1 = cpu->r[3] + 0x00000114u;
|
|
/* 02223E74 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02223E78 */ return;
|
|
}
|
|
|
|
// fn_02223E7C @ 0x2223e7c
|
|
void Gambit_fn_02223E7C(CPUState* cpu) {
|
|
L_02223E7C: ; // 0x2223e7c
|
|
/* 02223E7C */ cpu->r[3] = 0x10050000u;
|
|
/* 02223E80 */ cpu->r[3] = cpu->r[3] + 0xFFFFD9CCu;
|
|
/* 02223E84 */ return;
|
|
}
|
|
|
|
// fn_02223E88 @ 0x2223e88
|
|
void Gambit_fn_02223E88(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _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_02223E88: ; // 0x2223e88
|
|
/* 02223E88 */ cpu->r[10] = 0x101D0000u;
|
|
/* 02223E8C */ _t0 = cpu->r[10] + 0xFFFFFDB4u;
|
|
/* 02223E8C */ cpu->r[10] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02223E90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02223E94 */ cpu->r[10] = 0x101D0000u;
|
|
/* 02223E98 */ cpu->r[10] = cpu->r[10] + 0xFFFFFF64u;
|
|
/* 02223E9C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02223E9C */ _t2 = _t1 & 0x00000001u;
|
|
/* 02223E9C */ if (_t2) goto L_02223EA0; else goto L_02223EB8;
|
|
L_02223EA0: ; // 0x2223ea0
|
|
/* 02223EA0 */ cpu->r[0] = 0x10050000u;
|
|
/* 02223EA4 */ cpu->r[9] = 0x00000001u;
|
|
/* 02223EA8 */ cpu->r[11] = 0x101D0000u;
|
|
/* 02223EAC */ cpu->r[0] = cpu->r[0] + 0xFFFFD9BCu;
|
|
/* 02223EB0 */ _t3 = cpu->r[11] + 0xFFFFFDB4u;
|
|
/* 02223EB0 */ rbrew_write32(cpu->mem, _t3, cpu->r[9]);
|
|
/* 02223EB4 */ _t4 = cpu->r[10] + 0x00000000u;
|
|
/* 02223EB4 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
L_02223EB8: ; // 0x2223eb8
|
|
/* 02223EB8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]);
|
|
/* 02223EBC */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02223EBC */ _t6 = _t5 & 0x00000001u;
|
|
/* 02223EBC */ if (_t6) goto L_02223EC0; else goto L_02223EC8;
|
|
L_02223EC0: ; // 0x2223ec0
|
|
/* 02223EC0 */ cpu->r[3] = 0x00000001u;
|
|
/* 02223EC4 */ return;
|
|
L_02223EC8: ; // 0x2223ec8
|
|
/* 02223EC8 */ cpu->r[9] = 0x101D0000u;
|
|
/* 02223ECC */ _t7 = cpu->r[9] + 0xFFFFDA00u;
|
|
/* 02223ECC */ cpu->r[9] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02223ED0 */ cpu->r[11] = 0x101D0000u;
|
|
/* 02223ED4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02223ED8 */ cpu->r[11] = cpu->r[11] + 0xFFFFFBFCu;
|
|
/* 02223EDC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02223EDC */ _t9 = _t8 & 0x00000001u;
|
|
/* 02223EDC */ if (_t9) goto L_02223EE0; else goto L_02223EF8;
|
|
L_02223EE0: ; // 0x2223ee0
|
|
/* 02223EE0 */ cpu->r[9] = 0x10050000u;
|
|
/* 02223EE4 */ cpu->r[0] = 0x00000001u;
|
|
/* 02223EE8 */ cpu->r[10] = 0x101D0000u;
|
|
/* 02223EEC */ cpu->r[9] = cpu->r[9] + 0xFFFFD9ACu;
|
|
/* 02223EF0 */ _t10 = cpu->r[10] + 0xFFFFDA00u;
|
|
/* 02223EF0 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 02223EF4 */ _t11 = cpu->r[11] + 0x00000000u;
|
|
/* 02223EF4 */ rbrew_write32(cpu->mem, _t11, cpu->r[9]);
|
|
L_02223EF8: ; // 0x2223ef8
|
|
/* 02223EF8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[11]);
|
|
/* 02223EFC */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02223EFC */ _t13 = _t12 & 0x00000001u;
|
|
/* 02223EFC */ if (_t13) goto L_02223F00; else goto L_02223F08;
|
|
L_02223F00: ; // 0x2223f00
|
|
/* 02223F00 */ cpu->r[0] = 0x00000001u;
|
|
/* 02223F04 */ goto L_02223FC0;
|
|
L_02223F08: ; // 0x2223f08
|
|
/* 02223F08 */ cpu->r[11] = 0x101D0000u;
|
|
/* 02223F0C */ _t14 = cpu->r[11] + 0xFFFFD9ECu;
|
|
/* 02223F0C */ cpu->r[11] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02223F10 */ cpu->r[9] = 0x101D0000u;
|
|
/* 02223F14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02223F18 */ cpu->r[9] = cpu->r[9] + 0xFFFFFB4Cu;
|
|
/* 02223F1C */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02223F1C */ _t16 = _t15 & 0x00000001u;
|
|
/* 02223F1C */ if (_t16) goto L_02223F20; else goto L_02223F38;
|
|
L_02223F20: ; // 0x2223f20
|
|
/* 02223F20 */ cpu->r[11] = 0x10050000u;
|
|
/* 02223F24 */ cpu->r[10] = 0x00000001u;
|
|
/* 02223F28 */ cpu->r[12] = 0x101D0000u;
|
|
/* 02223F2C */ cpu->r[11] = cpu->r[11] + 0xFFFFD99Cu;
|
|
/* 02223F30 */ _t17 = cpu->r[12] + 0xFFFFD9ECu;
|
|
/* 02223F30 */ rbrew_write32(cpu->mem, _t17, cpu->r[10]);
|
|
/* 02223F34 */ _t18 = cpu->r[9] + 0x00000000u;
|
|
/* 02223F34 */ rbrew_write32(cpu->mem, _t18, cpu->r[11]);
|
|
L_02223F38: ; // 0x2223f38
|
|
/* 02223F38 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[9]);
|
|
/* 02223F3C */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02223F3C */ _t20 = _t19 & 0x00000001u;
|
|
/* 02223F3C */ if (_t20) goto L_02223F40; else goto L_02223F48;
|
|
L_02223F40: ; // 0x2223f40
|
|
/* 02223F40 */ cpu->r[0] = 0x00000001u;
|
|
/* 02223F44 */ goto L_02223FBC;
|
|
L_02223F48: ; // 0x2223f48
|
|
/* 02223F48 */ cpu->r[9] = 0x101D0000u;
|
|
/* 02223F4C */ _t21 = cpu->r[9] + 0xFFFFD4E8u;
|
|
/* 02223F4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02223F4C */ cpu->r[9] = _t21;
|
|
/* 02223F50 */ cpu->r[10] = 0x101D0000u;
|
|
/* 02223F54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02223F58 */ cpu->r[10] = cpu->r[10] + 0xFFFFD4ECu;
|
|
/* 02223F5C */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02223F5C */ _t23 = _t22 & 0x00000001u;
|
|
/* 02223F5C */ if (_t23) goto L_02223F60; else goto L_02223F74;
|
|
L_02223F60: ; // 0x2223f60
|
|
/* 02223F60 */ cpu->r[0] = 0x10050000u;
|
|
/* 02223F64 */ cpu->r[11] = 0x00000001u;
|
|
/* 02223F68 */ cpu->r[0] = cpu->r[0] + 0xFFFFD98Cu;
|
|
/* 02223F6C */ _t24 = cpu->r[9] + 0x00000000u;
|
|
/* 02223F6C */ rbrew_write32(cpu->mem, _t24, cpu->r[11]);
|
|
/* 02223F70 */ _t25 = cpu->r[10] + 0x00000000u;
|
|
/* 02223F70 */ rbrew_write32(cpu->mem, _t25, cpu->r[0]);
|
|
L_02223F74: ; // 0x2223f74
|
|
/* 02223F74 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]);
|
|
/* 02223F78 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02223F78 */ _t27 = _t26 & 0x00000001u;
|
|
/* 02223F78 */ if (_t27) goto L_02223F7C; else goto L_02223F84;
|
|
L_02223F7C: ; // 0x2223f7c
|
|
/* 02223F7C */ cpu->r[0] = 0x00000001u;
|
|
/* 02223F80 */ goto L_02223FBC;
|
|
L_02223F84: ; // 0x2223f84
|
|
/* 02223F84 */ cpu->r[10] = 0x101D0000u;
|
|
/* 02223F88 */ _t28 = cpu->r[10] + 0xFFFFD4E0u;
|
|
/* 02223F88 */ cpu->r[9] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02223F88 */ cpu->r[10] = _t28;
|
|
/* 02223F8C */ cpu->r[11] = 0x101D0000u;
|
|
/* 02223F90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02223F94 */ cpu->r[11] = cpu->r[11] + 0xFFFFD4E4u;
|
|
/* 02223F98 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02223F98 */ _t30 = _t29 & 0x00000001u;
|
|
/* 02223F98 */ if (_t30) goto L_02223F9C; else goto L_02223FB0;
|
|
L_02223F9C: ; // 0x2223f9c
|
|
/* 02223F9C */ cpu->r[9] = 0x10050000u;
|
|
/* 02223FA0 */ cpu->r[0] = 0x00000001u;
|
|
/* 02223FA4 */ cpu->r[9] = cpu->r[9] + 0xFFFFD97Cu;
|
|
/* 02223FA8 */ _t31 = cpu->r[10] + 0x00000000u;
|
|
/* 02223FA8 */ rbrew_write32(cpu->mem, _t31, cpu->r[0]);
|
|
/* 02223FAC */ _t32 = cpu->r[11] + 0x00000000u;
|
|
/* 02223FAC */ rbrew_write32(cpu->mem, _t32, cpu->r[9]);
|
|
L_02223FB0: ; // 0x2223fb0
|
|
/* 02223FB0 */ cpu->r[0] = cpu->r[4] ^ cpu->r[11];
|
|
/* 02223FB4 */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 02223FB8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
L_02223FBC: ; // 0x2223fbc
|
|
/* 02223FBC */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
L_02223FC0: ; // 0x2223fc0
|
|
/* 02223FC0 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 02223FC4 */ return;
|
|
}
|
|
|
|
// fn_02223FC8 @ 0x2223fc8
|
|
void Gambit_fn_02223FC8(CPUState* cpu) {
|
|
L_02223FC8: ; // 0x2223fc8
|
|
/* 02223FC8 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02223FCC */ return;
|
|
}
|
|
|
|
// fn_02223FD0 @ 0x2223fd0
|
|
void Gambit_fn_02223FD0(CPUState* cpu) {
|
|
L_02223FD0: ; // 0x2223fd0
|
|
/* 02223FD0 */ cpu->r[3] = cpu->r[3] + 0x00000128u;
|
|
/* 02223FD4 */ return;
|
|
}
|
|
|
|
// fn_02223FD8 @ 0x2223fd8
|
|
void Gambit_fn_02223FD8(CPUState* cpu) {
|
|
L_02223FD8: ; // 0x2223fd8
|
|
/* 02223FD8 */ cpu->r[3] = cpu->r[3] + 0x00000158u;
|
|
/* 02223FDC */ return;
|
|
}
|
|
|
|
// fn_02223FE0 @ 0x2223fe0
|
|
void Gambit_fn_02223FE0(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02223FE0: ; // 0x2223fe0
|
|
/* 02223FE0 */ cpu->r[12] = 0x10050000u;
|
|
/* 02223FE4 */ _t0 = cpu->r[12] + 0xFFFFD9E8u;
|
|
/* 02223FE4 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 02223FE8 */ return;
|
|
}
|
|
|
|
// fn_02223FEC @ 0x2223fec
|
|
void Gambit_fn_02223FEC(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02223FEC: ; // 0x2223fec
|
|
/* 02223FEC */ _t0 = cpu->r[3] + 0x000001A4u;
|
|
/* 02223FEC */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02223FF0 */ return;
|
|
}
|
|
|
|
// fn_02223FF4 @ 0x2223ff4
|
|
void Gambit_fn_02223FF4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _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_02223FF4: ; // 0x2223ff4
|
|
/* 02223FF4 */ cpu->r[0] = cpu->lr;
|
|
/* 02223FF8 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02223FF8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02223FF8 */ cpu->r[1] = _t0;
|
|
/* 02223FFC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02223FFC */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 02224000 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02224000 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 02224004 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02224004 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 02224008 */ _t4 = cpu->r[1] + 0x00000010u;
|
|
/* 02224008 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 0222400C */ cpu->r[31] = cpu->r[3];
|
|
/* 0222400C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02224010 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02224010 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02224014 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02224014 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02224014 */ if (_t7) goto L_02224018; else goto L_02224028;
|
|
L_02224018: ; // 0x2224018
|
|
/* 02224018 */ cpu->r[3] = 0x00000228u;
|
|
/* 0222401C */ Gambit_fn_02801A78(cpu);
|
|
/* 02224020 */ cpu->r[31] = cpu->r[3];
|
|
/* 02224020 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02224024 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02224024 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02224024 */ if (_t9) goto L_02224134; else goto L_02224028;
|
|
L_02224028: ; // 0x2224028
|
|
/* 02224028 */ cpu->r[3] = cpu->r[31];
|
|
/* 0222402C */ Gambit_fn_02228894(cpu);
|
|
/* 02224030 */ cpu->r[12] = 0x10050000u;
|
|
/* 02224034 */ cpu->r[30] = 0x00000000u;
|
|
/* 02224038 */ cpu->r[12] = cpu->r[12] + 0xFFFFDF1Cu;
|
|
/* 0222403C */ _t10 = cpu->r[31] + 0x00000128u;
|
|
/* 0222403C */ rbrew_write32(cpu->mem, _t10, cpu->r[30]);
|
|
/* 02224040 */ cpu->r[28] = cpu->r[31] + 0x0000012Cu;
|
|
/* 02224040 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 02224044 */ _t11 = cpu->r[31] + 0x00000004u;
|
|
/* 02224044 */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
/* 02224048 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02224048 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02224048 */ if (_t13) goto L_0222404C; else goto L_0222405C;
|
|
L_0222404C: ; // 0x222404c
|
|
/* 0222404C */ cpu->r[3] = 0x00000088u;
|
|
/* 02224050 */ Gambit_fn_02801A78(cpu);
|
|
/* 02224054 */ cpu->r[28] = cpu->r[3];
|
|
/* 02224054 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 02224058 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02224058 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02224058 */ if (_t15) goto L_022240B8; else goto L_0222405C;
|
|
L_0222405C: ; // 0x222405c
|
|
/* 0222405C */ cpu->r[5] = 0x0000000Cu;
|
|
/* 02224060 */ _t16 = cpu->r[28] + 0x00000000u;
|
|
/* 02224060 */ rbrew_write8(cpu->mem, _t16, (uint8_t)cpu->r[30]);
|
|
/* 02224064 */ cpu->r[29] = 0x02220000u;
|
|
/* 02224068 */ cpu->r[3] = cpu->r[28] + 0x00000008u;
|
|
/* 0222406C */ cpu->r[4] = 0x00000004u;
|
|
/* 02224070 */ cpu->r[6] = cpu->r[29] + 0x000056A0u;
|
|
/* 02224074 */ _t17 = cpu->r[28] + 0x00000004u;
|
|
/* 02224074 */ rbrew_write32(cpu->mem, _t17, cpu->r[30]);
|
|
/* 02224078 */ Gambit_fn_02C82E00(cpu);
|
|
/* 0222407C */ cpu->r[3] = cpu->r[28] + 0x00000038u;
|
|
/* 02224080 */ cpu->r[6] = cpu->r[29] + 0x000056A0u;
|
|
/* 02224084 */ cpu->r[4] = 0x00000004u;
|
|
/* 02224088 */ cpu->r[5] = 0x0000000Cu;
|
|
/* 0222408C */ Gambit_fn_02C82E00(cpu);
|
|
/* 02224090 */ cpu->r[4] = 0x00000004u;
|
|
/* 02224094 */ cpu->r[6] = 0x02220000u;
|
|
/* 02224098 */ cpu->r[3] = cpu->r[28] + 0x0000006Cu;
|
|
/* 0222409C */ cpu->r[5] = cpu->r[4];
|
|
/* 022240A0 */ cpu->r[6] = cpu->r[6] + 0x00005804u;
|
|
/* 022240A4 */ Gambit_fn_02C82E00(cpu);
|
|
/* 022240A8 */ cpu->r[7] = cpu->r[28] + 0x0000007Cu;
|
|
/* 022240A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 022240AC */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022240AC */ _t19 = _t18 & 0x00000001u;
|
|
/* 022240AC */ if (_t19) goto L_022240B0; else goto L_022240B8;
|
|
L_022240B0: ; // 0x22240b0
|
|
/* 022240B0 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 022240B4 */ Gambit_fn_02801A78(cpu);
|
|
L_022240B8: ; // 0x22240b8
|
|
/* 022240B8 */ cpu->r[8] = 0x00000003u;
|
|
/* 022240BC */ cpu->r[9] = cpu->r[31] + 0x000001B8u;
|
|
/* 022240BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 022240C0 */ _t20 = cpu->r[31] + 0x000001B4u;
|
|
/* 022240C0 */ rbrew_write32(cpu->mem, _t20, cpu->r[8]);
|
|
/* 022240C4 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022240C4 */ _t22 = _t21 & 0x00000001u;
|
|
/* 022240C4 */ if (_t22) goto L_022240C8; else goto L_022240D0;
|
|
L_022240C8: ; // 0x22240c8
|
|
/* 022240C8 */ cpu->r[3] = 0x00000008u;
|
|
/* 022240CC */ Gambit_fn_02801A78(cpu);
|
|
L_022240D0: ; // 0x22240d0
|
|
/* 022240D0 */ _t23 = cpu->r[31] + 0x000001C0u;
|
|
/* 022240D0 */ rbrew_write16(cpu->mem, _t23, (uint16_t)cpu->r[30]);
|
|
/* 022240D4 */ cpu->r[10] = cpu->r[31] + 0x000001C4u;
|
|
/* 022240D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 022240D8 */ _t24 = cpu->r[31] + 0x000001C2u;
|
|
/* 022240D8 */ rbrew_write16(cpu->mem, _t24, (uint16_t)cpu->r[30]);
|
|
/* 022240DC */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022240DC */ _t26 = _t25 & 0x00000001u;
|
|
/* 022240DC */ if (_t26) goto L_022240E0; else goto L_022240E8;
|
|
L_022240E0: ; // 0x22240e0
|
|
/* 022240E0 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 022240E4 */ Gambit_fn_02801A78(cpu);
|
|
L_022240E8: ; // 0x22240e8
|
|
/* 022240E8 */ cpu->r[11] = cpu->r[31] + 0x000001D0u;
|
|
/* 022240E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 022240EC */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022240EC */ _t28 = _t27 & 0x00000001u;
|
|
/* 022240EC */ if (_t28) goto L_022240F0; else goto L_022240F8;
|
|
L_022240F0: ; // 0x22240f0
|
|
/* 022240F0 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 022240F4 */ Gambit_fn_02801A78(cpu);
|
|
L_022240F8: ; // 0x22240f8
|
|
/* 022240F8 */ _t29 = cpu->r[31] + 0x000001DEu;
|
|
/* 022240F8 */ rbrew_write16(cpu->mem, _t29, (uint16_t)cpu->r[30]);
|
|
/* 022240FC */ cpu->r[6] = 0x10050000u;
|
|
/* 02224100 */ _t30 = cpu->r[31] + 0x000001DCu;
|
|
/* 02224100 */ rbrew_write8(cpu->mem, _t30, (uint8_t)cpu->r[30]);
|
|
/* 02224104 */ cpu->r[0] = cpu->r[31] + 0x000001ECu;
|
|
/* 02224104 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02224108 */ _t31 = cpu->r[31] + 0x000001E0u;
|
|
/* 02224108 */ rbrew_write8(cpu->mem, _t31, (uint8_t)cpu->r[30]);
|
|
/* 0222410C */ _t32 = cpu->r[6] + 0xFFFFDEF4u;
|
|
/* 0222410C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 02224110 */ _t33 = cpu->r[31] + 0x000001E4u;
|
|
/* 02224110 */ rbrew_write32(cpu->mem, _t33, cpu->r[30]);
|
|
/* 02224114 */ _t34 = cpu->r[31] + 0x000001E8u;
|
|
/* 02224114 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[0]);
|
|
/* 02224118 */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02224118 */ _t36 = _t35 & 0x00000001u;
|
|
/* 02224118 */ if (_t36) goto L_0222411C; else goto L_02224124;
|
|
L_0222411C: ; // 0x222411c
|
|
/* 0222411C */ cpu->r[3] = 0x00000030u;
|
|
/* 02224120 */ Gambit_fn_02801A78(cpu);
|
|
L_02224124: ; // 0x2224124
|
|
/* 02224124 */ cpu->r[0] = cpu->r[31] + 0x0000021Cu;
|
|
/* 02224124 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02224128 */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02224128 */ _t38 = _t37 & 0x00000001u;
|
|
/* 02224128 */ if (_t38) goto L_0222412C; else goto L_02224134;
|
|
L_0222412C: ; // 0x222412c
|
|
/* 0222412C */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02224130 */ Gambit_fn_02801A78(cpu);
|
|
L_02224134: ; // 0x2224134
|
|
/* 02224134 */ _t39 = cpu->r[1] + 0x00000008u;
|
|
/* 02224134 */ cpu->r[28] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02224138 */ _t40 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02224138 */ cpu->r[29] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0222413C */ _t41 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0222413C */ cpu->r[0] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02224140 */ cpu->r[3] = cpu->r[31];
|
|
/* 02224144 */ _t42 = cpu->r[1] + 0x00000010u;
|
|
/* 02224144 */ cpu->r[30] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02224148 */ cpu->lr = cpu->r[0];
|
|
/* 0222414C */ _t43 = cpu->r[1] + 0x00000014u;
|
|
/* 0222414C */ cpu->r[31] = rbrew_read32(cpu->mem, _t43);
|
|
/* 02224150 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02224154 */ return;
|
|
}
|
|
|
|
// fn_02223FF8 @ 0x2223ff8
|
|
void Gambit_fn_02223FF8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _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_02223FF8: ; // 0x2223ff8
|
|
/* 02223FF8 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02223FF8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02223FF8 */ cpu->r[1] = _t0;
|
|
/* 02223FFC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02223FFC */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 02224000 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02224000 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 02224004 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02224004 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 02224008 */ _t4 = cpu->r[1] + 0x00000010u;
|
|
/* 02224008 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 0222400C */ cpu->r[31] = cpu->r[3];
|
|
/* 0222400C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02224010 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02224010 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02224014 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02224014 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02224014 */ if (_t7) goto L_02224018; else goto L_02224028;
|
|
L_02224018: ; // 0x2224018
|
|
/* 02224018 */ cpu->r[3] = 0x00000228u;
|
|
/* 0222401C */ Gambit_fn_02801A78(cpu);
|
|
/* 02224020 */ cpu->r[31] = cpu->r[3];
|
|
/* 02224020 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02224024 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02224024 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02224024 */ if (_t9) goto L_02224134; else goto L_02224028;
|
|
L_02224028: ; // 0x2224028
|
|
/* 02224028 */ cpu->r[3] = cpu->r[31];
|
|
/* 0222402C */ Gambit_fn_02228894(cpu);
|
|
/* 02224030 */ cpu->r[12] = 0x10050000u;
|
|
/* 02224034 */ cpu->r[30] = 0x00000000u;
|
|
/* 02224038 */ cpu->r[12] = cpu->r[12] + 0xFFFFDF1Cu;
|
|
/* 0222403C */ _t10 = cpu->r[31] + 0x00000128u;
|
|
/* 0222403C */ rbrew_write32(cpu->mem, _t10, cpu->r[30]);
|
|
/* 02224040 */ cpu->r[28] = cpu->r[31] + 0x0000012Cu;
|
|
/* 02224040 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 02224044 */ _t11 = cpu->r[31] + 0x00000004u;
|
|
/* 02224044 */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
/* 02224048 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02224048 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02224048 */ if (_t13) goto L_0222404C; else goto L_0222405C;
|
|
L_0222404C: ; // 0x222404c
|
|
/* 0222404C */ cpu->r[3] = 0x00000088u;
|
|
/* 02224050 */ Gambit_fn_02801A78(cpu);
|
|
/* 02224054 */ cpu->r[28] = cpu->r[3];
|
|
/* 02224054 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 02224058 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02224058 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02224058 */ if (_t15) goto L_022240B8; else goto L_0222405C;
|
|
L_0222405C: ; // 0x222405c
|
|
/* 0222405C */ cpu->r[5] = 0x0000000Cu;
|
|
/* 02224060 */ _t16 = cpu->r[28] + 0x00000000u;
|
|
/* 02224060 */ rbrew_write8(cpu->mem, _t16, (uint8_t)cpu->r[30]);
|
|
/* 02224064 */ cpu->r[29] = 0x02220000u;
|
|
/* 02224068 */ cpu->r[3] = cpu->r[28] + 0x00000008u;
|
|
/* 0222406C */ cpu->r[4] = 0x00000004u;
|
|
/* 02224070 */ cpu->r[6] = cpu->r[29] + 0x000056A0u;
|
|
/* 02224074 */ _t17 = cpu->r[28] + 0x00000004u;
|
|
/* 02224074 */ rbrew_write32(cpu->mem, _t17, cpu->r[30]);
|
|
/* 02224078 */ Gambit_fn_02C82E00(cpu);
|
|
/* 0222407C */ cpu->r[3] = cpu->r[28] + 0x00000038u;
|
|
/* 02224080 */ cpu->r[6] = cpu->r[29] + 0x000056A0u;
|
|
/* 02224084 */ cpu->r[4] = 0x00000004u;
|
|
/* 02224088 */ cpu->r[5] = 0x0000000Cu;
|
|
/* 0222408C */ Gambit_fn_02C82E00(cpu);
|
|
/* 02224090 */ cpu->r[4] = 0x00000004u;
|
|
/* 02224094 */ cpu->r[6] = 0x02220000u;
|
|
/* 02224098 */ cpu->r[3] = cpu->r[28] + 0x0000006Cu;
|
|
/* 0222409C */ cpu->r[5] = cpu->r[4];
|
|
/* 022240A0 */ cpu->r[6] = cpu->r[6] + 0x00005804u;
|
|
/* 022240A4 */ Gambit_fn_02C82E00(cpu);
|
|
/* 022240A8 */ cpu->r[7] = cpu->r[28] + 0x0000007Cu;
|
|
/* 022240A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 022240AC */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022240AC */ _t19 = _t18 & 0x00000001u;
|
|
/* 022240AC */ if (_t19) goto L_022240B0; else goto L_022240B8;
|
|
L_022240B0: ; // 0x22240b0
|
|
/* 022240B0 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 022240B4 */ Gambit_fn_02801A78(cpu);
|
|
L_022240B8: ; // 0x22240b8
|
|
/* 022240B8 */ cpu->r[8] = 0x00000003u;
|
|
/* 022240BC */ cpu->r[9] = cpu->r[31] + 0x000001B8u;
|
|
/* 022240BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 022240C0 */ _t20 = cpu->r[31] + 0x000001B4u;
|
|
/* 022240C0 */ rbrew_write32(cpu->mem, _t20, cpu->r[8]);
|
|
/* 022240C4 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022240C4 */ _t22 = _t21 & 0x00000001u;
|
|
/* 022240C4 */ if (_t22) goto L_022240C8; else goto L_022240D0;
|
|
L_022240C8: ; // 0x22240c8
|
|
/* 022240C8 */ cpu->r[3] = 0x00000008u;
|
|
/* 022240CC */ Gambit_fn_02801A78(cpu);
|
|
L_022240D0: ; // 0x22240d0
|
|
/* 022240D0 */ _t23 = cpu->r[31] + 0x000001C0u;
|
|
/* 022240D0 */ rbrew_write16(cpu->mem, _t23, (uint16_t)cpu->r[30]);
|
|
/* 022240D4 */ cpu->r[10] = cpu->r[31] + 0x000001C4u;
|
|
/* 022240D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 022240D8 */ _t24 = cpu->r[31] + 0x000001C2u;
|
|
/* 022240D8 */ rbrew_write16(cpu->mem, _t24, (uint16_t)cpu->r[30]);
|
|
/* 022240DC */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022240DC */ _t26 = _t25 & 0x00000001u;
|
|
/* 022240DC */ if (_t26) goto L_022240E0; else goto L_022240E8;
|
|
L_022240E0: ; // 0x22240e0
|
|
/* 022240E0 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 022240E4 */ Gambit_fn_02801A78(cpu);
|
|
L_022240E8: ; // 0x22240e8
|
|
/* 022240E8 */ cpu->r[11] = cpu->r[31] + 0x000001D0u;
|
|
/* 022240E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 022240EC */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022240EC */ _t28 = _t27 & 0x00000001u;
|
|
/* 022240EC */ if (_t28) goto L_022240F0; else goto L_022240F8;
|
|
L_022240F0: ; // 0x22240f0
|
|
/* 022240F0 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 022240F4 */ Gambit_fn_02801A78(cpu);
|
|
L_022240F8: ; // 0x22240f8
|
|
/* 022240F8 */ _t29 = cpu->r[31] + 0x000001DEu;
|
|
/* 022240F8 */ rbrew_write16(cpu->mem, _t29, (uint16_t)cpu->r[30]);
|
|
/* 022240FC */ cpu->r[6] = 0x10050000u;
|
|
/* 02224100 */ _t30 = cpu->r[31] + 0x000001DCu;
|
|
/* 02224100 */ rbrew_write8(cpu->mem, _t30, (uint8_t)cpu->r[30]);
|
|
/* 02224104 */ cpu->r[0] = cpu->r[31] + 0x000001ECu;
|
|
/* 02224104 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02224108 */ _t31 = cpu->r[31] + 0x000001E0u;
|
|
/* 02224108 */ rbrew_write8(cpu->mem, _t31, (uint8_t)cpu->r[30]);
|
|
/* 0222410C */ _t32 = cpu->r[6] + 0xFFFFDEF4u;
|
|
/* 0222410C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 02224110 */ _t33 = cpu->r[31] + 0x000001E4u;
|
|
/* 02224110 */ rbrew_write32(cpu->mem, _t33, cpu->r[30]);
|
|
/* 02224114 */ _t34 = cpu->r[31] + 0x000001E8u;
|
|
/* 02224114 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[0]);
|
|
/* 02224118 */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02224118 */ _t36 = _t35 & 0x00000001u;
|
|
/* 02224118 */ if (_t36) goto L_0222411C; else goto L_02224124;
|
|
L_0222411C: ; // 0x222411c
|
|
/* 0222411C */ cpu->r[3] = 0x00000030u;
|
|
/* 02224120 */ Gambit_fn_02801A78(cpu);
|
|
L_02224124: ; // 0x2224124
|
|
/* 02224124 */ cpu->r[0] = cpu->r[31] + 0x0000021Cu;
|
|
/* 02224124 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02224128 */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02224128 */ _t38 = _t37 & 0x00000001u;
|
|
/* 02224128 */ if (_t38) goto L_0222412C; else goto L_02224134;
|
|
L_0222412C: ; // 0x222412c
|
|
/* 0222412C */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02224130 */ Gambit_fn_02801A78(cpu);
|
|
L_02224134: ; // 0x2224134
|
|
/* 02224134 */ _t39 = cpu->r[1] + 0x00000008u;
|
|
/* 02224134 */ cpu->r[28] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02224138 */ _t40 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02224138 */ cpu->r[29] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0222413C */ _t41 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0222413C */ cpu->r[0] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02224140 */ cpu->r[3] = cpu->r[31];
|
|
/* 02224144 */ _t42 = cpu->r[1] + 0x00000010u;
|
|
/* 02224144 */ cpu->r[30] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02224148 */ cpu->lr = cpu->r[0];
|
|
/* 0222414C */ _t43 = cpu->r[1] + 0x00000014u;
|
|
/* 0222414C */ cpu->r[31] = rbrew_read32(cpu->mem, _t43);
|
|
/* 02224150 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02224154 */ return;
|
|
}
|
|
|
|
// fn_02224158 @ 0x2224158
|
|
void Gambit_fn_02224158(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_02224158: ; // 0x2224158
|
|
/* 02224158 */ cpu->r[0] = cpu->lr;
|
|
/* 0222415C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0222415C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0222415C */ cpu->r[1] = _t0;
|
|
/* 02224160 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02224160 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02224164 */ cpu->r[31] = cpu->r[3];
|
|
/* 02224168 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0222416C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0222416C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02224170 */ _t3 = cpu->r[3] + 0x000054F4u;
|
|
/* 02224170 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02224174 */ _t4 = cpu->r[31] + 0x000001DEu;
|
|
/* 02224174 */ cpu->r[4] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t4);
|
|
/* 02224178 */ Gambit_fn_02227A30(cpu);
|
|
/* 0222417C */ cpu->r[3] = cpu->r[31];
|
|
/* 02224180 */ Gambit_fn_02790488(cpu);
|
|
/* 02224184 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 02224184 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02224188 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02224188 */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0222418C */ cpu->lr = cpu->r[0];
|
|
/* 02224190 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02224194 */ return;
|
|
}
|
|
|
|
// fn_0222415C @ 0x222415c
|
|
void Gambit_fn_0222415C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_0222415C: ; // 0x222415c
|
|
/* 0222415C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0222415C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0222415C */ cpu->r[1] = _t0;
|
|
/* 02224160 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02224160 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02224164 */ cpu->r[31] = cpu->r[3];
|
|
/* 02224168 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0222416C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0222416C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02224170 */ _t3 = cpu->r[3] + 0x000054F4u;
|
|
/* 02224170 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02224174 */ _t4 = cpu->r[31] + 0x000001DEu;
|
|
/* 02224174 */ cpu->r[4] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t4);
|
|
/* 02224178 */ Gambit_fn_02227A30(cpu);
|
|
/* 0222417C */ cpu->r[3] = cpu->r[31];
|
|
/* 02224180 */ Gambit_fn_02790488(cpu);
|
|
/* 02224184 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 02224184 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02224188 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02224188 */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0222418C */ cpu->lr = cpu->r[0];
|
|
/* 02224190 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02224194 */ return;
|
|
}
|
|
|
|
// fn_02224198 @ 0x2224198
|
|
void Gambit_fn_02224198(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t117, _t118, _t119, _t120, _t121, _t122, _t123, _t124, _t125, _t126, _t127, _t128, _t129, _t130, _t131, _t132, _t133, _t134, _t135, _t136, _t137, _t138, _t139, _t140, _t141, _t142, _t143, _t144, _t145, _t146, _t147, _t148, _t149, _t150, _t151, _t152, _t153, _t154, _t155, _t156, _t157, _t158, _t159, _t160, _t161, _t162, _t163, _t164, _t165, _t166, _t167, _t168, _t169, _t170, _t171, _t172, _t173, _t174, _t175, _t176, _t177, _t178, _t179, _t180, _t181, _t182, _t183;
|
|
|
|
L_02224198: ; // 0x2224198
|
|
/* 02224198 */ _t0 = cpu->r[1] + 0xFFFFFF18u;
|
|
/* 02224198 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02224198 */ cpu->r[1] = _t0;
|
|
/* 0222419C */ /* nop */
|
|
/* 022241A0 */ cpu->r[0] = cpu->lr;
|
|
/* 022241A4 */ _t1 = cpu->r[1] + 0x000000ECu;
|
|
/* 022241A4 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 022241A8 */ _t2 = cpu->r[1] + 0x000000D8u;
|
|
/* 022241A8 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 022241AC */ _t3 = cpu->r[1] + 0x000000C8u;
|
|
/* 022241AC */ rbrew_write_f64(cpu->mem, _t3, cpu->f[30]);
|
|
/* 022241B0 */ /* nop */
|
|
/* 022241B4 */ _t4 = cpu->r[1] + 0x000000F7u;
|
|
/* 022241B4 */ cpu->r[26] = rbrew_read8(cpu->mem, _t4);
|
|
/* 022241B8 */ /* nop */
|
|
/* 022241BC */ _t5 = cpu->r[1] + 0x000000E0u;
|
|
/* 022241BC */ rbrew_write_f32(cpu->mem, _t5, cpu->f[31]);
|
|
/* 022241C0 */ _t6 = cpu->r[1] + 0x000000B8u;
|
|
/* 022241C0 */ rbrew_write_f64(cpu->mem, _t6, cpu->f[29]);
|
|
/* 022241C4 */ _t7 = cpu->r[1] + 0x000000D0u;
|
|
/* 022241C4 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[30]);
|
|
/* 022241C8 */ /* nop */
|
|
/* 022241CC */ _t8 = cpu->r[1] + 0x000000C0u;
|
|
/* 022241CC */ rbrew_write_f32(cpu->mem, _t8, cpu->f[29]);
|
|
/* 022241D0 */ cpu->r[9] = 0x10050000u;
|
|
/* 022241D4 */ _t9 = cpu->r[1] + 0x00000100u;
|
|
/* 022241D4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022241D8 */ cpu->r[21] = cpu->r[5];
|
|
/* 022241DC */ cpu->r[22] = cpu->r[6];
|
|
/* 022241E0 */ _t10 = cpu->r[1] + 0x000000F0u;
|
|
/* 022241E0 */ cpu->r[25] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022241E4 */ cpu->r[20] = cpu->r[4];
|
|
/* 022241E8 */ cpu->r[31] = cpu->r[7];
|
|
/* 022241EC */ _t11 = cpu->r[1] + 0x000000FCu;
|
|
/* 022241EC */ cpu->r[28] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022241F0 */ cpu->r[30] = cpu->r[3];
|
|
/* 022241F4 */ cpu->r[23] = cpu->r[8];
|
|
/* 022241F8 */ _t12 = cpu->r[1] + 0x000000F8u;
|
|
/* 022241F8 */ cpu->r[27] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022241FC */ cpu->r[3] = cpu->r[1] + 0x00000074u;
|
|
/* 02224200 */ cpu->r[4] = cpu->r[25];
|
|
/* 02224204 */ _t13 = cpu->r[9] + 0xFFFFDEE0u;
|
|
/* 02224204 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 02224208 */ cpu->r[24] = cpu->r[10];
|
|
/* 0222420C */ Gambit_fn_028300A4(cpu);
|
|
/* 02224210 */ cpu->r[10] = 0x101F0000u;
|
|
/* 02224214 */ _t14 = cpu->r[27] + 0x00000000u;
|
|
/* 02224214 */ cpu->r[11] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02224218 */ cpu->r[8] = 0x10050000u;
|
|
/* 0222421C */ _t15 = cpu->r[10] + 0x00006338u;
|
|
/* 0222421C */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0222421C */ cpu->r[10] = _t15;
|
|
/* 02224220 */ _t16 = cpu->r[8] + 0xFFFFDEF8u;
|
|
/* 02224220 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 02224224 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 02224224 */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
/* 02224228 */ _t18 = cpu->r[1] + 0x00000024u;
|
|
/* 02224228 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[0]);
|
|
/* 0222422C */ cpu->r[6] = 0x10050000u;
|
|
/* 02224230 */ _t19 = cpu->r[31] + 0x00000008u;
|
|
/* 02224230 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 02224234 */ _t20 = cpu->r[6] + 0xFFFFDEE4u;
|
|
/* 02224234 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 02224238 */ _t21 = cpu->r[10] + 0x00000008u;
|
|
/* 02224238 */ cpu->r[6] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0222423C */ _t22 = cpu->r[10] + 0x00000004u;
|
|
/* 0222423C */ cpu->r[5] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02224240 */ _t23 = cpu->r[1] + 0x00000010u;
|
|
/* 02224240 */ rbrew_write32(cpu->mem, _t23, cpu->r[6]);
|
|
/* 02224244 */ _t24 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02224244 */ rbrew_write32(cpu->mem, _t24, cpu->r[22]);
|
|
/* 02224248 */ _t25 = cpu->r[31] + 0x00000000u;
|
|
/* 02224248 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 0222424C */ _t26 = cpu->r[1] + 0x00000034u;
|
|
/* 0222424C */ rbrew_write_f32(cpu->mem, _t26, cpu->f[31]);
|
|
/* 02224250 */ _t27 = cpu->r[1] + 0x00000008u;
|
|
/* 02224250 */ rbrew_write_f32(cpu->mem, _t27, cpu->f[0]);
|
|
/* 02224254 */ _t28 = cpu->r[1] + 0x00000048u;
|
|
/* 02224254 */ rbrew_write32(cpu->mem, _t28, cpu->r[21]);
|
|
/* 02224258 */ _t29 = cpu->r[1] + 0x00000010u;
|
|
/* 02224258 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[12]);
|
|
/* 0222425C */ _t30 = cpu->r[1] + 0x00000040u;
|
|
/* 0222425C */ rbrew_write32(cpu->mem, _t30, cpu->r[11]);
|
|
/* 02224260 */ _t31 = cpu->r[23] + 0x00000004u;
|
|
/* 02224260 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 02224264 */ cpu->r[11] = 0x10050000u;
|
|
/* 02224268 */ _t32 = cpu->r[1] + 0x00000018u;
|
|
/* 02224268 */ rbrew_write32(cpu->mem, _t32, cpu->r[5]);
|
|
/* 0222426C */ _t33 = cpu->r[11] + 0xFFFFDEFCu;
|
|
/* 0222426C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 02224270 */ cpu->r[9] = 0x10050000u;
|
|
/* 02224274 */ _t34 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02224274 */ rbrew_write32(cpu->mem, _t34, cpu->r[5]);
|
|
/* 02224278 */ _t35 = cpu->r[1] + 0x00000050u;
|
|
/* 02224278 */ rbrew_write32(cpu->mem, _t35, cpu->r[25]);
|
|
/* 0222427C */ _t36 = cpu->r[31] + 0x00000004u;
|
|
/* 0222427C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 02224280 */ _t37 = cpu->r[9] + 0xFFFFDF00u;
|
|
/* 02224280 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 02224284 */ cpu->f[0] = cpu->f[0] * cpu->f[13];
|
|
/* 02224288 */ _t38 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02224288 */ rbrew_write_f32(cpu->mem, _t38, cpu->f[9]);
|
|
/* 0222428C */ _t39 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0222428C */ rbrew_write_f32(cpu->mem, _t39, cpu->f[12]);
|
|
/* 02224290 */ cpu->r[10] = 0x10050000u;
|
|
/* 02224294 */ _t40 = cpu->r[1] + 0x00000018u;
|
|
/* 02224294 */ rbrew_write_f32(cpu->mem, _t40, cpu->f[0]);
|
|
/* 02224298 */ _t41 = cpu->r[10] + 0xFFFFDEDCu;
|
|
/* 02224298 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 0222429C */ _t42 = cpu->r[1] + 0x00000044u;
|
|
/* 0222429C */ rbrew_write8(cpu->mem, _t42, (uint8_t)cpu->r[24]);
|
|
/* 022242A0 */ cpu->r[24] = 0x00000000u;
|
|
/* 022242A4 */ _t43 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022242A4 */ rbrew_write32(cpu->mem, _t43, cpu->r[6]);
|
|
/* 022242A8 */ _t44 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022242A8 */ rbrew_write_f32(cpu->mem, _t44, cpu->f[30]);
|
|
/* 022242AC */ _t45 = cpu->r[1] + 0x00000058u;
|
|
/* 022242AC */ rbrew_write16(cpu->mem, _t45, (uint16_t)cpu->r[24]);
|
|
/* 022242B0 */ _t46 = cpu->r[1] + 0x00000014u;
|
|
/* 022242B0 */ rbrew_write_f32(cpu->mem, _t46, cpu->f[30]);
|
|
/* 022242B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000002u);
|
|
/* 022242B8 */ _t47 = cpu->r[1] + 0x00000054u;
|
|
/* 022242B8 */ rbrew_write32(cpu->mem, _t47, cpu->r[20]);
|
|
/* 022242BC */ _t48 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022242BC */ _t49 = _t48 & 0x00000001u;
|
|
/* 022242BC */ if (_t49) goto L_022242C0; else goto L_022242C8;
|
|
L_022242C0: ; // 0x22242c0
|
|
/* 022242C0 */ cpu->r[5] = 0x10050000u;
|
|
/* 022242C4 */ _t50 = cpu->r[5] + 0xFFFFDF04u;
|
|
/* 022242C4 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t50);
|
|
L_022242C8: ; // 0x22242c8
|
|
/* 022242C8 */ cpu->r[9] = 0x10050000u;
|
|
/* 022242CC */ _t51 = cpu->r[1] + 0x00000030u;
|
|
/* 022242CC */ rbrew_write_f32(cpu->mem, _t51, cpu->f[29]);
|
|
/* 022242D0 */ cpu->r[12] = 0x10050000u;
|
|
/* 022242D4 */ _t52 = cpu->r[9] + 0xFFFFDEECu;
|
|
/* 022242D4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 022242D8 */ cpu->r[4] = cpu->r[1] + 0x00000040u;
|
|
/* 022242DC */ _t53 = cpu->r[12] + 0xFFFFDEF4u;
|
|
/* 022242DC */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t53);
|
|
/* 022242E0 */ cpu->r[3] = cpu->r[30];
|
|
/* 022242E4 */ _t54 = cpu->r[1] + 0x00000020u;
|
|
/* 022242E4 */ rbrew_write_f32(cpu->mem, _t54, cpu->f[11]);
|
|
/* 022242E8 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 022242EC */ _t55 = cpu->r[1] + 0x00000028u;
|
|
/* 022242EC */ rbrew_write_f32(cpu->mem, _t55, cpu->f[29]);
|
|
/* 022242F0 */ Gambit_fn_0222A738(cpu);
|
|
/* 022242F4 */ cpu->r[25] = 0x101C0000u;
|
|
/* 022242F8 */ _t56 = cpu->r[25] + 0x000054F4u;
|
|
/* 022242F8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t56);
|
|
/* 022242F8 */ cpu->r[25] = _t56;
|
|
/* 022242FC */ cpu->r[4] = cpu->r[31];
|
|
/* 02224300 */ Gambit_fn_02227938(cpu);
|
|
/* 02224304 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02224308 */ _t57 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02224308 */ _t58 = _t57 & 0x00000001u;
|
|
/* 02224308 */ if (_t58) goto L_022243C8; else goto L_0222430C;
|
|
L_0222430C: ; // 0x222430c
|
|
/* 0222430C */ _t59 = cpu->r[30] + 0x00000030u;
|
|
/* 0222430C */ cpu->r[3] = rbrew_read32(cpu->mem, _t59);
|
|
/* 02224310 */ _t60 = cpu->r[3] + 0x000000E0u;
|
|
/* 02224310 */ cpu->r[10] = rbrew_read32(cpu->mem, _t60);
|
|
/* 02224314 */ _t61 = cpu->r[10] + 0x0000006Cu;
|
|
/* 02224314 */ cpu->r[11] = rbrew_read32(cpu->mem, _t61);
|
|
/* 02224318 */ cpu->ctr = cpu->r[11];
|
|
/* 0222431C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02224320 */ _t62 = cpu->r[27] + 0x00000000u;
|
|
/* 02224320 */ cpu->r[0] = rbrew_read32(cpu->mem, _t62);
|
|
/* 02224324 */ cpu->r[4] = cpu->r[31];
|
|
/* 02224328 */ _t63 = cpu->r[30] + 0x00000024u;
|
|
/* 02224328 */ cpu->r[6] = rbrew_read32(cpu->mem, _t63);
|
|
/* 0222432C */ _t64 = cpu->r[25] + 0x00000000u;
|
|
/* 0222432C */ cpu->r[3] = rbrew_read32(cpu->mem, _t64);
|
|
/* 02224330 */ cpu->r[5] = cpu->r[1] + 0x00000038u;
|
|
/* 02224334 */ _t65 = cpu->r[1] + 0x00000038u;
|
|
/* 02224334 */ rbrew_write32(cpu->mem, _t65, cpu->r[0]);
|
|
/* 02224338 */ Gambit_fn_02227AAC(cpu);
|
|
/* 0222433C */ _t66 = cpu->r[30] + 0x000001C2u;
|
|
/* 0222433C */ rbrew_write16(cpu->mem, _t66, (uint16_t)cpu->r[24]);
|
|
/* 02224340 */ _t67 = cpu->r[30] + 0x000001B4u;
|
|
/* 02224340 */ rbrew_write32(cpu->mem, _t67, cpu->r[28]);
|
|
/* 02224344 */ _t68 = cpu->r[30] + 0x000001C0u;
|
|
/* 02224344 */ rbrew_write16(cpu->mem, _t68, (uint16_t)cpu->r[24]);
|
|
/* 02224348 */ _t69 = cpu->r[30] + 0x000001DEu;
|
|
/* 02224348 */ rbrew_write16(cpu->mem, _t69, (uint16_t)cpu->r[3]);
|
|
/* 0222434C */ _t70 = cpu->r[30] + 0x000001DCu;
|
|
/* 0222434C */ rbrew_write8(cpu->mem, _t70, (uint8_t)cpu->r[24]);
|
|
/* 02224350 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02224354 */ _t71 = cpu->r[30] + 0x000001E8u;
|
|
/* 02224354 */ rbrew_write_f32(cpu->mem, _t71, cpu->f[29]);
|
|
/* 02224358 */ _t72 = cpu->r[3] + 0xFFFF9918u;
|
|
/* 02224358 */ cpu->r[3] = rbrew_read32(cpu->mem, _t72);
|
|
/* 0222435C */ Gambit_fn_02830138(cpu);
|
|
/* 02224360 */ cpu->r[7] = rbrew_rlwinm(cpu->r[3], 0x00000017u, 0x00000009u, 0x0000001Fu);
|
|
/* 02224364 */ cpu->r[0] = cpu->r[7] | 0x3F800000u;
|
|
/* 02224368 */ _t73 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02224368 */ rbrew_write32(cpu->mem, _t73, cpu->r[0]);
|
|
/* 0222436C */ _t74 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0222436C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t74);
|
|
/* 02224370 */ cpu->r[9] = 0x10050000u;
|
|
/* 02224374 */ cpu->f[11] = cpu->f[12] - cpu->f[31];
|
|
/* 02224378 */ _t75 = cpu->r[9] + 0xFFFFDF08u;
|
|
/* 02224378 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t75);
|
|
/* 0222437C */ cpu->f[31] = cpu->f[11] * cpu->f[10];
|
|
/* 02224380 */ cpu->f[1] = cpu->f[31];
|
|
/* 02224384 */ Gambit_fn_02C886F8(cpu);
|
|
/* 02224388 */ cpu->f[29] = cpu->f[1];
|
|
/* 0222438C */ cpu->f[1] = cpu->f[31];
|
|
/* 02224390 */ Gambit_fn_02C88F2C(cpu);
|
|
/* 02224394 */ _t76 = cpu->r[30] + 0x000001D8u;
|
|
/* 02224394 */ rbrew_write_f32(cpu->mem, _t76, cpu->f[30]);
|
|
/* 02224398 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0222439C */ _t77 = cpu->r[30] + 0x000001BCu;
|
|
/* 0222439C */ rbrew_write_f32(cpu->mem, _t77, cpu->f[1]);
|
|
/* 022243A0 */ _t78 = cpu->r[30] + 0x000001C4u;
|
|
/* 022243A0 */ rbrew_write_f32(cpu->mem, _t78, cpu->f[30]);
|
|
/* 022243A4 */ _t79 = cpu->r[30] + 0x000001E0u;
|
|
/* 022243A4 */ rbrew_write8(cpu->mem, _t79, (uint8_t)cpu->r[26]);
|
|
/* 022243A8 */ _t80 = cpu->r[30] + 0x000001CCu;
|
|
/* 022243A8 */ rbrew_write_f32(cpu->mem, _t80, cpu->f[30]);
|
|
/* 022243AC */ _t81 = cpu->r[30] + 0x000001E4u;
|
|
/* 022243AC */ rbrew_write32(cpu->mem, _t81, cpu->r[24]);
|
|
/* 022243B0 */ _t82 = cpu->r[30] + 0x000001D4u;
|
|
/* 022243B0 */ rbrew_write_f32(cpu->mem, _t82, cpu->f[30]);
|
|
/* 022243B4 */ _t83 = cpu->r[30] + 0x000001C8u;
|
|
/* 022243B4 */ rbrew_write_f32(cpu->mem, _t83, cpu->f[30]);
|
|
/* 022243B8 */ _t84 = cpu->r[30] + 0x000001B8u;
|
|
/* 022243B8 */ rbrew_write_f32(cpu->mem, _t84, cpu->f[29]);
|
|
/* 022243BC */ _t85 = cpu->r[30] + 0x000001D0u;
|
|
/* 022243BC */ rbrew_write_f32(cpu->mem, _t85, cpu->f[30]);
|
|
/* 022243C0 */ _t86 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022243C0 */ _t87 = _t86 & 0x00000001u;
|
|
/* 022243C0 */ if (_t87) goto L_02224500; else goto L_022243C4;
|
|
L_022243C4: ; // 0x22243c4
|
|
/* 022243C4 */ goto L_02224454;
|
|
L_022243C8: ; // 0x22243c8
|
|
/* 022243C8 */ cpu->r[3] = cpu->r[30];
|
|
/* 022243CC */ Gambit_fn_02790488(cpu);
|
|
/* 022243D0 */ _t88 = cpu->r[30] + 0x000001E8u;
|
|
/* 022243D0 */ rbrew_write_f32(cpu->mem, _t88, cpu->f[29]);
|
|
/* 022243D4 */ cpu->r[3] = 0x101D0000u;
|
|
/* 022243D8 */ _t89 = cpu->r[30] + 0x000001C0u;
|
|
/* 022243D8 */ rbrew_write16(cpu->mem, _t89, (uint16_t)cpu->r[24]);
|
|
/* 022243DC */ _t90 = cpu->r[30] + 0x000001DCu;
|
|
/* 022243DC */ rbrew_write8(cpu->mem, _t90, (uint8_t)cpu->r[24]);
|
|
/* 022243E0 */ _t91 = cpu->r[30] + 0x000001C2u;
|
|
/* 022243E0 */ rbrew_write16(cpu->mem, _t91, (uint16_t)cpu->r[24]);
|
|
/* 022243E4 */ _t92 = cpu->r[30] + 0x000001B4u;
|
|
/* 022243E4 */ rbrew_write32(cpu->mem, _t92, cpu->r[28]);
|
|
/* 022243E8 */ _t93 = cpu->r[3] + 0xFFFF9918u;
|
|
/* 022243E8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t93);
|
|
/* 022243EC */ Gambit_fn_02830138(cpu);
|
|
/* 022243F0 */ cpu->r[7] = rbrew_rlwinm(cpu->r[3], 0x00000017u, 0x00000009u, 0x0000001Fu);
|
|
/* 022243F4 */ cpu->r[0] = cpu->r[7] | 0x3F800000u;
|
|
/* 022243F8 */ _t94 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022243F8 */ rbrew_write32(cpu->mem, _t94, cpu->r[0]);
|
|
/* 022243FC */ _t95 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022243FC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t95);
|
|
/* 02224400 */ cpu->r[9] = 0x10050000u;
|
|
/* 02224404 */ cpu->f[11] = cpu->f[12] - cpu->f[31];
|
|
/* 02224408 */ _t96 = cpu->r[9] + 0xFFFFDF08u;
|
|
/* 02224408 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t96);
|
|
/* 0222440C */ cpu->f[31] = cpu->f[11] * cpu->f[10];
|
|
/* 02224410 */ cpu->f[1] = cpu->f[31];
|
|
/* 02224414 */ Gambit_fn_02C886F8(cpu);
|
|
/* 02224418 */ cpu->f[29] = cpu->f[1];
|
|
/* 0222441C */ cpu->f[1] = cpu->f[31];
|
|
/* 02224420 */ Gambit_fn_02C88F2C(cpu);
|
|
/* 02224424 */ _t97 = cpu->r[30] + 0x000001D8u;
|
|
/* 02224424 */ rbrew_write_f32(cpu->mem, _t97, cpu->f[30]);
|
|
/* 02224428 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0222442C */ _t98 = cpu->r[30] + 0x000001BCu;
|
|
/* 0222442C */ rbrew_write_f32(cpu->mem, _t98, cpu->f[1]);
|
|
/* 02224430 */ _t99 = cpu->r[30] + 0x000001C4u;
|
|
/* 02224430 */ rbrew_write_f32(cpu->mem, _t99, cpu->f[30]);
|
|
/* 02224434 */ _t100 = cpu->r[30] + 0x000001E0u;
|
|
/* 02224434 */ rbrew_write8(cpu->mem, _t100, (uint8_t)cpu->r[26]);
|
|
/* 02224438 */ _t101 = cpu->r[30] + 0x000001C8u;
|
|
/* 02224438 */ rbrew_write_f32(cpu->mem, _t101, cpu->f[30]);
|
|
/* 0222443C */ _t102 = cpu->r[30] + 0x000001E4u;
|
|
/* 0222443C */ rbrew_write32(cpu->mem, _t102, cpu->r[24]);
|
|
/* 02224440 */ _t103 = cpu->r[30] + 0x000001D4u;
|
|
/* 02224440 */ rbrew_write_f32(cpu->mem, _t103, cpu->f[30]);
|
|
/* 02224444 */ _t104 = cpu->r[30] + 0x000001CCu;
|
|
/* 02224444 */ rbrew_write_f32(cpu->mem, _t104, cpu->f[30]);
|
|
/* 02224448 */ _t105 = cpu->r[30] + 0x000001D0u;
|
|
/* 02224448 */ rbrew_write_f32(cpu->mem, _t105, cpu->f[30]);
|
|
/* 0222444C */ _t106 = cpu->r[30] + 0x000001B8u;
|
|
/* 0222444C */ rbrew_write_f32(cpu->mem, _t106, cpu->f[29]);
|
|
/* 02224450 */ _t107 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02224450 */ _t108 = _t107 & 0x00000001u;
|
|
/* 02224450 */ if (_t108) goto L_02224500; else goto L_02224454;
|
|
L_02224454: ; // 0x2224454
|
|
/* 02224454 */ cpu->r[0] = 0x00000001u;
|
|
/* 02224458 */ _t109 = cpu->r[30] + 0x000001E4u;
|
|
/* 02224458 */ rbrew_write32(cpu->mem, _t109, cpu->r[29]);
|
|
/* 0222445C */ _t110 = cpu->r[30] + 0x000001DCu;
|
|
/* 0222445C */ rbrew_write8(cpu->mem, _t110, (uint8_t)cpu->r[0]);
|
|
/* 02224460 */ _t111 = cpu->r[29] + 0x00000004u;
|
|
/* 02224460 */ cpu->r[10] = rbrew_read32(cpu->mem, _t111);
|
|
/* 02224464 */ _t112 = cpu->r[31] + 0x00000008u;
|
|
/* 02224464 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t112);
|
|
/* 02224468 */ _t113 = cpu->r[10] + 0x0000002Cu;
|
|
/* 02224468 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t113);
|
|
/* 0222446C */ /* nop */
|
|
/* 02224470 */ cpu->f[6] = cpu->f[8] - cpu->f[9];
|
|
/* 02224474 */ /* nop */
|
|
/* 02224478 */ _t114 = cpu->r[1] + 0x00000064u;
|
|
/* 02224478 */ rbrew_write_f32(cpu->mem, _t114, cpu->f[6]);
|
|
/* 0222447C */ /* nop */
|
|
/* 02224480 */ /* nop */
|
|
/* 02224484 */ /* nop */
|
|
/* 02224488 */ /* nop */
|
|
/* 0222448C */ /* nop */
|
|
/* 02224490 */ cpu->f[13] = cpu->f[12];
|
|
/* 02224494 */ /* nop */
|
|
/* 02224498 */ /* nop */
|
|
/* 0222449C */ /* nop */
|
|
/* 022244A0 */ _t115 = cpu->r[10] + 0x00000008u;
|
|
/* 022244A0 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t115);
|
|
/* 022244A4 */ cpu->f[9] = cpu->f[11];
|
|
/* 022244A8 */ _t116 = cpu->r[10] + 0x00000014u;
|
|
/* 022244A8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t116);
|
|
/* 022244AC */ cpu->f[13] = fma(cpu->f[6], cpu->f[8], cpu->f[13]);
|
|
/* 022244B0 */ /* nop */
|
|
/* 022244B4 */ /* nop */
|
|
/* 022244B8 */ _t117 = cpu->r[10] + 0x00000020u;
|
|
/* 022244B8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t117);
|
|
/* 022244BC */ cpu->f[9] = fma(cpu->f[6], cpu->f[11], cpu->f[9]);
|
|
/* 022244C0 */ _t118 = cpu->r[30] + 0x000001D0u;
|
|
/* 022244C0 */ rbrew_write_f32(cpu->mem, _t118, cpu->f[13]);
|
|
/* 022244C4 */ cpu->f[11] = fma(cpu->f[6], cpu->f[12], cpu->f[8]);
|
|
/* 022244C8 */ _t119 = cpu->r[30] + 0x000001D4u;
|
|
/* 022244C8 */ rbrew_write_f32(cpu->mem, _t119, cpu->f[9]);
|
|
/* 022244CC */ _t120 = cpu->r[30] + 0x000001D8u;
|
|
/* 022244CC */ rbrew_write_f32(cpu->mem, _t120, cpu->f[11]);
|
|
/* 022244D0 */ /* nop */
|
|
/* 022244D4 */ _t121 = cpu->r[1] + 0x000000C0u;
|
|
/* 022244D4 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t121);
|
|
/* 022244D8 */ _t122 = cpu->r[1] + 0x000000D0u;
|
|
/* 022244D8 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t122);
|
|
/* 022244DC */ _t123 = cpu->r[1] + 0x000000B8u;
|
|
/* 022244DC */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t123);
|
|
/* 022244E0 */ _t124 = cpu->r[1] + 0x000000E0u;
|
|
/* 022244E0 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t124);
|
|
/* 022244E4 */ _t125 = cpu->r[1] + 0x000000C8u;
|
|
/* 022244E4 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t125);
|
|
/* 022244E8 */ _t126 = cpu->r[1] + 0x000000D8u;
|
|
/* 022244E8 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t126);
|
|
/* 022244EC */ _t127 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022244EC */ _t128 = _t127 & 0x00000001u;
|
|
/* 022244EC */ if (_t128) goto L_022244F0; // else: addr-0 trap, fall-through
|
|
L_022244F0: ; // 0x22244f0
|
|
/* 022244F0 */ _t129 = cpu->r[1] + 0x000000ECu;
|
|
/* 022244F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t129);
|
|
/* 022244F4 */ cpu->lr = cpu->r[0];
|
|
/* 022244F8 */ cpu->r[1] = cpu->r[1] + 0x000000E8u;
|
|
/* 022244FC */ return;
|
|
L_02224500: ; // 0x2224500
|
|
/* 02224500 */ cpu->r[12] = 0x101C0000u;
|
|
/* 02224504 */ _t130 = cpu->r[12] + 0x000060F4u;
|
|
/* 02224504 */ cpu->r[12] = rbrew_read32(cpu->mem, _t130);
|
|
/* 02224508 */ cpu->r[8] = cpu->r[12] + 0x00080000u;
|
|
/* 0222450C */ _t131 = cpu->r[30] + 0x000001E0u;
|
|
/* 0222450C */ cpu->r[4] = rbrew_read8(cpu->mem, _t131);
|
|
/* 02224510 */ _t132 = cpu->r[8] + 0xFFFFCEDCu;
|
|
/* 02224510 */ cpu->r[3] = rbrew_read32(cpu->mem, _t132);
|
|
/* 02224514 */ Gambit_fn_023E4380(cpu);
|
|
/* 02224518 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0222451C */ _t133 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222451C */ _t134 = _t133 & 0x00000001u;
|
|
/* 0222451C */ if (_t134) goto L_022245C8; else goto L_02224520;
|
|
L_02224520: ; // 0x2224520
|
|
/* 02224520 */ cpu->r[0] = 0x00000001u;
|
|
/* 02224524 */ _t135 = cpu->r[30] + 0x000001DCu;
|
|
/* 02224524 */ rbrew_write8(cpu->mem, _t135, (uint8_t)cpu->r[0]);
|
|
/* 02224528 */ _t136 = cpu->r[3] + 0x00000EF0u;
|
|
/* 02224528 */ cpu->r[7] = rbrew_read32(cpu->mem, _t136);
|
|
/* 0222452C */ _t137 = cpu->r[30] + 0x000001E4u;
|
|
/* 0222452C */ rbrew_write32(cpu->mem, _t137, cpu->r[7]);
|
|
/* 02224530 */ _t138 = cpu->r[7] + 0x00000004u;
|
|
/* 02224530 */ cpu->r[10] = rbrew_read32(cpu->mem, _t138);
|
|
/* 02224534 */ _t139 = cpu->r[10] + 0x0000002Cu;
|
|
/* 02224534 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t139);
|
|
/* 02224538 */ _t140 = cpu->r[31] + 0x00000008u;
|
|
/* 02224538 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t140);
|
|
/* 0222453C */ /* nop */
|
|
/* 02224540 */ cpu->f[7] = cpu->f[13] - cpu->f[8];
|
|
/* 02224544 */ /* nop */
|
|
/* 02224548 */ _t141 = cpu->r[1] + 0x00000070u;
|
|
/* 02224548 */ rbrew_write_f32(cpu->mem, _t141, cpu->f[7]);
|
|
/* 0222454C */ /* nop */
|
|
/* 02224550 */ /* nop */
|
|
/* 02224554 */ /* nop */
|
|
/* 02224558 */ /* nop */
|
|
/* 0222455C */ /* nop */
|
|
/* 02224560 */ /* nop */
|
|
/* 02224564 */ /* nop */
|
|
/* 02224568 */ /* nop */
|
|
/* 0222456C */ /* nop */
|
|
/* 02224570 */ _t142 = cpu->r[10] + 0x00000008u;
|
|
/* 02224570 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t142);
|
|
/* 02224574 */ /* nop */
|
|
/* 02224578 */ cpu->f[10] = fma(cpu->f[7], cpu->f[9], cpu->f[12]);
|
|
/* 0222457C */ _t143 = cpu->r[10] + 0x00000014u;
|
|
/* 0222457C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t143);
|
|
/* 02224580 */ _t144 = cpu->r[10] + 0x00000020u;
|
|
/* 02224580 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t144);
|
|
/* 02224584 */ cpu->f[13] = fma(cpu->f[7], cpu->f[9], cpu->f[13]);
|
|
/* 02224588 */ _t145 = cpu->r[30] + 0x000001D0u;
|
|
/* 02224588 */ rbrew_write_f32(cpu->mem, _t145, cpu->f[10]);
|
|
/* 0222458C */ cpu->f[8] = fma(cpu->f[7], cpu->f[12], cpu->f[8]);
|
|
/* 02224590 */ _t146 = cpu->r[30] + 0x000001D4u;
|
|
/* 02224590 */ rbrew_write_f32(cpu->mem, _t146, cpu->f[13]);
|
|
/* 02224594 */ _t147 = cpu->r[30] + 0x000001D8u;
|
|
/* 02224594 */ rbrew_write_f32(cpu->mem, _t147, cpu->f[8]);
|
|
/* 02224598 */ /* nop */
|
|
/* 0222459C */ _t148 = cpu->r[1] + 0x000000C0u;
|
|
/* 0222459C */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t148);
|
|
/* 022245A0 */ _t149 = cpu->r[1] + 0x000000D0u;
|
|
/* 022245A0 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t149);
|
|
/* 022245A4 */ _t150 = cpu->r[1] + 0x000000B8u;
|
|
/* 022245A4 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t150);
|
|
/* 022245A8 */ _t151 = cpu->r[1] + 0x000000E0u;
|
|
/* 022245A8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t151);
|
|
/* 022245AC */ _t152 = cpu->r[1] + 0x000000C8u;
|
|
/* 022245AC */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t152);
|
|
/* 022245B0 */ _t153 = cpu->r[1] + 0x000000D8u;
|
|
/* 022245B0 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t153);
|
|
/* 022245B4 */ _t154 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022245B4 */ _t155 = _t154 & 0x00000001u;
|
|
/* 022245B4 */ if (_t155) goto L_022245B8; // else: addr-0 trap, fall-through
|
|
L_022245B8: ; // 0x22245b8
|
|
/* 022245B8 */ _t156 = cpu->r[1] + 0x000000ECu;
|
|
/* 022245B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t156);
|
|
/* 022245BC */ cpu->lr = cpu->r[0];
|
|
/* 022245C0 */ cpu->r[1] = cpu->r[1] + 0x000000E8u;
|
|
/* 022245C4 */ return;
|
|
L_022245C8: ; // 0x22245c8
|
|
/* 022245C8 */ _t157 = cpu->r[30] + 0x000001E0u;
|
|
/* 022245C8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t157);
|
|
/* 022245CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x000000FEu);
|
|
/* 022245D0 */ _t158 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022245D0 */ _t159 = _t158 & 0x00000001u;
|
|
/* 022245D0 */ if (_t159) goto L_022245D4; else goto L_0222461C;
|
|
L_022245D4: ; // 0x22245d4
|
|
/* 022245D4 */ _t160 = cpu->r[31] + 0x00000000u;
|
|
/* 022245D4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t160);
|
|
/* 022245D8 */ _t161 = cpu->r[30] + 0x000001C4u;
|
|
/* 022245D8 */ rbrew_write_f32(cpu->mem, _t161, cpu->f[8]);
|
|
/* 022245DC */ _t162 = cpu->r[31] + 0x00000004u;
|
|
/* 022245DC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t162);
|
|
/* 022245E0 */ _t163 = cpu->r[30] + 0x000001C8u;
|
|
/* 022245E0 */ rbrew_write_f32(cpu->mem, _t163, cpu->f[9]);
|
|
/* 022245E4 */ _t164 = cpu->r[31] + 0x00000008u;
|
|
/* 022245E4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t164);
|
|
/* 022245E8 */ _t165 = cpu->r[30] + 0x000001CCu;
|
|
/* 022245E8 */ rbrew_write_f32(cpu->mem, _t165, cpu->f[10]);
|
|
/* 022245EC */ /* nop */
|
|
/* 022245F0 */ _t166 = cpu->r[1] + 0x000000C0u;
|
|
/* 022245F0 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t166);
|
|
/* 022245F4 */ _t167 = cpu->r[1] + 0x000000D0u;
|
|
/* 022245F4 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t167);
|
|
/* 022245F8 */ _t168 = cpu->r[1] + 0x000000B8u;
|
|
/* 022245F8 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t168);
|
|
/* 022245FC */ _t169 = cpu->r[1] + 0x000000E0u;
|
|
/* 022245FC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t169);
|
|
/* 02224600 */ _t170 = cpu->r[1] + 0x000000C8u;
|
|
/* 02224600 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t170);
|
|
/* 02224604 */ _t171 = cpu->r[1] + 0x000000D8u;
|
|
/* 02224604 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t171);
|
|
/* 02224608 */ _t172 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02224608 */ _t173 = _t172 & 0x00000001u;
|
|
/* 02224608 */ if (_t173) goto L_0222460C; // else: addr-0 trap, fall-through
|
|
L_0222460C: ; // 0x222460c
|
|
/* 0222460C */ _t174 = cpu->r[1] + 0x000000ECu;
|
|
/* 0222460C */ cpu->r[0] = rbrew_read32(cpu->mem, _t174);
|
|
/* 02224610 */ cpu->lr = cpu->r[0];
|
|
/* 02224614 */ cpu->r[1] = cpu->r[1] + 0x000000E8u;
|
|
/* 02224618 */ return;
|
|
L_0222461C: ; // 0x222461c
|
|
/* 0222461C */ cpu->r[3] = cpu->r[30];
|
|
/* 02224620 */ Gambit_fn_02224158(cpu);
|
|
/* 02224624 */ /* nop */
|
|
/* 02224628 */ _t175 = cpu->r[1] + 0x000000C0u;
|
|
/* 02224628 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t175);
|
|
/* 0222462C */ _t176 = cpu->r[1] + 0x000000D0u;
|
|
/* 0222462C */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t176);
|
|
/* 02224630 */ _t177 = cpu->r[1] + 0x000000B8u;
|
|
/* 02224630 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t177);
|
|
/* 02224634 */ _t178 = cpu->r[1] + 0x000000E0u;
|
|
/* 02224634 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t178);
|
|
/* 02224638 */ _t179 = cpu->r[1] + 0x000000C8u;
|
|
/* 02224638 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t179);
|
|
/* 0222463C */ _t180 = cpu->r[1] + 0x000000D8u;
|
|
/* 0222463C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t180);
|
|
/* 02224640 */ _t181 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02224640 */ _t182 = _t181 & 0x00000001u;
|
|
/* 02224640 */ if (_t182) goto L_02224644; // else: addr-0 trap, fall-through
|
|
L_02224644: ; // 0x2224644
|
|
/* 02224644 */ _t183 = cpu->r[1] + 0x000000ECu;
|
|
/* 02224644 */ cpu->r[0] = rbrew_read32(cpu->mem, _t183);
|
|
/* 02224648 */ cpu->lr = cpu->r[0];
|
|
/* 0222464C */ cpu->r[1] = cpu->r[1] + 0x000000E8u;
|
|
/* 02224650 */ return;
|
|
}
|
|
|
|
// fn_02224654 @ 0x2224654
|
|
void Gambit_fn_02224654(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_02224654: ; // 0x2224654
|
|
/* 02224654 */ _t0 = cpu->r[4] + 0x00000002u;
|
|
/* 02224654 */ cpu->r[11] = rbrew_read16(cpu->mem, _t0);
|
|
/* 02224658 */ _t1 = cpu->r[3] + 0x00000064u;
|
|
/* 02224658 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t1);
|
|
/* 0222465C */ cpu->r[11] = cpu->r[11] | 0x0000FE00u;
|
|
/* 02224660 */ _t2 = cpu->r[4] + 0x00000000u;
|
|
/* 02224660 */ rbrew_write16(cpu->mem, _t2, (uint16_t)cpu->r[10]);
|
|
/* 02224664 */ cpu->r[12] = cpu->r[11] & 0x0000FEFFu;
|
|
/* 02224664 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02224668 */ cpu->r[0] = 0x00000000u;
|
|
/* 0222466C */ _t3 = cpu->r[4] + 0x00000002u;
|
|
/* 0222466C */ rbrew_write16(cpu->mem, _t3, (uint16_t)cpu->r[12]);
|
|
/* 02224670 */ _t4 = cpu->r[4] + 0x00000003u;
|
|
/* 02224670 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[0]);
|
|
/* 02224674 */ return;
|
|
}
|
|
|
|
// fn_02224678 @ 0x2224678
|
|
void Gambit_fn_02224678(CPUState* cpu) {
|
|
L_02224678: ; // 0x2224678
|
|
/* 02224678 */ return;
|
|
}
|
|
|
|
// fn_0222467C @ 0x222467c
|
|
void Gambit_fn_0222467C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_0222467C: ; // 0x222467c
|
|
/* 0222467C */ cpu->r[0] = cpu->lr;
|
|
/* 02224680 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02224680 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02224680 */ cpu->r[1] = _t0;
|
|
/* 02224684 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02224684 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02224688 */ cpu->r[31] = cpu->r[3];
|
|
/* 0222468C */ cpu->r[3] = 0x101C0000u;
|
|
/* 02224690 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02224690 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02224694 */ _t3 = cpu->r[3] + 0x00006000u;
|
|
/* 02224694 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02224698 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 02224698 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0222469C */ _t5 = cpu->r[12] + 0x00000154u;
|
|
/* 0222469C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022246A0 */ cpu->ctr = cpu->r[0];
|
|
/* 022246A4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022246A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000004u);
|
|
/* 022246AC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022246AC */ _t7 = _t6 & 0x00000001u;
|
|
/* 022246AC */ if (_t7) goto L_022246B0; else goto L_022246B8;
|
|
L_022246B0: ; // 0x22246b0
|
|
/* 022246B0 */ cpu->r[3] = cpu->r[31];
|
|
/* 022246B4 */ Gambit_fn_02224158(cpu);
|
|
L_022246B8: ; // 0x22246b8
|
|
/* 022246B8 */ cpu->r[3] = cpu->r[31];
|
|
/* 022246BC */ Gambit_fn_0222DADC(cpu);
|
|
/* 022246C0 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 022246C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022246C4 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022246C4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022246C8 */ cpu->lr = cpu->r[0];
|
|
/* 022246CC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022246D0 */ return;
|
|
}
|
|
|
|
// fn_02224680 @ 0x2224680
|
|
void Gambit_fn_02224680(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_02224680: ; // 0x2224680
|
|
/* 02224680 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02224680 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02224680 */ cpu->r[1] = _t0;
|
|
/* 02224684 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02224684 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02224688 */ cpu->r[31] = cpu->r[3];
|
|
/* 0222468C */ cpu->r[3] = 0x101C0000u;
|
|
/* 02224690 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02224690 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02224694 */ _t3 = cpu->r[3] + 0x00006000u;
|
|
/* 02224694 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02224698 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 02224698 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0222469C */ _t5 = cpu->r[12] + 0x00000154u;
|
|
/* 0222469C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022246A0 */ cpu->ctr = cpu->r[0];
|
|
/* 022246A4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022246A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000004u);
|
|
/* 022246AC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022246AC */ _t7 = _t6 & 0x00000001u;
|
|
/* 022246AC */ if (_t7) goto L_022246B0; else goto L_022246B8;
|
|
L_022246B0: ; // 0x22246b0
|
|
/* 022246B0 */ cpu->r[3] = cpu->r[31];
|
|
/* 022246B4 */ Gambit_fn_02224158(cpu);
|
|
L_022246B8: ; // 0x22246b8
|
|
/* 022246B8 */ cpu->r[3] = cpu->r[31];
|
|
/* 022246BC */ Gambit_fn_0222DADC(cpu);
|
|
/* 022246C0 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 022246C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022246C4 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022246C4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022246C8 */ cpu->lr = cpu->r[0];
|
|
/* 022246CC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022246D0 */ return;
|
|
}
|
|
|
|
// fn_022246D4 @ 0x22246d4
|
|
void Gambit_fn_022246D4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_022246D4: ; // 0x22246d4
|
|
/* 022246D4 */ cpu->r[0] = cpu->lr;
|
|
/* 022246D8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022246D8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022246D8 */ cpu->r[1] = _t0;
|
|
/* 022246DC */ cpu->r[12] = 0x10050000u;
|
|
/* 022246E0 */ _t1 = cpu->r[12] + 0xFFFFDF0Cu;
|
|
/* 022246E0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 022246E4 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022246E4 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022246E8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022246E8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022246EC */ _t4 = cpu->r[3] + 0x000000E0u;
|
|
/* 022246EC */ rbrew_write_f32(cpu->mem, _t4, cpu->f[0]);
|
|
/* 022246F0 */ cpu->r[31] = cpu->r[3];
|
|
/* 022246F4 */ _t5 = cpu->r[3] + 0x000000DCu;
|
|
/* 022246F4 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[0]);
|
|
/* 022246F8 */ Gambit_fn_0222C128(cpu);
|
|
/* 022246FC */ cpu->r[3] = cpu->r[31];
|
|
/* 02224700 */ Gambit_fn_0222467C(cpu);
|
|
/* 02224704 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02224704 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02224708 */ cpu->lr = cpu->r[0];
|
|
/* 0222470C */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222470C */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02224710 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02224714 */ return;
|
|
}
|
|
|
|
// fn_022246D8 @ 0x22246d8
|
|
void Gambit_fn_022246D8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_022246D8: ; // 0x22246d8
|
|
/* 022246D8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022246D8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022246D8 */ cpu->r[1] = _t0;
|
|
/* 022246DC */ cpu->r[12] = 0x10050000u;
|
|
/* 022246E0 */ _t1 = cpu->r[12] + 0xFFFFDF0Cu;
|
|
/* 022246E0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 022246E4 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022246E4 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022246E8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022246E8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022246EC */ _t4 = cpu->r[3] + 0x000000E0u;
|
|
/* 022246EC */ rbrew_write_f32(cpu->mem, _t4, cpu->f[0]);
|
|
/* 022246F0 */ cpu->r[31] = cpu->r[3];
|
|
/* 022246F4 */ _t5 = cpu->r[3] + 0x000000DCu;
|
|
/* 022246F4 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[0]);
|
|
/* 022246F8 */ Gambit_fn_0222C128(cpu);
|
|
/* 022246FC */ cpu->r[3] = cpu->r[31];
|
|
/* 02224700 */ Gambit_fn_0222467C(cpu);
|
|
/* 02224704 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02224704 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02224708 */ cpu->lr = cpu->r[0];
|
|
/* 0222470C */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222470C */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02224710 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02224714 */ return;
|
|
}
|
|
|
|
// fn_02224718 @ 0x2224718
|
|
void Gambit_fn_02224718(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46;
|
|
double _ft20, _ft21;
|
|
|
|
L_02224718: ; // 0x2224718
|
|
/* 02224718 */ cpu->r[0] = cpu->lr;
|
|
/* 0222471C */ _t0 = cpu->r[1] + 0xFFFFFF88u;
|
|
/* 0222471C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0222471C */ cpu->r[1] = _t0;
|
|
/* 02224720 */ _t1 = cpu->r[1] + 0x00000074u;
|
|
/* 02224720 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02224724 */ cpu->r[31] = cpu->r[3];
|
|
/* 02224728 */ _t2 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02224728 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0222472C */ _t3 = cpu->r[31] + 0x000000FCu;
|
|
/* 0222472C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 02224730 */ _t4 = cpu->r[31] + 0x00000100u;
|
|
/* 02224730 */ cpu->f[2] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 02224734 */ _t5 = cpu->r[31] + 0x00000104u;
|
|
/* 02224734 */ cpu->f[3] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 02224738 */ cpu->r[3] = cpu->r[1] + 0x00000044u;
|
|
/* 0222473C */ Gambit_fn_02C69840(cpu);
|
|
/* 02224740 */ _t6 = cpu->r[31] + 0x000001B0u;
|
|
/* 02224740 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02224744 */ _t7 = cpu->r[31] + 0x000001ACu;
|
|
/* 02224744 */ cpu->r[10] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02224748 */ _t8 = cpu->r[1] + 0x00000010u;
|
|
/* 02224748 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0222474C */ _t9 = cpu->r[1] + 0x00000010u;
|
|
/* 0222474C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 02224750 */ _t10 = cpu->r[31] + 0x000001A8u;
|
|
/* 02224750 */ cpu->r[9] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02224754 */ cpu->r[8] = 0x10050000u;
|
|
/* 02224758 */ cpu->f[9] = cpu->f[12] * cpu->f[12];
|
|
/* 0222475C */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 0222475C */ rbrew_write32(cpu->mem, _t11, cpu->r[9]);
|
|
/* 02224760 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02224760 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 02224764 */ _t13 = cpu->r[8] + 0xFFFFDEDCu;
|
|
/* 02224764 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 02224768 */ cpu->f[8] = fma(cpu->f[0], cpu->f[0], cpu->f[9]);
|
|
/* 0222476C */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222476C */ rbrew_write32(cpu->mem, _t14, cpu->r[10]);
|
|
/* 02224770 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[13]);
|
|
/* 02224774 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02224774 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[13]);
|
|
/* 02224778 */ _t16 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02224778 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02224778 */ if (_t17) goto L_0222477C; else goto L_022247BC;
|
|
L_0222477C: ; // 0x222477c
|
|
/* 0222477C */ cpu->r[11] = 0x10050000u;
|
|
/* 02224780 */ cpu->r[10] = 0x10050000u;
|
|
/* 02224784 */ _t18 = cpu->r[11] + 0xFFFFDEF0u;
|
|
/* 02224784 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 02224788 */ _t19 = cpu->r[10] + 0xFFFFDEECu;
|
|
/* 02224788 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 0222478C */ _ft20 = sqrt(cpu->f[8]);
|
|
/* 0222478C */ _ft21 = (double)(int32_t)0x00000001u;
|
|
/* 0222478C */ cpu->f[9] = _ft21 / _ft20;
|
|
/* 02224790 */ cpu->f[11] = cpu->f[9] * cpu->f[9];
|
|
/* 02224794 */ cpu->f[10] = cpu->f[9] * cpu->f[12];
|
|
/* 02224798 */ cpu->f[11] = -fma(cpu->f[11], cpu->f[8], -(cpu->f[0]));
|
|
/* 0222479C */ cpu->f[9] = cpu->f[11] * cpu->f[10];
|
|
/* 022247A0 */ _t22 = cpu->r[1] + 0x00000010u;
|
|
/* 022247A0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 022247A4 */ /* nop */
|
|
/* 022247A8 */ cpu->f[12] = cpu->f[12] * cpu->f[9];
|
|
/* 022247AC */ /* nop */
|
|
/* 022247B0 */ /* nop */
|
|
/* 022247B4 */ _t23 = cpu->r[1] + 0x00000008u;
|
|
/* 022247B4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 022247B8 */ _t24 = cpu->r[1] + 0x00000010u;
|
|
/* 022247B8 */ rbrew_write_f32(cpu->mem, _t24, cpu->f[12]);
|
|
L_022247BC: ; // 0x22247bc
|
|
/* 022247BC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[13]);
|
|
/* 022247C0 */ cpu->r[4] = 0x101F0000u;
|
|
/* 022247C4 */ cpu->r[4] = cpu->r[4] + 0x0000635Cu;
|
|
/* 022247C8 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022247C8 */ _t26 = _t25 & 0x00000001u;
|
|
/* 022247C8 */ if (_t26) goto L_022247CC; else goto L_022247F8;
|
|
L_022247CC: ; // 0x22247cc
|
|
/* 022247CC */ _t27 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022247CC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 022247D0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[13]);
|
|
/* 022247D4 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022247D4 */ _t29 = _t28 & 0x00000001u;
|
|
/* 022247D4 */ if (_t29) goto L_022247D8; else goto L_022247F8;
|
|
L_022247D8: ; // 0x22247d8
|
|
/* 022247D8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[13]);
|
|
/* 022247DC */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022247DC */ _t31 = _t30 & 0x00000001u;
|
|
/* 022247DC */ if (_t31) goto L_022247E0; else goto L_022247F8;
|
|
L_022247E0: ; // 0x22247e0
|
|
/* 022247E0 */ _t32 = cpu->r[4] + 0x00000000u;
|
|
/* 022247E0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 022247E4 */ _t33 = cpu->r[4] + 0x00000004u;
|
|
/* 022247E4 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 022247E8 */ _t34 = cpu->r[1] + 0x00000008u;
|
|
/* 022247E8 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[10]);
|
|
/* 022247EC */ _t35 = cpu->r[4] + 0x00000008u;
|
|
/* 022247EC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 022247F0 */ _t36 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022247F0 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[9]);
|
|
/* 022247F4 */ _t37 = cpu->r[1] + 0x00000010u;
|
|
/* 022247F4 */ rbrew_write_f32(cpu->mem, _t37, cpu->f[11]);
|
|
L_022247F8: ; // 0x22247f8
|
|
/* 022247F8 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 022247FC */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 02224800 */ Gambit_fn_021C6DD8(cpu);
|
|
/* 02224804 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02224808 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02224808 */ _t39 = _t38 & 0x00000001u;
|
|
/* 02224808 */ if (_t39) goto L_0222480C; else goto L_02224820;
|
|
L_0222480C: ; // 0x222480c
|
|
/* 0222480C */ cpu->r[4] = 0x00000000u;
|
|
/* 02224810 */ cpu->r[5] = 0x80000000u;
|
|
/* 02224814 */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 02224818 */ cpu->r[6] = cpu->r[4];
|
|
/* 0222481C */ Gambit_fn_021E1408(cpu);
|
|
L_02224820: ; // 0x2224820
|
|
/* 02224820 */ cpu->r[5] = cpu->r[31] + 0x000001ECu;
|
|
/* 02224824 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 02224828 */ cpu->r[3] = cpu->r[1] + 0x00000044u;
|
|
/* 0222482C */ Gambit_fn_02C69544(cpu);
|
|
/* 02224830 */ _t40 = cpu->r[31] + 0x00000004u;
|
|
/* 02224830 */ cpu->r[12] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02224834 */ _t41 = cpu->r[12] + 0x00000334u;
|
|
/* 02224834 */ cpu->r[0] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02224838 */ cpu->ctr = cpu->r[0];
|
|
/* 0222483C */ cpu->r[3] = cpu->r[31];
|
|
/* 02224840 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02224844 */ _t42 = cpu->r[31] + 0x00000220u;
|
|
/* 02224844 */ rbrew_write_f32(cpu->mem, _t42, cpu->f[1]);
|
|
/* 02224848 */ _t43 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02224848 */ rbrew_write_f32(cpu->mem, _t43, cpu->f[1]);
|
|
/* 0222484C */ _t44 = cpu->r[31] + 0x00000224u;
|
|
/* 0222484C */ rbrew_write_f32(cpu->mem, _t44, cpu->f[1]);
|
|
/* 02224850 */ _t45 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02224850 */ cpu->r[0] = rbrew_read32(cpu->mem, _t45);
|
|
/* 02224854 */ _t46 = cpu->r[1] + 0x00000074u;
|
|
/* 02224854 */ cpu->r[31] = rbrew_read32(cpu->mem, _t46);
|
|
/* 02224858 */ cpu->lr = cpu->r[0];
|
|
/* 0222485C */ cpu->r[1] = cpu->r[1] + 0x00000078u;
|
|
/* 02224860 */ return;
|
|
}
|
|
|
|
// fn_0222471C @ 0x222471c
|
|
void Gambit_fn_0222471C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46;
|
|
double _ft20, _ft21;
|
|
|
|
L_0222471C: ; // 0x222471c
|
|
/* 0222471C */ _t0 = cpu->r[1] + 0xFFFFFF88u;
|
|
/* 0222471C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0222471C */ cpu->r[1] = _t0;
|
|
/* 02224720 */ _t1 = cpu->r[1] + 0x00000074u;
|
|
/* 02224720 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02224724 */ cpu->r[31] = cpu->r[3];
|
|
/* 02224728 */ _t2 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02224728 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0222472C */ _t3 = cpu->r[31] + 0x000000FCu;
|
|
/* 0222472C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 02224730 */ _t4 = cpu->r[31] + 0x00000100u;
|
|
/* 02224730 */ cpu->f[2] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 02224734 */ _t5 = cpu->r[31] + 0x00000104u;
|
|
/* 02224734 */ cpu->f[3] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 02224738 */ cpu->r[3] = cpu->r[1] + 0x00000044u;
|
|
/* 0222473C */ Gambit_fn_02C69840(cpu);
|
|
/* 02224740 */ _t6 = cpu->r[31] + 0x000001B0u;
|
|
/* 02224740 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02224744 */ _t7 = cpu->r[31] + 0x000001ACu;
|
|
/* 02224744 */ cpu->r[10] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02224748 */ _t8 = cpu->r[1] + 0x00000010u;
|
|
/* 02224748 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0222474C */ _t9 = cpu->r[1] + 0x00000010u;
|
|
/* 0222474C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 02224750 */ _t10 = cpu->r[31] + 0x000001A8u;
|
|
/* 02224750 */ cpu->r[9] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02224754 */ cpu->r[8] = 0x10050000u;
|
|
/* 02224758 */ cpu->f[9] = cpu->f[12] * cpu->f[12];
|
|
/* 0222475C */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 0222475C */ rbrew_write32(cpu->mem, _t11, cpu->r[9]);
|
|
/* 02224760 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02224760 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 02224764 */ _t13 = cpu->r[8] + 0xFFFFDEDCu;
|
|
/* 02224764 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 02224768 */ cpu->f[8] = fma(cpu->f[0], cpu->f[0], cpu->f[9]);
|
|
/* 0222476C */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222476C */ rbrew_write32(cpu->mem, _t14, cpu->r[10]);
|
|
/* 02224770 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[13]);
|
|
/* 02224774 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02224774 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[13]);
|
|
/* 02224778 */ _t16 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02224778 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02224778 */ if (_t17) goto L_0222477C; else goto L_022247BC;
|
|
L_0222477C: ; // 0x222477c
|
|
/* 0222477C */ cpu->r[11] = 0x10050000u;
|
|
/* 02224780 */ cpu->r[10] = 0x10050000u;
|
|
/* 02224784 */ _t18 = cpu->r[11] + 0xFFFFDEF0u;
|
|
/* 02224784 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 02224788 */ _t19 = cpu->r[10] + 0xFFFFDEECu;
|
|
/* 02224788 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 0222478C */ _ft20 = sqrt(cpu->f[8]);
|
|
/* 0222478C */ _ft21 = (double)(int32_t)0x00000001u;
|
|
/* 0222478C */ cpu->f[9] = _ft21 / _ft20;
|
|
/* 02224790 */ cpu->f[11] = cpu->f[9] * cpu->f[9];
|
|
/* 02224794 */ cpu->f[10] = cpu->f[9] * cpu->f[12];
|
|
/* 02224798 */ cpu->f[11] = -fma(cpu->f[11], cpu->f[8], -(cpu->f[0]));
|
|
/* 0222479C */ cpu->f[9] = cpu->f[11] * cpu->f[10];
|
|
/* 022247A0 */ _t22 = cpu->r[1] + 0x00000010u;
|
|
/* 022247A0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 022247A4 */ /* nop */
|
|
/* 022247A8 */ cpu->f[12] = cpu->f[12] * cpu->f[9];
|
|
/* 022247AC */ /* nop */
|
|
/* 022247B0 */ /* nop */
|
|
/* 022247B4 */ _t23 = cpu->r[1] + 0x00000008u;
|
|
/* 022247B4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 022247B8 */ _t24 = cpu->r[1] + 0x00000010u;
|
|
/* 022247B8 */ rbrew_write_f32(cpu->mem, _t24, cpu->f[12]);
|
|
L_022247BC: ; // 0x22247bc
|
|
/* 022247BC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[13]);
|
|
/* 022247C0 */ cpu->r[4] = 0x101F0000u;
|
|
/* 022247C4 */ cpu->r[4] = cpu->r[4] + 0x0000635Cu;
|
|
/* 022247C8 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022247C8 */ _t26 = _t25 & 0x00000001u;
|
|
/* 022247C8 */ if (_t26) goto L_022247CC; else goto L_022247F8;
|
|
L_022247CC: ; // 0x22247cc
|
|
/* 022247CC */ _t27 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022247CC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 022247D0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[13]);
|
|
/* 022247D4 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022247D4 */ _t29 = _t28 & 0x00000001u;
|
|
/* 022247D4 */ if (_t29) goto L_022247D8; else goto L_022247F8;
|
|
L_022247D8: ; // 0x22247d8
|
|
/* 022247D8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[13]);
|
|
/* 022247DC */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022247DC */ _t31 = _t30 & 0x00000001u;
|
|
/* 022247DC */ if (_t31) goto L_022247E0; else goto L_022247F8;
|
|
L_022247E0: ; // 0x22247e0
|
|
/* 022247E0 */ _t32 = cpu->r[4] + 0x00000000u;
|
|
/* 022247E0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 022247E4 */ _t33 = cpu->r[4] + 0x00000004u;
|
|
/* 022247E4 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 022247E8 */ _t34 = cpu->r[1] + 0x00000008u;
|
|
/* 022247E8 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[10]);
|
|
/* 022247EC */ _t35 = cpu->r[4] + 0x00000008u;
|
|
/* 022247EC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 022247F0 */ _t36 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022247F0 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[9]);
|
|
/* 022247F4 */ _t37 = cpu->r[1] + 0x00000010u;
|
|
/* 022247F4 */ rbrew_write_f32(cpu->mem, _t37, cpu->f[11]);
|
|
L_022247F8: ; // 0x22247f8
|
|
/* 022247F8 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 022247FC */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 02224800 */ Gambit_fn_021C6DD8(cpu);
|
|
/* 02224804 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02224808 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02224808 */ _t39 = _t38 & 0x00000001u;
|
|
/* 02224808 */ if (_t39) goto L_0222480C; else goto L_02224820;
|
|
L_0222480C: ; // 0x222480c
|
|
/* 0222480C */ cpu->r[4] = 0x00000000u;
|
|
/* 02224810 */ cpu->r[5] = 0x80000000u;
|
|
/* 02224814 */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 02224818 */ cpu->r[6] = cpu->r[4];
|
|
/* 0222481C */ Gambit_fn_021E1408(cpu);
|
|
L_02224820: ; // 0x2224820
|
|
/* 02224820 */ cpu->r[5] = cpu->r[31] + 0x000001ECu;
|
|
/* 02224824 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 02224828 */ cpu->r[3] = cpu->r[1] + 0x00000044u;
|
|
/* 0222482C */ Gambit_fn_02C69544(cpu);
|
|
/* 02224830 */ _t40 = cpu->r[31] + 0x00000004u;
|
|
/* 02224830 */ cpu->r[12] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02224834 */ _t41 = cpu->r[12] + 0x00000334u;
|
|
/* 02224834 */ cpu->r[0] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02224838 */ cpu->ctr = cpu->r[0];
|
|
/* 0222483C */ cpu->r[3] = cpu->r[31];
|
|
/* 02224840 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02224844 */ _t42 = cpu->r[31] + 0x00000220u;
|
|
/* 02224844 */ rbrew_write_f32(cpu->mem, _t42, cpu->f[1]);
|
|
/* 02224848 */ _t43 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02224848 */ rbrew_write_f32(cpu->mem, _t43, cpu->f[1]);
|
|
/* 0222484C */ _t44 = cpu->r[31] + 0x00000224u;
|
|
/* 0222484C */ rbrew_write_f32(cpu->mem, _t44, cpu->f[1]);
|
|
/* 02224850 */ _t45 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02224850 */ cpu->r[0] = rbrew_read32(cpu->mem, _t45);
|
|
/* 02224854 */ _t46 = cpu->r[1] + 0x00000074u;
|
|
/* 02224854 */ cpu->r[31] = rbrew_read32(cpu->mem, _t46);
|
|
/* 02224858 */ cpu->lr = cpu->r[0];
|
|
/* 0222485C */ cpu->r[1] = cpu->r[1] + 0x00000078u;
|
|
/* 02224860 */ return;
|
|
}
|
|
|
|
// fn_02224864 @ 0x2224864
|
|
void Gambit_fn_02224864(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _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_02224864: ; // 0x2224864
|
|
/* 02224864 */ cpu->r[0] = cpu->lr;
|
|
/* 02224868 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 02224868 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02224868 */ cpu->r[1] = _t0;
|
|
/* 0222486C */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 0222486C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02224870 */ cpu->r[31] = cpu->r[3];
|
|
/* 02224874 */ _t2 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02224874 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02224878 */ Gambit_fn_0222C3E8(cpu);
|
|
/* 0222487C */ _t3 = cpu->r[31] + 0x000001C0u;
|
|
/* 0222487C */ cpu->r[7] = rbrew_read16(cpu->mem, _t3);
|
|
/* 02224880 */ _t4 = cpu->r[31] + 0x000001DCu;
|
|
/* 02224880 */ cpu->r[8] = rbrew_read8(cpu->mem, _t4);
|
|
/* 02224884 */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 02224888 */ _t5 = cpu->r[31] + 0x000001B4u;
|
|
/* 02224888 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0222488C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02224890 */ _t6 = cpu->r[31] + 0x000001C0u;
|
|
/* 02224890 */ rbrew_write16(cpu->mem, _t6, (uint16_t)cpu->r[7]);
|
|
/* 02224894 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02224894 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02224894 */ if (_t8) goto L_02224954; else goto L_02224898;
|
|
L_02224898: ; // 0x2224898
|
|
/* 02224898 */ _t9 = cpu->r[31] + 0x000001E4u;
|
|
/* 02224898 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0222489C */ /* nop */
|
|
/* 022248A0 */ _t10 = cpu->r[12] + 0x0000000Cu;
|
|
/* 022248A0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022248A4 */ _t11 = cpu->r[9] + 0x00000000u;
|
|
/* 022248A4 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 022248A8 */ _t12 = cpu->r[12] + 0x00000004u;
|
|
/* 022248A8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022248AC */ /* nop */
|
|
/* 022248B0 */ _t13 = cpu->r[31] + 0x000001D8u;
|
|
/* 022248B0 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 022248B4 */ /* nop */
|
|
/* 022248B8 */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 022248B8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022248BC */ cpu->f[0] = cpu->f[8] * cpu->f[9];
|
|
/* 022248C0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022248C0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022248C4 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 022248C4 */ rbrew_write32(cpu->mem, _t16, cpu->r[8]);
|
|
/* 022248C8 */ _t17 = cpu->r[1] + 0x00000010u;
|
|
/* 022248C8 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[0]);
|
|
/* 022248CC */ _t18 = cpu->r[1] + 0x00000010u;
|
|
/* 022248CC */ cpu->r[10] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022248D0 */ _t19 = cpu->r[1] + 0x00000018u;
|
|
/* 022248D0 */ rbrew_write32(cpu->mem, _t19, cpu->r[9]);
|
|
/* 022248D4 */ _t20 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022248D4 */ rbrew_write32(cpu->mem, _t20, cpu->r[10]);
|
|
/* 022248D8 */ _t21 = cpu->r[12] + 0x00000000u;
|
|
/* 022248D8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 022248DC */ _t22 = cpu->r[31] + 0x000001C4u;
|
|
/* 022248DC */ rbrew_write_f32(cpu->mem, _t22, cpu->f[11]);
|
|
/* 022248E0 */ _t23 = cpu->r[12] + 0x00000004u;
|
|
/* 022248E0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 022248E4 */ _t24 = cpu->r[1] + 0x00000014u;
|
|
/* 022248E4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 022248E8 */ _t25 = cpu->r[31] + 0x000001C8u;
|
|
/* 022248E8 */ rbrew_write_f32(cpu->mem, _t25, cpu->f[9]);
|
|
/* 022248EC */ _t26 = cpu->r[12] + 0x00000008u;
|
|
/* 022248EC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 022248F0 */ /* nop */
|
|
/* 022248F4 */ cpu->f[7] = cpu->f[12] * cpu->f[10];
|
|
/* 022248F8 */ _t27 = cpu->r[1] + 0x00000018u;
|
|
/* 022248F8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 022248FC */ /* nop */
|
|
/* 02224900 */ _t28 = cpu->r[31] + 0x000001CCu;
|
|
/* 02224900 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[7]);
|
|
/* 02224904 */ /* nop */
|
|
/* 02224908 */ /* nop */
|
|
/* 0222490C */ /* nop */
|
|
/* 02224910 */ /* nop */
|
|
/* 02224914 */ _t29 = cpu->r[12] + 0x00000014u;
|
|
/* 02224914 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 02224918 */ cpu->f[7] = fma(cpu->f[12], cpu->f[10], cpu->f[7]);
|
|
/* 0222491C */ _t30 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0222491C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 02224920 */ _t31 = cpu->r[31] + 0x000001CCu;
|
|
/* 02224920 */ rbrew_write_f32(cpu->mem, _t31, cpu->f[7]);
|
|
/* 02224924 */ /* nop */
|
|
/* 02224928 */ /* nop */
|
|
/* 0222492C */ /* nop */
|
|
/* 02224930 */ _t32 = cpu->r[12] + 0x00000020u;
|
|
/* 02224930 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 02224934 */ cpu->f[7] = fma(cpu->f[10], cpu->f[13], cpu->f[7]);
|
|
/* 02224938 */ _t33 = cpu->r[31] + 0x000001CCu;
|
|
/* 02224938 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[7]);
|
|
/* 0222493C */ /* nop */
|
|
/* 02224940 */ /* nop */
|
|
/* 02224944 */ /* nop */
|
|
/* 02224948 */ _t34 = cpu->r[12] + 0x0000002Cu;
|
|
/* 02224948 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 0222494C */ cpu->f[10] = cpu->f[7] + cpu->f[12];
|
|
/* 02224950 */ _t35 = cpu->r[31] + 0x000001CCu;
|
|
/* 02224950 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[10]);
|
|
L_02224954: ; // 0x2224954
|
|
/* 02224954 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 02224958 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02224958 */ _t37 = _t36 & 0x00000001u;
|
|
/* 02224958 */ if (_t37) goto L_0222495C; else goto L_02224984;
|
|
L_0222495C: ; // 0x222495c
|
|
/* 0222495C */ _t38 = cpu->r[31] + 0x00000004u;
|
|
/* 0222495C */ cpu->r[10] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02224960 */ _t39 = cpu->r[10] + 0x00000474u;
|
|
/* 02224960 */ cpu->r[0] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02224964 */ cpu->ctr = cpu->r[0];
|
|
/* 02224968 */ cpu->r[3] = cpu->r[31];
|
|
/* 0222496C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02224970 */ cpu->r[3] = cpu->r[31];
|
|
/* 02224974 */ Gambit_fn_02224718(cpu);
|
|
/* 02224978 */ cpu->r[3] = cpu->r[31];
|
|
/* 0222497C */ Gambit_fn_0222467C(cpu);
|
|
/* 02224980 */ goto L_022249E0;
|
|
L_02224984: ; // 0x2224984
|
|
/* 02224984 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02224988 */ _t40 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02224988 */ _t41 = _t40 & 0x00000001u;
|
|
/* 02224988 */ if (_t41) goto L_0222498C; else goto L_022249B4;
|
|
L_0222498C: ; // 0x222498c
|
|
/* 0222498C */ _t42 = cpu->r[31] + 0x00000004u;
|
|
/* 0222498C */ cpu->r[12] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02224990 */ _t43 = cpu->r[12] + 0x0000046Cu;
|
|
/* 02224990 */ cpu->r[0] = rbrew_read32(cpu->mem, _t43);
|
|
/* 02224994 */ cpu->ctr = cpu->r[0];
|
|
/* 02224998 */ cpu->r[3] = cpu->r[31];
|
|
/* 0222499C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022249A0 */ cpu->r[3] = cpu->r[31];
|
|
/* 022249A4 */ Gambit_fn_02224718(cpu);
|
|
/* 022249A8 */ cpu->r[3] = cpu->r[31];
|
|
/* 022249AC */ Gambit_fn_0222467C(cpu);
|
|
/* 022249B0 */ goto L_022249E0;
|
|
L_022249B4: ; // 0x22249b4
|
|
/* 022249B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 022249B8 */ _t44 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022249B8 */ _t45 = _t44 & 0x00000001u;
|
|
/* 022249B8 */ if (_t45) goto L_022249BC; else goto L_022249D0;
|
|
L_022249BC: ; // 0x22249bc
|
|
/* 022249BC */ _t46 = cpu->r[31] + 0x00000004u;
|
|
/* 022249BC */ cpu->r[12] = rbrew_read32(cpu->mem, _t46);
|
|
/* 022249C0 */ _t47 = cpu->r[12] + 0x0000047Cu;
|
|
/* 022249C0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t47);
|
|
/* 022249C4 */ cpu->ctr = cpu->r[7];
|
|
/* 022249C8 */ cpu->r[3] = cpu->r[31];
|
|
/* 022249CC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_022249D0: ; // 0x22249d0
|
|
/* 022249D0 */ cpu->r[3] = cpu->r[31];
|
|
/* 022249D4 */ Gambit_fn_02224718(cpu);
|
|
/* 022249D8 */ cpu->r[3] = cpu->r[31];
|
|
/* 022249DC */ Gambit_fn_0222467C(cpu);
|
|
L_022249E0: ; // 0x22249e0
|
|
/* 022249E0 */ _t48 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022249E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t48);
|
|
/* 022249E4 */ _t49 = cpu->r[1] + 0x00000024u;
|
|
/* 022249E4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t49);
|
|
/* 022249E8 */ cpu->lr = cpu->r[0];
|
|
/* 022249EC */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 022249F0 */ return;
|
|
}
|
|
|
|
// fn_02224868 @ 0x2224868
|
|
void Gambit_fn_02224868(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _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_02224868: ; // 0x2224868
|
|
/* 02224868 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 02224868 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02224868 */ cpu->r[1] = _t0;
|
|
/* 0222486C */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 0222486C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02224870 */ cpu->r[31] = cpu->r[3];
|
|
/* 02224874 */ _t2 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02224874 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02224878 */ Gambit_fn_0222C3E8(cpu);
|
|
/* 0222487C */ _t3 = cpu->r[31] + 0x000001C0u;
|
|
/* 0222487C */ cpu->r[7] = rbrew_read16(cpu->mem, _t3);
|
|
/* 02224880 */ _t4 = cpu->r[31] + 0x000001DCu;
|
|
/* 02224880 */ cpu->r[8] = rbrew_read8(cpu->mem, _t4);
|
|
/* 02224884 */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 02224888 */ _t5 = cpu->r[31] + 0x000001B4u;
|
|
/* 02224888 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0222488C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02224890 */ _t6 = cpu->r[31] + 0x000001C0u;
|
|
/* 02224890 */ rbrew_write16(cpu->mem, _t6, (uint16_t)cpu->r[7]);
|
|
/* 02224894 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02224894 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02224894 */ if (_t8) goto L_02224954; else goto L_02224898;
|
|
L_02224898: ; // 0x2224898
|
|
/* 02224898 */ _t9 = cpu->r[31] + 0x000001E4u;
|
|
/* 02224898 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0222489C */ /* nop */
|
|
/* 022248A0 */ _t10 = cpu->r[12] + 0x0000000Cu;
|
|
/* 022248A0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022248A4 */ _t11 = cpu->r[9] + 0x00000000u;
|
|
/* 022248A4 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 022248A8 */ _t12 = cpu->r[12] + 0x00000004u;
|
|
/* 022248A8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022248AC */ /* nop */
|
|
/* 022248B0 */ _t13 = cpu->r[31] + 0x000001D8u;
|
|
/* 022248B0 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 022248B4 */ /* nop */
|
|
/* 022248B8 */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 022248B8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022248BC */ cpu->f[0] = cpu->f[8] * cpu->f[9];
|
|
/* 022248C0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022248C0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022248C4 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 022248C4 */ rbrew_write32(cpu->mem, _t16, cpu->r[8]);
|
|
/* 022248C8 */ _t17 = cpu->r[1] + 0x00000010u;
|
|
/* 022248C8 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[0]);
|
|
/* 022248CC */ _t18 = cpu->r[1] + 0x00000010u;
|
|
/* 022248CC */ cpu->r[10] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022248D0 */ _t19 = cpu->r[1] + 0x00000018u;
|
|
/* 022248D0 */ rbrew_write32(cpu->mem, _t19, cpu->r[9]);
|
|
/* 022248D4 */ _t20 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022248D4 */ rbrew_write32(cpu->mem, _t20, cpu->r[10]);
|
|
/* 022248D8 */ _t21 = cpu->r[12] + 0x00000000u;
|
|
/* 022248D8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 022248DC */ _t22 = cpu->r[31] + 0x000001C4u;
|
|
/* 022248DC */ rbrew_write_f32(cpu->mem, _t22, cpu->f[11]);
|
|
/* 022248E0 */ _t23 = cpu->r[12] + 0x00000004u;
|
|
/* 022248E0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 022248E4 */ _t24 = cpu->r[1] + 0x00000014u;
|
|
/* 022248E4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 022248E8 */ _t25 = cpu->r[31] + 0x000001C8u;
|
|
/* 022248E8 */ rbrew_write_f32(cpu->mem, _t25, cpu->f[9]);
|
|
/* 022248EC */ _t26 = cpu->r[12] + 0x00000008u;
|
|
/* 022248EC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 022248F0 */ /* nop */
|
|
/* 022248F4 */ cpu->f[7] = cpu->f[12] * cpu->f[10];
|
|
/* 022248F8 */ _t27 = cpu->r[1] + 0x00000018u;
|
|
/* 022248F8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 022248FC */ /* nop */
|
|
/* 02224900 */ _t28 = cpu->r[31] + 0x000001CCu;
|
|
/* 02224900 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[7]);
|
|
/* 02224904 */ /* nop */
|
|
/* 02224908 */ /* nop */
|
|
/* 0222490C */ /* nop */
|
|
/* 02224910 */ /* nop */
|
|
/* 02224914 */ _t29 = cpu->r[12] + 0x00000014u;
|
|
/* 02224914 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 02224918 */ cpu->f[7] = fma(cpu->f[12], cpu->f[10], cpu->f[7]);
|
|
/* 0222491C */ _t30 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0222491C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 02224920 */ _t31 = cpu->r[31] + 0x000001CCu;
|
|
/* 02224920 */ rbrew_write_f32(cpu->mem, _t31, cpu->f[7]);
|
|
/* 02224924 */ /* nop */
|
|
/* 02224928 */ /* nop */
|
|
/* 0222492C */ /* nop */
|
|
/* 02224930 */ _t32 = cpu->r[12] + 0x00000020u;
|
|
/* 02224930 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 02224934 */ cpu->f[7] = fma(cpu->f[10], cpu->f[13], cpu->f[7]);
|
|
/* 02224938 */ _t33 = cpu->r[31] + 0x000001CCu;
|
|
/* 02224938 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[7]);
|
|
/* 0222493C */ /* nop */
|
|
/* 02224940 */ /* nop */
|
|
/* 02224944 */ /* nop */
|
|
/* 02224948 */ _t34 = cpu->r[12] + 0x0000002Cu;
|
|
/* 02224948 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 0222494C */ cpu->f[10] = cpu->f[7] + cpu->f[12];
|
|
/* 02224950 */ _t35 = cpu->r[31] + 0x000001CCu;
|
|
/* 02224950 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[10]);
|
|
L_02224954: ; // 0x2224954
|
|
/* 02224954 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 02224958 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02224958 */ _t37 = _t36 & 0x00000001u;
|
|
/* 02224958 */ if (_t37) goto L_0222495C; else goto L_02224984;
|
|
L_0222495C: ; // 0x222495c
|
|
/* 0222495C */ _t38 = cpu->r[31] + 0x00000004u;
|
|
/* 0222495C */ cpu->r[10] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02224960 */ _t39 = cpu->r[10] + 0x00000474u;
|
|
/* 02224960 */ cpu->r[0] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02224964 */ cpu->ctr = cpu->r[0];
|
|
/* 02224968 */ cpu->r[3] = cpu->r[31];
|
|
/* 0222496C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02224970 */ cpu->r[3] = cpu->r[31];
|
|
/* 02224974 */ Gambit_fn_02224718(cpu);
|
|
/* 02224978 */ cpu->r[3] = cpu->r[31];
|
|
/* 0222497C */ Gambit_fn_0222467C(cpu);
|
|
/* 02224980 */ goto L_022249E0;
|
|
L_02224984: ; // 0x2224984
|
|
/* 02224984 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02224988 */ _t40 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02224988 */ _t41 = _t40 & 0x00000001u;
|
|
/* 02224988 */ if (_t41) goto L_0222498C; else goto L_022249B4;
|
|
L_0222498C: ; // 0x222498c
|
|
/* 0222498C */ _t42 = cpu->r[31] + 0x00000004u;
|
|
/* 0222498C */ cpu->r[12] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02224990 */ _t43 = cpu->r[12] + 0x0000046Cu;
|
|
/* 02224990 */ cpu->r[0] = rbrew_read32(cpu->mem, _t43);
|
|
/* 02224994 */ cpu->ctr = cpu->r[0];
|
|
/* 02224998 */ cpu->r[3] = cpu->r[31];
|
|
/* 0222499C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022249A0 */ cpu->r[3] = cpu->r[31];
|
|
/* 022249A4 */ Gambit_fn_02224718(cpu);
|
|
/* 022249A8 */ cpu->r[3] = cpu->r[31];
|
|
/* 022249AC */ Gambit_fn_0222467C(cpu);
|
|
/* 022249B0 */ goto L_022249E0;
|
|
L_022249B4: ; // 0x22249b4
|
|
/* 022249B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 022249B8 */ _t44 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022249B8 */ _t45 = _t44 & 0x00000001u;
|
|
/* 022249B8 */ if (_t45) goto L_022249BC; else goto L_022249D0;
|
|
L_022249BC: ; // 0x22249bc
|
|
/* 022249BC */ _t46 = cpu->r[31] + 0x00000004u;
|
|
/* 022249BC */ cpu->r[12] = rbrew_read32(cpu->mem, _t46);
|
|
/* 022249C0 */ _t47 = cpu->r[12] + 0x0000047Cu;
|
|
/* 022249C0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t47);
|
|
/* 022249C4 */ cpu->ctr = cpu->r[7];
|
|
/* 022249C8 */ cpu->r[3] = cpu->r[31];
|
|
/* 022249CC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_022249D0: ; // 0x22249d0
|
|
/* 022249D0 */ cpu->r[3] = cpu->r[31];
|
|
/* 022249D4 */ Gambit_fn_02224718(cpu);
|
|
/* 022249D8 */ cpu->r[3] = cpu->r[31];
|
|
/* 022249DC */ Gambit_fn_0222467C(cpu);
|
|
L_022249E0: ; // 0x22249e0
|
|
/* 022249E0 */ _t48 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022249E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t48);
|
|
/* 022249E4 */ _t49 = cpu->r[1] + 0x00000024u;
|
|
/* 022249E4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t49);
|
|
/* 022249E8 */ cpu->lr = cpu->r[0];
|
|
/* 022249EC */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 022249F0 */ return;
|
|
}
|
|
|
|
// fn_022249F4 @ 0x22249f4
|
|
void Gambit_fn_022249F4(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_022249F4: ; // 0x22249f4
|
|
/* 022249F4 */ goto L_0222C658;
|
|
L_0222C658: ; // 0x222c658
|
|
/* 0222C658 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0222C658 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0222C65C */ _t1 = cpu->r[12] + 0x000003BCu;
|
|
/* 0222C65C */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0222C660 */ cpu->ctr = cpu->r[0];
|
|
/* 0222C664 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022249F8 @ 0x22249f8
|
|
void Gambit_fn_022249F8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_022249F8: ; // 0x22249f8
|
|
/* 022249F8 */ cpu->r[0] = cpu->lr;
|
|
/* 022249FC */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 022249FC */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 02224A00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x0000000Bu);
|
|
/* 02224A04 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 02224A04 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 02224A04 */ cpu->r[1] = _t1;
|
|
/* 02224A08 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02224A08 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02224A08 */ rbrew_dispatch(cpu, (_t3) ? 0x02224158u : 0x02224a0cu); return;
|
|
/* 02224A0C */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02224A0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02224A10 */ cpu->lr = cpu->r[0];
|
|
/* 02224A14 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 02224A18 */ cpu->r[3] = 0x00000000u;
|
|
/* 02224A1C */ return;
|
|
}
|
|
|
|
// fn_02224A04 @ 0x2224a04
|
|
void Gambit_fn_02224A04(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_02224A04: ; // 0x2224a04
|
|
/* 02224A04 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 02224A04 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02224A04 */ cpu->r[1] = _t0;
|
|
/* 02224A08 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02224A08 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02224A08 */ rbrew_dispatch(cpu, (_t2) ? 0x02224158u : 0x02224a0cu); return;
|
|
/* 02224A0C */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02224A0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02224A10 */ cpu->lr = cpu->r[0];
|
|
/* 02224A14 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 02224A18 */ cpu->r[3] = 0x00000000u;
|
|
/* 02224A1C */ return;
|
|
}
|
|
|
|
// fn_02224A20 @ 0x2224a20
|
|
void Gambit_fn_02224A20(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _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, _t114, _t115, _t116;
|
|
double _ft112, _ft113;
|
|
|
|
L_02224A20: ; // 0x2224a20
|
|
/* 02224A20 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 02224A20 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02224A20 */ cpu->r[1] = _t0;
|
|
/* 02224A24 */ /* nop */
|
|
/* 02224A28 */ cpu->r[0] = cpu->lr;
|
|
/* 02224A2C */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02224A2C */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02224A30 */ cpu->r[29] = cpu->r[4];
|
|
/* 02224A34 */ cpu->r[0] = 0x00000001u;
|
|
/* 02224A38 */ cpu->r[28] = cpu->r[3];
|
|
/* 02224A3C */ _t2 = cpu->r[28] + 0x0000012Cu;
|
|
/* 02224A3C */ rbrew_write8(cpu->mem, _t2, (uint8_t)cpu->r[0]);
|
|
/* 02224A40 */ _t3 = cpu->r[29] + 0x00000164u;
|
|
/* 02224A40 */ cpu->r[7] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02224A44 */ cpu->r[6] = rbrew_rlwinm(cpu->r[7], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02224A48 */ cpu->r[8] = cpu->r[6] + 0x101E0000u;
|
|
/* 02224A4C */ _t4 = cpu->r[8] + 0xFFFF9484u;
|
|
/* 02224A4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02224A50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000004u);
|
|
/* 02224A54 */ _t5 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02224A54 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02224A54 */ if (_t6) goto L_02224A58; else goto L_02224A5C;
|
|
L_02224A58: ; // 0x2224a58
|
|
/* 02224A58 */ cpu->r[0] = 0x00000004u;
|
|
L_02224A5C: ; // 0x2224a5c
|
|
/* 02224A5C */ cpu->r[27] = 0x00000000u;
|
|
/* 02224A60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], cpu->r[0]);
|
|
/* 02224A64 */ _t7 = cpu->r[28] + 0x00000130u;
|
|
/* 02224A64 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 02224A68 */ _t8 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02224A68 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02224A68 */ if (_t9) goto L_02224A6C; else goto L_02224ABC;
|
|
L_02224A6C: ; // 0x2224a6c
|
|
/* 02224A6C */ cpu->r[25] = cpu->r[28] + 0x00000164u;
|
|
/* 02224A70 */ cpu->r[26] = cpu->r[28] + 0x00000194u;
|
|
/* 02224A74 */ cpu->r[31] = cpu->r[28] + 0x00000198u;
|
|
/* 02224A78 */ cpu->r[24] = cpu->r[28] + 0x00000134u;
|
|
/* 02224A7C */ cpu->r[30] = 0x00000000u;
|
|
L_02224A80: ; // 0x2224a80
|
|
/* 02224A80 */ cpu->r[9] = 0x00000000u;
|
|
/* 02224A84 */ cpu->r[8] = cpu->r[31];
|
|
/* 02224A88 */ cpu->r[7] = cpu->r[24] + cpu->r[30];
|
|
/* 02224A8C */ cpu->r[10] = cpu->r[9];
|
|
/* 02224A90 */ cpu->r[6] = cpu->r[25] + cpu->r[30];
|
|
/* 02224A94 */ cpu->r[5] = cpu->r[26] + cpu->r[27];
|
|
/* 02224A98 */ cpu->r[4] = cpu->r[27];
|
|
/* 02224A9C */ cpu->r[3] = cpu->r[29];
|
|
/* 02224AA0 */ Gambit_fn_02040F70(cpu);
|
|
/* 02224AA4 */ _t10 = cpu->r[28] + 0x00000130u;
|
|
/* 02224AA4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02224AA8 */ cpu->r[27] = cpu->r[27] + 0x00000001u;
|
|
/* 02224AAC */ cpu->r[31] = cpu->r[31] + 0x00000004u;
|
|
/* 02224AB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], cpu->r[8]);
|
|
/* 02224AB4 */ cpu->r[30] = cpu->r[30] + 0x0000000Cu;
|
|
/* 02224AB8 */ _t11 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02224AB8 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02224AB8 */ if (_t12) goto L_02224A80; else goto L_02224ABC;
|
|
L_02224ABC: ; // 0x2224abc
|
|
/* 02224ABC */ cpu->r[10] = 0x10050000u;
|
|
/* 02224AC0 */ _t13 = cpu->r[29] + 0x00000040u;
|
|
/* 02224AC0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 02224AC4 */ _t14 = cpu->r[10] + 0xFFFFDEDCu;
|
|
/* 02224AC4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 02224AC8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[9]);
|
|
/* 02224ACC */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02224ACC */ _t16 = _t15 & 0x00000001u;
|
|
/* 02224ACC */ if (_t16) goto L_02224AF4; else goto L_02224AD0;
|
|
L_02224AD0: ; // 0x2224ad0
|
|
/* 02224AD0 */ _t17 = cpu->r[29] + 0x00000000u;
|
|
/* 02224AD0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02224AD4 */ _t18 = cpu->r[29] + 0x00000034u;
|
|
/* 02224AD4 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[0]);
|
|
/* 02224AD8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[10], 0x00000000u, 0x0000001Cu, 0x0000001Cu);
|
|
/* 02224AD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02224ADC */ _t19 = cpu->r[29] + 0x0000003Cu;
|
|
/* 02224ADC */ rbrew_write_f32(cpu->mem, _t19, cpu->f[0]);
|
|
/* 02224AE0 */ _t20 = cpu->r[29] + 0x00000040u;
|
|
/* 02224AE0 */ rbrew_write_f32(cpu->mem, _t20, cpu->f[0]);
|
|
/* 02224AE4 */ cpu->r[12] = cpu->r[29] + 0x00000034u;
|
|
/* 02224AE8 */ _t21 = cpu->r[29] + 0x00000038u;
|
|
/* 02224AE8 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[0]);
|
|
/* 02224AEC */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02224AEC */ _t23 = _t22 & 0x00000001u;
|
|
/* 02224AEC */ if (_t23) goto L_02224AF0; else goto L_02224B4C;
|
|
L_02224AF0: ; // 0x2224af0
|
|
/* 02224AF0 */ goto L_02224B70;
|
|
L_02224AF4: ; // 0x2224af4
|
|
/* 02224AF4 */ _t24 = cpu->r[29] + 0x00000000u;
|
|
/* 02224AF4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02224AF8 */ cpu->r[9] = rbrew_rlwinm(cpu->r[11], 0x00000000u, 0x0000001Bu, 0x0000001Cu);
|
|
/* 02224AF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02224AFC */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02224AFC */ _t26 = _t25 & 0x00000001u;
|
|
/* 02224AFC */ if (_t26) goto L_02224B00; else goto L_02224B30;
|
|
L_02224B00: ; // 0x2224b00
|
|
/* 02224B00 */ _t27 = cpu->r[29] + 0x00000034u;
|
|
/* 02224B00 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 02224B04 */ _t28 = cpu->r[28] + 0x000001A8u;
|
|
/* 02224B04 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[12]);
|
|
/* 02224B08 */ _t29 = cpu->r[29] + 0x00000038u;
|
|
/* 02224B08 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 02224B0C */ cpu->f[7] = cpu->f[13] * cpu->f[13];
|
|
/* 02224B10 */ _t30 = cpu->r[28] + 0x000001ACu;
|
|
/* 02224B10 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[13]);
|
|
/* 02224B14 */ _t31 = cpu->r[29] + 0x0000003Cu;
|
|
/* 02224B14 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 02224B18 */ cpu->f[8] = fma(cpu->f[12], cpu->f[12], cpu->f[7]);
|
|
/* 02224B1C */ cpu->f[7] = fma(cpu->f[11], cpu->f[11], cpu->f[8]);
|
|
/* 02224B20 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[0]);
|
|
/* 02224B24 */ _t32 = cpu->r[28] + 0x000001B0u;
|
|
/* 02224B24 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[11]);
|
|
/* 02224B28 */ _t33 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02224B28 */ _t34 = _t33 & 0x00000001u;
|
|
/* 02224B28 */ if (_t34) goto L_02224B2C; else goto L_02224D2C;
|
|
L_02224B2C: ; // 0x2224b2c
|
|
/* 02224B2C */ goto L_02224CF0;
|
|
L_02224B30: ; // 0x2224b30
|
|
/* 02224B30 */ _t35 = cpu->r[29] + 0x00000000u;
|
|
/* 02224B30 */ cpu->r[10] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02224B34 */ _t36 = cpu->r[29] + 0x00000038u;
|
|
/* 02224B34 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[0]);
|
|
/* 02224B38 */ cpu->r[0] = rbrew_rlwinm(cpu->r[10], 0x00000000u, 0x0000001Cu, 0x0000001Cu);
|
|
/* 02224B38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02224B3C */ _t37 = cpu->r[29] + 0x00000034u;
|
|
/* 02224B3C */ rbrew_write_f32(cpu->mem, _t37, cpu->f[0]);
|
|
/* 02224B40 */ cpu->r[12] = cpu->r[29] + 0x00000034u;
|
|
/* 02224B44 */ _t38 = cpu->r[29] + 0x0000003Cu;
|
|
/* 02224B44 */ rbrew_write_f32(cpu->mem, _t38, cpu->f[0]);
|
|
/* 02224B48 */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02224B48 */ _t40 = _t39 & 0x00000001u;
|
|
/* 02224B48 */ if (_t40) goto L_02224B70; else goto L_02224B4C;
|
|
L_02224B4C: ; // 0x2224b4c
|
|
/* 02224B4C */ /* nop */
|
|
/* 02224B50 */ /* nop */
|
|
/* 02224B54 */ /* nop */
|
|
/* 02224B58 */ /* nop */
|
|
/* 02224B5C */ _t41 = cpu->r[29] + 0x0000000Cu;
|
|
/* 02224B5C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 02224B60 */ _t42 = cpu->r[29] + 0x00000018u;
|
|
/* 02224B60 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 02224B64 */ cpu->f[11] = cpu->f[12] + cpu->f[13];
|
|
/* 02224B68 */ _t43 = cpu->r[12] + 0x00000008u;
|
|
/* 02224B68 */ rbrew_write_f32(cpu->mem, _t43, cpu->f[11]);
|
|
/* 02224B6C */ _t44 = cpu->r[29] + 0x00000000u;
|
|
/* 02224B6C */ cpu->r[10] = rbrew_read32(cpu->mem, _t44);
|
|
L_02224B70: ; // 0x2224b70
|
|
/* 02224B70 */ cpu->r[5] = rbrew_rlwinm(cpu->r[10], 0x00000000u, 0x0000001Bu, 0x0000001Bu);
|
|
/* 02224B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 02224B74 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02224B74 */ _t46 = _t45 & 0x00000001u;
|
|
/* 02224B74 */ if (_t46) goto L_02224CBC; else goto L_02224B78;
|
|
L_02224B78: ; // 0x2224b78
|
|
/* 02224B78 */ _t47 = cpu->r[12] + 0x00000000u;
|
|
/* 02224B78 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 02224B7C */ _t48 = cpu->r[29] + 0x00000040u;
|
|
/* 02224B7C */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 02224B80 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[0]);
|
|
/* 02224B84 */ _t49 = cpu->r[29] + 0x0000001Cu;
|
|
/* 02224B84 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 02224B88 */ _t50 = cpu->r[29] + 0x00000028u;
|
|
/* 02224B88 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t50);
|
|
/* 02224B8C */ _t51 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02224B8C */ _t52 = _t51 & 0x00000001u;
|
|
/* 02224B8C */ if (_t52) goto L_02224B90; else goto L_02224BB4;
|
|
L_02224B90: ; // 0x2224b90
|
|
/* 02224B90 */ cpu->f[7] = cpu->f[13] - cpu->f[9];
|
|
/* 02224B94 */ /* nop */
|
|
/* 02224B98 */ _t53 = cpu->r[12] + 0x00000004u;
|
|
/* 02224B98 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t53);
|
|
/* 02224B9C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 02224BA0 */ _t54 = cpu->r[29] + 0x00000020u;
|
|
/* 02224BA0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 02224BA4 */ cpu->f[6] = fma(cpu->f[12], cpu->f[5], cpu->f[9]);
|
|
/* 02224BA8 */ _t55 = cpu->r[29] + 0x0000002Cu;
|
|
/* 02224BA8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 02224BAC */ _t56 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02224BAC */ _t57 = _t56 & 0x00000001u;
|
|
/* 02224BAC */ if (_t57) goto L_02224BB0; else goto L_02224C1C;
|
|
L_02224BB0: ; // 0x2224bb0
|
|
/* 02224BB0 */ goto L_02224BF8;
|
|
L_02224BB4: ; // 0x2224bb4
|
|
/* 02224BB4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[0]);
|
|
/* 02224BB8 */ _t58 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02224BB8 */ _t59 = _t58 & 0x00000001u;
|
|
/* 02224BB8 */ if (_t59) goto L_02224BBC; else goto L_02224BE0;
|
|
L_02224BBC: ; // 0x2224bbc
|
|
/* 02224BBC */ cpu->f[10] = cpu->f[12] - cpu->f[9];
|
|
/* 02224BC0 */ /* nop */
|
|
/* 02224BC4 */ cpu->f[6] = fma(cpu->f[13], cpu->f[5], cpu->f[11]);
|
|
/* 02224BC8 */ _t60 = cpu->r[12] + 0x00000004u;
|
|
/* 02224BC8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t60);
|
|
/* 02224BCC */ _t61 = cpu->r[29] + 0x00000020u;
|
|
/* 02224BCC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t61);
|
|
/* 02224BD0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 02224BD4 */ _t62 = cpu->r[29] + 0x0000002Cu;
|
|
/* 02224BD4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 02224BD8 */ _t63 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02224BD8 */ _t64 = _t63 & 0x00000001u;
|
|
/* 02224BD8 */ if (_t64) goto L_02224BDC; else goto L_02224C1C;
|
|
L_02224BDC: ; // 0x2224bdc
|
|
/* 02224BDC */ goto L_02224BF8;
|
|
L_02224BE0: ; // 0x2224be0
|
|
/* 02224BE0 */ cpu->f[6] = cpu->f[12] + cpu->f[13];
|
|
/* 02224BE4 */ _t65 = cpu->r[12] + 0x00000004u;
|
|
/* 02224BE4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t65);
|
|
/* 02224BE8 */ _t66 = cpu->r[29] + 0x00000020u;
|
|
/* 02224BE8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t66);
|
|
/* 02224BEC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 02224BF0 */ _t67 = cpu->r[29] + 0x0000002Cu;
|
|
/* 02224BF0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t67);
|
|
/* 02224BF4 */ _t68 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02224BF4 */ _t69 = _t68 & 0x00000001u;
|
|
/* 02224BF4 */ if (_t69) goto L_02224BF8; else goto L_02224C1C;
|
|
L_02224BF8: ; // 0x2224bf8
|
|
/* 02224BF8 */ cpu->f[7] = cpu->f[12] - cpu->f[13];
|
|
/* 02224BFC */ /* nop */
|
|
/* 02224C00 */ _t70 = cpu->r[12] + 0x00000008u;
|
|
/* 02224C00 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t70);
|
|
/* 02224C04 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[0]);
|
|
/* 02224C08 */ _t71 = cpu->r[29] + 0x00000030u;
|
|
/* 02224C08 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t71);
|
|
/* 02224C0C */ cpu->f[12] = fma(cpu->f[10], cpu->f[5], cpu->f[8]);
|
|
/* 02224C10 */ _t72 = cpu->r[29] + 0x00000024u;
|
|
/* 02224C10 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t72);
|
|
/* 02224C14 */ _t73 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02224C14 */ _t74 = _t73 & 0x00000001u;
|
|
/* 02224C14 */ if (_t74) goto L_02224C18; else goto L_02224C80;
|
|
L_02224C18: ; // 0x2224c18
|
|
/* 02224C18 */ goto L_02224C60;
|
|
L_02224C1C: ; // 0x2224c1c
|
|
/* 02224C1C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 02224C20 */ _t75 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02224C20 */ _t76 = _t75 & 0x00000001u;
|
|
/* 02224C20 */ if (_t76) goto L_02224C24; else goto L_02224C48;
|
|
L_02224C24: ; // 0x2224c24
|
|
/* 02224C24 */ cpu->f[9] = cpu->f[10] - cpu->f[13];
|
|
/* 02224C28 */ _t77 = cpu->r[12] + 0x00000008u;
|
|
/* 02224C28 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t77);
|
|
/* 02224C2C */ /* nop */
|
|
/* 02224C30 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[0]);
|
|
/* 02224C34 */ _t78 = cpu->r[29] + 0x00000024u;
|
|
/* 02224C34 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t78);
|
|
/* 02224C38 */ cpu->f[12] = fma(cpu->f[12], cpu->f[5], cpu->f[11]);
|
|
/* 02224C3C */ _t79 = cpu->r[29] + 0x00000030u;
|
|
/* 02224C3C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t79);
|
|
/* 02224C40 */ _t80 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02224C40 */ _t81 = _t80 & 0x00000001u;
|
|
/* 02224C40 */ if (_t81) goto L_02224C44; else goto L_02224C80;
|
|
L_02224C44: ; // 0x2224c44
|
|
/* 02224C44 */ goto L_02224C60;
|
|
L_02224C48: ; // 0x2224c48
|
|
/* 02224C48 */ _t82 = cpu->r[12] + 0x00000008u;
|
|
/* 02224C48 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t82);
|
|
/* 02224C4C */ cpu->f[12] = cpu->f[10] + cpu->f[12];
|
|
/* 02224C50 */ _t83 = cpu->r[29] + 0x00000030u;
|
|
/* 02224C50 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t83);
|
|
/* 02224C54 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[0]);
|
|
/* 02224C58 */ _t84 = cpu->r[29] + 0x00000024u;
|
|
/* 02224C58 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t84);
|
|
/* 02224C5C */ _t85 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02224C5C */ _t86 = _t85 & 0x00000001u;
|
|
/* 02224C5C */ if (_t86) goto L_02224C60; else goto L_02224C80;
|
|
L_02224C60: ; // 0x2224c60
|
|
/* 02224C60 */ cpu->f[13] = cpu->f[11] - cpu->f[7];
|
|
/* 02224C64 */ /* nop */
|
|
/* 02224C68 */ _t87 = cpu->r[12] + 0x00000004u;
|
|
/* 02224C68 */ rbrew_write_f32(cpu->mem, _t87, cpu->f[12]);
|
|
/* 02224C6C */ cpu->f[10] = fma(cpu->f[10], cpu->f[5], cpu->f[7]);
|
|
/* 02224C70 */ _t88 = cpu->r[12] + 0x00000000u;
|
|
/* 02224C70 */ rbrew_write_f32(cpu->mem, _t88, cpu->f[6]);
|
|
/* 02224C74 */ _t89 = cpu->r[12] + 0x00000008u;
|
|
/* 02224C74 */ rbrew_write_f32(cpu->mem, _t89, cpu->f[10]);
|
|
/* 02224C78 */ _t90 = cpu->r[29] + 0x00000000u;
|
|
/* 02224C78 */ cpu->r[10] = rbrew_read32(cpu->mem, _t90);
|
|
/* 02224C7C */ goto L_02224CBC;
|
|
L_02224C80: ; // 0x2224c80
|
|
/* 02224C80 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[0]);
|
|
/* 02224C84 */ _t91 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02224C84 */ _t92 = _t91 & 0x00000001u;
|
|
/* 02224C84 */ if (_t92) goto L_02224C88; else goto L_02224CA8;
|
|
L_02224C88: ; // 0x2224c88
|
|
/* 02224C88 */ cpu->f[8] = cpu->f[10] - cpu->f[7];
|
|
/* 02224C8C */ /* nop */
|
|
/* 02224C90 */ _t93 = cpu->r[12] + 0x00000004u;
|
|
/* 02224C90 */ rbrew_write_f32(cpu->mem, _t93, cpu->f[12]);
|
|
/* 02224C94 */ cpu->f[10] = fma(cpu->f[11], cpu->f[5], cpu->f[9]);
|
|
/* 02224C98 */ _t94 = cpu->r[12] + 0x00000000u;
|
|
/* 02224C98 */ rbrew_write_f32(cpu->mem, _t94, cpu->f[6]);
|
|
/* 02224C9C */ _t95 = cpu->r[12] + 0x00000008u;
|
|
/* 02224C9C */ rbrew_write_f32(cpu->mem, _t95, cpu->f[10]);
|
|
/* 02224CA0 */ _t96 = cpu->r[29] + 0x00000000u;
|
|
/* 02224CA0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t96);
|
|
/* 02224CA4 */ goto L_02224CBC;
|
|
L_02224CA8: ; // 0x2224ca8
|
|
/* 02224CA8 */ cpu->f[10] = cpu->f[10] + cpu->f[11];
|
|
/* 02224CAC */ _t97 = cpu->r[12] + 0x00000004u;
|
|
/* 02224CAC */ rbrew_write_f32(cpu->mem, _t97, cpu->f[12]);
|
|
/* 02224CB0 */ _t98 = cpu->r[12] + 0x00000000u;
|
|
/* 02224CB0 */ rbrew_write_f32(cpu->mem, _t98, cpu->f[6]);
|
|
/* 02224CB4 */ _t99 = cpu->r[12] + 0x00000008u;
|
|
/* 02224CB4 */ rbrew_write_f32(cpu->mem, _t99, cpu->f[10]);
|
|
/* 02224CB8 */ _t100 = cpu->r[29] + 0x00000000u;
|
|
/* 02224CB8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t100);
|
|
L_02224CBC: ; // 0x2224cbc
|
|
/* 02224CBC */ cpu->r[0] = rbrew_rlwinm(cpu->r[10], 0x00000000u, 0x0000001Du, 0x0000001Au);
|
|
/* 02224CC0 */ _t101 = cpu->r[29] + 0x00000000u;
|
|
/* 02224CC0 */ rbrew_write32(cpu->mem, _t101, cpu->r[0]);
|
|
/* 02224CC4 */ _t102 = cpu->r[12] + 0x00000000u;
|
|
/* 02224CC4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t102);
|
|
/* 02224CC8 */ _t103 = cpu->r[28] + 0x000001A8u;
|
|
/* 02224CC8 */ rbrew_write_f32(cpu->mem, _t103, cpu->f[12]);
|
|
/* 02224CCC */ _t104 = cpu->r[12] + 0x00000004u;
|
|
/* 02224CCC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t104);
|
|
/* 02224CD0 */ cpu->f[7] = cpu->f[13] * cpu->f[13];
|
|
/* 02224CD4 */ _t105 = cpu->r[28] + 0x000001ACu;
|
|
/* 02224CD4 */ rbrew_write_f32(cpu->mem, _t105, cpu->f[13]);
|
|
/* 02224CD8 */ _t106 = cpu->r[12] + 0x00000008u;
|
|
/* 02224CD8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t106);
|
|
/* 02224CDC */ cpu->f[8] = fma(cpu->f[12], cpu->f[12], cpu->f[7]);
|
|
/* 02224CE0 */ cpu->f[7] = fma(cpu->f[11], cpu->f[11], cpu->f[8]);
|
|
/* 02224CE4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[0]);
|
|
/* 02224CE8 */ _t107 = cpu->r[28] + 0x000001B0u;
|
|
/* 02224CE8 */ rbrew_write_f32(cpu->mem, _t107, cpu->f[11]);
|
|
/* 02224CEC */ _t108 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02224CEC */ _t109 = _t108 & 0x00000001u;
|
|
/* 02224CEC */ if (_t109) goto L_02224CF0; else goto L_02224D2C;
|
|
L_02224CF0: ; // 0x2224cf0
|
|
/* 02224CF0 */ cpu->r[7] = 0x10050000u;
|
|
/* 02224CF4 */ cpu->r[6] = 0x10050000u;
|
|
/* 02224CF8 */ _t110 = cpu->r[7] + 0xFFFFDEECu;
|
|
/* 02224CF8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t110);
|
|
/* 02224CFC */ _t111 = cpu->r[6] + 0xFFFFDEF0u;
|
|
/* 02224CFC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t111);
|
|
/* 02224D00 */ _ft112 = sqrt(cpu->f[7]);
|
|
/* 02224D00 */ _ft113 = (double)(int32_t)0x00000001u;
|
|
/* 02224D00 */ cpu->f[9] = _ft113 / _ft112;
|
|
/* 02224D04 */ cpu->f[0] = cpu->f[9] * cpu->f[9];
|
|
/* 02224D08 */ cpu->f[8] = cpu->f[9] * cpu->f[13];
|
|
/* 02224D0C */ cpu->f[0] = -fma(cpu->f[0], cpu->f[7], -(cpu->f[12]));
|
|
/* 02224D10 */ cpu->f[9] = cpu->f[0] * cpu->f[8];
|
|
/* 02224D14 */ _t114 = cpu->r[28] + 0x000001B0u;
|
|
/* 02224D14 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t114);
|
|
/* 02224D18 */ /* nop */
|
|
/* 02224D1C */ cpu->f[11] = cpu->f[11] * cpu->f[9];
|
|
/* 02224D20 */ /* nop */
|
|
/* 02224D24 */ _t115 = cpu->r[28] + 0x000001B0u;
|
|
/* 02224D24 */ rbrew_write_f32(cpu->mem, _t115, cpu->f[11]);
|
|
/* 02224D28 */ /* nop */
|
|
L_02224D2C: ; // 0x2224d2c
|
|
/* 02224D2C */ /* nop */
|
|
/* 02224D30 */ _t116 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02224D30 */ cpu->r[0] = rbrew_read32(cpu->mem, _t116);
|
|
/* 02224D34 */ cpu->lr = cpu->r[0];
|
|
/* 02224D38 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 02224D3C */ return;
|
|
}
|
|
|
|
// fn_02224D40 @ 0x2224d40
|
|
void Gambit_fn_02224D40(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _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;
|
|
|
|
L_02224D40: ; // 0x2224d40
|
|
/* 02224D40 */ _t0 = cpu->r[1] + 0xFFFFFFB0u;
|
|
/* 02224D40 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02224D40 */ cpu->r[1] = _t0;
|
|
/* 02224D44 */ /* nop */
|
|
/* 02224D48 */ cpu->r[0] = cpu->lr;
|
|
/* 02224D4C */ _t1 = cpu->r[1] + 0x00000054u;
|
|
/* 02224D4C */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02224D50 */ cpu->r[31] = cpu->r[3];
|
|
/* 02224D54 */ _t2 = cpu->r[31] + 0x000001C0u;
|
|
/* 02224D54 */ cpu->r[10] = rbrew_read16(cpu->mem, _t2);
|
|
/* 02224D58 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], 0x00008CA0u);
|
|
/* 02224D5C */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02224D5C */ _t4 = _t3 & 0x00000001u;
|
|
/* 02224D5C */ if (_t4) goto L_02224D68; else goto L_02224D60;
|
|
L_02224D60: ; // 0x2224d60
|
|
/* 02224D60 */ cpu->r[3] = cpu->r[31];
|
|
/* 02224D64 */ Gambit_fn_02224158(cpu);
|
|
L_02224D68: ; // 0x2224d68
|
|
/* 02224D68 */ _t5 = cpu->r[31] + 0x000001DCu;
|
|
/* 02224D68 */ cpu->r[11] = rbrew_read8(cpu->mem, _t5);
|
|
/* 02224D6C */ cpu->r[29] = 0x00000000u;
|
|
/* 02224D70 */ _t6 = cpu->r[31] + 0x00000130u;
|
|
/* 02224D70 */ rbrew_write32(cpu->mem, _t6, cpu->r[29]);
|
|
/* 02224D74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02224D78 */ _t7 = cpu->r[31] + 0x0000012Cu;
|
|
/* 02224D78 */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[29]);
|
|
/* 02224D7C */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02224D7C */ _t9 = _t8 & 0x00000001u;
|
|
/* 02224D7C */ if (_t9) goto L_02224D94; else goto L_02224D80;
|
|
L_02224D80: ; // 0x2224d80
|
|
/* 02224D80 */ cpu->r[3] = 0x101C0000u;
|
|
/* 02224D84 */ _t10 = cpu->r[31] + 0x000001DEu;
|
|
/* 02224D84 */ cpu->r[4] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t10);
|
|
/* 02224D88 */ _t11 = cpu->r[3] + 0x000054F4u;
|
|
/* 02224D88 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02224D8C */ cpu->r[5] = cpu->r[31] + 0x000001C4u;
|
|
/* 02224D90 */ Gambit_fn_02227BC8(cpu);
|
|
L_02224D94: ; // 0x2224d94
|
|
/* 02224D94 */ _t12 = cpu->r[31] + 0x0000005Cu;
|
|
/* 02224D94 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02224D98 */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 02224D9C */ _t13 = cpu->r[31] + 0x000001C0u;
|
|
/* 02224D9C */ cpu->r[0] = rbrew_read16(cpu->mem, _t13);
|
|
/* 02224DA0 */ cpu->r[4] = cpu->r[12] + cpu->r[0];
|
|
/* 02224DA4 */ Gambit_fn_028300A4(cpu);
|
|
/* 02224DA8 */ _t14 = cpu->r[31] + 0x000001C2u;
|
|
/* 02224DA8 */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 02224DAC */ cpu->r[12] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x0000000Au);
|
|
/* 02224DB0 */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 02224DB4 */ cpu->r[30] = cpu->r[12] + 0x000000FAu;
|
|
/* 02224DB8 */ Gambit_fn_02830138(cpu);
|
|
/* 02224DBC */ /* nop */
|
|
/* 02224DC0 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02224DC0 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02224DC0 */ if (_t16) goto L_02224DC4; else goto L_02224FF8;
|
|
L_02224DC4: ; // 0x2224dc4
|
|
/* 02224DC4 */ _t17 = cpu->r[31] + 0x000001C2u;
|
|
/* 02224DC4 */ cpu->r[5] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t17);
|
|
/* 02224DC8 */ _t18 = cpu->r[31] + 0x00000004u;
|
|
/* 02224DC8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02224DCC */ cpu->r[5] = cpu->r[5] + 0x00000001u;
|
|
/* 02224DD0 */ _t19 = cpu->r[31] + 0x000001C2u;
|
|
/* 02224DD0 */ rbrew_write16(cpu->mem, _t19, (uint16_t)cpu->r[5]);
|
|
/* 02224DD4 */ _t20 = cpu->r[6] + 0x000003D4u;
|
|
/* 02224DD4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02224DD8 */ cpu->ctr = cpu->r[9];
|
|
/* 02224DDC */ cpu->r[3] = cpu->r[31];
|
|
/* 02224DE0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02224DE4 */ cpu->r[12] = 0x101E0000u;
|
|
/* 02224DE8 */ cpu->r[4] = cpu->r[31] + 0x000001C4u;
|
|
/* 02224DEC */ cpu->r[0] = cpu->r[31] + 0x000000B0u;
|
|
/* 02224DF0 */ _t21 = cpu->r[12] + 0xFFFF958Cu;
|
|
/* 02224DF0 */ cpu->f[2] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 02224DF4 */ cpu->r[3] = 0x101C0000u;
|
|
/* 02224DF8 */ cpu->r[5] = 0x00000000u;
|
|
/* 02224DFC */ _t22 = cpu->r[31] + 0x000000B4u;
|
|
/* 02224DFC */ cpu->r[9] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02224E00 */ cpu->r[7] = 0x000C0000u;
|
|
/* 02224E04 */ cpu->r[6] = cpu->r[5];
|
|
/* 02224E08 */ _t23 = cpu->r[3] + 0x00001EF8u;
|
|
/* 02224E08 */ cpu->r[3] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02224E0C */ cpu->r[7] = cpu->r[7] + 0x0000000Bu;
|
|
/* 02224E10 */ cpu->r[8] = 0x000000FFu;
|
|
/* 02224E14 */ cpu->r[10] = cpu->r[6];
|
|
/* 02224E18 */ _t24 = cpu->r[1] + 0x00000008u;
|
|
/* 02224E18 */ rbrew_write32(cpu->mem, _t24, cpu->r[0]);
|
|
/* 02224E1C */ Gambit_fn_0204A4DC(cpu);
|
|
/* 02224E20 */ cpu->r[0] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02224E20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02224E24 */ _t25 = cpu->r[31] + 0x000000B0u;
|
|
/* 02224E24 */ rbrew_write32(cpu->mem, _t25, cpu->r[3]);
|
|
/* 02224E28 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02224E28 */ _t27 = _t26 & 0x00000001u;
|
|
/* 02224E28 */ if (_t27) goto L_02224FF0; else goto L_02224E2C;
|
|
L_02224E2C: ; // 0x2224e2c
|
|
/* 02224E2C */ _t28 = cpu->r[31] + 0x000000B4u;
|
|
/* 02224E2C */ cpu->r[4] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02224E30 */ cpu->r[3] = cpu->r[31];
|
|
/* 02224E34 */ Gambit_fn_02224A20(cpu);
|
|
/* 02224E38 */ cpu->r[11] = 0x10050000u;
|
|
/* 02224E3C */ _t29 = cpu->r[31] + 0x000001ACu;
|
|
/* 02224E3C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 02224E40 */ _t30 = cpu->r[11] + 0xFFFFDF10u;
|
|
/* 02224E40 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 02224E44 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[13]);
|
|
/* 02224E48 */ _t31 = cpu->r[31] + 0x000001DCu;
|
|
/* 02224E48 */ cpu->r[8] = rbrew_read8(cpu->mem, _t31);
|
|
/* 02224E4C */ _t32 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02224E4C */ _t33 = _t32 & 0x00000001u;
|
|
/* 02224E4C */ if (_t33) goto L_02224E50; else goto L_02224FE8;
|
|
L_02224E50: ; // 0x2224e50
|
|
/* 02224E50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02224E54 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02224E54 */ _t35 = _t34 & 0x00000001u;
|
|
/* 02224E54 */ if (_t35) goto L_02224EB4; else goto L_02224E58;
|
|
L_02224E58: ; // 0x2224e58
|
|
/* 02224E58 */ _t36 = cpu->r[31] + 0x000001E4u;
|
|
/* 02224E58 */ cpu->r[10] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02224E5C */ _t37 = cpu->r[10] + 0x00000004u;
|
|
/* 02224E5C */ cpu->r[7] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02224E60 */ _t38 = cpu->r[10] + 0x00000008u;
|
|
/* 02224E60 */ cpu->r[9] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02224E64 */ /* nop */
|
|
/* 02224E68 */ /* nop */
|
|
/* 02224E6C */ /* nop */
|
|
/* 02224E70 */ /* nop */
|
|
/* 02224E74 */ _t39 = cpu->r[7] + 0x0000002Cu;
|
|
/* 02224E74 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 02224E78 */ _t40 = cpu->r[9] + 0x0000002Cu;
|
|
/* 02224E78 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 02224E7C */ _t41 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02224E7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02224E80 */ cpu->f[0] = cpu->f[13] - cpu->f[0];
|
|
/* 02224E84 */ _t42 = cpu->r[1] + 0x00000010u;
|
|
/* 02224E84 */ cpu->r[8] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02224E88 */ _t43 = cpu->r[1] + 0x00000020u;
|
|
/* 02224E88 */ rbrew_write32(cpu->mem, _t43, cpu->r[0]);
|
|
/* 02224E8C */ _t44 = cpu->r[1] + 0x00000014u;
|
|
/* 02224E8C */ rbrew_write_f32(cpu->mem, _t44, cpu->f[0]);
|
|
/* 02224E90 */ _t45 = cpu->r[1] + 0x00000014u;
|
|
/* 02224E90 */ cpu->r[9] = rbrew_read32(cpu->mem, _t45);
|
|
/* 02224E94 */ _t46 = cpu->r[1] + 0x00000024u;
|
|
/* 02224E94 */ rbrew_write32(cpu->mem, _t46, cpu->r[8]);
|
|
/* 02224E98 */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 02224E9C */ _t47 = cpu->r[1] + 0x00000028u;
|
|
/* 02224E9C */ rbrew_write32(cpu->mem, _t47, cpu->r[9]);
|
|
/* 02224EA0 */ Gambit_fn_02C69350(cpu);
|
|
/* 02224EA4 */ cpu->r[7] = 0x10050000u;
|
|
/* 02224EA8 */ _t48 = cpu->r[7] + 0xFFFFDF14u;
|
|
/* 02224EA8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 02224EAC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[0]);
|
|
/* 02224EB0 */ _t49 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02224EB0 */ _t50 = _t49 & 0x00000001u;
|
|
/* 02224EB0 */ if (_t50) goto L_02224FF8; else goto L_02224EB4;
|
|
L_02224EB4: ; // 0x2224eb4
|
|
/* 02224EB4 */ _t51 = cpu->r[31] + 0x000000F8u;
|
|
/* 02224EB4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 02224EB8 */ _t52 = cpu->r[31] + 0x000001C4u;
|
|
/* 02224EB8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 02224EBC */ _t53 = cpu->r[31] + 0x000000CCu;
|
|
/* 02224EBC */ rbrew_write_f32(cpu->mem, _t53, cpu->f[0]);
|
|
/* 02224EC0 */ _t54 = cpu->r[31] + 0x000001C8u;
|
|
/* 02224EC0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 02224EC4 */ _t55 = cpu->r[31] + 0x000000FCu;
|
|
/* 02224EC4 */ rbrew_write_f32(cpu->mem, _t55, cpu->f[13]);
|
|
/* 02224EC8 */ _t56 = cpu->r[31] + 0x00000094u;
|
|
/* 02224EC8 */ rbrew_write_f32(cpu->mem, _t56, cpu->f[13]);
|
|
/* 02224ECC */ _t57 = cpu->r[31] + 0x000000F4u;
|
|
/* 02224ECC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 02224ED0 */ _t58 = cpu->r[31] + 0x00000088u;
|
|
/* 02224ED0 */ rbrew_write_f32(cpu->mem, _t58, cpu->f[13]);
|
|
/* 02224ED4 */ _t59 = cpu->r[31] + 0x000000C8u;
|
|
/* 02224ED4 */ rbrew_write_f32(cpu->mem, _t59, cpu->f[12]);
|
|
/* 02224ED8 */ _t60 = cpu->r[31] + 0x000001CCu;
|
|
/* 02224ED8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t60);
|
|
/* 02224EDC */ _t61 = cpu->r[31] + 0x00000098u;
|
|
/* 02224EDC */ rbrew_write_f32(cpu->mem, _t61, cpu->f[0]);
|
|
/* 02224EE0 */ _t62 = cpu->r[31] + 0x0000009Cu;
|
|
/* 02224EE0 */ rbrew_write_f32(cpu->mem, _t62, cpu->f[13]);
|
|
/* 02224EE4 */ _t63 = cpu->r[31] + 0x00000104u;
|
|
/* 02224EE4 */ rbrew_write_f32(cpu->mem, _t63, cpu->f[13]);
|
|
/* 02224EE8 */ _t64 = cpu->r[31] + 0x00000090u;
|
|
/* 02224EE8 */ rbrew_write_f32(cpu->mem, _t64, cpu->f[13]);
|
|
/* 02224EEC */ _t65 = cpu->r[31] + 0x000000F0u;
|
|
/* 02224EEC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t65);
|
|
/* 02224EF0 */ _t66 = cpu->r[31] + 0x0000008Cu;
|
|
/* 02224EF0 */ rbrew_write_f32(cpu->mem, _t66, cpu->f[0]);
|
|
/* 02224EF4 */ _t67 = cpu->r[31] + 0x000000C4u;
|
|
/* 02224EF4 */ rbrew_write_f32(cpu->mem, _t67, cpu->f[13]);
|
|
/* 02224EF8 */ cpu->r[7] = 0x101D0000u;
|
|
/* 02224EFC */ _t68 = cpu->r[31] + 0x00000100u;
|
|
/* 02224EFC */ rbrew_write_f32(cpu->mem, _t68, cpu->f[0]);
|
|
/* 02224F00 */ _t69 = cpu->r[7] + 0xFFFFFE00u;
|
|
/* 02224F00 */ cpu->r[6] = rbrew_read32(cpu->mem, _t69);
|
|
/* 02224F00 */ cpu->r[7] = _t69;
|
|
/* 02224F04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 02224F08 */ cpu->r[30] = 0x101D0000u;
|
|
/* 02224F0C */ _t70 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02224F0C */ _t71 = _t70 & 0x00000001u;
|
|
/* 02224F0C */ if (_t71) goto L_02224F10; else goto L_02224F2C;
|
|
L_02224F10: ; // 0x2224f10
|
|
/* 02224F10 */ cpu->r[8] = 0x00000001u;
|
|
/* 02224F14 */ cpu->r[4] = 0x101C0000u;
|
|
/* 02224F18 */ cpu->r[3] = cpu->r[30] + 0x00004F7Fu;
|
|
/* 02224F1C */ cpu->r[5] = 0x00000016u;
|
|
/* 02224F20 */ cpu->r[4] = cpu->r[4] + 0x000054A8u;
|
|
/* 02224F24 */ _t72 = cpu->r[7] + 0x00000000u;
|
|
/* 02224F24 */ rbrew_write32(cpu->mem, _t72, cpu->r[8]);
|
|
/* 02224F28 */ rbrew_dispatch(cpu, 0x02d0b870u);
|
|
L_02224F2C: ; // 0x2224f2c
|
|
/* 02224F2C */ cpu->r[5] = 0x101D0000u;
|
|
/* 02224F30 */ _t73 = cpu->r[5] + 0xFFFFFDFCu;
|
|
/* 02224F30 */ cpu->r[9] = rbrew_read32(cpu->mem, _t73);
|
|
/* 02224F30 */ cpu->r[5] = _t73;
|
|
/* 02224F34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02224F38 */ cpu->r[28] = 0x101D0000u;
|
|
/* 02224F3C */ _t74 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02224F3C */ _t75 = _t74 & 0x00000001u;
|
|
/* 02224F3C */ if (_t75) goto L_02224F40; else goto L_02224F68;
|
|
L_02224F40: ; // 0x2224f40
|
|
/* 02224F40 */ _t76 = cpu->r[28] + 0xFFFFFF6Cu;
|
|
/* 02224F40 */ rbrew_write32(cpu->mem, _t76, cpu->r[29]);
|
|
/* 02224F44 */ cpu->r[11] = 0x00000001u;
|
|
/* 02224F48 */ _t77 = cpu->r[5] + 0x00000000u;
|
|
/* 02224F48 */ rbrew_write32(cpu->mem, _t77, cpu->r[11]);
|
|
/* 02224F4C */ Gambit_fn_0282A450(cpu);
|
|
/* 02224F50 */ cpu->r[27] = cpu->r[3];
|
|
/* 02224F54 */ Gambit_fn_02836FFC(cpu);
|
|
/* 02224F58 */ _t78 = cpu->r[28] + 0xFFFFFF6Cu;
|
|
/* 02224F58 */ cpu->r[12] = rbrew_read32(cpu->mem, _t78);
|
|
/* 02224F5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02224F60 */ _t79 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02224F60 */ _t80 = _t79 & 0x00000001u;
|
|
/* 02224F60 */ if (_t80) goto L_02224F8C; else goto L_02224F64;
|
|
L_02224F64: ; // 0x2224f64
|
|
/* 02224F64 */ goto L_02224FA8;
|
|
L_02224F68: ; // 0x2224f68
|
|
/* 02224F68 */ _t81 = cpu->r[28] + 0xFFFFFF6Cu;
|
|
/* 02224F68 */ cpu->r[8] = rbrew_read32(cpu->mem, _t81);
|
|
/* 02224F6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02224F70 */ _t82 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02224F70 */ _t83 = _t82 & 0x00000001u;
|
|
/* 02224F70 */ if (_t83) goto L_02224F74; else goto L_02224FB4;
|
|
L_02224F74: ; // 0x2224f74
|
|
/* 02224F74 */ Gambit_fn_0282A450(cpu);
|
|
/* 02224F78 */ cpu->r[27] = cpu->r[3];
|
|
/* 02224F7C */ Gambit_fn_02836FFC(cpu);
|
|
/* 02224F80 */ _t84 = cpu->r[28] + 0xFFFFFF6Cu;
|
|
/* 02224F80 */ cpu->r[12] = rbrew_read32(cpu->mem, _t84);
|
|
/* 02224F84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02224F88 */ _t85 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02224F88 */ _t86 = _t85 & 0x00000001u;
|
|
/* 02224F88 */ if (_t86) goto L_02224F8C; else goto L_02224FA8;
|
|
L_02224F8C: ; // 0x2224f8c
|
|
/* 02224F8C */ cpu->r[29] = 0x101D0000u;
|
|
/* 02224F90 */ cpu->r[4] = cpu->r[30] + 0x00004F7Fu;
|
|
/* 02224F94 */ cpu->r[29] = cpu->r[29] + 0xFFFFFF70u;
|
|
/* 02224F98 */ cpu->r[5] = 0x00000003u;
|
|
/* 02224F9C */ cpu->r[3] = cpu->r[29];
|
|
/* 02224FA0 */ Gambit_fn_0282A374(cpu);
|
|
/* 02224FA4 */ _t87 = cpu->r[28] + 0xFFFFFF6Cu;
|
|
/* 02224FA4 */ rbrew_write32(cpu->mem, _t87, cpu->r[29]);
|
|
L_02224FA8: ; // 0x2224fa8
|
|
/* 02224FA8 */ cpu->r[3] = cpu->r[27];
|
|
/* 02224FAC */ Gambit_fn_02837030(cpu);
|
|
/* 02224FB0 */ _t88 = cpu->r[28] + 0xFFFFFF6Cu;
|
|
/* 02224FB0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t88);
|
|
L_02224FB4: ; // 0x2224fb4
|
|
/* 02224FB4 */ cpu->r[0] = 0x10050000u;
|
|
/* 02224FB8 */ _t89 = cpu->r[31] + 0x00000030u;
|
|
/* 02224FB8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t89);
|
|
/* 02224FBC */ cpu->r[0] = cpu->r[0] + 0xFFFFDE70u;
|
|
/* 02224FC0 */ _t90 = cpu->r[8] + 0x00000004u;
|
|
/* 02224FC0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t90);
|
|
/* 02224FC4 */ _t91 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02224FC4 */ rbrew_write32(cpu->mem, _t91, cpu->r[0]);
|
|
/* 02224FC8 */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 02224FCC */ _t92 = cpu->r[1] + 0x00000018u;
|
|
/* 02224FCC */ rbrew_write32(cpu->mem, _t92, cpu->r[10]);
|
|
/* 02224FD0 */ Gambit_fn_027B70F0(cpu);
|
|
/* 02224FD4 */ /* nop */
|
|
/* 02224FD8 */ _t93 = cpu->r[1] + 0x00000054u;
|
|
/* 02224FD8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t93);
|
|
/* 02224FDC */ cpu->lr = cpu->r[0];
|
|
/* 02224FE0 */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 02224FE4 */ return;
|
|
L_02224FE8: ; // 0x2224fe8
|
|
/* 02224FE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02224FEC */ _t94 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02224FEC */ _t95 = _t94 & 0x00000001u;
|
|
/* 02224FEC */ if (_t95) goto L_02224FF0; else goto L_02224FF8;
|
|
L_02224FF0: ; // 0x2224ff0
|
|
/* 02224FF0 */ cpu->r[3] = cpu->r[31];
|
|
/* 02224FF4 */ Gambit_fn_02224158(cpu);
|
|
L_02224FF8: ; // 0x2224ff8
|
|
/* 02224FF8 */ /* nop */
|
|
/* 02224FFC */ _t96 = cpu->r[1] + 0x00000054u;
|
|
/* 02224FFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t96);
|
|
/* 02225000 */ cpu->lr = cpu->r[0];
|
|
/* 02225004 */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 02225008 */ return;
|
|
}
|
|
|
|
// fn_0222500C @ 0x222500c
|
|
void Gambit_fn_0222500C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _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;
|
|
|
|
L_0222500C: ; // 0x222500c
|
|
/* 0222500C */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 0222500C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0222500C */ cpu->r[1] = _t0;
|
|
/* 02225010 */ /* nop */
|
|
/* 02225014 */ cpu->r[0] = cpu->lr;
|
|
/* 02225018 */ _t1 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02225018 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0222501C */ cpu->r[29] = cpu->r[3];
|
|
/* 02225020 */ _t2 = cpu->r[29] + 0x000001C0u;
|
|
/* 02225020 */ cpu->r[12] = rbrew_read16(cpu->mem, _t2);
|
|
/* 02225024 */ _t3 = cpu->r[29] + 0x0000005Cu;
|
|
/* 02225024 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02225028 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 0222502C */ cpu->r[4] = cpu->r[11] + cpu->r[12];
|
|
/* 02225030 */ Gambit_fn_028300A4(cpu);
|
|
/* 02225034 */ _t4 = cpu->r[29] + 0x000001C2u;
|
|
/* 02225034 */ cpu->r[11] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t4);
|
|
/* 02225038 */ cpu->r[9] = (uint32_t)((int32_t)cpu->r[11] * (int32_t)0x0000000Au);
|
|
/* 0222503C */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 02225040 */ cpu->r[31] = cpu->r[9] + 0x000000FAu;
|
|
/* 02225044 */ Gambit_fn_02830138(cpu);
|
|
/* 02225048 */ /* nop */
|
|
/* 0222504C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222504C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0222504C */ if (_t6) goto L_02225050; else goto L_02225180;
|
|
L_02225050: ; // 0x2225050
|
|
/* 02225050 */ _t7 = cpu->r[29] + 0x000000F4u;
|
|
/* 02225050 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 02225054 */ _t8 = cpu->r[29] + 0x000000F0u;
|
|
/* 02225054 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 02225058 */ _t9 = cpu->r[29] + 0x000000C8u;
|
|
/* 02225058 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[12]);
|
|
/* 0222505C */ _t10 = cpu->r[29] + 0x000001C4u;
|
|
/* 0222505C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 02225060 */ _t11 = cpu->r[29] + 0x000001C8u;
|
|
/* 02225060 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 02225064 */ _t12 = cpu->r[29] + 0x000000FCu;
|
|
/* 02225064 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[10]);
|
|
/* 02225068 */ _t13 = cpu->r[29] + 0x0000008Cu;
|
|
/* 02225068 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[12]);
|
|
/* 0222506C */ _t14 = cpu->r[29] + 0x00000100u;
|
|
/* 0222506C */ rbrew_write_f32(cpu->mem, _t14, cpu->f[12]);
|
|
/* 02225070 */ _t15 = cpu->r[29] + 0x00000098u;
|
|
/* 02225070 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[12]);
|
|
/* 02225074 */ _t16 = cpu->r[29] + 0x000000C4u;
|
|
/* 02225074 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[11]);
|
|
/* 02225078 */ _t17 = cpu->r[29] + 0x00000094u;
|
|
/* 02225078 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[10]);
|
|
/* 0222507C */ _t18 = cpu->r[29] + 0x000001CCu;
|
|
/* 0222507C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 02225080 */ _t19 = cpu->r[29] + 0x000001C2u;
|
|
/* 02225080 */ cpu->r[11] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t19);
|
|
/* 02225084 */ _t20 = cpu->r[29] + 0x00000104u;
|
|
/* 02225084 */ rbrew_write_f32(cpu->mem, _t20, cpu->f[13]);
|
|
/* 02225088 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 0222508C */ _t21 = cpu->r[29] + 0x00000090u;
|
|
/* 0222508C */ rbrew_write_f32(cpu->mem, _t21, cpu->f[13]);
|
|
/* 02225090 */ _t22 = cpu->r[29] + 0x0000009Cu;
|
|
/* 02225090 */ rbrew_write_f32(cpu->mem, _t22, cpu->f[13]);
|
|
/* 02225094 */ _t23 = cpu->r[29] + 0x000000F8u;
|
|
/* 02225094 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 02225098 */ _t24 = cpu->r[29] + 0x000001C2u;
|
|
/* 02225098 */ rbrew_write16(cpu->mem, _t24, (uint16_t)cpu->r[11]);
|
|
/* 0222509C */ _t25 = cpu->r[29] + 0x000000CCu;
|
|
/* 0222509C */ rbrew_write_f32(cpu->mem, _t25, cpu->f[0]);
|
|
/* 022250A0 */ cpu->r[11] = 0x101D0000u;
|
|
/* 022250A4 */ _t26 = cpu->r[29] + 0x00000088u;
|
|
/* 022250A4 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[10]);
|
|
/* 022250A8 */ _t27 = cpu->r[11] + 0xFFFFFE00u;
|
|
/* 022250A8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t27);
|
|
/* 022250A8 */ cpu->r[11] = _t27;
|
|
/* 022250AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022250B0 */ cpu->r[28] = 0x101D0000u;
|
|
/* 022250B4 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022250B4 */ _t29 = _t28 & 0x00000001u;
|
|
/* 022250B4 */ if (_t29) goto L_022250B8; else goto L_022250D4;
|
|
L_022250B8: ; // 0x22250b8
|
|
/* 022250B8 */ cpu->r[10] = 0x00000001u;
|
|
/* 022250BC */ cpu->r[4] = 0x101C0000u;
|
|
/* 022250C0 */ cpu->r[3] = cpu->r[28] + 0x00004F7Fu;
|
|
/* 022250C4 */ cpu->r[5] = 0x00000016u;
|
|
/* 022250C8 */ cpu->r[4] = cpu->r[4] + 0x000054A8u;
|
|
/* 022250CC */ _t30 = cpu->r[11] + 0x00000000u;
|
|
/* 022250CC */ rbrew_write32(cpu->mem, _t30, cpu->r[10]);
|
|
/* 022250D0 */ rbrew_dispatch(cpu, 0x02d0b870u);
|
|
L_022250D4: ; // 0x22250d4
|
|
/* 022250D4 */ cpu->r[9] = 0x101D0000u;
|
|
/* 022250D8 */ _t31 = cpu->r[9] + 0xFFFFFDFCu;
|
|
/* 022250D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 022250D8 */ cpu->r[9] = _t31;
|
|
/* 022250DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022250E0 */ cpu->r[27] = 0x101D0000u;
|
|
/* 022250E4 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022250E4 */ _t33 = _t32 & 0x00000001u;
|
|
/* 022250E4 */ if (_t33) goto L_022250E8; else goto L_02225114;
|
|
L_022250E8: ; // 0x22250e8
|
|
/* 022250E8 */ cpu->r[10] = 0x00000001u;
|
|
/* 022250EC */ cpu->r[12] = 0x00000000u;
|
|
/* 022250F0 */ _t34 = cpu->r[9] + 0x00000000u;
|
|
/* 022250F0 */ rbrew_write32(cpu->mem, _t34, cpu->r[10]);
|
|
/* 022250F4 */ _t35 = cpu->r[27] + 0xFFFFFF6Cu;
|
|
/* 022250F4 */ rbrew_write32(cpu->mem, _t35, cpu->r[12]);
|
|
/* 022250F8 */ Gambit_fn_0282A450(cpu);
|
|
/* 022250FC */ cpu->r[30] = cpu->r[3];
|
|
/* 02225100 */ Gambit_fn_02836FFC(cpu);
|
|
/* 02225104 */ _t36 = cpu->r[27] + 0xFFFFFF6Cu;
|
|
/* 02225104 */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02225108 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0222510C */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222510C */ _t38 = _t37 & 0x00000001u;
|
|
/* 0222510C */ if (_t38) goto L_02225138; else goto L_02225110;
|
|
L_02225110: ; // 0x2225110
|
|
/* 02225110 */ goto L_02225154;
|
|
L_02225114: ; // 0x2225114
|
|
/* 02225114 */ _t39 = cpu->r[27] + 0xFFFFFF6Cu;
|
|
/* 02225114 */ cpu->r[12] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02225118 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0222511C */ _t40 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222511C */ _t41 = _t40 & 0x00000001u;
|
|
/* 0222511C */ if (_t41) goto L_02225120; else goto L_02225160;
|
|
L_02225120: ; // 0x2225120
|
|
/* 02225120 */ Gambit_fn_0282A450(cpu);
|
|
/* 02225124 */ cpu->r[30] = cpu->r[3];
|
|
/* 02225128 */ Gambit_fn_02836FFC(cpu);
|
|
/* 0222512C */ _t42 = cpu->r[27] + 0xFFFFFF6Cu;
|
|
/* 0222512C */ cpu->r[0] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02225130 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02225134 */ _t43 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02225134 */ _t44 = _t43 & 0x00000001u;
|
|
/* 02225134 */ if (_t44) goto L_02225138; else goto L_02225154;
|
|
L_02225138: ; // 0x2225138
|
|
/* 02225138 */ cpu->r[31] = 0x101D0000u;
|
|
/* 0222513C */ cpu->r[4] = cpu->r[28] + 0x00004F7Fu;
|
|
/* 02225140 */ cpu->r[31] = cpu->r[31] + 0xFFFFFF70u;
|
|
/* 02225144 */ cpu->r[5] = 0x00000003u;
|
|
/* 02225148 */ cpu->r[3] = cpu->r[31];
|
|
/* 0222514C */ Gambit_fn_0282A374(cpu);
|
|
/* 02225150 */ _t45 = cpu->r[27] + 0xFFFFFF6Cu;
|
|
/* 02225150 */ rbrew_write32(cpu->mem, _t45, cpu->r[31]);
|
|
L_02225154: ; // 0x2225154
|
|
/* 02225154 */ cpu->r[3] = cpu->r[30];
|
|
/* 02225158 */ Gambit_fn_02837030(cpu);
|
|
/* 0222515C */ _t46 = cpu->r[27] + 0xFFFFFF6Cu;
|
|
/* 0222515C */ cpu->r[12] = rbrew_read32(cpu->mem, _t46);
|
|
L_02225160: ; // 0x2225160
|
|
/* 02225160 */ cpu->r[9] = 0x10050000u;
|
|
/* 02225164 */ _t47 = cpu->r[29] + 0x00000030u;
|
|
/* 02225164 */ cpu->r[3] = rbrew_read32(cpu->mem, _t47);
|
|
/* 02225168 */ cpu->r[9] = cpu->r[9] + 0xFFFFDE70u;
|
|
/* 0222516C */ _t48 = cpu->r[12] + 0x00000004u;
|
|
/* 0222516C */ cpu->r[0] = rbrew_read32(cpu->mem, _t48);
|
|
/* 02225170 */ _t49 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02225170 */ rbrew_write32(cpu->mem, _t49, cpu->r[9]);
|
|
/* 02225174 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02225178 */ _t50 = cpu->r[1] + 0x00000008u;
|
|
/* 02225178 */ rbrew_write32(cpu->mem, _t50, cpu->r[0]);
|
|
/* 0222517C */ Gambit_fn_027B70F0(cpu);
|
|
L_02225180: ; // 0x2225180
|
|
/* 02225180 */ /* nop */
|
|
/* 02225184 */ _t51 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02225184 */ cpu->r[0] = rbrew_read32(cpu->mem, _t51);
|
|
/* 02225188 */ cpu->lr = cpu->r[0];
|
|
/* 0222518C */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 02225190 */ return;
|
|
}
|
|
|
|
// fn_02225194 @ 0x2225194
|
|
void Gambit_fn_02225194(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _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_02225194: ; // 0x2225194
|
|
/* 02225194 */ _t0 = cpu->r[1] + 0xFFFFFF90u;
|
|
/* 02225194 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02225194 */ cpu->r[1] = _t0;
|
|
/* 02225198 */ /* nop */
|
|
/* 0222519C */ _t1 = cpu->r[1] + 0x00000050u;
|
|
/* 0222519C */ rbrew_write_f64(cpu->mem, _t1, cpu->f[30]);
|
|
/* 022251A0 */ /* nop */
|
|
/* 022251A4 */ _t2 = cpu->r[1] + 0x00000060u;
|
|
/* 022251A4 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 022251A8 */ _t3 = cpu->r[1] + 0x00000058u;
|
|
/* 022251A8 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[30]);
|
|
/* 022251AC */ /* nop */
|
|
/* 022251B0 */ _t4 = cpu->r[1] + 0x00000068u;
|
|
/* 022251B0 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[31]);
|
|
/* 022251B4 */ cpu->r[0] = cpu->lr;
|
|
/* 022251B8 */ _t5 = cpu->r[1] + 0x00000074u;
|
|
/* 022251B8 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 022251BC */ cpu->r[24] = cpu->r[3];
|
|
/* 022251C0 */ _t6 = cpu->r[24] + 0x00000130u;
|
|
/* 022251C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022251C4 */ cpu->r[25] = 0x00000000u;
|
|
/* 022251C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], cpu->r[0]);
|
|
/* 022251CC */ cpu->f[30] = cpu->f[1];
|
|
/* 022251D0 */ _t7 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022251D0 */ _t8 = _t7 & 0x00000001u;
|
|
/* 022251D0 */ if (_t8) goto L_022251D4; else goto L_02225268;
|
|
L_022251D4: ; // 0x22251d4
|
|
/* 022251D4 */ cpu->r[27] = cpu->r[24] + 0x00000194u;
|
|
/* 022251D8 */ cpu->r[28] = 0xFFFFFFFFu;
|
|
/* 022251DC */ cpu->r[12] = 0x10050000u;
|
|
/* 022251E0 */ cpu->r[23] = cpu->r[27];
|
|
/* 022251E4 */ cpu->r[26] = 0x00000000u;
|
|
/* 022251E8 */ _t9 = cpu->r[12] + 0xFFFFDEDCu;
|
|
/* 022251E8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 022251EC */ cpu->r[30] = cpu->r[24] + 0x00000134u;
|
|
/* 022251F0 */ cpu->r[29] = cpu->r[26];
|
|
/* 022251F4 */ cpu->r[31] = cpu->r[24] + 0x00000164u;
|
|
L_022251F8: ; // 0x22251f8
|
|
/* 022251F8 */ _t10 = cpu->r[24] + 0x0000002Cu;
|
|
/* 022251F8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022251FC */ _t11 = cpu->r[24] + 0x000001B8u;
|
|
/* 022251FC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 02225200 */ _t12 = cpu->r[1] + 0x00000020u;
|
|
/* 02225200 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 02225204 */ _t13 = cpu->r[27] + 0x00000004u;
|
|
/* 02225204 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02225204 */ cpu->r[27] = _t13;
|
|
/* 02225208 */ _t14 = cpu->r[23] + cpu->r[25];
|
|
/* 02225208 */ cpu->r[7] = rbrew_read8(cpu->mem, _t14);
|
|
/* 0222520C */ _t15 = cpu->r[24] + 0x00000058u;
|
|
/* 0222520C */ cpu->r[5] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02225210 */ _t16 = cpu->r[24] + 0x000001BCu;
|
|
/* 02225210 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 02225214 */ cpu->r[6] = cpu->r[1] + 0x00000014u;
|
|
/* 02225218 */ _t17 = cpu->r[24] + 0x00000054u;
|
|
/* 02225218 */ cpu->r[4] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0222521C */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 0222521C */ rbrew_write32(cpu->mem, _t18, cpu->r[6]);
|
|
/* 02225220 */ cpu->r[6] = cpu->r[1] + 0x00000020u;
|
|
/* 02225224 */ _t19 = cpu->r[1] + 0x00000014u;
|
|
/* 02225224 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[0]);
|
|
/* 02225228 */ _t20 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02225228 */ rbrew_write_f32(cpu->mem, _t20, cpu->f[13]);
|
|
/* 0222522C */ cpu->r[3] = cpu->r[24];
|
|
/* 02225230 */ _t21 = cpu->r[1] + 0x00000024u;
|
|
/* 02225230 */ rbrew_write32(cpu->mem, _t21, cpu->r[0]);
|
|
/* 02225234 */ cpu->f[1] = cpu->f[30];
|
|
/* 02225238 */ _t22 = cpu->r[1] + 0x00000018u;
|
|
/* 02225238 */ rbrew_write_f32(cpu->mem, _t22, cpu->f[31]);
|
|
/* 0222523C */ cpu->r[9] = cpu->r[30] + cpu->r[26];
|
|
/* 02225240 */ cpu->r[8] = cpu->r[31] + cpu->r[26];
|
|
/* 02225244 */ _t23 = cpu->r[1] + 0x00000010u;
|
|
/* 02225244 */ rbrew_write32(cpu->mem, _t23, cpu->r[29]);
|
|
/* 02225248 */ cpu->r[10] = cpu->r[1] + 0x00000024u;
|
|
/* 0222524C */ _t24 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222524C */ rbrew_write32(cpu->mem, _t24, cpu->r[28]);
|
|
/* 02225250 */ Gambit_fn_02228C64(cpu);
|
|
/* 02225254 */ _t25 = cpu->r[24] + 0x00000130u;
|
|
/* 02225254 */ cpu->r[9] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02225258 */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 0222525C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], cpu->r[9]);
|
|
/* 02225260 */ cpu->r[26] = cpu->r[26] + 0x0000000Cu;
|
|
/* 02225264 */ _t26 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02225264 */ _t27 = _t26 & 0x00000001u;
|
|
/* 02225264 */ if (_t27) goto L_022251F8; else goto L_02225268;
|
|
L_02225268: ; // 0x2225268
|
|
/* 02225268 */ /* nop */
|
|
/* 0222526C */ _t28 = cpu->r[1] + 0x00000058u;
|
|
/* 0222526C */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 02225270 */ _t29 = cpu->r[1] + 0x00000068u;
|
|
/* 02225270 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 02225274 */ _t30 = cpu->r[1] + 0x00000050u;
|
|
/* 02225274 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t30);
|
|
/* 02225278 */ _t31 = cpu->r[1] + 0x00000060u;
|
|
/* 02225278 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t31);
|
|
/* 0222527C */ _t32 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0222527C */ _t33 = _t32 & 0x00000001u;
|
|
/* 0222527C */ if (_t33) goto L_02225280; // else: addr-0 trap, fall-through
|
|
L_02225280: ; // 0x2225280
|
|
/* 02225280 */ _t34 = cpu->r[1] + 0x00000074u;
|
|
/* 02225280 */ cpu->r[0] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02225284 */ cpu->lr = cpu->r[0];
|
|
/* 02225288 */ cpu->r[1] = cpu->r[1] + 0x00000070u;
|
|
/* 0222528C */ return;
|
|
}
|
|
|
|
// fn_02225290 @ 0x2225290
|
|
void Gambit_fn_02225290(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _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_02225290: ; // 0x2225290
|
|
/* 02225290 */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 02225290 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02225290 */ cpu->r[1] = _t0;
|
|
/* 02225294 */ /* nop */
|
|
/* 02225298 */ cpu->r[0] = cpu->lr;
|
|
/* 0222529C */ _t1 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0222529C */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 022252A0 */ cpu->r[31] = cpu->r[3];
|
|
/* 022252A4 */ _t2 = cpu->r[31] + 0x000001DCu;
|
|
/* 022252A4 */ cpu->r[8] = rbrew_read8(cpu->mem, _t2);
|
|
/* 022252A8 */ cpu->r[29] = 0x00000000u;
|
|
/* 022252AC */ _t3 = cpu->r[31] + 0x00000130u;
|
|
/* 022252AC */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 022252B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 022252B4 */ _t4 = cpu->r[31] + 0x0000012Cu;
|
|
/* 022252B4 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[29]);
|
|
/* 022252B8 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022252B8 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022252B8 */ if (_t6) goto L_022252D0; else goto L_022252BC;
|
|
L_022252BC: ; // 0x22252bc
|
|
/* 022252BC */ cpu->r[3] = 0x101C0000u;
|
|
/* 022252C0 */ _t7 = cpu->r[31] + 0x000001DEu;
|
|
/* 022252C0 */ cpu->r[4] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t7);
|
|
/* 022252C4 */ _t8 = cpu->r[3] + 0x000054F4u;
|
|
/* 022252C4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022252C8 */ cpu->r[5] = cpu->r[31] + 0x000001C4u;
|
|
/* 022252CC */ Gambit_fn_02227BC8(cpu);
|
|
L_022252D0: ; // 0x22252d0
|
|
/* 022252D0 */ _t9 = cpu->r[31] + 0x00000004u;
|
|
/* 022252D0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022252D4 */ _t10 = cpu->r[12] + 0x00000254u;
|
|
/* 022252D4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022252D8 */ cpu->ctr = cpu->r[7];
|
|
/* 022252DC */ cpu->r[3] = cpu->r[31];
|
|
/* 022252E0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022252E4 */ _t11 = cpu->r[31] + 0x00000004u;
|
|
/* 022252E4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022252E8 */ _t12 = cpu->r[9] + 0x000003D4u;
|
|
/* 022252E8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022252EC */ cpu->r[30] = cpu->r[3];
|
|
/* 022252F0 */ cpu->ctr = cpu->r[10];
|
|
/* 022252F4 */ cpu->r[3] = cpu->r[31];
|
|
/* 022252F8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022252FC */ cpu->r[12] = 0x101E0000u;
|
|
/* 02225300 */ cpu->r[3] = 0x101C0000u;
|
|
/* 02225304 */ cpu->r[4] = cpu->r[30];
|
|
/* 02225308 */ _t13 = cpu->r[12] + 0xFFFF958Cu;
|
|
/* 02225308 */ cpu->f[2] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 0222530C */ cpu->r[0] = cpu->r[31] + 0x000000B0u;
|
|
/* 02225310 */ cpu->r[5] = 0x00000000u;
|
|
/* 02225314 */ _t14 = cpu->r[3] + 0x00001EF8u;
|
|
/* 02225314 */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02225318 */ cpu->r[7] = 0x000C0000u;
|
|
/* 0222531C */ cpu->r[6] = cpu->r[5];
|
|
/* 02225320 */ _t15 = cpu->r[31] + 0x000000B4u;
|
|
/* 02225320 */ cpu->r[9] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02225324 */ cpu->r[7] = cpu->r[7] + 0x0000000Bu;
|
|
/* 02225328 */ cpu->r[8] = 0x000000FFu;
|
|
/* 0222532C */ cpu->r[10] = cpu->r[6];
|
|
/* 02225330 */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 02225330 */ rbrew_write32(cpu->mem, _t16, cpu->r[0]);
|
|
/* 02225334 */ Gambit_fn_0204A4DC(cpu);
|
|
/* 02225338 */ cpu->r[7] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02225338 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0222533C */ _t17 = cpu->r[31] + 0x000000B0u;
|
|
/* 0222533C */ rbrew_write32(cpu->mem, _t17, cpu->r[3]);
|
|
/* 02225340 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02225340 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02225340 */ if (_t19) goto L_02225350; else goto L_02225344;
|
|
L_02225344: ; // 0x2225344
|
|
/* 02225344 */ _t20 = cpu->r[31] + 0x000000B4u;
|
|
/* 02225344 */ cpu->r[4] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02225348 */ cpu->r[3] = cpu->r[31];
|
|
/* 0222534C */ Gambit_fn_02224A20(cpu);
|
|
L_02225350: ; // 0x2225350
|
|
/* 02225350 */ _t21 = cpu->r[31] + 0x00000051u;
|
|
/* 02225350 */ cpu->r[9] = rbrew_read8(cpu->mem, _t21);
|
|
/* 02225354 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02225358 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02225358 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02225358 */ if (_t23) goto L_02225378; else goto L_0222535C;
|
|
L_0222535C: ; // 0x222535c
|
|
/* 0222535C */ _t24 = cpu->r[31] + 0x00000004u;
|
|
/* 0222535C */ cpu->r[10] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02225360 */ _t25 = cpu->r[10] + 0x00000334u;
|
|
/* 02225360 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02225364 */ cpu->ctr = cpu->r[0];
|
|
/* 02225368 */ cpu->r[3] = cpu->r[31];
|
|
/* 0222536C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02225370 */ cpu->r[3] = cpu->r[31];
|
|
/* 02225374 */ Gambit_fn_02225194(cpu);
|
|
L_02225378: ; // 0x2225378
|
|
/* 02225378 */ _t26 = cpu->r[31] + 0x0000005Cu;
|
|
/* 02225378 */ cpu->r[12] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0222537C */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 02225380 */ _t27 = cpu->r[31] + 0x000001C0u;
|
|
/* 02225380 */ cpu->r[6] = rbrew_read16(cpu->mem, _t27);
|
|
/* 02225384 */ cpu->r[4] = cpu->r[12] + cpu->r[6];
|
|
/* 02225388 */ Gambit_fn_028300A4(cpu);
|
|
/* 0222538C */ _t28 = cpu->r[31] + 0x000001C2u;
|
|
/* 0222538C */ cpu->r[8] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t28);
|
|
/* 02225390 */ cpu->r[7] = (uint32_t)((int32_t)cpu->r[8] * (int32_t)0x0000000Au);
|
|
/* 02225394 */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 02225398 */ cpu->r[30] = cpu->r[7] + 0x000000FAu;
|
|
/* 0222539C */ Gambit_fn_02830138(cpu);
|
|
/* 022253A0 */ /* nop */
|
|
/* 022253A4 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022253A4 */ _t30 = _t29 & 0x00000001u;
|
|
/* 022253A4 */ if (_t30) goto L_022253A8; else goto L_022254D4;
|
|
L_022253A8: ; // 0x22253a8
|
|
/* 022253A8 */ _t31 = cpu->r[31] + 0x000000F4u;
|
|
/* 022253A8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 022253AC */ _t32 = cpu->r[31] + 0x000001C2u;
|
|
/* 022253AC */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t32);
|
|
/* 022253B0 */ _t33 = cpu->r[31] + 0x000000C8u;
|
|
/* 022253B0 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[12]);
|
|
/* 022253B4 */ _t34 = cpu->r[31] + 0x000000D4u;
|
|
/* 022253B4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 022253B8 */ _t35 = cpu->r[31] + 0x000000F0u;
|
|
/* 022253B8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 022253BC */ _t36 = cpu->r[31] + 0x00000098u;
|
|
/* 022253BC */ rbrew_write_f32(cpu->mem, _t36, cpu->f[12]);
|
|
/* 022253C0 */ _t37 = cpu->r[31] + 0x000000C4u;
|
|
/* 022253C0 */ rbrew_write_f32(cpu->mem, _t37, cpu->f[11]);
|
|
/* 022253C4 */ _t38 = cpu->r[31] + 0x000000D0u;
|
|
/* 022253C4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 022253C8 */ _t39 = cpu->r[31] + 0x000000F8u;
|
|
/* 022253C8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 022253CC */ _t40 = cpu->r[31] + 0x00000094u;
|
|
/* 022253CC */ rbrew_write_f32(cpu->mem, _t40, cpu->f[10]);
|
|
/* 022253D0 */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 022253D4 */ _t41 = cpu->r[31] + 0x000000CCu;
|
|
/* 022253D4 */ rbrew_write_f32(cpu->mem, _t41, cpu->f[0]);
|
|
/* 022253D8 */ _t42 = cpu->r[31] + 0x000000D8u;
|
|
/* 022253D8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 022253DC */ _t43 = cpu->r[31] + 0x00000100u;
|
|
/* 022253DC */ rbrew_write_f32(cpu->mem, _t43, cpu->f[12]);
|
|
/* 022253E0 */ _t44 = cpu->r[31] + 0x00000090u;
|
|
/* 022253E0 */ rbrew_write_f32(cpu->mem, _t44, cpu->f[13]);
|
|
/* 022253E4 */ _t45 = cpu->r[31] + 0x00000088u;
|
|
/* 022253E4 */ rbrew_write_f32(cpu->mem, _t45, cpu->f[10]);
|
|
/* 022253E8 */ _t46 = cpu->r[31] + 0x000001C2u;
|
|
/* 022253E8 */ rbrew_write16(cpu->mem, _t46, (uint16_t)cpu->r[10]);
|
|
/* 022253EC */ _t47 = cpu->r[31] + 0x0000008Cu;
|
|
/* 022253EC */ rbrew_write_f32(cpu->mem, _t47, cpu->f[12]);
|
|
/* 022253F0 */ _t48 = cpu->r[31] + 0x0000009Cu;
|
|
/* 022253F0 */ rbrew_write_f32(cpu->mem, _t48, cpu->f[13]);
|
|
/* 022253F4 */ _t49 = cpu->r[31] + 0x000000FCu;
|
|
/* 022253F4 */ rbrew_write_f32(cpu->mem, _t49, cpu->f[10]);
|
|
/* 022253F8 */ cpu->r[7] = 0x101D0000u;
|
|
/* 022253FC */ _t50 = cpu->r[31] + 0x00000104u;
|
|
/* 022253FC */ rbrew_write_f32(cpu->mem, _t50, cpu->f[13]);
|
|
/* 02225400 */ _t51 = cpu->r[7] + 0xFFFFFE00u;
|
|
/* 02225400 */ cpu->r[9] = rbrew_read32(cpu->mem, _t51);
|
|
/* 02225400 */ cpu->r[7] = _t51;
|
|
/* 02225404 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02225408 */ cpu->r[30] = 0x101D0000u;
|
|
/* 0222540C */ _t52 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222540C */ _t53 = _t52 & 0x00000001u;
|
|
/* 0222540C */ if (_t53) goto L_02225410; else goto L_0222542C;
|
|
L_02225410: ; // 0x2225410
|
|
/* 02225410 */ cpu->r[10] = 0x00000001u;
|
|
/* 02225414 */ cpu->r[4] = 0x101C0000u;
|
|
/* 02225418 */ cpu->r[3] = cpu->r[30] + 0x00004F7Fu;
|
|
/* 0222541C */ cpu->r[5] = 0x00000016u;
|
|
/* 02225420 */ cpu->r[4] = cpu->r[4] + 0x000054A8u;
|
|
/* 02225424 */ _t54 = cpu->r[7] + 0x00000000u;
|
|
/* 02225424 */ rbrew_write32(cpu->mem, _t54, cpu->r[10]);
|
|
/* 02225428 */ rbrew_dispatch(cpu, 0x02d0b870u);
|
|
L_0222542C: ; // 0x222542c
|
|
/* 0222542C */ cpu->r[12] = 0x101D0000u;
|
|
/* 02225430 */ _t55 = cpu->r[12] + 0xFFFFFDFCu;
|
|
/* 02225430 */ cpu->r[0] = rbrew_read32(cpu->mem, _t55);
|
|
/* 02225430 */ cpu->r[12] = _t55;
|
|
/* 02225434 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02225438 */ cpu->r[28] = 0x101D0000u;
|
|
/* 0222543C */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222543C */ _t57 = _t56 & 0x00000001u;
|
|
/* 0222543C */ if (_t57) goto L_02225440; else goto L_02225468;
|
|
L_02225440: ; // 0x2225440
|
|
/* 02225440 */ _t58 = cpu->r[28] + 0xFFFFFF6Cu;
|
|
/* 02225440 */ rbrew_write32(cpu->mem, _t58, cpu->r[29]);
|
|
/* 02225444 */ cpu->r[6] = 0x00000001u;
|
|
/* 02225448 */ _t59 = cpu->r[12] + 0x00000000u;
|
|
/* 02225448 */ rbrew_write32(cpu->mem, _t59, cpu->r[6]);
|
|
/* 0222544C */ Gambit_fn_0282A450(cpu);
|
|
/* 02225450 */ cpu->r[27] = cpu->r[3];
|
|
/* 02225454 */ Gambit_fn_02836FFC(cpu);
|
|
/* 02225458 */ _t60 = cpu->r[28] + 0xFFFFFF6Cu;
|
|
/* 02225458 */ cpu->r[8] = rbrew_read32(cpu->mem, _t60);
|
|
/* 0222545C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02225460 */ _t61 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02225460 */ _t62 = _t61 & 0x00000001u;
|
|
/* 02225460 */ if (_t62) goto L_0222548C; else goto L_02225464;
|
|
L_02225464: ; // 0x2225464
|
|
/* 02225464 */ goto L_022254A8;
|
|
L_02225468: ; // 0x2225468
|
|
/* 02225468 */ _t63 = cpu->r[28] + 0xFFFFFF6Cu;
|
|
/* 02225468 */ cpu->r[11] = rbrew_read32(cpu->mem, _t63);
|
|
/* 0222546C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02225470 */ _t64 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02225470 */ _t65 = _t64 & 0x00000001u;
|
|
/* 02225470 */ if (_t65) goto L_02225474; else goto L_022254B4;
|
|
L_02225474: ; // 0x2225474
|
|
/* 02225474 */ Gambit_fn_0282A450(cpu);
|
|
/* 02225478 */ cpu->r[27] = cpu->r[3];
|
|
/* 0222547C */ Gambit_fn_02836FFC(cpu);
|
|
/* 02225480 */ _t66 = cpu->r[28] + 0xFFFFFF6Cu;
|
|
/* 02225480 */ cpu->r[8] = rbrew_read32(cpu->mem, _t66);
|
|
/* 02225484 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02225488 */ _t67 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02225488 */ _t68 = _t67 & 0x00000001u;
|
|
/* 02225488 */ if (_t68) goto L_0222548C; else goto L_022254A8;
|
|
L_0222548C: ; // 0x222548c
|
|
/* 0222548C */ cpu->r[29] = 0x101D0000u;
|
|
/* 02225490 */ cpu->r[4] = cpu->r[30] + 0x00004F7Fu;
|
|
/* 02225494 */ cpu->r[29] = cpu->r[29] + 0xFFFFFF70u;
|
|
/* 02225498 */ cpu->r[5] = 0x00000003u;
|
|
/* 0222549C */ cpu->r[3] = cpu->r[29];
|
|
/* 022254A0 */ Gambit_fn_0282A374(cpu);
|
|
/* 022254A4 */ _t69 = cpu->r[28] + 0xFFFFFF6Cu;
|
|
/* 022254A4 */ rbrew_write32(cpu->mem, _t69, cpu->r[29]);
|
|
L_022254A8: ; // 0x22254a8
|
|
/* 022254A8 */ cpu->r[3] = cpu->r[27];
|
|
/* 022254AC */ Gambit_fn_02837030(cpu);
|
|
/* 022254B0 */ _t70 = cpu->r[28] + 0xFFFFFF6Cu;
|
|
/* 022254B0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t70);
|
|
L_022254B4: ; // 0x22254b4
|
|
/* 022254B4 */ cpu->r[0] = 0x10050000u;
|
|
/* 022254B8 */ _t71 = cpu->r[31] + 0x00000030u;
|
|
/* 022254B8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t71);
|
|
/* 022254BC */ cpu->r[0] = cpu->r[0] + 0xFFFFDE70u;
|
|
/* 022254C0 */ _t72 = cpu->r[11] + 0x00000004u;
|
|
/* 022254C0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t72);
|
|
/* 022254C4 */ _t73 = cpu->r[1] + 0x00000010u;
|
|
/* 022254C4 */ rbrew_write32(cpu->mem, _t73, cpu->r[0]);
|
|
/* 022254C8 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022254CC */ _t74 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022254CC */ rbrew_write32(cpu->mem, _t74, cpu->r[8]);
|
|
/* 022254D0 */ Gambit_fn_027B70F0(cpu);
|
|
L_022254D4: ; // 0x22254d4
|
|
/* 022254D4 */ /* nop */
|
|
/* 022254D8 */ _t75 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022254D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t75);
|
|
/* 022254DC */ cpu->lr = cpu->r[0];
|
|
/* 022254E0 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 022254E4 */ return;
|
|
}
|
|
|
|
// fn_022254E8 @ 0x22254e8
|
|
void Gambit_fn_022254E8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33;
|
|
|
|
L_022254E8: ; // 0x22254e8
|
|
/* 022254E8 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 022254E8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022254E8 */ cpu->r[1] = _t0;
|
|
/* 022254EC */ /* nop */
|
|
/* 022254F0 */ cpu->r[0] = cpu->lr;
|
|
/* 022254F4 */ cpu->r[31] = 0x00000000u;
|
|
/* 022254F8 */ cpu->r[27] = 0x101D0000u;
|
|
/* 022254FC */ _t1 = cpu->r[1] + 0x00000044u;
|
|
/* 022254FC */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02225500 */ cpu->r[29] = cpu->r[3];
|
|
/* 02225504 */ cpu->r[21] = 0x101D0000u;
|
|
/* 02225508 */ cpu->r[22] = 0x101D0000u;
|
|
/* 0222550C */ cpu->r[30] = cpu->r[31];
|
|
/* 02225510 */ cpu->r[24] = 0x00000001u;
|
|
/* 02225514 */ cpu->r[25] = 0x101D0000u;
|
|
/* 02225518 */ cpu->r[26] = 0x101D0000u;
|
|
/* 0222551C */ cpu->r[28] = 0x10050000u;
|
|
/* 02225520 */ cpu->r[27] = cpu->r[27] + 0xFFFFFF70u;
|
|
/* 02225524 */ _t2 = cpu->r[29] + 0x00000030u;
|
|
/* 02225524 */ cpu->r[23] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02225528 */ cpu->r[28] = cpu->r[28] + 0xFFFFDE70u;
|
|
L_0222552C: ; // 0x222552c
|
|
/* 0222552C */ _t3 = cpu->r[25] + 0xFFFFFE00u;
|
|
/* 0222552C */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02225530 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02225534 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02225534 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02225534 */ if (_t5) goto L_02225538; else goto L_02225550;
|
|
L_02225538: ; // 0x2225538
|
|
/* 02225538 */ cpu->r[4] = 0x101C0000u;
|
|
/* 0222553C */ cpu->r[3] = cpu->r[26] + 0x00004F7Fu;
|
|
/* 02225540 */ cpu->r[5] = 0x00000016u;
|
|
/* 02225544 */ cpu->r[4] = cpu->r[4] + 0x000054A8u;
|
|
/* 02225548 */ _t6 = cpu->r[25] + 0xFFFFFE00u;
|
|
/* 02225548 */ rbrew_write32(cpu->mem, _t6, cpu->r[24]);
|
|
/* 0222554C */ rbrew_dispatch(cpu, 0x02d0b870u);
|
|
L_02225550: ; // 0x2225550
|
|
/* 02225550 */ _t7 = cpu->r[22] + 0xFFFFFDFCu;
|
|
/* 02225550 */ cpu->r[9] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02225554 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02225558 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02225558 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02225558 */ if (_t9) goto L_0222555C; else goto L_02225564;
|
|
L_0222555C: ; // 0x222555c
|
|
/* 0222555C */ _t10 = cpu->r[21] + 0xFFFFFF6Cu;
|
|
/* 0222555C */ rbrew_write32(cpu->mem, _t10, cpu->r[31]);
|
|
/* 02225560 */ _t11 = cpu->r[22] + 0xFFFFFDFCu;
|
|
/* 02225560 */ rbrew_write32(cpu->mem, _t11, cpu->r[24]);
|
|
L_02225564: ; // 0x2225564
|
|
/* 02225564 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], 0x00000003u);
|
|
/* 02225568 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02225568 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02225568 */ if (_t13) goto L_02225594; else goto L_0222556C;
|
|
L_0222556C: ; // 0x222556c
|
|
/* 0222556C */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222556C */ rbrew_write32(cpu->mem, _t14, cpu->r[28]);
|
|
/* 02225570 */ cpu->r[0] = 0x00000000u;
|
|
/* 02225574 */ cpu->r[3] = cpu->r[23];
|
|
/* 02225578 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0222557C */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 0222557C */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 02225580 */ Gambit_fn_027B70B8(cpu);
|
|
/* 02225584 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02225588 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000003u);
|
|
/* 0222558C */ _t16 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0222558C */ _t17 = _t16 & 0x00000001u;
|
|
/* 0222558C */ if (_t17) goto L_0222552C; else goto L_02225590;
|
|
L_02225590: ; // 0x2225590
|
|
/* 02225590 */ goto L_02225600;
|
|
L_02225594: ; // 0x2225594
|
|
/* 02225594 */ _t18 = cpu->r[21] + 0xFFFFFF6Cu;
|
|
/* 02225594 */ cpu->r[11] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02225598 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0222559C */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222559C */ _t20 = _t19 & 0x00000001u;
|
|
/* 0222559C */ if (_t20) goto L_022255A0; else goto L_022255D8;
|
|
L_022255A0: ; // 0x22255a0
|
|
/* 022255A0 */ Gambit_fn_0282A450(cpu);
|
|
/* 022255A4 */ cpu->r[20] = cpu->r[3];
|
|
/* 022255A8 */ Gambit_fn_02836FFC(cpu);
|
|
/* 022255AC */ _t21 = cpu->r[21] + 0xFFFFFF6Cu;
|
|
/* 022255AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022255B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022255B4 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022255B4 */ _t23 = _t22 & 0x00000001u;
|
|
/* 022255B4 */ if (_t23) goto L_022255B8; else goto L_022255CC;
|
|
L_022255B8: ; // 0x22255b8
|
|
/* 022255B8 */ cpu->r[5] = 0x00000003u;
|
|
/* 022255BC */ cpu->r[4] = cpu->r[26] + 0x00004F7Fu;
|
|
/* 022255C0 */ cpu->r[3] = cpu->r[27];
|
|
/* 022255C4 */ Gambit_fn_0282A374(cpu);
|
|
/* 022255C8 */ _t24 = cpu->r[21] + 0xFFFFFF6Cu;
|
|
/* 022255C8 */ rbrew_write32(cpu->mem, _t24, cpu->r[27]);
|
|
L_022255CC: ; // 0x22255cc
|
|
/* 022255CC */ cpu->r[3] = cpu->r[20];
|
|
/* 022255D0 */ Gambit_fn_02837030(cpu);
|
|
/* 022255D4 */ _t25 = cpu->r[21] + 0xFFFFFF6Cu;
|
|
/* 022255D4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t25);
|
|
L_022255D8: ; // 0x22255d8
|
|
/* 022255D8 */ cpu->r[10] = rbrew_rlwinm(cpu->r[30], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 022255DC */ _t26 = cpu->r[10] + cpu->r[11];
|
|
/* 022255DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t26);
|
|
/* 022255E0 */ cpu->r[3] = cpu->r[23];
|
|
/* 022255E4 */ _t27 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022255E4 */ rbrew_write32(cpu->mem, _t27, cpu->r[28]);
|
|
/* 022255E8 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022255EC */ _t28 = cpu->r[1] + 0x00000008u;
|
|
/* 022255EC */ rbrew_write32(cpu->mem, _t28, cpu->r[0]);
|
|
/* 022255F0 */ Gambit_fn_027B70B8(cpu);
|
|
/* 022255F4 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 022255F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000003u);
|
|
/* 022255FC */ _t29 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022255FC */ _t30 = _t29 & 0x00000001u;
|
|
/* 022255FC */ if (_t30) goto L_0222552C; else goto L_02225600;
|
|
L_02225600: ; // 0x2225600
|
|
/* 02225600 */ _t31 = cpu->r[29] + 0x00000128u;
|
|
/* 02225600 */ rbrew_write32(cpu->mem, _t31, cpu->r[31]);
|
|
/* 02225604 */ _t32 = cpu->r[29] + 0x00000128u;
|
|
/* 02225604 */ cpu->r[0] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02225608 */ /* nop */
|
|
/* 0222560C */ _t33 = cpu->r[1] + 0x00000044u;
|
|
/* 0222560C */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02225610 */ cpu->lr = cpu->r[0];
|
|
/* 02225614 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 02225618 */ return;
|
|
}
|
|
|
|
// fn_0222561C @ 0x222561c
|
|
void Gambit_fn_0222561C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0222561C: ; // 0x222561c
|
|
/* 0222561C */ cpu->r[5] = 0xFFFFFFFDu;
|
|
/* 02225620 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02225620 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02225620 */ cpu->r[1] = _t0;
|
|
/* 02225624 */ cpu->r[10] = 0x101E0000u;
|
|
/* 02225628 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 0222562C */ _t1 = cpu->r[10] + 0x00002B70u;
|
|
/* 0222562C */ rbrew_write32(cpu->mem, _t1, cpu->r[5]);
|
|
/* 0222562C */ cpu->r[10] = _t1;
|
|
/* 02225630 */ cpu->r[7] = 0x101E0000u;
|
|
/* 02225634 */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 02225634 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 02225638 */ cpu->r[9] = 0xFFFFFFFEu;
|
|
/* 0222563C */ cpu->r[8] = 0x101E0000u;
|
|
/* 02225640 */ _t3 = cpu->r[7] + 0x00002B80u;
|
|
/* 02225640 */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 02225640 */ cpu->r[7] = _t3;
|
|
/* 02225644 */ _t4 = cpu->r[8] + 0x00002B78u;
|
|
/* 02225644 */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
/* 02225644 */ cpu->r[8] = _t4;
|
|
/* 02225648 */ cpu->r[0] = 0x00000002u;
|
|
/* 0222564C */ _t5 = cpu->r[8] + 0x00000004u;
|
|
/* 0222564C */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 02225650 */ cpu->r[8] = 0x101E0000u;
|
|
/* 02225654 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 02225654 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02225658 */ cpu->r[12] = 0x101E0000u;
|
|
/* 0222565C */ _t7 = cpu->r[7] + 0x00000004u;
|
|
/* 0222565C */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 02225660 */ _t8 = cpu->r[8] + 0x00002B90u;
|
|
/* 02225660 */ rbrew_write32(cpu->mem, _t8, cpu->r[5]);
|
|
/* 02225660 */ cpu->r[8] = _t8;
|
|
/* 02225664 */ _t9 = cpu->r[12] + 0x00002B88u;
|
|
/* 02225664 */ rbrew_write32(cpu->mem, _t9, cpu->r[5]);
|
|
/* 02225664 */ cpu->r[12] = _t9;
|
|
/* 02225668 */ _t10 = cpu->r[12] + 0x00000004u;
|
|
/* 02225668 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 0222566C */ cpu->r[0] = 0x00000004u;
|
|
/* 02225670 */ _t11 = cpu->r[8] + 0x00000004u;
|
|
/* 02225670 */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 02225674 */ cpu->r[11] = 0x101E0000u;
|
|
/* 02225678 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02225678 */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0222567C */ _t13 = cpu->r[11] + 0x00002B98u;
|
|
/* 0222567C */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02225680 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02225684 */ return;
|
|
}
|
|
|
|
// fn_02225620 @ 0x2225620
|
|
void Gambit_fn_02225620(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02225620: ; // 0x2225620
|
|
/* 02225620 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02225620 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02225620 */ cpu->r[1] = _t0;
|
|
/* 02225624 */ cpu->r[10] = 0x101E0000u;
|
|
/* 02225628 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 0222562C */ _t1 = cpu->r[10] + 0x00002B70u;
|
|
/* 0222562C */ rbrew_write32(cpu->mem, _t1, cpu->r[5]);
|
|
/* 0222562C */ cpu->r[10] = _t1;
|
|
/* 02225630 */ cpu->r[7] = 0x101E0000u;
|
|
/* 02225634 */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 02225634 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 02225638 */ cpu->r[9] = 0xFFFFFFFEu;
|
|
/* 0222563C */ cpu->r[8] = 0x101E0000u;
|
|
/* 02225640 */ _t3 = cpu->r[7] + 0x00002B80u;
|
|
/* 02225640 */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 02225640 */ cpu->r[7] = _t3;
|
|
/* 02225644 */ _t4 = cpu->r[8] + 0x00002B78u;
|
|
/* 02225644 */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
/* 02225644 */ cpu->r[8] = _t4;
|
|
/* 02225648 */ cpu->r[0] = 0x00000002u;
|
|
/* 0222564C */ _t5 = cpu->r[8] + 0x00000004u;
|
|
/* 0222564C */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 02225650 */ cpu->r[8] = 0x101E0000u;
|
|
/* 02225654 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 02225654 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02225658 */ cpu->r[12] = 0x101E0000u;
|
|
/* 0222565C */ _t7 = cpu->r[7] + 0x00000004u;
|
|
/* 0222565C */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 02225660 */ _t8 = cpu->r[8] + 0x00002B90u;
|
|
/* 02225660 */ rbrew_write32(cpu->mem, _t8, cpu->r[5]);
|
|
/* 02225660 */ cpu->r[8] = _t8;
|
|
/* 02225664 */ _t9 = cpu->r[12] + 0x00002B88u;
|
|
/* 02225664 */ rbrew_write32(cpu->mem, _t9, cpu->r[5]);
|
|
/* 02225664 */ cpu->r[12] = _t9;
|
|
/* 02225668 */ _t10 = cpu->r[12] + 0x00000004u;
|
|
/* 02225668 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 0222566C */ cpu->r[0] = 0x00000004u;
|
|
/* 02225670 */ _t11 = cpu->r[8] + 0x00000004u;
|
|
/* 02225670 */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 02225674 */ cpu->r[11] = 0x101E0000u;
|
|
/* 02225678 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02225678 */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0222567C */ _t13 = cpu->r[11] + 0x00002B98u;
|
|
/* 0222567C */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02225680 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02225684 */ return;
|
|
}
|
|
|
|
// fn_02225688 @ 0x2225688
|
|
void Gambit_fn_02225688(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_02225688: ; // 0x2225688
|
|
/* 02225688 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0222568C */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222568C */ _t1 = _t0 & 0x00000001u;
|
|
/* 0222568C */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0222568C */ goto L_02225690;
|
|
L_02225690: ; // 0x2225690
|
|
/* 02225690 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02225690 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02225694 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02225694 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02225694 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02225694 */ goto L_02225698;
|
|
L_02225698: ; // 0x2225698
|
|
/* 02225698 */ goto L_02801BB0;
|
|
L_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t4 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t4, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t4;
|
|
/* 02801B38 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02801B48 */ _t7 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B50 */ if (_t9) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02801B60 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02801B64 */ cpu->lr = cpu->r[0];
|
|
/* 02801B68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801B6C */ return;
|
|
L_02801B70: ; // 0x2801b70
|
|
/* 02801B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02801B74 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02801B74 */ if (_t13) goto L_02801B9C; else goto L_02801B78;
|
|
L_02801B78: ; // 0x2801b78
|
|
/* 02801B78 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B7C */ Gambit_fn_02826B90(cpu);
|
|
/* 02801B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B84 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02801B84 */ if (_t15) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t16 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02801B8C */ _t17 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02801BA0 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
}
|
|
|
|
// fn_0222569C @ 0x222569c
|
|
void Gambit_fn_0222569C(CPUState* cpu) {
|
|
L_0222569C: ; // 0x222569c
|
|
/* 0222569C */ return;
|
|
}
|
|
|
|
// fn_022256AC @ 0x22256ac
|
|
void Gambit_fn_022256AC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_022256AC: ; // 0x22256ac
|
|
/* 022256AC */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 022256AC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022256AC */ cpu->r[1] = _t0;
|
|
/* 022256B0 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022256B0 */ _t2 = _t1 & 0x00000001u;
|
|
/* 022256B0 */ if (_t2) goto L_022256B4; else goto L_022256BC;
|
|
L_022256B4: ; // 0x22256b4
|
|
/* 022256B4 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 022256B8 */ Gambit_fn_02801A78(cpu);
|
|
L_022256BC: ; // 0x22256bc
|
|
/* 022256BC */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022256BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022256C0 */ cpu->lr = cpu->r[0];
|
|
/* 022256C4 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 022256C8 */ return;
|
|
}
|
|
|
|
// fn_022256CC @ 0x22256cc
|
|
void Gambit_fn_022256CC(CPUState* cpu) {
|
|
L_022256CC: ; // 0x22256cc
|
|
/* 022256CC */ return;
|
|
}
|
|
|
|
// fn_022256D0 @ 0x22256d0
|
|
void Gambit_fn_022256D0(CPUState* cpu) {
|
|
L_022256D0: ; // 0x22256d0
|
|
/* 022256D0 */ return;
|
|
}
|
|
|
|
// fn_022256D4 @ 0x22256d4
|
|
void Gambit_fn_022256D4(CPUState* cpu) {
|
|
L_022256D4: ; // 0x22256d4
|
|
/* 022256D4 */ return;
|
|
}
|
|
|
|
// fn_022256D8 @ 0x22256d8
|
|
void Gambit_fn_022256D8(CPUState* cpu) {
|
|
L_022256D8: ; // 0x22256d8
|
|
/* 022256D8 */ return;
|
|
}
|
|
|
|
// fn_022256DC @ 0x22256dc
|
|
void Gambit_fn_022256DC(CPUState* cpu) {
|
|
L_022256DC: ; // 0x22256dc
|
|
/* 022256DC */ return;
|
|
}
|
|
|
|
// fn_022256E0 @ 0x22256e0
|
|
void Gambit_fn_022256E0(CPUState* cpu) {
|
|
L_022256E0: ; // 0x22256e0
|
|
/* 022256E0 */ return;
|
|
}
|
|
|
|
// fn_022256E4 @ 0x22256e4
|
|
void Gambit_fn_022256E4(CPUState* cpu) {
|
|
L_022256E4: ; // 0x22256e4
|
|
/* 022256E4 */ return;
|
|
}
|
|
|
|
// fn_022256E8 @ 0x22256e8
|
|
void Gambit_fn_022256E8(CPUState* cpu) {
|
|
L_022256E8: ; // 0x22256e8
|
|
/* 022256E8 */ return;
|
|
}
|
|
|
|
// fn_022256EC @ 0x22256ec
|
|
void Gambit_fn_022256EC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_022256EC: ; // 0x22256ec
|
|
/* 022256EC */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022256EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022256F0 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022256F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022256F4 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022256F4 */ _t2 = _t1 & 0x00000001u;
|
|
/* 022256F4 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 022256F4 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022256F4 */ goto L_022256F8;
|
|
L_022256F8: ; // 0x22256f8
|
|
/* 022256F8 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 022256F8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022256FC */ _t5 = cpu->r[12] + 0x0000004Cu;
|
|
/* 022256FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02225700 */ cpu->ctr = cpu->r[0];
|
|
/* 02225704 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02225708 @ 0x2225708
|
|
void Gambit_fn_02225708(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02225708: ; // 0x2225708
|
|
/* 02225708 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02225708 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0222570C */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Du, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0222570C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02225710 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02225710 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02225710 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 02225710 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02225710 */ goto L_02225714;
|
|
L_02225714: ; // 0x2225714
|
|
/* 02225714 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 02225714 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02225718 */ _t5 = cpu->r[12] + 0x0000005Cu;
|
|
/* 02225718 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0222571C */ cpu->ctr = cpu->r[0];
|
|
/* 02225720 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02225724 @ 0x2225724
|
|
void Gambit_fn_02225724(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02225724: ; // 0x2225724
|
|
/* 02225724 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02225724 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02225728 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Au, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02225728 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0222572C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222572C */ _t2 = _t1 & 0x00000001u;
|
|
/* 0222572C */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0222572C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0222572C */ goto L_02225730;
|
|
L_02225730: ; // 0x2225730
|
|
/* 02225730 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 02225730 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02225734 */ _t5 = cpu->r[11] + 0x00000074u;
|
|
/* 02225734 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02225738 */ cpu->ctr = cpu->r[0];
|
|
/* 0222573C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02225740 @ 0x2225740
|
|
void Gambit_fn_02225740(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02225740: ; // 0x2225740
|
|
/* 02225740 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02225740 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02225744 */ _t1 = cpu->r[12] + 0x0000002Cu;
|
|
/* 02225744 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02225748 */ cpu->ctr = cpu->r[0];
|
|
/* 0222574C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02225750 @ 0x2225750
|
|
void Gambit_fn_02225750(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02225750: ; // 0x2225750
|
|
/* 02225750 */ cpu->r[0] = cpu->lr;
|
|
/* 02225754 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02225754 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02225754 */ cpu->r[1] = _t0;
|
|
/* 02225758 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02225758 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0222575C */ cpu->r[31] = cpu->r[3];
|
|
/* 02225760 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02225760 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02225764 */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02225764 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02225768 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 0222576C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222576C */ _t5 = _t4 & 0x00000001u;
|
|
/* 0222576C */ if (_t5) goto L_02225770; else goto L_0222578C;
|
|
L_02225770: ; // 0x2225770
|
|
/* 02225770 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 02225770 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02225774 */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 02225774 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02225778 */ cpu->ctr = cpu->r[0];
|
|
/* 0222577C */ cpu->r[3] = cpu->r[31];
|
|
/* 02225780 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02225784 */ cpu->r[0] = 0x00000002u;
|
|
/* 02225788 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02225788 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_0222578C: ; // 0x222578c
|
|
/* 0222578C */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0222578C */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02225790 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02225790 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02225794 */ cpu->lr = cpu->r[0];
|
|
/* 02225798 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0222579C */ return;
|
|
}
|
|
|
|
// fn_02225754 @ 0x2225754
|
|
void Gambit_fn_02225754(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02225754: ; // 0x2225754
|
|
/* 02225754 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02225754 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02225754 */ cpu->r[1] = _t0;
|
|
/* 02225758 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02225758 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0222575C */ cpu->r[31] = cpu->r[3];
|
|
/* 02225760 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02225760 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02225764 */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02225764 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02225768 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 0222576C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222576C */ _t5 = _t4 & 0x00000001u;
|
|
/* 0222576C */ if (_t5) goto L_02225770; else goto L_0222578C;
|
|
L_02225770: ; // 0x2225770
|
|
/* 02225770 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 02225770 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02225774 */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 02225774 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02225778 */ cpu->ctr = cpu->r[0];
|
|
/* 0222577C */ cpu->r[3] = cpu->r[31];
|
|
/* 02225780 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02225784 */ cpu->r[0] = 0x00000002u;
|
|
/* 02225788 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02225788 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_0222578C: ; // 0x222578c
|
|
/* 0222578C */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0222578C */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02225790 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02225790 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02225794 */ cpu->lr = cpu->r[0];
|
|
/* 02225798 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0222579C */ return;
|
|
}
|
|
|
|
// fn_022257A0 @ 0x22257a0
|
|
void Gambit_fn_022257A0(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_022257A0: ; // 0x22257a0
|
|
/* 022257A0 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 022257A0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022257A4 */ _t1 = cpu->r[12] + 0x0000008Cu;
|
|
/* 022257A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022257A8 */ cpu->ctr = cpu->r[0];
|
|
/* 022257AC */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022257B0 @ 0x22257b0
|
|
void Gambit_fn_022257B0(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_022257B0: ; // 0x22257b0
|
|
/* 022257B0 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 022257B0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022257B4 */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 022257B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022257B8 */ cpu->ctr = cpu->r[0];
|
|
/* 022257BC */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022257C0 @ 0x22257c0
|
|
void Gambit_fn_022257C0(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_022257C0: ; // 0x22257c0
|
|
/* 022257C0 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 022257C0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022257C4 */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 022257C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022257C8 */ cpu->ctr = cpu->r[0];
|
|
/* 022257CC */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022257D0 @ 0x22257d0
|
|
void Gambit_fn_022257D0(CPUState* cpu) {
|
|
L_022257D0: ; // 0x22257d0
|
|
/* 022257D0 */ cpu->r[3] = 0x00000001u;
|
|
/* 022257D4 */ return;
|
|
}
|
|
|
|
// fn_022257D8 @ 0x22257d8
|
|
void Gambit_fn_022257D8(CPUState* cpu) {
|
|
L_022257D8: ; // 0x22257d8
|
|
/* 022257D8 */ return;
|
|
}
|
|
|
|
// fn_022257DC @ 0x22257dc
|
|
void Gambit_fn_022257DC(CPUState* cpu) {
|
|
L_022257DC: ; // 0x22257dc
|
|
/* 022257DC */ return;
|
|
}
|
|
|
|
// fn_022257E0 @ 0x22257e0
|
|
void Gambit_fn_022257E0(CPUState* cpu) {
|
|
L_022257E0: ; // 0x22257e0
|
|
/* 022257E0 */ return;
|
|
}
|
|
|
|
// fn_022257E4 @ 0x22257e4
|
|
void Gambit_fn_022257E4(CPUState* cpu) {
|
|
L_022257E4: ; // 0x22257e4
|
|
/* 022257E4 */ return;
|
|
}
|
|
|
|
// fn_022257E8 @ 0x22257e8
|
|
void Gambit_fn_022257E8(CPUState* cpu) {
|
|
L_022257E8: ; // 0x22257e8
|
|
/* 022257E8 */ return;
|
|
}
|
|
|
|
// fn_022257EC @ 0x22257ec
|
|
void Gambit_fn_022257EC(CPUState* cpu) {
|
|
L_022257EC: ; // 0x22257ec
|
|
/* 022257EC */ return;
|
|
}
|
|
|
|
// fn_022257F0 @ 0x22257f0
|
|
void Gambit_fn_022257F0(CPUState* cpu) {
|
|
L_022257F0: ; // 0x22257f0
|
|
/* 022257F0 */ return;
|
|
}
|
|
|
|
// fn_022257F4 @ 0x22257f4
|
|
void Gambit_fn_022257F4(CPUState* cpu) {
|
|
L_022257F4: ; // 0x22257f4
|
|
/* 022257F4 */ cpu->r[3] = 0x00000001u;
|
|
/* 022257F8 */ return;
|
|
}
|
|
|
|
// fn_022257FC @ 0x22257fc
|
|
void Gambit_fn_022257FC(CPUState* cpu) {
|
|
L_022257FC: ; // 0x22257fc
|
|
/* 022257FC */ cpu->r[3] = 0x00000000u;
|
|
/* 02225800 */ return;
|
|
}
|
|
|
|
// fn_02225810 @ 0x2225810
|
|
void Gambit_fn_02225810(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_02225810: ; // 0x2225810
|
|
/* 02225810 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 02225810 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02225810 */ cpu->r[1] = _t0;
|
|
/* 02225814 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02225814 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02225814 */ if (_t2) goto L_02225818; else goto L_02225828;
|
|
L_02225818: ; // 0x2225818
|
|
/* 02225818 */ cpu->r[3] = 0x00000004u;
|
|
/* 0222581C */ Gambit_fn_02801A78(cpu);
|
|
/* 02225820 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02225824 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02225824 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02225824 */ if (_t4) goto L_02225830; else goto L_02225828;
|
|
L_02225828: ; // 0x2225828
|
|
/* 02225828 */ cpu->r[0] = 0x00000000u;
|
|
/* 0222582C */ _t5 = cpu->r[3] + 0x00000000u;
|
|
/* 0222582C */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
L_02225830: ; // 0x2225830
|
|
/* 02225830 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02225830 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02225834 */ cpu->lr = cpu->r[0];
|
|
/* 02225838 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 0222583C */ return;
|
|
}
|
|
|
|
// fn_02225840 @ 0x2225840
|
|
void Gambit_fn_02225840(CPUState* cpu) {
|
|
L_02225840: ; // 0x2225840
|
|
/* 02225840 */ cpu->r[3] = 0x00000001u;
|
|
/* 02225844 */ return;
|
|
}
|
|
|
|
// fn_02225848 @ 0x2225848
|
|
void Gambit_fn_02225848(CPUState* cpu) {
|
|
L_02225848: ; // 0x2225848
|
|
/* 02225848 */ cpu->r[3] = 0x00000000u;
|
|
/* 0222584C */ return;
|
|
}
|
|
|
|
// fn_02225850 @ 0x2225850
|
|
void Gambit_fn_02225850(CPUState* cpu) {
|
|
L_02225850: ; // 0x2225850
|
|
/* 02225850 */ cpu->r[3] = 0x00000000u;
|
|
/* 02225854 */ return;
|
|
}
|
|
|
|
// fn_02225858 @ 0x2225858
|
|
void Gambit_fn_02225858(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02225858: ; // 0x2225858
|
|
/* 02225858 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02225858 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0222585C */ _t1 = cpu->r[12] + 0x0000021Cu;
|
|
/* 0222585C */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02225860 */ cpu->ctr = cpu->r[0];
|
|
/* 02225864 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02225868 @ 0x2225868
|
|
void Gambit_fn_02225868(CPUState* cpu) {
|
|
L_02225868: ; // 0x2225868
|
|
/* 02225868 */ cpu->r[3] = 0x00000000u;
|
|
/* 0222586C */ return;
|
|
}
|
|
|
|
// fn_02225870 @ 0x2225870
|
|
void Gambit_fn_02225870(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02225870: ; // 0x2225870
|
|
/* 02225870 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02225870 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02225874 */ _t1 = cpu->r[12] + 0x0000027Cu;
|
|
/* 02225874 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02225878 */ cpu->ctr = cpu->r[0];
|
|
/* 0222587C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02225880 @ 0x2225880
|
|
void Gambit_fn_02225880(CPUState* cpu) {
|
|
L_02225880: ; // 0x2225880
|
|
/* 02225880 */ cpu->r[3] = 0x00000002u;
|
|
/* 02225884 */ return;
|
|
}
|
|
|
|
// fn_02225888 @ 0x2225888
|
|
void Gambit_fn_02225888(CPUState* cpu) {
|
|
L_02225888: ; // 0x2225888
|
|
/* 02225888 */ cpu->r[3] = 0x00000000u;
|
|
/* 0222588C */ return;
|
|
}
|
|
|
|
// fn_02225890 @ 0x2225890
|
|
void Gambit_fn_02225890(CPUState* cpu) {
|
|
L_02225890: ; // 0x2225890
|
|
/* 02225890 */ cpu->r[3] = 0x00000001u;
|
|
/* 02225894 */ return;
|
|
}
|
|
|
|
// fn_02225898 @ 0x2225898
|
|
void Gambit_fn_02225898(CPUState* cpu) {
|
|
L_02225898: ; // 0x2225898
|
|
/* 02225898 */ cpu->r[3] = 0x00000000u;
|
|
/* 0222589C */ return;
|
|
}
|
|
|
|
// fn_022258A0 @ 0x22258a0
|
|
void Gambit_fn_022258A0(CPUState* cpu) {
|
|
L_022258A0: ; // 0x22258a0
|
|
/* 022258A0 */ cpu->r[3] = 0x00000000u;
|
|
/* 022258A4 */ return;
|
|
}
|
|
|
|
// fn_022258A8 @ 0x22258a8
|
|
void Gambit_fn_022258A8(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_022258A8: ; // 0x22258a8
|
|
/* 022258A8 */ _t0 = cpu->r[3] + 0x00000080u;
|
|
/* 022258A8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022258AC */ return;
|
|
}
|
|
|
|
// fn_022258B0 @ 0x22258b0
|
|
void Gambit_fn_022258B0(CPUState* cpu) {
|
|
L_022258B0: ; // 0x22258b0
|
|
/* 022258B0 */ cpu->r[3] = cpu->r[3] + 0x00000094u;
|
|
/* 022258B4 */ return;
|
|
}
|
|
|
|
// fn_022258B8 @ 0x22258b8
|
|
void Gambit_fn_022258B8(CPUState* cpu) {
|
|
L_022258B8: ; // 0x22258b8
|
|
/* 022258B8 */ cpu->r[3] = cpu->r[3] + 0x000000C4u;
|
|
/* 022258BC */ return;
|
|
}
|
|
|
|
// fn_022258C0 @ 0x22258c0
|
|
void Gambit_fn_022258C0(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_022258C0: ; // 0x22258c0
|
|
/* 022258C0 */ _t0 = cpu->r[3] + 0x000000E8u;
|
|
/* 022258C0 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 022258C4 */ return;
|
|
}
|
|
|
|
// fn_022258C8 @ 0x22258c8
|
|
void Gambit_fn_022258C8(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_022258C8: ; // 0x22258c8
|
|
/* 022258C8 */ cpu->r[12] = 0x10050000u;
|
|
/* 022258CC */ _t0 = cpu->r[12] + 0xFFFFDF18u;
|
|
/* 022258CC */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 022258D0 */ return;
|
|
}
|
|
|
|
// fn_022258D4 @ 0x22258d4
|
|
void Gambit_fn_022258D4(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_022258D4: ; // 0x22258d4
|
|
/* 022258D4 */ cpu->r[12] = 0x10050000u;
|
|
/* 022258D8 */ _t0 = cpu->r[12] + 0xFFFFDF18u;
|
|
/* 022258D8 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 022258DC */ return;
|
|
}
|
|
|
|
// fn_022258E0 @ 0x22258e0
|
|
void Gambit_fn_022258E0(CPUState* cpu) {
|
|
L_022258E0: ; // 0x22258e0
|
|
/* 022258E0 */ cpu->r[3] = 0x00000001u;
|
|
/* 022258E4 */ return;
|
|
}
|
|
|
|
// fn_022258E8 @ 0x22258e8
|
|
void Gambit_fn_022258E8(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_022258E8: ; // 0x22258e8
|
|
/* 022258E8 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 022258E8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022258EC */ _t1 = cpu->r[12] + 0x0000035Cu;
|
|
/* 022258EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022258F0 */ cpu->ctr = cpu->r[0];
|
|
/* 022258F4 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022258F8 @ 0x22258f8
|
|
void Gambit_fn_022258F8(CPUState* cpu) {
|
|
L_022258F8: ; // 0x22258f8
|
|
/* 022258F8 */ cpu->r[3] = 0x00000001u;
|
|
/* 022258FC */ return;
|
|
}
|
|
|
|
// fn_02225900 @ 0x2225900
|
|
void Gambit_fn_02225900(CPUState* cpu) {
|
|
L_02225900: ; // 0x2225900
|
|
/* 02225900 */ cpu->r[3] = 0x00000000u;
|
|
/* 02225904 */ return;
|
|
}
|
|
|
|
// fn_02225908 @ 0x2225908
|
|
void Gambit_fn_02225908(CPUState* cpu) {
|
|
L_02225908: ; // 0x2225908
|
|
/* 02225908 */ cpu->r[3] = 0x00000000u;
|
|
/* 0222590C */ return;
|
|
}
|
|
|
|
// fn_02225910 @ 0x2225910
|
|
void Gambit_fn_02225910(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_02225910: ; // 0x2225910
|
|
/* 02225910 */ _t0 = cpu->r[3] + 0x00000114u;
|
|
/* 02225910 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02225914 */ cpu->r[0] = 0x00000001u;
|
|
/* 02225918 */ _t1 = rbrew_rlwinm(cpu->r[0], 0x00000016u, 0x00000008u, 0x00000009u);
|
|
/* 02225918 */ _t2 = cpu->r[12] & 0xFF3FFFFFu;
|
|
/* 02225918 */ cpu->r[12] = _t2 | _t1;
|
|
/* 0222591C */ _t3 = cpu->r[3] + 0x00000114u;
|
|
/* 0222591C */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 02225920 */ return;
|
|
}
|
|
|
|
// fn_02225924 @ 0x2225924
|
|
void Gambit_fn_02225924(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02225924: ; // 0x2225924
|
|
/* 02225924 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02225924 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02225928 */ _t1 = cpu->r[12] + 0x0000039Cu;
|
|
/* 02225928 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0222592C */ cpu->ctr = cpu->r[0];
|
|
/* 02225930 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02225934 @ 0x2225934
|
|
void Gambit_fn_02225934(CPUState* cpu) {
|
|
L_02225934: ; // 0x2225934
|
|
/* 02225934 */ return;
|
|
}
|
|
|
|
// fn_02225938 @ 0x2225938
|
|
void Gambit_fn_02225938(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02225938: ; // 0x2225938
|
|
/* 02225938 */ cpu->r[12] = 0x10050000u;
|
|
/* 0222593C */ _t0 = cpu->r[12] + 0xFFFFDEDCu;
|
|
/* 0222593C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 02225940 */ return;
|
|
}
|
|
|
|
// fn_02225944 @ 0x2225944
|
|
void Gambit_fn_02225944(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02225944: ; // 0x2225944
|
|
/* 02225944 */ _t0 = cpu->r[3] + 0x000000A0u;
|
|
/* 02225944 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 02225948 */ return;
|
|
}
|
|
|
|
// fn_0222594C @ 0x222594c
|
|
void Gambit_fn_0222594C(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0222594C: ; // 0x222594c
|
|
/* 0222594C */ _t0 = cpu->r[3] + 0x00000020u;
|
|
/* 0222594C */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02225950 */ return;
|
|
}
|
|
|
|
// fn_02225954 @ 0x2225954
|
|
void Gambit_fn_02225954(CPUState* cpu) {
|
|
L_02225954: ; // 0x2225954
|
|
/* 02225954 */ cpu->r[3] = 0x00000000u;
|
|
/* 02225958 */ return;
|
|
}
|
|
|
|
// fn_0222595C @ 0x222595c
|
|
void Gambit_fn_0222595C(CPUState* cpu) {
|
|
L_0222595C: ; // 0x222595c
|
|
/* 0222595C */ cpu->r[3] = 0x00000000u;
|
|
/* 02225960 */ return;
|
|
}
|
|
|
|
// fn_02225964 @ 0x2225964
|
|
void Gambit_fn_02225964(CPUState* cpu) {
|
|
L_02225964: ; // 0x2225964
|
|
/* 02225964 */ cpu->r[3] = 0x00000001u;
|
|
/* 02225968 */ return;
|
|
}
|
|
|
|
// fn_0222596C @ 0x222596c
|
|
void Gambit_fn_0222596C(CPUState* cpu) {
|
|
L_0222596C: ; // 0x222596c
|
|
/* 0222596C */ cpu->r[3] = 0x00000000u;
|
|
/* 02225970 */ return;
|
|
}
|
|
|
|
// fn_02225974 @ 0x2225974
|
|
void Gambit_fn_02225974(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02225974: ; // 0x2225974
|
|
/* 02225974 */ _t0 = cpu->r[3] + 0x000000C0u;
|
|
/* 02225974 */ cpu->r[3] = rbrew_read8(cpu->mem, _t0);
|
|
/* 02225978 */ return;
|
|
}
|
|
|
|
// fn_0222597C @ 0x222597c
|
|
void Gambit_fn_0222597C(CPUState* cpu) {
|
|
L_0222597C: ; // 0x222597c
|
|
/* 0222597C */ return;
|
|
}
|
|
|
|
// fn_02225980 @ 0x2225980
|
|
void Gambit_fn_02225980(CPUState* cpu) {
|
|
L_02225980: ; // 0x2225980
|
|
/* 02225980 */ return;
|
|
}
|
|
|
|
// fn_02225984 @ 0x2225984
|
|
void Gambit_fn_02225984(CPUState* cpu) {
|
|
L_02225984: ; // 0x2225984
|
|
/* 02225984 */ return;
|
|
}
|
|
|
|
// fn_02225988 @ 0x2225988
|
|
void Gambit_fn_02225988(CPUState* cpu) {
|
|
L_02225988: ; // 0x2225988
|
|
/* 02225988 */ cpu->r[3] = 0x00000000u;
|
|
/* 0222598C */ return;
|
|
}
|
|
|
|
// fn_02225990 @ 0x2225990
|
|
void Gambit_fn_02225990(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02225990: ; // 0x2225990
|
|
/* 02225990 */ cpu->r[12] = 0x10050000u;
|
|
/* 02225994 */ _t0 = cpu->r[12] + 0xFFFFDEDCu;
|
|
/* 02225994 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 02225998 */ return;
|
|
}
|
|
|
|
// fn_0222599C @ 0x222599c
|
|
void Gambit_fn_0222599C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_0222599C: ; // 0x222599c
|
|
/* 0222599C */ _t0 = cpu->r[3] + 0x00000114u;
|
|
/* 0222599C */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022259A0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000012u, 0x00000013u);
|
|
/* 022259A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022259A4 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022259A4 */ _t2 = _t1 & 0x00000001u;
|
|
/* 022259A4 */ if (_t2) goto L_022259B4; else goto L_022259A8;
|
|
L_022259A8: ; // 0x22259a8
|
|
/* 022259A8 */ cpu->r[12] = 0x10050000u;
|
|
/* 022259AC */ _t3 = cpu->r[12] + 0xFFFFDEDCu;
|
|
/* 022259AC */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 022259B0 */ return;
|
|
L_022259B4: ; // 0x22259b4
|
|
/* 022259B4 */ cpu->r[12] = 0x10050000u;
|
|
/* 022259B8 */ _t4 = cpu->r[12] + 0xFFFFDEE4u;
|
|
/* 022259B8 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 022259BC */ return;
|
|
}
|
|
|
|
// fn_022259C0 @ 0x22259c0
|
|
void Gambit_fn_022259C0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_022259C0: ; // 0x22259c0
|
|
/* 022259C0 */ goto L_0222E4C4;
|
|
L_0222E4C4: ; // 0x222e4c4
|
|
/* 0222E4C4 */ cpu->r[0] = cpu->lr;
|
|
/* 0222E4C8 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 0222E4C8 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 0222E4CC */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 0222E4CC */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 0222E4CC */ cpu->r[1] = _t1;
|
|
/* 0222E4D0 */ Gambit_fn_021F7000(cpu);
|
|
/* 0222E4D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0222E4D8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222E4D8 */ _t3 = _t2 & 0x00000001u;
|
|
/* 0222E4D8 */ if (_t3) goto L_0222E4F4; else goto L_0222E4DC;
|
|
L_0222E4DC: ; // 0x222e4dc
|
|
/* 0222E4DC */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222E4DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0222E4E0 */ cpu->r[12] = 0x101E0000u;
|
|
/* 0222E4E4 */ cpu->lr = cpu->r[0];
|
|
/* 0222E4E8 */ _t5 = cpu->r[12] + 0xFFFF9594u;
|
|
/* 0222E4E8 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 0222E4EC */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 0222E4F0 */ return;
|
|
L_0222E4F4: ; // 0x222e4f4
|
|
/* 0222E4F4 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222E4F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0222E4F8 */ cpu->r[12] = 0x101E0000u;
|
|
/* 0222E4FC */ cpu->lr = cpu->r[0];
|
|
/* 0222E500 */ _t7 = cpu->r[12] + 0xFFFF9590u;
|
|
/* 0222E500 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 0222E504 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 0222E508 */ return;
|
|
}
|
|
|
|
// fn_022259C4 @ 0x22259c4
|
|
void Gambit_fn_022259C4(CPUState* cpu) {
|
|
L_022259C4: ; // 0x22259c4
|
|
/* 022259C4 */ cpu->r[3] = 0x00000000u;
|
|
/* 022259C8 */ return;
|
|
}
|
|
|
|
// fn_022259CC @ 0x22259cc
|
|
void Gambit_fn_022259CC(CPUState* cpu) {
|
|
L_022259CC: ; // 0x22259cc
|
|
/* 022259CC */ cpu->r[3] = 0x00000000u;
|
|
/* 022259D0 */ return;
|
|
}
|
|
|
|
// fn_022259D4 @ 0x22259d4
|
|
void Gambit_fn_022259D4(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_022259D4: ; // 0x22259d4
|
|
/* 022259D4 */ _t0 = cpu->r[3] + 0x00000114u;
|
|
/* 022259D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022259D8 */ cpu->r[0] = cpu->r[0] | 0x00020000u;
|
|
/* 022259DC */ _t1 = cpu->r[3] + 0x00000114u;
|
|
/* 022259DC */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 022259E0 */ return;
|
|
}
|
|
|
|
// fn_022259E4 @ 0x22259e4
|
|
void Gambit_fn_022259E4(CPUState* cpu) {
|
|
L_022259E4: ; // 0x22259e4
|
|
/* 022259E4 */ cpu->r[3] = 0x10050000u;
|
|
/* 022259E8 */ cpu->r[3] = cpu->r[3] + 0xFFFFDEC8u;
|
|
/* 022259EC */ return;
|
|
}
|
|
|
|
// fn_022259F0 @ 0x22259f0
|
|
void Gambit_fn_022259F0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _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_022259F0: ; // 0x22259f0
|
|
/* 022259F0 */ cpu->r[10] = 0x101D0000u;
|
|
/* 022259F4 */ _t0 = cpu->r[10] + 0xFFFFFDF0u;
|
|
/* 022259F4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022259F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 022259FC */ cpu->r[10] = 0x101D0000u;
|
|
/* 02225A00 */ cpu->r[10] = cpu->r[10] + 0xFFFFFF68u;
|
|
/* 02225A04 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02225A04 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02225A04 */ if (_t2) goto L_02225A08; else goto L_02225A20;
|
|
L_02225A08: ; // 0x2225a08
|
|
/* 02225A08 */ cpu->r[0] = 0x10050000u;
|
|
/* 02225A0C */ cpu->r[9] = 0x00000001u;
|
|
/* 02225A10 */ cpu->r[11] = 0x101D0000u;
|
|
/* 02225A14 */ cpu->r[0] = cpu->r[0] + 0xFFFFDEB8u;
|
|
/* 02225A18 */ _t3 = cpu->r[11] + 0xFFFFFDF0u;
|
|
/* 02225A18 */ rbrew_write32(cpu->mem, _t3, cpu->r[9]);
|
|
/* 02225A1C */ _t4 = cpu->r[10] + 0x00000000u;
|
|
/* 02225A1C */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
L_02225A20: ; // 0x2225a20
|
|
/* 02225A20 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]);
|
|
/* 02225A24 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02225A24 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02225A24 */ if (_t6) goto L_02225A28; else goto L_02225A30;
|
|
L_02225A28: ; // 0x2225a28
|
|
/* 02225A28 */ cpu->r[3] = 0x00000001u;
|
|
/* 02225A2C */ return;
|
|
L_02225A30: ; // 0x2225a30
|
|
/* 02225A30 */ cpu->r[9] = 0x101D0000u;
|
|
/* 02225A34 */ _t7 = cpu->r[9] + 0xFFFFDA00u;
|
|
/* 02225A34 */ cpu->r[9] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02225A38 */ cpu->r[11] = 0x101D0000u;
|
|
/* 02225A3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02225A40 */ cpu->r[11] = cpu->r[11] + 0xFFFFFBFCu;
|
|
/* 02225A44 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02225A44 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02225A44 */ if (_t9) goto L_02225A48; else goto L_02225A60;
|
|
L_02225A48: ; // 0x2225a48
|
|
/* 02225A48 */ cpu->r[9] = 0x10050000u;
|
|
/* 02225A4C */ cpu->r[0] = 0x00000001u;
|
|
/* 02225A50 */ cpu->r[10] = 0x101D0000u;
|
|
/* 02225A54 */ cpu->r[9] = cpu->r[9] + 0xFFFFDEA8u;
|
|
/* 02225A58 */ _t10 = cpu->r[10] + 0xFFFFDA00u;
|
|
/* 02225A58 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 02225A5C */ _t11 = cpu->r[11] + 0x00000000u;
|
|
/* 02225A5C */ rbrew_write32(cpu->mem, _t11, cpu->r[9]);
|
|
L_02225A60: ; // 0x2225a60
|
|
/* 02225A60 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[11]);
|
|
/* 02225A64 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02225A64 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02225A64 */ if (_t13) goto L_02225A68; else goto L_02225A70;
|
|
L_02225A68: ; // 0x2225a68
|
|
/* 02225A68 */ cpu->r[0] = 0x00000001u;
|
|
/* 02225A6C */ goto L_02225B28;
|
|
L_02225A70: ; // 0x2225a70
|
|
/* 02225A70 */ cpu->r[11] = 0x101D0000u;
|
|
/* 02225A74 */ _t14 = cpu->r[11] + 0xFFFFD9ECu;
|
|
/* 02225A74 */ cpu->r[11] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02225A78 */ cpu->r[9] = 0x101D0000u;
|
|
/* 02225A7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02225A80 */ cpu->r[9] = cpu->r[9] + 0xFFFFFB4Cu;
|
|
/* 02225A84 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02225A84 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02225A84 */ if (_t16) goto L_02225A88; else goto L_02225AA0;
|
|
L_02225A88: ; // 0x2225a88
|
|
/* 02225A88 */ cpu->r[11] = 0x10050000u;
|
|
/* 02225A8C */ cpu->r[10] = 0x00000001u;
|
|
/* 02225A90 */ cpu->r[12] = 0x101D0000u;
|
|
/* 02225A94 */ cpu->r[11] = cpu->r[11] + 0xFFFFDE98u;
|
|
/* 02225A98 */ _t17 = cpu->r[12] + 0xFFFFD9ECu;
|
|
/* 02225A98 */ rbrew_write32(cpu->mem, _t17, cpu->r[10]);
|
|
/* 02225A9C */ _t18 = cpu->r[9] + 0x00000000u;
|
|
/* 02225A9C */ rbrew_write32(cpu->mem, _t18, cpu->r[11]);
|
|
L_02225AA0: ; // 0x2225aa0
|
|
/* 02225AA0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[9]);
|
|
/* 02225AA4 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02225AA4 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02225AA4 */ if (_t20) goto L_02225AA8; else goto L_02225AB0;
|
|
L_02225AA8: ; // 0x2225aa8
|
|
/* 02225AA8 */ cpu->r[0] = 0x00000001u;
|
|
/* 02225AAC */ goto L_02225B24;
|
|
L_02225AB0: ; // 0x2225ab0
|
|
/* 02225AB0 */ cpu->r[9] = 0x101D0000u;
|
|
/* 02225AB4 */ _t21 = cpu->r[9] + 0xFFFFD4E8u;
|
|
/* 02225AB4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02225AB4 */ cpu->r[9] = _t21;
|
|
/* 02225AB8 */ cpu->r[10] = 0x101D0000u;
|
|
/* 02225ABC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02225AC0 */ cpu->r[10] = cpu->r[10] + 0xFFFFD4ECu;
|
|
/* 02225AC4 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02225AC4 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02225AC4 */ if (_t23) goto L_02225AC8; else goto L_02225ADC;
|
|
L_02225AC8: ; // 0x2225ac8
|
|
/* 02225AC8 */ cpu->r[0] = 0x10050000u;
|
|
/* 02225ACC */ cpu->r[11] = 0x00000001u;
|
|
/* 02225AD0 */ cpu->r[0] = cpu->r[0] + 0xFFFFDE88u;
|
|
/* 02225AD4 */ _t24 = cpu->r[9] + 0x00000000u;
|
|
/* 02225AD4 */ rbrew_write32(cpu->mem, _t24, cpu->r[11]);
|
|
/* 02225AD8 */ _t25 = cpu->r[10] + 0x00000000u;
|
|
/* 02225AD8 */ rbrew_write32(cpu->mem, _t25, cpu->r[0]);
|
|
L_02225ADC: ; // 0x2225adc
|
|
/* 02225ADC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]);
|
|
/* 02225AE0 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02225AE0 */ _t27 = _t26 & 0x00000001u;
|
|
/* 02225AE0 */ if (_t27) goto L_02225AE4; else goto L_02225AEC;
|
|
L_02225AE4: ; // 0x2225ae4
|
|
/* 02225AE4 */ cpu->r[0] = 0x00000001u;
|
|
/* 02225AE8 */ goto L_02225B24;
|
|
L_02225AEC: ; // 0x2225aec
|
|
/* 02225AEC */ cpu->r[10] = 0x101D0000u;
|
|
/* 02225AF0 */ _t28 = cpu->r[10] + 0xFFFFD4E0u;
|
|
/* 02225AF0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02225AF0 */ cpu->r[10] = _t28;
|
|
/* 02225AF4 */ cpu->r[11] = 0x101D0000u;
|
|
/* 02225AF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02225AFC */ cpu->r[11] = cpu->r[11] + 0xFFFFD4E4u;
|
|
/* 02225B00 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02225B00 */ _t30 = _t29 & 0x00000001u;
|
|
/* 02225B00 */ if (_t30) goto L_02225B04; else goto L_02225B18;
|
|
L_02225B04: ; // 0x2225b04
|
|
/* 02225B04 */ cpu->r[9] = 0x10050000u;
|
|
/* 02225B08 */ cpu->r[0] = 0x00000001u;
|
|
/* 02225B0C */ cpu->r[9] = cpu->r[9] + 0xFFFFDE60u;
|
|
/* 02225B10 */ _t31 = cpu->r[10] + 0x00000000u;
|
|
/* 02225B10 */ rbrew_write32(cpu->mem, _t31, cpu->r[0]);
|
|
/* 02225B14 */ _t32 = cpu->r[11] + 0x00000000u;
|
|
/* 02225B14 */ rbrew_write32(cpu->mem, _t32, cpu->r[9]);
|
|
L_02225B18: ; // 0x2225b18
|
|
/* 02225B18 */ cpu->r[0] = cpu->r[4] ^ cpu->r[11];
|
|
/* 02225B1C */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 02225B20 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
L_02225B24: ; // 0x2225b24
|
|
/* 02225B24 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
L_02225B28: ; // 0x2225b28
|
|
/* 02225B28 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 02225B2C */ return;
|
|
}
|
|
|
|
// fn_02225B30 @ 0x2225b30
|
|
void Gambit_fn_02225B30(CPUState* cpu) {
|
|
L_02225B30: ; // 0x2225b30
|
|
/* 02225B30 */ cpu->r[3] = cpu->r[3] + 0x000001ECu;
|
|
/* 02225B34 */ return;
|
|
}
|
|
|
|
// fn_02225B38 @ 0x2225b38
|
|
void Gambit_fn_02225B38(CPUState* cpu) {
|
|
L_02225B38: ; // 0x2225b38
|
|
/* 02225B38 */ cpu->r[3] = cpu->r[3] + 0x0000021Cu;
|
|
/* 02225B3C */ return;
|
|
}
|
|
|
|
// fn_02225B40 @ 0x2225b40
|
|
void Gambit_fn_02225B40(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02225B40: ; // 0x2225b40
|
|
/* 02225B40 */ cpu->r[12] = 0x10050000u;
|
|
/* 02225B44 */ _t0 = cpu->r[12] + 0xFFFFDEDCu;
|
|
/* 02225B44 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 02225B48 */ return;
|
|
}
|
|
|
|
// fn_02225B4C @ 0x2225b4c
|
|
void Gambit_fn_02225B4C(CPUState* cpu) {
|
|
L_02225B4C: ; // 0x2225b4c
|
|
/* 02225B4C */ cpu->r[3] = 0x00000000u;
|
|
/* 02225B50 */ return;
|
|
}
|
|
|
|
// fn_02225B54 @ 0x2225b54
|
|
void Gambit_fn_02225B54(CPUState* cpu) {
|
|
L_02225B54: ; // 0x2225b54
|
|
/* 02225B54 */ cpu->r[3] = 0x00000000u;
|
|
/* 02225B58 */ return;
|
|
}
|
|
|
|
// fn_02225B5C @ 0x2225b5c
|
|
void Gambit_fn_02225B5C(CPUState* cpu) {
|
|
L_02225B5C: ; // 0x2225b5c
|
|
/* 02225B5C */ return;
|
|
}
|
|
|
|
// fn_02225B60 @ 0x2225b60
|
|
void Gambit_fn_02225B60(CPUState* cpu) {
|
|
L_02225B60: ; // 0x2225b60
|
|
/* 02225B60 */ return;
|
|
}
|
|
|
|
// fn_02225B68 @ 0x2225b68
|
|
void Gambit_fn_02225B68(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_02225B68: ; // 0x2225b68
|
|
/* 02225B68 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02225B68 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02225B68 */ cpu->r[1] = _t0;
|
|
/* 02225B6C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02225B6C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02225B70 */ cpu->r[31] = cpu->r[3];
|
|
/* 02225B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02225B74 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02225B74 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02225B78 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02225B78 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02225B78 */ if (_t4) goto L_02225B7C; else goto L_02225B8C;
|
|
L_02225B7C: ; // 0x2225b7c
|
|
/* 02225B7C */ cpu->r[3] = 0x00000234u;
|
|
/* 02225B80 */ Gambit_fn_02801A78(cpu);
|
|
/* 02225B84 */ cpu->r[31] = cpu->r[3];
|
|
/* 02225B84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02225B88 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02225B88 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02225B88 */ if (_t6) goto L_02225BB0; else goto L_02225B8C;
|
|
L_02225B8C: ; // 0x2225b8c
|
|
/* 02225B8C */ cpu->r[3] = cpu->r[31];
|
|
/* 02225B90 */ Gambit_fn_02223FF4(cpu);
|
|
/* 02225B94 */ cpu->r[0] = 0x10050000u;
|
|
/* 02225B98 */ cpu->r[11] = 0x00000000u;
|
|
/* 02225B9C */ cpu->r[0] = cpu->r[0] + 0xFFFFE474u;
|
|
/* 02225BA0 */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 02225BA0 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 02225BA4 */ _t8 = cpu->r[31] + 0x00000004u;
|
|
/* 02225BA4 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 02225BA8 */ _t9 = cpu->r[31] + 0x00000228u;
|
|
/* 02225BA8 */ rbrew_write32(cpu->mem, _t9, cpu->r[11]);
|
|
/* 02225BAC */ _t10 = cpu->r[31] + 0x0000022Cu;
|
|
/* 02225BAC */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
L_02225BB0: ; // 0x2225bb0
|
|
/* 02225BB0 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 02225BB0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02225BB4 */ cpu->r[3] = cpu->r[31];
|
|
/* 02225BB8 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02225BB8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02225BBC */ cpu->lr = cpu->r[0];
|
|
/* 02225BC0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02225BC4 */ return;
|
|
}
|
|
|
|
// fn_02225BC8 @ 0x2225bc8
|
|
void Gambit_fn_02225BC8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _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;
|
|
|
|
L_02225BC8: ; // 0x2225bc8
|
|
/* 02225BC8 */ _t0 = cpu->r[1] + 0xFFFFFF68u;
|
|
/* 02225BC8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02225BC8 */ cpu->r[1] = _t0;
|
|
/* 02225BCC */ /* nop */
|
|
/* 02225BD0 */ cpu->r[0] = cpu->lr;
|
|
/* 02225BD4 */ _t1 = cpu->r[1] + 0x0000009Cu;
|
|
/* 02225BD4 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02225BD8 */ cpu->r[29] = 0x101F0000u;
|
|
/* 02225BDC */ cpu->r[7] = 0x10050000u;
|
|
/* 02225BE0 */ _t2 = cpu->r[7] + 0xFFFFE434u;
|
|
/* 02225BE0 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 02225BE4 */ cpu->r[9] = 0x10050000u;
|
|
/* 02225BE8 */ _t3 = cpu->r[9] + 0xFFFFE43Cu;
|
|
/* 02225BE8 */ cpu->f[4] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 02225BEC */ cpu->r[31] = cpu->r[3];
|
|
/* 02225BF0 */ _t4 = cpu->r[29] + 0x00006350u;
|
|
/* 02225BF0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 02225BF0 */ cpu->r[29] = _t4;
|
|
/* 02225BF4 */ cpu->r[3] = 0x101C0000u;
|
|
/* 02225BF8 */ _t5 = cpu->r[29] + 0x00000004u;
|
|
/* 02225BF8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 02225BFC */ cpu->r[11] = 0x101E0000u;
|
|
/* 02225C00 */ _t6 = cpu->r[29] + 0x00000008u;
|
|
/* 02225C00 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 02225C04 */ cpu->f[11] = -cpu->f[12];
|
|
/* 02225C08 */ _t7 = cpu->r[11] + 0xFFFF958Cu;
|
|
/* 02225C08 */ cpu->f[3] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 02225C0C */ _t8 = cpu->r[3] + 0x00001EF8u;
|
|
/* 02225C0C */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02225C10 */ _t9 = cpu->r[31] + 0x000000B4u;
|
|
/* 02225C10 */ cpu->r[8] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02225C14 */ cpu->f[10] = -cpu->f[10];
|
|
/* 02225C18 */ _t10 = cpu->r[1] + 0x00000018u;
|
|
/* 02225C18 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[11]);
|
|
/* 02225C1C */ _t11 = cpu->r[1] + 0x00000018u;
|
|
/* 02225C1C */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02225C20 */ cpu->f[13] = -cpu->f[0];
|
|
/* 02225C24 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 02225C24 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[10]);
|
|
/* 02225C28 */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 02225C28 */ cpu->r[6] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02225C2C */ cpu->r[5] = cpu->r[1] + 0x00000030u;
|
|
/* 02225C30 */ cpu->r[9] = cpu->r[31] + 0x000000B0u;
|
|
/* 02225C34 */ _t14 = cpu->r[1] + 0x00000030u;
|
|
/* 02225C34 */ rbrew_write32(cpu->mem, _t14, cpu->r[6]);
|
|
/* 02225C38 */ cpu->r[6] = 0x10050000u;
|
|
/* 02225C3C */ _t15 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02225C3C */ rbrew_write_f32(cpu->mem, _t15, cpu->f[13]);
|
|
/* 02225C40 */ _t16 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02225C40 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02225C44 */ cpu->r[7] = 0x000000FFu;
|
|
/* 02225C48 */ _t17 = cpu->r[6] + 0xFFFFE438u;
|
|
/* 02225C48 */ cpu->f[2] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 02225C4C */ cpu->r[4] = cpu->r[31] + 0x000001C4u;
|
|
/* 02225C50 */ _t18 = cpu->r[1] + 0x00000038u;
|
|
/* 02225C50 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
/* 02225C54 */ cpu->r[6] = 0x00000008u;
|
|
/* 02225C58 */ _t19 = cpu->r[1] + 0x00000034u;
|
|
/* 02225C58 */ rbrew_write32(cpu->mem, _t19, cpu->r[10]);
|
|
/* 02225C5C */ Gambit_fn_0204A864(cpu);
|
|
/* 02225C60 */ cpu->r[0] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02225C60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02225C64 */ _t20 = cpu->r[31] + 0x000000B0u;
|
|
/* 02225C64 */ rbrew_write32(cpu->mem, _t20, cpu->r[3]);
|
|
/* 02225C68 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02225C68 */ _t22 = _t21 & 0x00000001u;
|
|
/* 02225C68 */ if (_t22) goto L_02225D54; else goto L_02225C6C;
|
|
L_02225C6C: ; // 0x2225c6c
|
|
/* 02225C6C */ _t23 = cpu->r[31] + 0x000000B4u;
|
|
/* 02225C6C */ cpu->r[10] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02225C70 */ _t24 = cpu->r[10] + 0x0000015Cu;
|
|
/* 02225C70 */ cpu->r[6] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02225C74 */ cpu->r[5] = rbrew_rlwinm(cpu->r[6], 0x00000000u, 0x0000001Cu, 0x0000001Fu);
|
|
/* 02225C74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 02225C78 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02225C78 */ _t26 = _t25 & 0x00000001u;
|
|
/* 02225C78 */ if (_t26) goto L_02225D54; else goto L_02225C7C;
|
|
L_02225C7C: ; // 0x2225c7c
|
|
/* 02225C7C */ cpu->r[0] = 0x00000003u;
|
|
/* 02225C80 */ cpu->r[30] = 0x101C0000u;
|
|
/* 02225C84 */ cpu->r[6] = cpu->r[29];
|
|
/* 02225C88 */ cpu->r[5] = cpu->r[10] + 0x00000060u;
|
|
/* 02225C8C */ _t27 = cpu->r[30] + 0x000060F4u;
|
|
/* 02225C8C */ cpu->r[3] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02225C90 */ cpu->r[4] = 0x000000FEu;
|
|
/* 02225C94 */ cpu->r[7] = cpu->r[1] + 0x00000020u;
|
|
/* 02225C98 */ _t28 = cpu->r[1] + 0x00000020u;
|
|
/* 02225C98 */ rbrew_write32(cpu->mem, _t28, cpu->r[0]);
|
|
/* 02225C9C */ Gambit_fn_023F4A80(cpu);
|
|
/* 02225CA0 */ cpu->r[12] = 0x101C0000u;
|
|
/* 02225CA4 */ _t29 = cpu->r[31] + 0x000000B4u;
|
|
/* 02225CA4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02225CA8 */ _t30 = cpu->r[12] + 0x00006000u;
|
|
/* 02225CA8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02225CAC */ _t31 = cpu->r[31] + 0x0000002Cu;
|
|
/* 02225CAC */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02225CB0 */ _t32 = cpu->r[12] + 0x00000004u;
|
|
/* 02225CB0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02225CB4 */ _t33 = cpu->r[1] + 0x00000024u;
|
|
/* 02225CB4 */ rbrew_write32(cpu->mem, _t33, cpu->r[0]);
|
|
/* 02225CB8 */ _t34 = cpu->r[8] + 0x00000060u;
|
|
/* 02225CB8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02225CBC */ _t35 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02225CBC */ rbrew_write32(cpu->mem, _t35, cpu->r[6]);
|
|
/* 02225CC0 */ cpu->r[9] = 0x101F0000u;
|
|
/* 02225CC4 */ _t36 = cpu->r[8] + 0x00000064u;
|
|
/* 02225CC4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02225CC8 */ _t37 = cpu->r[9] + 0x00006328u;
|
|
/* 02225CC8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02225CC8 */ cpu->r[9] = _t37;
|
|
/* 02225CCC */ _t38 = cpu->r[1] + 0x00000040u;
|
|
/* 02225CCC */ rbrew_write32(cpu->mem, _t38, cpu->r[7]);
|
|
/* 02225CD0 */ _t39 = cpu->r[8] + 0x00000068u;
|
|
/* 02225CD0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02225CD4 */ _t40 = cpu->r[1] + 0x00000028u;
|
|
/* 02225CD4 */ rbrew_write32(cpu->mem, _t40, cpu->r[11]);
|
|
/* 02225CD8 */ _t41 = cpu->r[9] + 0x00000004u;
|
|
/* 02225CD8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02225CDC */ _t42 = cpu->r[1] + 0x00000044u;
|
|
/* 02225CDC */ rbrew_write32(cpu->mem, _t42, cpu->r[8]);
|
|
/* 02225CE0 */ _t43 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02225CE0 */ rbrew_write32(cpu->mem, _t43, cpu->r[0]);
|
|
/* 02225CE4 */ _t44 = cpu->r[4] + 0x00000134u;
|
|
/* 02225CE4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t44);
|
|
/* 02225CE8 */ cpu->r[27] = cpu->r[3];
|
|
/* 02225CEC */ cpu->ctr = cpu->r[0];
|
|
/* 02225CF0 */ _t45 = cpu->r[31] + 0x00000004u;
|
|
/* 02225CF0 */ cpu->r[28] = rbrew_read32(cpu->mem, _t45);
|
|
/* 02225CF4 */ cpu->r[3] = cpu->r[12];
|
|
/* 02225CF8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02225CFC */ _t46 = cpu->r[28] + 0x00000334u;
|
|
/* 02225CFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t46);
|
|
/* 02225D00 */ cpu->ctr = cpu->r[0];
|
|
/* 02225D04 */ cpu->r[28] = cpu->r[3];
|
|
/* 02225D08 */ cpu->r[3] = cpu->r[31];
|
|
/* 02225D0C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02225D10 */ cpu->r[5] = cpu->r[28];
|
|
/* 02225D14 */ cpu->r[9] = cpu->r[27];
|
|
/* 02225D18 */ cpu->r[12] = 0x000000FEu;
|
|
/* 02225D1C */ cpu->r[10] = cpu->r[29];
|
|
/* 02225D20 */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 02225D24 */ _t47 = cpu->r[1] + 0x00000008u;
|
|
/* 02225D24 */ rbrew_write32(cpu->mem, _t47, cpu->r[12]);
|
|
/* 02225D28 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 02225D2C */ cpu->r[7] = cpu->r[1] + 0x00000028u;
|
|
/* 02225D30 */ cpu->r[4] = 0x00000000u;
|
|
/* 02225D34 */ _t48 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02225D34 */ rbrew_write32(cpu->mem, _t48, cpu->r[0]);
|
|
/* 02225D38 */ cpu->r[8] = cpu->r[1] + 0x00000024u;
|
|
/* 02225D3C */ cpu->r[6] = cpu->r[1] + 0x0000003Cu;
|
|
/* 02225D40 */ _t49 = cpu->r[1] + 0x00000010u;
|
|
/* 02225D40 */ rbrew_write32(cpu->mem, _t49, cpu->r[0]);
|
|
/* 02225D44 */ Gambit_fn_023F6488(cpu);
|
|
/* 02225D48 */ _t50 = cpu->r[30] + 0x000060F4u;
|
|
/* 02225D48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t50);
|
|
/* 02225D4C */ cpu->r[4] = cpu->r[1] + 0x00000048u;
|
|
/* 02225D50 */ Gambit_fn_023EF3B4(cpu);
|
|
L_02225D54: ; // 0x2225d54
|
|
/* 02225D54 */ /* nop */
|
|
/* 02225D58 */ _t51 = cpu->r[1] + 0x0000009Cu;
|
|
/* 02225D58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t51);
|
|
/* 02225D5C */ cpu->lr = cpu->r[0];
|
|
/* 02225D60 */ cpu->r[1] = cpu->r[1] + 0x00000098u;
|
|
/* 02225D64 */ return;
|
|
}
|
|
|
|
// fn_02225D68 @ 0x2225d68
|
|
void Gambit_fn_02225D68(CPUState* cpu) {
|
|
L_02225D68: ; // 0x2225d68
|
|
/* 02225D68 */ return;
|
|
}
|
|
|
|
// fn_02225D6C @ 0x2225d6c
|
|
void Gambit_fn_02225D6C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_02225D6C: ; // 0x2225d6c
|
|
/* 02225D6C */ cpu->r[0] = cpu->lr;
|
|
/* 02225D70 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02225D70 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02225D70 */ cpu->r[1] = _t0;
|
|
/* 02225D74 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02225D74 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02225D78 */ cpu->r[31] = cpu->r[3];
|
|
/* 02225D7C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02225D7C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02225D80 */ Gambit_fn_022246D4(cpu);
|
|
/* 02225D84 */ cpu->r[3] = cpu->r[31];
|
|
/* 02225D88 */ Gambit_fn_0222467C(cpu);
|
|
/* 02225D8C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02225D8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02225D90 */ cpu->lr = cpu->r[0];
|
|
/* 02225D94 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02225D94 */ cpu->r[31] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02225D98 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02225D9C */ return;
|
|
}
|
|
|
|
// fn_02225D70 @ 0x2225d70
|
|
void Gambit_fn_02225D70(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_02225D70: ; // 0x2225d70
|
|
/* 02225D70 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02225D70 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02225D70 */ cpu->r[1] = _t0;
|
|
/* 02225D74 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02225D74 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02225D78 */ cpu->r[31] = cpu->r[3];
|
|
/* 02225D7C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02225D7C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02225D80 */ Gambit_fn_022246D4(cpu);
|
|
/* 02225D84 */ cpu->r[3] = cpu->r[31];
|
|
/* 02225D88 */ Gambit_fn_0222467C(cpu);
|
|
/* 02225D8C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02225D8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02225D90 */ cpu->lr = cpu->r[0];
|
|
/* 02225D94 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02225D94 */ cpu->r[31] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02225D98 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02225D9C */ return;
|
|
}
|
|
|
|
// fn_02225DA0 @ 0x2225da0
|
|
void Gambit_fn_02225DA0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t117, _t118;
|
|
|
|
L_02225DA0: ; // 0x2225da0
|
|
/* 02225DA0 */ _t0 = cpu->r[1] + 0xFFFFFF98u;
|
|
/* 02225DA0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02225DA0 */ cpu->r[1] = _t0;
|
|
/* 02225DA4 */ /* nop */
|
|
/* 02225DA8 */ cpu->r[0] = cpu->lr;
|
|
/* 02225DAC */ cpu->r[31] = cpu->r[3];
|
|
/* 02225DB0 */ _t1 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02225DB0 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02225DB4 */ Gambit_fn_0222C3E8(cpu);
|
|
/* 02225DB8 */ _t2 = cpu->r[31] + 0x000001C0u;
|
|
/* 02225DB8 */ cpu->r[5] = rbrew_read16(cpu->mem, _t2);
|
|
/* 02225DBC */ cpu->r[29] = 0x00000000u;
|
|
/* 02225DC0 */ _t3 = cpu->r[31] + 0x00000004u;
|
|
/* 02225DC0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02225DC4 */ cpu->r[5] = cpu->r[5] + 0x00000001u;
|
|
/* 02225DC8 */ _t4 = cpu->r[31] + 0x0000012Cu;
|
|
/* 02225DC8 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[29]);
|
|
/* 02225DCC */ _t5 = cpu->r[31] + 0x00000130u;
|
|
/* 02225DCC */ rbrew_write32(cpu->mem, _t5, cpu->r[29]);
|
|
/* 02225DD0 */ _t6 = cpu->r[31] + 0x000001C0u;
|
|
/* 02225DD0 */ rbrew_write16(cpu->mem, _t6, (uint16_t)cpu->r[5]);
|
|
/* 02225DD4 */ _t7 = cpu->r[6] + 0x00000254u;
|
|
/* 02225DD4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02225DD8 */ cpu->ctr = cpu->r[8];
|
|
/* 02225DDC */ cpu->r[3] = cpu->r[31];
|
|
/* 02225DE0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02225DE4 */ _t8 = cpu->r[31] + 0x00000004u;
|
|
/* 02225DE4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02225DE8 */ _t9 = cpu->r[11] + 0x000003D4u;
|
|
/* 02225DE8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02225DEC */ cpu->r[25] = cpu->r[3];
|
|
/* 02225DF0 */ cpu->ctr = cpu->r[0];
|
|
/* 02225DF4 */ cpu->r[3] = cpu->r[31];
|
|
/* 02225DF8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02225DFC */ cpu->r[7] = 0x101E0000u;
|
|
/* 02225E00 */ _t10 = cpu->r[31] + 0x000000B4u;
|
|
/* 02225E00 */ cpu->r[9] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02225E04 */ cpu->r[3] = 0x101C0000u;
|
|
/* 02225E08 */ _t11 = cpu->r[7] + 0xFFFF958Cu;
|
|
/* 02225E08 */ cpu->f[2] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 02225E0C */ cpu->r[7] = cpu->r[31] + 0x000000B0u;
|
|
/* 02225E10 */ cpu->r[5] = cpu->r[29];
|
|
/* 02225E14 */ _t12 = cpu->r[3] + 0x00001EF8u;
|
|
/* 02225E14 */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02225E18 */ cpu->r[8] = 0x000000FFu;
|
|
/* 02225E1C */ cpu->r[6] = cpu->r[5];
|
|
/* 02225E20 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 02225E20 */ rbrew_write32(cpu->mem, _t13, cpu->r[7]);
|
|
/* 02225E24 */ cpu->r[7] = 0x000C0000u;
|
|
/* 02225E28 */ cpu->r[4] = cpu->r[25];
|
|
/* 02225E2C */ cpu->r[10] = cpu->r[5];
|
|
/* 02225E30 */ cpu->r[7] = cpu->r[7] + 0x0000000Bu;
|
|
/* 02225E34 */ Gambit_fn_0204A4DC(cpu);
|
|
/* 02225E38 */ cpu->r[0] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02225E38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02225E3C */ _t14 = cpu->r[31] + 0x000000B0u;
|
|
/* 02225E3C */ rbrew_write32(cpu->mem, _t14, cpu->r[3]);
|
|
/* 02225E40 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02225E40 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02225E40 */ if (_t16) goto L_02225E50; else goto L_02225E44;
|
|
L_02225E44: ; // 0x2225e44
|
|
/* 02225E44 */ _t17 = cpu->r[31] + 0x000000B4u;
|
|
/* 02225E44 */ cpu->r[4] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02225E48 */ cpu->r[3] = cpu->r[31];
|
|
/* 02225E4C */ Gambit_fn_02224A20(cpu);
|
|
L_02225E50: ; // 0x2225e50
|
|
/* 02225E50 */ _t18 = cpu->r[31] + 0x00000051u;
|
|
/* 02225E50 */ cpu->r[5] = rbrew_read8(cpu->mem, _t18);
|
|
/* 02225E54 */ cpu->r[26] = 0x101D0000u;
|
|
/* 02225E58 */ cpu->r[27] = 0x101D0000u;
|
|
/* 02225E5C */ cpu->r[28] = 0x101D0000u;
|
|
/* 02225E60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 02225E64 */ cpu->r[30] = 0x101D0000u;
|
|
/* 02225E68 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02225E68 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02225E68 */ if (_t20) goto L_02225FB0; else goto L_02225E6C;
|
|
L_02225E6C: ; // 0x2225e6c
|
|
/* 02225E6C */ /* nop */
|
|
/* 02225E70 */ /* nop */
|
|
/* 02225E74 */ _t21 = cpu->r[31] + 0x000001CCu;
|
|
/* 02225E74 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 02225E78 */ /* nop */
|
|
/* 02225E7C */ /* nop */
|
|
/* 02225E80 */ _t22 = cpu->r[25] + 0x00000008u;
|
|
/* 02225E80 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 02225E84 */ _t23 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02225E84 */ cpu->r[8] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02225E88 */ cpu->f[13] = cpu->f[11] - cpu->f[12];
|
|
/* 02225E8C */ _t24 = cpu->r[1] + 0x00000010u;
|
|
/* 02225E8C */ cpu->r[9] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02225E90 */ _t25 = cpu->r[1] + 0x00000028u;
|
|
/* 02225E90 */ rbrew_write32(cpu->mem, _t25, cpu->r[8]);
|
|
/* 02225E94 */ _t26 = cpu->r[1] + 0x00000014u;
|
|
/* 02225E94 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[13]);
|
|
/* 02225E98 */ _t27 = cpu->r[1] + 0x00000014u;
|
|
/* 02225E98 */ cpu->r[10] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02225E9C */ _t28 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02225E9C */ rbrew_write32(cpu->mem, _t28, cpu->r[9]);
|
|
/* 02225EA0 */ cpu->r[3] = cpu->r[1] + 0x00000028u;
|
|
/* 02225EA4 */ _t29 = cpu->r[1] + 0x00000030u;
|
|
/* 02225EA4 */ rbrew_write32(cpu->mem, _t29, cpu->r[10]);
|
|
/* 02225EA8 */ Gambit_fn_02C69350(cpu);
|
|
/* 02225EAC */ cpu->r[12] = 0x10050000u;
|
|
/* 02225EB0 */ _t30 = cpu->r[12] + 0xFFFFE440u;
|
|
/* 02225EB0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 02225EB4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[0]);
|
|
/* 02225EB8 */ _t31 = cpu->r[31] + 0x00000004u;
|
|
/* 02225EB8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02225EBC */ _t32 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02225EBC */ _t33 = _t32 & 0x00000001u;
|
|
/* 02225EBC */ if (_t33) goto L_02225EC0; else goto L_02225EC4;
|
|
L_02225EC0: ; // 0x2225ec0
|
|
/* 02225EC0 */ _t34 = cpu->r[31] + 0x00000130u;
|
|
/* 02225EC0 */ rbrew_write32(cpu->mem, _t34, cpu->r[29]);
|
|
L_02225EC4: ; // 0x2225ec4
|
|
/* 02225EC4 */ _t35 = cpu->r[11] + 0x00000334u;
|
|
/* 02225EC4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02225EC8 */ cpu->ctr = cpu->r[12];
|
|
/* 02225ECC */ cpu->r[3] = cpu->r[31];
|
|
/* 02225ED0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02225ED4 */ cpu->r[3] = cpu->r[31];
|
|
/* 02225ED8 */ Gambit_fn_02225194(cpu);
|
|
/* 02225EDC */ _t36 = cpu->r[31] + 0x00000130u;
|
|
/* 02225EDC */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02225EE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02225EE4 */ _t37 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02225EE4 */ _t38 = _t37 & 0x00000001u;
|
|
/* 02225EE4 */ if (_t38) goto L_02225EE8; else goto L_02225FB0;
|
|
L_02225EE8: ; // 0x2225ee8
|
|
/* 02225EE8 */ _t39 = cpu->r[30] + 0xFFFFFE00u;
|
|
/* 02225EE8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02225EEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02225EF0 */ _t40 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02225EF0 */ _t41 = _t40 & 0x00000001u;
|
|
/* 02225EF0 */ if (_t41) goto L_02225EF4; else goto L_02225F10;
|
|
L_02225EF4: ; // 0x2225ef4
|
|
/* 02225EF4 */ cpu->r[0] = 0x00000001u;
|
|
/* 02225EF8 */ cpu->r[4] = 0x101C0000u;
|
|
/* 02225EFC */ cpu->r[3] = cpu->r[27] + 0x00004F7Fu;
|
|
/* 02225F00 */ cpu->r[5] = 0x00000016u;
|
|
/* 02225F04 */ cpu->r[4] = cpu->r[4] + 0x000054C8u;
|
|
/* 02225F08 */ _t42 = cpu->r[30] + 0xFFFFFE00u;
|
|
/* 02225F08 */ rbrew_write32(cpu->mem, _t42, cpu->r[0]);
|
|
/* 02225F0C */ rbrew_dispatch(cpu, 0x02d0b870u);
|
|
L_02225F10: ; // 0x2225f10
|
|
/* 02225F10 */ _t43 = cpu->r[28] + 0xFFFFFDFCu;
|
|
/* 02225F10 */ cpu->r[8] = rbrew_read32(cpu->mem, _t43);
|
|
/* 02225F14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02225F18 */ _t44 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02225F18 */ _t45 = _t44 & 0x00000001u;
|
|
/* 02225F18 */ if (_t45) goto L_02225F1C; else goto L_02225F44;
|
|
L_02225F1C: ; // 0x2225f1c
|
|
/* 02225F1C */ _t46 = cpu->r[26] + 0xFFFFFF6Cu;
|
|
/* 02225F1C */ rbrew_write32(cpu->mem, _t46, cpu->r[29]);
|
|
/* 02225F20 */ cpu->r[0] = 0x00000001u;
|
|
/* 02225F24 */ _t47 = cpu->r[28] + 0xFFFFFDFCu;
|
|
/* 02225F24 */ rbrew_write32(cpu->mem, _t47, cpu->r[0]);
|
|
/* 02225F28 */ Gambit_fn_0282A450(cpu);
|
|
/* 02225F2C */ cpu->r[24] = cpu->r[3];
|
|
/* 02225F30 */ Gambit_fn_02836FFC(cpu);
|
|
/* 02225F34 */ _t48 = cpu->r[26] + 0xFFFFFF6Cu;
|
|
/* 02225F34 */ cpu->r[0] = rbrew_read32(cpu->mem, _t48);
|
|
/* 02225F38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02225F3C */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02225F3C */ _t50 = _t49 & 0x00000001u;
|
|
/* 02225F3C */ if (_t50) goto L_02225F68; else goto L_02225F40;
|
|
L_02225F40: ; // 0x2225f40
|
|
/* 02225F40 */ goto L_02225F84;
|
|
L_02225F44: ; // 0x2225f44
|
|
/* 02225F44 */ _t51 = cpu->r[26] + 0xFFFFFF6Cu;
|
|
/* 02225F44 */ cpu->r[5] = rbrew_read32(cpu->mem, _t51);
|
|
/* 02225F48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 02225F4C */ _t52 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02225F4C */ _t53 = _t52 & 0x00000001u;
|
|
/* 02225F4C */ if (_t53) goto L_02225F50; else goto L_02225F90;
|
|
L_02225F50: ; // 0x2225f50
|
|
/* 02225F50 */ Gambit_fn_0282A450(cpu);
|
|
/* 02225F54 */ cpu->r[24] = cpu->r[3];
|
|
/* 02225F58 */ Gambit_fn_02836FFC(cpu);
|
|
/* 02225F5C */ _t54 = cpu->r[26] + 0xFFFFFF6Cu;
|
|
/* 02225F5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t54);
|
|
/* 02225F60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02225F64 */ _t55 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02225F64 */ _t56 = _t55 & 0x00000001u;
|
|
/* 02225F64 */ if (_t56) goto L_02225F68; else goto L_02225F84;
|
|
L_02225F68: ; // 0x2225f68
|
|
/* 02225F68 */ cpu->r[25] = 0x101D0000u;
|
|
/* 02225F6C */ cpu->r[4] = cpu->r[27] + 0x00004F7Fu;
|
|
/* 02225F70 */ cpu->r[25] = cpu->r[25] + 0xFFFFFF70u;
|
|
/* 02225F74 */ cpu->r[5] = 0x00000003u;
|
|
/* 02225F78 */ cpu->r[3] = cpu->r[25];
|
|
/* 02225F7C */ Gambit_fn_0282A374(cpu);
|
|
/* 02225F80 */ _t57 = cpu->r[26] + 0xFFFFFF6Cu;
|
|
/* 02225F80 */ rbrew_write32(cpu->mem, _t57, cpu->r[25]);
|
|
L_02225F84: ; // 0x2225f84
|
|
/* 02225F84 */ cpu->r[3] = cpu->r[24];
|
|
/* 02225F88 */ Gambit_fn_02837030(cpu);
|
|
/* 02225F8C */ _t58 = cpu->r[26] + 0xFFFFFF6Cu;
|
|
/* 02225F8C */ cpu->r[5] = rbrew_read32(cpu->mem, _t58);
|
|
L_02225F90: ; // 0x2225f90
|
|
/* 02225F90 */ cpu->r[0] = 0x10050000u;
|
|
/* 02225F94 */ _t59 = cpu->r[31] + 0x00000030u;
|
|
/* 02225F94 */ cpu->r[3] = rbrew_read32(cpu->mem, _t59);
|
|
/* 02225F98 */ cpu->r[0] = cpu->r[0] + 0xFFFFE3ACu;
|
|
/* 02225F9C */ _t60 = cpu->r[5] + 0x00000008u;
|
|
/* 02225F9C */ cpu->r[9] = rbrew_read32(cpu->mem, _t60);
|
|
/* 02225FA0 */ _t61 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02225FA0 */ rbrew_write32(cpu->mem, _t61, cpu->r[0]);
|
|
/* 02225FA4 */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 02225FA8 */ _t62 = cpu->r[1] + 0x00000018u;
|
|
/* 02225FA8 */ rbrew_write32(cpu->mem, _t62, cpu->r[9]);
|
|
/* 02225FAC */ Gambit_fn_027B70F0(cpu);
|
|
L_02225FB0: ; // 0x2225fb0
|
|
/* 02225FB0 */ _t63 = cpu->r[31] + 0x0000005Cu;
|
|
/* 02225FB0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t63);
|
|
/* 02225FB4 */ cpu->r[3] = cpu->r[1] + 0x00000034u;
|
|
/* 02225FB8 */ _t64 = cpu->r[31] + 0x000001C0u;
|
|
/* 02225FB8 */ cpu->r[0] = rbrew_read16(cpu->mem, _t64);
|
|
/* 02225FBC */ cpu->r[4] = cpu->r[12] + cpu->r[0];
|
|
/* 02225FC0 */ Gambit_fn_028300A4(cpu);
|
|
/* 02225FC4 */ _t65 = cpu->r[31] + 0x00000230u;
|
|
/* 02225FC4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t65);
|
|
/* 02225FC8 */ _t66 = cpu->r[31] + 0x000001C2u;
|
|
/* 02225FC8 */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t66);
|
|
/* 02225FCC */ cpu->r[7] = (uint32_t)((int32_t)cpu->r[9] * (int32_t)cpu->r[0]);
|
|
/* 02225FD0 */ _t67 = cpu->r[31] + 0x0000022Cu;
|
|
/* 02225FD0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t67);
|
|
/* 02225FD4 */ cpu->r[3] = cpu->r[1] + 0x00000034u;
|
|
/* 02225FD8 */ cpu->r[25] = cpu->r[12] + cpu->r[7];
|
|
/* 02225FDC */ Gambit_fn_02830138(cpu);
|
|
/* 02225FE0 */ /* nop */
|
|
/* 02225FE4 */ _t68 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02225FE4 */ _t69 = _t68 & 0x00000001u;
|
|
/* 02225FE4 */ if (_t69) goto L_02225FE8; else goto L_02226114;
|
|
L_02225FE8: ; // 0x2225fe8
|
|
/* 02225FE8 */ _t70 = cpu->r[31] + 0x000001C0u;
|
|
/* 02225FE8 */ cpu->r[8] = rbrew_read16(cpu->mem, _t70);
|
|
/* 02225FEC */ _t71 = cpu->r[31] + 0x00000228u;
|
|
/* 02225FEC */ cpu->r[10] = rbrew_read32(cpu->mem, _t71);
|
|
/* 02225FF0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], cpu->r[10]);
|
|
/* 02225FF4 */ _t72 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02225FF4 */ _t73 = _t72 & 0x00000001u;
|
|
/* 02225FF4 */ if (_t73) goto L_02225FF8; else goto L_02226114;
|
|
L_02225FF8: ; // 0x2225ff8
|
|
/* 02225FF8 */ _t74 = cpu->r[31] + 0x000000D0u;
|
|
/* 02225FF8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t74);
|
|
/* 02225FFC */ _t75 = cpu->r[31] + 0x000000F8u;
|
|
/* 02225FFC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t75);
|
|
/* 02226000 */ _t76 = cpu->r[31] + 0x000000FCu;
|
|
/* 02226000 */ rbrew_write_f32(cpu->mem, _t76, cpu->f[0]);
|
|
/* 02226004 */ _t77 = cpu->r[31] + 0x00000094u;
|
|
/* 02226004 */ rbrew_write_f32(cpu->mem, _t77, cpu->f[0]);
|
|
/* 02226008 */ _t78 = cpu->r[31] + 0x000000D8u;
|
|
/* 02226008 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t78);
|
|
/* 0222600C */ _t79 = cpu->r[31] + 0x00000088u;
|
|
/* 0222600C */ rbrew_write_f32(cpu->mem, _t79, cpu->f[0]);
|
|
/* 02226010 */ _t80 = cpu->r[31] + 0x0000009Cu;
|
|
/* 02226010 */ rbrew_write_f32(cpu->mem, _t80, cpu->f[13]);
|
|
/* 02226014 */ _t81 = cpu->r[31] + 0x000000F0u;
|
|
/* 02226014 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t81);
|
|
/* 02226018 */ _t82 = cpu->r[31] + 0x000000CCu;
|
|
/* 02226018 */ rbrew_write_f32(cpu->mem, _t82, cpu->f[12]);
|
|
/* 0222601C */ _t83 = cpu->r[31] + 0x000001C2u;
|
|
/* 0222601C */ cpu->r[11] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t83);
|
|
/* 02226020 */ _t84 = cpu->r[31] + 0x000000C4u;
|
|
/* 02226020 */ rbrew_write_f32(cpu->mem, _t84, cpu->f[0]);
|
|
/* 02226024 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 02226028 */ _t85 = cpu->r[31] + 0x000000D4u;
|
|
/* 02226028 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t85);
|
|
/* 0222602C */ _t86 = cpu->r[31] + 0x000001C2u;
|
|
/* 0222602C */ rbrew_write16(cpu->mem, _t86, (uint16_t)cpu->r[11]);
|
|
/* 02226030 */ _t87 = cpu->r[31] + 0x00000100u;
|
|
/* 02226030 */ rbrew_write_f32(cpu->mem, _t87, cpu->f[10]);
|
|
/* 02226034 */ _t88 = cpu->r[31] + 0x000000F4u;
|
|
/* 02226034 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t88);
|
|
/* 02226038 */ _t89 = cpu->r[31] + 0x0000008Cu;
|
|
/* 02226038 */ rbrew_write_f32(cpu->mem, _t89, cpu->f[10]);
|
|
/* 0222603C */ _t90 = cpu->r[31] + 0x000000C8u;
|
|
/* 0222603C */ rbrew_write_f32(cpu->mem, _t90, cpu->f[11]);
|
|
/* 02226040 */ _t91 = cpu->r[31] + 0x00000090u;
|
|
/* 02226040 */ rbrew_write_f32(cpu->mem, _t91, cpu->f[13]);
|
|
/* 02226044 */ _t92 = cpu->r[31] + 0x00000098u;
|
|
/* 02226044 */ rbrew_write_f32(cpu->mem, _t92, cpu->f[10]);
|
|
/* 02226048 */ _t93 = cpu->r[31] + 0x00000104u;
|
|
/* 02226048 */ rbrew_write_f32(cpu->mem, _t93, cpu->f[13]);
|
|
/* 0222604C */ _t94 = cpu->r[30] + 0xFFFFFE00u;
|
|
/* 0222604C */ cpu->r[6] = rbrew_read32(cpu->mem, _t94);
|
|
/* 02226050 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 02226054 */ _t95 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226054 */ _t96 = _t95 & 0x00000001u;
|
|
/* 02226054 */ if (_t96) goto L_02226058; else goto L_02226074;
|
|
L_02226058: ; // 0x2226058
|
|
/* 02226058 */ cpu->r[7] = 0x00000001u;
|
|
/* 0222605C */ cpu->r[4] = 0x101C0000u;
|
|
/* 02226060 */ cpu->r[3] = cpu->r[27] + 0x00004F7Fu;
|
|
/* 02226064 */ cpu->r[5] = 0x00000016u;
|
|
/* 02226068 */ cpu->r[4] = cpu->r[4] + 0x000054C8u;
|
|
/* 0222606C */ _t97 = cpu->r[30] + 0xFFFFFE00u;
|
|
/* 0222606C */ rbrew_write32(cpu->mem, _t97, cpu->r[7]);
|
|
/* 02226070 */ rbrew_dispatch(cpu, 0x02d0b870u);
|
|
L_02226074: ; // 0x2226074
|
|
/* 02226074 */ _t98 = cpu->r[28] + 0xFFFFFDFCu;
|
|
/* 02226074 */ cpu->r[8] = rbrew_read32(cpu->mem, _t98);
|
|
/* 02226078 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0222607C */ _t99 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222607C */ _t100 = _t99 & 0x00000001u;
|
|
/* 0222607C */ if (_t100) goto L_02226080; else goto L_022260A8;
|
|
L_02226080: ; // 0x2226080
|
|
/* 02226080 */ _t101 = cpu->r[26] + 0xFFFFFF6Cu;
|
|
/* 02226080 */ rbrew_write32(cpu->mem, _t101, cpu->r[29]);
|
|
/* 02226084 */ cpu->r[9] = 0x00000001u;
|
|
/* 02226088 */ _t102 = cpu->r[28] + 0xFFFFFDFCu;
|
|
/* 02226088 */ rbrew_write32(cpu->mem, _t102, cpu->r[9]);
|
|
/* 0222608C */ Gambit_fn_0282A450(cpu);
|
|
/* 02226090 */ cpu->r[30] = cpu->r[3];
|
|
/* 02226094 */ Gambit_fn_02836FFC(cpu);
|
|
/* 02226098 */ _t103 = cpu->r[26] + 0xFFFFFF6Cu;
|
|
/* 02226098 */ cpu->r[10] = rbrew_read32(cpu->mem, _t103);
|
|
/* 0222609C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 022260A0 */ _t104 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022260A0 */ _t105 = _t104 & 0x00000001u;
|
|
/* 022260A0 */ if (_t105) goto L_022260CC; else goto L_022260A4;
|
|
L_022260A4: ; // 0x22260a4
|
|
/* 022260A4 */ goto L_022260E8;
|
|
L_022260A8: ; // 0x22260a8
|
|
/* 022260A8 */ _t106 = cpu->r[26] + 0xFFFFFF6Cu;
|
|
/* 022260A8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t106);
|
|
/* 022260AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 022260B0 */ _t107 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022260B0 */ _t108 = _t107 & 0x00000001u;
|
|
/* 022260B0 */ if (_t108) goto L_022260B4; else goto L_022260F4;
|
|
L_022260B4: ; // 0x22260b4
|
|
/* 022260B4 */ Gambit_fn_0282A450(cpu);
|
|
/* 022260B8 */ cpu->r[30] = cpu->r[3];
|
|
/* 022260BC */ Gambit_fn_02836FFC(cpu);
|
|
/* 022260C0 */ _t109 = cpu->r[26] + 0xFFFFFF6Cu;
|
|
/* 022260C0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t109);
|
|
/* 022260C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 022260C8 */ _t110 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022260C8 */ _t111 = _t110 & 0x00000001u;
|
|
/* 022260C8 */ if (_t111) goto L_022260CC; else goto L_022260E8;
|
|
L_022260CC: ; // 0x22260cc
|
|
/* 022260CC */ cpu->r[25] = 0x101D0000u;
|
|
/* 022260D0 */ cpu->r[4] = cpu->r[27] + 0x00004F7Fu;
|
|
/* 022260D4 */ cpu->r[25] = cpu->r[25] + 0xFFFFFF70u;
|
|
/* 022260D8 */ cpu->r[5] = 0x00000003u;
|
|
/* 022260DC */ cpu->r[3] = cpu->r[25];
|
|
/* 022260E0 */ Gambit_fn_0282A374(cpu);
|
|
/* 022260E4 */ _t112 = cpu->r[26] + 0xFFFFFF6Cu;
|
|
/* 022260E4 */ rbrew_write32(cpu->mem, _t112, cpu->r[25]);
|
|
L_022260E8: ; // 0x22260e8
|
|
/* 022260E8 */ cpu->r[3] = cpu->r[30];
|
|
/* 022260EC */ Gambit_fn_02837030(cpu);
|
|
/* 022260F0 */ _t113 = cpu->r[26] + 0xFFFFFF6Cu;
|
|
/* 022260F0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t113);
|
|
L_022260F4: ; // 0x22260f4
|
|
/* 022260F4 */ cpu->r[0] = 0x10050000u;
|
|
/* 022260F8 */ _t114 = cpu->r[31] + 0x00000030u;
|
|
/* 022260F8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t114);
|
|
/* 022260FC */ cpu->r[0] = cpu->r[0] + 0xFFFFE3ACu;
|
|
/* 02226100 */ _t115 = cpu->r[5] + 0x00000004u;
|
|
/* 02226100 */ cpu->r[12] = rbrew_read32(cpu->mem, _t115);
|
|
/* 02226104 */ _t116 = cpu->r[1] + 0x00000024u;
|
|
/* 02226104 */ rbrew_write32(cpu->mem, _t116, cpu->r[0]);
|
|
/* 02226108 */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 0222610C */ _t117 = cpu->r[1] + 0x00000020u;
|
|
/* 0222610C */ rbrew_write32(cpu->mem, _t117, cpu->r[12]);
|
|
/* 02226110 */ Gambit_fn_027B70F0(cpu);
|
|
L_02226114: ; // 0x2226114
|
|
/* 02226114 */ cpu->r[3] = cpu->r[31];
|
|
/* 02226118 */ Gambit_fn_02224718(cpu);
|
|
/* 0222611C */ cpu->r[3] = cpu->r[31];
|
|
/* 02226120 */ Gambit_fn_0222467C(cpu);
|
|
/* 02226124 */ /* nop */
|
|
/* 02226128 */ _t118 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02226128 */ cpu->r[0] = rbrew_read32(cpu->mem, _t118);
|
|
/* 0222612C */ cpu->lr = cpu->r[0];
|
|
/* 02226130 */ cpu->r[1] = cpu->r[1] + 0x00000068u;
|
|
/* 02226134 */ return;
|
|
}
|
|
|
|
// fn_02226138 @ 0x2226138
|
|
void Gambit_fn_02226138(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _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;
|
|
|
|
L_02226138: ; // 0x2226138
|
|
/* 02226138 */ _t0 = cpu->r[1] + 0xFFFFFF58u;
|
|
/* 02226138 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02226138 */ cpu->r[1] = _t0;
|
|
/* 0222613C */ /* nop */
|
|
/* 02226140 */ cpu->r[0] = cpu->lr;
|
|
/* 02226144 */ cpu->r[27] = cpu->r[5];
|
|
/* 02226148 */ cpu->r[28] = cpu->r[6];
|
|
/* 0222614C */ cpu->r[31] = cpu->r[8];
|
|
/* 02226150 */ cpu->r[26] = cpu->r[4];
|
|
/* 02226154 */ cpu->r[30] = cpu->r[3];
|
|
/* 02226158 */ _t1 = cpu->r[1] + 0x00000098u;
|
|
/* 02226158 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0222615C */ /* nop */
|
|
/* 02226160 */ _t2 = cpu->r[1] + 0x00000088u;
|
|
/* 02226160 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[30]);
|
|
/* 02226164 */ /* nop */
|
|
/* 02226168 */ _t3 = cpu->r[1] + 0x000000A0u;
|
|
/* 02226168 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 0222616C */ cpu->r[4] = cpu->r[31];
|
|
/* 02226170 */ _t4 = cpu->r[1] + 0x00000090u;
|
|
/* 02226170 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[30]);
|
|
/* 02226174 */ cpu->r[3] = cpu->r[1] + 0x00000060u;
|
|
/* 02226178 */ _t5 = cpu->r[1] + 0x000000ACu;
|
|
/* 02226178 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0222617C */ cpu->r[29] = cpu->r[7];
|
|
/* 02226180 */ Gambit_fn_028300A4(cpu);
|
|
/* 02226184 */ _t6 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02226184 */ rbrew_write32(cpu->mem, _t6, cpu->r[27]);
|
|
/* 02226188 */ cpu->r[0] = 0x00000000u;
|
|
/* 0222618C */ _t7 = cpu->r[1] + 0x00000050u;
|
|
/* 0222618C */ rbrew_write32(cpu->mem, _t7, cpu->r[28]);
|
|
/* 02226190 */ cpu->r[12] = 0x10050000u;
|
|
/* 02226194 */ _t8 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02226194 */ rbrew_write16(cpu->mem, _t8, (uint16_t)cpu->r[0]);
|
|
/* 02226198 */ cpu->r[5] = 0x101F0000u;
|
|
/* 0222619C */ _t9 = cpu->r[12] + 0xFFFFE43Cu;
|
|
/* 0222619C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 022261A0 */ cpu->r[7] = 0x10050000u;
|
|
/* 022261A4 */ _t10 = cpu->r[5] + 0x00006338u;
|
|
/* 022261A4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022261A4 */ cpu->r[5] = _t10;
|
|
/* 022261A8 */ _t11 = cpu->r[5] + 0x00000008u;
|
|
/* 022261A8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022261AC */ cpu->r[8] = 0x10050000u;
|
|
/* 022261B0 */ _t12 = cpu->r[8] + 0xFFFFE444u;
|
|
/* 022261B0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 022261B4 */ _t13 = cpu->r[1] + 0x00000010u;
|
|
/* 022261B4 */ rbrew_write32(cpu->mem, _t13, cpu->r[9]);
|
|
/* 022261B8 */ _t14 = cpu->r[1] + 0x00000030u;
|
|
/* 022261B8 */ rbrew_write_f32(cpu->mem, _t14, cpu->f[12]);
|
|
/* 022261BC */ _t15 = cpu->r[30] + 0x0000002Cu;
|
|
/* 022261BC */ cpu->r[10] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022261C0 */ _t16 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022261C0 */ rbrew_write32(cpu->mem, _t16, cpu->r[9]);
|
|
/* 022261C4 */ _t17 = cpu->r[30] + 0x000001CCu;
|
|
/* 022261C4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 022261C8 */ _t18 = cpu->r[7] + 0xFFFFE448u;
|
|
/* 022261C8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 022261CC */ _t19 = cpu->r[5] + 0x00000004u;
|
|
/* 022261CC */ cpu->r[7] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022261D0 */ cpu->r[9] = 0x10050000u;
|
|
/* 022261D4 */ _t20 = cpu->r[1] + 0x00000010u;
|
|
/* 022261D4 */ rbrew_write_f32(cpu->mem, _t20, cpu->f[0]);
|
|
/* 022261D8 */ _t21 = cpu->r[9] + 0xFFFFE44Cu;
|
|
/* 022261D8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 022261DC */ _t22 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022261DC */ rbrew_write_f32(cpu->mem, _t22, cpu->f[12]);
|
|
/* 022261E0 */ _t23 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022261E0 */ rbrew_write_f32(cpu->mem, _t23, cpu->f[0]);
|
|
/* 022261E4 */ _t24 = cpu->r[1] + 0x00000018u;
|
|
/* 022261E4 */ rbrew_write32(cpu->mem, _t24, cpu->r[7]);
|
|
/* 022261E8 */ _t25 = cpu->r[1] + 0x00000018u;
|
|
/* 022261E8 */ rbrew_write_f32(cpu->mem, _t25, cpu->f[12]);
|
|
/* 022261EC */ _t26 = cpu->r[1] + 0x00000014u;
|
|
/* 022261EC */ rbrew_write_f32(cpu->mem, _t26, cpu->f[12]);
|
|
/* 022261F0 */ _t27 = cpu->r[1] + 0x00000048u;
|
|
/* 022261F0 */ rbrew_write8(cpu->mem, _t27, (uint8_t)cpu->r[29]);
|
|
/* 022261F4 */ _t28 = cpu->r[1] + 0x00000024u;
|
|
/* 022261F4 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[11]);
|
|
/* 022261F8 */ _t29 = cpu->r[1] + 0x00000058u;
|
|
/* 022261F8 */ rbrew_write32(cpu->mem, _t29, cpu->r[26]);
|
|
/* 022261FC */ _t30 = cpu->r[1] + 0x00000034u;
|
|
/* 022261FC */ rbrew_write_f32(cpu->mem, _t30, cpu->f[31]);
|
|
/* 02226200 */ _t31 = cpu->r[1] + 0x00000020u;
|
|
/* 02226200 */ rbrew_write_f32(cpu->mem, _t31, cpu->f[12]);
|
|
/* 02226204 */ _t32 = cpu->r[30] + 0x000001C4u;
|
|
/* 02226204 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 02226208 */ _t33 = cpu->r[1] + 0x00000008u;
|
|
/* 02226208 */ rbrew_write32(cpu->mem, _t33, cpu->r[6]);
|
|
/* 0222620C */ _t34 = cpu->r[1] + 0x00000008u;
|
|
/* 0222620C */ rbrew_write_f32(cpu->mem, _t34, cpu->f[11]);
|
|
/* 02226210 */ _t35 = cpu->r[1] + 0x00000054u;
|
|
/* 02226210 */ rbrew_write32(cpu->mem, _t35, cpu->r[31]);
|
|
/* 02226214 */ _t36 = cpu->r[1] + 0x00000044u;
|
|
/* 02226214 */ rbrew_write32(cpu->mem, _t36, cpu->r[10]);
|
|
/* 02226218 */ _t37 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02226218 */ rbrew_write32(cpu->mem, _t37, cpu->r[7]);
|
|
/* 0222621C */ _t38 = cpu->r[30] + 0x000001C8u;
|
|
/* 0222621C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 02226220 */ _t39 = cpu->r[30] + 0x00000004u;
|
|
/* 02226220 */ cpu->r[8] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02226224 */ _t40 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02226224 */ rbrew_write_f32(cpu->mem, _t40, cpu->f[13]);
|
|
/* 02226228 */ _t41 = cpu->r[1] + 0x00000028u;
|
|
/* 02226228 */ rbrew_write_f32(cpu->mem, _t41, cpu->f[12]);
|
|
/* 0222622C */ _t42 = cpu->r[8] + 0x00000334u;
|
|
/* 0222622C */ cpu->r[0] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02226230 */ cpu->ctr = cpu->r[0];
|
|
/* 02226234 */ cpu->r[3] = cpu->r[30];
|
|
/* 02226238 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222623C */ cpu->r[10] = 0x10050000u;
|
|
/* 02226240 */ _t43 = cpu->r[10] + 0xFFFFE450u;
|
|
/* 02226240 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 02226244 */ cpu->r[4] = cpu->r[1] + 0x00000044u;
|
|
/* 02226248 */ _t44 = cpu->r[1] + 0x00000030u;
|
|
/* 02226248 */ rbrew_write_f32(cpu->mem, _t44, cpu->f[1]);
|
|
/* 0222624C */ cpu->r[8] = 0x10050000u;
|
|
/* 02226250 */ _t45 = cpu->r[8] + 0xFFFFE454u;
|
|
/* 02226250 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t45);
|
|
/* 02226254 */ cpu->r[3] = cpu->r[30];
|
|
/* 02226258 */ _t46 = cpu->r[1] + 0x00000020u;
|
|
/* 02226258 */ rbrew_write_f32(cpu->mem, _t46, cpu->f[9]);
|
|
/* 0222625C */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02226260 */ _t47 = cpu->r[1] + 0x00000028u;
|
|
/* 02226260 */ rbrew_write_f32(cpu->mem, _t47, cpu->f[10]);
|
|
/* 02226264 */ Gambit_fn_0222A738(cpu);
|
|
/* 02226268 */ cpu->r[10] = 0x00000002u;
|
|
/* 0222626C */ cpu->r[3] = 0x101D0000u;
|
|
/* 02226270 */ _t48 = cpu->r[30] + 0x000001B4u;
|
|
/* 02226270 */ rbrew_write32(cpu->mem, _t48, cpu->r[10]);
|
|
/* 02226274 */ _t49 = cpu->r[3] + 0xFFFF9918u;
|
|
/* 02226274 */ cpu->r[3] = rbrew_read32(cpu->mem, _t49);
|
|
/* 02226278 */ Gambit_fn_02830138(cpu);
|
|
/* 0222627C */ cpu->r[0] = rbrew_rlwinm(cpu->r[3], 0x00000017u, 0x00000009u, 0x0000001Fu);
|
|
/* 02226280 */ cpu->r[5] = cpu->r[0] | 0x3F800000u;
|
|
/* 02226284 */ _t50 = cpu->r[1] + 0x00000040u;
|
|
/* 02226284 */ rbrew_write32(cpu->mem, _t50, cpu->r[5]);
|
|
/* 02226288 */ _t51 = cpu->r[1] + 0x00000040u;
|
|
/* 02226288 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 0222628C */ cpu->r[11] = 0x10050000u;
|
|
/* 02226290 */ cpu->f[9] = cpu->f[10] - cpu->f[31];
|
|
/* 02226294 */ _t52 = cpu->r[11] + 0xFFFFE458u;
|
|
/* 02226294 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 02226298 */ cpu->f[31] = cpu->f[9] * cpu->f[13];
|
|
/* 0222629C */ cpu->f[1] = cpu->f[31];
|
|
/* 022262A0 */ Gambit_fn_02C886F8(cpu);
|
|
/* 022262A4 */ cpu->f[30] = cpu->f[1];
|
|
/* 022262A8 */ cpu->f[1] = cpu->f[31];
|
|
/* 022262AC */ Gambit_fn_02C88F2C(cpu);
|
|
/* 022262B0 */ _t53 = cpu->r[1] + 0x00000038u;
|
|
/* 022262B0 */ rbrew_write_f32(cpu->mem, _t53, cpu->f[30]);
|
|
/* 022262B4 */ _t54 = cpu->r[1] + 0x00000038u;
|
|
/* 022262B4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t54);
|
|
/* 022262B8 */ _t55 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022262B8 */ rbrew_write_f32(cpu->mem, _t55, cpu->f[1]);
|
|
/* 022262BC */ _t56 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022262BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t56);
|
|
/* 022262C0 */ _t57 = cpu->r[30] + 0x000001B8u;
|
|
/* 022262C0 */ rbrew_write32(cpu->mem, _t57, cpu->r[10]);
|
|
/* 022262C4 */ _t58 = cpu->r[30] + 0x000001BCu;
|
|
/* 022262C4 */ rbrew_write32(cpu->mem, _t58, cpu->r[0]);
|
|
/* 022262C8 */ /* nop */
|
|
/* 022262CC */ _t59 = cpu->r[1] + 0x00000090u;
|
|
/* 022262CC */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t59);
|
|
/* 022262D0 */ _t60 = cpu->r[1] + 0x000000A0u;
|
|
/* 022262D0 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t60);
|
|
/* 022262D4 */ _t61 = cpu->r[1] + 0x00000088u;
|
|
/* 022262D4 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t61);
|
|
/* 022262D8 */ _t62 = cpu->r[1] + 0x00000098u;
|
|
/* 022262D8 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t62);
|
|
/* 022262DC */ _t63 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022262DC */ _t64 = _t63 & 0x00000001u;
|
|
/* 022262DC */ if (_t64) goto L_022262E0; // else: addr-0 trap, fall-through
|
|
L_022262E0: ; // 0x22262e0
|
|
/* 022262E0 */ _t65 = cpu->r[1] + 0x000000ACu;
|
|
/* 022262E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t65);
|
|
/* 022262E4 */ cpu->lr = cpu->r[0];
|
|
/* 022262E8 */ cpu->r[1] = cpu->r[1] + 0x000000A8u;
|
|
/* 022262EC */ return;
|
|
}
|
|
|
|
// fn_022262F0 @ 0x22262f0
|
|
void Gambit_fn_022262F0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _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;
|
|
|
|
L_022262F0: ; // 0x22262f0
|
|
/* 022262F0 */ cpu->r[0] = cpu->lr;
|
|
/* 022262F4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022262F4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022262F4 */ cpu->r[1] = _t0;
|
|
/* 022262F8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022262F8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022262FC */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 022262FC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02226300 */ cpu->r[31] = cpu->r[4];
|
|
/* 02226304 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02226304 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02226308 */ _t4 = cpu->r[31] + 0x00004710u;
|
|
/* 02226308 */ cpu->r[10] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0222630C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02226310 */ cpu->r[30] = cpu->r[3];
|
|
/* 02226314 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226314 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02226314 */ if (_t6) goto L_02226320; else goto L_02226318;
|
|
L_02226318: ; // 0x2226318
|
|
/* 02226318 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000001u);
|
|
/* 0222631C */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222631C */ _t8 = _t7 & 0x00000001u;
|
|
/* 0222631C */ if (_t8) goto L_02226320; else goto L_02226364;
|
|
L_02226320: ; // 0x2226320
|
|
/* 02226320 */ _t9 = cpu->r[31] + 0x00004710u;
|
|
/* 02226320 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02226324 */ _t10 = cpu->r[30] + 0x0000002Cu;
|
|
/* 02226324 */ rbrew_write32(cpu->mem, _t10, cpu->r[12]);
|
|
/* 02226328 */ _t11 = cpu->r[31] + 0x000046BCu;
|
|
/* 02226328 */ cpu->r[11] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0222632C */ _t12 = cpu->r[11] + 0x0000002Cu;
|
|
/* 0222632C */ cpu->r[10] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02226330 */ cpu->ctr = cpu->r[10];
|
|
/* 02226334 */ cpu->r[3] = cpu->r[31];
|
|
/* 02226338 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222633C */ _t13 = cpu->r[3] + 0x00000000u;
|
|
/* 0222633C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 02226340 */ _t14 = cpu->r[30] + 0x000001C4u;
|
|
/* 02226340 */ rbrew_write_f32(cpu->mem, _t14, cpu->f[13]);
|
|
/* 02226344 */ _t15 = cpu->r[3] + 0x00000004u;
|
|
/* 02226344 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 02226348 */ _t16 = cpu->r[30] + 0x000001C8u;
|
|
/* 02226348 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[13]);
|
|
/* 0222634C */ _t17 = cpu->r[3] + 0x00000008u;
|
|
/* 0222634C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 02226350 */ _t18 = cpu->r[30] + 0x000001CCu;
|
|
/* 02226350 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[0]);
|
|
/* 02226354 */ _t19 = cpu->r[31] + 0x000046E0u;
|
|
/* 02226354 */ cpu->r[0] = rbrew_read8(cpu->mem, _t19);
|
|
/* 02226358 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0222635C */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222635C */ _t21 = _t20 & 0x00000001u;
|
|
/* 0222635C */ if (_t21) goto L_022263BC; else goto L_02226360;
|
|
L_02226360: ; // 0x2226360
|
|
/* 02226360 */ goto L_022263A4;
|
|
L_02226364: ; // 0x2226364
|
|
/* 02226364 */ cpu->r[12] = 0x00000000u;
|
|
/* 02226368 */ _t22 = cpu->r[30] + 0x0000002Cu;
|
|
/* 02226368 */ rbrew_write32(cpu->mem, _t22, cpu->r[12]);
|
|
/* 0222636C */ _t23 = cpu->r[31] + 0x000046BCu;
|
|
/* 0222636C */ cpu->r[11] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02226370 */ _t24 = cpu->r[11] + 0x0000002Cu;
|
|
/* 02226370 */ cpu->r[10] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02226374 */ cpu->ctr = cpu->r[10];
|
|
/* 02226378 */ cpu->r[3] = cpu->r[31];
|
|
/* 0222637C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02226380 */ _t25 = cpu->r[3] + 0x00000000u;
|
|
/* 02226380 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 02226384 */ _t26 = cpu->r[30] + 0x000001C4u;
|
|
/* 02226384 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[13]);
|
|
/* 02226388 */ _t27 = cpu->r[3] + 0x00000004u;
|
|
/* 02226388 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 0222638C */ _t28 = cpu->r[30] + 0x000001C8u;
|
|
/* 0222638C */ rbrew_write_f32(cpu->mem, _t28, cpu->f[13]);
|
|
/* 02226390 */ _t29 = cpu->r[3] + 0x00000008u;
|
|
/* 02226390 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 02226394 */ _t30 = cpu->r[30] + 0x000001CCu;
|
|
/* 02226394 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[0]);
|
|
/* 02226398 */ _t31 = cpu->r[31] + 0x000046E0u;
|
|
/* 02226398 */ cpu->r[0] = rbrew_read8(cpu->mem, _t31);
|
|
/* 0222639C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022263A0 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022263A0 */ _t33 = _t32 & 0x00000001u;
|
|
/* 022263A0 */ if (_t33) goto L_022263BC; else goto L_022263A4;
|
|
L_022263A4: ; // 0x22263a4
|
|
/* 022263A4 */ _t34 = cpu->r[31] + 0x000046C0u;
|
|
/* 022263A4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t34);
|
|
/* 022263A8 */ _t35 = cpu->r[30] + 0x0000022Cu;
|
|
/* 022263A8 */ rbrew_write32(cpu->mem, _t35, cpu->r[10]);
|
|
/* 022263AC */ _t36 = cpu->r[31] + 0x000046E1u;
|
|
/* 022263AC */ cpu->r[12] = rbrew_read8(cpu->mem, _t36);
|
|
/* 022263B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022263B4 */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022263B4 */ _t38 = _t37 & 0x00000001u;
|
|
/* 022263B4 */ if (_t38) goto L_022263E8; else goto L_022263B8;
|
|
L_022263B8: ; // 0x22263b8
|
|
/* 022263B8 */ goto L_022263D0;
|
|
L_022263BC: ; // 0x22263bc
|
|
/* 022263BC */ cpu->r[10] = 0x000000B4u;
|
|
/* 022263C0 */ _t39 = cpu->r[30] + 0x0000022Cu;
|
|
/* 022263C0 */ rbrew_write32(cpu->mem, _t39, cpu->r[10]);
|
|
/* 022263C4 */ _t40 = cpu->r[31] + 0x000046E1u;
|
|
/* 022263C4 */ cpu->r[12] = rbrew_read8(cpu->mem, _t40);
|
|
/* 022263C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022263CC */ _t41 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022263CC */ _t42 = _t41 & 0x00000001u;
|
|
/* 022263CC */ if (_t42) goto L_022263E8; else goto L_022263D0;
|
|
L_022263D0: ; // 0x22263d0
|
|
/* 022263D0 */ _t43 = cpu->r[31] + 0x000046C4u;
|
|
/* 022263D0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t43);
|
|
/* 022263D4 */ _t44 = cpu->r[30] + 0x00000230u;
|
|
/* 022263D4 */ rbrew_write32(cpu->mem, _t44, cpu->r[11]);
|
|
/* 022263D8 */ _t45 = cpu->r[31] + 0x000046E2u;
|
|
/* 022263D8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t45);
|
|
/* 022263DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022263E0 */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022263E0 */ _t47 = _t46 & 0x00000001u;
|
|
/* 022263E0 */ if (_t47) goto L_02226430; else goto L_022263E4;
|
|
L_022263E4: ; // 0x22263e4
|
|
/* 022263E4 */ goto L_022263FC;
|
|
L_022263E8: ; // 0x22263e8
|
|
/* 022263E8 */ cpu->r[11] = 0x0000000Au;
|
|
/* 022263EC */ _t48 = cpu->r[30] + 0x00000230u;
|
|
/* 022263EC */ rbrew_write32(cpu->mem, _t48, cpu->r[11]);
|
|
/* 022263F0 */ _t49 = cpu->r[31] + 0x000046E2u;
|
|
/* 022263F0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t49);
|
|
/* 022263F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022263F8 */ _t50 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022263F8 */ _t51 = _t50 & 0x00000001u;
|
|
/* 022263F8 */ if (_t51) goto L_02226430; else goto L_022263FC;
|
|
L_022263FC: ; // 0x22263fc
|
|
/* 022263FC */ _t52 = cpu->r[31] + 0x000046C8u;
|
|
/* 022263FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t52);
|
|
/* 02226400 */ cpu->r[12] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x0000003Cu);
|
|
/* 02226404 */ _t53 = cpu->r[30] + 0x00000228u;
|
|
/* 02226404 */ rbrew_write32(cpu->mem, _t53, cpu->r[12]);
|
|
/* 02226408 */ _t54 = cpu->r[31] + 0x00004708u;
|
|
/* 02226408 */ cpu->r[0] = rbrew_read8(cpu->mem, _t54);
|
|
/* 0222640C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02226410 */ _t55 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226410 */ _t56 = _t55 & 0x00000001u;
|
|
/* 02226410 */ if (_t56) goto L_02226414; else goto L_02226444;
|
|
L_02226414: ; // 0x2226414
|
|
/* 02226414 */ cpu->r[11] = 0x10050000u;
|
|
/* 02226418 */ cpu->r[12] = 0x10050000u;
|
|
/* 0222641C */ _t57 = cpu->r[11] + 0xFFFFE450u;
|
|
/* 0222641C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 02226420 */ _t58 = cpu->r[12] + 0xFFFFE438u;
|
|
/* 02226420 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 02226424 */ cpu->f[0] = cpu->f[13] * cpu->f[0];
|
|
/* 02226428 */ _t59 = cpu->r[30] + 0x000000E8u;
|
|
/* 02226428 */ rbrew_write_f32(cpu->mem, _t59, cpu->f[0]);
|
|
/* 0222642C */ goto L_02226458;
|
|
L_02226430: ; // 0x2226430
|
|
/* 02226430 */ cpu->r[12] = 0x00000258u;
|
|
/* 02226434 */ _t60 = cpu->r[30] + 0x00000228u;
|
|
/* 02226434 */ rbrew_write32(cpu->mem, _t60, cpu->r[12]);
|
|
/* 02226438 */ _t61 = cpu->r[31] + 0x00004708u;
|
|
/* 02226438 */ cpu->r[0] = rbrew_read8(cpu->mem, _t61);
|
|
/* 0222643C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02226440 */ _t62 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226440 */ _t63 = _t62 & 0x00000001u;
|
|
/* 02226440 */ if (_t63) goto L_02226414; else goto L_02226444;
|
|
L_02226444: ; // 0x2226444
|
|
/* 02226444 */ _t64 = cpu->r[31] + 0x000046E8u;
|
|
/* 02226444 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 02226448 */ cpu->r[12] = 0x10050000u;
|
|
/* 0222644C */ _t65 = cpu->r[12] + 0xFFFFE438u;
|
|
/* 0222644C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t65);
|
|
/* 02226450 */ cpu->f[0] = cpu->f[13] * cpu->f[0];
|
|
/* 02226454 */ _t66 = cpu->r[30] + 0x000000E8u;
|
|
/* 02226454 */ rbrew_write_f32(cpu->mem, _t66, cpu->f[0]);
|
|
L_02226458: ; // 0x2226458
|
|
/* 02226458 */ _t67 = cpu->r[1] + 0x00000014u;
|
|
/* 02226458 */ cpu->r[0] = rbrew_read32(cpu->mem, _t67);
|
|
/* 0222645C */ _t68 = cpu->r[1] + 0x00000008u;
|
|
/* 0222645C */ cpu->r[30] = rbrew_read32(cpu->mem, _t68);
|
|
/* 02226460 */ cpu->lr = cpu->r[0];
|
|
/* 02226464 */ _t69 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02226464 */ cpu->r[31] = rbrew_read32(cpu->mem, _t69);
|
|
/* 02226468 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0222646C */ return;
|
|
}
|
|
|
|
// fn_022262F4 @ 0x22262f4
|
|
void Gambit_fn_022262F4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _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;
|
|
|
|
L_022262F4: ; // 0x22262f4
|
|
/* 022262F4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022262F4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022262F4 */ cpu->r[1] = _t0;
|
|
/* 022262F8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022262F8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022262FC */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 022262FC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02226300 */ cpu->r[31] = cpu->r[4];
|
|
/* 02226304 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02226304 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02226308 */ _t4 = cpu->r[31] + 0x00004710u;
|
|
/* 02226308 */ cpu->r[10] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0222630C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02226310 */ cpu->r[30] = cpu->r[3];
|
|
/* 02226314 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226314 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02226314 */ if (_t6) goto L_02226320; else goto L_02226318;
|
|
L_02226318: ; // 0x2226318
|
|
/* 02226318 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000001u);
|
|
/* 0222631C */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222631C */ _t8 = _t7 & 0x00000001u;
|
|
/* 0222631C */ if (_t8) goto L_02226320; else goto L_02226364;
|
|
L_02226320: ; // 0x2226320
|
|
/* 02226320 */ _t9 = cpu->r[31] + 0x00004710u;
|
|
/* 02226320 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02226324 */ _t10 = cpu->r[30] + 0x0000002Cu;
|
|
/* 02226324 */ rbrew_write32(cpu->mem, _t10, cpu->r[12]);
|
|
/* 02226328 */ _t11 = cpu->r[31] + 0x000046BCu;
|
|
/* 02226328 */ cpu->r[11] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0222632C */ _t12 = cpu->r[11] + 0x0000002Cu;
|
|
/* 0222632C */ cpu->r[10] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02226330 */ cpu->ctr = cpu->r[10];
|
|
/* 02226334 */ cpu->r[3] = cpu->r[31];
|
|
/* 02226338 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222633C */ _t13 = cpu->r[3] + 0x00000000u;
|
|
/* 0222633C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 02226340 */ _t14 = cpu->r[30] + 0x000001C4u;
|
|
/* 02226340 */ rbrew_write_f32(cpu->mem, _t14, cpu->f[13]);
|
|
/* 02226344 */ _t15 = cpu->r[3] + 0x00000004u;
|
|
/* 02226344 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 02226348 */ _t16 = cpu->r[30] + 0x000001C8u;
|
|
/* 02226348 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[13]);
|
|
/* 0222634C */ _t17 = cpu->r[3] + 0x00000008u;
|
|
/* 0222634C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 02226350 */ _t18 = cpu->r[30] + 0x000001CCu;
|
|
/* 02226350 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[0]);
|
|
/* 02226354 */ _t19 = cpu->r[31] + 0x000046E0u;
|
|
/* 02226354 */ cpu->r[0] = rbrew_read8(cpu->mem, _t19);
|
|
/* 02226358 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0222635C */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222635C */ _t21 = _t20 & 0x00000001u;
|
|
/* 0222635C */ if (_t21) goto L_022263BC; else goto L_02226360;
|
|
L_02226360: ; // 0x2226360
|
|
/* 02226360 */ goto L_022263A4;
|
|
L_02226364: ; // 0x2226364
|
|
/* 02226364 */ cpu->r[12] = 0x00000000u;
|
|
/* 02226368 */ _t22 = cpu->r[30] + 0x0000002Cu;
|
|
/* 02226368 */ rbrew_write32(cpu->mem, _t22, cpu->r[12]);
|
|
/* 0222636C */ _t23 = cpu->r[31] + 0x000046BCu;
|
|
/* 0222636C */ cpu->r[11] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02226370 */ _t24 = cpu->r[11] + 0x0000002Cu;
|
|
/* 02226370 */ cpu->r[10] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02226374 */ cpu->ctr = cpu->r[10];
|
|
/* 02226378 */ cpu->r[3] = cpu->r[31];
|
|
/* 0222637C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02226380 */ _t25 = cpu->r[3] + 0x00000000u;
|
|
/* 02226380 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 02226384 */ _t26 = cpu->r[30] + 0x000001C4u;
|
|
/* 02226384 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[13]);
|
|
/* 02226388 */ _t27 = cpu->r[3] + 0x00000004u;
|
|
/* 02226388 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 0222638C */ _t28 = cpu->r[30] + 0x000001C8u;
|
|
/* 0222638C */ rbrew_write_f32(cpu->mem, _t28, cpu->f[13]);
|
|
/* 02226390 */ _t29 = cpu->r[3] + 0x00000008u;
|
|
/* 02226390 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 02226394 */ _t30 = cpu->r[30] + 0x000001CCu;
|
|
/* 02226394 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[0]);
|
|
/* 02226398 */ _t31 = cpu->r[31] + 0x000046E0u;
|
|
/* 02226398 */ cpu->r[0] = rbrew_read8(cpu->mem, _t31);
|
|
/* 0222639C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022263A0 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022263A0 */ _t33 = _t32 & 0x00000001u;
|
|
/* 022263A0 */ if (_t33) goto L_022263BC; else goto L_022263A4;
|
|
L_022263A4: ; // 0x22263a4
|
|
/* 022263A4 */ _t34 = cpu->r[31] + 0x000046C0u;
|
|
/* 022263A4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t34);
|
|
/* 022263A8 */ _t35 = cpu->r[30] + 0x0000022Cu;
|
|
/* 022263A8 */ rbrew_write32(cpu->mem, _t35, cpu->r[10]);
|
|
/* 022263AC */ _t36 = cpu->r[31] + 0x000046E1u;
|
|
/* 022263AC */ cpu->r[12] = rbrew_read8(cpu->mem, _t36);
|
|
/* 022263B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022263B4 */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022263B4 */ _t38 = _t37 & 0x00000001u;
|
|
/* 022263B4 */ if (_t38) goto L_022263E8; else goto L_022263B8;
|
|
L_022263B8: ; // 0x22263b8
|
|
/* 022263B8 */ goto L_022263D0;
|
|
L_022263BC: ; // 0x22263bc
|
|
/* 022263BC */ cpu->r[10] = 0x000000B4u;
|
|
/* 022263C0 */ _t39 = cpu->r[30] + 0x0000022Cu;
|
|
/* 022263C0 */ rbrew_write32(cpu->mem, _t39, cpu->r[10]);
|
|
/* 022263C4 */ _t40 = cpu->r[31] + 0x000046E1u;
|
|
/* 022263C4 */ cpu->r[12] = rbrew_read8(cpu->mem, _t40);
|
|
/* 022263C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022263CC */ _t41 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022263CC */ _t42 = _t41 & 0x00000001u;
|
|
/* 022263CC */ if (_t42) goto L_022263E8; else goto L_022263D0;
|
|
L_022263D0: ; // 0x22263d0
|
|
/* 022263D0 */ _t43 = cpu->r[31] + 0x000046C4u;
|
|
/* 022263D0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t43);
|
|
/* 022263D4 */ _t44 = cpu->r[30] + 0x00000230u;
|
|
/* 022263D4 */ rbrew_write32(cpu->mem, _t44, cpu->r[11]);
|
|
/* 022263D8 */ _t45 = cpu->r[31] + 0x000046E2u;
|
|
/* 022263D8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t45);
|
|
/* 022263DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022263E0 */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022263E0 */ _t47 = _t46 & 0x00000001u;
|
|
/* 022263E0 */ if (_t47) goto L_02226430; else goto L_022263E4;
|
|
L_022263E4: ; // 0x22263e4
|
|
/* 022263E4 */ goto L_022263FC;
|
|
L_022263E8: ; // 0x22263e8
|
|
/* 022263E8 */ cpu->r[11] = 0x0000000Au;
|
|
/* 022263EC */ _t48 = cpu->r[30] + 0x00000230u;
|
|
/* 022263EC */ rbrew_write32(cpu->mem, _t48, cpu->r[11]);
|
|
/* 022263F0 */ _t49 = cpu->r[31] + 0x000046E2u;
|
|
/* 022263F0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t49);
|
|
/* 022263F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022263F8 */ _t50 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022263F8 */ _t51 = _t50 & 0x00000001u;
|
|
/* 022263F8 */ if (_t51) goto L_02226430; else goto L_022263FC;
|
|
L_022263FC: ; // 0x22263fc
|
|
/* 022263FC */ _t52 = cpu->r[31] + 0x000046C8u;
|
|
/* 022263FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t52);
|
|
/* 02226400 */ cpu->r[12] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x0000003Cu);
|
|
/* 02226404 */ _t53 = cpu->r[30] + 0x00000228u;
|
|
/* 02226404 */ rbrew_write32(cpu->mem, _t53, cpu->r[12]);
|
|
/* 02226408 */ _t54 = cpu->r[31] + 0x00004708u;
|
|
/* 02226408 */ cpu->r[0] = rbrew_read8(cpu->mem, _t54);
|
|
/* 0222640C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02226410 */ _t55 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226410 */ _t56 = _t55 & 0x00000001u;
|
|
/* 02226410 */ if (_t56) goto L_02226414; else goto L_02226444;
|
|
L_02226414: ; // 0x2226414
|
|
/* 02226414 */ cpu->r[11] = 0x10050000u;
|
|
/* 02226418 */ cpu->r[12] = 0x10050000u;
|
|
/* 0222641C */ _t57 = cpu->r[11] + 0xFFFFE450u;
|
|
/* 0222641C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 02226420 */ _t58 = cpu->r[12] + 0xFFFFE438u;
|
|
/* 02226420 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 02226424 */ cpu->f[0] = cpu->f[13] * cpu->f[0];
|
|
/* 02226428 */ _t59 = cpu->r[30] + 0x000000E8u;
|
|
/* 02226428 */ rbrew_write_f32(cpu->mem, _t59, cpu->f[0]);
|
|
/* 0222642C */ goto L_02226458;
|
|
L_02226430: ; // 0x2226430
|
|
/* 02226430 */ cpu->r[12] = 0x00000258u;
|
|
/* 02226434 */ _t60 = cpu->r[30] + 0x00000228u;
|
|
/* 02226434 */ rbrew_write32(cpu->mem, _t60, cpu->r[12]);
|
|
/* 02226438 */ _t61 = cpu->r[31] + 0x00004708u;
|
|
/* 02226438 */ cpu->r[0] = rbrew_read8(cpu->mem, _t61);
|
|
/* 0222643C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02226440 */ _t62 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226440 */ _t63 = _t62 & 0x00000001u;
|
|
/* 02226440 */ if (_t63) goto L_02226414; else goto L_02226444;
|
|
L_02226444: ; // 0x2226444
|
|
/* 02226444 */ _t64 = cpu->r[31] + 0x000046E8u;
|
|
/* 02226444 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 02226448 */ cpu->r[12] = 0x10050000u;
|
|
/* 0222644C */ _t65 = cpu->r[12] + 0xFFFFE438u;
|
|
/* 0222644C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t65);
|
|
/* 02226450 */ cpu->f[0] = cpu->f[13] * cpu->f[0];
|
|
/* 02226454 */ _t66 = cpu->r[30] + 0x000000E8u;
|
|
/* 02226454 */ rbrew_write_f32(cpu->mem, _t66, cpu->f[0]);
|
|
L_02226458: ; // 0x2226458
|
|
/* 02226458 */ _t67 = cpu->r[1] + 0x00000014u;
|
|
/* 02226458 */ cpu->r[0] = rbrew_read32(cpu->mem, _t67);
|
|
/* 0222645C */ _t68 = cpu->r[1] + 0x00000008u;
|
|
/* 0222645C */ cpu->r[30] = rbrew_read32(cpu->mem, _t68);
|
|
/* 02226460 */ cpu->lr = cpu->r[0];
|
|
/* 02226464 */ _t69 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02226464 */ cpu->r[31] = rbrew_read32(cpu->mem, _t69);
|
|
/* 02226468 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0222646C */ return;
|
|
}
|
|
|
|
// fn_02226470 @ 0x2226470
|
|
void Gambit_fn_02226470(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_02226470: ; // 0x2226470
|
|
/* 02226470 */ cpu->r[0] = cpu->lr;
|
|
/* 02226474 */ cpu->r[12] = 0x10050000u;
|
|
/* 02226478 */ cpu->r[11] = 0x10050000u;
|
|
/* 0222647C */ cpu->r[12] = cpu->r[12] + 0xFFFFE45Cu;
|
|
/* 02226480 */ cpu->r[11] = cpu->r[11] + 0xFFFFE3ACu;
|
|
/* 02226484 */ cpu->r[3] = 0x101E0000u;
|
|
/* 02226488 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 02226488 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 0222648C */ cpu->r[0] = 0x02220000u;
|
|
/* 02226490 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 02226490 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 02226490 */ cpu->r[1] = _t1;
|
|
/* 02226494 */ cpu->r[0] = cpu->r[0] + 0x000069ACu;
|
|
/* 02226498 */ _t2 = cpu->r[3] + 0x00002B9Cu;
|
|
/* 02226498 */ rbrew_write32(cpu->mem, _t2, cpu->r[12]);
|
|
/* 02226498 */ cpu->r[3] = _t2;
|
|
/* 0222649C */ cpu->r[12] = 0x10050000u;
|
|
/* 022264A0 */ _t3 = cpu->r[3] + 0x00000004u;
|
|
/* 022264A0 */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 022264A4 */ cpu->r[12] = cpu->r[12] + 0xFFFFE404u;
|
|
/* 022264A8 */ _t4 = cpu->r[3] + 0x00000010u;
|
|
/* 022264A8 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 022264AC */ _t5 = cpu->r[3] + 0x00000008u;
|
|
/* 022264AC */ rbrew_write32(cpu->mem, _t5, cpu->r[12]);
|
|
/* 022264B0 */ _t6 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022264B0 */ rbrew_write32(cpu->mem, _t6, cpu->r[11]);
|
|
/* 022264B4 */ Gambit_fn_027DB2F8(cpu);
|
|
/* 022264B8 */ cpu->r[3] = 0x101C0000u;
|
|
/* 022264BC */ cpu->r[3] = cpu->r[3] + 0x000054E0u;
|
|
/* 022264C0 */ Gambit_fn_02C83090(cpu);
|
|
/* 022264C4 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022264C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022264C8 */ cpu->lr = cpu->r[0];
|
|
/* 022264CC */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 022264D0 */ return;
|
|
}
|
|
|
|
// fn_02226490 @ 0x2226490
|
|
void Gambit_fn_02226490(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_02226490: ; // 0x2226490
|
|
/* 02226490 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 02226490 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02226490 */ cpu->r[1] = _t0;
|
|
/* 02226494 */ cpu->r[0] = cpu->r[0] + 0x000069ACu;
|
|
/* 02226498 */ _t1 = cpu->r[3] + 0x00002B9Cu;
|
|
/* 02226498 */ rbrew_write32(cpu->mem, _t1, cpu->r[12]);
|
|
/* 02226498 */ cpu->r[3] = _t1;
|
|
/* 0222649C */ cpu->r[12] = 0x10050000u;
|
|
/* 022264A0 */ _t2 = cpu->r[3] + 0x00000004u;
|
|
/* 022264A0 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 022264A4 */ cpu->r[12] = cpu->r[12] + 0xFFFFE404u;
|
|
/* 022264A8 */ _t3 = cpu->r[3] + 0x00000010u;
|
|
/* 022264A8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022264AC */ _t4 = cpu->r[3] + 0x00000008u;
|
|
/* 022264AC */ rbrew_write32(cpu->mem, _t4, cpu->r[12]);
|
|
/* 022264B0 */ _t5 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022264B0 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 022264B4 */ Gambit_fn_027DB2F8(cpu);
|
|
/* 022264B8 */ cpu->r[3] = 0x101C0000u;
|
|
/* 022264BC */ cpu->r[3] = cpu->r[3] + 0x000054E0u;
|
|
/* 022264C0 */ Gambit_fn_02C83090(cpu);
|
|
/* 022264C4 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022264C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022264C8 */ cpu->lr = cpu->r[0];
|
|
/* 022264CC */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 022264D0 */ return;
|
|
}
|
|
|
|
// fn_022264D4 @ 0x22264d4
|
|
void Gambit_fn_022264D4(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_022264D4: ; // 0x22264d4
|
|
/* 022264D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022264D8 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022264D8 */ _t1 = _t0 & 0x00000001u;
|
|
/* 022264D8 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022264D8 */ goto L_022264DC;
|
|
L_022264DC: ; // 0x22264dc
|
|
/* 022264DC */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022264DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022264E0 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022264E0 */ _t3 = _t2 & 0x00000001u;
|
|
/* 022264E0 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022264E0 */ goto L_022264E4;
|
|
L_022264E4: ; // 0x22264e4
|
|
/* 022264E4 */ goto L_02801BB0;
|
|
L_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t4 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t4, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t4;
|
|
/* 02801B38 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02801B48 */ _t7 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B50 */ if (_t9) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02801B60 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02801B64 */ cpu->lr = cpu->r[0];
|
|
/* 02801B68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801B6C */ return;
|
|
L_02801B70: ; // 0x2801b70
|
|
/* 02801B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02801B74 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02801B74 */ if (_t13) goto L_02801B9C; else goto L_02801B78;
|
|
L_02801B78: ; // 0x2801b78
|
|
/* 02801B78 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B7C */ Gambit_fn_02826B90(cpu);
|
|
/* 02801B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B84 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02801B84 */ if (_t15) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t16 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02801B8C */ _t17 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02801BA0 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
}
|
|
|
|
// fn_022264E8 @ 0x22264e8
|
|
void Gambit_fn_022264E8(CPUState* cpu) {
|
|
L_022264E8: ; // 0x22264e8
|
|
/* 022264E8 */ return;
|
|
}
|
|
|
|
// fn_022264EC @ 0x22264ec
|
|
void Gambit_fn_022264EC(CPUState* cpu) {
|
|
L_022264EC: ; // 0x22264ec
|
|
/* 022264EC */ return;
|
|
}
|
|
|
|
// fn_022264F0 @ 0x22264f0
|
|
void Gambit_fn_022264F0(CPUState* cpu) {
|
|
L_022264F0: ; // 0x22264f0
|
|
/* 022264F0 */ return;
|
|
}
|
|
|
|
// fn_022264F4 @ 0x22264f4
|
|
void Gambit_fn_022264F4(CPUState* cpu) {
|
|
L_022264F4: ; // 0x22264f4
|
|
/* 022264F4 */ return;
|
|
}
|
|
|
|
// fn_022264F8 @ 0x22264f8
|
|
void Gambit_fn_022264F8(CPUState* cpu) {
|
|
L_022264F8: ; // 0x22264f8
|
|
/* 022264F8 */ return;
|
|
}
|
|
|
|
// fn_022264FC @ 0x22264fc
|
|
void Gambit_fn_022264FC(CPUState* cpu) {
|
|
L_022264FC: ; // 0x22264fc
|
|
/* 022264FC */ return;
|
|
}
|
|
|
|
// fn_02226500 @ 0x2226500
|
|
void Gambit_fn_02226500(CPUState* cpu) {
|
|
L_02226500: ; // 0x2226500
|
|
/* 02226500 */ return;
|
|
}
|
|
|
|
// fn_02226504 @ 0x2226504
|
|
void Gambit_fn_02226504(CPUState* cpu) {
|
|
L_02226504: ; // 0x2226504
|
|
/* 02226504 */ return;
|
|
}
|
|
|
|
// fn_02226508 @ 0x2226508
|
|
void Gambit_fn_02226508(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02226508: ; // 0x2226508
|
|
/* 02226508 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02226508 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0222650C */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0222650C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02226510 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226510 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02226510 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 02226510 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02226510 */ goto L_02226514;
|
|
L_02226514: ; // 0x2226514
|
|
/* 02226514 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 02226514 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02226518 */ _t5 = cpu->r[12] + 0x0000004Cu;
|
|
/* 02226518 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0222651C */ cpu->ctr = cpu->r[0];
|
|
/* 02226520 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02226524 @ 0x2226524
|
|
void Gambit_fn_02226524(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02226524: ; // 0x2226524
|
|
/* 02226524 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02226524 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02226528 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Du, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02226528 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0222652C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222652C */ _t2 = _t1 & 0x00000001u;
|
|
/* 0222652C */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0222652C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0222652C */ goto L_02226530;
|
|
L_02226530: ; // 0x2226530
|
|
/* 02226530 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 02226530 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02226534 */ _t5 = cpu->r[12] + 0x0000005Cu;
|
|
/* 02226534 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02226538 */ cpu->ctr = cpu->r[0];
|
|
/* 0222653C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02226540 @ 0x2226540
|
|
void Gambit_fn_02226540(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02226540: ; // 0x2226540
|
|
/* 02226540 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02226540 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02226544 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Au, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02226544 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02226548 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226548 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02226548 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 02226548 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02226548 */ goto L_0222654C;
|
|
L_0222654C: ; // 0x222654c
|
|
/* 0222654C */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0222654C */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02226550 */ _t5 = cpu->r[11] + 0x00000074u;
|
|
/* 02226550 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02226554 */ cpu->ctr = cpu->r[0];
|
|
/* 02226558 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0222655C @ 0x222655c
|
|
void Gambit_fn_0222655C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0222655C: ; // 0x222655c
|
|
/* 0222655C */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0222655C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02226560 */ _t1 = cpu->r[12] + 0x0000002Cu;
|
|
/* 02226560 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02226564 */ cpu->ctr = cpu->r[0];
|
|
/* 02226568 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0222656C @ 0x222656c
|
|
void Gambit_fn_0222656C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0222656C: ; // 0x222656c
|
|
/* 0222656C */ cpu->r[0] = cpu->lr;
|
|
/* 02226570 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02226570 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02226570 */ cpu->r[1] = _t0;
|
|
/* 02226574 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02226574 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02226578 */ cpu->r[31] = cpu->r[3];
|
|
/* 0222657C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0222657C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02226580 */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02226580 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02226584 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 02226588 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226588 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02226588 */ if (_t5) goto L_0222658C; else goto L_022265A8;
|
|
L_0222658C: ; // 0x222658c
|
|
/* 0222658C */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 0222658C */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02226590 */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 02226590 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02226594 */ cpu->ctr = cpu->r[0];
|
|
/* 02226598 */ cpu->r[3] = cpu->r[31];
|
|
/* 0222659C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022265A0 */ cpu->r[0] = 0x00000002u;
|
|
/* 022265A4 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 022265A4 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_022265A8: ; // 0x22265a8
|
|
/* 022265A8 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 022265A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022265AC */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022265AC */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022265B0 */ cpu->lr = cpu->r[0];
|
|
/* 022265B4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022265B8 */ return;
|
|
}
|
|
|
|
// fn_02226570 @ 0x2226570
|
|
void Gambit_fn_02226570(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02226570: ; // 0x2226570
|
|
/* 02226570 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02226570 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02226570 */ cpu->r[1] = _t0;
|
|
/* 02226574 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02226574 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02226578 */ cpu->r[31] = cpu->r[3];
|
|
/* 0222657C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0222657C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02226580 */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02226580 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02226584 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 02226588 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226588 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02226588 */ if (_t5) goto L_0222658C; else goto L_022265A8;
|
|
L_0222658C: ; // 0x222658c
|
|
/* 0222658C */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 0222658C */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02226590 */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 02226590 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02226594 */ cpu->ctr = cpu->r[0];
|
|
/* 02226598 */ cpu->r[3] = cpu->r[31];
|
|
/* 0222659C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022265A0 */ cpu->r[0] = 0x00000002u;
|
|
/* 022265A4 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 022265A4 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_022265A8: ; // 0x22265a8
|
|
/* 022265A8 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 022265A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022265AC */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022265AC */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022265B0 */ cpu->lr = cpu->r[0];
|
|
/* 022265B4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022265B8 */ return;
|
|
}
|
|
|
|
// fn_022265C4 @ 0x22265c4
|
|
void Gambit_fn_022265C4(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_022265C4: ; // 0x22265c4
|
|
/* 022265C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022265C8 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022265C8 */ _t1 = _t0 & 0x00000001u;
|
|
/* 022265C8 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022265C8 */ goto L_022265CC;
|
|
L_022265CC: ; // 0x22265cc
|
|
/* 022265CC */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022265CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022265D0 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022265D0 */ _t3 = _t2 & 0x00000001u;
|
|
/* 022265D0 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022265D0 */ goto L_022265D4;
|
|
L_022265D4: ; // 0x22265d4
|
|
/* 022265D4 */ goto L_02801BB0;
|
|
L_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t4 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t4, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t4;
|
|
/* 02801B38 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02801B48 */ _t7 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B50 */ if (_t9) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02801B60 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02801B64 */ cpu->lr = cpu->r[0];
|
|
/* 02801B68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801B6C */ return;
|
|
L_02801B70: ; // 0x2801b70
|
|
/* 02801B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02801B74 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02801B74 */ if (_t13) goto L_02801B9C; else goto L_02801B78;
|
|
L_02801B78: ; // 0x2801b78
|
|
/* 02801B78 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B7C */ Gambit_fn_02826B90(cpu);
|
|
/* 02801B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B84 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02801B84 */ if (_t15) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t16 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02801B8C */ _t17 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02801BA0 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
}
|
|
|
|
// fn_022265D8 @ 0x22265d8
|
|
void Gambit_fn_022265D8(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_022265D8: ; // 0x22265d8
|
|
/* 022265D8 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 022265D8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022265DC */ _t1 = cpu->r[12] + 0x0000008Cu;
|
|
/* 022265DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022265E0 */ cpu->ctr = cpu->r[0];
|
|
/* 022265E4 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022265E8 @ 0x22265e8
|
|
void Gambit_fn_022265E8(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_022265E8: ; // 0x22265e8
|
|
/* 022265E8 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 022265E8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022265EC */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 022265EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022265F0 */ cpu->ctr = cpu->r[0];
|
|
/* 022265F4 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022265F8 @ 0x22265f8
|
|
void Gambit_fn_022265F8(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_022265F8: ; // 0x22265f8
|
|
/* 022265F8 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 022265F8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022265FC */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 022265FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02226600 */ cpu->ctr = cpu->r[0];
|
|
/* 02226604 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02226608 @ 0x2226608
|
|
void Gambit_fn_02226608(CPUState* cpu) {
|
|
L_02226608: ; // 0x2226608
|
|
/* 02226608 */ cpu->r[3] = 0x00000001u;
|
|
/* 0222660C */ return;
|
|
}
|
|
|
|
// fn_02226610 @ 0x2226610
|
|
void Gambit_fn_02226610(CPUState* cpu) {
|
|
L_02226610: ; // 0x2226610
|
|
/* 02226610 */ return;
|
|
}
|
|
|
|
// fn_02226614 @ 0x2226614
|
|
void Gambit_fn_02226614(CPUState* cpu) {
|
|
L_02226614: ; // 0x2226614
|
|
/* 02226614 */ return;
|
|
}
|
|
|
|
// fn_02226618 @ 0x2226618
|
|
void Gambit_fn_02226618(CPUState* cpu) {
|
|
L_02226618: ; // 0x2226618
|
|
/* 02226618 */ return;
|
|
}
|
|
|
|
// fn_0222661C @ 0x222661c
|
|
void Gambit_fn_0222661C(CPUState* cpu) {
|
|
L_0222661C: ; // 0x222661c
|
|
/* 0222661C */ return;
|
|
}
|
|
|
|
// fn_02226620 @ 0x2226620
|
|
void Gambit_fn_02226620(CPUState* cpu) {
|
|
L_02226620: ; // 0x2226620
|
|
/* 02226620 */ return;
|
|
}
|
|
|
|
// fn_02226624 @ 0x2226624
|
|
void Gambit_fn_02226624(CPUState* cpu) {
|
|
L_02226624: ; // 0x2226624
|
|
/* 02226624 */ return;
|
|
}
|
|
|
|
// fn_02226628 @ 0x2226628
|
|
void Gambit_fn_02226628(CPUState* cpu) {
|
|
L_02226628: ; // 0x2226628
|
|
/* 02226628 */ return;
|
|
}
|
|
|
|
// fn_0222662C @ 0x222662c
|
|
void Gambit_fn_0222662C(CPUState* cpu) {
|
|
L_0222662C: ; // 0x222662c
|
|
/* 0222662C */ cpu->r[3] = 0x00000001u;
|
|
/* 02226630 */ return;
|
|
}
|
|
|
|
// fn_02226634 @ 0x2226634
|
|
void Gambit_fn_02226634(CPUState* cpu) {
|
|
L_02226634: ; // 0x2226634
|
|
/* 02226634 */ cpu->r[3] = 0x00000000u;
|
|
/* 02226638 */ return;
|
|
}
|
|
|
|
// fn_0222663C @ 0x222663c
|
|
void Gambit_fn_0222663C(CPUState* cpu) {
|
|
L_0222663C: ; // 0x222663c
|
|
/* 0222663C */ cpu->r[3] = 0x00000001u;
|
|
/* 02226640 */ return;
|
|
}
|
|
|
|
// fn_02226644 @ 0x2226644
|
|
void Gambit_fn_02226644(CPUState* cpu) {
|
|
L_02226644: ; // 0x2226644
|
|
/* 02226644 */ cpu->r[3] = 0x00000000u;
|
|
/* 02226648 */ return;
|
|
}
|
|
|
|
// fn_0222664C @ 0x222664c
|
|
void Gambit_fn_0222664C(CPUState* cpu) {
|
|
L_0222664C: ; // 0x222664c
|
|
/* 0222664C */ cpu->r[3] = 0x00000000u;
|
|
/* 02226650 */ return;
|
|
}
|
|
|
|
// fn_02226654 @ 0x2226654
|
|
void Gambit_fn_02226654(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02226654: ; // 0x2226654
|
|
/* 02226654 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02226654 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02226658 */ _t1 = cpu->r[12] + 0x0000021Cu;
|
|
/* 02226658 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0222665C */ cpu->ctr = cpu->r[0];
|
|
/* 02226660 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02226664 @ 0x2226664
|
|
void Gambit_fn_02226664(CPUState* cpu) {
|
|
L_02226664: ; // 0x2226664
|
|
/* 02226664 */ cpu->r[3] = 0x00000000u;
|
|
/* 02226668 */ return;
|
|
}
|
|
|
|
// fn_0222666C @ 0x222666c
|
|
void Gambit_fn_0222666C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0222666C: ; // 0x222666c
|
|
/* 0222666C */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0222666C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02226670 */ _t1 = cpu->r[12] + 0x0000027Cu;
|
|
/* 02226670 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02226674 */ cpu->ctr = cpu->r[0];
|
|
/* 02226678 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0222667C @ 0x222667c
|
|
void Gambit_fn_0222667C(CPUState* cpu) {
|
|
L_0222667C: ; // 0x222667c
|
|
/* 0222667C */ cpu->r[3] = 0x00000002u;
|
|
/* 02226680 */ return;
|
|
}
|
|
|
|
// fn_02226684 @ 0x2226684
|
|
void Gambit_fn_02226684(CPUState* cpu) {
|
|
L_02226684: ; // 0x2226684
|
|
/* 02226684 */ cpu->r[3] = 0x00000000u;
|
|
/* 02226688 */ return;
|
|
}
|
|
|
|
// fn_0222668C @ 0x222668c
|
|
void Gambit_fn_0222668C(CPUState* cpu) {
|
|
L_0222668C: ; // 0x222668c
|
|
/* 0222668C */ cpu->r[3] = 0x00000001u;
|
|
/* 02226690 */ return;
|
|
}
|
|
|
|
// fn_02226694 @ 0x2226694
|
|
void Gambit_fn_02226694(CPUState* cpu) {
|
|
L_02226694: ; // 0x2226694
|
|
/* 02226694 */ cpu->r[3] = 0x00000000u;
|
|
/* 02226698 */ return;
|
|
}
|
|
|
|
// fn_0222669C @ 0x222669c
|
|
void Gambit_fn_0222669C(CPUState* cpu) {
|
|
L_0222669C: ; // 0x222669c
|
|
/* 0222669C */ cpu->r[3] = 0x00000000u;
|
|
/* 022266A0 */ return;
|
|
}
|
|
|
|
// fn_022266A4 @ 0x22266a4
|
|
void Gambit_fn_022266A4(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_022266A4: ; // 0x22266a4
|
|
/* 022266A4 */ _t0 = cpu->r[3] + 0x00000080u;
|
|
/* 022266A4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022266A8 */ return;
|
|
}
|
|
|
|
// fn_022266AC @ 0x22266ac
|
|
void Gambit_fn_022266AC(CPUState* cpu) {
|
|
L_022266AC: ; // 0x22266ac
|
|
/* 022266AC */ cpu->r[3] = cpu->r[3] + 0x00000094u;
|
|
/* 022266B0 */ return;
|
|
}
|
|
|
|
// fn_022266B4 @ 0x22266b4
|
|
void Gambit_fn_022266B4(CPUState* cpu) {
|
|
L_022266B4: ; // 0x22266b4
|
|
/* 022266B4 */ cpu->r[3] = cpu->r[3] + 0x000000C4u;
|
|
/* 022266B8 */ return;
|
|
}
|
|
|
|
// fn_022266BC @ 0x22266bc
|
|
void Gambit_fn_022266BC(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_022266BC: ; // 0x22266bc
|
|
/* 022266BC */ _t0 = cpu->r[3] + 0x000000E8u;
|
|
/* 022266BC */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 022266C0 */ return;
|
|
}
|
|
|
|
// fn_022266C4 @ 0x22266c4
|
|
void Gambit_fn_022266C4(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_022266C4: ; // 0x22266c4
|
|
/* 022266C4 */ cpu->r[12] = 0x10050000u;
|
|
/* 022266C8 */ _t0 = cpu->r[12] + 0xFFFFE470u;
|
|
/* 022266C8 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 022266CC */ return;
|
|
}
|
|
|
|
// fn_022266D0 @ 0x22266d0
|
|
void Gambit_fn_022266D0(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_022266D0: ; // 0x22266d0
|
|
/* 022266D0 */ cpu->r[12] = 0x10050000u;
|
|
/* 022266D4 */ _t0 = cpu->r[12] + 0xFFFFE470u;
|
|
/* 022266D4 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 022266D8 */ return;
|
|
}
|
|
|
|
// fn_022266DC @ 0x22266dc
|
|
void Gambit_fn_022266DC(CPUState* cpu) {
|
|
L_022266DC: ; // 0x22266dc
|
|
/* 022266DC */ cpu->r[3] = 0x00000001u;
|
|
/* 022266E0 */ return;
|
|
}
|
|
|
|
// fn_022266E4 @ 0x22266e4
|
|
void Gambit_fn_022266E4(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_022266E4: ; // 0x22266e4
|
|
/* 022266E4 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 022266E4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022266E8 */ _t1 = cpu->r[12] + 0x0000035Cu;
|
|
/* 022266E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022266EC */ cpu->ctr = cpu->r[0];
|
|
/* 022266F0 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022266F4 @ 0x22266f4
|
|
void Gambit_fn_022266F4(CPUState* cpu) {
|
|
L_022266F4: ; // 0x22266f4
|
|
/* 022266F4 */ cpu->r[3] = 0x00000001u;
|
|
/* 022266F8 */ return;
|
|
}
|
|
|
|
// fn_022266FC @ 0x22266fc
|
|
void Gambit_fn_022266FC(CPUState* cpu) {
|
|
L_022266FC: ; // 0x22266fc
|
|
/* 022266FC */ cpu->r[3] = 0x00000000u;
|
|
/* 02226700 */ return;
|
|
}
|
|
|
|
// fn_02226704 @ 0x2226704
|
|
void Gambit_fn_02226704(CPUState* cpu) {
|
|
L_02226704: ; // 0x2226704
|
|
/* 02226704 */ cpu->r[3] = 0x00000000u;
|
|
/* 02226708 */ return;
|
|
}
|
|
|
|
// fn_0222670C @ 0x222670c
|
|
void Gambit_fn_0222670C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_0222670C: ; // 0x222670c
|
|
/* 0222670C */ _t0 = cpu->r[3] + 0x00000114u;
|
|
/* 0222670C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02226710 */ cpu->r[0] = 0x00000001u;
|
|
/* 02226714 */ _t1 = rbrew_rlwinm(cpu->r[0], 0x00000016u, 0x00000008u, 0x00000009u);
|
|
/* 02226714 */ _t2 = cpu->r[12] & 0xFF3FFFFFu;
|
|
/* 02226714 */ cpu->r[12] = _t2 | _t1;
|
|
/* 02226718 */ _t3 = cpu->r[3] + 0x00000114u;
|
|
/* 02226718 */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 0222671C */ return;
|
|
}
|
|
|
|
// fn_02226720 @ 0x2226720
|
|
void Gambit_fn_02226720(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02226720: ; // 0x2226720
|
|
/* 02226720 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02226720 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02226724 */ _t1 = cpu->r[12] + 0x0000039Cu;
|
|
/* 02226724 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02226728 */ cpu->ctr = cpu->r[0];
|
|
/* 0222672C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02226730 @ 0x2226730
|
|
void Gambit_fn_02226730(CPUState* cpu) {
|
|
L_02226730: ; // 0x2226730
|
|
/* 02226730 */ return;
|
|
}
|
|
|
|
// fn_02226734 @ 0x2226734
|
|
void Gambit_fn_02226734(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02226734: ; // 0x2226734
|
|
/* 02226734 */ cpu->r[12] = 0x10050000u;
|
|
/* 02226738 */ _t0 = cpu->r[12] + 0xFFFFE444u;
|
|
/* 02226738 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 0222673C */ return;
|
|
}
|
|
|
|
// fn_02226740 @ 0x2226740
|
|
void Gambit_fn_02226740(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02226740: ; // 0x2226740
|
|
/* 02226740 */ _t0 = cpu->r[3] + 0x000000A0u;
|
|
/* 02226740 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 02226744 */ return;
|
|
}
|
|
|
|
// fn_02226748 @ 0x2226748
|
|
void Gambit_fn_02226748(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02226748: ; // 0x2226748
|
|
/* 02226748 */ _t0 = cpu->r[3] + 0x00000020u;
|
|
/* 02226748 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0222674C */ return;
|
|
}
|
|
|
|
// fn_02226750 @ 0x2226750
|
|
void Gambit_fn_02226750(CPUState* cpu) {
|
|
L_02226750: ; // 0x2226750
|
|
/* 02226750 */ cpu->r[3] = 0x00000000u;
|
|
/* 02226754 */ return;
|
|
}
|
|
|
|
// fn_02226758 @ 0x2226758
|
|
void Gambit_fn_02226758(CPUState* cpu) {
|
|
L_02226758: ; // 0x2226758
|
|
/* 02226758 */ cpu->r[3] = 0x00000000u;
|
|
/* 0222675C */ return;
|
|
}
|
|
|
|
// fn_02226760 @ 0x2226760
|
|
void Gambit_fn_02226760(CPUState* cpu) {
|
|
L_02226760: ; // 0x2226760
|
|
/* 02226760 */ cpu->r[3] = 0x00000001u;
|
|
/* 02226764 */ return;
|
|
}
|
|
|
|
// fn_02226768 @ 0x2226768
|
|
void Gambit_fn_02226768(CPUState* cpu) {
|
|
L_02226768: ; // 0x2226768
|
|
/* 02226768 */ cpu->r[3] = 0x00000000u;
|
|
/* 0222676C */ return;
|
|
}
|
|
|
|
// fn_02226770 @ 0x2226770
|
|
void Gambit_fn_02226770(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02226770: ; // 0x2226770
|
|
/* 02226770 */ _t0 = cpu->r[3] + 0x000000C0u;
|
|
/* 02226770 */ cpu->r[3] = rbrew_read8(cpu->mem, _t0);
|
|
/* 02226774 */ return;
|
|
}
|
|
|
|
// fn_02226778 @ 0x2226778
|
|
void Gambit_fn_02226778(CPUState* cpu) {
|
|
L_02226778: ; // 0x2226778
|
|
/* 02226778 */ return;
|
|
}
|
|
|
|
// fn_0222677C @ 0x222677c
|
|
void Gambit_fn_0222677C(CPUState* cpu) {
|
|
L_0222677C: ; // 0x222677c
|
|
/* 0222677C */ return;
|
|
}
|
|
|
|
// fn_02226780 @ 0x2226780
|
|
void Gambit_fn_02226780(CPUState* cpu) {
|
|
L_02226780: ; // 0x2226780
|
|
/* 02226780 */ return;
|
|
}
|
|
|
|
// fn_02226784 @ 0x2226784
|
|
void Gambit_fn_02226784(CPUState* cpu) {
|
|
L_02226784: ; // 0x2226784
|
|
/* 02226784 */ cpu->r[3] = 0x00000000u;
|
|
/* 02226788 */ return;
|
|
}
|
|
|
|
// fn_0222678C @ 0x222678c
|
|
void Gambit_fn_0222678C(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0222678C: ; // 0x222678c
|
|
/* 0222678C */ cpu->r[12] = 0x10050000u;
|
|
/* 02226790 */ _t0 = cpu->r[12] + 0xFFFFE444u;
|
|
/* 02226790 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 02226794 */ return;
|
|
}
|
|
|
|
// fn_02226798 @ 0x2226798
|
|
void Gambit_fn_02226798(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_02226798: ; // 0x2226798
|
|
/* 02226798 */ _t0 = cpu->r[3] + 0x00000114u;
|
|
/* 02226798 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0222679C */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000012u, 0x00000013u);
|
|
/* 0222679C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022267A0 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022267A0 */ _t2 = _t1 & 0x00000001u;
|
|
/* 022267A0 */ if (_t2) goto L_022267B0; else goto L_022267A4;
|
|
L_022267A4: ; // 0x22267a4
|
|
/* 022267A4 */ cpu->r[12] = 0x10050000u;
|
|
/* 022267A8 */ _t3 = cpu->r[12] + 0xFFFFE444u;
|
|
/* 022267A8 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 022267AC */ return;
|
|
L_022267B0: ; // 0x22267b0
|
|
/* 022267B0 */ cpu->r[12] = 0x10050000u;
|
|
/* 022267B4 */ _t4 = cpu->r[12] + 0xFFFFE43Cu;
|
|
/* 022267B4 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 022267B8 */ return;
|
|
}
|
|
|
|
// fn_022267BC @ 0x22267bc
|
|
void Gambit_fn_022267BC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_022267BC: ; // 0x22267bc
|
|
/* 022267BC */ goto L_0222E4C4;
|
|
L_0222E4C4: ; // 0x222e4c4
|
|
/* 0222E4C4 */ cpu->r[0] = cpu->lr;
|
|
/* 0222E4C8 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 0222E4C8 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 0222E4CC */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 0222E4CC */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 0222E4CC */ cpu->r[1] = _t1;
|
|
/* 0222E4D0 */ Gambit_fn_021F7000(cpu);
|
|
/* 0222E4D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0222E4D8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222E4D8 */ _t3 = _t2 & 0x00000001u;
|
|
/* 0222E4D8 */ if (_t3) goto L_0222E4F4; else goto L_0222E4DC;
|
|
L_0222E4DC: ; // 0x222e4dc
|
|
/* 0222E4DC */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222E4DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0222E4E0 */ cpu->r[12] = 0x101E0000u;
|
|
/* 0222E4E4 */ cpu->lr = cpu->r[0];
|
|
/* 0222E4E8 */ _t5 = cpu->r[12] + 0xFFFF9594u;
|
|
/* 0222E4E8 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 0222E4EC */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 0222E4F0 */ return;
|
|
L_0222E4F4: ; // 0x222e4f4
|
|
/* 0222E4F4 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222E4F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0222E4F8 */ cpu->r[12] = 0x101E0000u;
|
|
/* 0222E4FC */ cpu->lr = cpu->r[0];
|
|
/* 0222E500 */ _t7 = cpu->r[12] + 0xFFFF9590u;
|
|
/* 0222E500 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 0222E504 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 0222E508 */ return;
|
|
}
|
|
|
|
// fn_022267C0 @ 0x22267c0
|
|
void Gambit_fn_022267C0(CPUState* cpu) {
|
|
L_022267C0: ; // 0x22267c0
|
|
/* 022267C0 */ cpu->r[3] = 0x00000000u;
|
|
/* 022267C4 */ return;
|
|
}
|
|
|
|
// fn_022267C8 @ 0x22267c8
|
|
void Gambit_fn_022267C8(CPUState* cpu) {
|
|
L_022267C8: ; // 0x22267c8
|
|
/* 022267C8 */ cpu->r[3] = 0x00000000u;
|
|
/* 022267CC */ return;
|
|
}
|
|
|
|
// fn_022267D0 @ 0x22267d0
|
|
void Gambit_fn_022267D0(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_022267D0: ; // 0x22267d0
|
|
/* 022267D0 */ _t0 = cpu->r[3] + 0x00000114u;
|
|
/* 022267D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022267D4 */ cpu->r[0] = cpu->r[0] | 0x00020000u;
|
|
/* 022267D8 */ _t1 = cpu->r[3] + 0x00000114u;
|
|
/* 022267D8 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 022267DC */ return;
|
|
}
|
|
|
|
// fn_022267E0 @ 0x22267e0
|
|
void Gambit_fn_022267E0(CPUState* cpu) {
|
|
L_022267E0: ; // 0x22267e0
|
|
/* 022267E0 */ cpu->r[3] = cpu->r[3] + 0x000001ECu;
|
|
/* 022267E4 */ return;
|
|
}
|
|
|
|
// fn_022267E8 @ 0x22267e8
|
|
void Gambit_fn_022267E8(CPUState* cpu) {
|
|
L_022267E8: ; // 0x22267e8
|
|
/* 022267E8 */ cpu->r[3] = cpu->r[3] + 0x0000021Cu;
|
|
/* 022267EC */ return;
|
|
}
|
|
|
|
// fn_022267F0 @ 0x22267f0
|
|
void Gambit_fn_022267F0(CPUState* cpu) {
|
|
L_022267F0: ; // 0x22267f0
|
|
/* 022267F0 */ cpu->r[3] = 0x00000000u;
|
|
/* 022267F4 */ return;
|
|
}
|
|
|
|
// fn_022267F8 @ 0x22267f8
|
|
void Gambit_fn_022267F8(CPUState* cpu) {
|
|
L_022267F8: ; // 0x22267f8
|
|
/* 022267F8 */ cpu->r[3] = 0x00000000u;
|
|
/* 022267FC */ return;
|
|
}
|
|
|
|
// fn_02226800 @ 0x2226800
|
|
void Gambit_fn_02226800(CPUState* cpu) {
|
|
L_02226800: ; // 0x2226800
|
|
/* 02226800 */ return;
|
|
}
|
|
|
|
// fn_02226804 @ 0x2226804
|
|
void Gambit_fn_02226804(CPUState* cpu) {
|
|
L_02226804: ; // 0x2226804
|
|
/* 02226804 */ return;
|
|
}
|
|
|
|
// fn_02226808 @ 0x2226808
|
|
void Gambit_fn_02226808(CPUState* cpu) {
|
|
L_02226808: ; // 0x2226808
|
|
/* 02226808 */ cpu->r[3] = 0x10050000u;
|
|
/* 0222680C */ cpu->r[3] = cpu->r[3] + 0xFFFFE41Cu;
|
|
/* 02226810 */ return;
|
|
}
|
|
|
|
// fn_02226814 @ 0x2226814
|
|
void Gambit_fn_02226814(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _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_02226814: ; // 0x2226814
|
|
/* 02226814 */ cpu->r[10] = 0x101D0000u;
|
|
/* 02226818 */ _t0 = cpu->r[10] + 0xFFFFFE0Cu;
|
|
/* 02226818 */ cpu->r[10] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0222681C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02226820 */ cpu->r[10] = 0x101D0000u;
|
|
/* 02226824 */ cpu->r[10] = cpu->r[10] + 0xFFFFFF7Cu;
|
|
/* 02226828 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226828 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02226828 */ if (_t2) goto L_0222682C; else goto L_02226844;
|
|
L_0222682C: ; // 0x222682c
|
|
/* 0222682C */ cpu->r[0] = 0x10050000u;
|
|
/* 02226830 */ cpu->r[9] = 0x00000001u;
|
|
/* 02226834 */ cpu->r[11] = 0x101D0000u;
|
|
/* 02226838 */ cpu->r[0] = cpu->r[0] + 0xFFFFE3F4u;
|
|
/* 0222683C */ _t3 = cpu->r[11] + 0xFFFFFE0Cu;
|
|
/* 0222683C */ rbrew_write32(cpu->mem, _t3, cpu->r[9]);
|
|
/* 02226840 */ _t4 = cpu->r[10] + 0x00000000u;
|
|
/* 02226840 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
L_02226844: ; // 0x2226844
|
|
/* 02226844 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]);
|
|
/* 02226848 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226848 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02226848 */ if (_t6) goto L_0222684C; else goto L_02226854;
|
|
L_0222684C: ; // 0x222684c
|
|
/* 0222684C */ cpu->r[3] = 0x00000001u;
|
|
/* 02226850 */ return;
|
|
L_02226854: ; // 0x2226854
|
|
/* 02226854 */ cpu->r[9] = 0x101D0000u;
|
|
/* 02226858 */ _t7 = cpu->r[9] + 0xFFFFDA00u;
|
|
/* 02226858 */ cpu->r[9] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0222685C */ cpu->r[11] = 0x101D0000u;
|
|
/* 02226860 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02226864 */ cpu->r[11] = cpu->r[11] + 0xFFFFFBFCu;
|
|
/* 02226868 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226868 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02226868 */ if (_t9) goto L_0222686C; else goto L_02226884;
|
|
L_0222686C: ; // 0x222686c
|
|
/* 0222686C */ cpu->r[9] = 0x10050000u;
|
|
/* 02226870 */ cpu->r[0] = 0x00000001u;
|
|
/* 02226874 */ cpu->r[10] = 0x101D0000u;
|
|
/* 02226878 */ cpu->r[9] = cpu->r[9] + 0xFFFFE3E4u;
|
|
/* 0222687C */ _t10 = cpu->r[10] + 0xFFFFDA00u;
|
|
/* 0222687C */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 02226880 */ _t11 = cpu->r[11] + 0x00000000u;
|
|
/* 02226880 */ rbrew_write32(cpu->mem, _t11, cpu->r[9]);
|
|
L_02226884: ; // 0x2226884
|
|
/* 02226884 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[11]);
|
|
/* 02226888 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226888 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02226888 */ if (_t13) goto L_0222688C; else goto L_02226894;
|
|
L_0222688C: ; // 0x222688c
|
|
/* 0222688C */ cpu->r[0] = 0x00000001u;
|
|
/* 02226890 */ goto L_0222694C;
|
|
L_02226894: ; // 0x2226894
|
|
/* 02226894 */ cpu->r[11] = 0x101D0000u;
|
|
/* 02226898 */ _t14 = cpu->r[11] + 0xFFFFD9ECu;
|
|
/* 02226898 */ cpu->r[11] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0222689C */ cpu->r[9] = 0x101D0000u;
|
|
/* 022268A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 022268A4 */ cpu->r[9] = cpu->r[9] + 0xFFFFFB4Cu;
|
|
/* 022268A8 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022268A8 */ _t16 = _t15 & 0x00000001u;
|
|
/* 022268A8 */ if (_t16) goto L_022268AC; else goto L_022268C4;
|
|
L_022268AC: ; // 0x22268ac
|
|
/* 022268AC */ cpu->r[11] = 0x10050000u;
|
|
/* 022268B0 */ cpu->r[10] = 0x00000001u;
|
|
/* 022268B4 */ cpu->r[12] = 0x101D0000u;
|
|
/* 022268B8 */ cpu->r[11] = cpu->r[11] + 0xFFFFE3D4u;
|
|
/* 022268BC */ _t17 = cpu->r[12] + 0xFFFFD9ECu;
|
|
/* 022268BC */ rbrew_write32(cpu->mem, _t17, cpu->r[10]);
|
|
/* 022268C0 */ _t18 = cpu->r[9] + 0x00000000u;
|
|
/* 022268C0 */ rbrew_write32(cpu->mem, _t18, cpu->r[11]);
|
|
L_022268C4: ; // 0x22268c4
|
|
/* 022268C4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[9]);
|
|
/* 022268C8 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022268C8 */ _t20 = _t19 & 0x00000001u;
|
|
/* 022268C8 */ if (_t20) goto L_022268CC; else goto L_022268D4;
|
|
L_022268CC: ; // 0x22268cc
|
|
/* 022268CC */ cpu->r[0] = 0x00000001u;
|
|
/* 022268D0 */ goto L_02226948;
|
|
L_022268D4: ; // 0x22268d4
|
|
/* 022268D4 */ cpu->r[9] = 0x101D0000u;
|
|
/* 022268D8 */ _t21 = cpu->r[9] + 0xFFFFD4E8u;
|
|
/* 022268D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022268D8 */ cpu->r[9] = _t21;
|
|
/* 022268DC */ cpu->r[10] = 0x101D0000u;
|
|
/* 022268E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022268E4 */ cpu->r[10] = cpu->r[10] + 0xFFFFD4ECu;
|
|
/* 022268E8 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022268E8 */ _t23 = _t22 & 0x00000001u;
|
|
/* 022268E8 */ if (_t23) goto L_022268EC; else goto L_02226900;
|
|
L_022268EC: ; // 0x22268ec
|
|
/* 022268EC */ cpu->r[0] = 0x10050000u;
|
|
/* 022268F0 */ cpu->r[11] = 0x00000001u;
|
|
/* 022268F4 */ cpu->r[0] = cpu->r[0] + 0xFFFFE3C4u;
|
|
/* 022268F8 */ _t24 = cpu->r[9] + 0x00000000u;
|
|
/* 022268F8 */ rbrew_write32(cpu->mem, _t24, cpu->r[11]);
|
|
/* 022268FC */ _t25 = cpu->r[10] + 0x00000000u;
|
|
/* 022268FC */ rbrew_write32(cpu->mem, _t25, cpu->r[0]);
|
|
L_02226900: ; // 0x2226900
|
|
/* 02226900 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]);
|
|
/* 02226904 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226904 */ _t27 = _t26 & 0x00000001u;
|
|
/* 02226904 */ if (_t27) goto L_02226908; else goto L_02226910;
|
|
L_02226908: ; // 0x2226908
|
|
/* 02226908 */ cpu->r[0] = 0x00000001u;
|
|
/* 0222690C */ goto L_02226948;
|
|
L_02226910: ; // 0x2226910
|
|
/* 02226910 */ cpu->r[10] = 0x101D0000u;
|
|
/* 02226914 */ _t28 = cpu->r[10] + 0xFFFFD4E0u;
|
|
/* 02226914 */ cpu->r[9] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02226914 */ cpu->r[10] = _t28;
|
|
/* 02226918 */ cpu->r[11] = 0x101D0000u;
|
|
/* 0222691C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02226920 */ cpu->r[11] = cpu->r[11] + 0xFFFFD4E4u;
|
|
/* 02226924 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226924 */ _t30 = _t29 & 0x00000001u;
|
|
/* 02226924 */ if (_t30) goto L_02226928; else goto L_0222693C;
|
|
L_02226928: ; // 0x2226928
|
|
/* 02226928 */ cpu->r[9] = 0x10050000u;
|
|
/* 0222692C */ cpu->r[0] = 0x00000001u;
|
|
/* 02226930 */ cpu->r[9] = cpu->r[9] + 0xFFFFE39Cu;
|
|
/* 02226934 */ _t31 = cpu->r[10] + 0x00000000u;
|
|
/* 02226934 */ rbrew_write32(cpu->mem, _t31, cpu->r[0]);
|
|
/* 02226938 */ _t32 = cpu->r[11] + 0x00000000u;
|
|
/* 02226938 */ rbrew_write32(cpu->mem, _t32, cpu->r[9]);
|
|
L_0222693C: ; // 0x222693c
|
|
/* 0222693C */ cpu->r[0] = cpu->r[4] ^ cpu->r[11];
|
|
/* 02226940 */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 02226944 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
L_02226948: ; // 0x2226948
|
|
/* 02226948 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
L_0222694C: ; // 0x222694c
|
|
/* 0222694C */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 02226950 */ return;
|
|
}
|
|
|
|
// fn_02226954 @ 0x2226954
|
|
void Gambit_fn_02226954(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02226954: ; // 0x2226954
|
|
/* 02226954 */ cpu->r[0] = cpu->lr;
|
|
/* 02226958 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0222695C */ cpu->r[7] = 0x02220000u;
|
|
/* 02226960 */ cpu->r[6] = 0x02220000u;
|
|
/* 02226964 */ cpu->r[10] = 0x101C0000u;
|
|
/* 02226968 */ cpu->r[7] = cpu->r[7] + 0x000065BCu;
|
|
/* 0222696C */ cpu->r[6] = cpu->r[6] + 0x000065BCu;
|
|
/* 02226970 */ cpu->r[10] = cpu->r[10] + 0x000054F0u;
|
|
/* 02226974 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 02226974 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 02226978 */ cpu->r[0] = 0x101C0000u;
|
|
/* 0222697C */ _t1 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0222697C */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 0222697C */ cpu->r[1] = _t1;
|
|
/* 02226980 */ cpu->r[0] = cpu->r[0] + 0x000054ECu;
|
|
/* 02226984 */ _t2 = cpu->r[12] + 0xFFFF9034u;
|
|
/* 02226984 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02226988 */ cpu->r[8] = 0x00000000u;
|
|
/* 0222698C */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 0222698C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02226990 */ cpu->r[9] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02226994 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02226994 */ rbrew_write32(cpu->mem, _t4, cpu->r[12]);
|
|
/* 02226998 */ Gambit_fn_02791B10(cpu);
|
|
/* 0222699C */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 0222699C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022269A0 */ cpu->lr = cpu->r[0];
|
|
/* 022269A4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022269A8 */ return;
|
|
}
|
|
|
|
// fn_0222697C @ 0x222697c
|
|
void Gambit_fn_0222697C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_0222697C: ; // 0x222697c
|
|
/* 0222697C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0222697C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0222697C */ cpu->r[1] = _t0;
|
|
/* 02226980 */ cpu->r[0] = cpu->r[0] + 0x000054ECu;
|
|
/* 02226984 */ _t1 = cpu->r[12] + 0xFFFF9034u;
|
|
/* 02226984 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02226988 */ cpu->r[8] = 0x00000000u;
|
|
/* 0222698C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0222698C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02226990 */ cpu->r[9] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02226994 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02226994 */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 02226998 */ Gambit_fn_02791B10(cpu);
|
|
/* 0222699C */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0222699C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022269A0 */ cpu->lr = cpu->r[0];
|
|
/* 022269A4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022269A8 */ return;
|
|
}
|
|
|
|
// fn_022269AC @ 0x22269ac
|
|
void Gambit_fn_022269AC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21;
|
|
|
|
L_022269AC: ; // 0x22269ac
|
|
/* 022269AC */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 022269AC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022269AC */ cpu->r[1] = _t0;
|
|
/* 022269B0 */ cpu->r[0] = cpu->lr;
|
|
/* 022269B4 */ /* nop */
|
|
/* 022269B8 */ cpu->r[30] = cpu->r[5];
|
|
/* 022269BC */ cpu->r[26] = cpu->r[3];
|
|
/* 022269C0 */ cpu->r[27] = cpu->r[7];
|
|
/* 022269C4 */ cpu->r[3] = cpu->r[30];
|
|
/* 022269C8 */ cpu->r[31] = cpu->r[6];
|
|
/* 022269CC */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022269CC */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 022269D0 */ cpu->r[29] = cpu->r[4];
|
|
/* 022269D4 */ cpu->r[4] = cpu->r[27];
|
|
/* 022269D8 */ Gambit_fn_027DB318(cpu);
|
|
/* 022269DC */ cpu->r[28] = cpu->r[3] + cpu->r[31];
|
|
/* 022269DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 022269E0 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022269E0 */ _t3 = _t2 & 0x00000001u;
|
|
/* 022269E0 */ if (_t3) goto L_02226A74; else goto L_022269E4;
|
|
L_022269E4: ; // 0x22269e4
|
|
/* 022269E4 */ cpu->r[5] = cpu->r[28];
|
|
/* 022269E8 */ cpu->r[4] = cpu->r[29];
|
|
/* 022269EC */ cpu->r[3] = cpu->r[26];
|
|
/* 022269F0 */ Gambit_fn_02226954(cpu);
|
|
/* 022269F4 */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 022269F4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022269F8 */ _t5 = cpu->r[30] + 0x00000004u;
|
|
/* 022269F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022269FC */ cpu->r[30] = cpu->r[30] - cpu->r[29];
|
|
/* 02226A00 */ cpu->r[31] = cpu->r[0] - cpu->r[29];
|
|
/* 02226A04 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 02226A08 */ cpu->r[25] = 0x00000000u;
|
|
/* 02226A0C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226A0C */ _t7 = _t6 & 0x00000001u;
|
|
/* 02226A0C */ if (_t7) goto L_02226A74; else goto L_02226A10;
|
|
L_02226A10: ; // 0x2226a10
|
|
/* 02226A10 */ cpu->r[24] = 0x101C0000u;
|
|
L_02226A14: ; // 0x2226a14
|
|
/* 02226A14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02226A18 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226A18 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02226A18 */ if (_t9) goto L_02226A30; else goto L_02226A1C;
|
|
L_02226A1C: ; // 0x2226a1c
|
|
/* 02226A1C */ cpu->ctr = cpu->r[27];
|
|
/* 02226A20 */ cpu->r[3] = cpu->r[31];
|
|
/* 02226A24 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02226A28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02226A2C */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226A2C */ _t11 = _t10 & 0x00000001u;
|
|
/* 02226A2C */ if (_t11) goto L_02226A60; else goto L_02226A30;
|
|
L_02226A30: ; // 0x2226a30
|
|
/* 02226A30 */ _t12 = cpu->r[24] + 0x000054ECu;
|
|
/* 02226A30 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02226A34 */ cpu->r[6] = cpu->r[26] + cpu->r[0];
|
|
/* 02226A38 */ _t13 = cpu->r[6] + 0x00000104u;
|
|
/* 02226A38 */ cpu->r[12] = rbrew_read8(cpu->mem, _t13);
|
|
/* 02226A3C */ _t14 = cpu->r[26] + 0x00000030u;
|
|
/* 02226A3C */ cpu->r[10] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02226A40 */ cpu->r[9] = rbrew_rlwinm(cpu->r[12], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02226A44 */ _t15 = cpu->r[9] + cpu->r[10];
|
|
/* 02226A44 */ cpu->r[11] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02226A48 */ cpu->r[8] = rbrew_rlwinm(cpu->r[25], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02226A4C */ _t16 = cpu->r[11] + 0x00000004u;
|
|
/* 02226A4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02226A50 */ cpu->r[4] = cpu->r[31];
|
|
/* 02226A54 */ _t17 = cpu->r[8] + cpu->r[0];
|
|
/* 02226A54 */ cpu->r[3] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02226A58 */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 02226A5C */ Gambit_fn_022262F0(cpu);
|
|
L_02226A60: ; // 0x2226a60
|
|
/* 02226A60 */ cpu->r[12] = cpu->r[31] + cpu->r[29];
|
|
/* 02226A64 */ _t18 = cpu->r[12] + 0x00000004u;
|
|
/* 02226A64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02226A68 */ cpu->r[31] = cpu->r[0] - cpu->r[29];
|
|
/* 02226A6C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 02226A70 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226A70 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02226A70 */ if (_t20) goto L_02226A74; else goto L_02226A14;
|
|
L_02226A74: ; // 0x2226a74
|
|
/* 02226A74 */ cpu->r[3] = cpu->r[28];
|
|
/* 02226A78 */ /* nop */
|
|
/* 02226A7C */ _t21 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02226A7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02226A80 */ cpu->lr = cpu->r[0];
|
|
/* 02226A84 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 02226A88 */ return;
|
|
}
|
|
|
|
// fn_02226A8C @ 0x2226a8c
|
|
void Gambit_fn_02226A8C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _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_02226A8C: ; // 0x2226a8c
|
|
/* 02226A8C */ cpu->r[0] = cpu->lr;
|
|
/* 02226A90 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02226A90 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02226A90 */ cpu->r[1] = _t0;
|
|
/* 02226A94 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02226A94 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 02226A98 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02226A98 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 02226A9C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02226A9C */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 02226AA0 */ _t4 = cpu->r[1] + 0x00000010u;
|
|
/* 02226AA0 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 02226AA4 */ cpu->r[31] = cpu->r[3];
|
|
/* 02226AA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02226AA8 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02226AA8 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02226AAC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226AAC */ _t7 = _t6 & 0x00000001u;
|
|
/* 02226AAC */ if (_t7) goto L_02226AB0; else goto L_02226AC0;
|
|
L_02226AB0: ; // 0x2226ab0
|
|
/* 02226AB0 */ cpu->r[3] = 0x00000038u;
|
|
/* 02226AB4 */ Gambit_fn_02801A78(cpu);
|
|
/* 02226AB8 */ cpu->r[31] = cpu->r[3];
|
|
/* 02226AB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02226ABC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226ABC */ _t9 = _t8 & 0x00000001u;
|
|
/* 02226ABC */ if (_t9) goto L_02226BB8; else goto L_02226AC0;
|
|
L_02226AC0: ; // 0x2226ac0
|
|
/* 02226AC0 */ cpu->r[3] = cpu->r[31];
|
|
/* 02226AC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02226AC4 */ cpu->r[29] = 0x00000000u;
|
|
/* 02226AC8 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226AC8 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02226AC8 */ if (_t11) goto L_02226ACC; else goto L_02226ADC;
|
|
L_02226ACC: ; // 0x2226acc
|
|
/* 02226ACC */ cpu->r[3] = 0x00000008u;
|
|
/* 02226AD0 */ Gambit_fn_02801A78(cpu);
|
|
/* 02226AD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02226AD8 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226AD8 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02226AD8 */ if (_t13) goto L_02226AEC; else goto L_02226ADC;
|
|
L_02226ADC: ; // 0x2226adc
|
|
/* 02226ADC */ cpu->r[0] = 0x10050000u;
|
|
/* 02226AE0 */ _t14 = cpu->r[3] + 0x00000000u;
|
|
/* 02226AE0 */ rbrew_write32(cpu->mem, _t14, cpu->r[29]);
|
|
/* 02226AE4 */ cpu->r[0] = cpu->r[0] + 0xFFFFE95Cu;
|
|
/* 02226AE8 */ _t15 = cpu->r[3] + 0x00000004u;
|
|
/* 02226AE8 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
L_02226AEC: ; // 0x2226aec
|
|
/* 02226AEC */ _t16 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02226AEC */ rbrew_write32(cpu->mem, _t16, cpu->r[29]);
|
|
/* 02226AF0 */ cpu->r[0] = 0x10050000u;
|
|
/* 02226AF4 */ _t17 = cpu->r[31] + 0x00000018u;
|
|
/* 02226AF4 */ rbrew_write32(cpu->mem, _t17, cpu->r[29]);
|
|
/* 02226AF8 */ cpu->r[0] = cpu->r[0] + 0xFFFFE9D0u;
|
|
/* 02226AFC */ cpu->r[30] = cpu->r[31] + 0x00000020u;
|
|
/* 02226AFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02226B00 */ _t18 = cpu->r[31] + 0x00000004u;
|
|
/* 02226B00 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
/* 02226B04 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226B04 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02226B04 */ if (_t20) goto L_02226B08; else goto L_02226B18;
|
|
L_02226B08: ; // 0x2226b08
|
|
/* 02226B08 */ cpu->r[3] = 0x00000014u;
|
|
/* 02226B0C */ Gambit_fn_02801A78(cpu);
|
|
/* 02226B10 */ cpu->r[30] = cpu->r[3];
|
|
/* 02226B10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02226B14 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226B14 */ _t22 = _t21 & 0x00000001u;
|
|
/* 02226B14 */ if (_t22) goto L_02226B44; else goto L_02226B18;
|
|
L_02226B18: ; // 0x2226b18
|
|
/* 02226B18 */ cpu->r[3] = cpu->r[30];
|
|
/* 02226B18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02226B1C */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226B1C */ _t24 = _t23 & 0x00000001u;
|
|
/* 02226B1C */ if (_t24) goto L_02226B20; else goto L_02226B30;
|
|
L_02226B20: ; // 0x2226b20
|
|
/* 02226B20 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02226B24 */ Gambit_fn_02801A78(cpu);
|
|
/* 02226B28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02226B2C */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226B2C */ _t26 = _t25 & 0x00000001u;
|
|
/* 02226B2C */ if (_t26) goto L_02226B3C; else goto L_02226B30;
|
|
L_02226B30: ; // 0x2226b30
|
|
/* 02226B30 */ _t27 = cpu->r[3] + 0x00000004u;
|
|
/* 02226B30 */ rbrew_write32(cpu->mem, _t27, cpu->r[29]);
|
|
/* 02226B34 */ _t28 = cpu->r[3] + 0x00000000u;
|
|
/* 02226B34 */ rbrew_write32(cpu->mem, _t28, cpu->r[29]);
|
|
/* 02226B38 */ _t29 = cpu->r[3] + 0x00000008u;
|
|
/* 02226B38 */ rbrew_write32(cpu->mem, _t29, cpu->r[29]);
|
|
L_02226B3C: ; // 0x2226b3c
|
|
/* 02226B3C */ _t30 = cpu->r[30] + 0x00000010u;
|
|
/* 02226B3C */ rbrew_write32(cpu->mem, _t30, cpu->r[29]);
|
|
/* 02226B40 */ _t31 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02226B40 */ rbrew_write32(cpu->mem, _t31, cpu->r[29]);
|
|
L_02226B44: ; // 0x2226b44
|
|
/* 02226B44 */ cpu->r[3] = 0x00000020u;
|
|
/* 02226B48 */ Gambit_fn_02801A78(cpu);
|
|
/* 02226B4C */ cpu->r[30] = cpu->r[3];
|
|
/* 02226B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02226B50 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226B50 */ _t33 = _t32 & 0x00000001u;
|
|
/* 02226B50 */ if (_t33) goto L_02226BB0; else goto L_02226B54;
|
|
L_02226B54: ; // 0x2226b54
|
|
/* 02226B54 */ _t34 = cpu->r[30] + 0x00000000u;
|
|
/* 02226B54 */ rbrew_write8(cpu->mem, _t34, (uint8_t)cpu->r[29]);
|
|
/* 02226B58 */ cpu->r[28] = cpu->r[30] + 0x00000008u;
|
|
/* 02226B58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 02226B5C */ _t35 = cpu->r[30] + 0x00000004u;
|
|
/* 02226B5C */ rbrew_write32(cpu->mem, _t35, cpu->r[29]);
|
|
/* 02226B60 */ _t36 = cpu->r[30] + 0x00000001u;
|
|
/* 02226B60 */ rbrew_write8(cpu->mem, _t36, (uint8_t)cpu->r[29]);
|
|
/* 02226B64 */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226B64 */ _t38 = _t37 & 0x00000001u;
|
|
/* 02226B64 */ if (_t38) goto L_02226B68; else goto L_02226B78;
|
|
L_02226B68: ; // 0x2226b68
|
|
/* 02226B68 */ cpu->r[3] = 0x00000014u;
|
|
/* 02226B6C */ Gambit_fn_02801A78(cpu);
|
|
/* 02226B70 */ cpu->r[28] = cpu->r[3];
|
|
/* 02226B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 02226B74 */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226B74 */ _t40 = _t39 & 0x00000001u;
|
|
/* 02226B74 */ if (_t40) goto L_02226BA4; else goto L_02226B78;
|
|
L_02226B78: ; // 0x2226b78
|
|
/* 02226B78 */ cpu->r[3] = cpu->r[28];
|
|
/* 02226B78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02226B7C */ _t41 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226B7C */ _t42 = _t41 & 0x00000001u;
|
|
/* 02226B7C */ if (_t42) goto L_02226B80; else goto L_02226B90;
|
|
L_02226B80: ; // 0x2226b80
|
|
/* 02226B80 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02226B84 */ Gambit_fn_02801A78(cpu);
|
|
/* 02226B88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02226B8C */ _t43 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226B8C */ _t44 = _t43 & 0x00000001u;
|
|
/* 02226B8C */ if (_t44) goto L_02226B9C; else goto L_02226B90;
|
|
L_02226B90: ; // 0x2226b90
|
|
/* 02226B90 */ _t45 = cpu->r[3] + 0x00000004u;
|
|
/* 02226B90 */ rbrew_write32(cpu->mem, _t45, cpu->r[29]);
|
|
/* 02226B94 */ _t46 = cpu->r[3] + 0x00000000u;
|
|
/* 02226B94 */ rbrew_write32(cpu->mem, _t46, cpu->r[29]);
|
|
/* 02226B98 */ _t47 = cpu->r[3] + 0x00000008u;
|
|
/* 02226B98 */ rbrew_write32(cpu->mem, _t47, cpu->r[29]);
|
|
L_02226B9C: ; // 0x2226b9c
|
|
/* 02226B9C */ _t48 = cpu->r[28] + 0x00000010u;
|
|
/* 02226B9C */ rbrew_write32(cpu->mem, _t48, cpu->r[29]);
|
|
/* 02226BA0 */ _t49 = cpu->r[28] + 0x0000000Cu;
|
|
/* 02226BA0 */ rbrew_write32(cpu->mem, _t49, cpu->r[29]);
|
|
L_02226BA4: ; // 0x2226ba4
|
|
/* 02226BA4 */ _t50 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02226BA4 */ rbrew_write32(cpu->mem, _t50, cpu->r[29]);
|
|
/* 02226BA8 */ _t51 = cpu->r[31] + 0x00000034u;
|
|
/* 02226BA8 */ rbrew_write32(cpu->mem, _t51, cpu->r[30]);
|
|
/* 02226BAC */ goto L_02226BB8;
|
|
L_02226BB0: ; // 0x2226bb0
|
|
/* 02226BB0 */ cpu->r[30] = 0x00000000u;
|
|
/* 02226BB4 */ _t52 = cpu->r[31] + 0x00000034u;
|
|
/* 02226BB4 */ rbrew_write32(cpu->mem, _t52, cpu->r[30]);
|
|
L_02226BB8: ; // 0x2226bb8
|
|
/* 02226BB8 */ _t53 = cpu->r[1] + 0x00000008u;
|
|
/* 02226BB8 */ cpu->r[28] = rbrew_read32(cpu->mem, _t53);
|
|
/* 02226BBC */ _t54 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02226BBC */ cpu->r[29] = rbrew_read32(cpu->mem, _t54);
|
|
/* 02226BC0 */ _t55 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02226BC0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t55);
|
|
/* 02226BC4 */ cpu->r[3] = cpu->r[31];
|
|
/* 02226BC8 */ _t56 = cpu->r[1] + 0x00000010u;
|
|
/* 02226BC8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t56);
|
|
/* 02226BCC */ cpu->lr = cpu->r[0];
|
|
/* 02226BD0 */ _t57 = cpu->r[1] + 0x00000014u;
|
|
/* 02226BD0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t57);
|
|
/* 02226BD4 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02226BD8 */ return;
|
|
}
|
|
|
|
// fn_02226A90 @ 0x2226a90
|
|
void Gambit_fn_02226A90(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _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_02226A90: ; // 0x2226a90
|
|
/* 02226A90 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02226A90 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02226A90 */ cpu->r[1] = _t0;
|
|
/* 02226A94 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02226A94 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 02226A98 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02226A98 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 02226A9C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02226A9C */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 02226AA0 */ _t4 = cpu->r[1] + 0x00000010u;
|
|
/* 02226AA0 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 02226AA4 */ cpu->r[31] = cpu->r[3];
|
|
/* 02226AA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02226AA8 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02226AA8 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02226AAC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226AAC */ _t7 = _t6 & 0x00000001u;
|
|
/* 02226AAC */ if (_t7) goto L_02226AB0; else goto L_02226AC0;
|
|
L_02226AB0: ; // 0x2226ab0
|
|
/* 02226AB0 */ cpu->r[3] = 0x00000038u;
|
|
/* 02226AB4 */ Gambit_fn_02801A78(cpu);
|
|
/* 02226AB8 */ cpu->r[31] = cpu->r[3];
|
|
/* 02226AB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02226ABC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226ABC */ _t9 = _t8 & 0x00000001u;
|
|
/* 02226ABC */ if (_t9) goto L_02226BB8; else goto L_02226AC0;
|
|
L_02226AC0: ; // 0x2226ac0
|
|
/* 02226AC0 */ cpu->r[3] = cpu->r[31];
|
|
/* 02226AC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02226AC4 */ cpu->r[29] = 0x00000000u;
|
|
/* 02226AC8 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226AC8 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02226AC8 */ if (_t11) goto L_02226ACC; else goto L_02226ADC;
|
|
L_02226ACC: ; // 0x2226acc
|
|
/* 02226ACC */ cpu->r[3] = 0x00000008u;
|
|
/* 02226AD0 */ Gambit_fn_02801A78(cpu);
|
|
/* 02226AD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02226AD8 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226AD8 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02226AD8 */ if (_t13) goto L_02226AEC; else goto L_02226ADC;
|
|
L_02226ADC: ; // 0x2226adc
|
|
/* 02226ADC */ cpu->r[0] = 0x10050000u;
|
|
/* 02226AE0 */ _t14 = cpu->r[3] + 0x00000000u;
|
|
/* 02226AE0 */ rbrew_write32(cpu->mem, _t14, cpu->r[29]);
|
|
/* 02226AE4 */ cpu->r[0] = cpu->r[0] + 0xFFFFE95Cu;
|
|
/* 02226AE8 */ _t15 = cpu->r[3] + 0x00000004u;
|
|
/* 02226AE8 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
L_02226AEC: ; // 0x2226aec
|
|
/* 02226AEC */ _t16 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02226AEC */ rbrew_write32(cpu->mem, _t16, cpu->r[29]);
|
|
/* 02226AF0 */ cpu->r[0] = 0x10050000u;
|
|
/* 02226AF4 */ _t17 = cpu->r[31] + 0x00000018u;
|
|
/* 02226AF4 */ rbrew_write32(cpu->mem, _t17, cpu->r[29]);
|
|
/* 02226AF8 */ cpu->r[0] = cpu->r[0] + 0xFFFFE9D0u;
|
|
/* 02226AFC */ cpu->r[30] = cpu->r[31] + 0x00000020u;
|
|
/* 02226AFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02226B00 */ _t18 = cpu->r[31] + 0x00000004u;
|
|
/* 02226B00 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
/* 02226B04 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226B04 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02226B04 */ if (_t20) goto L_02226B08; else goto L_02226B18;
|
|
L_02226B08: ; // 0x2226b08
|
|
/* 02226B08 */ cpu->r[3] = 0x00000014u;
|
|
/* 02226B0C */ Gambit_fn_02801A78(cpu);
|
|
/* 02226B10 */ cpu->r[30] = cpu->r[3];
|
|
/* 02226B10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02226B14 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226B14 */ _t22 = _t21 & 0x00000001u;
|
|
/* 02226B14 */ if (_t22) goto L_02226B44; else goto L_02226B18;
|
|
L_02226B18: ; // 0x2226b18
|
|
/* 02226B18 */ cpu->r[3] = cpu->r[30];
|
|
/* 02226B18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02226B1C */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226B1C */ _t24 = _t23 & 0x00000001u;
|
|
/* 02226B1C */ if (_t24) goto L_02226B20; else goto L_02226B30;
|
|
L_02226B20: ; // 0x2226b20
|
|
/* 02226B20 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02226B24 */ Gambit_fn_02801A78(cpu);
|
|
/* 02226B28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02226B2C */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226B2C */ _t26 = _t25 & 0x00000001u;
|
|
/* 02226B2C */ if (_t26) goto L_02226B3C; else goto L_02226B30;
|
|
L_02226B30: ; // 0x2226b30
|
|
/* 02226B30 */ _t27 = cpu->r[3] + 0x00000004u;
|
|
/* 02226B30 */ rbrew_write32(cpu->mem, _t27, cpu->r[29]);
|
|
/* 02226B34 */ _t28 = cpu->r[3] + 0x00000000u;
|
|
/* 02226B34 */ rbrew_write32(cpu->mem, _t28, cpu->r[29]);
|
|
/* 02226B38 */ _t29 = cpu->r[3] + 0x00000008u;
|
|
/* 02226B38 */ rbrew_write32(cpu->mem, _t29, cpu->r[29]);
|
|
L_02226B3C: ; // 0x2226b3c
|
|
/* 02226B3C */ _t30 = cpu->r[30] + 0x00000010u;
|
|
/* 02226B3C */ rbrew_write32(cpu->mem, _t30, cpu->r[29]);
|
|
/* 02226B40 */ _t31 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02226B40 */ rbrew_write32(cpu->mem, _t31, cpu->r[29]);
|
|
L_02226B44: ; // 0x2226b44
|
|
/* 02226B44 */ cpu->r[3] = 0x00000020u;
|
|
/* 02226B48 */ Gambit_fn_02801A78(cpu);
|
|
/* 02226B4C */ cpu->r[30] = cpu->r[3];
|
|
/* 02226B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02226B50 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226B50 */ _t33 = _t32 & 0x00000001u;
|
|
/* 02226B50 */ if (_t33) goto L_02226BB0; else goto L_02226B54;
|
|
L_02226B54: ; // 0x2226b54
|
|
/* 02226B54 */ _t34 = cpu->r[30] + 0x00000000u;
|
|
/* 02226B54 */ rbrew_write8(cpu->mem, _t34, (uint8_t)cpu->r[29]);
|
|
/* 02226B58 */ cpu->r[28] = cpu->r[30] + 0x00000008u;
|
|
/* 02226B58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 02226B5C */ _t35 = cpu->r[30] + 0x00000004u;
|
|
/* 02226B5C */ rbrew_write32(cpu->mem, _t35, cpu->r[29]);
|
|
/* 02226B60 */ _t36 = cpu->r[30] + 0x00000001u;
|
|
/* 02226B60 */ rbrew_write8(cpu->mem, _t36, (uint8_t)cpu->r[29]);
|
|
/* 02226B64 */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226B64 */ _t38 = _t37 & 0x00000001u;
|
|
/* 02226B64 */ if (_t38) goto L_02226B68; else goto L_02226B78;
|
|
L_02226B68: ; // 0x2226b68
|
|
/* 02226B68 */ cpu->r[3] = 0x00000014u;
|
|
/* 02226B6C */ Gambit_fn_02801A78(cpu);
|
|
/* 02226B70 */ cpu->r[28] = cpu->r[3];
|
|
/* 02226B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 02226B74 */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226B74 */ _t40 = _t39 & 0x00000001u;
|
|
/* 02226B74 */ if (_t40) goto L_02226BA4; else goto L_02226B78;
|
|
L_02226B78: ; // 0x2226b78
|
|
/* 02226B78 */ cpu->r[3] = cpu->r[28];
|
|
/* 02226B78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02226B7C */ _t41 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226B7C */ _t42 = _t41 & 0x00000001u;
|
|
/* 02226B7C */ if (_t42) goto L_02226B80; else goto L_02226B90;
|
|
L_02226B80: ; // 0x2226b80
|
|
/* 02226B80 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02226B84 */ Gambit_fn_02801A78(cpu);
|
|
/* 02226B88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02226B8C */ _t43 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226B8C */ _t44 = _t43 & 0x00000001u;
|
|
/* 02226B8C */ if (_t44) goto L_02226B9C; else goto L_02226B90;
|
|
L_02226B90: ; // 0x2226b90
|
|
/* 02226B90 */ _t45 = cpu->r[3] + 0x00000004u;
|
|
/* 02226B90 */ rbrew_write32(cpu->mem, _t45, cpu->r[29]);
|
|
/* 02226B94 */ _t46 = cpu->r[3] + 0x00000000u;
|
|
/* 02226B94 */ rbrew_write32(cpu->mem, _t46, cpu->r[29]);
|
|
/* 02226B98 */ _t47 = cpu->r[3] + 0x00000008u;
|
|
/* 02226B98 */ rbrew_write32(cpu->mem, _t47, cpu->r[29]);
|
|
L_02226B9C: ; // 0x2226b9c
|
|
/* 02226B9C */ _t48 = cpu->r[28] + 0x00000010u;
|
|
/* 02226B9C */ rbrew_write32(cpu->mem, _t48, cpu->r[29]);
|
|
/* 02226BA0 */ _t49 = cpu->r[28] + 0x0000000Cu;
|
|
/* 02226BA0 */ rbrew_write32(cpu->mem, _t49, cpu->r[29]);
|
|
L_02226BA4: ; // 0x2226ba4
|
|
/* 02226BA4 */ _t50 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02226BA4 */ rbrew_write32(cpu->mem, _t50, cpu->r[29]);
|
|
/* 02226BA8 */ _t51 = cpu->r[31] + 0x00000034u;
|
|
/* 02226BA8 */ rbrew_write32(cpu->mem, _t51, cpu->r[30]);
|
|
/* 02226BAC */ goto L_02226BB8;
|
|
L_02226BB0: ; // 0x2226bb0
|
|
/* 02226BB0 */ cpu->r[30] = 0x00000000u;
|
|
/* 02226BB4 */ _t52 = cpu->r[31] + 0x00000034u;
|
|
/* 02226BB4 */ rbrew_write32(cpu->mem, _t52, cpu->r[30]);
|
|
L_02226BB8: ; // 0x2226bb8
|
|
/* 02226BB8 */ _t53 = cpu->r[1] + 0x00000008u;
|
|
/* 02226BB8 */ cpu->r[28] = rbrew_read32(cpu->mem, _t53);
|
|
/* 02226BBC */ _t54 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02226BBC */ cpu->r[29] = rbrew_read32(cpu->mem, _t54);
|
|
/* 02226BC0 */ _t55 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02226BC0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t55);
|
|
/* 02226BC4 */ cpu->r[3] = cpu->r[31];
|
|
/* 02226BC8 */ _t56 = cpu->r[1] + 0x00000010u;
|
|
/* 02226BC8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t56);
|
|
/* 02226BCC */ cpu->lr = cpu->r[0];
|
|
/* 02226BD0 */ _t57 = cpu->r[1] + 0x00000014u;
|
|
/* 02226BD0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t57);
|
|
/* 02226BD4 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02226BD8 */ return;
|
|
}
|
|
|
|
// fn_02226BDC @ 0x2226bdc
|
|
void Gambit_fn_02226BDC(CPUState* 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_02226BDC: ; // 0x2226bdc
|
|
/* 02226BDC */ cpu->r[0] = cpu->lr;
|
|
/* 02226BE0 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02226BE0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02226BE0 */ cpu->r[1] = _t0;
|
|
/* 02226BE4 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 02226BE4 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02226BE8 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02226BE8 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 02226BEC */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02226BEC */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 02226BF0 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 02226BF0 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 02226BF4 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02226BF4 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02226BF8 */ cpu->r[29] = 0x101C0000u;
|
|
/* 02226BFC */ cpu->r[30] = cpu->r[3];
|
|
/* 02226C00 */ _t6 = cpu->r[29] + 0x000054F4u;
|
|
/* 02226C00 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02226C00 */ cpu->r[29] = _t6;
|
|
/* 02226C04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02226C08 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226C08 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02226C08 */ if (_t8) goto L_02226C0C; else goto L_02226C5C;
|
|
L_02226C0C: ; // 0x2226c0c
|
|
/* 02226C0C */ cpu->r[4] = cpu->r[30];
|
|
/* 02226C10 */ cpu->r[3] = 0x00000038u;
|
|
/* 02226C14 */ cpu->r[5] = 0x00000004u;
|
|
/* 02226C18 */ Gambit_fn_02801ADC(cpu);
|
|
/* 02226C1C */ cpu->r[31] = cpu->r[3];
|
|
/* 02226C20 */ cpu->r[28] = cpu->r[31] + 0x00000008u;
|
|
/* 02226C20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 02226C24 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226C24 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02226C24 */ if (_t10) goto L_02226C44; else goto L_02226C28;
|
|
L_02226C28: ; // 0x2226c28
|
|
/* 02226C28 */ cpu->r[5] = 0x00000003u;
|
|
/* 02226C2C */ cpu->r[4] = cpu->r[30];
|
|
/* 02226C30 */ cpu->r[3] = cpu->r[28];
|
|
/* 02226C34 */ Gambit_fn_02821D88(cpu);
|
|
/* 02226C38 */ cpu->r[0] = 0x10050000u;
|
|
/* 02226C3C */ cpu->r[0] = cpu->r[0] + 0xFFFFE9C0u;
|
|
/* 02226C40 */ _t11 = cpu->r[28] + 0x0000000Cu;
|
|
/* 02226C40 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_02226C44: ; // 0x2226c44
|
|
/* 02226C44 */ cpu->r[12] = 0x101C0000u;
|
|
/* 02226C48 */ cpu->r[3] = cpu->r[31];
|
|
/* 02226C48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02226C4C */ _t12 = cpu->r[12] + 0x000054F8u;
|
|
/* 02226C4C */ rbrew_write32(cpu->mem, _t12, cpu->r[28]);
|
|
/* 02226C50 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226C50 */ _t14 = _t13 & 0x00000001u;
|
|
/* 02226C50 */ if (_t14) goto L_02226C58; else goto L_02226C54;
|
|
L_02226C54: ; // 0x2226c54
|
|
/* 02226C54 */ Gambit_fn_02226A8C(cpu);
|
|
L_02226C58: ; // 0x2226c58
|
|
/* 02226C58 */ _t15 = cpu->r[29] + 0x00000000u;
|
|
/* 02226C58 */ rbrew_write32(cpu->mem, _t15, cpu->r[3]);
|
|
L_02226C5C: ; // 0x2226c5c
|
|
/* 02226C5C */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 02226C5C */ cpu->r[28] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02226C60 */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02226C60 */ cpu->r[29] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02226C64 */ _t18 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02226C64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02226C68 */ _t19 = cpu->r[1] + 0x00000010u;
|
|
/* 02226C68 */ cpu->r[30] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02226C6C */ cpu->lr = cpu->r[0];
|
|
/* 02226C70 */ _t20 = cpu->r[1] + 0x00000014u;
|
|
/* 02226C70 */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02226C74 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02226C78 */ return;
|
|
}
|
|
|
|
// fn_02226BE0 @ 0x2226be0
|
|
void Gambit_fn_02226BE0(CPUState* 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_02226BE0: ; // 0x2226be0
|
|
/* 02226BE0 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02226BE0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02226BE0 */ cpu->r[1] = _t0;
|
|
/* 02226BE4 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 02226BE4 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02226BE8 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02226BE8 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 02226BEC */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02226BEC */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 02226BF0 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 02226BF0 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 02226BF4 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02226BF4 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02226BF8 */ cpu->r[29] = 0x101C0000u;
|
|
/* 02226BFC */ cpu->r[30] = cpu->r[3];
|
|
/* 02226C00 */ _t6 = cpu->r[29] + 0x000054F4u;
|
|
/* 02226C00 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02226C00 */ cpu->r[29] = _t6;
|
|
/* 02226C04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02226C08 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226C08 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02226C08 */ if (_t8) goto L_02226C0C; else goto L_02226C5C;
|
|
L_02226C0C: ; // 0x2226c0c
|
|
/* 02226C0C */ cpu->r[4] = cpu->r[30];
|
|
/* 02226C10 */ cpu->r[3] = 0x00000038u;
|
|
/* 02226C14 */ cpu->r[5] = 0x00000004u;
|
|
/* 02226C18 */ Gambit_fn_02801ADC(cpu);
|
|
/* 02226C1C */ cpu->r[31] = cpu->r[3];
|
|
/* 02226C20 */ cpu->r[28] = cpu->r[31] + 0x00000008u;
|
|
/* 02226C20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 02226C24 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226C24 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02226C24 */ if (_t10) goto L_02226C44; else goto L_02226C28;
|
|
L_02226C28: ; // 0x2226c28
|
|
/* 02226C28 */ cpu->r[5] = 0x00000003u;
|
|
/* 02226C2C */ cpu->r[4] = cpu->r[30];
|
|
/* 02226C30 */ cpu->r[3] = cpu->r[28];
|
|
/* 02226C34 */ Gambit_fn_02821D88(cpu);
|
|
/* 02226C38 */ cpu->r[0] = 0x10050000u;
|
|
/* 02226C3C */ cpu->r[0] = cpu->r[0] + 0xFFFFE9C0u;
|
|
/* 02226C40 */ _t11 = cpu->r[28] + 0x0000000Cu;
|
|
/* 02226C40 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_02226C44: ; // 0x2226c44
|
|
/* 02226C44 */ cpu->r[12] = 0x101C0000u;
|
|
/* 02226C48 */ cpu->r[3] = cpu->r[31];
|
|
/* 02226C48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02226C4C */ _t12 = cpu->r[12] + 0x000054F8u;
|
|
/* 02226C4C */ rbrew_write32(cpu->mem, _t12, cpu->r[28]);
|
|
/* 02226C50 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226C50 */ _t14 = _t13 & 0x00000001u;
|
|
/* 02226C50 */ if (_t14) goto L_02226C58; else goto L_02226C54;
|
|
L_02226C54: ; // 0x2226c54
|
|
/* 02226C54 */ Gambit_fn_02226A8C(cpu);
|
|
L_02226C58: ; // 0x2226c58
|
|
/* 02226C58 */ _t15 = cpu->r[29] + 0x00000000u;
|
|
/* 02226C58 */ rbrew_write32(cpu->mem, _t15, cpu->r[3]);
|
|
L_02226C5C: ; // 0x2226c5c
|
|
/* 02226C5C */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 02226C5C */ cpu->r[28] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02226C60 */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02226C60 */ cpu->r[29] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02226C64 */ _t18 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02226C64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02226C68 */ _t19 = cpu->r[1] + 0x00000010u;
|
|
/* 02226C68 */ cpu->r[30] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02226C6C */ cpu->lr = cpu->r[0];
|
|
/* 02226C70 */ _t20 = cpu->r[1] + 0x00000014u;
|
|
/* 02226C70 */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02226C74 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02226C78 */ return;
|
|
}
|
|
|
|
// fn_02226C7C @ 0x2226c7c
|
|
void Gambit_fn_02226C7C(CPUState* cpu) {
|
|
uint32_t _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_02226C7C: ; // 0x2226c7c
|
|
/* 02226C7C */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 02226C7C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02226C7C */ cpu->r[1] = _t0;
|
|
/* 02226C80 */ cpu->r[0] = cpu->lr;
|
|
/* 02226C84 */ /* nop */
|
|
/* 02226C88 */ cpu->r[27] = cpu->r[3];
|
|
/* 02226C88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02226C8C */ cpu->r[28] = cpu->r[4];
|
|
/* 02226C90 */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 02226C90 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02226C94 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226C94 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02226C94 */ if (_t3) goto L_02226D30; else goto L_02226C98;
|
|
L_02226C98: ; // 0x2226c98
|
|
/* 02226C98 */ _t4 = cpu->r[27] + 0x00000020u;
|
|
/* 02226C98 */ cpu->r[7] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02226C9C */ cpu->r[0] = 0x10050000u;
|
|
/* 02226CA0 */ cpu->r[29] = 0x00000000u;
|
|
/* 02226CA4 */ cpu->r[0] = cpu->r[0] + 0xFFFFE9D0u;
|
|
/* 02226CA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[7]);
|
|
/* 02226CAC */ _t5 = cpu->r[27] + 0x00000004u;
|
|
/* 02226CAC */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02226CB0 */ _t6 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02226CB0 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02226CB0 */ if (_t7) goto L_02226CB4; else goto L_02226CF8;
|
|
L_02226CB4: ; // 0x2226cb4
|
|
/* 02226CB4 */ cpu->r[31] = 0x00000000u;
|
|
L_02226CB8: ; // 0x2226cb8
|
|
/* 02226CB8 */ _t8 = cpu->r[27] + 0x00000028u;
|
|
/* 02226CB8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02226CBC */ _t9 = cpu->r[8] + cpu->r[31];
|
|
/* 02226CBC */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02226CC0 */ _t10 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02226CC0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02226CC4 */ _t11 = cpu->r[10] + 0x0000000Cu;
|
|
/* 02226CC4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02226CC8 */ cpu->ctr = cpu->r[12];
|
|
/* 02226CCC */ cpu->r[3] = cpu->r[30];
|
|
/* 02226CD0 */ cpu->r[4] = 0x00000002u;
|
|
/* 02226CD4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02226CD8 */ _t12 = cpu->r[27] + 0x0000002Cu;
|
|
/* 02226CD8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02226CDC */ _t13 = cpu->r[30] + 0x00000000u;
|
|
/* 02226CDC */ rbrew_write32(cpu->mem, _t13, cpu->r[9]);
|
|
/* 02226CE0 */ _t14 = cpu->r[27] + 0x00000020u;
|
|
/* 02226CE0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02226CE4 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 02226CE8 */ cpu->r[31] = cpu->r[31] + 0x00000004u;
|
|
/* 02226CEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[11]);
|
|
/* 02226CF0 */ _t15 = cpu->r[27] + 0x0000002Cu;
|
|
/* 02226CF0 */ rbrew_write32(cpu->mem, _t15, cpu->r[30]);
|
|
/* 02226CF4 */ _t16 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02226CF4 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02226CF4 */ if (_t17) goto L_02226CB8; else goto L_02226CF8;
|
|
L_02226CF8: ; // 0x2226cf8
|
|
/* 02226CF8 */ _t18 = cpu->r[27] + 0x0000001Cu;
|
|
/* 02226CF8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02226CFC */ cpu->r[6] = 0x00000000u;
|
|
/* 02226D00 */ cpu->r[5] = 0x00000018u;
|
|
/* 02226D04 */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 02226D08 */ cpu->r[8] = cpu->r[6];
|
|
/* 02226D0C */ _t19 = cpu->r[27] + 0x00000020u;
|
|
/* 02226D0C */ rbrew_write32(cpu->mem, _t19, cpu->r[6]);
|
|
/* 02226D10 */ cpu->r[7] = 0x00000001u;
|
|
/* 02226D14 */ Gambit_fn_02C82F38(cpu);
|
|
/* 02226D18 */ _t20 = cpu->r[27] + 0x00000034u;
|
|
/* 02226D18 */ cpu->r[3] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02226D1C */ Gambit_fn_02801BB0(cpu);
|
|
/* 02226D20 */ cpu->r[0] = rbrew_rlwinm(cpu->r[28], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02226D20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02226D24 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226D24 */ _t22 = _t21 & 0x00000001u;
|
|
/* 02226D24 */ if (_t22) goto L_02226D30; else goto L_02226D28;
|
|
L_02226D28: ; // 0x2226d28
|
|
/* 02226D28 */ cpu->r[3] = cpu->r[27];
|
|
/* 02226D2C */ Gambit_fn_02801BB0(cpu);
|
|
L_02226D30: ; // 0x2226d30
|
|
/* 02226D30 */ /* nop */
|
|
/* 02226D34 */ _t23 = cpu->r[1] + 0x00000024u;
|
|
/* 02226D34 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02226D38 */ cpu->lr = cpu->r[0];
|
|
/* 02226D3C */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 02226D40 */ return;
|
|
}
|
|
|
|
// fn_02226D44 @ 0x2226d44
|
|
void Gambit_fn_02226D44(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21;
|
|
|
|
L_02226D44: ; // 0x2226d44
|
|
/* 02226D44 */ cpu->r[0] = cpu->lr;
|
|
/* 02226D48 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02226D48 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02226D48 */ cpu->r[1] = _t0;
|
|
/* 02226D4C */ cpu->r[6] = 0x02220000u;
|
|
/* 02226D50 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02226D50 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02226D54 */ cpu->r[30] = cpu->r[3];
|
|
/* 02226D58 */ cpu->r[3] = 0x00000000u;
|
|
/* 02226D5C */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02226D5C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02226D60 */ cpu->r[6] = cpu->r[6] + 0x00007EE4u;
|
|
/* 02226D64 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02226D64 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02226D68 */ cpu->r[31] = cpu->r[4];
|
|
/* 02226D6C */ _t4 = cpu->r[30] + 0x00000001u;
|
|
/* 02226D6C */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[5]);
|
|
/* 02226D70 */ cpu->r[5] = 0x00000010u;
|
|
/* 02226D74 */ Gambit_fn_02C82E00(cpu);
|
|
/* 02226D78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02226D7C */ _t5 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02226D7C */ rbrew_write32(cpu->mem, _t5, cpu->r[3]);
|
|
/* 02226D80 */ _t6 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02226D80 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02226D80 */ if (_t7) goto L_02226D84; else goto L_02226DE4;
|
|
L_02226D84: ; // 0x2226d84
|
|
/* 02226D84 */ cpu->r[3] = (uint32_t)((int32_t)cpu->r[31] * (int32_t)0x00000090u);
|
|
/* 02226D88 */ cpu->r[4] = 0x00000000u;
|
|
/* 02226D8C */ cpu->r[5] = 0x00000004u;
|
|
/* 02226D90 */ Gambit_fn_02801ADC(cpu);
|
|
/* 02226D94 */ cpu->r[12] = cpu->r[3];
|
|
/* 02226D94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02226D98 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226D98 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02226D98 */ if (_t9) goto L_02226DE4; else goto L_02226D9C;
|
|
L_02226D9C: ; // 0x2226d9c
|
|
/* 02226D9C */ cpu->r[0] = cpu->r[31] + 0xFFFFFFFFu;
|
|
/* 02226D9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02226DA0 */ _t10 = cpu->r[30] + 0x00000014u;
|
|
/* 02226DA0 */ rbrew_write32(cpu->mem, _t10, cpu->r[12]);
|
|
/* 02226DA4 */ _t11 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02226DA4 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02226DA4 */ if (_t12) goto L_02226DA8; else goto L_02226DC4;
|
|
L_02226DA8: ; // 0x2226da8
|
|
/* 02226DA8 */ cpu->ctr = cpu->r[0];
|
|
/* 02226DAC */ cpu->r[7] = 0x00000000u;
|
|
/* 02226DB0 */ cpu->r[9] = cpu->r[12] + 0x0000008Cu;
|
|
L_02226DB4: ; // 0x2226db4
|
|
/* 02226DB4 */ _t13 = cpu->r[12] + cpu->r[7];
|
|
/* 02226DB4 */ rbrew_write32(cpu->mem, _t13, cpu->r[9]);
|
|
/* 02226DB8 */ cpu->r[7] = cpu->r[7] + 0x0000008Cu;
|
|
/* 02226DBC */ cpu->r[9] = cpu->r[9] + 0x0000008Cu;
|
|
/* 02226DC0 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02226DC0 */ _t14 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02226DC0 */ _t15 = _t14 >> (0x00000002u & 31u);
|
|
/* 02226DC0 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02226DC0 */ if (_t16) goto L_02226DB4; else goto L_02226DC4;
|
|
L_02226DC4: ; // 0x2226dc4
|
|
/* 02226DC4 */ cpu->r[8] = (uint32_t)((int32_t)cpu->r[31] * (int32_t)0x0000008Cu);
|
|
/* 02226DC8 */ cpu->r[0] = 0x00000000u;
|
|
/* 02226DCC */ cpu->r[5] = cpu->r[12] + cpu->r[8];
|
|
/* 02226DD0 */ cpu->r[3] = cpu->r[30] + 0x00000008u;
|
|
/* 02226DD4 */ _t17 = cpu->r[5] + 0xFFFFFF74u;
|
|
/* 02226DD4 */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
/* 02226DD8 */ cpu->r[4] = cpu->r[31];
|
|
/* 02226DDC */ _t18 = cpu->r[30] + 0x00000018u;
|
|
/* 02226DDC */ rbrew_write32(cpu->mem, _t18, cpu->r[12]);
|
|
/* 02226DE0 */ Gambit_fn_028023A8(cpu);
|
|
L_02226DE4: ; // 0x2226de4
|
|
/* 02226DE4 */ _t19 = cpu->r[1] + 0x00000014u;
|
|
/* 02226DE4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02226DE8 */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 02226DE8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02226DEC */ cpu->lr = cpu->r[0];
|
|
/* 02226DF0 */ _t21 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02226DF0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02226DF4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02226DF8 */ return;
|
|
}
|
|
|
|
// fn_02226D48 @ 0x2226d48
|
|
void Gambit_fn_02226D48(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21;
|
|
|
|
L_02226D48: ; // 0x2226d48
|
|
/* 02226D48 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02226D48 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02226D48 */ cpu->r[1] = _t0;
|
|
/* 02226D4C */ cpu->r[6] = 0x02220000u;
|
|
/* 02226D50 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02226D50 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02226D54 */ cpu->r[30] = cpu->r[3];
|
|
/* 02226D58 */ cpu->r[3] = 0x00000000u;
|
|
/* 02226D5C */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02226D5C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02226D60 */ cpu->r[6] = cpu->r[6] + 0x00007EE4u;
|
|
/* 02226D64 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02226D64 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02226D68 */ cpu->r[31] = cpu->r[4];
|
|
/* 02226D6C */ _t4 = cpu->r[30] + 0x00000001u;
|
|
/* 02226D6C */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[5]);
|
|
/* 02226D70 */ cpu->r[5] = 0x00000010u;
|
|
/* 02226D74 */ Gambit_fn_02C82E00(cpu);
|
|
/* 02226D78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02226D7C */ _t5 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02226D7C */ rbrew_write32(cpu->mem, _t5, cpu->r[3]);
|
|
/* 02226D80 */ _t6 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02226D80 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02226D80 */ if (_t7) goto L_02226D84; else goto L_02226DE4;
|
|
L_02226D84: ; // 0x2226d84
|
|
/* 02226D84 */ cpu->r[3] = (uint32_t)((int32_t)cpu->r[31] * (int32_t)0x00000090u);
|
|
/* 02226D88 */ cpu->r[4] = 0x00000000u;
|
|
/* 02226D8C */ cpu->r[5] = 0x00000004u;
|
|
/* 02226D90 */ Gambit_fn_02801ADC(cpu);
|
|
/* 02226D94 */ cpu->r[12] = cpu->r[3];
|
|
/* 02226D94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02226D98 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226D98 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02226D98 */ if (_t9) goto L_02226DE4; else goto L_02226D9C;
|
|
L_02226D9C: ; // 0x2226d9c
|
|
/* 02226D9C */ cpu->r[0] = cpu->r[31] + 0xFFFFFFFFu;
|
|
/* 02226D9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02226DA0 */ _t10 = cpu->r[30] + 0x00000014u;
|
|
/* 02226DA0 */ rbrew_write32(cpu->mem, _t10, cpu->r[12]);
|
|
/* 02226DA4 */ _t11 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02226DA4 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02226DA4 */ if (_t12) goto L_02226DA8; else goto L_02226DC4;
|
|
L_02226DA8: ; // 0x2226da8
|
|
/* 02226DA8 */ cpu->ctr = cpu->r[0];
|
|
/* 02226DAC */ cpu->r[7] = 0x00000000u;
|
|
/* 02226DB0 */ cpu->r[9] = cpu->r[12] + 0x0000008Cu;
|
|
L_02226DB4: ; // 0x2226db4
|
|
/* 02226DB4 */ _t13 = cpu->r[12] + cpu->r[7];
|
|
/* 02226DB4 */ rbrew_write32(cpu->mem, _t13, cpu->r[9]);
|
|
/* 02226DB8 */ cpu->r[7] = cpu->r[7] + 0x0000008Cu;
|
|
/* 02226DBC */ cpu->r[9] = cpu->r[9] + 0x0000008Cu;
|
|
/* 02226DC0 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02226DC0 */ _t14 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02226DC0 */ _t15 = _t14 >> (0x00000002u & 31u);
|
|
/* 02226DC0 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02226DC0 */ if (_t16) goto L_02226DB4; else goto L_02226DC4;
|
|
L_02226DC4: ; // 0x2226dc4
|
|
/* 02226DC4 */ cpu->r[8] = (uint32_t)((int32_t)cpu->r[31] * (int32_t)0x0000008Cu);
|
|
/* 02226DC8 */ cpu->r[0] = 0x00000000u;
|
|
/* 02226DCC */ cpu->r[5] = cpu->r[12] + cpu->r[8];
|
|
/* 02226DD0 */ cpu->r[3] = cpu->r[30] + 0x00000008u;
|
|
/* 02226DD4 */ _t17 = cpu->r[5] + 0xFFFFFF74u;
|
|
/* 02226DD4 */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
/* 02226DD8 */ cpu->r[4] = cpu->r[31];
|
|
/* 02226DDC */ _t18 = cpu->r[30] + 0x00000018u;
|
|
/* 02226DDC */ rbrew_write32(cpu->mem, _t18, cpu->r[12]);
|
|
/* 02226DE0 */ Gambit_fn_028023A8(cpu);
|
|
L_02226DE4: ; // 0x2226de4
|
|
/* 02226DE4 */ _t19 = cpu->r[1] + 0x00000014u;
|
|
/* 02226DE4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02226DE8 */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 02226DE8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02226DEC */ cpu->lr = cpu->r[0];
|
|
/* 02226DF0 */ _t21 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02226DF0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02226DF4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02226DF8 */ return;
|
|
}
|
|
|
|
// fn_02226DFC @ 0x2226dfc
|
|
void Gambit_fn_02226DFC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58;
|
|
|
|
L_02226DFC: ; // 0x2226dfc
|
|
/* 02226DFC */ cpu->r[0] = cpu->lr;
|
|
/* 02226E00 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 02226E00 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02226E00 */ cpu->r[1] = _t0;
|
|
/* 02226E04 */ _t1 = cpu->r[1] + 0x00000018u;
|
|
/* 02226E04 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02226E08 */ cpu->r[30] = cpu->r[6];
|
|
/* 02226E0C */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 02226E0C */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 02226E10 */ cpu->r[28] = cpu->r[3];
|
|
/* 02226E14 */ cpu->r[6] = 0x02220000u;
|
|
/* 02226E18 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02226E18 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 02226E1C */ cpu->r[6] = cpu->r[6] + 0x00007E80u;
|
|
/* 02226E20 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02226E20 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 02226E24 */ cpu->r[31] = cpu->r[5];
|
|
/* 02226E28 */ cpu->r[5] = 0x00000018u;
|
|
/* 02226E2C */ cpu->r[3] = 0x00000000u;
|
|
/* 02226E30 */ _t5 = cpu->r[1] + 0x00000024u;
|
|
/* 02226E30 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02226E34 */ cpu->r[29] = cpu->r[4];
|
|
/* 02226E38 */ cpu->r[4] = cpu->r[31];
|
|
/* 02226E3C */ _t6 = cpu->r[28] + 0x00000018u;
|
|
/* 02226E3C */ rbrew_write32(cpu->mem, _t6, cpu->r[31]);
|
|
/* 02226E40 */ Gambit_fn_02C82E00(cpu);
|
|
/* 02226E44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02226E48 */ _t7 = cpu->r[28] + 0x0000001Cu;
|
|
/* 02226E48 */ rbrew_write32(cpu->mem, _t7, cpu->r[3]);
|
|
/* 02226E4C */ _t8 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02226E4C */ _t9 = _t8 & 0x00000001u;
|
|
/* 02226E4C */ if (_t9) goto L_02226E50; else goto L_02226EB0;
|
|
L_02226E50: ; // 0x2226e50
|
|
/* 02226E50 */ cpu->r[3] = (uint32_t)((int32_t)cpu->r[31] * (int32_t)0x00000090u);
|
|
/* 02226E54 */ cpu->r[4] = 0x00000000u;
|
|
/* 02226E58 */ cpu->r[5] = 0x00000004u;
|
|
/* 02226E5C */ Gambit_fn_02801ADC(cpu);
|
|
/* 02226E60 */ cpu->r[12] = cpu->r[3];
|
|
/* 02226E60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02226E64 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226E64 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02226E64 */ if (_t11) goto L_02226EB0; else goto L_02226E68;
|
|
L_02226E68: ; // 0x2226e68
|
|
/* 02226E68 */ cpu->r[9] = cpu->r[31] + 0xFFFFFFFFu;
|
|
/* 02226E68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02226E6C */ _t12 = cpu->r[28] + 0x0000002Cu;
|
|
/* 02226E6C */ rbrew_write32(cpu->mem, _t12, cpu->r[12]);
|
|
/* 02226E70 */ _t13 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02226E70 */ _t14 = _t13 & 0x00000001u;
|
|
/* 02226E70 */ if (_t14) goto L_02226E74; else goto L_02226E90;
|
|
L_02226E74: ; // 0x2226e74
|
|
/* 02226E74 */ cpu->ctr = cpu->r[9];
|
|
/* 02226E78 */ cpu->r[8] = 0x00000000u;
|
|
/* 02226E7C */ cpu->r[11] = cpu->r[12] + 0x0000008Cu;
|
|
L_02226E80: ; // 0x2226e80
|
|
/* 02226E80 */ _t15 = cpu->r[12] + cpu->r[8];
|
|
/* 02226E80 */ rbrew_write32(cpu->mem, _t15, cpu->r[11]);
|
|
/* 02226E84 */ cpu->r[8] = cpu->r[8] + 0x0000008Cu;
|
|
/* 02226E88 */ cpu->r[11] = cpu->r[11] + 0x0000008Cu;
|
|
/* 02226E8C */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02226E8C */ _t16 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02226E8C */ _t17 = _t16 >> (0x00000002u & 31u);
|
|
/* 02226E8C */ _t18 = _t17 & 0x00000001u;
|
|
/* 02226E8C */ if (_t18) goto L_02226E80; else goto L_02226E90;
|
|
L_02226E90: ; // 0x2226e90
|
|
/* 02226E90 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[31] * (int32_t)0x0000008Cu);
|
|
/* 02226E94 */ cpu->r[7] = 0x00000000u;
|
|
/* 02226E98 */ cpu->r[5] = cpu->r[12] + cpu->r[0];
|
|
/* 02226E9C */ cpu->r[3] = cpu->r[28] + 0x00000020u;
|
|
/* 02226EA0 */ _t19 = cpu->r[5] + 0xFFFFFF74u;
|
|
/* 02226EA0 */ rbrew_write32(cpu->mem, _t19, cpu->r[7]);
|
|
/* 02226EA4 */ cpu->r[4] = cpu->r[31];
|
|
/* 02226EA8 */ _t20 = cpu->r[28] + 0x00000030u;
|
|
/* 02226EA8 */ rbrew_write32(cpu->mem, _t20, cpu->r[12]);
|
|
/* 02226EAC */ Gambit_fn_028023A8(cpu);
|
|
L_02226EB0: ; // 0x2226eb0
|
|
/* 02226EB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02226EB4 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226EB4 */ _t22 = _t21 & 0x00000001u;
|
|
/* 02226EB4 */ if (_t22) goto L_02226F44; else goto L_02226EB8;
|
|
L_02226EB8: ; // 0x2226eb8
|
|
/* 02226EB8 */ _t23 = cpu->r[28] + 0x00000020u;
|
|
/* 02226EB8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02226EBC */ _t24 = cpu->r[28] + 0x00000024u;
|
|
/* 02226EBC */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02226EC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], cpu->r[0]);
|
|
/* 02226EC4 */ _t25 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02226EC4 */ _t26 = _t25 & 0x00000001u;
|
|
/* 02226EC4 */ if (_t26) goto L_02226EE0; else goto L_02226EC8;
|
|
L_02226EC8: ; // 0x2226ec8
|
|
/* 02226EC8 */ cpu->r[4] = 0x00000000u;
|
|
/* 02226ECC */ cpu->r[3] = cpu->r[4];
|
|
/* 02226ED0 */ Gambit_fn_023C0574(cpu);
|
|
/* 02226ED4 */ cpu->r[31] = cpu->r[31] + 0xFFFFFFFFu;
|
|
/* 02226ED4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02226ED8 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226ED8 */ _t28 = _t27 & 0x00000001u;
|
|
/* 02226ED8 */ if (_t28) goto L_02226EDC; else goto L_02226EB8;
|
|
L_02226EDC: ; // 0x2226edc
|
|
/* 02226EDC */ goto L_02226F44;
|
|
L_02226EE0: ; // 0x2226ee0
|
|
/* 02226EE0 */ _t29 = cpu->r[28] + 0x0000002Cu;
|
|
/* 02226EE0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02226EE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02226EE8 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226EE8 */ _t31 = _t30 & 0x00000001u;
|
|
/* 02226EE8 */ if (_t31) goto L_02226EF4; else goto L_02226EEC;
|
|
L_02226EEC: ; // 0x2226eec
|
|
/* 02226EEC */ _t32 = cpu->r[11] + 0x00000000u;
|
|
/* 02226EEC */ cpu->r[0] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02226EF0 */ _t33 = cpu->r[28] + 0x0000002Cu;
|
|
/* 02226EF0 */ rbrew_write32(cpu->mem, _t33, cpu->r[0]);
|
|
L_02226EF4: ; // 0x2226ef4
|
|
/* 02226EF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02226EF8 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226EF8 */ _t35 = _t34 & 0x00000001u;
|
|
/* 02226EF8 */ if (_t35) goto L_02226F08; else goto L_02226EFC;
|
|
L_02226EFC: ; // 0x2226efc
|
|
/* 02226EFC */ cpu->r[3] = cpu->r[11];
|
|
/* 02226F00 */ Gambit_fn_023C0104(cpu);
|
|
/* 02226F04 */ cpu->r[11] = cpu->r[3];
|
|
L_02226F08: ; // 0x2226f08
|
|
/* 02226F08 */ _t36 = cpu->r[28] + 0x00000020u;
|
|
/* 02226F08 */ cpu->r[6] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02226F0C */ _t37 = cpu->r[28] + 0x00000024u;
|
|
/* 02226F0C */ cpu->r[5] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02226F10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], cpu->r[5]);
|
|
/* 02226F14 */ _t38 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02226F14 */ _t39 = _t38 & 0x00000001u;
|
|
/* 02226F14 */ if (_t39) goto L_02226F18; else goto L_02226F30;
|
|
L_02226F18: ; // 0x2226f18
|
|
/* 02226F18 */ _t40 = cpu->r[28] + 0x00000028u;
|
|
/* 02226F18 */ cpu->r[8] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02226F1C */ cpu->r[7] = rbrew_rlwinm(cpu->r[6], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02226F20 */ _t41 = cpu->r[7] + cpu->r[8];
|
|
/* 02226F20 */ rbrew_write32(cpu->mem, _t41, cpu->r[11]);
|
|
/* 02226F24 */ _t42 = cpu->r[28] + 0x00000020u;
|
|
/* 02226F24 */ cpu->r[9] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02226F28 */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 02226F2C */ _t43 = cpu->r[28] + 0x00000020u;
|
|
/* 02226F2C */ rbrew_write32(cpu->mem, _t43, cpu->r[9]);
|
|
L_02226F30: ; // 0x2226f30
|
|
/* 02226F30 */ cpu->r[3] = cpu->r[11];
|
|
/* 02226F34 */ cpu->r[4] = 0x00000000u;
|
|
/* 02226F38 */ Gambit_fn_023C0574(cpu);
|
|
/* 02226F3C */ cpu->r[31] = cpu->r[31] + 0xFFFFFFFFu;
|
|
/* 02226F3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02226F40 */ _t44 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226F40 */ _t45 = _t44 & 0x00000001u;
|
|
/* 02226F40 */ if (_t45) goto L_02226F44; else goto L_02226EB8;
|
|
L_02226F44: ; // 0x2226f44
|
|
/* 02226F44 */ _t46 = cpu->r[28] + 0x00000034u;
|
|
/* 02226F44 */ cpu->r[3] = rbrew_read32(cpu->mem, _t46);
|
|
/* 02226F48 */ cpu->r[4] = cpu->r[30];
|
|
/* 02226F4C */ cpu->r[5] = cpu->r[30];
|
|
/* 02226F50 */ Gambit_fn_02226D44(cpu);
|
|
/* 02226F54 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02226F58 */ cpu->r[10] = 0x10050000u;
|
|
/* 02226F5C */ cpu->r[4] = cpu->r[29];
|
|
/* 02226F60 */ _t47 = cpu->r[3] + 0xFFFF965Cu;
|
|
/* 02226F60 */ cpu->r[3] = rbrew_read32(cpu->mem, _t47);
|
|
/* 02226F64 */ cpu->r[10] = cpu->r[10] + 0xFFFFE8FCu;
|
|
/* 02226F68 */ cpu->r[5] = 0x00000057u;
|
|
/* 02226F6C */ cpu->r[11] = 0x10050000u;
|
|
/* 02226F70 */ _t48 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02226F70 */ rbrew_write32(cpu->mem, _t48, cpu->r[10]);
|
|
/* 02226F74 */ cpu->r[7] = 0x00000000u;
|
|
/* 02226F78 */ cpu->r[11] = cpu->r[11] + 0xFFFFE984u;
|
|
/* 02226F7C */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 02226F80 */ cpu->r[8] = cpu->r[7];
|
|
/* 02226F84 */ _t49 = cpu->r[1] + 0x00000008u;
|
|
/* 02226F84 */ rbrew_write32(cpu->mem, _t49, cpu->r[11]);
|
|
/* 02226F88 */ Gambit_fn_027DB248(cpu);
|
|
/* 02226F8C */ _t50 = cpu->r[29] + 0x00000030u;
|
|
/* 02226F8C */ cpu->r[12] = rbrew_read32(cpu->mem, _t50);
|
|
/* 02226F90 */ _t51 = cpu->r[12] + 0x0000015Cu;
|
|
/* 02226F90 */ cpu->r[0] = rbrew_read32(cpu->mem, _t51);
|
|
/* 02226F94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02226F98 */ _t52 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226F98 */ _t53 = _t52 & 0x00000001u;
|
|
/* 02226F98 */ if (_t53) goto L_02226FA8; else goto L_02226F9C;
|
|
L_02226F9C: ; // 0x2226f9c
|
|
/* 02226F9C */ cpu->r[3] = cpu->r[29];
|
|
/* 02226FA0 */ cpu->r[4] = 0x00000057u;
|
|
/* 02226FA4 */ Gambit_fn_02791444(cpu);
|
|
L_02226FA8: ; // 0x2226fa8
|
|
/* 02226FA8 */ _t54 = cpu->r[1] + 0x00000010u;
|
|
/* 02226FA8 */ cpu->r[28] = rbrew_read32(cpu->mem, _t54);
|
|
/* 02226FAC */ _t55 = cpu->r[1] + 0x00000014u;
|
|
/* 02226FAC */ cpu->r[29] = rbrew_read32(cpu->mem, _t55);
|
|
/* 02226FB0 */ _t56 = cpu->r[1] + 0x00000024u;
|
|
/* 02226FB0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t56);
|
|
/* 02226FB4 */ _t57 = cpu->r[1] + 0x00000018u;
|
|
/* 02226FB4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t57);
|
|
/* 02226FB8 */ cpu->lr = cpu->r[0];
|
|
/* 02226FBC */ _t58 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02226FBC */ cpu->r[31] = rbrew_read32(cpu->mem, _t58);
|
|
/* 02226FC0 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 02226FC4 */ return;
|
|
}
|
|
|
|
// fn_02226E00 @ 0x2226e00
|
|
void Gambit_fn_02226E00(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58;
|
|
|
|
L_02226E00: ; // 0x2226e00
|
|
/* 02226E00 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 02226E00 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02226E00 */ cpu->r[1] = _t0;
|
|
/* 02226E04 */ _t1 = cpu->r[1] + 0x00000018u;
|
|
/* 02226E04 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02226E08 */ cpu->r[30] = cpu->r[6];
|
|
/* 02226E0C */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 02226E0C */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 02226E10 */ cpu->r[28] = cpu->r[3];
|
|
/* 02226E14 */ cpu->r[6] = 0x02220000u;
|
|
/* 02226E18 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02226E18 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 02226E1C */ cpu->r[6] = cpu->r[6] + 0x00007E80u;
|
|
/* 02226E20 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02226E20 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 02226E24 */ cpu->r[31] = cpu->r[5];
|
|
/* 02226E28 */ cpu->r[5] = 0x00000018u;
|
|
/* 02226E2C */ cpu->r[3] = 0x00000000u;
|
|
/* 02226E30 */ _t5 = cpu->r[1] + 0x00000024u;
|
|
/* 02226E30 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02226E34 */ cpu->r[29] = cpu->r[4];
|
|
/* 02226E38 */ cpu->r[4] = cpu->r[31];
|
|
/* 02226E3C */ _t6 = cpu->r[28] + 0x00000018u;
|
|
/* 02226E3C */ rbrew_write32(cpu->mem, _t6, cpu->r[31]);
|
|
/* 02226E40 */ Gambit_fn_02C82E00(cpu);
|
|
/* 02226E44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02226E48 */ _t7 = cpu->r[28] + 0x0000001Cu;
|
|
/* 02226E48 */ rbrew_write32(cpu->mem, _t7, cpu->r[3]);
|
|
/* 02226E4C */ _t8 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02226E4C */ _t9 = _t8 & 0x00000001u;
|
|
/* 02226E4C */ if (_t9) goto L_02226E50; else goto L_02226EB0;
|
|
L_02226E50: ; // 0x2226e50
|
|
/* 02226E50 */ cpu->r[3] = (uint32_t)((int32_t)cpu->r[31] * (int32_t)0x00000090u);
|
|
/* 02226E54 */ cpu->r[4] = 0x00000000u;
|
|
/* 02226E58 */ cpu->r[5] = 0x00000004u;
|
|
/* 02226E5C */ Gambit_fn_02801ADC(cpu);
|
|
/* 02226E60 */ cpu->r[12] = cpu->r[3];
|
|
/* 02226E60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02226E64 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226E64 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02226E64 */ if (_t11) goto L_02226EB0; else goto L_02226E68;
|
|
L_02226E68: ; // 0x2226e68
|
|
/* 02226E68 */ cpu->r[9] = cpu->r[31] + 0xFFFFFFFFu;
|
|
/* 02226E68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02226E6C */ _t12 = cpu->r[28] + 0x0000002Cu;
|
|
/* 02226E6C */ rbrew_write32(cpu->mem, _t12, cpu->r[12]);
|
|
/* 02226E70 */ _t13 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02226E70 */ _t14 = _t13 & 0x00000001u;
|
|
/* 02226E70 */ if (_t14) goto L_02226E74; else goto L_02226E90;
|
|
L_02226E74: ; // 0x2226e74
|
|
/* 02226E74 */ cpu->ctr = cpu->r[9];
|
|
/* 02226E78 */ cpu->r[8] = 0x00000000u;
|
|
/* 02226E7C */ cpu->r[11] = cpu->r[12] + 0x0000008Cu;
|
|
L_02226E80: ; // 0x2226e80
|
|
/* 02226E80 */ _t15 = cpu->r[12] + cpu->r[8];
|
|
/* 02226E80 */ rbrew_write32(cpu->mem, _t15, cpu->r[11]);
|
|
/* 02226E84 */ cpu->r[8] = cpu->r[8] + 0x0000008Cu;
|
|
/* 02226E88 */ cpu->r[11] = cpu->r[11] + 0x0000008Cu;
|
|
/* 02226E8C */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02226E8C */ _t16 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02226E8C */ _t17 = _t16 >> (0x00000002u & 31u);
|
|
/* 02226E8C */ _t18 = _t17 & 0x00000001u;
|
|
/* 02226E8C */ if (_t18) goto L_02226E80; else goto L_02226E90;
|
|
L_02226E90: ; // 0x2226e90
|
|
/* 02226E90 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[31] * (int32_t)0x0000008Cu);
|
|
/* 02226E94 */ cpu->r[7] = 0x00000000u;
|
|
/* 02226E98 */ cpu->r[5] = cpu->r[12] + cpu->r[0];
|
|
/* 02226E9C */ cpu->r[3] = cpu->r[28] + 0x00000020u;
|
|
/* 02226EA0 */ _t19 = cpu->r[5] + 0xFFFFFF74u;
|
|
/* 02226EA0 */ rbrew_write32(cpu->mem, _t19, cpu->r[7]);
|
|
/* 02226EA4 */ cpu->r[4] = cpu->r[31];
|
|
/* 02226EA8 */ _t20 = cpu->r[28] + 0x00000030u;
|
|
/* 02226EA8 */ rbrew_write32(cpu->mem, _t20, cpu->r[12]);
|
|
/* 02226EAC */ Gambit_fn_028023A8(cpu);
|
|
L_02226EB0: ; // 0x2226eb0
|
|
/* 02226EB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02226EB4 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226EB4 */ _t22 = _t21 & 0x00000001u;
|
|
/* 02226EB4 */ if (_t22) goto L_02226F44; else goto L_02226EB8;
|
|
L_02226EB8: ; // 0x2226eb8
|
|
/* 02226EB8 */ _t23 = cpu->r[28] + 0x00000020u;
|
|
/* 02226EB8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02226EBC */ _t24 = cpu->r[28] + 0x00000024u;
|
|
/* 02226EBC */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02226EC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], cpu->r[0]);
|
|
/* 02226EC4 */ _t25 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02226EC4 */ _t26 = _t25 & 0x00000001u;
|
|
/* 02226EC4 */ if (_t26) goto L_02226EE0; else goto L_02226EC8;
|
|
L_02226EC8: ; // 0x2226ec8
|
|
/* 02226EC8 */ cpu->r[4] = 0x00000000u;
|
|
/* 02226ECC */ cpu->r[3] = cpu->r[4];
|
|
/* 02226ED0 */ Gambit_fn_023C0574(cpu);
|
|
/* 02226ED4 */ cpu->r[31] = cpu->r[31] + 0xFFFFFFFFu;
|
|
/* 02226ED4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02226ED8 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226ED8 */ _t28 = _t27 & 0x00000001u;
|
|
/* 02226ED8 */ if (_t28) goto L_02226EDC; else goto L_02226EB8;
|
|
L_02226EDC: ; // 0x2226edc
|
|
/* 02226EDC */ goto L_02226F44;
|
|
L_02226EE0: ; // 0x2226ee0
|
|
/* 02226EE0 */ _t29 = cpu->r[28] + 0x0000002Cu;
|
|
/* 02226EE0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02226EE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02226EE8 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226EE8 */ _t31 = _t30 & 0x00000001u;
|
|
/* 02226EE8 */ if (_t31) goto L_02226EF4; else goto L_02226EEC;
|
|
L_02226EEC: ; // 0x2226eec
|
|
/* 02226EEC */ _t32 = cpu->r[11] + 0x00000000u;
|
|
/* 02226EEC */ cpu->r[0] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02226EF0 */ _t33 = cpu->r[28] + 0x0000002Cu;
|
|
/* 02226EF0 */ rbrew_write32(cpu->mem, _t33, cpu->r[0]);
|
|
L_02226EF4: ; // 0x2226ef4
|
|
/* 02226EF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02226EF8 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226EF8 */ _t35 = _t34 & 0x00000001u;
|
|
/* 02226EF8 */ if (_t35) goto L_02226F08; else goto L_02226EFC;
|
|
L_02226EFC: ; // 0x2226efc
|
|
/* 02226EFC */ cpu->r[3] = cpu->r[11];
|
|
/* 02226F00 */ Gambit_fn_023C0104(cpu);
|
|
/* 02226F04 */ cpu->r[11] = cpu->r[3];
|
|
L_02226F08: ; // 0x2226f08
|
|
/* 02226F08 */ _t36 = cpu->r[28] + 0x00000020u;
|
|
/* 02226F08 */ cpu->r[6] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02226F0C */ _t37 = cpu->r[28] + 0x00000024u;
|
|
/* 02226F0C */ cpu->r[5] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02226F10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], cpu->r[5]);
|
|
/* 02226F14 */ _t38 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02226F14 */ _t39 = _t38 & 0x00000001u;
|
|
/* 02226F14 */ if (_t39) goto L_02226F18; else goto L_02226F30;
|
|
L_02226F18: ; // 0x2226f18
|
|
/* 02226F18 */ _t40 = cpu->r[28] + 0x00000028u;
|
|
/* 02226F18 */ cpu->r[8] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02226F1C */ cpu->r[7] = rbrew_rlwinm(cpu->r[6], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02226F20 */ _t41 = cpu->r[7] + cpu->r[8];
|
|
/* 02226F20 */ rbrew_write32(cpu->mem, _t41, cpu->r[11]);
|
|
/* 02226F24 */ _t42 = cpu->r[28] + 0x00000020u;
|
|
/* 02226F24 */ cpu->r[9] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02226F28 */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 02226F2C */ _t43 = cpu->r[28] + 0x00000020u;
|
|
/* 02226F2C */ rbrew_write32(cpu->mem, _t43, cpu->r[9]);
|
|
L_02226F30: ; // 0x2226f30
|
|
/* 02226F30 */ cpu->r[3] = cpu->r[11];
|
|
/* 02226F34 */ cpu->r[4] = 0x00000000u;
|
|
/* 02226F38 */ Gambit_fn_023C0574(cpu);
|
|
/* 02226F3C */ cpu->r[31] = cpu->r[31] + 0xFFFFFFFFu;
|
|
/* 02226F3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02226F40 */ _t44 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226F40 */ _t45 = _t44 & 0x00000001u;
|
|
/* 02226F40 */ if (_t45) goto L_02226F44; else goto L_02226EB8;
|
|
L_02226F44: ; // 0x2226f44
|
|
/* 02226F44 */ _t46 = cpu->r[28] + 0x00000034u;
|
|
/* 02226F44 */ cpu->r[3] = rbrew_read32(cpu->mem, _t46);
|
|
/* 02226F48 */ cpu->r[4] = cpu->r[30];
|
|
/* 02226F4C */ cpu->r[5] = cpu->r[30];
|
|
/* 02226F50 */ Gambit_fn_02226D44(cpu);
|
|
/* 02226F54 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02226F58 */ cpu->r[10] = 0x10050000u;
|
|
/* 02226F5C */ cpu->r[4] = cpu->r[29];
|
|
/* 02226F60 */ _t47 = cpu->r[3] + 0xFFFF965Cu;
|
|
/* 02226F60 */ cpu->r[3] = rbrew_read32(cpu->mem, _t47);
|
|
/* 02226F64 */ cpu->r[10] = cpu->r[10] + 0xFFFFE8FCu;
|
|
/* 02226F68 */ cpu->r[5] = 0x00000057u;
|
|
/* 02226F6C */ cpu->r[11] = 0x10050000u;
|
|
/* 02226F70 */ _t48 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02226F70 */ rbrew_write32(cpu->mem, _t48, cpu->r[10]);
|
|
/* 02226F74 */ cpu->r[7] = 0x00000000u;
|
|
/* 02226F78 */ cpu->r[11] = cpu->r[11] + 0xFFFFE984u;
|
|
/* 02226F7C */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 02226F80 */ cpu->r[8] = cpu->r[7];
|
|
/* 02226F84 */ _t49 = cpu->r[1] + 0x00000008u;
|
|
/* 02226F84 */ rbrew_write32(cpu->mem, _t49, cpu->r[11]);
|
|
/* 02226F88 */ Gambit_fn_027DB248(cpu);
|
|
/* 02226F8C */ _t50 = cpu->r[29] + 0x00000030u;
|
|
/* 02226F8C */ cpu->r[12] = rbrew_read32(cpu->mem, _t50);
|
|
/* 02226F90 */ _t51 = cpu->r[12] + 0x0000015Cu;
|
|
/* 02226F90 */ cpu->r[0] = rbrew_read32(cpu->mem, _t51);
|
|
/* 02226F94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02226F98 */ _t52 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02226F98 */ _t53 = _t52 & 0x00000001u;
|
|
/* 02226F98 */ if (_t53) goto L_02226FA8; else goto L_02226F9C;
|
|
L_02226F9C: ; // 0x2226f9c
|
|
/* 02226F9C */ cpu->r[3] = cpu->r[29];
|
|
/* 02226FA0 */ cpu->r[4] = 0x00000057u;
|
|
/* 02226FA4 */ Gambit_fn_02791444(cpu);
|
|
L_02226FA8: ; // 0x2226fa8
|
|
/* 02226FA8 */ _t54 = cpu->r[1] + 0x00000010u;
|
|
/* 02226FA8 */ cpu->r[28] = rbrew_read32(cpu->mem, _t54);
|
|
/* 02226FAC */ _t55 = cpu->r[1] + 0x00000014u;
|
|
/* 02226FAC */ cpu->r[29] = rbrew_read32(cpu->mem, _t55);
|
|
/* 02226FB0 */ _t56 = cpu->r[1] + 0x00000024u;
|
|
/* 02226FB0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t56);
|
|
/* 02226FB4 */ _t57 = cpu->r[1] + 0x00000018u;
|
|
/* 02226FB4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t57);
|
|
/* 02226FB8 */ cpu->lr = cpu->r[0];
|
|
/* 02226FBC */ _t58 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02226FBC */ cpu->r[31] = rbrew_read32(cpu->mem, _t58);
|
|
/* 02226FC0 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 02226FC4 */ return;
|
|
}
|
|
|
|
// fn_02226FC8 @ 0x2226fc8
|
|
void Gambit_fn_02226FC8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _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;
|
|
|
|
L_02226FC8: ; // 0x2226fc8
|
|
/* 02226FC8 */ _t0 = cpu->r[1] + 0xFFFFFE00u;
|
|
/* 02226FC8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02226FC8 */ cpu->r[1] = _t0;
|
|
/* 02226FCC */ /* nop */
|
|
/* 02226FD0 */ cpu->r[0] = cpu->lr;
|
|
/* 02226FD4 */ _t1 = cpu->r[1] + 0x000001E0u;
|
|
/* 02226FD4 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[30]);
|
|
/* 02226FD8 */ /* nop */
|
|
/* 02226FDC */ _t2 = cpu->r[1] + 0x00000204u;
|
|
/* 02226FDC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02226FE0 */ _t3 = cpu->r[1] + 0x000001F0u;
|
|
/* 02226FE0 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[31]);
|
|
/* 02226FE4 */ _t4 = cpu->r[1] + 0x000001E8u;
|
|
/* 02226FE4 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[30]);
|
|
/* 02226FE8 */ /* nop */
|
|
/* 02226FEC */ _t5 = cpu->r[1] + 0x000001F8u;
|
|
/* 02226FEC */ rbrew_write_f32(cpu->mem, _t5, cpu->f[31]);
|
|
/* 02226FF0 */ cpu->r[12] = 0x101C0000u;
|
|
/* 02226FF4 */ _t6 = cpu->r[12] + 0x00006000u;
|
|
/* 02226FF4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02226FF8 */ _t7 = cpu->r[12] + 0x00000260u;
|
|
/* 02226FF8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02226FFC */ _t8 = cpu->r[5] + 0x00000008u;
|
|
/* 02226FFC */ cpu->r[26] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02227000 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 02227004 */ cpu->r[30] = cpu->r[3];
|
|
/* 02227008 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02227008 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02227008 */ if (_t10) goto L_0222733C; else goto L_0222700C;
|
|
L_0222700C: ; // 0x222700c
|
|
/* 0222700C */ cpu->r[3] = cpu->r[26];
|
|
/* 02227010 */ Gambit_fn_02980F6C(cpu);
|
|
/* 02227014 */ cpu->r[28] = 0x00000000u;
|
|
/* 02227018 */ cpu->r[25] = cpu->r[3];
|
|
/* 02227018 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 0222701C */ _t11 = cpu->r[30] + 0x00000000u;
|
|
/* 0222701C */ rbrew_write8(cpu->mem, _t11, (uint8_t)cpu->r[28]);
|
|
/* 02227020 */ _t12 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02227020 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02227020 */ if (_t13) goto L_02227024; else goto L_0222733C;
|
|
L_02227024: ; // 0x2227024
|
|
/* 02227024 */ cpu->r[7] = 0x10050000u;
|
|
/* 02227028 */ cpu->r[6] = 0x10050000u;
|
|
/* 0222702C */ _t14 = cpu->r[7] + 0xFFFFE99Cu;
|
|
/* 0222702C */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 02227030 */ cpu->r[27] = 0x00000000u;
|
|
/* 02227034 */ _t15 = cpu->r[6] + 0xFFFFE9A0u;
|
|
/* 02227034 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 02227038 */ cpu->r[29] = 0x10050000u;
|
|
L_0222703C: ; // 0x222703c
|
|
/* 0222703C */ cpu->r[4] = cpu->r[29] + 0xFFFFE9A4u;
|
|
/* 02227040 */ cpu->r[3] = cpu->r[1] + 0x000000B0u;
|
|
/* 02227044 */ cpu->r[5] = cpu->r[28];
|
|
/* 02227048 */ _t16 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 02227048 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02227048 */ if (_t17) goto L_0222704C; // else: addr-0 trap, fall-through
|
|
L_0222704C: ; // 0x222704c
|
|
/* 0222704C */ Gambit_fn_02227D08(cpu);
|
|
/* 02227050 */ cpu->r[4] = cpu->r[3];
|
|
/* 02227054 */ cpu->r[3] = cpu->r[26];
|
|
/* 02227058 */ Gambit_fn_029807A8(cpu);
|
|
/* 0222705C */ cpu->r[24] = cpu->r[3];
|
|
/* 02227060 */ /* nop */
|
|
/* 02227064 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0xFFFFFFFFu);
|
|
/* 02227068 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02227068 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02227068 */ if (_t19) goto L_02227330; else goto L_0222706C;
|
|
L_0222706C: ; // 0x222706c
|
|
/* 0222706C */ /* nop */
|
|
/* 02227070 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 02227074 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02227074 */ _t21 = _t20 & 0x00000001u;
|
|
/* 02227074 */ if (_t21) goto L_02227330; else goto L_02227078;
|
|
L_02227078: ; // 0x2227078
|
|
/* 02227078 */ _t22 = cpu->r[30] + 0x00000000u;
|
|
/* 02227078 */ cpu->r[11] = rbrew_read8(cpu->mem, _t22);
|
|
/* 0222707C */ _t23 = cpu->r[30] + 0x00000001u;
|
|
/* 0222707C */ cpu->r[0] = rbrew_read8(cpu->mem, _t23);
|
|
/* 02227080 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[0]);
|
|
/* 02227084 */ _t24 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02227084 */ _t25 = _t24 & 0x00000001u;
|
|
/* 02227084 */ if (_t25) goto L_02227088; else goto L_02227330;
|
|
L_02227088: ; // 0x2227088
|
|
/* 02227088 */ /* nop */
|
|
/* 0222708C */ cpu->r[3] = cpu->r[26];
|
|
/* 02227090 */ cpu->r[4] = cpu->r[31];
|
|
/* 02227094 */ Gambit_fn_0297FC7C(cpu);
|
|
/* 02227098 */ _t26 = cpu->r[26] + 0x0000001Cu;
|
|
/* 02227098 */ cpu->r[4] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0222709C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[4]);
|
|
/* 022270A0 */ cpu->r[12] = 0x00000000u;
|
|
/* 022270A4 */ _t27 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022270A4 */ _t28 = _t27 & 0x00000001u;
|
|
/* 022270A4 */ if (_t28) goto L_022270A8; else goto L_022270B4;
|
|
L_022270A8: ; // 0x22270a8
|
|
/* 022270A8 */ _t29 = cpu->r[26] + 0x00000024u;
|
|
/* 022270A8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t29);
|
|
/* 022270AC */ cpu->r[6] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 022270B0 */ _t30 = cpu->r[6] + cpu->r[7];
|
|
/* 022270B0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t30);
|
|
L_022270B4: ; // 0x22270b4
|
|
/* 022270B4 */ _t31 = cpu->r[12] + 0x00000000u;
|
|
/* 022270B4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t31);
|
|
/* 022270B8 */ _t32 = cpu->r[3] + 0x00000088u;
|
|
/* 022270B8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t32);
|
|
/* 022270BC */ _t33 = cpu->r[9] + 0x00000074u;
|
|
/* 022270BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 022270C0 */ cpu->ctr = cpu->r[0];
|
|
/* 022270C4 */ cpu->r[4] = cpu->r[1] + 0x00000080u;
|
|
/* 022270C8 */ /* nop */
|
|
/* 022270CC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022270D0 */ cpu->r[3] = cpu->r[1] + 0x00000074u;
|
|
/* 022270D4 */ cpu->r[4] = cpu->r[1] + 0x00000080u;
|
|
/* 022270D8 */ cpu->r[5] = 0x00000003u;
|
|
/* 022270DC */ Gambit_fn_0200FE00(cpu);
|
|
/* 022270E0 */ _t34 = cpu->r[1] + 0x00000074u;
|
|
/* 022270E0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t34);
|
|
/* 022270E4 */ _t35 = cpu->r[1] + 0x0000007Cu;
|
|
/* 022270E4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t35);
|
|
/* 022270E8 */ _t36 = cpu->r[1] + 0x00000038u;
|
|
/* 022270E8 */ rbrew_write32(cpu->mem, _t36, cpu->r[4]);
|
|
/* 022270EC */ _t37 = cpu->r[1] + 0x00000038u;
|
|
/* 022270EC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 022270F0 */ _t38 = cpu->r[30] + 0x00000000u;
|
|
/* 022270F0 */ cpu->r[8] = rbrew_read8(cpu->mem, _t38);
|
|
/* 022270F4 */ _t39 = cpu->r[1] + 0x00000078u;
|
|
/* 022270F4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t39);
|
|
/* 022270F8 */ cpu->r[7] = rbrew_rlwinm(cpu->r[8], 0x00000004u, 0x00000000u, 0x0000001Bu);
|
|
/* 022270FC */ _t40 = cpu->r[30] + 0x0000001Cu;
|
|
/* 022270FC */ cpu->r[9] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02227100 */ _t41 = cpu->r[1] + 0x00000040u;
|
|
/* 02227100 */ rbrew_write32(cpu->mem, _t41, cpu->r[6]);
|
|
/* 02227104 */ _t42 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02227104 */ rbrew_write32(cpu->mem, _t42, cpu->r[5]);
|
|
/* 02227108 */ _t43 = cpu->r[9] + cpu->r[7];
|
|
/* 02227108 */ rbrew_write32(cpu->mem, _t43, cpu->r[11]);
|
|
/* 0222710C */ _t44 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0222710C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 02227110 */ cpu->r[8] = cpu->r[9] + cpu->r[7];
|
|
/* 02227114 */ _t45 = cpu->r[8] + 0x00000004u;
|
|
/* 02227114 */ rbrew_write_f32(cpu->mem, _t45, cpu->f[12]);
|
|
/* 02227118 */ _t46 = cpu->r[1] + 0x00000040u;
|
|
/* 02227118 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 0222711C */ _t47 = cpu->r[8] + 0x00000008u;
|
|
/* 0222711C */ rbrew_write_f32(cpu->mem, _t47, cpu->f[13]);
|
|
/* 02227120 */ _t48 = cpu->r[30] + 0x00000000u;
|
|
/* 02227120 */ cpu->r[0] = rbrew_read8(cpu->mem, _t48);
|
|
/* 02227124 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000004u, 0x00000000u, 0x0000001Bu);
|
|
/* 02227128 */ _t49 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02227128 */ cpu->r[4] = rbrew_read32(cpu->mem, _t49);
|
|
/* 0222712C */ cpu->r[12] = cpu->r[4] + cpu->r[10];
|
|
/* 02227130 */ _t50 = cpu->r[12] + 0x0000000Cu;
|
|
/* 02227130 */ rbrew_write8(cpu->mem, _t50, (uint8_t)cpu->r[27]);
|
|
/* 02227134 */ _t51 = cpu->r[30] + 0x00000008u;
|
|
/* 02227134 */ cpu->r[5] = rbrew_read32(cpu->mem, _t51);
|
|
/* 02227138 */ _t52 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02227138 */ cpu->r[6] = rbrew_read32(cpu->mem, _t52);
|
|
/* 0222713C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], cpu->r[6]);
|
|
/* 02227140 */ _t53 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02227140 */ _t54 = _t53 & 0x00000001u;
|
|
/* 02227140 */ if (_t54) goto L_02227214; else goto L_02227144;
|
|
L_02227144: ; // 0x2227144
|
|
/* 02227144 */ cpu->r[4] = 0x00000000u;
|
|
/* 02227148 */ cpu->r[3] = cpu->r[4];
|
|
/* 0222714C */ Gambit_fn_023C0574(cpu);
|
|
/* 02227150 */ _t55 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02227150 */ rbrew_write_f32(cpu->mem, _t55, cpu->f[31]);
|
|
/* 02227154 */ _t56 = cpu->r[1] + 0x00000008u;
|
|
/* 02227154 */ rbrew_write_f32(cpu->mem, _t56, cpu->f[30]);
|
|
/* 02227158 */ /* nop */
|
|
/* 0222715C */ _t57 = cpu->r[1] + 0x00000018u;
|
|
/* 0222715C */ rbrew_write_f32(cpu->mem, _t57, cpu->f[31]);
|
|
/* 02227160 */ /* nop */
|
|
/* 02227164 */ _t58 = cpu->r[1] + 0x00000014u;
|
|
/* 02227164 */ rbrew_write_f32(cpu->mem, _t58, cpu->f[30]);
|
|
/* 02227168 */ /* nop */
|
|
/* 0222716C */ /* nop */
|
|
/* 02227170 */ _t59 = cpu->r[1] + 0x00000040u;
|
|
/* 02227170 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t59);
|
|
/* 02227174 */ /* nop */
|
|
/* 02227178 */ _t60 = cpu->r[1] + 0x00000044u;
|
|
/* 02227178 */ cpu->r[6] = rbrew_read32(cpu->mem, _t60);
|
|
/* 0222717C */ cpu->f[10] = cpu->f[0] + cpu->f[30];
|
|
/* 02227180 */ _t61 = cpu->r[1] + 0x00000048u;
|
|
/* 02227180 */ cpu->r[8] = rbrew_read32(cpu->mem, _t61);
|
|
/* 02227184 */ _t62 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02227184 */ rbrew_write_f32(cpu->mem, _t62, cpu->f[30]);
|
|
/* 02227188 */ /* nop */
|
|
/* 0222718C */ _t63 = cpu->r[1] + 0x00000010u;
|
|
/* 0222718C */ rbrew_write_f32(cpu->mem, _t63, cpu->f[30]);
|
|
/* 02227190 */ /* nop */
|
|
/* 02227194 */ _t64 = cpu->r[1] + 0x00000050u;
|
|
/* 02227194 */ cpu->r[0] = rbrew_read32(cpu->mem, _t64);
|
|
/* 02227198 */ cpu->f[13] = cpu->f[0] - cpu->f[30];
|
|
/* 0222719C */ _t65 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0222719C */ rbrew_write32(cpu->mem, _t65, cpu->r[6]);
|
|
/* 022271A0 */ _t66 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022271A0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t66);
|
|
/* 022271A4 */ _t67 = cpu->r[1] + 0x00000068u;
|
|
/* 022271A4 */ rbrew_write32(cpu->mem, _t67, cpu->r[0]);
|
|
/* 022271A8 */ _t68 = cpu->r[1] + 0x00000068u;
|
|
/* 022271A8 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t68);
|
|
/* 022271AC */ _t69 = cpu->r[1] + 0x00000060u;
|
|
/* 022271AC */ rbrew_write32(cpu->mem, _t69, cpu->r[8]);
|
|
/* 022271B0 */ _t70 = cpu->r[1] + 0x00000060u;
|
|
/* 022271B0 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t70);
|
|
/* 022271B4 */ _t71 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022271B4 */ rbrew_write_f32(cpu->mem, _t71, cpu->f[13]);
|
|
/* 022271B8 */ _t72 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022271B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t72);
|
|
/* 022271BC */ _t73 = cpu->r[1] + 0x00000020u;
|
|
/* 022271BC */ rbrew_write_f32(cpu->mem, _t73, cpu->f[0]);
|
|
/* 022271C0 */ _t74 = cpu->r[1] + 0x00000054u;
|
|
/* 022271C0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t74);
|
|
/* 022271C4 */ _t75 = cpu->r[1] + 0x00000064u;
|
|
/* 022271C4 */ rbrew_write32(cpu->mem, _t75, cpu->r[0]);
|
|
/* 022271C8 */ _t76 = cpu->r[1] + 0x00000064u;
|
|
/* 022271C8 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t76);
|
|
/* 022271CC */ _t77 = cpu->r[1] + 0x0000006Cu;
|
|
/* 022271CC */ rbrew_write32(cpu->mem, _t77, cpu->r[4]);
|
|
/* 022271D0 */ _t78 = cpu->r[1] + 0x0000006Cu;
|
|
/* 022271D0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t78);
|
|
/* 022271D4 */ _t79 = cpu->r[1] + 0x00000058u;
|
|
/* 022271D4 */ rbrew_write_f32(cpu->mem, _t79, cpu->f[10]);
|
|
/* 022271D8 */ _t80 = cpu->r[1] + 0x00000058u;
|
|
/* 022271D8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t80);
|
|
/* 022271DC */ _t81 = cpu->r[1] + 0x00000024u;
|
|
/* 022271DC */ rbrew_write_f32(cpu->mem, _t81, cpu->f[6]);
|
|
/* 022271E0 */ _t82 = cpu->r[1] + 0x00000070u;
|
|
/* 022271E0 */ rbrew_write32(cpu->mem, _t82, cpu->r[5]);
|
|
/* 022271E4 */ _t83 = cpu->r[1] + 0x00000070u;
|
|
/* 022271E4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t83);
|
|
/* 022271E8 */ cpu->r[3] = 0x00000000u;
|
|
/* 022271EC */ _t84 = cpu->r[1] + 0x00000030u;
|
|
/* 022271EC */ rbrew_write_f32(cpu->mem, _t84, cpu->f[9]);
|
|
/* 022271F0 */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 022271F4 */ _t85 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022271F4 */ rbrew_write_f32(cpu->mem, _t85, cpu->f[8]);
|
|
/* 022271F8 */ _t86 = cpu->r[1] + 0x00000028u;
|
|
/* 022271F8 */ rbrew_write_f32(cpu->mem, _t86, cpu->f[7]);
|
|
/* 022271FC */ _t87 = cpu->r[1] + 0x00000034u;
|
|
/* 022271FC */ rbrew_write_f32(cpu->mem, _t87, cpu->f[10]);
|
|
/* 02227200 */ Gambit_fn_023C05A4(cpu);
|
|
/* 02227204 */ _t88 = cpu->r[30] + 0x00000000u;
|
|
/* 02227204 */ cpu->r[5] = rbrew_read8(cpu->mem, _t88);
|
|
/* 02227208 */ cpu->r[5] = cpu->r[5] + 0x00000001u;
|
|
/* 0222720C */ _t89 = cpu->r[30] + 0x00000000u;
|
|
/* 0222720C */ rbrew_write8(cpu->mem, _t89, (uint8_t)cpu->r[5]);
|
|
/* 02227210 */ goto L_02227330;
|
|
L_02227214: ; // 0x2227214
|
|
/* 02227214 */ _t90 = cpu->r[30] + 0x00000014u;
|
|
/* 02227214 */ cpu->r[31] = rbrew_read32(cpu->mem, _t90);
|
|
/* 02227218 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0222721C */ _t91 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222721C */ _t92 = _t91 & 0x00000001u;
|
|
/* 0222721C */ if (_t92) goto L_02227228; else goto L_02227220;
|
|
L_02227220: ; // 0x2227220
|
|
/* 02227220 */ _t93 = cpu->r[31] + 0x00000000u;
|
|
/* 02227220 */ cpu->r[7] = rbrew_read32(cpu->mem, _t93);
|
|
/* 02227224 */ _t94 = cpu->r[30] + 0x00000014u;
|
|
/* 02227224 */ rbrew_write32(cpu->mem, _t94, cpu->r[7]);
|
|
L_02227228: ; // 0x2227228
|
|
/* 02227228 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0222722C */ cpu->r[3] = cpu->r[31];
|
|
/* 02227230 */ _t95 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02227230 */ _t96 = _t95 & 0x00000001u;
|
|
/* 02227230 */ if (_t96) goto L_0222723C; else goto L_02227234;
|
|
L_02227234: ; // 0x2227234
|
|
/* 02227234 */ Gambit_fn_023C0104(cpu);
|
|
/* 02227238 */ cpu->r[31] = cpu->r[3];
|
|
L_0222723C: ; // 0x222723c
|
|
/* 0222723C */ _t97 = cpu->r[30] + 0x00000008u;
|
|
/* 0222723C */ cpu->r[7] = rbrew_read32(cpu->mem, _t97);
|
|
/* 02227240 */ _t98 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02227240 */ cpu->r[8] = rbrew_read32(cpu->mem, _t98);
|
|
/* 02227244 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], cpu->r[8]);
|
|
/* 02227248 */ _t99 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02227248 */ _t100 = _t99 & 0x00000001u;
|
|
/* 02227248 */ if (_t100) goto L_0222724C; else goto L_02227264;
|
|
L_0222724C: ; // 0x222724c
|
|
/* 0222724C */ _t101 = cpu->r[30] + 0x00000010u;
|
|
/* 0222724C */ cpu->r[0] = rbrew_read32(cpu->mem, _t101);
|
|
/* 02227250 */ cpu->r[9] = rbrew_rlwinm(cpu->r[7], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02227254 */ _t102 = cpu->r[9] + cpu->r[0];
|
|
/* 02227254 */ rbrew_write32(cpu->mem, _t102, cpu->r[31]);
|
|
/* 02227258 */ _t103 = cpu->r[30] + 0x00000008u;
|
|
/* 02227258 */ cpu->r[11] = rbrew_read32(cpu->mem, _t103);
|
|
/* 0222725C */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 02227260 */ _t104 = cpu->r[30] + 0x00000008u;
|
|
/* 02227260 */ rbrew_write32(cpu->mem, _t104, cpu->r[11]);
|
|
L_02227264: ; // 0x2227264
|
|
/* 02227264 */ cpu->r[3] = cpu->r[31];
|
|
/* 02227268 */ cpu->r[4] = 0x00000000u;
|
|
/* 0222726C */ Gambit_fn_023C0574(cpu);
|
|
/* 02227270 */ _t105 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02227270 */ rbrew_write_f32(cpu->mem, _t105, cpu->f[31]);
|
|
/* 02227274 */ _t106 = cpu->r[1] + 0x00000008u;
|
|
/* 02227274 */ rbrew_write_f32(cpu->mem, _t106, cpu->f[30]);
|
|
/* 02227278 */ /* nop */
|
|
/* 0222727C */ _t107 = cpu->r[1] + 0x00000018u;
|
|
/* 0222727C */ rbrew_write_f32(cpu->mem, _t107, cpu->f[31]);
|
|
/* 02227280 */ /* nop */
|
|
/* 02227284 */ _t108 = cpu->r[1] + 0x00000014u;
|
|
/* 02227284 */ rbrew_write_f32(cpu->mem, _t108, cpu->f[30]);
|
|
/* 02227288 */ /* nop */
|
|
/* 0222728C */ /* nop */
|
|
/* 02227290 */ _t109 = cpu->r[1] + 0x00000040u;
|
|
/* 02227290 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t109);
|
|
/* 02227294 */ /* nop */
|
|
/* 02227298 */ _t110 = cpu->r[1] + 0x00000044u;
|
|
/* 02227298 */ cpu->r[6] = rbrew_read32(cpu->mem, _t110);
|
|
/* 0222729C */ cpu->f[10] = cpu->f[0] + cpu->f[30];
|
|
/* 022272A0 */ _t111 = cpu->r[1] + 0x00000048u;
|
|
/* 022272A0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t111);
|
|
/* 022272A4 */ cpu->f[13] = cpu->f[0] - cpu->f[30];
|
|
/* 022272A8 */ _t112 = cpu->r[1] + 0x00000010u;
|
|
/* 022272A8 */ rbrew_write_f32(cpu->mem, _t112, cpu->f[30]);
|
|
/* 022272AC */ /* nop */
|
|
/* 022272B0 */ _t113 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022272B0 */ rbrew_write_f32(cpu->mem, _t113, cpu->f[30]);
|
|
/* 022272B4 */ /* nop */
|
|
/* 022272B8 */ _t114 = cpu->r[1] + 0x00000050u;
|
|
/* 022272B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t114);
|
|
/* 022272BC */ _t115 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022272BC */ rbrew_write32(cpu->mem, _t115, cpu->r[6]);
|
|
/* 022272C0 */ _t116 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022272C0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t116);
|
|
/* 022272C4 */ _t117 = cpu->r[1] + 0x00000068u;
|
|
/* 022272C4 */ rbrew_write32(cpu->mem, _t117, cpu->r[0]);
|
|
/* 022272C8 */ _t118 = cpu->r[1] + 0x00000068u;
|
|
/* 022272C8 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t118);
|
|
/* 022272CC */ _t119 = cpu->r[1] + 0x00000060u;
|
|
/* 022272CC */ rbrew_write32(cpu->mem, _t119, cpu->r[8]);
|
|
/* 022272D0 */ _t120 = cpu->r[1] + 0x00000060u;
|
|
/* 022272D0 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t120);
|
|
/* 022272D4 */ _t121 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022272D4 */ rbrew_write_f32(cpu->mem, _t121, cpu->f[13]);
|
|
/* 022272D8 */ _t122 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022272D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t122);
|
|
/* 022272DC */ _t123 = cpu->r[1] + 0x00000020u;
|
|
/* 022272DC */ rbrew_write_f32(cpu->mem, _t123, cpu->f[0]);
|
|
/* 022272E0 */ _t124 = cpu->r[1] + 0x00000054u;
|
|
/* 022272E0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t124);
|
|
/* 022272E4 */ _t125 = cpu->r[1] + 0x00000064u;
|
|
/* 022272E4 */ rbrew_write32(cpu->mem, _t125, cpu->r[0]);
|
|
/* 022272E8 */ _t126 = cpu->r[1] + 0x00000064u;
|
|
/* 022272E8 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t126);
|
|
/* 022272EC */ _t127 = cpu->r[1] + 0x0000006Cu;
|
|
/* 022272EC */ rbrew_write32(cpu->mem, _t127, cpu->r[4]);
|
|
/* 022272F0 */ _t128 = cpu->r[1] + 0x0000006Cu;
|
|
/* 022272F0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t128);
|
|
/* 022272F4 */ _t129 = cpu->r[1] + 0x00000058u;
|
|
/* 022272F4 */ rbrew_write_f32(cpu->mem, _t129, cpu->f[10]);
|
|
/* 022272F8 */ _t130 = cpu->r[1] + 0x00000058u;
|
|
/* 022272F8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t130);
|
|
/* 022272FC */ _t131 = cpu->r[1] + 0x00000070u;
|
|
/* 022272FC */ rbrew_write32(cpu->mem, _t131, cpu->r[5]);
|
|
/* 02227300 */ _t132 = cpu->r[1] + 0x00000070u;
|
|
/* 02227300 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t132);
|
|
/* 02227304 */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 02227308 */ _t133 = cpu->r[1] + 0x00000024u;
|
|
/* 02227308 */ rbrew_write_f32(cpu->mem, _t133, cpu->f[6]);
|
|
/* 0222730C */ _t134 = cpu->r[1] + 0x00000030u;
|
|
/* 0222730C */ rbrew_write_f32(cpu->mem, _t134, cpu->f[9]);
|
|
/* 02227310 */ cpu->r[3] = cpu->r[31];
|
|
/* 02227314 */ _t135 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02227314 */ rbrew_write_f32(cpu->mem, _t135, cpu->f[8]);
|
|
/* 02227318 */ _t136 = cpu->r[1] + 0x00000028u;
|
|
/* 02227318 */ rbrew_write_f32(cpu->mem, _t136, cpu->f[7]);
|
|
/* 0222731C */ _t137 = cpu->r[1] + 0x00000034u;
|
|
/* 0222731C */ rbrew_write_f32(cpu->mem, _t137, cpu->f[10]);
|
|
/* 02227320 */ Gambit_fn_023C05A4(cpu);
|
|
/* 02227324 */ _t138 = cpu->r[30] + 0x00000000u;
|
|
/* 02227324 */ cpu->r[5] = rbrew_read8(cpu->mem, _t138);
|
|
/* 02227328 */ cpu->r[5] = cpu->r[5] + 0x00000001u;
|
|
/* 0222732C */ _t139 = cpu->r[30] + 0x00000000u;
|
|
/* 0222732C */ rbrew_write8(cpu->mem, _t139, (uint8_t)cpu->r[5]);
|
|
L_02227330: ; // 0x2227330
|
|
/* 02227330 */ cpu->r[25] = cpu->r[25] + 0xFFFFFFFFu;
|
|
/* 02227330 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 02227334 */ cpu->r[28] = cpu->r[28] + 0x00000001u;
|
|
/* 02227338 */ _t140 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02227338 */ _t141 = _t140 & 0x00000001u;
|
|
/* 02227338 */ if (_t141) goto L_0222733C; else goto L_0222703C;
|
|
L_0222733C: ; // 0x222733c
|
|
/* 0222733C */ /* nop */
|
|
/* 02227340 */ _t142 = cpu->r[1] + 0x000001E8u;
|
|
/* 02227340 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t142);
|
|
/* 02227344 */ _t143 = cpu->r[1] + 0x000001F8u;
|
|
/* 02227344 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t143);
|
|
/* 02227348 */ _t144 = cpu->r[1] + 0x000001E0u;
|
|
/* 02227348 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t144);
|
|
/* 0222734C */ _t145 = cpu->r[1] + 0x000001F0u;
|
|
/* 0222734C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t145);
|
|
/* 02227350 */ _t146 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02227350 */ _t147 = _t146 & 0x00000001u;
|
|
/* 02227350 */ if (_t147) goto L_02227354; // else: addr-0 trap, fall-through
|
|
L_02227354: ; // 0x2227354
|
|
/* 02227354 */ _t148 = cpu->r[1] + 0x00000204u;
|
|
/* 02227354 */ cpu->r[0] = rbrew_read32(cpu->mem, _t148);
|
|
/* 02227358 */ cpu->lr = cpu->r[0];
|
|
/* 0222735C */ cpu->r[1] = cpu->r[1] + 0x00000200u;
|
|
/* 02227360 */ return;
|
|
}
|
|
|
|
// fn_02227364 @ 0x2227364
|
|
void Gambit_fn_02227364(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26;
|
|
|
|
L_02227364: ; // 0x2227364
|
|
/* 02227364 */ cpu->r[0] = cpu->lr;
|
|
/* 02227368 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02227368 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02227368 */ cpu->r[1] = _t0;
|
|
/* 0222736C */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 0222736C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02227370 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02227370 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 02227374 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02227374 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 02227378 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 02227378 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 0222737C */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0222737C */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02227380 */ _t6 = cpu->r[3] + 0x00000034u;
|
|
/* 02227380 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02227384 */ Gambit_fn_02226FC8(cpu);
|
|
/* 02227388 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0222738C */ _t7 = cpu->r[12] + 0x00006000u;
|
|
/* 0222738C */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02227390 */ _t8 = cpu->r[12] + 0x00000274u;
|
|
/* 02227390 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02227394 */ _t9 = cpu->r[12] + 0x00000030u;
|
|
/* 02227394 */ cpu->r[11] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02227398 */ _t10 = cpu->r[11] + 0x0000015Cu;
|
|
/* 02227398 */ cpu->r[11] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0222739C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 022273A0 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022273A0 */ _t12 = _t11 & 0x00000001u;
|
|
/* 022273A0 */ if (_t12) goto L_022273FC; else goto L_022273A4;
|
|
L_022273A4: ; // 0x22273a4
|
|
/* 022273A4 */ _t13 = cpu->r[11] + 0x00000008u;
|
|
/* 022273A4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022273A8 */ _t14 = cpu->r[10] + 0x0000000Cu;
|
|
/* 022273A8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022273AC */ _t15 = cpu->r[10] + 0x00000004u;
|
|
/* 022273AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022273B0 */ cpu->r[31] = cpu->r[10] - cpu->r[30];
|
|
/* 022273B4 */ cpu->r[29] = cpu->r[0] - cpu->r[30];
|
|
/* 022273B8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[31]);
|
|
/* 022273BC */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022273BC */ _t17 = _t16 & 0x00000001u;
|
|
/* 022273BC */ if (_t17) goto L_022273FC; else goto L_022273C0;
|
|
L_022273C0: ; // 0x22273c0
|
|
/* 022273C0 */ cpu->r[28] = 0x101D0000u;
|
|
L_022273C4: ; // 0x22273c4
|
|
/* 022273C4 */ _t18 = cpu->r[28] + 0xFFFF9918u;
|
|
/* 022273C4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022273C8 */ Gambit_fn_02830138(cpu);
|
|
/* 022273CC */ cpu->r[4] = 0x00000000u;
|
|
/* 022273D0 */ cpu->r[7] = 0x00000001u;
|
|
/* 022273D4 */ cpu->r[8] = cpu->r[3];
|
|
/* 022273D8 */ cpu->r[5] = cpu->r[4];
|
|
/* 022273DC */ cpu->r[3] = cpu->r[29];
|
|
/* 022273E0 */ cpu->r[6] = cpu->r[4];
|
|
/* 022273E4 */ Gambit_fn_02226138(cpu);
|
|
/* 022273E8 */ cpu->r[9] = cpu->r[29] + cpu->r[30];
|
|
/* 022273EC */ _t19 = cpu->r[9] + 0x00000004u;
|
|
/* 022273EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022273F0 */ cpu->r[29] = cpu->r[0] - cpu->r[30];
|
|
/* 022273F4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[31]);
|
|
/* 022273F8 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022273F8 */ _t21 = _t20 & 0x00000001u;
|
|
/* 022273F8 */ if (_t21) goto L_022273FC; else goto L_022273C4;
|
|
L_022273FC: ; // 0x22273fc
|
|
/* 022273FC */ _t22 = cpu->r[1] + 0x00000008u;
|
|
/* 022273FC */ cpu->r[28] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02227400 */ _t23 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02227400 */ cpu->r[29] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02227404 */ _t24 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02227404 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02227408 */ _t25 = cpu->r[1] + 0x00000010u;
|
|
/* 02227408 */ cpu->r[30] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0222740C */ cpu->lr = cpu->r[0];
|
|
/* 02227410 */ _t26 = cpu->r[1] + 0x00000014u;
|
|
/* 02227410 */ cpu->r[31] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02227414 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02227418 */ return;
|
|
}
|
|
|
|
// fn_02227368 @ 0x2227368
|
|
void Gambit_fn_02227368(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26;
|
|
|
|
L_02227368: ; // 0x2227368
|
|
/* 02227368 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02227368 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02227368 */ cpu->r[1] = _t0;
|
|
/* 0222736C */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 0222736C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02227370 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02227370 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 02227374 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02227374 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 02227378 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 02227378 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 0222737C */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0222737C */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02227380 */ _t6 = cpu->r[3] + 0x00000034u;
|
|
/* 02227380 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02227384 */ Gambit_fn_02226FC8(cpu);
|
|
/* 02227388 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0222738C */ _t7 = cpu->r[12] + 0x00006000u;
|
|
/* 0222738C */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02227390 */ _t8 = cpu->r[12] + 0x00000274u;
|
|
/* 02227390 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02227394 */ _t9 = cpu->r[12] + 0x00000030u;
|
|
/* 02227394 */ cpu->r[11] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02227398 */ _t10 = cpu->r[11] + 0x0000015Cu;
|
|
/* 02227398 */ cpu->r[11] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0222739C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 022273A0 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022273A0 */ _t12 = _t11 & 0x00000001u;
|
|
/* 022273A0 */ if (_t12) goto L_022273FC; else goto L_022273A4;
|
|
L_022273A4: ; // 0x22273a4
|
|
/* 022273A4 */ _t13 = cpu->r[11] + 0x00000008u;
|
|
/* 022273A4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022273A8 */ _t14 = cpu->r[10] + 0x0000000Cu;
|
|
/* 022273A8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022273AC */ _t15 = cpu->r[10] + 0x00000004u;
|
|
/* 022273AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022273B0 */ cpu->r[31] = cpu->r[10] - cpu->r[30];
|
|
/* 022273B4 */ cpu->r[29] = cpu->r[0] - cpu->r[30];
|
|
/* 022273B8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[31]);
|
|
/* 022273BC */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022273BC */ _t17 = _t16 & 0x00000001u;
|
|
/* 022273BC */ if (_t17) goto L_022273FC; else goto L_022273C0;
|
|
L_022273C0: ; // 0x22273c0
|
|
/* 022273C0 */ cpu->r[28] = 0x101D0000u;
|
|
L_022273C4: ; // 0x22273c4
|
|
/* 022273C4 */ _t18 = cpu->r[28] + 0xFFFF9918u;
|
|
/* 022273C4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022273C8 */ Gambit_fn_02830138(cpu);
|
|
/* 022273CC */ cpu->r[4] = 0x00000000u;
|
|
/* 022273D0 */ cpu->r[7] = 0x00000001u;
|
|
/* 022273D4 */ cpu->r[8] = cpu->r[3];
|
|
/* 022273D8 */ cpu->r[5] = cpu->r[4];
|
|
/* 022273DC */ cpu->r[3] = cpu->r[29];
|
|
/* 022273E0 */ cpu->r[6] = cpu->r[4];
|
|
/* 022273E4 */ Gambit_fn_02226138(cpu);
|
|
/* 022273E8 */ cpu->r[9] = cpu->r[29] + cpu->r[30];
|
|
/* 022273EC */ _t19 = cpu->r[9] + 0x00000004u;
|
|
/* 022273EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022273F0 */ cpu->r[29] = cpu->r[0] - cpu->r[30];
|
|
/* 022273F4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[31]);
|
|
/* 022273F8 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022273F8 */ _t21 = _t20 & 0x00000001u;
|
|
/* 022273F8 */ if (_t21) goto L_022273FC; else goto L_022273C4;
|
|
L_022273FC: ; // 0x22273fc
|
|
/* 022273FC */ _t22 = cpu->r[1] + 0x00000008u;
|
|
/* 022273FC */ cpu->r[28] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02227400 */ _t23 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02227400 */ cpu->r[29] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02227404 */ _t24 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02227404 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02227408 */ _t25 = cpu->r[1] + 0x00000010u;
|
|
/* 02227408 */ cpu->r[30] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0222740C */ cpu->lr = cpu->r[0];
|
|
/* 02227410 */ _t26 = cpu->r[1] + 0x00000014u;
|
|
/* 02227410 */ cpu->r[31] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02227414 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02227418 */ return;
|
|
}
|
|
|
|
// fn_0222741C @ 0x222741c
|
|
void Gambit_fn_0222741C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_0222741C: ; // 0x222741c
|
|
/* 0222741C */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 0222741C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0222741C */ cpu->r[1] = _t0;
|
|
/* 02227420 */ /* nop */
|
|
/* 02227424 */ cpu->r[0] = cpu->lr;
|
|
/* 02227428 */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 02227428 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0222742C */ cpu->r[29] = cpu->r[6];
|
|
/* 02227430 */ cpu->r[31] = cpu->r[4];
|
|
/* 02227434 */ cpu->r[27] = cpu->r[3];
|
|
/* 02227438 */ _t2 = cpu->r[27] + 0x00000008u;
|
|
/* 02227438 */ cpu->r[11] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0222743C */ cpu->r[28] = cpu->r[5];
|
|
/* 02227440 */ cpu->r[30] = cpu->r[7];
|
|
/* 02227444 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[11]);
|
|
/* 02227448 */ cpu->r[3] = 0x00000000u;
|
|
/* 0222744C */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0222744C */ _t4 = _t3 & 0x00000001u;
|
|
/* 0222744C */ if (_t4) goto L_02227450; else goto L_0222745C;
|
|
L_02227450: ; // 0x2227450
|
|
/* 02227450 */ _t5 = cpu->r[27] + 0x00000010u;
|
|
/* 02227450 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02227454 */ cpu->r[12] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02227458 */ _t6 = cpu->r[12] + cpu->r[0];
|
|
/* 02227458 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
L_0222745C: ; // 0x222745c
|
|
/* 0222745C */ Gambit_fn_023E4504(cpu);
|
|
/* 02227460 */ _t7 = cpu->r[27] + 0x00000008u;
|
|
/* 02227460 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02227464 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[11]);
|
|
/* 02227468 */ cpu->r[3] = 0x00000000u;
|
|
/* 0222746C */ _t8 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0222746C */ _t9 = _t8 & 0x00000001u;
|
|
/* 0222746C */ if (_t9) goto L_02227470; else goto L_0222747C;
|
|
L_02227470: ; // 0x2227470
|
|
/* 02227470 */ _t10 = cpu->r[27] + 0x00000010u;
|
|
/* 02227470 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02227474 */ cpu->r[12] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02227478 */ _t11 = cpu->r[12] + cpu->r[0];
|
|
/* 02227478 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
L_0222747C: ; // 0x222747c
|
|
/* 0222747C */ cpu->r[6] = cpu->r[30];
|
|
/* 02227480 */ cpu->r[5] = cpu->r[29];
|
|
/* 02227484 */ cpu->r[4] = cpu->r[28];
|
|
/* 02227488 */ Gambit_fn_023C05C8(cpu);
|
|
/* 0222748C */ /* nop */
|
|
/* 02227490 */ _t12 = cpu->r[1] + 0x00000024u;
|
|
/* 02227490 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02227494 */ cpu->lr = cpu->r[0];
|
|
/* 02227498 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 0222749C */ return;
|
|
}
|
|
|
|
// fn_022274A0 @ 0x22274a0
|
|
void Gambit_fn_022274A0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _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;
|
|
|
|
L_022274A0: ; // 0x22274a0
|
|
/* 022274A0 */ _t0 = cpu->r[1] + 0xFFFFFF68u;
|
|
/* 022274A0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022274A0 */ cpu->r[1] = _t0;
|
|
/* 022274A4 */ /* nop */
|
|
/* 022274A8 */ _t1 = cpu->r[1] + 0x00000088u;
|
|
/* 022274A8 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 022274AC */ /* nop */
|
|
/* 022274B0 */ _t2 = cpu->r[1] + 0x00000078u;
|
|
/* 022274B0 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[30]);
|
|
/* 022274B4 */ /* nop */
|
|
/* 022274B8 */ _t3 = cpu->r[1] + 0x00000090u;
|
|
/* 022274B8 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 022274BC */ cpu->r[0] = cpu->lr;
|
|
/* 022274C0 */ _t4 = cpu->r[1] + 0x0000009Cu;
|
|
/* 022274C0 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 022274C4 */ _t5 = cpu->r[1] + 0x00000080u;
|
|
/* 022274C4 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[30]);
|
|
/* 022274C8 */ cpu->r[0] = 0x88880000u;
|
|
/* 022274CC */ cpu->r[31] = cpu->r[3];
|
|
/* 022274D0 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 022274D0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022274D4 */ cpu->r[0] = cpu->r[0] | 0x00008889u;
|
|
/* 022274D8 */ /* nop */
|
|
/* 022274DC */ cpu->r[9] = rbrew_rlwinm(cpu->r[9], 0x0000001Au, 0x00000006u, 0x0000001Fu);
|
|
/* 022274E0 */ cpu->r[9] = (uint32_t)((int32_t)cpu->r[9] * (int32_t)0x00000078u);
|
|
/* 022274E4 */ cpu->r[6] = cpu->r[7] + 0x00000001u;
|
|
/* 022274E8 */ cpu->r[8] = cpu->r[7] - cpu->r[9];
|
|
/* 022274E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 022274EC */ _t7 = cpu->r[31] + 0x00000004u;
|
|
/* 022274EC */ rbrew_write32(cpu->mem, _t7, cpu->r[6]);
|
|
/* 022274F0 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022274F0 */ _t9 = _t8 & 0x00000001u;
|
|
/* 022274F0 */ if (_t9) goto L_022274F4; else goto L_0222766C;
|
|
L_022274F4: ; // 0x22274f4
|
|
/* 022274F4 */ _t10 = cpu->r[31] + 0x00000000u;
|
|
/* 022274F4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t10);
|
|
/* 022274F8 */ cpu->r[12] = 0x101C0000u;
|
|
/* 022274FC */ _t11 = cpu->r[12] + 0x00006000u;
|
|
/* 022274FC */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02227500 */ cpu->r[23] = 0x00000000u;
|
|
/* 02227504 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], cpu->r[0]);
|
|
/* 02227508 */ _t12 = cpu->r[12] + 0x00000274u;
|
|
/* 02227508 */ cpu->r[22] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0222750C */ _t13 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0222750C */ _t14 = _t13 & 0x00000001u;
|
|
/* 0222750C */ if (_t14) goto L_02227510; else goto L_0222766C;
|
|
L_02227510: ; // 0x2227510
|
|
/* 02227510 */ cpu->r[7] = 0x10050000u;
|
|
/* 02227514 */ cpu->r[6] = 0x10050000u;
|
|
/* 02227518 */ cpu->r[24] = 0x00000000u;
|
|
/* 0222751C */ _t15 = cpu->r[7] + 0xFFFFE9B4u;
|
|
/* 0222751C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 02227520 */ cpu->r[30] = 0x000000FEu;
|
|
/* 02227524 */ cpu->r[28] = 0x101C0000u;
|
|
/* 02227528 */ _t16 = cpu->r[6] + 0xFFFFE9B8u;
|
|
/* 02227528 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 0222752C */ cpu->r[29] = cpu->r[24];
|
|
/* 02227530 */ cpu->r[27] = cpu->r[1] + 0x00000038u;
|
|
/* 02227534 */ cpu->r[26] = 0x101D0000u;
|
|
/* 02227538 */ cpu->r[25] = 0x00000001u;
|
|
L_0222753C: ; // 0x222753c
|
|
/* 0222753C */ _t17 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0222753C */ cpu->r[12] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02227540 */ cpu->r[11] = cpu->r[12] + cpu->r[24];
|
|
/* 02227544 */ _t18 = cpu->r[11] + 0x0000000Cu;
|
|
/* 02227544 */ cpu->r[10] = rbrew_read8(cpu->mem, _t18);
|
|
/* 02227548 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0222754C */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222754C */ _t20 = _t19 & 0x00000001u;
|
|
/* 0222754C */ if (_t20) goto L_02227550; else goto L_0222765C;
|
|
L_02227550: ; // 0x2227550
|
|
/* 02227550 */ _t21 = cpu->r[12] + cpu->r[24];
|
|
/* 02227550 */ cpu->r[5] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02227554 */ cpu->r[11] = cpu->r[12] + cpu->r[24];
|
|
/* 02227558 */ _t22 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02227558 */ rbrew_write32(cpu->mem, _t22, cpu->r[5]);
|
|
/* 0222755C */ _t23 = cpu->r[11] + 0x00000004u;
|
|
/* 0222755C */ cpu->r[6] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02227560 */ cpu->r[5] = cpu->r[1] + 0x00000028u;
|
|
/* 02227564 */ cpu->r[3] = cpu->r[31];
|
|
/* 02227568 */ cpu->r[4] = cpu->r[23];
|
|
/* 0222756C */ _t24 = cpu->r[1] + 0x00000040u;
|
|
/* 0222756C */ rbrew_write32(cpu->mem, _t24, cpu->r[6]);
|
|
/* 02227570 */ _t25 = cpu->r[11] + 0x00000008u;
|
|
/* 02227570 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02227574 */ cpu->r[6] = cpu->r[1] + 0x0000002Cu;
|
|
/* 02227578 */ cpu->r[7] = cpu->r[1] + 0x00000030u;
|
|
/* 0222757C */ _t26 = cpu->r[1] + 0x00000044u;
|
|
/* 0222757C */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 02227580 */ Gambit_fn_0222741C(cpu);
|
|
/* 02227584 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02227588 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02227588 */ _t28 = _t27 & 0x00000001u;
|
|
/* 02227588 */ if (_t28) goto L_02227658; else goto L_0222758C;
|
|
L_0222758C: ; // 0x222758c
|
|
/* 0222758C */ _t29 = cpu->r[1] + 0x00000028u;
|
|
/* 0222758C */ cpu->r[11] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02227590 */ _t30 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02227590 */ cpu->r[0] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02227594 */ cpu->r[8] = cpu->r[11] + cpu->r[0];
|
|
/* 02227598 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], 0x00000005u);
|
|
/* 0222759C */ _t31 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0222759C */ _t32 = _t31 & 0x00000001u;
|
|
/* 0222759C */ if (_t32) goto L_022275A0; else goto L_02227658;
|
|
L_022275A0: ; // 0x22275a0
|
|
/* 022275A0 */ _t33 = cpu->r[1] + 0x00000030u;
|
|
/* 022275A0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t33);
|
|
/* 022275A4 */ cpu->r[10] = rbrew_rlwinm(cpu->r[12], 0x00000001u, 0x00000000u, 0x0000001Eu);
|
|
/* 022275A8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[10]);
|
|
/* 022275AC */ _t34 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022275AC */ _t35 = _t34 & 0x00000001u;
|
|
/* 022275AC */ if (_t35) goto L_022275B0; else goto L_02227658;
|
|
L_022275B0: ; // 0x22275b0
|
|
/* 022275B0 */ cpu->r[0] = cpu->r[11] - cpu->r[0];
|
|
/* 022275B4 */ cpu->r[5] = cpu->r[0] - cpu->r[0];
|
|
/* 022275B8 */ _t36 = cpu->r[31] + 0x0000001Cu;
|
|
/* 022275B8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t36);
|
|
/* 022275BC */ cpu->r[6] = rbrew_rlwinm(cpu->r[23], 0x00000004u, 0x00000000u, 0x0000001Bu);
|
|
/* 022275C0 */ cpu->r[0] = (uint32_t)(-(int32_t)cpu->r[5]);
|
|
/* 022275C4 */ cpu->r[7] = cpu->r[8] + cpu->r[6];
|
|
/* 022275C8 */ _t37 = cpu->r[1] + 0x00000038u;
|
|
/* 022275C8 */ rbrew_write32(cpu->mem, _t37, cpu->r[0]);
|
|
/* 022275CC */ _t38 = cpu->r[7] + 0x0000000Cu;
|
|
/* 022275CC */ rbrew_write8(cpu->mem, _t38, (uint8_t)cpu->r[25]);
|
|
/* 022275D0 */ _t39 = cpu->r[28] + 0x000054C0u;
|
|
/* 022275D0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t39);
|
|
/* 022275D4 */ _t40 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022275D4 */ rbrew_write_f32(cpu->mem, _t40, cpu->f[31]);
|
|
/* 022275D8 */ cpu->r[9] = cpu->r[22] + cpu->r[10];
|
|
/* 022275DC */ _t41 = cpu->r[1] + 0x00000020u;
|
|
/* 022275DC */ rbrew_write_f32(cpu->mem, _t41, cpu->f[30]);
|
|
/* 022275E0 */ _t42 = cpu->r[1] + 0x00000024u;
|
|
/* 022275E0 */ rbrew_write_f32(cpu->mem, _t42, cpu->f[31]);
|
|
/* 022275E4 */ _t43 = cpu->r[9] + 0x00000104u;
|
|
/* 022275E4 */ cpu->r[4] = rbrew_read8(cpu->mem, _t43);
|
|
/* 022275E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x000000FFu);
|
|
/* 022275EC */ _t44 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022275EC */ _t45 = _t44 & 0x00000001u;
|
|
/* 022275EC */ if (_t45) goto L_02227658; else goto L_022275F0;
|
|
L_022275F0: ; // 0x22275f0
|
|
/* 022275F0 */ cpu->r[7] = cpu->r[1] + 0x0000001Cu;
|
|
/* 022275F4 */ cpu->r[6] = cpu->r[1] + 0x0000003Cu;
|
|
/* 022275F8 */ cpu->r[5] = 0x00000001u;
|
|
/* 022275FC */ cpu->r[3] = cpu->r[22];
|
|
/* 02227600 */ Gambit_fn_021F000C(cpu);
|
|
/* 02227604 */ cpu->r[21] = cpu->r[3];
|
|
/* 02227604 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], 0x00000000u);
|
|
/* 02227608 */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02227608 */ _t47 = _t46 & 0x00000001u;
|
|
/* 02227608 */ if (_t47) goto L_02227658; else goto L_0222760C;
|
|
L_0222760C: ; // 0x222760c
|
|
/* 0222760C */ _t48 = cpu->r[27] + 0x00000000u;
|
|
/* 0222760C */ cpu->r[0] = rbrew_read32(cpu->mem, _t48);
|
|
/* 02227610 */ _t49 = cpu->r[26] + 0xFFFF9918u;
|
|
/* 02227610 */ cpu->r[3] = rbrew_read32(cpu->mem, _t49);
|
|
/* 02227614 */ _t50 = cpu->r[1] + 0x00000034u;
|
|
/* 02227614 */ rbrew_write32(cpu->mem, _t50, cpu->r[0]);
|
|
/* 02227618 */ Gambit_fn_02830138(cpu);
|
|
/* 0222761C */ _t51 = cpu->r[21] + 0x00000054u;
|
|
/* 0222761C */ cpu->r[5] = rbrew_read32(cpu->mem, _t51);
|
|
/* 02227620 */ cpu->r[4] = 0x00000000u;
|
|
/* 02227624 */ _t52 = cpu->r[21] + 0x00000058u;
|
|
/* 02227624 */ cpu->r[6] = rbrew_read32(cpu->mem, _t52);
|
|
/* 02227628 */ cpu->r[0] = cpu->r[1] + 0x00000034u;
|
|
/* 0222762C */ _t53 = cpu->r[1] + 0x00000008u;
|
|
/* 0222762C */ rbrew_write32(cpu->mem, _t53, cpu->r[3]);
|
|
/* 02227630 */ cpu->r[3] = cpu->r[21];
|
|
/* 02227634 */ _t54 = cpu->r[1] + 0x00000010u;
|
|
/* 02227634 */ rbrew_write32(cpu->mem, _t54, cpu->r[0]);
|
|
/* 02227638 */ cpu->r[7] = cpu->r[1] + 0x0000003Cu;
|
|
/* 0222763C */ _t55 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222763C */ rbrew_write32(cpu->mem, _t55, cpu->r[30]);
|
|
/* 02227640 */ cpu->r[9] = cpu->r[4];
|
|
/* 02227644 */ cpu->r[8] = cpu->r[1] + 0x0000001Cu;
|
|
/* 02227648 */ _t56 = cpu->r[1] + 0x00000014u;
|
|
/* 02227648 */ rbrew_write32(cpu->mem, _t56, cpu->r[25]);
|
|
/* 0222764C */ cpu->r[10] = 0x00000001u;
|
|
/* 02227650 */ _t57 = cpu->r[1] + 0x00000018u;
|
|
/* 02227650 */ rbrew_write32(cpu->mem, _t57, cpu->r[29]);
|
|
/* 02227654 */ Gambit_fn_02224198(cpu);
|
|
L_02227658: ; // 0x2227658
|
|
/* 02227658 */ _t58 = cpu->r[31] + 0x00000000u;
|
|
/* 02227658 */ cpu->r[0] = rbrew_read8(cpu->mem, _t58);
|
|
L_0222765C: ; // 0x222765c
|
|
/* 0222765C */ cpu->r[23] = cpu->r[23] + 0x00000001u;
|
|
/* 02227660 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], cpu->r[0]);
|
|
/* 02227664 */ cpu->r[24] = cpu->r[24] + 0x00000010u;
|
|
/* 02227668 */ _t59 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02227668 */ _t60 = _t59 & 0x00000001u;
|
|
/* 02227668 */ if (_t60) goto L_0222753C; else goto L_0222766C;
|
|
L_0222766C: ; // 0x222766c
|
|
/* 0222766C */ /* nop */
|
|
/* 02227670 */ _t61 = cpu->r[1] + 0x00000080u;
|
|
/* 02227670 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t61);
|
|
/* 02227674 */ _t62 = cpu->r[1] + 0x00000090u;
|
|
/* 02227674 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 02227678 */ _t63 = cpu->r[1] + 0x00000078u;
|
|
/* 02227678 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t63);
|
|
/* 0222767C */ _t64 = cpu->r[1] + 0x00000088u;
|
|
/* 0222767C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t64);
|
|
/* 02227680 */ _t65 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02227680 */ _t66 = _t65 & 0x00000001u;
|
|
/* 02227680 */ if (_t66) goto L_02227684; // else: addr-0 trap, fall-through
|
|
L_02227684: ; // 0x2227684
|
|
/* 02227684 */ _t67 = cpu->r[1] + 0x0000009Cu;
|
|
/* 02227684 */ cpu->r[0] = rbrew_read32(cpu->mem, _t67);
|
|
/* 02227688 */ cpu->lr = cpu->r[0];
|
|
/* 0222768C */ cpu->r[1] = cpu->r[1] + 0x00000098u;
|
|
/* 02227690 */ return;
|
|
}
|
|
|
|
// fn_02227694 @ 0x2227694
|
|
void Gambit_fn_02227694(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _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;
|
|
|
|
L_02227694: ; // 0x2227694
|
|
/* 02227694 */ _t0 = cpu->r[1] + 0xFFFFFF40u;
|
|
/* 02227694 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02227694 */ cpu->r[1] = _t0;
|
|
/* 02227698 */ /* nop */
|
|
/* 0222769C */ cpu->r[0] = cpu->lr;
|
|
/* 022276A0 */ _t1 = cpu->r[1] + 0x000000B0u;
|
|
/* 022276A0 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 022276A4 */ /* nop */
|
|
/* 022276A8 */ _t2 = cpu->r[1] + 0x000000B8u;
|
|
/* 022276A8 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 022276AC */ _t3 = cpu->r[1] + 0x000000A0u;
|
|
/* 022276AC */ rbrew_write_f64(cpu->mem, _t3, cpu->f[30]);
|
|
/* 022276B0 */ _t4 = cpu->r[1] + 0x000000C4u;
|
|
/* 022276B0 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 022276B4 */ /* nop */
|
|
/* 022276B8 */ _t5 = cpu->r[1] + 0x000000A8u;
|
|
/* 022276B8 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[30]);
|
|
/* 022276BC */ cpu->r[30] = cpu->r[3];
|
|
/* 022276C0 */ _t6 = cpu->r[30] + 0x00000034u;
|
|
/* 022276C0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022276C4 */ Gambit_fn_022274A0(cpu);
|
|
/* 022276C8 */ _t7 = cpu->r[30] + 0x00000018u;
|
|
/* 022276C8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022276CC */ cpu->r[12] = 0x101C0000u;
|
|
/* 022276D0 */ cpu->r[31] = 0x00000000u;
|
|
/* 022276D4 */ _t8 = cpu->r[12] + 0x00006000u;
|
|
/* 022276D4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022276D8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[5]);
|
|
/* 022276DC */ _t9 = cpu->r[12] + 0x00000274u;
|
|
/* 022276DC */ cpu->r[26] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022276E0 */ _t10 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022276E0 */ _t11 = _t10 & 0x00000001u;
|
|
/* 022276E0 */ if (_t11) goto L_022276E4; else goto L_02227910;
|
|
L_022276E4: ; // 0x22276e4
|
|
/* 022276E4 */ cpu->r[5] = 0x10050000u;
|
|
/* 022276E8 */ cpu->r[12] = 0x10050000u;
|
|
/* 022276EC */ cpu->r[27] = 0x00000000u;
|
|
/* 022276F0 */ _t12 = cpu->r[5] + 0xFFFFE99Cu;
|
|
/* 022276F0 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 022276F4 */ cpu->r[28] = cpu->r[27];
|
|
/* 022276F8 */ _t13 = cpu->r[12] + 0xFFFFE9A0u;
|
|
/* 022276F8 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 022276FC */ cpu->r[29] = 0x00000001u;
|
|
L_02227700: ; // 0x2227700
|
|
/* 02227700 */ _t14 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02227700 */ cpu->r[6] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02227704 */ cpu->r[3] = cpu->r[6] + cpu->r[27];
|
|
/* 02227708 */ cpu->r[6] = cpu->r[3];
|
|
/* 0222770C */ _t15 = cpu->r[6] + 0x0000000Cu;
|
|
/* 0222770C */ cpu->r[8] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02227710 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02227714 */ _t16 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02227714 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02227714 */ if (_t17) goto L_02227728; else goto L_02227718;
|
|
L_02227718: ; // 0x2227718
|
|
/* 02227718 */ cpu->r[7] = cpu->r[8] + 0x00000001u;
|
|
/* 0222771C */ _t18 = cpu->r[6] + 0x0000000Cu;
|
|
/* 0222771C */ rbrew_write32(cpu->mem, _t18, cpu->r[7]);
|
|
/* 02227720 */ _t19 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02227720 */ cpu->r[6] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02227724 */ cpu->r[3] = cpu->r[6] + cpu->r[27];
|
|
L_02227728: ; // 0x2227728
|
|
/* 02227728 */ _t20 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02227728 */ cpu->r[9] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0222772C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02227730 */ _t21 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02227730 */ _t22 = _t21 & 0x00000001u;
|
|
/* 02227730 */ if (_t22) goto L_022278FC; else goto L_02227734;
|
|
L_02227734: ; // 0x2227734
|
|
/* 02227734 */ cpu->r[0] = 0x88880000u;
|
|
/* 02227738 */ _t23 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02227738 */ cpu->r[11] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0222773C */ cpu->r[0] = cpu->r[0] | 0x00008889u;
|
|
/* 02227740 */ /* nop */
|
|
/* 02227744 */ cpu->r[12] = rbrew_rlwinm(cpu->r[12], 0x0000001Au, 0x00000006u, 0x0000001Fu);
|
|
/* 02227748 */ cpu->r[12] = (uint32_t)((int32_t)cpu->r[12] * (int32_t)0x00000078u);
|
|
/* 0222774C */ cpu->r[10] = cpu->r[11] - cpu->r[12];
|
|
/* 0222774C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02227750 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02227750 */ _t25 = _t24 & 0x00000001u;
|
|
/* 02227750 */ if (_t25) goto L_02227754; else goto L_022278FC;
|
|
L_02227754: ; // 0x2227754
|
|
/* 02227754 */ _t26 = cpu->r[30] + 0x00000020u;
|
|
/* 02227754 */ cpu->r[4] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02227758 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[4]);
|
|
/* 0222775C */ cpu->r[25] = 0x00000000u;
|
|
/* 02227760 */ _t27 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02227760 */ _t28 = _t27 & 0x00000001u;
|
|
/* 02227760 */ if (_t28) goto L_02227764; else goto L_02227770;
|
|
L_02227764: ; // 0x2227764
|
|
/* 02227764 */ _t29 = cpu->r[30] + 0x00000028u;
|
|
/* 02227764 */ cpu->r[0] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02227768 */ cpu->r[5] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0222776C */ _t30 = cpu->r[5] + cpu->r[0];
|
|
/* 0222776C */ cpu->r[25] = rbrew_read32(cpu->mem, _t30);
|
|
L_02227770: ; // 0x2227770
|
|
/* 02227770 */ _t31 = cpu->r[3] + 0x00000000u;
|
|
/* 02227770 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02227774 */ _t32 = cpu->r[1] + 0x00000074u;
|
|
/* 02227774 */ rbrew_write32(cpu->mem, _t32, cpu->r[0]);
|
|
/* 02227778 */ _t33 = cpu->r[3] + 0x00000004u;
|
|
/* 02227778 */ cpu->r[10] = rbrew_read32(cpu->mem, _t33);
|
|
/* 0222777C */ _t34 = cpu->r[1] + 0x00000078u;
|
|
/* 0222777C */ rbrew_write32(cpu->mem, _t34, cpu->r[10]);
|
|
/* 02227780 */ _t35 = cpu->r[3] + 0x00000008u;
|
|
/* 02227780 */ cpu->r[0] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02227784 */ _t36 = cpu->r[1] + 0x00000008u;
|
|
/* 02227784 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[31]);
|
|
/* 02227788 */ _t37 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02227788 */ rbrew_write32(cpu->mem, _t37, cpu->r[0]);
|
|
/* 0222778C */ _t38 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0222778C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 02227790 */ _t39 = cpu->r[1] + 0x00000010u;
|
|
/* 02227790 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[31]);
|
|
/* 02227794 */ cpu->f[0] = cpu->f[12] + cpu->f[31];
|
|
/* 02227798 */ _t40 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02227798 */ rbrew_write_f32(cpu->mem, _t40, cpu->f[30]);
|
|
/* 0222779C */ /* nop */
|
|
/* 022277A0 */ _t41 = cpu->r[1] + 0x00000054u;
|
|
/* 022277A0 */ rbrew_write_f32(cpu->mem, _t41, cpu->f[0]);
|
|
/* 022277A4 */ _t42 = cpu->r[1] + 0x00000054u;
|
|
/* 022277A4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t42);
|
|
/* 022277A8 */ /* nop */
|
|
/* 022277AC */ _t43 = cpu->r[1] + 0x00000014u;
|
|
/* 022277AC */ rbrew_write_f32(cpu->mem, _t43, cpu->f[31]);
|
|
/* 022277B0 */ _t44 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022277B0 */ rbrew_write_f32(cpu->mem, _t44, cpu->f[31]);
|
|
/* 022277B4 */ /* nop */
|
|
/* 022277B8 */ /* nop */
|
|
/* 022277BC */ _t45 = cpu->r[1] + 0x00000040u;
|
|
/* 022277BC */ cpu->r[6] = rbrew_read32(cpu->mem, _t45);
|
|
/* 022277C0 */ _t46 = cpu->r[1] + 0x00000018u;
|
|
/* 022277C0 */ rbrew_write_f32(cpu->mem, _t46, cpu->f[30]);
|
|
/* 022277C4 */ /* nop */
|
|
/* 022277C8 */ _t47 = cpu->r[1] + 0x00000058u;
|
|
/* 022277C8 */ rbrew_write32(cpu->mem, _t47, cpu->r[6]);
|
|
/* 022277CC */ _t48 = cpu->r[1] + 0x00000058u;
|
|
/* 022277CC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 022277D0 */ /* nop */
|
|
/* 022277D4 */ _t49 = cpu->r[1] + 0x00000044u;
|
|
/* 022277D4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t49);
|
|
/* 022277D8 */ /* nop */
|
|
/* 022277DC */ _t50 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022277DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t50);
|
|
/* 022277E0 */ cpu->f[11] = cpu->f[12] - cpu->f[31];
|
|
/* 022277E4 */ _t51 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022277E4 */ rbrew_write32(cpu->mem, _t51, cpu->r[7]);
|
|
/* 022277E8 */ _t52 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022277E8 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 022277EC */ _t53 = cpu->r[1] + 0x00000064u;
|
|
/* 022277EC */ rbrew_write32(cpu->mem, _t53, cpu->r[0]);
|
|
/* 022277F0 */ _t54 = cpu->r[1] + 0x00000064u;
|
|
/* 022277F0 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 022277F4 */ _t55 = cpu->r[1] + 0x00000050u;
|
|
/* 022277F4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t55);
|
|
/* 022277F8 */ _t56 = cpu->r[1] + 0x00000048u;
|
|
/* 022277F8 */ rbrew_write_f32(cpu->mem, _t56, cpu->f[11]);
|
|
/* 022277FC */ _t57 = cpu->r[1] + 0x00000068u;
|
|
/* 022277FC */ rbrew_write32(cpu->mem, _t57, cpu->r[5]);
|
|
/* 02227800 */ _t58 = cpu->r[1] + 0x00000068u;
|
|
/* 02227800 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 02227804 */ _t59 = cpu->r[1] + 0x00000048u;
|
|
/* 02227804 */ cpu->r[0] = rbrew_read32(cpu->mem, _t59);
|
|
/* 02227808 */ _t60 = cpu->r[1] + 0x00000038u;
|
|
/* 02227808 */ rbrew_write_f32(cpu->mem, _t60, cpu->f[10]);
|
|
/* 0222780C */ _t61 = cpu->r[1] + 0x00000060u;
|
|
/* 0222780C */ rbrew_write32(cpu->mem, _t61, cpu->r[0]);
|
|
/* 02227810 */ _t62 = cpu->r[1] + 0x00000060u;
|
|
/* 02227810 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 02227814 */ _t63 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02227814 */ rbrew_write32(cpu->mem, _t63, cpu->r[9]);
|
|
/* 02227818 */ _t64 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02227818 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 0222781C */ _t65 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0222781C */ rbrew_write_f32(cpu->mem, _t65, cpu->f[6]);
|
|
/* 02227820 */ _t66 = cpu->r[1] + 0x00000034u;
|
|
/* 02227820 */ rbrew_write_f32(cpu->mem, _t66, cpu->f[8]);
|
|
/* 02227824 */ cpu->r[3] = cpu->r[25];
|
|
/* 02227828 */ _t67 = cpu->r[1] + 0x00000030u;
|
|
/* 02227828 */ rbrew_write_f32(cpu->mem, _t67, cpu->f[7]);
|
|
/* 0222782C */ _t68 = cpu->r[1] + 0x00000028u;
|
|
/* 0222782C */ rbrew_write_f32(cpu->mem, _t68, cpu->f[0]);
|
|
/* 02227830 */ cpu->r[4] = cpu->r[1] + 0x00000028u;
|
|
/* 02227834 */ _t69 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02227834 */ rbrew_write_f32(cpu->mem, _t69, cpu->f[12]);
|
|
/* 02227838 */ Gambit_fn_023C05A4(cpu);
|
|
/* 0222783C */ cpu->r[3] = cpu->r[25];
|
|
/* 02227840 */ Gambit_fn_023E4504(cpu);
|
|
/* 02227844 */ cpu->r[3] = cpu->r[25];
|
|
/* 02227848 */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 0222784C */ cpu->r[5] = cpu->r[1] + 0x00000024u;
|
|
/* 02227850 */ cpu->r[6] = cpu->r[1] + 0x00000070u;
|
|
/* 02227854 */ Gambit_fn_023C05C8(cpu);
|
|
/* 02227858 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0222785C */ _t70 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222785C */ _t71 = _t70 & 0x00000001u;
|
|
/* 0222785C */ if (_t71) goto L_022278FC; else goto L_02227860;
|
|
L_02227860: ; // 0x2227860
|
|
/* 02227860 */ _t72 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02227860 */ cpu->r[6] = rbrew_read32(cpu->mem, _t72);
|
|
/* 02227864 */ _t73 = cpu->r[1] + 0x00000020u;
|
|
/* 02227864 */ cpu->r[0] = rbrew_read32(cpu->mem, _t73);
|
|
/* 02227868 */ cpu->r[3] = cpu->r[6] + cpu->r[27];
|
|
/* 0222786C */ _t74 = cpu->r[1] + 0x00000024u;
|
|
/* 0222786C */ cpu->r[10] = rbrew_read32(cpu->mem, _t74);
|
|
/* 02227870 */ _t75 = cpu->r[3] + 0x00000010u;
|
|
/* 02227870 */ cpu->r[6] = rbrew_read32(cpu->mem, _t75);
|
|
/* 02227874 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[10]);
|
|
/* 02227878 */ _t76 = cpu->r[3] + 0x00000014u;
|
|
/* 02227878 */ cpu->r[8] = rbrew_read32(cpu->mem, _t76);
|
|
/* 0222787C */ _t77 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0222787C */ _t78 = _t77 & 0x00000001u;
|
|
/* 0222787C */ if (_t78) goto L_022278D0; else goto L_02227880;
|
|
L_02227880: ; // 0x2227880
|
|
/* 02227880 */ _t79 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02227880 */ _t80 = _t79 & 0x00000001u;
|
|
/* 02227880 */ if (_t80) goto L_02227884; else goto L_022278FC;
|
|
L_02227884: ; // 0x2227884
|
|
/* 02227884 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000001u);
|
|
/* 02227888 */ _t81 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02227888 */ _t82 = _t81 & 0x00000001u;
|
|
/* 02227888 */ if (_t82) goto L_0222788C; else goto L_022278C8;
|
|
L_0222788C: ; // 0x222788c
|
|
/* 0222788C */ _t83 = cpu->r[26] + 0x00000030u;
|
|
/* 0222788C */ cpu->r[11] = rbrew_read32(cpu->mem, _t83);
|
|
/* 02227890 */ _t84 = cpu->r[11] + 0x00000158u;
|
|
/* 02227890 */ cpu->r[4] = rbrew_read32(cpu->mem, _t84);
|
|
/* 02227894 */ _t85 = cpu->r[4] + 0x00000004u;
|
|
/* 02227894 */ cpu->r[0] = rbrew_read32(cpu->mem, _t85);
|
|
/* 02227898 */ cpu->r[9] = rbrew_rlwinm(cpu->r[8], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0222789C */ _t86 = cpu->r[9] + cpu->r[0];
|
|
/* 0222789C */ cpu->r[8] = rbrew_read32(cpu->mem, _t86);
|
|
/* 022278A0 */ _t87 = cpu->r[8] + 0x0000002Cu;
|
|
/* 022278A0 */ rbrew_write32(cpu->mem, _t87, cpu->r[28]);
|
|
/* 022278A4 */ _t88 = cpu->r[30] + 0x0000001Cu;
|
|
/* 022278A4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t88);
|
|
/* 022278A8 */ cpu->r[5] = cpu->r[9] + cpu->r[27];
|
|
/* 022278AC */ _t89 = cpu->r[5] + 0x00000010u;
|
|
/* 022278AC */ rbrew_write32(cpu->mem, _t89, cpu->r[28]);
|
|
/* 022278B0 */ _t90 = cpu->r[30] + 0x00000018u;
|
|
/* 022278B0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t90);
|
|
/* 022278B4 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 022278B8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[8]);
|
|
/* 022278BC */ cpu->r[27] = cpu->r[27] + 0x00000018u;
|
|
/* 022278C0 */ _t91 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022278C0 */ _t92 = _t91 & 0x00000001u;
|
|
/* 022278C0 */ if (_t92) goto L_02227700; else goto L_022278C4;
|
|
L_022278C4: ; // 0x22278c4
|
|
/* 022278C4 */ goto L_02227910;
|
|
L_022278C8: ; // 0x22278c8
|
|
/* 022278C8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[10]);
|
|
/* 022278CC */ _t93 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022278CC */ _t94 = _t93 & 0x00000001u;
|
|
/* 022278CC */ if (_t94) goto L_022278D0; else goto L_022278FC;
|
|
L_022278D0: ; // 0x22278d0
|
|
/* 022278D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 022278D4 */ _t95 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022278D4 */ _t96 = _t95 & 0x00000001u;
|
|
/* 022278D4 */ if (_t96) goto L_022278D8; else goto L_022278FC;
|
|
L_022278D8: ; // 0x22278d8
|
|
/* 022278D8 */ _t97 = cpu->r[26] + 0x00000030u;
|
|
/* 022278D8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t97);
|
|
/* 022278DC */ _t98 = cpu->r[11] + 0x00000158u;
|
|
/* 022278DC */ cpu->r[12] = rbrew_read32(cpu->mem, _t98);
|
|
/* 022278E0 */ _t99 = cpu->r[12] + 0x00000004u;
|
|
/* 022278E0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t99);
|
|
/* 022278E4 */ cpu->r[10] = rbrew_rlwinm(cpu->r[8], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 022278E8 */ _t100 = cpu->r[10] + cpu->r[4];
|
|
/* 022278E8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t100);
|
|
/* 022278EC */ _t101 = cpu->r[4] + 0x0000002Cu;
|
|
/* 022278EC */ rbrew_write32(cpu->mem, _t101, cpu->r[29]);
|
|
/* 022278F0 */ _t102 = cpu->r[30] + 0x0000001Cu;
|
|
/* 022278F0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t102);
|
|
/* 022278F4 */ cpu->r[12] = cpu->r[6] + cpu->r[27];
|
|
/* 022278F8 */ _t103 = cpu->r[12] + 0x00000010u;
|
|
/* 022278F8 */ rbrew_write32(cpu->mem, _t103, cpu->r[29]);
|
|
L_022278FC: ; // 0x22278fc
|
|
/* 022278FC */ _t104 = cpu->r[30] + 0x00000018u;
|
|
/* 022278FC */ cpu->r[8] = rbrew_read32(cpu->mem, _t104);
|
|
/* 02227900 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 02227904 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[8]);
|
|
/* 02227908 */ cpu->r[27] = cpu->r[27] + 0x00000018u;
|
|
/* 0222790C */ _t105 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0222790C */ _t106 = _t105 & 0x00000001u;
|
|
/* 0222790C */ if (_t106) goto L_02227700; else goto L_02227910;
|
|
L_02227910: ; // 0x2227910
|
|
/* 02227910 */ /* nop */
|
|
/* 02227914 */ _t107 = cpu->r[1] + 0x000000A8u;
|
|
/* 02227914 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t107);
|
|
/* 02227918 */ _t108 = cpu->r[1] + 0x000000B8u;
|
|
/* 02227918 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t108);
|
|
/* 0222791C */ _t109 = cpu->r[1] + 0x000000A0u;
|
|
/* 0222791C */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t109);
|
|
/* 02227920 */ _t110 = cpu->r[1] + 0x000000B0u;
|
|
/* 02227920 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t110);
|
|
/* 02227924 */ _t111 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02227924 */ _t112 = _t111 & 0x00000001u;
|
|
/* 02227924 */ if (_t112) goto L_02227928; // else: addr-0 trap, fall-through
|
|
L_02227928: ; // 0x2227928
|
|
/* 02227928 */ _t113 = cpu->r[1] + 0x000000C4u;
|
|
/* 02227928 */ cpu->r[0] = rbrew_read32(cpu->mem, _t113);
|
|
/* 0222792C */ cpu->lr = cpu->r[0];
|
|
/* 02227930 */ cpu->r[1] = cpu->r[1] + 0x000000C0u;
|
|
/* 02227934 */ return;
|
|
}
|
|
|
|
// fn_02227938 @ 0x2227938
|
|
void Gambit_fn_02227938(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _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_02227938: ; // 0x2227938
|
|
/* 02227938 */ cpu->r[0] = cpu->lr;
|
|
/* 0222793C */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 0222793C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0222793C */ cpu->r[1] = _t0;
|
|
/* 02227940 */ _t1 = cpu->r[1] + 0x00000018u;
|
|
/* 02227940 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 02227944 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02227944 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02227948 */ /* nop */
|
|
/* 0222794C */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 0222794C */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 02227950 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02227950 */ rbrew_write32(cpu->mem, _t4, cpu->r[29]);
|
|
/* 02227954 */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 02227954 */ rbrew_write32(cpu->mem, _t5, cpu->r[28]);
|
|
/* 02227958 */ _t6 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02227958 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0222795C */ cpu->r[28] = cpu->r[3];
|
|
/* 02227960 */ _t7 = cpu->r[1] + 0x00000020u;
|
|
/* 02227960 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[31]);
|
|
/* 02227964 */ _t8 = cpu->r[28] + 0x00000018u;
|
|
/* 02227964 */ cpu->r[10] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02227968 */ cpu->r[29] = 0x00000000u;
|
|
/* 0222796C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[10]);
|
|
/* 02227970 */ cpu->r[30] = cpu->r[4];
|
|
/* 02227974 */ _t9 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02227974 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02227974 */ if (_t10) goto L_02227978; else goto L_02227A00;
|
|
L_02227978: ; // 0x2227978
|
|
/* 02227978 */ cpu->r[11] = 0x10050000u;
|
|
/* 0222797C */ _t11 = cpu->r[11] + 0xFFFFE9BCu;
|
|
/* 0222797C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 02227980 */ cpu->r[31] = 0x00000000u;
|
|
L_02227984: ; // 0x2227984
|
|
/* 02227984 */ _t12 = cpu->r[28] + 0x0000001Cu;
|
|
/* 02227984 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02227988 */ cpu->r[3] = cpu->r[12] + cpu->r[31];
|
|
/* 0222798C */ _t13 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0222798C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02227990 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02227994 */ _t14 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02227994 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02227994 */ if (_t15) goto L_022279F0; else goto L_02227998;
|
|
L_02227998: ; // 0x2227998
|
|
/* 02227998 */ cpu->r[4] = cpu->r[30];
|
|
/* 0222799C */ Gambit_fn_02C69328(cpu);
|
|
/* 022279A0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[31]);
|
|
/* 022279A4 */ _t16 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022279A4 */ _t17 = _t16 & 0x00000001u;
|
|
/* 022279A4 */ if (_t17) goto L_022279A8; else goto L_022279C0;
|
|
L_022279A8: ; // 0x22279a8
|
|
/* 022279A8 */ _t18 = cpu->r[28] + 0x00000018u;
|
|
/* 022279A8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022279AC */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 022279B0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[10]);
|
|
/* 022279B4 */ cpu->r[31] = cpu->r[31] + 0x00000018u;
|
|
/* 022279B8 */ _t19 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022279B8 */ _t20 = _t19 & 0x00000001u;
|
|
/* 022279B8 */ if (_t20) goto L_02227984; else goto L_022279BC;
|
|
L_022279BC: ; // 0x22279bc
|
|
/* 022279BC */ goto L_02227A00;
|
|
L_022279C0: ; // 0x22279c0
|
|
/* 022279C0 */ _t21 = cpu->r[1] + 0x00000008u;
|
|
/* 022279C0 */ cpu->r[28] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022279C4 */ _t22 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022279C4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022279C8 */ _t23 = cpu->r[1] + 0x00000020u;
|
|
/* 022279C8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 022279CC */ _t24 = cpu->r[1] + 0x00000010u;
|
|
/* 022279CC */ cpu->r[30] = rbrew_read32(cpu->mem, _t24);
|
|
/* 022279D0 */ _t25 = cpu->r[1] + 0x00000018u;
|
|
/* 022279D0 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t25);
|
|
/* 022279D4 */ _t26 = cpu->r[1] + 0x00000014u;
|
|
/* 022279D4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t26);
|
|
/* 022279D8 */ cpu->r[3] = 0x00000000u;
|
|
/* 022279DC */ _t27 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022279DC */ _t28 = _t27 & 0x00000001u;
|
|
/* 022279DC */ if (_t28) goto L_022279E0; // else: addr-0 trap, fall-through
|
|
L_022279E0: ; // 0x22279e0
|
|
/* 022279E0 */ _t29 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022279E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t29);
|
|
/* 022279E4 */ cpu->lr = cpu->r[0];
|
|
/* 022279E8 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 022279EC */ return;
|
|
L_022279F0: ; // 0x22279f0
|
|
/* 022279F0 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 022279F4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[10]);
|
|
/* 022279F8 */ cpu->r[31] = cpu->r[31] + 0x00000018u;
|
|
/* 022279FC */ _t30 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022279FC */ _t31 = _t30 & 0x00000001u;
|
|
/* 022279FC */ if (_t31) goto L_02227984; else goto L_02227A00;
|
|
L_02227A00: ; // 0x2227a00
|
|
/* 02227A00 */ _t32 = cpu->r[1] + 0x00000008u;
|
|
/* 02227A00 */ cpu->r[28] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02227A04 */ _t33 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02227A04 */ cpu->r[29] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02227A08 */ _t34 = cpu->r[1] + 0x00000020u;
|
|
/* 02227A08 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 02227A0C */ _t35 = cpu->r[1] + 0x00000010u;
|
|
/* 02227A0C */ cpu->r[30] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02227A10 */ _t36 = cpu->r[1] + 0x00000018u;
|
|
/* 02227A10 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t36);
|
|
/* 02227A14 */ _t37 = cpu->r[1] + 0x00000014u;
|
|
/* 02227A14 */ cpu->r[31] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02227A18 */ cpu->r[3] = 0x00000001u;
|
|
/* 02227A1C */ _t38 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02227A1C */ _t39 = _t38 & 0x00000001u;
|
|
/* 02227A1C */ if (_t39) goto L_02227A20; // else: addr-0 trap, fall-through
|
|
L_02227A20: ; // 0x2227a20
|
|
/* 02227A20 */ _t40 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02227A20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02227A24 */ cpu->lr = cpu->r[0];
|
|
/* 02227A28 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 02227A2C */ return;
|
|
}
|
|
|
|
// fn_0222793C @ 0x222793c
|
|
void Gambit_fn_0222793C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _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_0222793C: ; // 0x222793c
|
|
/* 0222793C */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 0222793C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0222793C */ cpu->r[1] = _t0;
|
|
/* 02227940 */ _t1 = cpu->r[1] + 0x00000018u;
|
|
/* 02227940 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 02227944 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02227944 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02227948 */ /* nop */
|
|
/* 0222794C */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 0222794C */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 02227950 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02227950 */ rbrew_write32(cpu->mem, _t4, cpu->r[29]);
|
|
/* 02227954 */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 02227954 */ rbrew_write32(cpu->mem, _t5, cpu->r[28]);
|
|
/* 02227958 */ _t6 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02227958 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0222795C */ cpu->r[28] = cpu->r[3];
|
|
/* 02227960 */ _t7 = cpu->r[1] + 0x00000020u;
|
|
/* 02227960 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[31]);
|
|
/* 02227964 */ _t8 = cpu->r[28] + 0x00000018u;
|
|
/* 02227964 */ cpu->r[10] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02227968 */ cpu->r[29] = 0x00000000u;
|
|
/* 0222796C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[10]);
|
|
/* 02227970 */ cpu->r[30] = cpu->r[4];
|
|
/* 02227974 */ _t9 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02227974 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02227974 */ if (_t10) goto L_02227978; else goto L_02227A00;
|
|
L_02227978: ; // 0x2227978
|
|
/* 02227978 */ cpu->r[11] = 0x10050000u;
|
|
/* 0222797C */ _t11 = cpu->r[11] + 0xFFFFE9BCu;
|
|
/* 0222797C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 02227980 */ cpu->r[31] = 0x00000000u;
|
|
L_02227984: ; // 0x2227984
|
|
/* 02227984 */ _t12 = cpu->r[28] + 0x0000001Cu;
|
|
/* 02227984 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02227988 */ cpu->r[3] = cpu->r[12] + cpu->r[31];
|
|
/* 0222798C */ _t13 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0222798C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02227990 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02227994 */ _t14 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02227994 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02227994 */ if (_t15) goto L_022279F0; else goto L_02227998;
|
|
L_02227998: ; // 0x2227998
|
|
/* 02227998 */ cpu->r[4] = cpu->r[30];
|
|
/* 0222799C */ Gambit_fn_02C69328(cpu);
|
|
/* 022279A0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[31]);
|
|
/* 022279A4 */ _t16 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022279A4 */ _t17 = _t16 & 0x00000001u;
|
|
/* 022279A4 */ if (_t17) goto L_022279A8; else goto L_022279C0;
|
|
L_022279A8: ; // 0x22279a8
|
|
/* 022279A8 */ _t18 = cpu->r[28] + 0x00000018u;
|
|
/* 022279A8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022279AC */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 022279B0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[10]);
|
|
/* 022279B4 */ cpu->r[31] = cpu->r[31] + 0x00000018u;
|
|
/* 022279B8 */ _t19 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022279B8 */ _t20 = _t19 & 0x00000001u;
|
|
/* 022279B8 */ if (_t20) goto L_02227984; else goto L_022279BC;
|
|
L_022279BC: ; // 0x22279bc
|
|
/* 022279BC */ goto L_02227A00;
|
|
L_022279C0: ; // 0x22279c0
|
|
/* 022279C0 */ _t21 = cpu->r[1] + 0x00000008u;
|
|
/* 022279C0 */ cpu->r[28] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022279C4 */ _t22 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022279C4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022279C8 */ _t23 = cpu->r[1] + 0x00000020u;
|
|
/* 022279C8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 022279CC */ _t24 = cpu->r[1] + 0x00000010u;
|
|
/* 022279CC */ cpu->r[30] = rbrew_read32(cpu->mem, _t24);
|
|
/* 022279D0 */ _t25 = cpu->r[1] + 0x00000018u;
|
|
/* 022279D0 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t25);
|
|
/* 022279D4 */ _t26 = cpu->r[1] + 0x00000014u;
|
|
/* 022279D4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t26);
|
|
/* 022279D8 */ cpu->r[3] = 0x00000000u;
|
|
/* 022279DC */ _t27 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022279DC */ _t28 = _t27 & 0x00000001u;
|
|
/* 022279DC */ if (_t28) goto L_022279E0; // else: addr-0 trap, fall-through
|
|
L_022279E0: ; // 0x22279e0
|
|
/* 022279E0 */ _t29 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022279E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t29);
|
|
/* 022279E4 */ cpu->lr = cpu->r[0];
|
|
/* 022279E8 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 022279EC */ return;
|
|
L_022279F0: ; // 0x22279f0
|
|
/* 022279F0 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 022279F4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[10]);
|
|
/* 022279F8 */ cpu->r[31] = cpu->r[31] + 0x00000018u;
|
|
/* 022279FC */ _t30 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022279FC */ _t31 = _t30 & 0x00000001u;
|
|
/* 022279FC */ if (_t31) goto L_02227984; else goto L_02227A00;
|
|
L_02227A00: ; // 0x2227a00
|
|
/* 02227A00 */ _t32 = cpu->r[1] + 0x00000008u;
|
|
/* 02227A00 */ cpu->r[28] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02227A04 */ _t33 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02227A04 */ cpu->r[29] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02227A08 */ _t34 = cpu->r[1] + 0x00000020u;
|
|
/* 02227A08 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 02227A0C */ _t35 = cpu->r[1] + 0x00000010u;
|
|
/* 02227A0C */ cpu->r[30] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02227A10 */ _t36 = cpu->r[1] + 0x00000018u;
|
|
/* 02227A10 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t36);
|
|
/* 02227A14 */ _t37 = cpu->r[1] + 0x00000014u;
|
|
/* 02227A14 */ cpu->r[31] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02227A18 */ cpu->r[3] = 0x00000001u;
|
|
/* 02227A1C */ _t38 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02227A1C */ _t39 = _t38 & 0x00000001u;
|
|
/* 02227A1C */ if (_t39) goto L_02227A20; // else: addr-0 trap, fall-through
|
|
L_02227A20: ; // 0x2227a20
|
|
/* 02227A20 */ _t40 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02227A20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02227A24 */ cpu->lr = cpu->r[0];
|
|
/* 02227A28 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 02227A2C */ return;
|
|
}
|
|
|
|
// fn_02227A30 @ 0x2227a30
|
|
void Gambit_fn_02227A30(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_02227A30: ; // 0x2227a30
|
|
/* 02227A30 */ cpu->r[0] = cpu->lr;
|
|
/* 02227A34 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02227A34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02227A34 */ cpu->r[1] = _t0;
|
|
/* 02227A38 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02227A38 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 02227A3C */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 02227A3C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02227A40 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02227A40 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 02227A44 */ cpu->r[30] = cpu->r[3];
|
|
/* 02227A48 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02227A48 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02227A4C */ _t5 = cpu->r[30] + 0x00000020u;
|
|
/* 02227A4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02227A50 */ cpu->r[31] = cpu->r[4];
|
|
/* 02227A54 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 02227A58 */ cpu->r[29] = 0x00000000u;
|
|
/* 02227A5C */ _t6 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02227A5C */ _t7 = _t6 & 0x00000001u;
|
|
/* 02227A5C */ if (_t7) goto L_02227A60; else goto L_02227A6C;
|
|
L_02227A60: ; // 0x2227a60
|
|
/* 02227A60 */ _t8 = cpu->r[30] + 0x00000028u;
|
|
/* 02227A60 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02227A64 */ cpu->r[12] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02227A68 */ _t9 = cpu->r[12] + cpu->r[0];
|
|
/* 02227A68 */ cpu->r[29] = rbrew_read32(cpu->mem, _t9);
|
|
L_02227A6C: ; // 0x2227a6c
|
|
/* 02227A6C */ cpu->r[3] = cpu->r[29];
|
|
/* 02227A70 */ Gambit_fn_023C0614(cpu);
|
|
/* 02227A74 */ cpu->r[3] = cpu->r[29];
|
|
/* 02227A78 */ Gambit_fn_023E4474(cpu);
|
|
/* 02227A7C */ cpu->r[10] = (uint32_t)((int32_t)cpu->r[31] * (int32_t)0x00000018u);
|
|
/* 02227A80 */ _t10 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02227A80 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02227A84 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 02227A88 */ cpu->r[11] = cpu->r[12] + cpu->r[10];
|
|
/* 02227A8C */ _t11 = cpu->r[11] + 0x0000000Cu;
|
|
/* 02227A8C */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02227A90 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02227A90 */ cpu->r[29] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02227A94 */ _t13 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02227A94 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02227A98 */ _t14 = cpu->r[1] + 0x00000010u;
|
|
/* 02227A98 */ cpu->r[30] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02227A9C */ cpu->lr = cpu->r[0];
|
|
/* 02227AA0 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 02227AA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02227AA4 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02227AA8 */ return;
|
|
}
|
|
|
|
// fn_02227A34 @ 0x2227a34
|
|
void Gambit_fn_02227A34(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_02227A34: ; // 0x2227a34
|
|
/* 02227A34 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02227A34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02227A34 */ cpu->r[1] = _t0;
|
|
/* 02227A38 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02227A38 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 02227A3C */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 02227A3C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02227A40 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02227A40 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 02227A44 */ cpu->r[30] = cpu->r[3];
|
|
/* 02227A48 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02227A48 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02227A4C */ _t5 = cpu->r[30] + 0x00000020u;
|
|
/* 02227A4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02227A50 */ cpu->r[31] = cpu->r[4];
|
|
/* 02227A54 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 02227A58 */ cpu->r[29] = 0x00000000u;
|
|
/* 02227A5C */ _t6 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02227A5C */ _t7 = _t6 & 0x00000001u;
|
|
/* 02227A5C */ if (_t7) goto L_02227A60; else goto L_02227A6C;
|
|
L_02227A60: ; // 0x2227a60
|
|
/* 02227A60 */ _t8 = cpu->r[30] + 0x00000028u;
|
|
/* 02227A60 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02227A64 */ cpu->r[12] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02227A68 */ _t9 = cpu->r[12] + cpu->r[0];
|
|
/* 02227A68 */ cpu->r[29] = rbrew_read32(cpu->mem, _t9);
|
|
L_02227A6C: ; // 0x2227a6c
|
|
/* 02227A6C */ cpu->r[3] = cpu->r[29];
|
|
/* 02227A70 */ Gambit_fn_023C0614(cpu);
|
|
/* 02227A74 */ cpu->r[3] = cpu->r[29];
|
|
/* 02227A78 */ Gambit_fn_023E4474(cpu);
|
|
/* 02227A7C */ cpu->r[10] = (uint32_t)((int32_t)cpu->r[31] * (int32_t)0x00000018u);
|
|
/* 02227A80 */ _t10 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02227A80 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02227A84 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 02227A88 */ cpu->r[11] = cpu->r[12] + cpu->r[10];
|
|
/* 02227A8C */ _t11 = cpu->r[11] + 0x0000000Cu;
|
|
/* 02227A8C */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02227A90 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02227A90 */ cpu->r[29] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02227A94 */ _t13 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02227A94 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02227A98 */ _t14 = cpu->r[1] + 0x00000010u;
|
|
/* 02227A98 */ cpu->r[30] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02227A9C */ cpu->lr = cpu->r[0];
|
|
/* 02227AA0 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 02227AA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02227AA4 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02227AA8 */ return;
|
|
}
|
|
|
|
// fn_02227AAC @ 0x2227aac
|
|
void Gambit_fn_02227AAC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _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_02227AAC: ; // 0x2227aac
|
|
/* 02227AAC */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 02227AAC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02227AAC */ cpu->r[1] = _t0;
|
|
/* 02227AB0 */ /* nop */
|
|
/* 02227AB4 */ cpu->r[30] = 0x00000000u;
|
|
/* 02227AB8 */ cpu->r[0] = cpu->lr;
|
|
/* 02227ABC */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02227ABC */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02227AC0 */ cpu->r[31] = cpu->r[30];
|
|
/* 02227AC4 */ cpu->r[24] = cpu->r[3];
|
|
/* 02227AC8 */ _t2 = cpu->r[24] + 0x00000018u;
|
|
/* 02227AC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02227ACC */ cpu->r[25] = cpu->r[5];
|
|
/* 02227AD0 */ cpu->r[28] = cpu->r[6];
|
|
/* 02227AD4 */ cpu->r[26] = cpu->r[4];
|
|
/* 02227AD8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 02227ADC */ cpu->r[12] = 0xFFFFFFFFu;
|
|
/* 02227AE0 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02227AE0 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02227AE0 */ if (_t4) goto L_02227AE4; else goto L_02227B6C;
|
|
L_02227AE4: ; // 0x2227ae4
|
|
/* 02227AE4 */ cpu->r[9] = 0x00000000u;
|
|
/* 02227AE8 */ _t5 = cpu->r[24] + 0x0000001Cu;
|
|
/* 02227AE8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02227AEC */ cpu->r[29] = cpu->r[9];
|
|
L_02227AF0: ; // 0x2227af0
|
|
/* 02227AF0 */ cpu->r[27] = cpu->r[11] + cpu->r[9];
|
|
/* 02227AF4 */ _t6 = cpu->r[27] + 0x0000000Cu;
|
|
/* 02227AF4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02227AF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02227AFC */ _t7 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02227AFC */ _t8 = _t7 & 0x00000001u;
|
|
/* 02227AFC */ if (_t8) goto L_02227B00; else goto L_02227B4C;
|
|
L_02227B00: ; // 0x2227b00
|
|
/* 02227B00 */ cpu->r[4] = cpu->r[31];
|
|
/* 02227B04 */ cpu->r[3] = cpu->r[24];
|
|
/* 02227B08 */ Gambit_fn_02227A30(cpu);
|
|
/* 02227B0C */ _t9 = cpu->r[26] + 0x00000000u;
|
|
/* 02227B0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02227B10 */ _t10 = cpu->r[25] + 0x00000000u;
|
|
/* 02227B10 */ cpu->r[11] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02227B14 */ _t11 = cpu->r[27] + 0x00000000u;
|
|
/* 02227B14 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02227B18 */ _t12 = cpu->r[26] + 0x00000004u;
|
|
/* 02227B18 */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02227B1C */ _t13 = cpu->r[27] + 0x00000004u;
|
|
/* 02227B1C */ rbrew_write32(cpu->mem, _t13, cpu->r[9]);
|
|
/* 02227B20 */ _t14 = cpu->r[26] + 0x00000008u;
|
|
/* 02227B20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02227B24 */ _t15 = cpu->r[27] + 0x0000000Cu;
|
|
/* 02227B24 */ rbrew_write32(cpu->mem, _t15, cpu->r[29]);
|
|
/* 02227B28 */ _t16 = cpu->r[27] + 0x00000008u;
|
|
/* 02227B28 */ rbrew_write32(cpu->mem, _t16, cpu->r[0]);
|
|
/* 02227B2C */ _t17 = cpu->r[27] + 0x00000010u;
|
|
/* 02227B2C */ rbrew_write32(cpu->mem, _t17, cpu->r[11]);
|
|
/* 02227B30 */ cpu->r[3] = cpu->r[31];
|
|
/* 02227B34 */ _t18 = cpu->r[27] + 0x00000014u;
|
|
/* 02227B34 */ rbrew_write32(cpu->mem, _t18, cpu->r[28]);
|
|
/* 02227B38 */ /* nop */
|
|
/* 02227B3C */ _t19 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02227B3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02227B40 */ cpu->lr = cpu->r[0];
|
|
/* 02227B44 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 02227B48 */ return;
|
|
L_02227B4C: ; // 0x2227b4c
|
|
/* 02227B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], cpu->r[10]);
|
|
/* 02227B50 */ _t20 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02227B50 */ _t21 = _t20 & 0x00000001u;
|
|
/* 02227B50 */ if (_t21) goto L_02227B54; else goto L_02227B5C;
|
|
L_02227B54: ; // 0x2227b54
|
|
/* 02227B54 */ cpu->r[12] = cpu->r[10];
|
|
/* 02227B58 */ cpu->r[30] = cpu->r[31];
|
|
L_02227B5C: ; // 0x2227b5c
|
|
/* 02227B5C */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 02227B60 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 02227B64 */ cpu->r[9] = cpu->r[9] + 0x00000018u;
|
|
/* 02227B68 */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02227B68 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02227B68 */ if (_t23) goto L_02227AF0; else goto L_02227B6C;
|
|
L_02227B6C: ; // 0x2227b6c
|
|
/* 02227B6C */ cpu->r[3] = cpu->r[24];
|
|
/* 02227B70 */ cpu->r[4] = cpu->r[30];
|
|
/* 02227B74 */ Gambit_fn_02227A30(cpu);
|
|
/* 02227B78 */ _t24 = cpu->r[26] + 0x00000000u;
|
|
/* 02227B78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02227B7C */ cpu->r[11] = (uint32_t)((int32_t)cpu->r[30] * (int32_t)0x00000018u);
|
|
/* 02227B80 */ _t25 = cpu->r[24] + 0x0000001Cu;
|
|
/* 02227B80 */ cpu->r[8] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02227B84 */ _t26 = cpu->r[25] + 0x00000000u;
|
|
/* 02227B84 */ cpu->r[12] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02227B88 */ _t27 = cpu->r[8] + cpu->r[11];
|
|
/* 02227B88 */ rbrew_write32(cpu->mem, _t27, cpu->r[0]);
|
|
/* 02227B8C */ _t28 = cpu->r[26] + 0x00000004u;
|
|
/* 02227B8C */ cpu->r[10] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02227B90 */ cpu->r[27] = cpu->r[8] + cpu->r[11];
|
|
/* 02227B94 */ _t29 = cpu->r[27] + 0x00000004u;
|
|
/* 02227B94 */ rbrew_write32(cpu->mem, _t29, cpu->r[10]);
|
|
/* 02227B98 */ cpu->r[0] = 0x00000000u;
|
|
/* 02227B9C */ _t30 = cpu->r[26] + 0x00000008u;
|
|
/* 02227B9C */ cpu->r[11] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02227BA0 */ _t31 = cpu->r[27] + 0x0000000Cu;
|
|
/* 02227BA0 */ rbrew_write32(cpu->mem, _t31, cpu->r[0]);
|
|
/* 02227BA4 */ _t32 = cpu->r[27] + 0x00000008u;
|
|
/* 02227BA4 */ rbrew_write32(cpu->mem, _t32, cpu->r[11]);
|
|
/* 02227BA8 */ _t33 = cpu->r[27] + 0x00000010u;
|
|
/* 02227BA8 */ rbrew_write32(cpu->mem, _t33, cpu->r[12]);
|
|
/* 02227BAC */ cpu->r[3] = cpu->r[30];
|
|
/* 02227BB0 */ _t34 = cpu->r[27] + 0x00000014u;
|
|
/* 02227BB0 */ rbrew_write32(cpu->mem, _t34, cpu->r[28]);
|
|
/* 02227BB4 */ /* nop */
|
|
/* 02227BB8 */ _t35 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02227BB8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02227BBC */ cpu->lr = cpu->r[0];
|
|
/* 02227BC0 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 02227BC4 */ return;
|
|
}
|
|
|
|
// fn_02227BC8 @ 0x2227bc8
|
|
void Gambit_fn_02227BC8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_02227BC8: ; // 0x2227bc8
|
|
/* 02227BC8 */ _t0 = cpu->r[5] + 0x00000000u;
|
|
/* 02227BC8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 02227BCC */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[4] * (int32_t)0x00000018u);
|
|
/* 02227BD0 */ _t1 = cpu->r[3] + 0x0000001Cu;
|
|
/* 02227BD0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02227BD4 */ _t2 = cpu->r[11] + cpu->r[0];
|
|
/* 02227BD4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02227BD8 */ _t3 = cpu->r[5] + 0x00000004u;
|
|
/* 02227BD8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 02227BDC */ cpu->r[12] = cpu->r[11] + cpu->r[0];
|
|
/* 02227BE0 */ _t4 = cpu->r[12] + 0x00000004u;
|
|
/* 02227BE0 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[0]);
|
|
/* 02227BE4 */ _t5 = cpu->r[5] + 0x00000008u;
|
|
/* 02227BE4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 02227BE8 */ _t6 = cpu->r[12] + 0x00000008u;
|
|
/* 02227BE8 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[0]);
|
|
/* 02227BEC */ return;
|
|
}
|
|
|
|
// fn_02227BF0 @ 0x2227bf0
|
|
void Gambit_fn_02227BF0(CPUState* cpu) {
|
|
uint32_t _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_02227BF0: ; // 0x2227bf0
|
|
/* 02227BF0 */ cpu->r[0] = cpu->lr;
|
|
/* 02227BF4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02227BF4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02227BF4 */ cpu->r[1] = _t0;
|
|
/* 02227BF8 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02227BF8 */ rbrew_write32(cpu->mem, _t1, cpu->r[28]);
|
|
/* 02227BFC */ cpu->r[28] = cpu->r[4];
|
|
/* 02227C00 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02227C00 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02227C04 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02227C04 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 02227C08 */ cpu->r[31] = cpu->r[3];
|
|
/* 02227C08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02227C0C */ _t4 = cpu->r[1] + 0x00000010u;
|
|
/* 02227C0C */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 02227C10 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02227C10 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02227C14 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02227C14 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02227C14 */ if (_t7) goto L_02227C78; else goto L_02227C18;
|
|
L_02227C18: ; // 0x2227c18
|
|
/* 02227C18 */ cpu->r[6] = 0x10050000u;
|
|
/* 02227C1C */ cpu->r[6] = cpu->r[6] + 0xFFFFE9C0u;
|
|
/* 02227C20 */ cpu->r[12] = 0x101C0000u;
|
|
/* 02227C24 */ _t8 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02227C24 */ rbrew_write32(cpu->mem, _t8, cpu->r[6]);
|
|
/* 02227C28 */ _t9 = cpu->r[12] + 0x000054F8u;
|
|
/* 02227C28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02227C28 */ cpu->r[12] = _t9;
|
|
/* 02227C2C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 02227C30 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02227C30 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02227C30 */ if (_t11) goto L_02227C34; else goto L_02227C5C;
|
|
L_02227C34: ; // 0x2227c34
|
|
/* 02227C34 */ cpu->r[30] = 0x101C0000u;
|
|
/* 02227C38 */ cpu->r[29] = 0x00000000u;
|
|
/* 02227C3C */ _t12 = cpu->r[30] + 0x000054F4u;
|
|
/* 02227C3C */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02227C40 */ _t13 = cpu->r[12] + 0x00000000u;
|
|
/* 02227C40 */ rbrew_write32(cpu->mem, _t13, cpu->r[29]);
|
|
/* 02227C44 */ _t14 = cpu->r[3] + 0x00000004u;
|
|
/* 02227C44 */ cpu->r[8] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02227C48 */ _t15 = cpu->r[8] + 0x0000000Cu;
|
|
/* 02227C48 */ cpu->r[10] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02227C4C */ cpu->ctr = cpu->r[10];
|
|
/* 02227C50 */ cpu->r[4] = 0x00000002u;
|
|
/* 02227C54 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02227C58 */ _t16 = cpu->r[30] + 0x000054F4u;
|
|
/* 02227C58 */ rbrew_write32(cpu->mem, _t16, cpu->r[29]);
|
|
L_02227C5C: ; // 0x2227c5c
|
|
/* 02227C5C */ cpu->r[3] = cpu->r[31];
|
|
/* 02227C60 */ cpu->r[4] = 0x00000000u;
|
|
/* 02227C64 */ Gambit_fn_02821E68(cpu);
|
|
/* 02227C68 */ cpu->r[0] = rbrew_rlwinm(cpu->r[28], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02227C68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02227C6C */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02227C6C */ _t18 = _t17 & 0x00000001u;
|
|
/* 02227C6C */ if (_t18) goto L_02227C78; else goto L_02227C70;
|
|
L_02227C70: ; // 0x2227c70
|
|
/* 02227C70 */ cpu->r[3] = cpu->r[31];
|
|
/* 02227C74 */ Gambit_fn_02801BB0(cpu);
|
|
L_02227C78: ; // 0x2227c78
|
|
/* 02227C78 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 02227C78 */ cpu->r[28] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02227C7C */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02227C7C */ cpu->r[29] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02227C80 */ _t21 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02227C80 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02227C84 */ _t22 = cpu->r[1] + 0x00000010u;
|
|
/* 02227C84 */ cpu->r[30] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02227C88 */ cpu->lr = cpu->r[0];
|
|
/* 02227C8C */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 02227C8C */ cpu->r[31] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02227C90 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02227C94 */ return;
|
|
}
|
|
|
|
// fn_02227BF4 @ 0x2227bf4
|
|
void Gambit_fn_02227BF4(CPUState* cpu) {
|
|
uint32_t _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_02227BF4: ; // 0x2227bf4
|
|
/* 02227BF4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02227BF4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02227BF4 */ cpu->r[1] = _t0;
|
|
/* 02227BF8 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02227BF8 */ rbrew_write32(cpu->mem, _t1, cpu->r[28]);
|
|
/* 02227BFC */ cpu->r[28] = cpu->r[4];
|
|
/* 02227C00 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02227C00 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02227C04 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02227C04 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 02227C08 */ cpu->r[31] = cpu->r[3];
|
|
/* 02227C08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02227C0C */ _t4 = cpu->r[1] + 0x00000010u;
|
|
/* 02227C0C */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 02227C10 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02227C10 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02227C14 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02227C14 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02227C14 */ if (_t7) goto L_02227C78; else goto L_02227C18;
|
|
L_02227C18: ; // 0x2227c18
|
|
/* 02227C18 */ cpu->r[6] = 0x10050000u;
|
|
/* 02227C1C */ cpu->r[6] = cpu->r[6] + 0xFFFFE9C0u;
|
|
/* 02227C20 */ cpu->r[12] = 0x101C0000u;
|
|
/* 02227C24 */ _t8 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02227C24 */ rbrew_write32(cpu->mem, _t8, cpu->r[6]);
|
|
/* 02227C28 */ _t9 = cpu->r[12] + 0x000054F8u;
|
|
/* 02227C28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02227C28 */ cpu->r[12] = _t9;
|
|
/* 02227C2C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 02227C30 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02227C30 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02227C30 */ if (_t11) goto L_02227C34; else goto L_02227C5C;
|
|
L_02227C34: ; // 0x2227c34
|
|
/* 02227C34 */ cpu->r[30] = 0x101C0000u;
|
|
/* 02227C38 */ cpu->r[29] = 0x00000000u;
|
|
/* 02227C3C */ _t12 = cpu->r[30] + 0x000054F4u;
|
|
/* 02227C3C */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02227C40 */ _t13 = cpu->r[12] + 0x00000000u;
|
|
/* 02227C40 */ rbrew_write32(cpu->mem, _t13, cpu->r[29]);
|
|
/* 02227C44 */ _t14 = cpu->r[3] + 0x00000004u;
|
|
/* 02227C44 */ cpu->r[8] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02227C48 */ _t15 = cpu->r[8] + 0x0000000Cu;
|
|
/* 02227C48 */ cpu->r[10] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02227C4C */ cpu->ctr = cpu->r[10];
|
|
/* 02227C50 */ cpu->r[4] = 0x00000002u;
|
|
/* 02227C54 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02227C58 */ _t16 = cpu->r[30] + 0x000054F4u;
|
|
/* 02227C58 */ rbrew_write32(cpu->mem, _t16, cpu->r[29]);
|
|
L_02227C5C: ; // 0x2227c5c
|
|
/* 02227C5C */ cpu->r[3] = cpu->r[31];
|
|
/* 02227C60 */ cpu->r[4] = 0x00000000u;
|
|
/* 02227C64 */ Gambit_fn_02821E68(cpu);
|
|
/* 02227C68 */ cpu->r[0] = rbrew_rlwinm(cpu->r[28], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02227C68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02227C6C */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02227C6C */ _t18 = _t17 & 0x00000001u;
|
|
/* 02227C6C */ if (_t18) goto L_02227C78; else goto L_02227C70;
|
|
L_02227C70: ; // 0x2227c70
|
|
/* 02227C70 */ cpu->r[3] = cpu->r[31];
|
|
/* 02227C74 */ Gambit_fn_02801BB0(cpu);
|
|
L_02227C78: ; // 0x2227c78
|
|
/* 02227C78 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 02227C78 */ cpu->r[28] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02227C7C */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02227C7C */ cpu->r[29] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02227C80 */ _t21 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02227C80 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02227C84 */ _t22 = cpu->r[1] + 0x00000010u;
|
|
/* 02227C84 */ cpu->r[30] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02227C88 */ cpu->lr = cpu->r[0];
|
|
/* 02227C8C */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 02227C8C */ cpu->r[31] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02227C90 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02227C94 */ return;
|
|
}
|
|
|
|
// fn_02227C98 @ 0x2227c98
|
|
void Gambit_fn_02227C98(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_02227C98: ; // 0x2227c98
|
|
/* 02227C98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02227C9C */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02227C9C */ _t1 = _t0 & 0x00000001u;
|
|
/* 02227C9C */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02227C9C */ goto L_02227CA0;
|
|
L_02227CA0: ; // 0x2227ca0
|
|
/* 02227CA0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02227CA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02227CA4 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02227CA4 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02227CA4 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02227CA4 */ goto L_02227CA8;
|
|
L_02227CA8: ; // 0x2227ca8
|
|
/* 02227CA8 */ goto L_02801BB0;
|
|
L_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t4 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t4, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t4;
|
|
/* 02801B38 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02801B48 */ _t7 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B50 */ if (_t9) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02801B60 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02801B64 */ cpu->lr = cpu->r[0];
|
|
/* 02801B68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801B6C */ return;
|
|
L_02801B70: ; // 0x2801b70
|
|
/* 02801B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02801B74 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02801B74 */ if (_t13) goto L_02801B9C; else goto L_02801B78;
|
|
L_02801B78: ; // 0x2801b78
|
|
/* 02801B78 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B7C */ Gambit_fn_02826B90(cpu);
|
|
/* 02801B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B84 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02801B84 */ if (_t15) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t16 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02801B8C */ _t17 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02801BA0 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
}
|
|
|
|
// fn_02227CAC @ 0x2227cac
|
|
void Gambit_fn_02227CAC(CPUState* cpu) {
|
|
L_02227CAC: ; // 0x2227cac
|
|
/* 02227CAC */ return;
|
|
}
|
|
|
|
// fn_02227CB0 @ 0x2227cb0
|
|
void Gambit_fn_02227CB0(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_02227CB0: ; // 0x2227cb0
|
|
/* 02227CB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02227CB4 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02227CB4 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02227CB4 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02227CB4 */ goto L_02227CB8;
|
|
L_02227CB8: ; // 0x2227cb8
|
|
/* 02227CB8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02227CB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02227CBC */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02227CBC */ _t3 = _t2 & 0x00000001u;
|
|
/* 02227CBC */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02227CBC */ goto L_02227CC0;
|
|
L_02227CC0: ; // 0x2227cc0
|
|
/* 02227CC0 */ goto L_02801BB0;
|
|
L_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t4 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t4, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t4;
|
|
/* 02801B38 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02801B48 */ _t7 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B50 */ if (_t9) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02801B60 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02801B64 */ cpu->lr = cpu->r[0];
|
|
/* 02801B68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801B6C */ return;
|
|
L_02801B70: ; // 0x2801b70
|
|
/* 02801B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02801B74 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02801B74 */ if (_t13) goto L_02801B9C; else goto L_02801B78;
|
|
L_02801B78: ; // 0x2801b78
|
|
/* 02801B78 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B7C */ Gambit_fn_02826B90(cpu);
|
|
/* 02801B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B84 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02801B84 */ if (_t15) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t16 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02801B8C */ _t17 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02801BA0 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
}
|
|
|
|
// fn_02227CC4 @ 0x2227cc4
|
|
void Gambit_fn_02227CC4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_02227CC4: ; // 0x2227cc4
|
|
/* 02227CC4 */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 02227CC4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02227CC8 */ _t1 = cpu->r[3] + 0x00000008u;
|
|
/* 02227CC8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02227CCC */ cpu->r[12] = cpu->r[11] + cpu->r[12];
|
|
/* 02227CD0 */ cpu->r[11] = 0x10110000u;
|
|
/* 02227CD4 */ _t2 = cpu->r[11] + 0x00007399u;
|
|
/* 02227CD4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t2);
|
|
/* 02227CD8 */ _t3 = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 02227CD8 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]);
|
|
/* 02227CDC */ return;
|
|
}
|
|
|
|
// fn_02227CE0 @ 0x2227ce0
|
|
void Gambit_fn_02227CE0(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_02227CE0: ; // 0x2227ce0
|
|
/* 02227CE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02227CE4 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02227CE4 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02227CE4 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02227CE4 */ goto L_02227CE8;
|
|
L_02227CE8: ; // 0x2227ce8
|
|
/* 02227CE8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02227CE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02227CEC */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02227CEC */ _t3 = _t2 & 0x00000001u;
|
|
/* 02227CEC */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02227CEC */ goto L_02227CF0;
|
|
L_02227CF0: ; // 0x2227cf0
|
|
/* 02227CF0 */ goto L_02801BB0;
|
|
L_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t4 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t4, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t4;
|
|
/* 02801B38 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02801B48 */ _t7 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B50 */ if (_t9) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02801B60 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02801B64 */ cpu->lr = cpu->r[0];
|
|
/* 02801B68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801B6C */ return;
|
|
L_02801B70: ; // 0x2801b70
|
|
/* 02801B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02801B74 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02801B74 */ if (_t13) goto L_02801B9C; else goto L_02801B78;
|
|
L_02801B78: ; // 0x2801b78
|
|
/* 02801B78 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B7C */ Gambit_fn_02826B90(cpu);
|
|
/* 02801B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B84 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02801B84 */ if (_t15) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t16 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02801B8C */ _t17 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02801BA0 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
}
|
|
|
|
// fn_02227CF4 @ 0x2227cf4
|
|
void Gambit_fn_02227CF4(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_02227CF4: ; // 0x2227cf4
|
|
/* 02227CF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02227CF8 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02227CF8 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02227CF8 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02227CF8 */ goto L_02227CFC;
|
|
L_02227CFC: ; // 0x2227cfc
|
|
/* 02227CFC */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02227CFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02227D00 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02227D00 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02227D00 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02227D00 */ goto L_02227D04;
|
|
L_02227D04: ; // 0x2227d04
|
|
/* 02227D04 */ goto L_02801BB0;
|
|
L_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t4 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t4, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t4;
|
|
/* 02801B38 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02801B48 */ _t7 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B50 */ if (_t9) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02801B60 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02801B64 */ cpu->lr = cpu->r[0];
|
|
/* 02801B68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801B6C */ return;
|
|
L_02801B70: ; // 0x2801b70
|
|
/* 02801B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02801B74 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02801B74 */ if (_t13) goto L_02801B9C; else goto L_02801B78;
|
|
L_02801B78: ; // 0x2801b78
|
|
/* 02801B78 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B7C */ Gambit_fn_02826B90(cpu);
|
|
/* 02801B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B84 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02801B84 */ if (_t15) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t16 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02801B8C */ _t17 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02801BA0 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
}
|
|
|
|
// fn_02227D08 @ 0x2227d08
|
|
void Gambit_fn_02227D08(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _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_02227D08: ; // 0x2227d08
|
|
/* 02227D08 */ cpu->r[0] = cpu->lr;
|
|
/* 02227D0C */ _t0 = cpu->r[1] + 0xFFFFFF78u;
|
|
/* 02227D0C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02227D0C */ cpu->r[1] = _t0;
|
|
/* 02227D10 */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 02227D10 */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 02227D14 */ _t2 = cpu->r[1] + 0x00000084u;
|
|
/* 02227D14 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02227D18 */ _t3 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02227D18 */ rbrew_write32(cpu->mem, _t3, cpu->r[8]);
|
|
/* 02227D1C */ _t4 = cpu->r[1] + 0x00000020u;
|
|
/* 02227D1C */ rbrew_write32(cpu->mem, _t4, cpu->r[5]);
|
|
/* 02227D20 */ _t5 = cpu->r[1] + 0x00000018u;
|
|
/* 02227D20 */ rbrew_write32(cpu->mem, _t5, cpu->r[3]);
|
|
/* 02227D24 */ _t6 = cpu->r[1] + 0x0000008Cu;
|
|
/* 02227D24 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02227D28 */ _t7 = cpu->r[1] + 0x00000078u;
|
|
/* 02227D28 */ rbrew_write32(cpu->mem, _t7, cpu->r[28]);
|
|
/* 02227D2C */ _t8 = cpu->r[1] + 0x00000080u;
|
|
/* 02227D2C */ rbrew_write32(cpu->mem, _t8, cpu->r[30]);
|
|
/* 02227D30 */ _t9 = cpu->r[1] + 0x00000024u;
|
|
/* 02227D30 */ rbrew_write32(cpu->mem, _t9, cpu->r[6]);
|
|
/* 02227D34 */ _t10 = cpu->r[1] + 0x00000030u;
|
|
/* 02227D34 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 02227D38 */ _t11 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02227D38 */ rbrew_write32(cpu->mem, _t11, cpu->r[29]);
|
|
/* 02227D3C */ _t12 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02227D3C */ rbrew_write32(cpu->mem, _t12, cpu->r[4]);
|
|
/* 02227D40 */ _t13 = cpu->r[1] + 0x00000028u;
|
|
/* 02227D40 */ rbrew_write32(cpu->mem, _t13, cpu->r[7]);
|
|
/* 02227D44 */ _t14 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 02227D44 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02227D44 */ if (_t15) goto L_02227D48; else goto L_02227D68;
|
|
L_02227D48: ; // 0x2227d48
|
|
/* 02227D48 */ _t16 = cpu->r[1] + 0x00000048u;
|
|
/* 02227D48 */ rbrew_write_f64(cpu->mem, _t16, cpu->f[3]);
|
|
/* 02227D4C */ _t17 = cpu->r[1] + 0x00000068u;
|
|
/* 02227D4C */ rbrew_write_f64(cpu->mem, _t17, cpu->f[7]);
|
|
/* 02227D50 */ _t18 = cpu->r[1] + 0x00000060u;
|
|
/* 02227D50 */ rbrew_write_f64(cpu->mem, _t18, cpu->f[6]);
|
|
/* 02227D54 */ _t19 = cpu->r[1] + 0x00000040u;
|
|
/* 02227D54 */ rbrew_write_f64(cpu->mem, _t19, cpu->f[2]);
|
|
/* 02227D58 */ _t20 = cpu->r[1] + 0x00000050u;
|
|
/* 02227D58 */ rbrew_write_f64(cpu->mem, _t20, cpu->f[4]);
|
|
/* 02227D5C */ _t21 = cpu->r[1] + 0x00000070u;
|
|
/* 02227D5C */ rbrew_write_f64(cpu->mem, _t21, cpu->f[8]);
|
|
/* 02227D60 */ _t22 = cpu->r[1] + 0x00000058u;
|
|
/* 02227D60 */ rbrew_write_f64(cpu->mem, _t22, cpu->f[5]);
|
|
/* 02227D64 */ _t23 = cpu->r[1] + 0x00000038u;
|
|
/* 02227D64 */ rbrew_write_f64(cpu->mem, _t23, cpu->f[1]);
|
|
L_02227D68: ; // 0x2227d68
|
|
/* 02227D68 */ cpu->r[31] = cpu->r[3];
|
|
/* 02227D68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02227D6C */ cpu->r[30] = cpu->r[4];
|
|
/* 02227D70 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02227D70 */ _t25 = _t24 & 0x00000001u;
|
|
/* 02227D70 */ if (_t25) goto L_02227D74; else goto L_02227D84;
|
|
L_02227D74: ; // 0x2227d74
|
|
/* 02227D74 */ cpu->r[3] = 0x0000010Cu;
|
|
/* 02227D78 */ Gambit_fn_02801A78(cpu);
|
|
/* 02227D7C */ cpu->r[31] = cpu->r[3];
|
|
/* 02227D7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02227D80 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02227D80 */ _t27 = _t26 & 0x00000001u;
|
|
/* 02227D80 */ if (_t27) goto L_02227E48; else goto L_02227D84;
|
|
L_02227D84: ; // 0x2227d84
|
|
/* 02227D84 */ cpu->r[29] = cpu->r[31];
|
|
/* 02227D84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02227D88 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02227D88 */ _t29 = _t28 & 0x00000001u;
|
|
/* 02227D88 */ if (_t29) goto L_02227D8C; else goto L_02227D9C;
|
|
L_02227D8C: ; // 0x2227d8c
|
|
/* 02227D8C */ cpu->r[3] = 0x0000010Cu;
|
|
/* 02227D90 */ Gambit_fn_02801A78(cpu);
|
|
/* 02227D94 */ cpu->r[29] = cpu->r[3];
|
|
/* 02227D94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02227D98 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02227D98 */ _t31 = _t30 & 0x00000001u;
|
|
/* 02227D98 */ if (_t31) goto L_02227E0C; else goto L_02227D9C;
|
|
L_02227D9C: ; // 0x2227d9c
|
|
/* 02227D9C */ cpu->r[3] = cpu->r[29];
|
|
/* 02227D9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02227DA0 */ cpu->r[28] = 0x10110000u;
|
|
/* 02227DA4 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02227DA4 */ _t33 = _t32 & 0x00000001u;
|
|
/* 02227DA4 */ if (_t33) goto L_02227DA8; else goto L_02227DD4;
|
|
L_02227DA8: ; // 0x2227da8
|
|
/* 02227DA8 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02227DAC */ Gambit_fn_02801A78(cpu);
|
|
/* 02227DB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02227DB4 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02227DB4 */ _t35 = _t34 & 0x00000001u;
|
|
/* 02227DB4 */ if (_t35) goto L_02227DB8; else goto L_02227DD4;
|
|
L_02227DB8: ; // 0x2227db8
|
|
/* 02227DB8 */ cpu->r[7] = 0x10050000u;
|
|
/* 02227DBC */ _t36 = cpu->r[28] + 0x00007399u;
|
|
/* 02227DBC */ cpu->r[0] = rbrew_read8(cpu->mem, _t36);
|
|
/* 02227DC0 */ cpu->r[7] = cpu->r[7] + 0xFFFFE92Cu;
|
|
/* 02227DC4 */ _t37 = cpu->r[29] + 0x00000000u;
|
|
/* 02227DC4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02227DC8 */ _t38 = cpu->r[29] + 0x00000004u;
|
|
/* 02227DC8 */ rbrew_write32(cpu->mem, _t38, cpu->r[7]);
|
|
/* 02227DCC */ _t39 = cpu->r[8] + 0x00000000u;
|
|
/* 02227DCC */ rbrew_write8(cpu->mem, _t39, (uint8_t)cpu->r[0]);
|
|
/* 02227DD0 */ goto L_02227E0C;
|
|
L_02227DD4: ; // 0x2227dd4
|
|
/* 02227DD4 */ cpu->r[5] = 0x10050000u;
|
|
/* 02227DD8 */ cpu->r[0] = cpu->r[29] + 0x0000000Cu;
|
|
/* 02227DDC */ cpu->r[5] = cpu->r[5] + 0xFFFFE914u;
|
|
/* 02227DE0 */ _t40 = cpu->r[3] + 0x00000000u;
|
|
/* 02227DE0 */ rbrew_write32(cpu->mem, _t40, cpu->r[0]);
|
|
/* 02227DE4 */ cpu->r[6] = 0x00000100u;
|
|
/* 02227DE8 */ _t41 = cpu->r[3] + 0x00000004u;
|
|
/* 02227DE8 */ rbrew_write32(cpu->mem, _t41, cpu->r[5]);
|
|
/* 02227DEC */ _t42 = cpu->r[3] + 0x00000008u;
|
|
/* 02227DEC */ rbrew_write32(cpu->mem, _t42, cpu->r[6]);
|
|
/* 02227DF0 */ _t43 = cpu->r[28] + 0x00007399u;
|
|
/* 02227DF0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t43);
|
|
/* 02227DF4 */ cpu->r[7] = 0x10050000u;
|
|
/* 02227DF8 */ _t44 = cpu->r[29] + 0x00000000u;
|
|
/* 02227DF8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t44);
|
|
/* 02227DFC */ cpu->r[7] = cpu->r[7] + 0xFFFFE92Cu;
|
|
/* 02227E00 */ _t45 = cpu->r[29] + 0x0000010Bu;
|
|
/* 02227E00 */ rbrew_write8(cpu->mem, _t45, (uint8_t)cpu->r[0]);
|
|
/* 02227E04 */ _t46 = cpu->r[29] + 0x00000004u;
|
|
/* 02227E04 */ rbrew_write32(cpu->mem, _t46, cpu->r[7]);
|
|
/* 02227E08 */ _t47 = cpu->r[8] + 0x00000000u;
|
|
/* 02227E08 */ rbrew_write8(cpu->mem, _t47, (uint8_t)cpu->r[0]);
|
|
L_02227E0C: ; // 0x2227e0c
|
|
/* 02227E0C */ cpu->r[9] = 0x10050000u;
|
|
/* 02227E10 */ cpu->r[12] = 0x00000002u;
|
|
/* 02227E14 */ cpu->r[9] = cpu->r[9] + 0xFFFFE96Cu;
|
|
/* 02227E18 */ cpu->r[0] = cpu->r[1] + 0x00000090u;
|
|
/* 02227E1C */ _t48 = cpu->r[31] + 0x00000004u;
|
|
/* 02227E1C */ rbrew_write32(cpu->mem, _t48, cpu->r[9]);
|
|
/* 02227E20 */ cpu->r[11] = cpu->r[1] + 0x00000018u;
|
|
/* 02227E24 */ _t49 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02227E24 */ rbrew_write32(cpu->mem, _t49, cpu->r[0]);
|
|
/* 02227E28 */ cpu->r[0] = 0x00000000u;
|
|
/* 02227E2C */ _t50 = cpu->r[1] + 0x00000010u;
|
|
/* 02227E2C */ rbrew_write32(cpu->mem, _t50, cpu->r[11]);
|
|
/* 02227E30 */ cpu->r[3] = cpu->r[31];
|
|
/* 02227E34 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02227E38 */ _t51 = cpu->r[1] + 0x00000009u;
|
|
/* 02227E38 */ rbrew_write8(cpu->mem, _t51, (uint8_t)cpu->r[0]);
|
|
/* 02227E3C */ cpu->r[4] = cpu->r[30];
|
|
/* 02227E40 */ _t52 = cpu->r[1] + 0x00000008u;
|
|
/* 02227E40 */ rbrew_write8(cpu->mem, _t52, (uint8_t)cpu->r[12]);
|
|
/* 02227E44 */ Gambit_fn_0282A5DC(cpu);
|
|
L_02227E48: ; // 0x2227e48
|
|
/* 02227E48 */ _t53 = cpu->r[1] + 0x00000078u;
|
|
/* 02227E48 */ cpu->r[28] = rbrew_read32(cpu->mem, _t53);
|
|
/* 02227E4C */ _t54 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02227E4C */ cpu->r[29] = rbrew_read32(cpu->mem, _t54);
|
|
/* 02227E50 */ _t55 = cpu->r[1] + 0x0000008Cu;
|
|
/* 02227E50 */ cpu->r[0] = rbrew_read32(cpu->mem, _t55);
|
|
/* 02227E54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02227E58 */ _t56 = cpu->r[1] + 0x00000080u;
|
|
/* 02227E58 */ cpu->r[30] = rbrew_read32(cpu->mem, _t56);
|
|
/* 02227E5C */ cpu->lr = cpu->r[0];
|
|
/* 02227E60 */ _t57 = cpu->r[1] + 0x00000084u;
|
|
/* 02227E60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t57);
|
|
/* 02227E64 */ cpu->r[1] = cpu->r[1] + 0x00000088u;
|
|
/* 02227E68 */ return;
|
|
}
|
|
|
|
// fn_02227D0C @ 0x2227d0c
|
|
void Gambit_fn_02227D0C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _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_02227D0C: ; // 0x2227d0c
|
|
/* 02227D0C */ _t0 = cpu->r[1] + 0xFFFFFF78u;
|
|
/* 02227D0C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02227D0C */ cpu->r[1] = _t0;
|
|
/* 02227D10 */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 02227D10 */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 02227D14 */ _t2 = cpu->r[1] + 0x00000084u;
|
|
/* 02227D14 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02227D18 */ _t3 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02227D18 */ rbrew_write32(cpu->mem, _t3, cpu->r[8]);
|
|
/* 02227D1C */ _t4 = cpu->r[1] + 0x00000020u;
|
|
/* 02227D1C */ rbrew_write32(cpu->mem, _t4, cpu->r[5]);
|
|
/* 02227D20 */ _t5 = cpu->r[1] + 0x00000018u;
|
|
/* 02227D20 */ rbrew_write32(cpu->mem, _t5, cpu->r[3]);
|
|
/* 02227D24 */ _t6 = cpu->r[1] + 0x0000008Cu;
|
|
/* 02227D24 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02227D28 */ _t7 = cpu->r[1] + 0x00000078u;
|
|
/* 02227D28 */ rbrew_write32(cpu->mem, _t7, cpu->r[28]);
|
|
/* 02227D2C */ _t8 = cpu->r[1] + 0x00000080u;
|
|
/* 02227D2C */ rbrew_write32(cpu->mem, _t8, cpu->r[30]);
|
|
/* 02227D30 */ _t9 = cpu->r[1] + 0x00000024u;
|
|
/* 02227D30 */ rbrew_write32(cpu->mem, _t9, cpu->r[6]);
|
|
/* 02227D34 */ _t10 = cpu->r[1] + 0x00000030u;
|
|
/* 02227D34 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 02227D38 */ _t11 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02227D38 */ rbrew_write32(cpu->mem, _t11, cpu->r[29]);
|
|
/* 02227D3C */ _t12 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02227D3C */ rbrew_write32(cpu->mem, _t12, cpu->r[4]);
|
|
/* 02227D40 */ _t13 = cpu->r[1] + 0x00000028u;
|
|
/* 02227D40 */ rbrew_write32(cpu->mem, _t13, cpu->r[7]);
|
|
/* 02227D44 */ _t14 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 02227D44 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02227D44 */ if (_t15) goto L_02227D48; else goto L_02227D68;
|
|
L_02227D48: ; // 0x2227d48
|
|
/* 02227D48 */ _t16 = cpu->r[1] + 0x00000048u;
|
|
/* 02227D48 */ rbrew_write_f64(cpu->mem, _t16, cpu->f[3]);
|
|
/* 02227D4C */ _t17 = cpu->r[1] + 0x00000068u;
|
|
/* 02227D4C */ rbrew_write_f64(cpu->mem, _t17, cpu->f[7]);
|
|
/* 02227D50 */ _t18 = cpu->r[1] + 0x00000060u;
|
|
/* 02227D50 */ rbrew_write_f64(cpu->mem, _t18, cpu->f[6]);
|
|
/* 02227D54 */ _t19 = cpu->r[1] + 0x00000040u;
|
|
/* 02227D54 */ rbrew_write_f64(cpu->mem, _t19, cpu->f[2]);
|
|
/* 02227D58 */ _t20 = cpu->r[1] + 0x00000050u;
|
|
/* 02227D58 */ rbrew_write_f64(cpu->mem, _t20, cpu->f[4]);
|
|
/* 02227D5C */ _t21 = cpu->r[1] + 0x00000070u;
|
|
/* 02227D5C */ rbrew_write_f64(cpu->mem, _t21, cpu->f[8]);
|
|
/* 02227D60 */ _t22 = cpu->r[1] + 0x00000058u;
|
|
/* 02227D60 */ rbrew_write_f64(cpu->mem, _t22, cpu->f[5]);
|
|
/* 02227D64 */ _t23 = cpu->r[1] + 0x00000038u;
|
|
/* 02227D64 */ rbrew_write_f64(cpu->mem, _t23, cpu->f[1]);
|
|
L_02227D68: ; // 0x2227d68
|
|
/* 02227D68 */ cpu->r[31] = cpu->r[3];
|
|
/* 02227D68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02227D6C */ cpu->r[30] = cpu->r[4];
|
|
/* 02227D70 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02227D70 */ _t25 = _t24 & 0x00000001u;
|
|
/* 02227D70 */ if (_t25) goto L_02227D74; else goto L_02227D84;
|
|
L_02227D74: ; // 0x2227d74
|
|
/* 02227D74 */ cpu->r[3] = 0x0000010Cu;
|
|
/* 02227D78 */ Gambit_fn_02801A78(cpu);
|
|
/* 02227D7C */ cpu->r[31] = cpu->r[3];
|
|
/* 02227D7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02227D80 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02227D80 */ _t27 = _t26 & 0x00000001u;
|
|
/* 02227D80 */ if (_t27) goto L_02227E48; else goto L_02227D84;
|
|
L_02227D84: ; // 0x2227d84
|
|
/* 02227D84 */ cpu->r[29] = cpu->r[31];
|
|
/* 02227D84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02227D88 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02227D88 */ _t29 = _t28 & 0x00000001u;
|
|
/* 02227D88 */ if (_t29) goto L_02227D8C; else goto L_02227D9C;
|
|
L_02227D8C: ; // 0x2227d8c
|
|
/* 02227D8C */ cpu->r[3] = 0x0000010Cu;
|
|
/* 02227D90 */ Gambit_fn_02801A78(cpu);
|
|
/* 02227D94 */ cpu->r[29] = cpu->r[3];
|
|
/* 02227D94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02227D98 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02227D98 */ _t31 = _t30 & 0x00000001u;
|
|
/* 02227D98 */ if (_t31) goto L_02227E0C; else goto L_02227D9C;
|
|
L_02227D9C: ; // 0x2227d9c
|
|
/* 02227D9C */ cpu->r[3] = cpu->r[29];
|
|
/* 02227D9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02227DA0 */ cpu->r[28] = 0x10110000u;
|
|
/* 02227DA4 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02227DA4 */ _t33 = _t32 & 0x00000001u;
|
|
/* 02227DA4 */ if (_t33) goto L_02227DA8; else goto L_02227DD4;
|
|
L_02227DA8: ; // 0x2227da8
|
|
/* 02227DA8 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02227DAC */ Gambit_fn_02801A78(cpu);
|
|
/* 02227DB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02227DB4 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02227DB4 */ _t35 = _t34 & 0x00000001u;
|
|
/* 02227DB4 */ if (_t35) goto L_02227DB8; else goto L_02227DD4;
|
|
L_02227DB8: ; // 0x2227db8
|
|
/* 02227DB8 */ cpu->r[7] = 0x10050000u;
|
|
/* 02227DBC */ _t36 = cpu->r[28] + 0x00007399u;
|
|
/* 02227DBC */ cpu->r[0] = rbrew_read8(cpu->mem, _t36);
|
|
/* 02227DC0 */ cpu->r[7] = cpu->r[7] + 0xFFFFE92Cu;
|
|
/* 02227DC4 */ _t37 = cpu->r[29] + 0x00000000u;
|
|
/* 02227DC4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02227DC8 */ _t38 = cpu->r[29] + 0x00000004u;
|
|
/* 02227DC8 */ rbrew_write32(cpu->mem, _t38, cpu->r[7]);
|
|
/* 02227DCC */ _t39 = cpu->r[8] + 0x00000000u;
|
|
/* 02227DCC */ rbrew_write8(cpu->mem, _t39, (uint8_t)cpu->r[0]);
|
|
/* 02227DD0 */ goto L_02227E0C;
|
|
L_02227DD4: ; // 0x2227dd4
|
|
/* 02227DD4 */ cpu->r[5] = 0x10050000u;
|
|
/* 02227DD8 */ cpu->r[0] = cpu->r[29] + 0x0000000Cu;
|
|
/* 02227DDC */ cpu->r[5] = cpu->r[5] + 0xFFFFE914u;
|
|
/* 02227DE0 */ _t40 = cpu->r[3] + 0x00000000u;
|
|
/* 02227DE0 */ rbrew_write32(cpu->mem, _t40, cpu->r[0]);
|
|
/* 02227DE4 */ cpu->r[6] = 0x00000100u;
|
|
/* 02227DE8 */ _t41 = cpu->r[3] + 0x00000004u;
|
|
/* 02227DE8 */ rbrew_write32(cpu->mem, _t41, cpu->r[5]);
|
|
/* 02227DEC */ _t42 = cpu->r[3] + 0x00000008u;
|
|
/* 02227DEC */ rbrew_write32(cpu->mem, _t42, cpu->r[6]);
|
|
/* 02227DF0 */ _t43 = cpu->r[28] + 0x00007399u;
|
|
/* 02227DF0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t43);
|
|
/* 02227DF4 */ cpu->r[7] = 0x10050000u;
|
|
/* 02227DF8 */ _t44 = cpu->r[29] + 0x00000000u;
|
|
/* 02227DF8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t44);
|
|
/* 02227DFC */ cpu->r[7] = cpu->r[7] + 0xFFFFE92Cu;
|
|
/* 02227E00 */ _t45 = cpu->r[29] + 0x0000010Bu;
|
|
/* 02227E00 */ rbrew_write8(cpu->mem, _t45, (uint8_t)cpu->r[0]);
|
|
/* 02227E04 */ _t46 = cpu->r[29] + 0x00000004u;
|
|
/* 02227E04 */ rbrew_write32(cpu->mem, _t46, cpu->r[7]);
|
|
/* 02227E08 */ _t47 = cpu->r[8] + 0x00000000u;
|
|
/* 02227E08 */ rbrew_write8(cpu->mem, _t47, (uint8_t)cpu->r[0]);
|
|
L_02227E0C: ; // 0x2227e0c
|
|
/* 02227E0C */ cpu->r[9] = 0x10050000u;
|
|
/* 02227E10 */ cpu->r[12] = 0x00000002u;
|
|
/* 02227E14 */ cpu->r[9] = cpu->r[9] + 0xFFFFE96Cu;
|
|
/* 02227E18 */ cpu->r[0] = cpu->r[1] + 0x00000090u;
|
|
/* 02227E1C */ _t48 = cpu->r[31] + 0x00000004u;
|
|
/* 02227E1C */ rbrew_write32(cpu->mem, _t48, cpu->r[9]);
|
|
/* 02227E20 */ cpu->r[11] = cpu->r[1] + 0x00000018u;
|
|
/* 02227E24 */ _t49 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02227E24 */ rbrew_write32(cpu->mem, _t49, cpu->r[0]);
|
|
/* 02227E28 */ cpu->r[0] = 0x00000000u;
|
|
/* 02227E2C */ _t50 = cpu->r[1] + 0x00000010u;
|
|
/* 02227E2C */ rbrew_write32(cpu->mem, _t50, cpu->r[11]);
|
|
/* 02227E30 */ cpu->r[3] = cpu->r[31];
|
|
/* 02227E34 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02227E38 */ _t51 = cpu->r[1] + 0x00000009u;
|
|
/* 02227E38 */ rbrew_write8(cpu->mem, _t51, (uint8_t)cpu->r[0]);
|
|
/* 02227E3C */ cpu->r[4] = cpu->r[30];
|
|
/* 02227E40 */ _t52 = cpu->r[1] + 0x00000008u;
|
|
/* 02227E40 */ rbrew_write8(cpu->mem, _t52, (uint8_t)cpu->r[12]);
|
|
/* 02227E44 */ Gambit_fn_0282A5DC(cpu);
|
|
L_02227E48: ; // 0x2227e48
|
|
/* 02227E48 */ _t53 = cpu->r[1] + 0x00000078u;
|
|
/* 02227E48 */ cpu->r[28] = rbrew_read32(cpu->mem, _t53);
|
|
/* 02227E4C */ _t54 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02227E4C */ cpu->r[29] = rbrew_read32(cpu->mem, _t54);
|
|
/* 02227E50 */ _t55 = cpu->r[1] + 0x0000008Cu;
|
|
/* 02227E50 */ cpu->r[0] = rbrew_read32(cpu->mem, _t55);
|
|
/* 02227E54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02227E58 */ _t56 = cpu->r[1] + 0x00000080u;
|
|
/* 02227E58 */ cpu->r[30] = rbrew_read32(cpu->mem, _t56);
|
|
/* 02227E5C */ cpu->lr = cpu->r[0];
|
|
/* 02227E60 */ _t57 = cpu->r[1] + 0x00000084u;
|
|
/* 02227E60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t57);
|
|
/* 02227E64 */ cpu->r[1] = cpu->r[1] + 0x00000088u;
|
|
/* 02227E68 */ return;
|
|
}
|
|
|
|
// fn_02227E6C @ 0x2227e6c
|
|
void Gambit_fn_02227E6C(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_02227E6C: ; // 0x2227e6c
|
|
/* 02227E6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02227E70 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02227E70 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02227E70 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02227E70 */ goto L_02227E74;
|
|
L_02227E74: ; // 0x2227e74
|
|
/* 02227E74 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02227E74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02227E78 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02227E78 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02227E78 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02227E78 */ goto L_02227E7C;
|
|
L_02227E7C: ; // 0x2227e7c
|
|
/* 02227E7C */ goto L_02801BB0;
|
|
L_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t4 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t4, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t4;
|
|
/* 02801B38 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02801B48 */ _t7 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B50 */ if (_t9) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02801B60 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02801B64 */ cpu->lr = cpu->r[0];
|
|
/* 02801B68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801B6C */ return;
|
|
L_02801B70: ; // 0x2801b70
|
|
/* 02801B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02801B74 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02801B74 */ if (_t13) goto L_02801B9C; else goto L_02801B78;
|
|
L_02801B78: ; // 0x2801b78
|
|
/* 02801B78 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B7C */ Gambit_fn_02826B90(cpu);
|
|
/* 02801B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B84 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02801B84 */ if (_t15) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t16 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02801B8C */ _t17 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02801BA0 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
}
|
|
|
|
// fn_02227E84 @ 0x2227e84
|
|
void Gambit_fn_02227E84(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02227E84: ; // 0x2227e84
|
|
/* 02227E84 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02227E84 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02227E84 */ cpu->r[1] = _t0;
|
|
/* 02227E88 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02227E88 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02227E8C */ cpu->r[31] = cpu->r[3];
|
|
/* 02227E8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02227E90 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02227E90 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02227E94 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02227E94 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02227E94 */ if (_t4) goto L_02227E98; else goto L_02227EA8;
|
|
L_02227E98: ; // 0x2227e98
|
|
/* 02227E98 */ cpu->r[3] = 0x00000018u;
|
|
/* 02227E9C */ Gambit_fn_02801A78(cpu);
|
|
/* 02227EA0 */ cpu->r[31] = cpu->r[3];
|
|
/* 02227EA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02227EA4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02227EA4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02227EA4 */ if (_t6) goto L_02227ECC; else goto L_02227EA8;
|
|
L_02227EA8: ; // 0x2227ea8
|
|
/* 02227EA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02227EAC */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02227EAC */ _t8 = _t7 & 0x00000001u;
|
|
/* 02227EAC */ if (_t8) goto L_02227EB0; else goto L_02227EB8;
|
|
L_02227EB0: ; // 0x2227eb0
|
|
/* 02227EB0 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02227EB4 */ Gambit_fn_02801A78(cpu);
|
|
L_02227EB8: ; // 0x2227eb8
|
|
/* 02227EB8 */ cpu->r[12] = 0x00000000u;
|
|
/* 02227EBC */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 02227EC0 */ _t9 = cpu->r[31] + 0x00000014u;
|
|
/* 02227EC0 */ rbrew_write32(cpu->mem, _t9, cpu->r[12]);
|
|
/* 02227EC4 */ _t10 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02227EC4 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 02227EC8 */ _t11 = cpu->r[31] + 0x00000010u;
|
|
/* 02227EC8 */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
L_02227ECC: ; // 0x2227ecc
|
|
/* 02227ECC */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 02227ECC */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02227ED0 */ cpu->r[3] = cpu->r[31];
|
|
/* 02227ED4 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02227ED4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02227ED8 */ cpu->lr = cpu->r[0];
|
|
/* 02227EDC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02227EE0 */ return;
|
|
}
|
|
|
|
// fn_02227EE8 @ 0x2227ee8
|
|
void Gambit_fn_02227EE8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21;
|
|
|
|
L_02227EE8: ; // 0x2227ee8
|
|
/* 02227EE8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02227EE8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02227EE8 */ cpu->r[1] = _t0;
|
|
/* 02227EEC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02227EEC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02227EF0 */ cpu->r[31] = cpu->r[3];
|
|
/* 02227EF0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02227EF4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02227EF4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02227EF8 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02227EF8 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02227EF8 */ if (_t4) goto L_02227EFC; else goto L_02227F0C;
|
|
L_02227EFC: ; // 0x2227efc
|
|
/* 02227EFC */ cpu->r[3] = 0x00000010u;
|
|
/* 02227F00 */ Gambit_fn_02801A78(cpu);
|
|
/* 02227F04 */ cpu->r[31] = cpu->r[3];
|
|
/* 02227F04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02227F08 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02227F08 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02227F08 */ if (_t6) goto L_02227F58; else goto L_02227F0C;
|
|
L_02227F0C: ; // 0x2227f0c
|
|
/* 02227F0C */ cpu->r[3] = cpu->r[31];
|
|
/* 02227F0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02227F10 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02227F10 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02227F10 */ if (_t8) goto L_02227F14; else goto L_02227F24;
|
|
L_02227F14: ; // 0x2227f14
|
|
/* 02227F14 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02227F18 */ Gambit_fn_02801A78(cpu);
|
|
/* 02227F1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02227F20 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02227F20 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02227F20 */ if (_t10) goto L_02227F50; else goto L_02227F24;
|
|
L_02227F24: ; // 0x2227f24
|
|
/* 02227F24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02227F28 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02227F28 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02227F28 */ if (_t12) goto L_02227F2C; else goto L_02227F3C;
|
|
L_02227F2C: ; // 0x2227f2c
|
|
/* 02227F2C */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02227F30 */ Gambit_fn_02801A78(cpu);
|
|
/* 02227F34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02227F38 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02227F38 */ _t14 = _t13 & 0x00000001u;
|
|
/* 02227F38 */ if (_t14) goto L_02227F50; else goto L_02227F3C;
|
|
L_02227F3C: ; // 0x2227f3c
|
|
/* 02227F3C */ cpu->r[12] = 0x10050000u;
|
|
/* 02227F40 */ _t15 = cpu->r[12] + 0xFFFFE9B4u;
|
|
/* 02227F40 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 02227F44 */ _t16 = cpu->r[3] + 0x00000000u;
|
|
/* 02227F44 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[0]);
|
|
/* 02227F48 */ _t17 = cpu->r[3] + 0x00000008u;
|
|
/* 02227F48 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[0]);
|
|
/* 02227F4C */ _t18 = cpu->r[3] + 0x00000004u;
|
|
/* 02227F4C */ rbrew_write_f32(cpu->mem, _t18, cpu->f[0]);
|
|
L_02227F50: ; // 0x2227f50
|
|
/* 02227F50 */ cpu->r[0] = 0x00000000u;
|
|
/* 02227F54 */ _t19 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02227F54 */ rbrew_write8(cpu->mem, _t19, (uint8_t)cpu->r[0]);
|
|
L_02227F58: ; // 0x2227f58
|
|
/* 02227F58 */ _t20 = cpu->r[1] + 0x00000014u;
|
|
/* 02227F58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02227F5C */ cpu->r[3] = cpu->r[31];
|
|
/* 02227F60 */ _t21 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02227F60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02227F64 */ cpu->lr = cpu->r[0];
|
|
/* 02227F68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02227F6C */ return;
|
|
}
|
|
|
|
// fn_02227F70 @ 0x2227f70
|
|
void Gambit_fn_02227F70(CPUState* cpu) {
|
|
L_02227F70: ; // 0x2227f70
|
|
/* 02227F70 */ return;
|
|
}
|
|
|
|
// fn_02227F74 @ 0x2227f74
|
|
void Gambit_fn_02227F74(CPUState* cpu) {
|
|
L_02227F74: ; // 0x2227f74
|
|
/* 02227F74 */ return;
|
|
}
|
|
|
|
// fn_02227F78 @ 0x2227f78
|
|
void Gambit_fn_02227F78(CPUState* cpu) {
|
|
L_02227F78: ; // 0x2227f78
|
|
/* 02227F78 */ return;
|
|
}
|
|
|
|
// fn_02227F7C @ 0x2227f7c
|
|
void Gambit_fn_02227F7C(CPUState* cpu) {
|
|
L_02227F7C: ; // 0x2227f7c
|
|
/* 02227F7C */ return;
|
|
}
|
|
|
|
// fn_02227F80 @ 0x2227f80
|
|
void Gambit_fn_02227F80(CPUState* cpu) {
|
|
L_02227F80: ; // 0x2227f80
|
|
/* 02227F80 */ return;
|
|
}
|
|
|
|
// fn_02227F84 @ 0x2227f84
|
|
void Gambit_fn_02227F84(CPUState* cpu) {
|
|
L_02227F84: ; // 0x2227f84
|
|
/* 02227F84 */ return;
|
|
}
|
|
|
|
// fn_02227F88 @ 0x2227f88
|
|
void Gambit_fn_02227F88(CPUState* cpu) {
|
|
L_02227F88: ; // 0x2227f88
|
|
/* 02227F88 */ return;
|
|
}
|
|
|
|
// fn_02227F8C @ 0x2227f8c
|
|
void Gambit_fn_02227F8C(CPUState* cpu) {
|
|
L_02227F8C: ; // 0x2227f8c
|
|
/* 02227F8C */ return;
|
|
}
|
|
|
|
// fn_02227F90 @ 0x2227f90
|
|
void Gambit_fn_02227F90(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02227F90: ; // 0x2227f90
|
|
/* 02227F90 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02227F90 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02227F94 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02227F94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02227F98 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02227F98 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02227F98 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 02227F98 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02227F98 */ goto L_02227F9C;
|
|
L_02227F9C: ; // 0x2227f9c
|
|
/* 02227F9C */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 02227F9C */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02227FA0 */ _t5 = cpu->r[12] + 0x0000004Cu;
|
|
/* 02227FA0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02227FA4 */ cpu->ctr = cpu->r[0];
|
|
/* 02227FA8 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02227FAC @ 0x2227fac
|
|
void Gambit_fn_02227FAC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02227FAC: ; // 0x2227fac
|
|
/* 02227FAC */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02227FAC */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02227FB0 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Du, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02227FB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02227FB4 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02227FB4 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02227FB4 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 02227FB4 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02227FB4 */ goto L_02227FB8;
|
|
L_02227FB8: ; // 0x2227fb8
|
|
/* 02227FB8 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 02227FB8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02227FBC */ _t5 = cpu->r[12] + 0x0000005Cu;
|
|
/* 02227FBC */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02227FC0 */ cpu->ctr = cpu->r[0];
|
|
/* 02227FC4 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02227FC8 @ 0x2227fc8
|
|
void Gambit_fn_02227FC8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02227FC8: ; // 0x2227fc8
|
|
/* 02227FC8 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02227FC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02227FCC */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Au, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02227FCC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02227FD0 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02227FD0 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02227FD0 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 02227FD0 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02227FD0 */ goto L_02227FD4;
|
|
L_02227FD4: ; // 0x2227fd4
|
|
/* 02227FD4 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 02227FD4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02227FD8 */ _t5 = cpu->r[11] + 0x00000074u;
|
|
/* 02227FD8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02227FDC */ cpu->ctr = cpu->r[0];
|
|
/* 02227FE0 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02227FE4 @ 0x2227fe4
|
|
void Gambit_fn_02227FE4(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02227FE4: ; // 0x2227fe4
|
|
/* 02227FE4 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02227FE4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02227FE8 */ _t1 = cpu->r[12] + 0x0000002Cu;
|
|
/* 02227FE8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02227FEC */ cpu->ctr = cpu->r[0];
|
|
/* 02227FF0 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02227FF4 @ 0x2227ff4
|
|
void Gambit_fn_02227FF4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02227FF4: ; // 0x2227ff4
|
|
/* 02227FF4 */ cpu->r[0] = cpu->lr;
|
|
/* 02227FF8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02227FF8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02227FF8 */ cpu->r[1] = _t0;
|
|
/* 02227FFC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02227FFC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02228000 */ cpu->r[31] = cpu->r[3];
|
|
/* 02228004 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02228004 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02228008 */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02228008 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0222800C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 02228010 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02228010 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02228010 */ if (_t5) goto L_02228014; else goto L_02228030;
|
|
L_02228014: ; // 0x2228014
|
|
/* 02228014 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 02228014 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02228018 */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 02228018 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0222801C */ cpu->ctr = cpu->r[0];
|
|
/* 02228020 */ cpu->r[3] = cpu->r[31];
|
|
/* 02228024 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02228028 */ cpu->r[0] = 0x00000002u;
|
|
/* 0222802C */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0222802C */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_02228030: ; // 0x2228030
|
|
/* 02228030 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02228030 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02228034 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02228034 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02228038 */ cpu->lr = cpu->r[0];
|
|
/* 0222803C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02228040 */ return;
|
|
}
|
|
|
|
// fn_02227FF8 @ 0x2227ff8
|
|
void Gambit_fn_02227FF8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02227FF8: ; // 0x2227ff8
|
|
/* 02227FF8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02227FF8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02227FF8 */ cpu->r[1] = _t0;
|
|
/* 02227FFC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02227FFC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02228000 */ cpu->r[31] = cpu->r[3];
|
|
/* 02228004 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02228004 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02228008 */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02228008 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0222800C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 02228010 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02228010 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02228010 */ if (_t5) goto L_02228014; else goto L_02228030;
|
|
L_02228014: ; // 0x2228014
|
|
/* 02228014 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 02228014 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02228018 */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 02228018 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0222801C */ cpu->ctr = cpu->r[0];
|
|
/* 02228020 */ cpu->r[3] = cpu->r[31];
|
|
/* 02228024 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02228028 */ cpu->r[0] = 0x00000002u;
|
|
/* 0222802C */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0222802C */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_02228030: ; // 0x2228030
|
|
/* 02228030 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02228030 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02228034 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02228034 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02228038 */ cpu->lr = cpu->r[0];
|
|
/* 0222803C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02228040 */ return;
|
|
}
|
|
|
|
// fn_02228044 @ 0x2228044
|
|
void Gambit_fn_02228044(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02228044: ; // 0x2228044
|
|
/* 02228044 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02228044 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02228048 */ _t1 = cpu->r[12] + 0x0000008Cu;
|
|
/* 02228048 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0222804C */ cpu->ctr = cpu->r[0];
|
|
/* 02228050 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02228054 @ 0x2228054
|
|
void Gambit_fn_02228054(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02228054: ; // 0x2228054
|
|
/* 02228054 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02228054 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02228058 */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 02228058 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0222805C */ cpu->ctr = cpu->r[0];
|
|
/* 02228060 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02228064 @ 0x2228064
|
|
void Gambit_fn_02228064(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02228064: ; // 0x2228064
|
|
/* 02228064 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02228064 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02228068 */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 02228068 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0222806C */ cpu->ctr = cpu->r[0];
|
|
/* 02228070 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02228074 @ 0x2228074
|
|
void Gambit_fn_02228074(CPUState* cpu) {
|
|
L_02228074: ; // 0x2228074
|
|
/* 02228074 */ cpu->r[3] = 0x00000001u;
|
|
/* 02228078 */ return;
|
|
}
|
|
|
|
// fn_0222807C @ 0x222807c
|
|
void Gambit_fn_0222807C(CPUState* cpu) {
|
|
L_0222807C: ; // 0x222807c
|
|
/* 0222807C */ return;
|
|
}
|
|
|
|
// fn_02228080 @ 0x2228080
|
|
void Gambit_fn_02228080(CPUState* cpu) {
|
|
L_02228080: ; // 0x2228080
|
|
/* 02228080 */ return;
|
|
}
|
|
|
|
// fn_02228084 @ 0x2228084
|
|
void Gambit_fn_02228084(CPUState* cpu) {
|
|
L_02228084: ; // 0x2228084
|
|
/* 02228084 */ return;
|
|
}
|
|
|
|
// fn_02228088 @ 0x2228088
|
|
void Gambit_fn_02228088(CPUState* cpu) {
|
|
L_02228088: ; // 0x2228088
|
|
/* 02228088 */ return;
|
|
}
|
|
|
|
// fn_0222808C @ 0x222808c
|
|
void Gambit_fn_0222808C(CPUState* cpu) {
|
|
L_0222808C: ; // 0x222808c
|
|
/* 0222808C */ return;
|
|
}
|
|
|
|
// fn_02228090 @ 0x2228090
|
|
void Gambit_fn_02228090(CPUState* cpu) {
|
|
L_02228090: ; // 0x2228090
|
|
/* 02228090 */ return;
|
|
}
|
|
|
|
// fn_02228094 @ 0x2228094
|
|
void Gambit_fn_02228094(CPUState* cpu) {
|
|
L_02228094: ; // 0x2228094
|
|
/* 02228094 */ return;
|
|
}
|
|
|
|
// fn_02228098 @ 0x2228098
|
|
void Gambit_fn_02228098(CPUState* cpu) {
|
|
L_02228098: ; // 0x2228098
|
|
/* 02228098 */ cpu->r[3] = 0x00000001u;
|
|
/* 0222809C */ return;
|
|
}
|
|
|
|
// fn_022280A0 @ 0x22280a0
|
|
void Gambit_fn_022280A0(CPUState* cpu) {
|
|
L_022280A0: ; // 0x22280a0
|
|
/* 022280A0 */ cpu->r[3] = 0x00000000u;
|
|
/* 022280A4 */ return;
|
|
}
|
|
|
|
// fn_022280A8 @ 0x22280a8
|
|
void Gambit_fn_022280A8(CPUState* cpu) {
|
|
L_022280A8: ; // 0x22280a8
|
|
/* 022280A8 */ cpu->r[3] = 0x00000001u;
|
|
/* 022280AC */ return;
|
|
}
|
|
|
|
// fn_022280B0 @ 0x22280b0
|
|
void Gambit_fn_022280B0(CPUState* cpu) {
|
|
L_022280B0: ; // 0x22280b0
|
|
/* 022280B0 */ cpu->r[3] = 0x00000000u;
|
|
/* 022280B4 */ return;
|
|
}
|
|
|
|
// fn_022280B8 @ 0x22280b8
|
|
void Gambit_fn_022280B8(CPUState* cpu) {
|
|
L_022280B8: ; // 0x22280b8
|
|
/* 022280B8 */ cpu->r[3] = 0x00000000u;
|
|
/* 022280BC */ return;
|
|
}
|
|
|
|
// fn_022280C0 @ 0x22280c0
|
|
void Gambit_fn_022280C0(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_022280C0: ; // 0x22280c0
|
|
/* 022280C0 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 022280C0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022280C4 */ _t1 = cpu->r[12] + 0x0000021Cu;
|
|
/* 022280C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022280C8 */ cpu->ctr = cpu->r[0];
|
|
/* 022280CC */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022280D0 @ 0x22280d0
|
|
void Gambit_fn_022280D0(CPUState* cpu) {
|
|
L_022280D0: ; // 0x22280d0
|
|
/* 022280D0 */ cpu->r[3] = 0x00000000u;
|
|
/* 022280D4 */ return;
|
|
}
|
|
|
|
// fn_022280D8 @ 0x22280d8
|
|
void Gambit_fn_022280D8(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_022280D8: ; // 0x22280d8
|
|
/* 022280D8 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 022280D8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022280DC */ _t1 = cpu->r[12] + 0x0000027Cu;
|
|
/* 022280DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022280E0 */ cpu->ctr = cpu->r[0];
|
|
/* 022280E4 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022280E8 @ 0x22280e8
|
|
void Gambit_fn_022280E8(CPUState* cpu) {
|
|
L_022280E8: ; // 0x22280e8
|
|
/* 022280E8 */ cpu->r[3] = 0x00000000u;
|
|
/* 022280EC */ return;
|
|
}
|
|
|
|
// fn_022280F0 @ 0x22280f0
|
|
void Gambit_fn_022280F0(CPUState* cpu) {
|
|
L_022280F0: ; // 0x22280f0
|
|
/* 022280F0 */ cpu->r[3] = 0x00000000u;
|
|
/* 022280F4 */ return;
|
|
}
|
|
|
|
// fn_022280F8 @ 0x22280f8
|
|
void Gambit_fn_022280F8(CPUState* cpu) {
|
|
L_022280F8: ; // 0x22280f8
|
|
/* 022280F8 */ cpu->r[3] = 0x00000000u;
|
|
/* 022280FC */ return;
|
|
}
|
|
|
|
// fn_02228100 @ 0x2228100
|
|
void Gambit_fn_02228100(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02228100: ; // 0x2228100
|
|
/* 02228100 */ _t0 = cpu->r[3] + 0x00000080u;
|
|
/* 02228100 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02228104 */ return;
|
|
}
|
|
|
|
// fn_02228108 @ 0x2228108
|
|
void Gambit_fn_02228108(CPUState* cpu) {
|
|
L_02228108: ; // 0x2228108
|
|
/* 02228108 */ cpu->r[3] = cpu->r[3] + 0x00000094u;
|
|
/* 0222810C */ return;
|
|
}
|
|
|
|
// fn_02228110 @ 0x2228110
|
|
void Gambit_fn_02228110(CPUState* cpu) {
|
|
L_02228110: ; // 0x2228110
|
|
/* 02228110 */ cpu->r[3] = cpu->r[3] + 0x000000C4u;
|
|
/* 02228114 */ return;
|
|
}
|
|
|
|
// fn_02228118 @ 0x2228118
|
|
void Gambit_fn_02228118(CPUState* cpu) {
|
|
L_02228118: ; // 0x2228118
|
|
/* 02228118 */ cpu->r[3] = 0x00000001u;
|
|
/* 0222811C */ return;
|
|
}
|
|
|
|
// fn_02228120 @ 0x2228120
|
|
void Gambit_fn_02228120(CPUState* cpu) {
|
|
L_02228120: ; // 0x2228120
|
|
/* 02228120 */ cpu->r[3] = 0x00000001u;
|
|
/* 02228124 */ return;
|
|
}
|
|
|
|
// fn_02228128 @ 0x2228128
|
|
void Gambit_fn_02228128(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02228128: ; // 0x2228128
|
|
/* 02228128 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02228128 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0222812C */ _t1 = cpu->r[12] + 0x0000035Cu;
|
|
/* 0222812C */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02228130 */ cpu->ctr = cpu->r[0];
|
|
/* 02228134 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02228138 @ 0x2228138
|
|
void Gambit_fn_02228138(CPUState* cpu) {
|
|
L_02228138: ; // 0x2228138
|
|
/* 02228138 */ cpu->r[3] = 0x00000001u;
|
|
/* 0222813C */ return;
|
|
}
|
|
|
|
// fn_02228140 @ 0x2228140
|
|
void Gambit_fn_02228140(CPUState* cpu) {
|
|
L_02228140: ; // 0x2228140
|
|
/* 02228140 */ cpu->r[3] = 0x00000000u;
|
|
/* 02228144 */ return;
|
|
}
|
|
|
|
// fn_02228148 @ 0x2228148
|
|
void Gambit_fn_02228148(CPUState* cpu) {
|
|
L_02228148: ; // 0x2228148
|
|
/* 02228148 */ cpu->r[3] = 0x00000001u;
|
|
/* 0222814C */ return;
|
|
}
|
|
|
|
// fn_02228150 @ 0x2228150
|
|
void Gambit_fn_02228150(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_02228150: ; // 0x2228150
|
|
/* 02228150 */ _t0 = cpu->r[3] + 0x00000114u;
|
|
/* 02228150 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02228154 */ cpu->r[0] = 0x00000001u;
|
|
/* 02228158 */ _t1 = rbrew_rlwinm(cpu->r[0], 0x00000016u, 0x00000008u, 0x00000009u);
|
|
/* 02228158 */ _t2 = cpu->r[12] & 0xFF3FFFFFu;
|
|
/* 02228158 */ cpu->r[12] = _t2 | _t1;
|
|
/* 0222815C */ _t3 = cpu->r[3] + 0x00000114u;
|
|
/* 0222815C */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 02228160 */ return;
|
|
}
|
|
|
|
// fn_02228164 @ 0x2228164
|
|
void Gambit_fn_02228164(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02228164: ; // 0x2228164
|
|
/* 02228164 */ _t0 = cpu->r[3] + 0x000000A0u;
|
|
/* 02228164 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 02228168 */ return;
|
|
}
|
|
|
|
// fn_0222816C @ 0x222816c
|
|
void Gambit_fn_0222816C(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0222816C: ; // 0x222816c
|
|
/* 0222816C */ _t0 = cpu->r[3] + 0x00000020u;
|
|
/* 0222816C */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02228170 */ return;
|
|
}
|
|
|
|
// fn_02228174 @ 0x2228174
|
|
void Gambit_fn_02228174(CPUState* cpu) {
|
|
L_02228174: ; // 0x2228174
|
|
/* 02228174 */ cpu->r[3] = 0x00000000u;
|
|
/* 02228178 */ return;
|
|
}
|
|
|
|
// fn_0222817C @ 0x222817c
|
|
void Gambit_fn_0222817C(CPUState* cpu) {
|
|
L_0222817C: ; // 0x222817c
|
|
/* 0222817C */ cpu->r[3] = 0x00000000u;
|
|
/* 02228180 */ return;
|
|
}
|
|
|
|
// fn_02228184 @ 0x2228184
|
|
void Gambit_fn_02228184(CPUState* cpu) {
|
|
L_02228184: ; // 0x2228184
|
|
/* 02228184 */ cpu->r[3] = 0x00000001u;
|
|
/* 02228188 */ return;
|
|
}
|
|
|
|
// fn_0222818C @ 0x222818c
|
|
void Gambit_fn_0222818C(CPUState* cpu) {
|
|
L_0222818C: ; // 0x222818c
|
|
/* 0222818C */ cpu->r[3] = 0x00000000u;
|
|
/* 02228190 */ return;
|
|
}
|
|
|
|
// fn_02228194 @ 0x2228194
|
|
void Gambit_fn_02228194(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02228194: ; // 0x2228194
|
|
/* 02228194 */ _t0 = cpu->r[3] + 0x000000C0u;
|
|
/* 02228194 */ cpu->r[3] = rbrew_read8(cpu->mem, _t0);
|
|
/* 02228198 */ return;
|
|
}
|
|
|
|
// fn_0222819C @ 0x222819c
|
|
void Gambit_fn_0222819C(CPUState* cpu) {
|
|
L_0222819C: ; // 0x222819c
|
|
/* 0222819C */ return;
|
|
}
|
|
|
|
// fn_022281A0 @ 0x22281a0
|
|
void Gambit_fn_022281A0(CPUState* cpu) {
|
|
L_022281A0: ; // 0x22281a0
|
|
/* 022281A0 */ return;
|
|
}
|
|
|
|
// fn_022281A4 @ 0x22281a4
|
|
void Gambit_fn_022281A4(CPUState* cpu) {
|
|
L_022281A4: ; // 0x22281a4
|
|
/* 022281A4 */ cpu->r[3] = 0x00000000u;
|
|
/* 022281A8 */ return;
|
|
}
|
|
|
|
// fn_022281AC @ 0x22281ac
|
|
void Gambit_fn_022281AC(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_022281AC: ; // 0x22281ac
|
|
/* 022281AC */ cpu->r[12] = 0x10050000u;
|
|
/* 022281B0 */ _t0 = cpu->r[12] + 0xFFFFEAB0u;
|
|
/* 022281B0 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 022281B4 */ return;
|
|
}
|
|
|
|
// fn_022281B8 @ 0x22281b8
|
|
void Gambit_fn_022281B8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_022281B8: ; // 0x22281b8
|
|
/* 022281B8 */ _t0 = cpu->r[3] + 0x00000114u;
|
|
/* 022281B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022281BC */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000012u, 0x00000013u);
|
|
/* 022281BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022281C0 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022281C0 */ _t2 = _t1 & 0x00000001u;
|
|
/* 022281C0 */ if (_t2) goto L_022281D0; else goto L_022281C4;
|
|
L_022281C4: ; // 0x22281c4
|
|
/* 022281C4 */ cpu->r[12] = 0x10050000u;
|
|
/* 022281C8 */ _t3 = cpu->r[12] + 0xFFFFEAB0u;
|
|
/* 022281C8 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 022281CC */ return;
|
|
L_022281D0: ; // 0x22281d0
|
|
/* 022281D0 */ cpu->r[12] = 0x10050000u;
|
|
/* 022281D4 */ _t4 = cpu->r[12] + 0xFFFFEAB4u;
|
|
/* 022281D4 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 022281D8 */ return;
|
|
}
|
|
|
|
// fn_022281DC @ 0x22281dc
|
|
void Gambit_fn_022281DC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_022281DC: ; // 0x22281dc
|
|
/* 022281DC */ goto L_0222E4C4;
|
|
L_0222E4C4: ; // 0x222e4c4
|
|
/* 0222E4C4 */ cpu->r[0] = cpu->lr;
|
|
/* 0222E4C8 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 0222E4C8 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 0222E4CC */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 0222E4CC */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 0222E4CC */ cpu->r[1] = _t1;
|
|
/* 0222E4D0 */ Gambit_fn_021F7000(cpu);
|
|
/* 0222E4D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0222E4D8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222E4D8 */ _t3 = _t2 & 0x00000001u;
|
|
/* 0222E4D8 */ if (_t3) goto L_0222E4F4; else goto L_0222E4DC;
|
|
L_0222E4DC: ; // 0x222e4dc
|
|
/* 0222E4DC */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222E4DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0222E4E0 */ cpu->r[12] = 0x101E0000u;
|
|
/* 0222E4E4 */ cpu->lr = cpu->r[0];
|
|
/* 0222E4E8 */ _t5 = cpu->r[12] + 0xFFFF9594u;
|
|
/* 0222E4E8 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 0222E4EC */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 0222E4F0 */ return;
|
|
L_0222E4F4: ; // 0x222e4f4
|
|
/* 0222E4F4 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222E4F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0222E4F8 */ cpu->r[12] = 0x101E0000u;
|
|
/* 0222E4FC */ cpu->lr = cpu->r[0];
|
|
/* 0222E500 */ _t7 = cpu->r[12] + 0xFFFF9590u;
|
|
/* 0222E500 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 0222E504 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 0222E508 */ return;
|
|
}
|
|
|
|
// fn_022281E0 @ 0x22281e0
|
|
void Gambit_fn_022281E0(CPUState* cpu) {
|
|
L_022281E0: ; // 0x22281e0
|
|
/* 022281E0 */ cpu->r[3] = 0x00000000u;
|
|
/* 022281E4 */ return;
|
|
}
|
|
|
|
// fn_022281E8 @ 0x22281e8
|
|
void Gambit_fn_022281E8(CPUState* cpu) {
|
|
L_022281E8: ; // 0x22281e8
|
|
/* 022281E8 */ cpu->r[3] = 0x00000000u;
|
|
/* 022281EC */ return;
|
|
}
|
|
|
|
// fn_022281F0 @ 0x22281f0
|
|
void Gambit_fn_022281F0(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_022281F0: ; // 0x22281f0
|
|
/* 022281F0 */ _t0 = cpu->r[3] + 0x00000114u;
|
|
/* 022281F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022281F4 */ cpu->r[0] = cpu->r[0] | 0x00020000u;
|
|
/* 022281F8 */ _t1 = cpu->r[3] + 0x00000114u;
|
|
/* 022281F8 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 022281FC */ return;
|
|
}
|
|
|
|
// fn_02228200 @ 0x2228200
|
|
void Gambit_fn_02228200(CPUState* cpu) {
|
|
L_02228200: ; // 0x2228200
|
|
/* 02228200 */ cpu->r[3] = 0x00000001u;
|
|
/* 02228204 */ return;
|
|
}
|
|
|
|
// fn_02228208 @ 0x2228208
|
|
void Gambit_fn_02228208(CPUState* cpu) {
|
|
L_02228208: ; // 0x2228208
|
|
/* 02228208 */ cpu->r[3] = 0x00000003u;
|
|
/* 0222820C */ return;
|
|
}
|
|
|
|
// fn_02228210 @ 0x2228210
|
|
void Gambit_fn_02228210(CPUState* cpu) {
|
|
L_02228210: ; // 0x2228210
|
|
/* 02228210 */ cpu->r[3] = 0x00000000u;
|
|
/* 02228214 */ return;
|
|
}
|
|
|
|
// fn_02228218 @ 0x2228218
|
|
void Gambit_fn_02228218(CPUState* cpu) {
|
|
L_02228218: ; // 0x2228218
|
|
/* 02228218 */ cpu->r[3] = cpu->r[3] + 0x00000144u;
|
|
/* 0222821C */ return;
|
|
}
|
|
|
|
// fn_02228220 @ 0x2228220
|
|
void Gambit_fn_02228220(CPUState* cpu) {
|
|
L_02228220: ; // 0x2228220
|
|
/* 02228220 */ cpu->r[3] = cpu->r[3] + 0x00000174u;
|
|
/* 02228224 */ return;
|
|
}
|
|
|
|
// fn_02228228 @ 0x2228228
|
|
void Gambit_fn_02228228(CPUState* cpu) {
|
|
L_02228228: ; // 0x2228228
|
|
/* 02228228 */ return;
|
|
}
|
|
|
|
// fn_0222822C @ 0x222822c
|
|
void Gambit_fn_0222822C(CPUState* cpu) {
|
|
L_0222822C: ; // 0x222822c
|
|
/* 0222822C */ return;
|
|
}
|
|
|
|
// fn_02228230 @ 0x2228230
|
|
void Gambit_fn_02228230(CPUState* cpu) {
|
|
L_02228230: ; // 0x2228230
|
|
/* 02228230 */ return;
|
|
}
|
|
|
|
// fn_02228234 @ 0x2228234
|
|
void Gambit_fn_02228234(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02228234: ; // 0x2228234
|
|
/* 02228234 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02228234 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02228238 */ _t1 = cpu->r[12] + 0x00000544u;
|
|
/* 02228238 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0222823C */ cpu->ctr = cpu->r[0];
|
|
/* 02228240 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02228244 @ 0x2228244
|
|
void Gambit_fn_02228244(CPUState* cpu) {
|
|
L_02228244: ; // 0x2228244
|
|
/* 02228244 */ cpu->r[3] = 0x10050000u;
|
|
/* 02228248 */ cpu->r[3] = cpu->r[3] + 0xFFFFEA40u;
|
|
/* 0222824C */ return;
|
|
}
|
|
|
|
// fn_02228250 @ 0x2228250
|
|
void Gambit_fn_02228250(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _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_02228250: ; // 0x2228250
|
|
/* 02228250 */ cpu->r[8] = 0x101D0000u;
|
|
/* 02228254 */ _t0 = cpu->r[8] + 0xFFFFFD40u;
|
|
/* 02228254 */ cpu->r[8] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02228258 */ cpu->r[6] = 0x101D0000u;
|
|
/* 0222825C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02228260 */ cpu->r[6] = cpu->r[6] + 0xFFFFFF2Cu;
|
|
/* 02228264 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02228264 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02228264 */ if (_t2) goto L_02228268; else goto L_02228280;
|
|
L_02228268: ; // 0x2228268
|
|
/* 02228268 */ cpu->r[5] = 0x10050000u;
|
|
/* 0222826C */ cpu->r[0] = 0x00000001u;
|
|
/* 02228270 */ cpu->r[8] = 0x101D0000u;
|
|
/* 02228274 */ cpu->r[5] = cpu->r[5] + 0xFFFFEA30u;
|
|
/* 02228278 */ _t3 = cpu->r[8] + 0xFFFFFD40u;
|
|
/* 02228278 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0222827C */ _t4 = cpu->r[6] + 0x00000000u;
|
|
/* 0222827C */ rbrew_write32(cpu->mem, _t4, cpu->r[5]);
|
|
L_02228280: ; // 0x2228280
|
|
/* 02228280 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[6]);
|
|
/* 02228284 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02228284 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02228284 */ if (_t6) goto L_02228288; else goto L_02228290;
|
|
L_02228288: ; // 0x2228288
|
|
/* 02228288 */ cpu->r[3] = 0x00000001u;
|
|
/* 0222828C */ return;
|
|
L_02228290: ; // 0x2228290
|
|
/* 02228290 */ cpu->r[10] = 0x101D0000u;
|
|
/* 02228294 */ _t7 = cpu->r[10] + 0xFFFFE610u;
|
|
/* 02228294 */ cpu->r[10] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02228298 */ cpu->r[8] = 0x101D0000u;
|
|
/* 0222829C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 022282A0 */ cpu->r[8] = cpu->r[8] + 0xFFFFFEC8u;
|
|
/* 022282A4 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022282A4 */ _t9 = _t8 & 0x00000001u;
|
|
/* 022282A4 */ if (_t9) goto L_022282A8; else goto L_022282C0;
|
|
L_022282A8: ; // 0x22282a8
|
|
/* 022282A8 */ cpu->r[0] = 0x10050000u;
|
|
/* 022282AC */ cpu->r[7] = 0x00000001u;
|
|
/* 022282B0 */ cpu->r[6] = 0x101D0000u;
|
|
/* 022282B4 */ cpu->r[0] = cpu->r[0] + 0xFFFFEA20u;
|
|
/* 022282B8 */ _t10 = cpu->r[6] + 0xFFFFE610u;
|
|
/* 022282B8 */ rbrew_write32(cpu->mem, _t10, cpu->r[7]);
|
|
/* 022282BC */ _t11 = cpu->r[8] + 0x00000000u;
|
|
/* 022282BC */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_022282C0: ; // 0x22282c0
|
|
/* 022282C0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[8]);
|
|
/* 022282C4 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022282C4 */ _t13 = _t12 & 0x00000001u;
|
|
/* 022282C4 */ if (_t13) goto L_022282C8; else goto L_022282D0;
|
|
L_022282C8: ; // 0x22282c8
|
|
/* 022282C8 */ cpu->r[0] = 0x00000001u;
|
|
/* 022282CC */ goto L_022283C8;
|
|
L_022282D0: ; // 0x22282d0
|
|
/* 022282D0 */ cpu->r[12] = 0x101D0000u;
|
|
/* 022282D4 */ _t14 = cpu->r[12] + 0xFFFFDA00u;
|
|
/* 022282D4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022282D8 */ cpu->r[10] = 0x101D0000u;
|
|
/* 022282DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022282E0 */ cpu->r[10] = cpu->r[10] + 0xFFFFFBFCu;
|
|
/* 022282E4 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022282E4 */ _t16 = _t15 & 0x00000001u;
|
|
/* 022282E4 */ if (_t16) goto L_022282E8; else goto L_02228300;
|
|
L_022282E8: ; // 0x22282e8
|
|
/* 022282E8 */ cpu->r[7] = 0x10050000u;
|
|
/* 022282EC */ cpu->r[5] = 0x00000001u;
|
|
/* 022282F0 */ cpu->r[12] = 0x101D0000u;
|
|
/* 022282F4 */ cpu->r[7] = cpu->r[7] + 0xFFFFEA10u;
|
|
/* 022282F8 */ _t17 = cpu->r[12] + 0xFFFFDA00u;
|
|
/* 022282F8 */ rbrew_write32(cpu->mem, _t17, cpu->r[5]);
|
|
/* 022282FC */ _t18 = cpu->r[10] + 0x00000000u;
|
|
/* 022282FC */ rbrew_write32(cpu->mem, _t18, cpu->r[7]);
|
|
L_02228300: ; // 0x2228300
|
|
/* 02228300 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]);
|
|
/* 02228304 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02228304 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02228304 */ if (_t20) goto L_02228308; else goto L_02228310;
|
|
L_02228308: ; // 0x2228308
|
|
/* 02228308 */ cpu->r[0] = 0x00000001u;
|
|
/* 0222830C */ goto L_022283C8;
|
|
L_02228310: ; // 0x2228310
|
|
/* 02228310 */ cpu->r[11] = 0x101D0000u;
|
|
/* 02228314 */ _t21 = cpu->r[11] + 0xFFFFD9ECu;
|
|
/* 02228314 */ cpu->r[11] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02228318 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0222831C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02228320 */ cpu->r[12] = cpu->r[12] + 0xFFFFFB4Cu;
|
|
/* 02228324 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02228324 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02228324 */ if (_t23) goto L_02228328; else goto L_02228340;
|
|
L_02228328: ; // 0x2228328
|
|
/* 02228328 */ cpu->r[10] = 0x10050000u;
|
|
/* 0222832C */ cpu->r[9] = 0x00000001u;
|
|
/* 02228330 */ cpu->r[8] = 0x101D0000u;
|
|
/* 02228334 */ cpu->r[10] = cpu->r[10] + 0xFFFFEA00u;
|
|
/* 02228338 */ _t24 = cpu->r[8] + 0xFFFFD9ECu;
|
|
/* 02228338 */ rbrew_write32(cpu->mem, _t24, cpu->r[9]);
|
|
/* 0222833C */ _t25 = cpu->r[12] + 0x00000000u;
|
|
/* 0222833C */ rbrew_write32(cpu->mem, _t25, cpu->r[10]);
|
|
L_02228340: ; // 0x2228340
|
|
/* 02228340 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 02228344 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02228344 */ _t27 = _t26 & 0x00000001u;
|
|
/* 02228344 */ if (_t27) goto L_02228348; else goto L_02228350;
|
|
L_02228348: ; // 0x2228348
|
|
/* 02228348 */ cpu->r[0] = 0x00000001u;
|
|
/* 0222834C */ goto L_022283C4;
|
|
L_02228350: ; // 0x2228350
|
|
/* 02228350 */ cpu->r[10] = 0x101D0000u;
|
|
/* 02228354 */ _t28 = cpu->r[10] + 0xFFFFD4E8u;
|
|
/* 02228354 */ cpu->r[11] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02228354 */ cpu->r[10] = _t28;
|
|
/* 02228358 */ cpu->r[7] = 0x101D0000u;
|
|
/* 0222835C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02228360 */ cpu->r[7] = cpu->r[7] + 0xFFFFD4ECu;
|
|
/* 02228364 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02228364 */ _t30 = _t29 & 0x00000001u;
|
|
/* 02228364 */ if (_t30) goto L_02228368; else goto L_0222837C;
|
|
L_02228368: ; // 0x2228368
|
|
/* 02228368 */ cpu->r[0] = 0x10050000u;
|
|
/* 0222836C */ cpu->r[12] = 0x00000001u;
|
|
/* 02228370 */ cpu->r[0] = cpu->r[0] + 0xFFFFE9F0u;
|
|
/* 02228374 */ _t31 = cpu->r[10] + 0x00000000u;
|
|
/* 02228374 */ rbrew_write32(cpu->mem, _t31, cpu->r[12]);
|
|
/* 02228378 */ _t32 = cpu->r[7] + 0x00000000u;
|
|
/* 02228378 */ rbrew_write32(cpu->mem, _t32, cpu->r[0]);
|
|
L_0222837C: ; // 0x222837c
|
|
/* 0222837C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[7]);
|
|
/* 02228380 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02228380 */ _t34 = _t33 & 0x00000001u;
|
|
/* 02228380 */ if (_t34) goto L_02228384; else goto L_0222838C;
|
|
L_02228384: ; // 0x2228384
|
|
/* 02228384 */ cpu->r[0] = 0x00000001u;
|
|
/* 02228388 */ goto L_022283C4;
|
|
L_0222838C: ; // 0x222838c
|
|
/* 0222838C */ cpu->r[8] = 0x101D0000u;
|
|
/* 02228390 */ _t35 = cpu->r[8] + 0xFFFFD4E0u;
|
|
/* 02228390 */ cpu->r[5] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02228390 */ cpu->r[8] = _t35;
|
|
/* 02228394 */ cpu->r[6] = 0x101D0000u;
|
|
/* 02228398 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 0222839C */ cpu->r[6] = cpu->r[6] + 0xFFFFD4E4u;
|
|
/* 022283A0 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022283A0 */ _t37 = _t36 & 0x00000001u;
|
|
/* 022283A0 */ if (_t37) goto L_022283A4; else goto L_022283B8;
|
|
L_022283A4: ; // 0x22283a4
|
|
/* 022283A4 */ cpu->r[9] = 0x10050000u;
|
|
/* 022283A8 */ cpu->r[7] = 0x00000001u;
|
|
/* 022283AC */ cpu->r[9] = cpu->r[9] + 0xFFFFE9E0u;
|
|
/* 022283B0 */ _t38 = cpu->r[8] + 0x00000000u;
|
|
/* 022283B0 */ rbrew_write32(cpu->mem, _t38, cpu->r[7]);
|
|
/* 022283B4 */ _t39 = cpu->r[6] + 0x00000000u;
|
|
/* 022283B4 */ rbrew_write32(cpu->mem, _t39, cpu->r[9]);
|
|
L_022283B8: ; // 0x22283b8
|
|
/* 022283B8 */ cpu->r[0] = cpu->r[4] ^ cpu->r[6];
|
|
/* 022283BC */ cpu->r[5] = rbrew_clz32(cpu->r[0]);
|
|
/* 022283C0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[5], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
L_022283C4: ; // 0x22283c4
|
|
/* 022283C4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
L_022283C8: ; // 0x22283c8
|
|
/* 022283C8 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 022283CC */ return;
|
|
}
|
|
|
|
// fn_022283D0 @ 0x22283d0
|
|
void Gambit_fn_022283D0(CPUState* cpu) {
|
|
L_022283D0: ; // 0x22283d0
|
|
/* 022283D0 */ cpu->r[3] = 0x000007D0u;
|
|
/* 022283D4 */ return;
|
|
}
|
|
|
|
// fn_022283D8 @ 0x22283d8
|
|
void Gambit_fn_022283D8(CPUState* cpu) {
|
|
L_022283D8: ; // 0x22283d8
|
|
/* 022283D8 */ cpu->r[3] = 0x10050000u;
|
|
/* 022283DC */ cpu->r[3] = cpu->r[3] + 0xFFFFEA5Cu;
|
|
/* 022283E0 */ return;
|
|
}
|
|
|
|
// fn_022283E4 @ 0x22283e4
|
|
void Gambit_fn_022283E4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _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_022283E4: ; // 0x22283e4
|
|
/* 022283E4 */ cpu->r[8] = 0x101D0000u;
|
|
/* 022283E8 */ _t0 = cpu->r[8] + 0xFFFFFD44u;
|
|
/* 022283E8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022283EC */ cpu->r[6] = 0x101D0000u;
|
|
/* 022283F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 022283F4 */ cpu->r[6] = cpu->r[6] + 0xFFFFFF30u;
|
|
/* 022283F8 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022283F8 */ _t2 = _t1 & 0x00000001u;
|
|
/* 022283F8 */ if (_t2) goto L_022283FC; else goto L_02228414;
|
|
L_022283FC: ; // 0x22283fc
|
|
/* 022283FC */ cpu->r[5] = 0x10050000u;
|
|
/* 02228400 */ cpu->r[0] = 0x00000001u;
|
|
/* 02228404 */ cpu->r[8] = 0x101D0000u;
|
|
/* 02228408 */ cpu->r[5] = cpu->r[5] + 0xFFFFEA30u;
|
|
/* 0222840C */ _t3 = cpu->r[8] + 0xFFFFFD44u;
|
|
/* 0222840C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02228410 */ _t4 = cpu->r[6] + 0x00000000u;
|
|
/* 02228410 */ rbrew_write32(cpu->mem, _t4, cpu->r[5]);
|
|
L_02228414: ; // 0x2228414
|
|
/* 02228414 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[6]);
|
|
/* 02228418 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02228418 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02228418 */ if (_t6) goto L_0222841C; else goto L_02228424;
|
|
L_0222841C: ; // 0x222841c
|
|
/* 0222841C */ cpu->r[3] = 0x00000001u;
|
|
/* 02228420 */ return;
|
|
L_02228424: ; // 0x2228424
|
|
/* 02228424 */ cpu->r[10] = 0x101D0000u;
|
|
/* 02228428 */ _t7 = cpu->r[10] + 0xFFFFE610u;
|
|
/* 02228428 */ cpu->r[10] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0222842C */ cpu->r[8] = 0x101D0000u;
|
|
/* 02228430 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02228434 */ cpu->r[8] = cpu->r[8] + 0xFFFFFEC8u;
|
|
/* 02228438 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02228438 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02228438 */ if (_t9) goto L_0222843C; else goto L_02228454;
|
|
L_0222843C: ; // 0x222843c
|
|
/* 0222843C */ cpu->r[0] = 0x10050000u;
|
|
/* 02228440 */ cpu->r[7] = 0x00000001u;
|
|
/* 02228444 */ cpu->r[6] = 0x101D0000u;
|
|
/* 02228448 */ cpu->r[0] = cpu->r[0] + 0xFFFFEA20u;
|
|
/* 0222844C */ _t10 = cpu->r[6] + 0xFFFFE610u;
|
|
/* 0222844C */ rbrew_write32(cpu->mem, _t10, cpu->r[7]);
|
|
/* 02228450 */ _t11 = cpu->r[8] + 0x00000000u;
|
|
/* 02228450 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_02228454: ; // 0x2228454
|
|
/* 02228454 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[8]);
|
|
/* 02228458 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02228458 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02228458 */ if (_t13) goto L_0222845C; else goto L_02228464;
|
|
L_0222845C: ; // 0x222845c
|
|
/* 0222845C */ cpu->r[0] = 0x00000001u;
|
|
/* 02228460 */ goto L_0222855C;
|
|
L_02228464: ; // 0x2228464
|
|
/* 02228464 */ cpu->r[12] = 0x101D0000u;
|
|
/* 02228468 */ _t14 = cpu->r[12] + 0xFFFFDA00u;
|
|
/* 02228468 */ cpu->r[12] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0222846C */ cpu->r[10] = 0x101D0000u;
|
|
/* 02228470 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02228474 */ cpu->r[10] = cpu->r[10] + 0xFFFFFBFCu;
|
|
/* 02228478 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02228478 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02228478 */ if (_t16) goto L_0222847C; else goto L_02228494;
|
|
L_0222847C: ; // 0x222847c
|
|
/* 0222847C */ cpu->r[7] = 0x10050000u;
|
|
/* 02228480 */ cpu->r[5] = 0x00000001u;
|
|
/* 02228484 */ cpu->r[12] = 0x101D0000u;
|
|
/* 02228488 */ cpu->r[7] = cpu->r[7] + 0xFFFFEA10u;
|
|
/* 0222848C */ _t17 = cpu->r[12] + 0xFFFFDA00u;
|
|
/* 0222848C */ rbrew_write32(cpu->mem, _t17, cpu->r[5]);
|
|
/* 02228490 */ _t18 = cpu->r[10] + 0x00000000u;
|
|
/* 02228490 */ rbrew_write32(cpu->mem, _t18, cpu->r[7]);
|
|
L_02228494: ; // 0x2228494
|
|
/* 02228494 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]);
|
|
/* 02228498 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02228498 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02228498 */ if (_t20) goto L_0222849C; else goto L_022284A4;
|
|
L_0222849C: ; // 0x222849c
|
|
/* 0222849C */ cpu->r[0] = 0x00000001u;
|
|
/* 022284A0 */ goto L_0222855C;
|
|
L_022284A4: ; // 0x22284a4
|
|
/* 022284A4 */ cpu->r[11] = 0x101D0000u;
|
|
/* 022284A8 */ _t21 = cpu->r[11] + 0xFFFFD9ECu;
|
|
/* 022284A8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022284AC */ cpu->r[12] = 0x101D0000u;
|
|
/* 022284B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 022284B4 */ cpu->r[12] = cpu->r[12] + 0xFFFFFB4Cu;
|
|
/* 022284B8 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022284B8 */ _t23 = _t22 & 0x00000001u;
|
|
/* 022284B8 */ if (_t23) goto L_022284BC; else goto L_022284D4;
|
|
L_022284BC: ; // 0x22284bc
|
|
/* 022284BC */ cpu->r[10] = 0x10050000u;
|
|
/* 022284C0 */ cpu->r[9] = 0x00000001u;
|
|
/* 022284C4 */ cpu->r[8] = 0x101D0000u;
|
|
/* 022284C8 */ cpu->r[10] = cpu->r[10] + 0xFFFFEA00u;
|
|
/* 022284CC */ _t24 = cpu->r[8] + 0xFFFFD9ECu;
|
|
/* 022284CC */ rbrew_write32(cpu->mem, _t24, cpu->r[9]);
|
|
/* 022284D0 */ _t25 = cpu->r[12] + 0x00000000u;
|
|
/* 022284D0 */ rbrew_write32(cpu->mem, _t25, cpu->r[10]);
|
|
L_022284D4: ; // 0x22284d4
|
|
/* 022284D4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 022284D8 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022284D8 */ _t27 = _t26 & 0x00000001u;
|
|
/* 022284D8 */ if (_t27) goto L_022284DC; else goto L_022284E4;
|
|
L_022284DC: ; // 0x22284dc
|
|
/* 022284DC */ cpu->r[0] = 0x00000001u;
|
|
/* 022284E0 */ goto L_02228558;
|
|
L_022284E4: ; // 0x22284e4
|
|
/* 022284E4 */ cpu->r[10] = 0x101D0000u;
|
|
/* 022284E8 */ _t28 = cpu->r[10] + 0xFFFFD4E8u;
|
|
/* 022284E8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t28);
|
|
/* 022284E8 */ cpu->r[10] = _t28;
|
|
/* 022284EC */ cpu->r[7] = 0x101D0000u;
|
|
/* 022284F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 022284F4 */ cpu->r[7] = cpu->r[7] + 0xFFFFD4ECu;
|
|
/* 022284F8 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022284F8 */ _t30 = _t29 & 0x00000001u;
|
|
/* 022284F8 */ if (_t30) goto L_022284FC; else goto L_02228510;
|
|
L_022284FC: ; // 0x22284fc
|
|
/* 022284FC */ cpu->r[0] = 0x10050000u;
|
|
/* 02228500 */ cpu->r[12] = 0x00000001u;
|
|
/* 02228504 */ cpu->r[0] = cpu->r[0] + 0xFFFFE9F0u;
|
|
/* 02228508 */ _t31 = cpu->r[10] + 0x00000000u;
|
|
/* 02228508 */ rbrew_write32(cpu->mem, _t31, cpu->r[12]);
|
|
/* 0222850C */ _t32 = cpu->r[7] + 0x00000000u;
|
|
/* 0222850C */ rbrew_write32(cpu->mem, _t32, cpu->r[0]);
|
|
L_02228510: ; // 0x2228510
|
|
/* 02228510 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[7]);
|
|
/* 02228514 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02228514 */ _t34 = _t33 & 0x00000001u;
|
|
/* 02228514 */ if (_t34) goto L_02228518; else goto L_02228520;
|
|
L_02228518: ; // 0x2228518
|
|
/* 02228518 */ cpu->r[0] = 0x00000001u;
|
|
/* 0222851C */ goto L_02228558;
|
|
L_02228520: ; // 0x2228520
|
|
/* 02228520 */ cpu->r[8] = 0x101D0000u;
|
|
/* 02228524 */ _t35 = cpu->r[8] + 0xFFFFD4E0u;
|
|
/* 02228524 */ cpu->r[5] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02228524 */ cpu->r[8] = _t35;
|
|
/* 02228528 */ cpu->r[6] = 0x101D0000u;
|
|
/* 0222852C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 02228530 */ cpu->r[6] = cpu->r[6] + 0xFFFFD4E4u;
|
|
/* 02228534 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02228534 */ _t37 = _t36 & 0x00000001u;
|
|
/* 02228534 */ if (_t37) goto L_02228538; else goto L_0222854C;
|
|
L_02228538: ; // 0x2228538
|
|
/* 02228538 */ cpu->r[9] = 0x10050000u;
|
|
/* 0222853C */ cpu->r[7] = 0x00000001u;
|
|
/* 02228540 */ cpu->r[9] = cpu->r[9] + 0xFFFFE9E0u;
|
|
/* 02228544 */ _t38 = cpu->r[8] + 0x00000000u;
|
|
/* 02228544 */ rbrew_write32(cpu->mem, _t38, cpu->r[7]);
|
|
/* 02228548 */ _t39 = cpu->r[6] + 0x00000000u;
|
|
/* 02228548 */ rbrew_write32(cpu->mem, _t39, cpu->r[9]);
|
|
L_0222854C: ; // 0x222854c
|
|
/* 0222854C */ cpu->r[0] = cpu->r[4] ^ cpu->r[6];
|
|
/* 02228550 */ cpu->r[5] = rbrew_clz32(cpu->r[0]);
|
|
/* 02228554 */ cpu->r[0] = rbrew_rlwinm(cpu->r[5], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
L_02228558: ; // 0x2228558
|
|
/* 02228558 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
L_0222855C: ; // 0x222855c
|
|
/* 0222855C */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 02228560 */ return;
|
|
}
|
|
|
|
// fn_02228564 @ 0x2228564
|
|
void Gambit_fn_02228564(CPUState* cpu) {
|
|
L_02228564: ; // 0x2228564
|
|
/* 02228564 */ cpu->r[3] = 0x000007D1u;
|
|
/* 02228568 */ return;
|
|
}
|
|
|
|
// fn_0222856C @ 0x222856c
|
|
void Gambit_fn_0222856C(CPUState* cpu) {
|
|
L_0222856C: ; // 0x222856c
|
|
/* 0222856C */ cpu->r[3] = 0x10050000u;
|
|
/* 02228570 */ cpu->r[3] = cpu->r[3] + 0xFFFFEA78u;
|
|
/* 02228574 */ return;
|
|
}
|
|
|
|
// fn_02228578 @ 0x2228578
|
|
void Gambit_fn_02228578(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _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_02228578: ; // 0x2228578
|
|
/* 02228578 */ cpu->r[8] = 0x101D0000u;
|
|
/* 0222857C */ _t0 = cpu->r[8] + 0xFFFFFD48u;
|
|
/* 0222857C */ cpu->r[8] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02228580 */ cpu->r[6] = 0x101D0000u;
|
|
/* 02228584 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02228588 */ cpu->r[6] = cpu->r[6] + 0xFFFFFF34u;
|
|
/* 0222858C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222858C */ _t2 = _t1 & 0x00000001u;
|
|
/* 0222858C */ if (_t2) goto L_02228590; else goto L_022285A8;
|
|
L_02228590: ; // 0x2228590
|
|
/* 02228590 */ cpu->r[5] = 0x10050000u;
|
|
/* 02228594 */ cpu->r[0] = 0x00000001u;
|
|
/* 02228598 */ cpu->r[8] = 0x101D0000u;
|
|
/* 0222859C */ cpu->r[5] = cpu->r[5] + 0xFFFFEA30u;
|
|
/* 022285A0 */ _t3 = cpu->r[8] + 0xFFFFFD48u;
|
|
/* 022285A0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022285A4 */ _t4 = cpu->r[6] + 0x00000000u;
|
|
/* 022285A4 */ rbrew_write32(cpu->mem, _t4, cpu->r[5]);
|
|
L_022285A8: ; // 0x22285a8
|
|
/* 022285A8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[6]);
|
|
/* 022285AC */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022285AC */ _t6 = _t5 & 0x00000001u;
|
|
/* 022285AC */ if (_t6) goto L_022285B0; else goto L_022285B8;
|
|
L_022285B0: ; // 0x22285b0
|
|
/* 022285B0 */ cpu->r[3] = 0x00000001u;
|
|
/* 022285B4 */ return;
|
|
L_022285B8: ; // 0x22285b8
|
|
/* 022285B8 */ cpu->r[10] = 0x101D0000u;
|
|
/* 022285BC */ _t7 = cpu->r[10] + 0xFFFFE610u;
|
|
/* 022285BC */ cpu->r[10] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022285C0 */ cpu->r[8] = 0x101D0000u;
|
|
/* 022285C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 022285C8 */ cpu->r[8] = cpu->r[8] + 0xFFFFFEC8u;
|
|
/* 022285CC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022285CC */ _t9 = _t8 & 0x00000001u;
|
|
/* 022285CC */ if (_t9) goto L_022285D0; else goto L_022285E8;
|
|
L_022285D0: ; // 0x22285d0
|
|
/* 022285D0 */ cpu->r[0] = 0x10050000u;
|
|
/* 022285D4 */ cpu->r[7] = 0x00000001u;
|
|
/* 022285D8 */ cpu->r[6] = 0x101D0000u;
|
|
/* 022285DC */ cpu->r[0] = cpu->r[0] + 0xFFFFEA20u;
|
|
/* 022285E0 */ _t10 = cpu->r[6] + 0xFFFFE610u;
|
|
/* 022285E0 */ rbrew_write32(cpu->mem, _t10, cpu->r[7]);
|
|
/* 022285E4 */ _t11 = cpu->r[8] + 0x00000000u;
|
|
/* 022285E4 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_022285E8: ; // 0x22285e8
|
|
/* 022285E8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[8]);
|
|
/* 022285EC */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022285EC */ _t13 = _t12 & 0x00000001u;
|
|
/* 022285EC */ if (_t13) goto L_022285F0; else goto L_022285F8;
|
|
L_022285F0: ; // 0x22285f0
|
|
/* 022285F0 */ cpu->r[0] = 0x00000001u;
|
|
/* 022285F4 */ goto L_022286F0;
|
|
L_022285F8: ; // 0x22285f8
|
|
/* 022285F8 */ cpu->r[12] = 0x101D0000u;
|
|
/* 022285FC */ _t14 = cpu->r[12] + 0xFFFFDA00u;
|
|
/* 022285FC */ cpu->r[12] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02228600 */ cpu->r[10] = 0x101D0000u;
|
|
/* 02228604 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02228608 */ cpu->r[10] = cpu->r[10] + 0xFFFFFBFCu;
|
|
/* 0222860C */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222860C */ _t16 = _t15 & 0x00000001u;
|
|
/* 0222860C */ if (_t16) goto L_02228610; else goto L_02228628;
|
|
L_02228610: ; // 0x2228610
|
|
/* 02228610 */ cpu->r[7] = 0x10050000u;
|
|
/* 02228614 */ cpu->r[5] = 0x00000001u;
|
|
/* 02228618 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0222861C */ cpu->r[7] = cpu->r[7] + 0xFFFFEA10u;
|
|
/* 02228620 */ _t17 = cpu->r[12] + 0xFFFFDA00u;
|
|
/* 02228620 */ rbrew_write32(cpu->mem, _t17, cpu->r[5]);
|
|
/* 02228624 */ _t18 = cpu->r[10] + 0x00000000u;
|
|
/* 02228624 */ rbrew_write32(cpu->mem, _t18, cpu->r[7]);
|
|
L_02228628: ; // 0x2228628
|
|
/* 02228628 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]);
|
|
/* 0222862C */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222862C */ _t20 = _t19 & 0x00000001u;
|
|
/* 0222862C */ if (_t20) goto L_02228630; else goto L_02228638;
|
|
L_02228630: ; // 0x2228630
|
|
/* 02228630 */ cpu->r[0] = 0x00000001u;
|
|
/* 02228634 */ goto L_022286F0;
|
|
L_02228638: ; // 0x2228638
|
|
/* 02228638 */ cpu->r[11] = 0x101D0000u;
|
|
/* 0222863C */ _t21 = cpu->r[11] + 0xFFFFD9ECu;
|
|
/* 0222863C */ cpu->r[11] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02228640 */ cpu->r[12] = 0x101D0000u;
|
|
/* 02228644 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02228648 */ cpu->r[12] = cpu->r[12] + 0xFFFFFB4Cu;
|
|
/* 0222864C */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222864C */ _t23 = _t22 & 0x00000001u;
|
|
/* 0222864C */ if (_t23) goto L_02228650; else goto L_02228668;
|
|
L_02228650: ; // 0x2228650
|
|
/* 02228650 */ cpu->r[10] = 0x10050000u;
|
|
/* 02228654 */ cpu->r[9] = 0x00000001u;
|
|
/* 02228658 */ cpu->r[8] = 0x101D0000u;
|
|
/* 0222865C */ cpu->r[10] = cpu->r[10] + 0xFFFFEA00u;
|
|
/* 02228660 */ _t24 = cpu->r[8] + 0xFFFFD9ECu;
|
|
/* 02228660 */ rbrew_write32(cpu->mem, _t24, cpu->r[9]);
|
|
/* 02228664 */ _t25 = cpu->r[12] + 0x00000000u;
|
|
/* 02228664 */ rbrew_write32(cpu->mem, _t25, cpu->r[10]);
|
|
L_02228668: ; // 0x2228668
|
|
/* 02228668 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 0222866C */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222866C */ _t27 = _t26 & 0x00000001u;
|
|
/* 0222866C */ if (_t27) goto L_02228670; else goto L_02228678;
|
|
L_02228670: ; // 0x2228670
|
|
/* 02228670 */ cpu->r[0] = 0x00000001u;
|
|
/* 02228674 */ goto L_022286EC;
|
|
L_02228678: ; // 0x2228678
|
|
/* 02228678 */ cpu->r[10] = 0x101D0000u;
|
|
/* 0222867C */ _t28 = cpu->r[10] + 0xFFFFD4E8u;
|
|
/* 0222867C */ cpu->r[11] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0222867C */ cpu->r[10] = _t28;
|
|
/* 02228680 */ cpu->r[7] = 0x101D0000u;
|
|
/* 02228684 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02228688 */ cpu->r[7] = cpu->r[7] + 0xFFFFD4ECu;
|
|
/* 0222868C */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222868C */ _t30 = _t29 & 0x00000001u;
|
|
/* 0222868C */ if (_t30) goto L_02228690; else goto L_022286A4;
|
|
L_02228690: ; // 0x2228690
|
|
/* 02228690 */ cpu->r[0] = 0x10050000u;
|
|
/* 02228694 */ cpu->r[12] = 0x00000001u;
|
|
/* 02228698 */ cpu->r[0] = cpu->r[0] + 0xFFFFE9F0u;
|
|
/* 0222869C */ _t31 = cpu->r[10] + 0x00000000u;
|
|
/* 0222869C */ rbrew_write32(cpu->mem, _t31, cpu->r[12]);
|
|
/* 022286A0 */ _t32 = cpu->r[7] + 0x00000000u;
|
|
/* 022286A0 */ rbrew_write32(cpu->mem, _t32, cpu->r[0]);
|
|
L_022286A4: ; // 0x22286a4
|
|
/* 022286A4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[7]);
|
|
/* 022286A8 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022286A8 */ _t34 = _t33 & 0x00000001u;
|
|
/* 022286A8 */ if (_t34) goto L_022286AC; else goto L_022286B4;
|
|
L_022286AC: ; // 0x22286ac
|
|
/* 022286AC */ cpu->r[0] = 0x00000001u;
|
|
/* 022286B0 */ goto L_022286EC;
|
|
L_022286B4: ; // 0x22286b4
|
|
/* 022286B4 */ cpu->r[8] = 0x101D0000u;
|
|
/* 022286B8 */ _t35 = cpu->r[8] + 0xFFFFD4E0u;
|
|
/* 022286B8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t35);
|
|
/* 022286B8 */ cpu->r[8] = _t35;
|
|
/* 022286BC */ cpu->r[6] = 0x101D0000u;
|
|
/* 022286C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 022286C4 */ cpu->r[6] = cpu->r[6] + 0xFFFFD4E4u;
|
|
/* 022286C8 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022286C8 */ _t37 = _t36 & 0x00000001u;
|
|
/* 022286C8 */ if (_t37) goto L_022286CC; else goto L_022286E0;
|
|
L_022286CC: ; // 0x22286cc
|
|
/* 022286CC */ cpu->r[9] = 0x10050000u;
|
|
/* 022286D0 */ cpu->r[7] = 0x00000001u;
|
|
/* 022286D4 */ cpu->r[9] = cpu->r[9] + 0xFFFFE9E0u;
|
|
/* 022286D8 */ _t38 = cpu->r[8] + 0x00000000u;
|
|
/* 022286D8 */ rbrew_write32(cpu->mem, _t38, cpu->r[7]);
|
|
/* 022286DC */ _t39 = cpu->r[6] + 0x00000000u;
|
|
/* 022286DC */ rbrew_write32(cpu->mem, _t39, cpu->r[9]);
|
|
L_022286E0: ; // 0x22286e0
|
|
/* 022286E0 */ cpu->r[0] = cpu->r[4] ^ cpu->r[6];
|
|
/* 022286E4 */ cpu->r[5] = rbrew_clz32(cpu->r[0]);
|
|
/* 022286E8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[5], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
L_022286EC: ; // 0x22286ec
|
|
/* 022286EC */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
L_022286F0: ; // 0x22286f0
|
|
/* 022286F0 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 022286F4 */ return;
|
|
}
|
|
|
|
// fn_022286F8 @ 0x22286f8
|
|
void Gambit_fn_022286F8(CPUState* cpu) {
|
|
L_022286F8: ; // 0x22286f8
|
|
/* 022286F8 */ cpu->r[3] = 0x000007D2u;
|
|
/* 022286FC */ return;
|
|
}
|
|
|
|
// fn_02228700 @ 0x2228700
|
|
void Gambit_fn_02228700(CPUState* cpu) {
|
|
L_02228700: ; // 0x2228700
|
|
/* 02228700 */ cpu->r[3] = 0x10050000u;
|
|
/* 02228704 */ cpu->r[3] = cpu->r[3] + 0xFFFFEA94u;
|
|
/* 02228708 */ return;
|
|
}
|
|
|
|
// fn_0222870C @ 0x222870c
|
|
void Gambit_fn_0222870C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _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_0222870C: ; // 0x222870c
|
|
/* 0222870C */ cpu->r[8] = 0x101D0000u;
|
|
/* 02228710 */ _t0 = cpu->r[8] + 0xFFFFFD4Cu;
|
|
/* 02228710 */ cpu->r[8] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02228714 */ cpu->r[6] = 0x101D0000u;
|
|
/* 02228718 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0222871C */ cpu->r[6] = cpu->r[6] + 0xFFFFFF38u;
|
|
/* 02228720 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02228720 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02228720 */ if (_t2) goto L_02228724; else goto L_0222873C;
|
|
L_02228724: ; // 0x2228724
|
|
/* 02228724 */ cpu->r[5] = 0x10050000u;
|
|
/* 02228728 */ cpu->r[0] = 0x00000001u;
|
|
/* 0222872C */ cpu->r[8] = 0x101D0000u;
|
|
/* 02228730 */ cpu->r[5] = cpu->r[5] + 0xFFFFEA30u;
|
|
/* 02228734 */ _t3 = cpu->r[8] + 0xFFFFFD4Cu;
|
|
/* 02228734 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02228738 */ _t4 = cpu->r[6] + 0x00000000u;
|
|
/* 02228738 */ rbrew_write32(cpu->mem, _t4, cpu->r[5]);
|
|
L_0222873C: ; // 0x222873c
|
|
/* 0222873C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[6]);
|
|
/* 02228740 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02228740 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02228740 */ if (_t6) goto L_02228744; else goto L_0222874C;
|
|
L_02228744: ; // 0x2228744
|
|
/* 02228744 */ cpu->r[3] = 0x00000001u;
|
|
/* 02228748 */ return;
|
|
L_0222874C: ; // 0x222874c
|
|
/* 0222874C */ cpu->r[10] = 0x101D0000u;
|
|
/* 02228750 */ _t7 = cpu->r[10] + 0xFFFFE610u;
|
|
/* 02228750 */ cpu->r[10] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02228754 */ cpu->r[8] = 0x101D0000u;
|
|
/* 02228758 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0222875C */ cpu->r[8] = cpu->r[8] + 0xFFFFFEC8u;
|
|
/* 02228760 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02228760 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02228760 */ if (_t9) goto L_02228764; else goto L_0222877C;
|
|
L_02228764: ; // 0x2228764
|
|
/* 02228764 */ cpu->r[0] = 0x10050000u;
|
|
/* 02228768 */ cpu->r[7] = 0x00000001u;
|
|
/* 0222876C */ cpu->r[6] = 0x101D0000u;
|
|
/* 02228770 */ cpu->r[0] = cpu->r[0] + 0xFFFFEA20u;
|
|
/* 02228774 */ _t10 = cpu->r[6] + 0xFFFFE610u;
|
|
/* 02228774 */ rbrew_write32(cpu->mem, _t10, cpu->r[7]);
|
|
/* 02228778 */ _t11 = cpu->r[8] + 0x00000000u;
|
|
/* 02228778 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_0222877C: ; // 0x222877c
|
|
/* 0222877C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[8]);
|
|
/* 02228780 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02228780 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02228780 */ if (_t13) goto L_02228784; else goto L_0222878C;
|
|
L_02228784: ; // 0x2228784
|
|
/* 02228784 */ cpu->r[0] = 0x00000001u;
|
|
/* 02228788 */ goto L_02228884;
|
|
L_0222878C: ; // 0x222878c
|
|
/* 0222878C */ cpu->r[12] = 0x101D0000u;
|
|
/* 02228790 */ _t14 = cpu->r[12] + 0xFFFFDA00u;
|
|
/* 02228790 */ cpu->r[12] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02228794 */ cpu->r[10] = 0x101D0000u;
|
|
/* 02228798 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0222879C */ cpu->r[10] = cpu->r[10] + 0xFFFFFBFCu;
|
|
/* 022287A0 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022287A0 */ _t16 = _t15 & 0x00000001u;
|
|
/* 022287A0 */ if (_t16) goto L_022287A4; else goto L_022287BC;
|
|
L_022287A4: ; // 0x22287a4
|
|
/* 022287A4 */ cpu->r[7] = 0x10050000u;
|
|
/* 022287A8 */ cpu->r[5] = 0x00000001u;
|
|
/* 022287AC */ cpu->r[12] = 0x101D0000u;
|
|
/* 022287B0 */ cpu->r[7] = cpu->r[7] + 0xFFFFEA10u;
|
|
/* 022287B4 */ _t17 = cpu->r[12] + 0xFFFFDA00u;
|
|
/* 022287B4 */ rbrew_write32(cpu->mem, _t17, cpu->r[5]);
|
|
/* 022287B8 */ _t18 = cpu->r[10] + 0x00000000u;
|
|
/* 022287B8 */ rbrew_write32(cpu->mem, _t18, cpu->r[7]);
|
|
L_022287BC: ; // 0x22287bc
|
|
/* 022287BC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]);
|
|
/* 022287C0 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022287C0 */ _t20 = _t19 & 0x00000001u;
|
|
/* 022287C0 */ if (_t20) goto L_022287C4; else goto L_022287CC;
|
|
L_022287C4: ; // 0x22287c4
|
|
/* 022287C4 */ cpu->r[0] = 0x00000001u;
|
|
/* 022287C8 */ goto L_02228884;
|
|
L_022287CC: ; // 0x22287cc
|
|
/* 022287CC */ cpu->r[11] = 0x101D0000u;
|
|
/* 022287D0 */ _t21 = cpu->r[11] + 0xFFFFD9ECu;
|
|
/* 022287D0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022287D4 */ cpu->r[12] = 0x101D0000u;
|
|
/* 022287D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 022287DC */ cpu->r[12] = cpu->r[12] + 0xFFFFFB4Cu;
|
|
/* 022287E0 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022287E0 */ _t23 = _t22 & 0x00000001u;
|
|
/* 022287E0 */ if (_t23) goto L_022287E4; else goto L_022287FC;
|
|
L_022287E4: ; // 0x22287e4
|
|
/* 022287E4 */ cpu->r[10] = 0x10050000u;
|
|
/* 022287E8 */ cpu->r[9] = 0x00000001u;
|
|
/* 022287EC */ cpu->r[8] = 0x101D0000u;
|
|
/* 022287F0 */ cpu->r[10] = cpu->r[10] + 0xFFFFEA00u;
|
|
/* 022287F4 */ _t24 = cpu->r[8] + 0xFFFFD9ECu;
|
|
/* 022287F4 */ rbrew_write32(cpu->mem, _t24, cpu->r[9]);
|
|
/* 022287F8 */ _t25 = cpu->r[12] + 0x00000000u;
|
|
/* 022287F8 */ rbrew_write32(cpu->mem, _t25, cpu->r[10]);
|
|
L_022287FC: ; // 0x22287fc
|
|
/* 022287FC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 02228800 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02228800 */ _t27 = _t26 & 0x00000001u;
|
|
/* 02228800 */ if (_t27) goto L_02228804; else goto L_0222880C;
|
|
L_02228804: ; // 0x2228804
|
|
/* 02228804 */ cpu->r[0] = 0x00000001u;
|
|
/* 02228808 */ goto L_02228880;
|
|
L_0222880C: ; // 0x222880c
|
|
/* 0222880C */ cpu->r[10] = 0x101D0000u;
|
|
/* 02228810 */ _t28 = cpu->r[10] + 0xFFFFD4E8u;
|
|
/* 02228810 */ cpu->r[11] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02228810 */ cpu->r[10] = _t28;
|
|
/* 02228814 */ cpu->r[7] = 0x101D0000u;
|
|
/* 02228818 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0222881C */ cpu->r[7] = cpu->r[7] + 0xFFFFD4ECu;
|
|
/* 02228820 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02228820 */ _t30 = _t29 & 0x00000001u;
|
|
/* 02228820 */ if (_t30) goto L_02228824; else goto L_02228838;
|
|
L_02228824: ; // 0x2228824
|
|
/* 02228824 */ cpu->r[0] = 0x10050000u;
|
|
/* 02228828 */ cpu->r[12] = 0x00000001u;
|
|
/* 0222882C */ cpu->r[0] = cpu->r[0] + 0xFFFFE9F0u;
|
|
/* 02228830 */ _t31 = cpu->r[10] + 0x00000000u;
|
|
/* 02228830 */ rbrew_write32(cpu->mem, _t31, cpu->r[12]);
|
|
/* 02228834 */ _t32 = cpu->r[7] + 0x00000000u;
|
|
/* 02228834 */ rbrew_write32(cpu->mem, _t32, cpu->r[0]);
|
|
L_02228838: ; // 0x2228838
|
|
/* 02228838 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[7]);
|
|
/* 0222883C */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222883C */ _t34 = _t33 & 0x00000001u;
|
|
/* 0222883C */ if (_t34) goto L_02228840; else goto L_02228848;
|
|
L_02228840: ; // 0x2228840
|
|
/* 02228840 */ cpu->r[0] = 0x00000001u;
|
|
/* 02228844 */ goto L_02228880;
|
|
L_02228848: ; // 0x2228848
|
|
/* 02228848 */ cpu->r[8] = 0x101D0000u;
|
|
/* 0222884C */ _t35 = cpu->r[8] + 0xFFFFD4E0u;
|
|
/* 0222884C */ cpu->r[5] = rbrew_read32(cpu->mem, _t35);
|
|
/* 0222884C */ cpu->r[8] = _t35;
|
|
/* 02228850 */ cpu->r[6] = 0x101D0000u;
|
|
/* 02228854 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 02228858 */ cpu->r[6] = cpu->r[6] + 0xFFFFD4E4u;
|
|
/* 0222885C */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222885C */ _t37 = _t36 & 0x00000001u;
|
|
/* 0222885C */ if (_t37) goto L_02228860; else goto L_02228874;
|
|
L_02228860: ; // 0x2228860
|
|
/* 02228860 */ cpu->r[9] = 0x10050000u;
|
|
/* 02228864 */ cpu->r[7] = 0x00000001u;
|
|
/* 02228868 */ cpu->r[9] = cpu->r[9] + 0xFFFFE9E0u;
|
|
/* 0222886C */ _t38 = cpu->r[8] + 0x00000000u;
|
|
/* 0222886C */ rbrew_write32(cpu->mem, _t38, cpu->r[7]);
|
|
/* 02228870 */ _t39 = cpu->r[6] + 0x00000000u;
|
|
/* 02228870 */ rbrew_write32(cpu->mem, _t39, cpu->r[9]);
|
|
L_02228874: ; // 0x2228874
|
|
/* 02228874 */ cpu->r[0] = cpu->r[4] ^ cpu->r[6];
|
|
/* 02228878 */ cpu->r[5] = rbrew_clz32(cpu->r[0]);
|
|
/* 0222887C */ cpu->r[0] = rbrew_rlwinm(cpu->r[5], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
L_02228880: ; // 0x2228880
|
|
/* 02228880 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
L_02228884: ; // 0x2228884
|
|
/* 02228884 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 02228888 */ return;
|
|
}
|
|
|
|
// fn_0222888C @ 0x222888c
|
|
void Gambit_fn_0222888C(CPUState* cpu) {
|
|
L_0222888C: ; // 0x222888c
|
|
/* 0222888C */ cpu->r[3] = 0x000007D3u;
|
|
/* 02228890 */ return;
|
|
}
|
|
|
|
// fn_02228894 @ 0x2228894
|
|
void Gambit_fn_02228894(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _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_02228894: ; // 0x2228894
|
|
/* 02228894 */ cpu->r[0] = cpu->lr;
|
|
/* 02228898 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 02228898 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02228898 */ cpu->r[1] = _t0;
|
|
/* 0222889C */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 0222889C */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 022288A0 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022288A0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022288A4 */ /* nop */
|
|
/* 022288A8 */ _t3 = cpu->r[1] + 0x00000018u;
|
|
/* 022288A8 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 022288AC */ cpu->r[31] = cpu->r[3];
|
|
/* 022288AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022288B0 */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 022288B0 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 022288B4 */ _t5 = cpu->r[1] + 0x00000024u;
|
|
/* 022288B4 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 022288B8 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022288B8 */ _t7 = _t6 & 0x00000001u;
|
|
/* 022288B8 */ if (_t7) goto L_022288BC; else goto L_022288CC;
|
|
L_022288BC: ; // 0x22288bc
|
|
/* 022288BC */ cpu->r[3] = 0x00000128u;
|
|
/* 022288C0 */ Gambit_fn_02801A78(cpu);
|
|
/* 022288C4 */ cpu->r[31] = cpu->r[3];
|
|
/* 022288C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022288C8 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022288C8 */ _t9 = _t8 & 0x00000001u;
|
|
/* 022288C8 */ if (_t9) goto L_022289FC; else goto L_022288CC;
|
|
L_022288CC: ; // 0x22288cc
|
|
/* 022288CC */ cpu->r[3] = cpu->r[31];
|
|
/* 022288D0 */ Gambit_fn_021BAF70(cpu);
|
|
/* 022288D4 */ cpu->r[12] = 0x10050000u;
|
|
/* 022288D8 */ cpu->r[0] = 0x10050000u;
|
|
/* 022288DC */ _t10 = cpu->r[12] + 0x0000009Cu;
|
|
/* 022288DC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 022288E0 */ cpu->r[0] = cpu->r[0] + 0x00000134u;
|
|
/* 022288E4 */ cpu->r[3] = cpu->r[31] + 0x00000084u;
|
|
/* 022288E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022288E8 */ _t11 = cpu->r[31] + 0x00000004u;
|
|
/* 022288E8 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 022288EC */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022288EC */ _t13 = _t12 & 0x00000001u;
|
|
/* 022288EC */ if (_t13) goto L_022288F0; else goto L_02228900;
|
|
L_022288F0: ; // 0x22288f0
|
|
/* 022288F0 */ cpu->r[3] = 0x00000020u;
|
|
/* 022288F4 */ Gambit_fn_02801A78(cpu);
|
|
/* 022288F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022288FC */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022288FC */ _t15 = _t14 & 0x00000001u;
|
|
/* 022288FC */ if (_t15) goto L_02228944; else goto L_02228900;
|
|
L_02228900: ; // 0x2228900
|
|
/* 02228900 */ cpu->r[10] = 0x10110000u;
|
|
/* 02228904 */ cpu->r[10] = cpu->r[10] + 0xFFFFEF7Cu;
|
|
/* 02228908 */ cpu->r[11] = 0x101F0000u;
|
|
/* 0222890C */ _t16 = cpu->r[3] + 0x00000000u;
|
|
/* 0222890C */ rbrew_write32(cpu->mem, _t16, cpu->r[10]);
|
|
/* 02228910 */ _t17 = cpu->r[11] + 0x00003840u;
|
|
/* 02228910 */ cpu->r[12] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02228910 */ cpu->r[11] = _t17;
|
|
/* 02228914 */ _t18 = cpu->r[3] + 0x00000004u;
|
|
/* 02228914 */ rbrew_write32(cpu->mem, _t18, cpu->r[12]);
|
|
/* 02228918 */ _t19 = cpu->r[11] + 0x00000004u;
|
|
/* 02228918 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0222891C */ _t20 = cpu->r[3] + 0x00000008u;
|
|
/* 0222891C */ rbrew_write32(cpu->mem, _t20, cpu->r[0]);
|
|
/* 02228920 */ _t21 = cpu->r[11] + 0x00000008u;
|
|
/* 02228920 */ cpu->r[10] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02228924 */ _t22 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02228924 */ rbrew_write32(cpu->mem, _t22, cpu->r[10]);
|
|
/* 02228928 */ _t23 = cpu->r[11] + 0x00000000u;
|
|
/* 02228928 */ cpu->r[12] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0222892C */ _t24 = cpu->r[3] + 0x00000010u;
|
|
/* 0222892C */ rbrew_write32(cpu->mem, _t24, cpu->r[12]);
|
|
/* 02228930 */ _t25 = cpu->r[11] + 0x00000004u;
|
|
/* 02228930 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02228934 */ _t26 = cpu->r[3] + 0x00000014u;
|
|
/* 02228934 */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 02228938 */ _t27 = cpu->r[11] + 0x00000008u;
|
|
/* 02228938 */ cpu->r[10] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0222893C */ _t28 = cpu->r[3] + 0x0000001Cu;
|
|
/* 0222893C */ rbrew_write_f32(cpu->mem, _t28, cpu->f[31]);
|
|
/* 02228940 */ _t29 = cpu->r[3] + 0x00000018u;
|
|
/* 02228940 */ rbrew_write32(cpu->mem, _t29, cpu->r[10]);
|
|
L_02228944: ; // 0x2228944
|
|
/* 02228944 */ cpu->r[0] = cpu->r[31] + 0x000000A4u;
|
|
/* 02228944 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02228948 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02228948 */ _t31 = _t30 & 0x00000001u;
|
|
/* 02228948 */ if (_t31) goto L_0222894C; else goto L_02228954;
|
|
L_0222894C: ; // 0x222894c
|
|
/* 0222894C */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02228950 */ Gambit_fn_02801A78(cpu);
|
|
L_02228954: ; // 0x2228954
|
|
/* 02228954 */ cpu->r[3] = cpu->r[31] + 0x000000B0u;
|
|
/* 02228958 */ Gambit_fn_02043B8C(cpu);
|
|
/* 0222895C */ cpu->r[30] = 0x00000000u;
|
|
/* 02228960 */ cpu->r[10] = cpu->r[31] + 0x000000C4u;
|
|
/* 02228960 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02228964 */ _t32 = cpu->r[31] + 0x000000C0u;
|
|
/* 02228964 */ rbrew_write8(cpu->mem, _t32, (uint8_t)cpu->r[30]);
|
|
/* 02228968 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02228968 */ _t34 = _t33 & 0x00000001u;
|
|
/* 02228968 */ if (_t34) goto L_0222896C; else goto L_02228974;
|
|
L_0222896C: ; // 0x222896c
|
|
/* 0222896C */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02228970 */ Gambit_fn_02801A78(cpu);
|
|
L_02228974: ; // 0x2228974
|
|
/* 02228974 */ cpu->r[0] = cpu->r[31] + 0x000000D0u;
|
|
/* 02228974 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02228978 */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02228978 */ _t36 = _t35 & 0x00000001u;
|
|
/* 02228978 */ if (_t36) goto L_0222897C; else goto L_02228984;
|
|
L_0222897C: ; // 0x222897c
|
|
/* 0222897C */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02228980 */ Gambit_fn_02801A78(cpu);
|
|
L_02228984: ; // 0x2228984
|
|
/* 02228984 */ _t37 = cpu->r[31] + 0x000000E0u;
|
|
/* 02228984 */ rbrew_write_f32(cpu->mem, _t37, cpu->f[31]);
|
|
/* 02228988 */ cpu->r[12] = 0x10050000u;
|
|
/* 0222898C */ _t38 = cpu->r[31] + 0x000000DCu;
|
|
/* 0222898C */ rbrew_write_f32(cpu->mem, _t38, cpu->f[31]);
|
|
/* 02228990 */ cpu->r[10] = cpu->r[31] + 0x000000F0u;
|
|
/* 02228990 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02228994 */ _t39 = cpu->r[31] + 0x000000E4u;
|
|
/* 02228994 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[31]);
|
|
/* 02228998 */ _t40 = cpu->r[12] + 0x00000098u;
|
|
/* 02228998 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 0222899C */ _t41 = cpu->r[31] + 0x000000E8u;
|
|
/* 0222899C */ rbrew_write_f32(cpu->mem, _t41, cpu->f[31]);
|
|
/* 022289A0 */ _t42 = cpu->r[31] + 0x000000ECu;
|
|
/* 022289A0 */ rbrew_write_f32(cpu->mem, _t42, cpu->f[0]);
|
|
/* 022289A4 */ _t43 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022289A4 */ _t44 = _t43 & 0x00000001u;
|
|
/* 022289A4 */ if (_t44) goto L_022289A8; else goto L_022289B0;
|
|
L_022289A8: ; // 0x22289a8
|
|
/* 022289A8 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 022289AC */ Gambit_fn_02801A78(cpu);
|
|
L_022289B0: ; // 0x22289b0
|
|
/* 022289B0 */ cpu->r[11] = cpu->r[31] + 0x000000FCu;
|
|
/* 022289B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 022289B4 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022289B4 */ _t46 = _t45 & 0x00000001u;
|
|
/* 022289B4 */ if (_t46) goto L_022289B8; else goto L_022289C0;
|
|
L_022289B8: ; // 0x22289b8
|
|
/* 022289B8 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 022289BC */ Gambit_fn_02801A78(cpu);
|
|
L_022289C0: ; // 0x22289c0
|
|
/* 022289C0 */ cpu->r[12] = cpu->r[31] + 0x00000108u;
|
|
/* 022289C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022289C4 */ _t47 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022289C4 */ _t48 = _t47 & 0x00000001u;
|
|
/* 022289C4 */ if (_t48) goto L_022289C8; else goto L_022289D0;
|
|
L_022289C8: ; // 0x22289c8
|
|
/* 022289C8 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 022289CC */ Gambit_fn_02801A78(cpu);
|
|
L_022289D0: ; // 0x22289d0
|
|
/* 022289D0 */ _t49 = cpu->r[31] + 0x00000114u;
|
|
/* 022289D0 */ rbrew_write8(cpu->mem, _t49, (uint8_t)cpu->r[30]);
|
|
/* 022289D4 */ cpu->r[0] = 0x00000014u;
|
|
/* 022289D8 */ _t50 = cpu->r[31] + 0x00000115u;
|
|
/* 022289D8 */ rbrew_write8(cpu->mem, _t50, (uint8_t)cpu->r[0]);
|
|
/* 022289DC */ _t51 = cpu->r[31] + 0x00000114u;
|
|
/* 022289DC */ cpu->r[10] = rbrew_read32(cpu->mem, _t51);
|
|
/* 022289E0 */ cpu->r[0] = 0x0000000Bu;
|
|
/* 022289E4 */ _t52 = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000011u, 0x0000001Fu);
|
|
/* 022289E4 */ _t53 = cpu->r[10] & 0xFFFF8000u;
|
|
/* 022289E4 */ cpu->r[10] = _t53 | _t52;
|
|
/* 022289E8 */ cpu->r[0] = cpu->r[31] + 0x0000011Cu;
|
|
/* 022289E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022289EC */ _t54 = cpu->r[31] + 0x00000114u;
|
|
/* 022289EC */ rbrew_write32(cpu->mem, _t54, cpu->r[10]);
|
|
/* 022289F0 */ _t55 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022289F0 */ _t56 = _t55 & 0x00000001u;
|
|
/* 022289F0 */ if (_t56) goto L_022289F4; else goto L_022289FC;
|
|
L_022289F4: ; // 0x22289f4
|
|
/* 022289F4 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 022289F8 */ Gambit_fn_02801A78(cpu);
|
|
L_022289FC: ; // 0x22289fc
|
|
/* 022289FC */ _t57 = cpu->r[1] + 0x00000018u;
|
|
/* 022289FC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 02228A00 */ cpu->r[3] = cpu->r[31];
|
|
/* 02228A04 */ _t58 = cpu->r[1] + 0x00000008u;
|
|
/* 02228A04 */ cpu->r[30] = rbrew_read32(cpu->mem, _t58);
|
|
/* 02228A08 */ _t59 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02228A08 */ cpu->r[31] = rbrew_read32(cpu->mem, _t59);
|
|
/* 02228A0C */ _t60 = cpu->r[1] + 0x00000010u;
|
|
/* 02228A0C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t60);
|
|
/* 02228A10 */ _t61 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02228A10 */ _t62 = _t61 & 0x00000001u;
|
|
/* 02228A10 */ if (_t62) goto L_02228A14; // else: addr-0 trap, fall-through
|
|
L_02228A14: ; // 0x2228a14
|
|
/* 02228A14 */ _t63 = cpu->r[1] + 0x00000024u;
|
|
/* 02228A14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t63);
|
|
/* 02228A18 */ cpu->lr = cpu->r[0];
|
|
/* 02228A1C */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 02228A20 */ return;
|
|
}
|
|
|
|
// fn_02228898 @ 0x2228898
|
|
void Gambit_fn_02228898(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _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_02228898: ; // 0x2228898
|
|
/* 02228898 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 02228898 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02228898 */ cpu->r[1] = _t0;
|
|
/* 0222889C */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 0222889C */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 022288A0 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022288A0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022288A4 */ /* nop */
|
|
/* 022288A8 */ _t3 = cpu->r[1] + 0x00000018u;
|
|
/* 022288A8 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 022288AC */ cpu->r[31] = cpu->r[3];
|
|
/* 022288AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022288B0 */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 022288B0 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 022288B4 */ _t5 = cpu->r[1] + 0x00000024u;
|
|
/* 022288B4 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 022288B8 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022288B8 */ _t7 = _t6 & 0x00000001u;
|
|
/* 022288B8 */ if (_t7) goto L_022288BC; else goto L_022288CC;
|
|
L_022288BC: ; // 0x22288bc
|
|
/* 022288BC */ cpu->r[3] = 0x00000128u;
|
|
/* 022288C0 */ Gambit_fn_02801A78(cpu);
|
|
/* 022288C4 */ cpu->r[31] = cpu->r[3];
|
|
/* 022288C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022288C8 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022288C8 */ _t9 = _t8 & 0x00000001u;
|
|
/* 022288C8 */ if (_t9) goto L_022289FC; else goto L_022288CC;
|
|
L_022288CC: ; // 0x22288cc
|
|
/* 022288CC */ cpu->r[3] = cpu->r[31];
|
|
/* 022288D0 */ Gambit_fn_021BAF70(cpu);
|
|
/* 022288D4 */ cpu->r[12] = 0x10050000u;
|
|
/* 022288D8 */ cpu->r[0] = 0x10050000u;
|
|
/* 022288DC */ _t10 = cpu->r[12] + 0x0000009Cu;
|
|
/* 022288DC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 022288E0 */ cpu->r[0] = cpu->r[0] + 0x00000134u;
|
|
/* 022288E4 */ cpu->r[3] = cpu->r[31] + 0x00000084u;
|
|
/* 022288E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022288E8 */ _t11 = cpu->r[31] + 0x00000004u;
|
|
/* 022288E8 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 022288EC */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022288EC */ _t13 = _t12 & 0x00000001u;
|
|
/* 022288EC */ if (_t13) goto L_022288F0; else goto L_02228900;
|
|
L_022288F0: ; // 0x22288f0
|
|
/* 022288F0 */ cpu->r[3] = 0x00000020u;
|
|
/* 022288F4 */ Gambit_fn_02801A78(cpu);
|
|
/* 022288F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022288FC */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022288FC */ _t15 = _t14 & 0x00000001u;
|
|
/* 022288FC */ if (_t15) goto L_02228944; else goto L_02228900;
|
|
L_02228900: ; // 0x2228900
|
|
/* 02228900 */ cpu->r[10] = 0x10110000u;
|
|
/* 02228904 */ cpu->r[10] = cpu->r[10] + 0xFFFFEF7Cu;
|
|
/* 02228908 */ cpu->r[11] = 0x101F0000u;
|
|
/* 0222890C */ _t16 = cpu->r[3] + 0x00000000u;
|
|
/* 0222890C */ rbrew_write32(cpu->mem, _t16, cpu->r[10]);
|
|
/* 02228910 */ _t17 = cpu->r[11] + 0x00003840u;
|
|
/* 02228910 */ cpu->r[12] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02228910 */ cpu->r[11] = _t17;
|
|
/* 02228914 */ _t18 = cpu->r[3] + 0x00000004u;
|
|
/* 02228914 */ rbrew_write32(cpu->mem, _t18, cpu->r[12]);
|
|
/* 02228918 */ _t19 = cpu->r[11] + 0x00000004u;
|
|
/* 02228918 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0222891C */ _t20 = cpu->r[3] + 0x00000008u;
|
|
/* 0222891C */ rbrew_write32(cpu->mem, _t20, cpu->r[0]);
|
|
/* 02228920 */ _t21 = cpu->r[11] + 0x00000008u;
|
|
/* 02228920 */ cpu->r[10] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02228924 */ _t22 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02228924 */ rbrew_write32(cpu->mem, _t22, cpu->r[10]);
|
|
/* 02228928 */ _t23 = cpu->r[11] + 0x00000000u;
|
|
/* 02228928 */ cpu->r[12] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0222892C */ _t24 = cpu->r[3] + 0x00000010u;
|
|
/* 0222892C */ rbrew_write32(cpu->mem, _t24, cpu->r[12]);
|
|
/* 02228930 */ _t25 = cpu->r[11] + 0x00000004u;
|
|
/* 02228930 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02228934 */ _t26 = cpu->r[3] + 0x00000014u;
|
|
/* 02228934 */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 02228938 */ _t27 = cpu->r[11] + 0x00000008u;
|
|
/* 02228938 */ cpu->r[10] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0222893C */ _t28 = cpu->r[3] + 0x0000001Cu;
|
|
/* 0222893C */ rbrew_write_f32(cpu->mem, _t28, cpu->f[31]);
|
|
/* 02228940 */ _t29 = cpu->r[3] + 0x00000018u;
|
|
/* 02228940 */ rbrew_write32(cpu->mem, _t29, cpu->r[10]);
|
|
L_02228944: ; // 0x2228944
|
|
/* 02228944 */ cpu->r[0] = cpu->r[31] + 0x000000A4u;
|
|
/* 02228944 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02228948 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02228948 */ _t31 = _t30 & 0x00000001u;
|
|
/* 02228948 */ if (_t31) goto L_0222894C; else goto L_02228954;
|
|
L_0222894C: ; // 0x222894c
|
|
/* 0222894C */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02228950 */ Gambit_fn_02801A78(cpu);
|
|
L_02228954: ; // 0x2228954
|
|
/* 02228954 */ cpu->r[3] = cpu->r[31] + 0x000000B0u;
|
|
/* 02228958 */ Gambit_fn_02043B8C(cpu);
|
|
/* 0222895C */ cpu->r[30] = 0x00000000u;
|
|
/* 02228960 */ cpu->r[10] = cpu->r[31] + 0x000000C4u;
|
|
/* 02228960 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02228964 */ _t32 = cpu->r[31] + 0x000000C0u;
|
|
/* 02228964 */ rbrew_write8(cpu->mem, _t32, (uint8_t)cpu->r[30]);
|
|
/* 02228968 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02228968 */ _t34 = _t33 & 0x00000001u;
|
|
/* 02228968 */ if (_t34) goto L_0222896C; else goto L_02228974;
|
|
L_0222896C: ; // 0x222896c
|
|
/* 0222896C */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02228970 */ Gambit_fn_02801A78(cpu);
|
|
L_02228974: ; // 0x2228974
|
|
/* 02228974 */ cpu->r[0] = cpu->r[31] + 0x000000D0u;
|
|
/* 02228974 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02228978 */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02228978 */ _t36 = _t35 & 0x00000001u;
|
|
/* 02228978 */ if (_t36) goto L_0222897C; else goto L_02228984;
|
|
L_0222897C: ; // 0x222897c
|
|
/* 0222897C */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02228980 */ Gambit_fn_02801A78(cpu);
|
|
L_02228984: ; // 0x2228984
|
|
/* 02228984 */ _t37 = cpu->r[31] + 0x000000E0u;
|
|
/* 02228984 */ rbrew_write_f32(cpu->mem, _t37, cpu->f[31]);
|
|
/* 02228988 */ cpu->r[12] = 0x10050000u;
|
|
/* 0222898C */ _t38 = cpu->r[31] + 0x000000DCu;
|
|
/* 0222898C */ rbrew_write_f32(cpu->mem, _t38, cpu->f[31]);
|
|
/* 02228990 */ cpu->r[10] = cpu->r[31] + 0x000000F0u;
|
|
/* 02228990 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02228994 */ _t39 = cpu->r[31] + 0x000000E4u;
|
|
/* 02228994 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[31]);
|
|
/* 02228998 */ _t40 = cpu->r[12] + 0x00000098u;
|
|
/* 02228998 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 0222899C */ _t41 = cpu->r[31] + 0x000000E8u;
|
|
/* 0222899C */ rbrew_write_f32(cpu->mem, _t41, cpu->f[31]);
|
|
/* 022289A0 */ _t42 = cpu->r[31] + 0x000000ECu;
|
|
/* 022289A0 */ rbrew_write_f32(cpu->mem, _t42, cpu->f[0]);
|
|
/* 022289A4 */ _t43 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022289A4 */ _t44 = _t43 & 0x00000001u;
|
|
/* 022289A4 */ if (_t44) goto L_022289A8; else goto L_022289B0;
|
|
L_022289A8: ; // 0x22289a8
|
|
/* 022289A8 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 022289AC */ Gambit_fn_02801A78(cpu);
|
|
L_022289B0: ; // 0x22289b0
|
|
/* 022289B0 */ cpu->r[11] = cpu->r[31] + 0x000000FCu;
|
|
/* 022289B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 022289B4 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022289B4 */ _t46 = _t45 & 0x00000001u;
|
|
/* 022289B4 */ if (_t46) goto L_022289B8; else goto L_022289C0;
|
|
L_022289B8: ; // 0x22289b8
|
|
/* 022289B8 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 022289BC */ Gambit_fn_02801A78(cpu);
|
|
L_022289C0: ; // 0x22289c0
|
|
/* 022289C0 */ cpu->r[12] = cpu->r[31] + 0x00000108u;
|
|
/* 022289C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022289C4 */ _t47 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022289C4 */ _t48 = _t47 & 0x00000001u;
|
|
/* 022289C4 */ if (_t48) goto L_022289C8; else goto L_022289D0;
|
|
L_022289C8: ; // 0x22289c8
|
|
/* 022289C8 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 022289CC */ Gambit_fn_02801A78(cpu);
|
|
L_022289D0: ; // 0x22289d0
|
|
/* 022289D0 */ _t49 = cpu->r[31] + 0x00000114u;
|
|
/* 022289D0 */ rbrew_write8(cpu->mem, _t49, (uint8_t)cpu->r[30]);
|
|
/* 022289D4 */ cpu->r[0] = 0x00000014u;
|
|
/* 022289D8 */ _t50 = cpu->r[31] + 0x00000115u;
|
|
/* 022289D8 */ rbrew_write8(cpu->mem, _t50, (uint8_t)cpu->r[0]);
|
|
/* 022289DC */ _t51 = cpu->r[31] + 0x00000114u;
|
|
/* 022289DC */ cpu->r[10] = rbrew_read32(cpu->mem, _t51);
|
|
/* 022289E0 */ cpu->r[0] = 0x0000000Bu;
|
|
/* 022289E4 */ _t52 = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000011u, 0x0000001Fu);
|
|
/* 022289E4 */ _t53 = cpu->r[10] & 0xFFFF8000u;
|
|
/* 022289E4 */ cpu->r[10] = _t53 | _t52;
|
|
/* 022289E8 */ cpu->r[0] = cpu->r[31] + 0x0000011Cu;
|
|
/* 022289E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022289EC */ _t54 = cpu->r[31] + 0x00000114u;
|
|
/* 022289EC */ rbrew_write32(cpu->mem, _t54, cpu->r[10]);
|
|
/* 022289F0 */ _t55 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022289F0 */ _t56 = _t55 & 0x00000001u;
|
|
/* 022289F0 */ if (_t56) goto L_022289F4; else goto L_022289FC;
|
|
L_022289F4: ; // 0x22289f4
|
|
/* 022289F4 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 022289F8 */ Gambit_fn_02801A78(cpu);
|
|
L_022289FC: ; // 0x22289fc
|
|
/* 022289FC */ _t57 = cpu->r[1] + 0x00000018u;
|
|
/* 022289FC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 02228A00 */ cpu->r[3] = cpu->r[31];
|
|
/* 02228A04 */ _t58 = cpu->r[1] + 0x00000008u;
|
|
/* 02228A04 */ cpu->r[30] = rbrew_read32(cpu->mem, _t58);
|
|
/* 02228A08 */ _t59 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02228A08 */ cpu->r[31] = rbrew_read32(cpu->mem, _t59);
|
|
/* 02228A0C */ _t60 = cpu->r[1] + 0x00000010u;
|
|
/* 02228A0C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t60);
|
|
/* 02228A10 */ _t61 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02228A10 */ _t62 = _t61 & 0x00000001u;
|
|
/* 02228A10 */ if (_t62) goto L_02228A14; // else: addr-0 trap, fall-through
|
|
L_02228A14: ; // 0x2228a14
|
|
/* 02228A14 */ _t63 = cpu->r[1] + 0x00000024u;
|
|
/* 02228A14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t63);
|
|
/* 02228A18 */ cpu->lr = cpu->r[0];
|
|
/* 02228A1C */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 02228A20 */ return;
|
|
}
|
|
|
|
// fn_02228A24 @ 0x2228a24
|
|
void Gambit_fn_02228A24(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _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;
|
|
double _ft33, _ft34, _ft54, _ft55;
|
|
|
|
L_02228A24: ; // 0x2228a24
|
|
/* 02228A24 */ _t0 = cpu->r[1] + 0xFFFFFF68u;
|
|
/* 02228A24 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02228A24 */ cpu->r[1] = _t0;
|
|
/* 02228A28 */ cpu->r[0] = cpu->lr;
|
|
/* 02228A2C */ _t1 = cpu->r[1] + 0x00000078u;
|
|
/* 02228A2C */ rbrew_write_f64(cpu->mem, _t1, cpu->f[30]);
|
|
/* 02228A30 */ /* nop */
|
|
/* 02228A34 */ _t2 = cpu->r[1] + 0x00000088u;
|
|
/* 02228A34 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 02228A38 */ _t3 = cpu->r[1] + 0x00000068u;
|
|
/* 02228A38 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[29]);
|
|
/* 02228A3C */ /* nop */
|
|
/* 02228A40 */ _t4 = cpu->r[1] + 0x00000080u;
|
|
/* 02228A40 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[30]);
|
|
/* 02228A44 */ /* nop */
|
|
/* 02228A48 */ _t5 = cpu->r[1] + 0x00000090u;
|
|
/* 02228A48 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[31]);
|
|
/* 02228A4C */ _t6 = cpu->r[1] + 0x00000064u;
|
|
/* 02228A4C */ rbrew_write32(cpu->mem, _t6, cpu->r[31]);
|
|
/* 02228A50 */ _t7 = cpu->r[1] + 0x0000009Cu;
|
|
/* 02228A50 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 02228A54 */ _t8 = cpu->r[1] + 0x00000070u;
|
|
/* 02228A54 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[29]);
|
|
/* 02228A58 */ _t9 = cpu->r[1] + 0x00000060u;
|
|
/* 02228A58 */ rbrew_write32(cpu->mem, _t9, cpu->r[30]);
|
|
/* 02228A5C */ _t10 = cpu->r[3] + 0x00000000u;
|
|
/* 02228A5C */ cpu->r[9] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02228A60 */ cpu->r[31] = cpu->r[5];
|
|
/* 02228A64 */ _t11 = cpu->r[3] + 0x00000008u;
|
|
/* 02228A64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02228A68 */ _t12 = cpu->r[3] + 0x00000004u;
|
|
/* 02228A68 */ cpu->r[10] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02228A6C */ cpu->r[3] = 0x101F0000u;
|
|
/* 02228A70 */ _t13 = cpu->r[1] + 0x00000020u;
|
|
/* 02228A70 */ rbrew_write32(cpu->mem, _t13, cpu->r[9]);
|
|
/* 02228A74 */ cpu->r[3] = cpu->r[3] + 0x00006344u;
|
|
/* 02228A78 */ cpu->r[30] = cpu->r[4];
|
|
/* 02228A7C */ _t14 = cpu->r[1] + 0x00000028u;
|
|
/* 02228A7C */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
/* 02228A80 */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 02228A84 */ cpu->r[5] = cpu->r[1] + 0x0000002Cu;
|
|
/* 02228A88 */ _t15 = cpu->r[1] + 0x00000024u;
|
|
/* 02228A88 */ rbrew_write32(cpu->mem, _t15, cpu->r[10]);
|
|
/* 02228A8C */ Gambit_fn_02C692EC(cpu);
|
|
/* 02228A90 */ _t16 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02228A90 */ cpu->r[9] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02228A94 */ _t17 = cpu->r[1] + 0x00000030u;
|
|
/* 02228A94 */ cpu->r[11] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02228A98 */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 02228A98 */ rbrew_write32(cpu->mem, _t18, cpu->r[9]);
|
|
/* 02228A9C */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02228A9C */ rbrew_write32(cpu->mem, _t19, cpu->r[11]);
|
|
/* 02228AA0 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02228AA0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 02228AA4 */ _t21 = cpu->r[1] + 0x00000034u;
|
|
/* 02228AA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02228AA8 */ _t22 = cpu->r[1] + 0x00000008u;
|
|
/* 02228AA8 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 02228AAC */ cpu->f[0] = cpu->f[10] * cpu->f[10];
|
|
/* 02228AB0 */ _t23 = cpu->r[1] + 0x00000010u;
|
|
/* 02228AB0 */ rbrew_write32(cpu->mem, _t23, cpu->r[0]);
|
|
/* 02228AB4 */ cpu->r[10] = 0x10050000u;
|
|
/* 02228AB8 */ _t24 = cpu->r[1] + 0x00000010u;
|
|
/* 02228AB8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 02228ABC */ _t25 = cpu->r[31] + 0x00000000u;
|
|
/* 02228ABC */ rbrew_write_f32(cpu->mem, _t25, cpu->f[8]);
|
|
/* 02228AC0 */ cpu->f[8] = fma(cpu->f[8], cpu->f[8], cpu->f[0]);
|
|
/* 02228AC4 */ cpu->r[12] = 0x10050000u;
|
|
/* 02228AC8 */ _t26 = cpu->r[10] + 0x000000A4u;
|
|
/* 02228AC8 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 02228ACC */ _t27 = cpu->r[12] + 0x0000009Cu;
|
|
/* 02228ACC */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 02228AD0 */ cpu->f[7] = fma(cpu->f[12], cpu->f[12], cpu->f[8]);
|
|
/* 02228AD4 */ cpu->r[9] = 0x10050000u;
|
|
/* 02228AD8 */ _t28 = cpu->r[31] + 0x00000004u;
|
|
/* 02228AD8 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[10]);
|
|
/* 02228ADC */ _t29 = cpu->r[9] + 0x000000A0u;
|
|
/* 02228ADC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 02228AE0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[29]);
|
|
/* 02228AE4 */ _t30 = cpu->r[31] + 0x00000008u;
|
|
/* 02228AE4 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[12]);
|
|
/* 02228AE8 */ _t31 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02228AE8 */ _t32 = _t31 & 0x00000001u;
|
|
/* 02228AE8 */ if (_t32) goto L_02228AEC; else goto L_02228B1C;
|
|
L_02228AEC: ; // 0x2228aec
|
|
/* 02228AEC */ _ft33 = sqrt(cpu->f[7]);
|
|
/* 02228AEC */ _ft34 = (double)(int32_t)0x00000001u;
|
|
/* 02228AEC */ cpu->f[9] = _ft34 / _ft33;
|
|
/* 02228AF0 */ cpu->f[10] = cpu->f[9] * cpu->f[9];
|
|
/* 02228AF4 */ cpu->f[12] = cpu->f[9] * cpu->f[31];
|
|
/* 02228AF8 */ cpu->f[10] = -fma(cpu->f[10], cpu->f[7], -(cpu->f[30]));
|
|
/* 02228AFC */ cpu->f[9] = cpu->f[10] * cpu->f[12];
|
|
/* 02228B00 */ /* nop */
|
|
/* 02228B04 */ _t35 = cpu->r[31] + 0x00000008u;
|
|
/* 02228B04 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 02228B08 */ /* nop */
|
|
/* 02228B0C */ cpu->f[0] = cpu->f[0] * cpu->f[9];
|
|
/* 02228B10 */ /* nop */
|
|
/* 02228B14 */ cpu->f[7] = cpu->f[7] * cpu->f[9];
|
|
/* 02228B18 */ _t36 = cpu->r[31] + 0x00000008u;
|
|
/* 02228B18 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[0]);
|
|
L_02228B1C: ; // 0x2228b1c
|
|
/* 02228B1C */ cpu->r[7] = 0x10050000u;
|
|
/* 02228B20 */ _t37 = cpu->r[7] + 0x000000A8u;
|
|
/* 02228B20 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 02228B24 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[0]);
|
|
/* 02228B28 */ _t38 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02228B28 */ _t39 = _t38 & 0x00000001u;
|
|
/* 02228B28 */ if (_t39) goto L_02228B2C; else goto L_02228BF0;
|
|
L_02228B2C: ; // 0x2228b2c
|
|
/* 02228B2C */ cpu->r[4] = 0x101F0000u;
|
|
/* 02228B30 */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 02228B34 */ cpu->r[5] = cpu->r[1] + 0x00000038u;
|
|
/* 02228B38 */ cpu->r[4] = cpu->r[4] + 0x0000635Cu;
|
|
/* 02228B3C */ Gambit_fn_02C692EC(cpu);
|
|
/* 02228B40 */ _t40 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02228B40 */ cpu->r[0] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02228B44 */ _t41 = cpu->r[1] + 0x00000038u;
|
|
/* 02228B44 */ cpu->r[12] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02228B48 */ _t42 = cpu->r[1] + 0x00000018u;
|
|
/* 02228B48 */ rbrew_write32(cpu->mem, _t42, cpu->r[0]);
|
|
/* 02228B4C */ _t43 = cpu->r[1] + 0x00000018u;
|
|
/* 02228B4C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 02228B50 */ _t44 = cpu->r[1] + 0x00000040u;
|
|
/* 02228B50 */ cpu->r[8] = rbrew_read32(cpu->mem, _t44);
|
|
/* 02228B54 */ cpu->f[9] = cpu->f[8] * cpu->f[8];
|
|
/* 02228B58 */ _t45 = cpu->r[1] + 0x00000014u;
|
|
/* 02228B58 */ rbrew_write32(cpu->mem, _t45, cpu->r[12]);
|
|
/* 02228B5C */ _t46 = cpu->r[1] + 0x00000014u;
|
|
/* 02228B5C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 02228B60 */ _t47 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02228B60 */ rbrew_write32(cpu->mem, _t47, cpu->r[8]);
|
|
/* 02228B64 */ _t48 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02228B64 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 02228B68 */ cpu->f[10] = fma(cpu->f[0], cpu->f[0], cpu->f[9]);
|
|
/* 02228B6C */ cpu->f[10] = fma(cpu->f[13], cpu->f[13], cpu->f[10]);
|
|
/* 02228B70 */ _t49 = cpu->r[30] + 0x00000008u;
|
|
/* 02228B70 */ rbrew_write_f32(cpu->mem, _t49, cpu->f[13]);
|
|
/* 02228B74 */ _t50 = cpu->r[30] + 0x00000004u;
|
|
/* 02228B74 */ rbrew_write_f32(cpu->mem, _t50, cpu->f[8]);
|
|
/* 02228B78 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[29]);
|
|
/* 02228B7C */ _t51 = cpu->r[30] + 0x00000000u;
|
|
/* 02228B7C */ rbrew_write_f32(cpu->mem, _t51, cpu->f[0]);
|
|
/* 02228B80 */ _t52 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02228B80 */ _t53 = _t52 & 0x00000001u;
|
|
/* 02228B80 */ if (_t53) goto L_02228B84; else goto L_02228BB0;
|
|
L_02228B84: ; // 0x2228b84
|
|
/* 02228B84 */ _ft54 = sqrt(cpu->f[10]);
|
|
/* 02228B84 */ _ft55 = (double)(int32_t)0x00000001u;
|
|
/* 02228B84 */ cpu->f[11] = _ft55 / _ft54;
|
|
/* 02228B88 */ cpu->f[13] = cpu->f[11] * cpu->f[11];
|
|
/* 02228B8C */ cpu->f[7] = cpu->f[11] * cpu->f[31];
|
|
/* 02228B90 */ cpu->f[13] = -fma(cpu->f[13], cpu->f[10], -(cpu->f[30]));
|
|
/* 02228B94 */ cpu->f[11] = cpu->f[13] * cpu->f[7];
|
|
/* 02228B98 */ _t56 = cpu->r[30] + 0x00000008u;
|
|
/* 02228B98 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 02228B9C */ /* nop */
|
|
/* 02228BA0 */ cpu->f[13] = cpu->f[13] * cpu->f[11];
|
|
/* 02228BA4 */ /* nop */
|
|
/* 02228BA8 */ _t57 = cpu->r[30] + 0x00000008u;
|
|
/* 02228BA8 */ rbrew_write_f32(cpu->mem, _t57, cpu->f[13]);
|
|
/* 02228BAC */ /* nop */
|
|
L_02228BB0: ; // 0x2228bb0
|
|
/* 02228BB0 */ cpu->r[3] = cpu->r[30];
|
|
/* 02228BB4 */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 02228BB8 */ cpu->r[5] = cpu->r[1] + 0x00000044u;
|
|
/* 02228BBC */ Gambit_fn_02C692EC(cpu);
|
|
/* 02228BC0 */ _t58 = cpu->r[1] + 0x00000048u;
|
|
/* 02228BC0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t58);
|
|
/* 02228BC4 */ _t59 = cpu->r[1] + 0x00000044u;
|
|
/* 02228BC4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t59);
|
|
/* 02228BC8 */ _t60 = cpu->r[1] + 0x00000018u;
|
|
/* 02228BC8 */ rbrew_write32(cpu->mem, _t60, cpu->r[10]);
|
|
/* 02228BCC */ _t61 = cpu->r[1] + 0x00000018u;
|
|
/* 02228BCC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t61);
|
|
/* 02228BD0 */ _t62 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02228BD0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t62);
|
|
/* 02228BD4 */ _t63 = cpu->r[1] + 0x00000014u;
|
|
/* 02228BD4 */ rbrew_write32(cpu->mem, _t63, cpu->r[8]);
|
|
/* 02228BD8 */ _t64 = cpu->r[1] + 0x00000014u;
|
|
/* 02228BD8 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 02228BDC */ _t65 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02228BDC */ rbrew_write32(cpu->mem, _t65, cpu->r[12]);
|
|
/* 02228BE0 */ _t66 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02228BE0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t66);
|
|
/* 02228BE4 */ _t67 = cpu->r[31] + 0x00000000u;
|
|
/* 02228BE4 */ rbrew_write_f32(cpu->mem, _t67, cpu->f[7]);
|
|
/* 02228BE8 */ _t68 = cpu->r[31] + 0x00000008u;
|
|
/* 02228BE8 */ rbrew_write_f32(cpu->mem, _t68, cpu->f[11]);
|
|
/* 02228BEC */ _t69 = cpu->r[31] + 0x00000004u;
|
|
/* 02228BEC */ rbrew_write_f32(cpu->mem, _t69, cpu->f[9]);
|
|
L_02228BF0: ; // 0x2228bf0
|
|
/* 02228BF0 */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 02228BF4 */ cpu->r[4] = cpu->r[31];
|
|
/* 02228BF8 */ cpu->r[5] = cpu->r[1] + 0x00000050u;
|
|
/* 02228BFC */ Gambit_fn_02C692EC(cpu);
|
|
/* 02228C00 */ _t70 = cpu->r[1] + 0x00000054u;
|
|
/* 02228C00 */ cpu->r[7] = rbrew_read32(cpu->mem, _t70);
|
|
/* 02228C04 */ _t71 = cpu->r[1] + 0x00000050u;
|
|
/* 02228C04 */ cpu->r[0] = rbrew_read32(cpu->mem, _t71);
|
|
/* 02228C08 */ _t72 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02228C08 */ rbrew_write32(cpu->mem, _t72, cpu->r[7]);
|
|
/* 02228C0C */ _t73 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02228C0C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t73);
|
|
/* 02228C10 */ _t74 = cpu->r[1] + 0x00000008u;
|
|
/* 02228C10 */ rbrew_write32(cpu->mem, _t74, cpu->r[0]);
|
|
/* 02228C14 */ _t75 = cpu->r[1] + 0x00000008u;
|
|
/* 02228C14 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t75);
|
|
/* 02228C18 */ _t76 = cpu->r[1] + 0x00000058u;
|
|
/* 02228C18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t76);
|
|
/* 02228C1C */ _t77 = cpu->r[30] + 0x00000004u;
|
|
/* 02228C1C */ rbrew_write_f32(cpu->mem, _t77, cpu->f[8]);
|
|
/* 02228C20 */ _t78 = cpu->r[1] + 0x00000010u;
|
|
/* 02228C20 */ rbrew_write32(cpu->mem, _t78, cpu->r[0]);
|
|
/* 02228C24 */ _t79 = cpu->r[1] + 0x00000010u;
|
|
/* 02228C24 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t79);
|
|
/* 02228C28 */ _t80 = cpu->r[30] + 0x00000000u;
|
|
/* 02228C28 */ rbrew_write_f32(cpu->mem, _t80, cpu->f[7]);
|
|
/* 02228C2C */ _t81 = cpu->r[30] + 0x00000008u;
|
|
/* 02228C2C */ rbrew_write_f32(cpu->mem, _t81, cpu->f[9]);
|
|
/* 02228C30 */ _t82 = cpu->r[1] + 0x00000070u;
|
|
/* 02228C30 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t82);
|
|
/* 02228C34 */ _t83 = cpu->r[1] + 0x00000090u;
|
|
/* 02228C34 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t83);
|
|
/* 02228C38 */ _t84 = cpu->r[1] + 0x00000068u;
|
|
/* 02228C38 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t84);
|
|
/* 02228C3C */ _t85 = cpu->r[1] + 0x00000080u;
|
|
/* 02228C3C */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t85);
|
|
/* 02228C40 */ _t86 = cpu->r[1] + 0x00000088u;
|
|
/* 02228C40 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t86);
|
|
/* 02228C44 */ _t87 = cpu->r[1] + 0x00000078u;
|
|
/* 02228C44 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t87);
|
|
/* 02228C48 */ _t88 = cpu->r[1] + 0x00000064u;
|
|
/* 02228C48 */ cpu->r[31] = rbrew_read32(cpu->mem, _t88);
|
|
/* 02228C4C */ _t89 = cpu->r[1] + 0x00000060u;
|
|
/* 02228C4C */ cpu->r[30] = rbrew_read32(cpu->mem, _t89);
|
|
/* 02228C50 */ _t90 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02228C50 */ _t91 = _t90 & 0x00000001u;
|
|
/* 02228C50 */ if (_t91) goto L_02228C54; // else: addr-0 trap, fall-through
|
|
L_02228C54: ; // 0x2228c54
|
|
/* 02228C54 */ _t92 = cpu->r[1] + 0x0000009Cu;
|
|
/* 02228C54 */ cpu->r[0] = rbrew_read32(cpu->mem, _t92);
|
|
/* 02228C58 */ cpu->lr = cpu->r[0];
|
|
/* 02228C5C */ cpu->r[1] = cpu->r[1] + 0x00000098u;
|
|
/* 02228C60 */ return;
|
|
}
|
|
|
|
// fn_02228C64 @ 0x2228c64
|
|
void Gambit_fn_02228C64(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _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, _t149, _t150, _t151, _t152, _t153, _t154, _t157, _t158, _t159, _t160, _t161, _t162, _t163, _t164, _t165, _t166, _t167, _t168, _t169, _t170, _t171, _t172, _t173, _t174, _t175, _t176, _t177, _t178, _t179, _t180, _t181, _t182, _t183, _t184, _t185, _t186, _t187, _t188, _t189, _t190, _t191, _t192, _t193, _t194, _t195, _t196, _t197, _t198, _t199, _t200, _t201, _t202, _t203, _t204, _t205, _t206, _t207, _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;
|
|
double _ft147, _ft148, _ft155, _ft156, _ft208, _ft209;
|
|
|
|
L_02228C64: ; // 0x2228c64
|
|
/* 02228C64 */ _t0 = cpu->r[1] + 0xFFFFFDF8u;
|
|
/* 02228C64 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02228C64 */ cpu->r[1] = _t0;
|
|
/* 02228C68 */ _t1 = cpu->r[1] + 0x000001C8u;
|
|
/* 02228C68 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[28]);
|
|
/* 02228C6C */ /* nop */
|
|
/* 02228C70 */ _t2 = cpu->r[1] + 0x000001E8u;
|
|
/* 02228C70 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[30]);
|
|
/* 02228C74 */ _t3 = cpu->r[1] + 0x000001D0u;
|
|
/* 02228C74 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[28]);
|
|
/* 02228C78 */ _t4 = cpu->r[1] + 0x000001D8u;
|
|
/* 02228C78 */ rbrew_write_f64(cpu->mem, _t4, cpu->f[29]);
|
|
/* 02228C7C */ _t5 = cpu->r[1] + 0x000001F8u;
|
|
/* 02228C7C */ rbrew_write_f64(cpu->mem, _t5, cpu->f[31]);
|
|
/* 02228C80 */ /* nop */
|
|
/* 02228C84 */ cpu->f[28] = cpu->f[1];
|
|
/* 02228C88 */ cpu->r[28] = cpu->r[6];
|
|
/* 02228C8C */ /* nop */
|
|
/* 02228C90 */ cpu->r[0] = cpu->lr;
|
|
/* 02228C94 */ /* nop */
|
|
/* 02228C98 */ cpu->r[6] = 0x10050000u;
|
|
/* 02228C9C */ cpu->r[26] = cpu->r[4];
|
|
/* 02228CA0 */ /* nop */
|
|
/* 02228CA4 */ _t6 = cpu->r[1] + 0x000001F0u;
|
|
/* 02228CA4 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[30]);
|
|
/* 02228CA8 */ cpu->r[25] = cpu->r[3];
|
|
/* 02228CAC */ _t7 = cpu->r[1] + 0x000001E0u;
|
|
/* 02228CAC */ rbrew_write_f32(cpu->mem, _t7, cpu->f[29]);
|
|
/* 02228CB0 */ cpu->r[27] = cpu->r[5];
|
|
/* 02228CB4 */ _t8 = cpu->r[1] + 0x00000200u;
|
|
/* 02228CB4 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[31]);
|
|
/* 02228CB8 */ _t9 = cpu->r[1] + 0x0000020Cu;
|
|
/* 02228CB8 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 02228CBC */ cpu->r[29] = cpu->r[7];
|
|
/* 02228CC0 */ cpu->r[30] = cpu->r[9];
|
|
/* 02228CC4 */ _t10 = cpu->r[6] + 0x0000009Cu;
|
|
/* 02228CC4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 02228CC8 */ cpu->r[21] = cpu->r[8];
|
|
/* 02228CCC */ _t11 = cpu->r[1] + 0x00000217u;
|
|
/* 02228CCC */ cpu->r[31] = rbrew_read8(cpu->mem, _t11);
|
|
/* 02228CD0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[28], cpu->f[31]);
|
|
/* 02228CD4 */ _t12 = cpu->r[1] + 0x00000218u;
|
|
/* 02228CD4 */ cpu->r[24] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02228CD8 */ cpu->r[23] = cpu->r[10];
|
|
/* 02228CDC */ _t13 = cpu->r[1] + 0x00000210u;
|
|
/* 02228CDC */ cpu->r[22] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02228CE0 */ /* nop */
|
|
/* 02228CE4 */ _t14 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02228CE4 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02228CE4 */ if (_t15) goto L_02228CE8; else goto L_02229488;
|
|
L_02228CE8: ; // 0x2228ce8
|
|
/* 02228CE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 02228CEC */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02228CEC */ _t17 = _t16 & 0x00000001u;
|
|
/* 02228CEC */ if (_t17) goto L_02228D98; else goto L_02228CF0;
|
|
L_02228CF0: ; // 0x2228cf0
|
|
/* 02228CF0 */ _t18 = cpu->r[25] + 0x00000004u;
|
|
/* 02228CF0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02228CF4 */ _t19 = cpu->r[7] + 0x0000025Cu;
|
|
/* 02228CF4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02228CF8 */ cpu->ctr = cpu->r[0];
|
|
/* 02228CFC */ cpu->r[3] = cpu->r[25];
|
|
/* 02228D00 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02228D04 */ /* nop */
|
|
/* 02228D08 */ /* nop */
|
|
/* 02228D0C */ /* nop */
|
|
/* 02228D10 */ /* nop */
|
|
/* 02228D14 */ /* nop */
|
|
/* 02228D18 */ _t20 = cpu->r[24] + 0x0000000Cu;
|
|
/* 02228D18 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 02228D1C */ /* nop */
|
|
/* 02228D20 */ /* nop */
|
|
/* 02228D24 */ /* nop */
|
|
/* 02228D28 */ _t21 = cpu->r[3] + 0x00000008u;
|
|
/* 02228D28 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 02228D2C */ cpu->f[8] = cpu->f[7];
|
|
/* 02228D30 */ cpu->f[7] = fma(cpu->f[6], cpu->f[0], cpu->f[12]);
|
|
/* 02228D34 */ _t22 = cpu->r[24] + 0x00000018u;
|
|
/* 02228D34 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 02228D38 */ /* nop */
|
|
/* 02228D3C */ _t23 = cpu->r[25] + 0x00000004u;
|
|
/* 02228D3C */ cpu->r[11] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02228D40 */ _t24 = cpu->r[1] + 0x00000094u;
|
|
/* 02228D40 */ rbrew_write_f32(cpu->mem, _t24, cpu->f[7]);
|
|
/* 02228D44 */ cpu->f[11] = fma(cpu->f[6], cpu->f[9], cpu->f[8]);
|
|
/* 02228D48 */ _t25 = cpu->r[1] + 0x00000094u;
|
|
/* 02228D48 */ cpu->r[4] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02228D4C */ /* nop */
|
|
/* 02228D50 */ _t26 = cpu->r[24] + 0x00000024u;
|
|
/* 02228D50 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 02228D54 */ _t27 = cpu->r[1] + 0x00000098u;
|
|
/* 02228D54 */ rbrew_write_f32(cpu->mem, _t27, cpu->f[11]);
|
|
/* 02228D58 */ cpu->f[0] = fma(cpu->f[6], cpu->f[0], cpu->f[12]);
|
|
/* 02228D5C */ _t28 = cpu->r[1] + 0x00000098u;
|
|
/* 02228D5C */ cpu->r[7] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02228D60 */ _t29 = cpu->r[1] + 0x00000168u;
|
|
/* 02228D60 */ rbrew_write32(cpu->mem, _t29, cpu->r[4]);
|
|
/* 02228D64 */ _t30 = cpu->r[1] + 0x0000009Cu;
|
|
/* 02228D64 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[0]);
|
|
/* 02228D68 */ _t31 = cpu->r[1] + 0x0000009Cu;
|
|
/* 02228D68 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02228D6C */ _t32 = cpu->r[1] + 0x0000016Cu;
|
|
/* 02228D6C */ rbrew_write32(cpu->mem, _t32, cpu->r[7]);
|
|
/* 02228D70 */ _t33 = cpu->r[1] + 0x00000170u;
|
|
/* 02228D70 */ rbrew_write32(cpu->mem, _t33, cpu->r[0]);
|
|
/* 02228D74 */ _t34 = cpu->r[11] + 0x0000042Cu;
|
|
/* 02228D74 */ cpu->r[6] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02228D78 */ cpu->r[8] = cpu->r[1] + 0x00000168u;
|
|
/* 02228D7C */ cpu->ctr = cpu->r[6];
|
|
/* 02228D80 */ cpu->r[5] = cpu->r[30];
|
|
/* 02228D84 */ cpu->r[4] = cpu->r[8];
|
|
/* 02228D88 */ cpu->r[3] = cpu->r[25];
|
|
/* 02228D8C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02228D90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02228D94 */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02228D94 */ _t36 = _t35 & 0x00000001u;
|
|
/* 02228D94 */ if (_t36) goto L_02228D98; else goto L_02229488;
|
|
L_02228D98: ; // 0x2228d98
|
|
/* 02228D98 */ _t37 = cpu->r[25] + 0x00000004u;
|
|
/* 02228D98 */ cpu->r[10] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02228D9C */ _t38 = cpu->r[10] + 0x00000374u;
|
|
/* 02228D9C */ cpu->r[11] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02228DA0 */ cpu->ctr = cpu->r[11];
|
|
/* 02228DA4 */ cpu->r[3] = cpu->r[25];
|
|
/* 02228DA8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02228DAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02228DB0 */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02228DB0 */ _t40 = _t39 & 0x00000001u;
|
|
/* 02228DB0 */ if (_t40) goto L_02228DB4; else goto L_02229488;
|
|
L_02228DB4: ; // 0x2228db4
|
|
/* 02228DB4 */ _t41 = cpu->r[23] + 0x00000000u;
|
|
/* 02228DB4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02228DB8 */ cpu->r[24] = 0x101C0000u;
|
|
/* 02228DBC */ _t42 = cpu->r[24] + 0x000060F4u;
|
|
/* 02228DBC */ cpu->r[23] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02228DBC */ cpu->r[24] = _t42;
|
|
/* 02228DC0 */ _t43 = cpu->r[1] + 0x000000B8u;
|
|
/* 02228DC0 */ rbrew_write32(cpu->mem, _t43, cpu->r[12]);
|
|
/* 02228DC4 */ _t44 = cpu->r[1] + 0x000000B8u;
|
|
/* 02228DC4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t44);
|
|
/* 02228DC8 */ cpu->r[3] = cpu->r[23];
|
|
/* 02228DCC */ cpu->r[4] = cpu->r[29];
|
|
/* 02228DD0 */ _t45 = cpu->r[1] + 0x000000BCu;
|
|
/* 02228DD0 */ rbrew_write32(cpu->mem, _t45, cpu->r[10]);
|
|
/* 02228DD4 */ Gambit_fn_023F600C(cpu);
|
|
/* 02228DD8 */ cpu->r[3] = cpu->r[23];
|
|
/* 02228DDC */ cpu->r[4] = cpu->r[29];
|
|
/* 02228DE0 */ cpu->r[5] = cpu->r[21];
|
|
/* 02228DE4 */ cpu->r[6] = cpu->r[30];
|
|
/* 02228DE8 */ cpu->r[7] = cpu->r[1] + 0x000000BCu;
|
|
/* 02228DEC */ Gambit_fn_023F4B7C(cpu);
|
|
/* 02228DF0 */ _t46 = cpu->r[21] + 0x00000008u;
|
|
/* 02228DF0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t46);
|
|
/* 02228DF4 */ _t47 = cpu->r[21] + 0x00000004u;
|
|
/* 02228DF4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t47);
|
|
/* 02228DF8 */ cpu->r[23] = cpu->r[3];
|
|
/* 02228DFC */ _t48 = cpu->r[21] + 0x00000000u;
|
|
/* 02228DFC */ cpu->r[8] = rbrew_read32(cpu->mem, _t48);
|
|
/* 02228E00 */ cpu->r[3] = cpu->r[30];
|
|
/* 02228E04 */ _t49 = cpu->r[1] + 0x00000048u;
|
|
/* 02228E04 */ rbrew_write32(cpu->mem, _t49, cpu->r[0]);
|
|
/* 02228E08 */ _t50 = cpu->r[1] + 0x00000044u;
|
|
/* 02228E08 */ rbrew_write32(cpu->mem, _t50, cpu->r[10]);
|
|
/* 02228E0C */ cpu->r[5] = cpu->r[1] + 0x000000ACu;
|
|
/* 02228E10 */ cpu->r[4] = cpu->r[1] + 0x000000A0u;
|
|
/* 02228E14 */ _t51 = cpu->r[1] + 0x00000040u;
|
|
/* 02228E14 */ rbrew_write32(cpu->mem, _t51, cpu->r[8]);
|
|
/* 02228E18 */ Gambit_fn_02228A24(cpu);
|
|
/* 02228E1C */ _t52 = cpu->r[22] + 0x00000008u;
|
|
/* 02228E1C */ cpu->r[6] = rbrew_read32(cpu->mem, _t52);
|
|
/* 02228E20 */ _t53 = cpu->r[22] + 0x00000000u;
|
|
/* 02228E20 */ cpu->r[4] = rbrew_read32(cpu->mem, _t53);
|
|
/* 02228E24 */ _t54 = cpu->r[22] + 0x00000004u;
|
|
/* 02228E24 */ cpu->r[5] = rbrew_read32(cpu->mem, _t54);
|
|
/* 02228E28 */ _t55 = cpu->r[1] + 0x00000020u;
|
|
/* 02228E28 */ rbrew_write32(cpu->mem, _t55, cpu->r[4]);
|
|
/* 02228E2C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], 0x000000FDu);
|
|
/* 02228E30 */ _t56 = cpu->r[1] + 0x00000024u;
|
|
/* 02228E30 */ rbrew_write32(cpu->mem, _t56, cpu->r[5]);
|
|
/* 02228E34 */ cpu->r[21] = 0x00000000u;
|
|
/* 02228E38 */ _t57 = cpu->r[1] + 0x00000028u;
|
|
/* 02228E38 */ rbrew_write32(cpu->mem, _t57, cpu->r[6]);
|
|
/* 02228E3C */ _t58 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02228E3C */ _t59 = _t58 & 0x00000001u;
|
|
/* 02228E3C */ if (_t59) goto L_02228E40; else goto L_02228FF0;
|
|
L_02228E40: ; // 0x2228e40
|
|
/* 02228E40 */ _t60 = cpu->r[24] + 0x00000000u;
|
|
/* 02228E40 */ cpu->r[9] = rbrew_read32(cpu->mem, _t60);
|
|
/* 02228E44 */ cpu->r[8] = cpu->r[9] + 0x00080000u;
|
|
/* 02228E48 */ _t61 = cpu->r[8] + 0xFFFFCEDCu;
|
|
/* 02228E48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t61);
|
|
/* 02228E4C */ cpu->r[4] = cpu->r[29];
|
|
/* 02228E50 */ Gambit_fn_023E43BC(cpu);
|
|
/* 02228E54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02228E58 */ _t62 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02228E58 */ _t63 = _t62 & 0x00000001u;
|
|
/* 02228E58 */ if (_t63) goto L_02228E5C; else goto L_02228EB0;
|
|
L_02228E5C: ; // 0x2228e5c
|
|
/* 02228E5C */ /* nop */
|
|
/* 02228E60 */ /* nop */
|
|
/* 02228E64 */ _t64 = cpu->r[1] + 0x000000A8u;
|
|
/* 02228E64 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 02228E68 */ /* nop */
|
|
/* 02228E6C */ _t65 = cpu->r[1] + 0x00000028u;
|
|
/* 02228E6C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t65);
|
|
/* 02228E70 */ /* nop */
|
|
/* 02228E74 */ /* nop */
|
|
/* 02228E78 */ cpu->f[5] = fma(cpu->f[8], cpu->f[0], cpu->f[6]);
|
|
/* 02228E7C */ /* nop */
|
|
/* 02228E80 */ /* nop */
|
|
/* 02228E84 */ /* nop */
|
|
/* 02228E88 */ _t66 = cpu->r[30] + 0x00000008u;
|
|
/* 02228E88 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t66);
|
|
/* 02228E8C */ /* nop */
|
|
/* 02228E90 */ _t67 = cpu->r[1] + 0x000000B4u;
|
|
/* 02228E90 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t67);
|
|
/* 02228E94 */ /* nop */
|
|
/* 02228E98 */ cpu->f[6] = fma(cpu->f[13], cpu->f[0], cpu->f[11]);
|
|
/* 02228E9C */ _t68 = cpu->r[1] + 0x00000020u;
|
|
/* 02228E9C */ rbrew_write_f32(cpu->mem, _t68, cpu->f[5]);
|
|
/* 02228EA0 */ cpu->f[7] = fma(cpu->f[10], cpu->f[0], cpu->f[8]);
|
|
/* 02228EA4 */ _t69 = cpu->r[1] + 0x00000024u;
|
|
/* 02228EA4 */ rbrew_write_f32(cpu->mem, _t69, cpu->f[6]);
|
|
/* 02228EA8 */ _t70 = cpu->r[1] + 0x00000028u;
|
|
/* 02228EA8 */ rbrew_write_f32(cpu->mem, _t70, cpu->f[7]);
|
|
/* 02228EAC */ goto L_02228FF0;
|
|
L_02228EB0: ; // 0x2228eb0
|
|
/* 02228EB0 */ _t71 = cpu->r[3] + 0x00000EF0u;
|
|
/* 02228EB0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t71);
|
|
/* 02228EB4 */ _t72 = cpu->r[9] + 0x00000004u;
|
|
/* 02228EB4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t72);
|
|
/* 02228EB8 */ _t73 = cpu->r[5] + 0x00000000u;
|
|
/* 02228EB8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t73);
|
|
/* 02228EBC */ _t74 = cpu->r[1] + 0x00000064u;
|
|
/* 02228EBC */ rbrew_write_f32(cpu->mem, _t74, cpu->f[10]);
|
|
/* 02228EC0 */ _t75 = cpu->r[5] + 0x00000004u;
|
|
/* 02228EC0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t75);
|
|
/* 02228EC4 */ _t76 = cpu->r[1] + 0x00000068u;
|
|
/* 02228EC4 */ rbrew_write_f32(cpu->mem, _t76, cpu->f[11]);
|
|
/* 02228EC8 */ _t77 = cpu->r[5] + 0x00000008u;
|
|
/* 02228EC8 */ cpu->f[3] = rbrew_read_f32(cpu->mem, _t77);
|
|
/* 02228ECC */ _t78 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02228ECC */ rbrew_write_f32(cpu->mem, _t78, cpu->f[3]);
|
|
/* 02228ED0 */ _t79 = cpu->r[5] + 0x0000000Cu;
|
|
/* 02228ED0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t79);
|
|
/* 02228ED4 */ _t80 = cpu->r[1] + 0x00000070u;
|
|
/* 02228ED4 */ rbrew_write_f32(cpu->mem, _t80, cpu->f[12]);
|
|
/* 02228ED8 */ _t81 = cpu->r[5] + 0x00000010u;
|
|
/* 02228ED8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t81);
|
|
/* 02228EDC */ _t82 = cpu->r[1] + 0x00000074u;
|
|
/* 02228EDC */ rbrew_write_f32(cpu->mem, _t82, cpu->f[13]);
|
|
/* 02228EE0 */ _t83 = cpu->r[5] + 0x00000014u;
|
|
/* 02228EE0 */ cpu->f[4] = rbrew_read_f32(cpu->mem, _t83);
|
|
/* 02228EE4 */ _t84 = cpu->r[1] + 0x00000078u;
|
|
/* 02228EE4 */ rbrew_write_f32(cpu->mem, _t84, cpu->f[4]);
|
|
/* 02228EE8 */ _t85 = cpu->r[5] + 0x00000018u;
|
|
/* 02228EE8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t85);
|
|
/* 02228EEC */ _t86 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02228EEC */ rbrew_write_f32(cpu->mem, _t86, cpu->f[0]);
|
|
/* 02228EF0 */ _t87 = cpu->r[5] + 0x0000001Cu;
|
|
/* 02228EF0 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t87);
|
|
/* 02228EF4 */ _t88 = cpu->r[1] + 0x00000080u;
|
|
/* 02228EF4 */ rbrew_write_f32(cpu->mem, _t88, cpu->f[6]);
|
|
/* 02228EF8 */ _t89 = cpu->r[5] + 0x00000020u;
|
|
/* 02228EF8 */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t89);
|
|
/* 02228EFC */ _t90 = cpu->r[1] + 0x00000084u;
|
|
/* 02228EFC */ rbrew_write_f32(cpu->mem, _t90, cpu->f[5]);
|
|
/* 02228F00 */ _t91 = cpu->r[5] + 0x00000024u;
|
|
/* 02228F00 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t91);
|
|
/* 02228F04 */ _t92 = cpu->r[1] + 0x00000088u;
|
|
/* 02228F04 */ rbrew_write_f32(cpu->mem, _t92, cpu->f[8]);
|
|
/* 02228F08 */ _t93 = cpu->r[5] + 0x00000028u;
|
|
/* 02228F08 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t93);
|
|
/* 02228F0C */ _t94 = cpu->r[1] + 0x0000008Cu;
|
|
/* 02228F0C */ rbrew_write_f32(cpu->mem, _t94, cpu->f[9]);
|
|
/* 02228F10 */ _t95 = cpu->r[5] + 0x0000002Cu;
|
|
/* 02228F10 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t95);
|
|
/* 02228F14 */ /* nop */
|
|
/* 02228F18 */ _t96 = cpu->r[1] + 0x00000090u;
|
|
/* 02228F18 */ rbrew_write_f32(cpu->mem, _t96, cpu->f[10]);
|
|
/* 02228F1C */ /* nop */
|
|
/* 02228F20 */ /* nop */
|
|
/* 02228F24 */ _t97 = cpu->r[22] + 0x00000008u;
|
|
/* 02228F24 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t97);
|
|
/* 02228F28 */ /* nop */
|
|
/* 02228F2C */ _t98 = cpu->r[1] + 0x000000D0u;
|
|
/* 02228F2C */ cpu->r[9] = rbrew_read32(cpu->mem, _t98);
|
|
/* 02228F30 */ _t99 = cpu->r[5] + 0x0000002Cu;
|
|
/* 02228F30 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t99);
|
|
/* 02228F34 */ /* nop */
|
|
/* 02228F38 */ cpu->f[7] = cpu->f[8] + cpu->f[9];
|
|
/* 02228F3C */ _t100 = cpu->r[1] + 0x000000CCu;
|
|
/* 02228F3C */ cpu->r[8] = rbrew_read32(cpu->mem, _t100);
|
|
/* 02228F40 */ _t101 = cpu->r[1] + 0x00000118u;
|
|
/* 02228F40 */ rbrew_write32(cpu->mem, _t101, cpu->r[9]);
|
|
/* 02228F44 */ _t102 = cpu->r[1] + 0x000000D4u;
|
|
/* 02228F44 */ rbrew_write_f32(cpu->mem, _t102, cpu->f[7]);
|
|
/* 02228F48 */ _t103 = cpu->r[1] + 0x000000D4u;
|
|
/* 02228F48 */ cpu->r[0] = rbrew_read32(cpu->mem, _t103);
|
|
/* 02228F4C */ _t104 = cpu->r[1] + 0x00000114u;
|
|
/* 02228F4C */ rbrew_write32(cpu->mem, _t104, cpu->r[8]);
|
|
/* 02228F50 */ /* nop */
|
|
/* 02228F54 */ /* nop */
|
|
/* 02228F58 */ /* nop */
|
|
/* 02228F5C */ _t105 = cpu->r[1] + 0x0000011Cu;
|
|
/* 02228F5C */ rbrew_write32(cpu->mem, _t105, cpu->r[0]);
|
|
/* 02228F60 */ /* nop */
|
|
/* 02228F64 */ _t106 = cpu->r[1] + 0x0000011Cu;
|
|
/* 02228F64 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t106);
|
|
/* 02228F68 */ /* nop */
|
|
/* 02228F6C */ /* nop */
|
|
/* 02228F70 */ cpu->f[8] = cpu->f[13] - cpu->f[10];
|
|
/* 02228F74 */ /* nop */
|
|
/* 02228F78 */ /* nop */
|
|
/* 02228F7C */ /* nop */
|
|
/* 02228F80 */ cpu->f[13] = fma(cpu->f[8], cpu->f[3], cpu->f[7]);
|
|
/* 02228F84 */ /* nop */
|
|
/* 02228F88 */ /* nop */
|
|
/* 02228F8C */ cpu->f[9] = fma(cpu->f[8], cpu->f[4], cpu->f[12]);
|
|
/* 02228F90 */ _t107 = cpu->r[1] + 0x00000020u;
|
|
/* 02228F90 */ rbrew_write_f32(cpu->mem, _t107, cpu->f[13]);
|
|
/* 02228F94 */ /* nop */
|
|
/* 02228F98 */ _t108 = cpu->r[1] + 0x00000024u;
|
|
/* 02228F98 */ rbrew_write_f32(cpu->mem, _t108, cpu->f[9]);
|
|
/* 02228F9C */ /* nop */
|
|
/* 02228FA0 */ cpu->f[0] = fma(cpu->f[8], cpu->f[5], cpu->f[6]);
|
|
/* 02228FA4 */ _t109 = cpu->r[1] + 0x0000017Cu;
|
|
/* 02228FA4 */ rbrew_write_f32(cpu->mem, _t109, cpu->f[8]);
|
|
/* 02228FA8 */ /* nop */
|
|
/* 02228FAC */ _t110 = cpu->r[1] + 0x000000A8u;
|
|
/* 02228FAC */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t110);
|
|
/* 02228FB0 */ /* nop */
|
|
/* 02228FB4 */ /* nop */
|
|
/* 02228FB8 */ cpu->f[5] = fma(cpu->f[8], cpu->f[0], cpu->f[6]);
|
|
/* 02228FBC */ /* nop */
|
|
/* 02228FC0 */ /* nop */
|
|
/* 02228FC4 */ /* nop */
|
|
/* 02228FC8 */ /* nop */
|
|
/* 02228FCC */ _t111 = cpu->r[30] + 0x00000008u;
|
|
/* 02228FCC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t111);
|
|
/* 02228FD0 */ /* nop */
|
|
/* 02228FD4 */ _t112 = cpu->r[1] + 0x000000B4u;
|
|
/* 02228FD4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t112);
|
|
/* 02228FD8 */ cpu->f[6] = fma(cpu->f[13], cpu->f[0], cpu->f[11]);
|
|
/* 02228FDC */ _t113 = cpu->r[1] + 0x00000020u;
|
|
/* 02228FDC */ rbrew_write_f32(cpu->mem, _t113, cpu->f[5]);
|
|
/* 02228FE0 */ cpu->f[7] = fma(cpu->f[10], cpu->f[0], cpu->f[8]);
|
|
/* 02228FE4 */ _t114 = cpu->r[1] + 0x00000024u;
|
|
/* 02228FE4 */ rbrew_write_f32(cpu->mem, _t114, cpu->f[6]);
|
|
/* 02228FE8 */ cpu->r[21] = 0x00000001u;
|
|
/* 02228FEC */ _t115 = cpu->r[1] + 0x00000028u;
|
|
/* 02228FEC */ rbrew_write_f32(cpu->mem, _t115, cpu->f[7]);
|
|
L_02228FF0: ; // 0x2228ff0
|
|
/* 02228FF0 */ _t116 = cpu->r[25] + 0x00000004u;
|
|
/* 02228FF0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t116);
|
|
/* 02228FF4 */ _t117 = cpu->r[4] + 0x000003FCu;
|
|
/* 02228FF4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t117);
|
|
/* 02228FF8 */ cpu->ctr = cpu->r[0];
|
|
/* 02228FFC */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 02229000 */ cpu->r[5] = cpu->r[1] + 0x00000020u;
|
|
/* 02229004 */ cpu->r[3] = cpu->r[25];
|
|
/* 02229008 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222900C */ cpu->r[9] = 0x10050000u;
|
|
/* 02229010 */ cpu->r[8] = 0x10050000u;
|
|
/* 02229014 */ _t118 = cpu->r[9] + 0x000000A4u;
|
|
/* 02229014 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t118);
|
|
/* 02229018 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], 0x00000000u);
|
|
/* 0222901C */ _t119 = cpu->r[8] + 0x000000A0u;
|
|
/* 0222901C */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t119);
|
|
/* 02229020 */ _t120 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02229020 */ _t121 = _t120 & 0x00000001u;
|
|
/* 02229020 */ if (_t121) goto L_02229180; else goto L_02229024;
|
|
L_02229024: ; // 0x2229024
|
|
/* 02229024 */ _t122 = cpu->r[25] + 0x00000004u;
|
|
/* 02229024 */ cpu->r[10] = rbrew_read32(cpu->mem, _t122);
|
|
/* 02229028 */ _t123 = cpu->r[10] + 0x00000414u;
|
|
/* 02229028 */ cpu->r[0] = rbrew_read32(cpu->mem, _t123);
|
|
/* 0222902C */ cpu->ctr = cpu->r[0];
|
|
/* 02229030 */ cpu->r[3] = cpu->r[25];
|
|
/* 02229034 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02229038 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0222903C */ _t124 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222903C */ _t125 = _t124 & 0x00000001u;
|
|
/* 0222903C */ if (_t125) goto L_02229180; else goto L_02229040;
|
|
L_02229040: ; // 0x2229040
|
|
/* 02229040 */ _t126 = cpu->r[1] + 0x00000030u;
|
|
/* 02229040 */ rbrew_write_f32(cpu->mem, _t126, cpu->f[31]);
|
|
/* 02229044 */ _t127 = cpu->r[1] + 0x00000018u;
|
|
/* 02229044 */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t127);
|
|
/* 02229048 */ /* nop */
|
|
/* 0222904C */ _t128 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0222904C */ rbrew_write_f32(cpu->mem, _t128, cpu->f[5]);
|
|
/* 02229050 */ /* nop */
|
|
/* 02229054 */ /* nop */
|
|
/* 02229058 */ /* nop */
|
|
/* 0222905C */ /* nop */
|
|
/* 02229060 */ /* nop */
|
|
/* 02229064 */ /* nop */
|
|
/* 02229068 */ /* nop */
|
|
/* 0222906C */ cpu->f[8] = cpu->f[0];
|
|
/* 02229070 */ _t129 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02229070 */ cpu->f[4] = rbrew_read_f32(cpu->mem, _t129);
|
|
/* 02229074 */ /* nop */
|
|
/* 02229078 */ _t130 = cpu->r[1] + 0x00000084u;
|
|
/* 02229078 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t130);
|
|
/* 0222907C */ cpu->f[0] = cpu->f[6];
|
|
/* 02229080 */ _t131 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02229080 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t131);
|
|
/* 02229084 */ /* nop */
|
|
/* 02229088 */ _t132 = cpu->r[1] + 0x00000078u;
|
|
/* 02229088 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t132);
|
|
/* 0222908C */ cpu->f[7] = fma(cpu->f[4], cpu->f[6], cpu->f[0]);
|
|
/* 02229090 */ /* nop */
|
|
/* 02229094 */ cpu->f[10] = fma(cpu->f[4], cpu->f[9], cpu->f[8]);
|
|
/* 02229098 */ _t133 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02229098 */ rbrew_write_f32(cpu->mem, _t133, cpu->f[7]);
|
|
/* 0222909C */ cpu->f[3] = fma(cpu->f[4], cpu->f[13], cpu->f[11]);
|
|
/* 022290A0 */ _t134 = cpu->r[1] + 0x00000030u;
|
|
/* 022290A0 */ rbrew_write_f32(cpu->mem, _t134, cpu->f[10]);
|
|
/* 022290A4 */ cpu->f[10] = cpu->f[4] * cpu->f[4];
|
|
/* 022290A8 */ /* nop */
|
|
/* 022290AC */ /* nop */
|
|
/* 022290B0 */ /* nop */
|
|
/* 022290B4 */ /* nop */
|
|
/* 022290B8 */ /* nop */
|
|
/* 022290BC */ /* nop */
|
|
/* 022290C0 */ /* nop */
|
|
/* 022290C4 */ cpu->f[0] = cpu->f[13];
|
|
/* 022290C8 */ _t135 = cpu->r[30] + 0x00000008u;
|
|
/* 022290C8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t135);
|
|
/* 022290CC */ /* nop */
|
|
/* 022290D0 */ /* nop */
|
|
/* 022290D4 */ cpu->f[8] = cpu->f[7];
|
|
/* 022290D8 */ _t136 = cpu->r[1] + 0x000000A8u;
|
|
/* 022290D8 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t136);
|
|
/* 022290DC */ cpu->f[5] = fma(cpu->f[5], cpu->f[5], cpu->f[10]);
|
|
/* 022290E0 */ cpu->f[10] = fma(cpu->f[6], cpu->f[3], cpu->f[0]);
|
|
/* 022290E4 */ _t137 = cpu->r[1] + 0x000000B4u;
|
|
/* 022290E4 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t137);
|
|
/* 022290E8 */ cpu->f[7] = fma(cpu->f[13], cpu->f[3], cpu->f[11]);
|
|
/* 022290EC */ cpu->f[12] = fma(cpu->f[9], cpu->f[3], cpu->f[8]);
|
|
/* 022290F0 */ _t138 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022290F0 */ rbrew_write_f32(cpu->mem, _t138, cpu->f[10]);
|
|
/* 022290F4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[5], cpu->f[31]);
|
|
/* 022290F8 */ _t139 = cpu->r[1] + 0x00000030u;
|
|
/* 022290F8 */ rbrew_write_f32(cpu->mem, _t139, cpu->f[7]);
|
|
/* 022290FC */ _t140 = cpu->r[1] + 0x00000034u;
|
|
/* 022290FC */ rbrew_write_f32(cpu->mem, _t140, cpu->f[12]);
|
|
/* 02229100 */ _t141 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02229100 */ _t142 = _t141 & 0x00000001u;
|
|
/* 02229100 */ if (_t142) goto L_02229124; else goto L_02229104;
|
|
L_02229104: ; // 0x2229104
|
|
/* 02229104 */ cpu->f[11] = cpu->f[12] * cpu->f[12];
|
|
/* 02229108 */ cpu->f[7] = fma(cpu->f[10], cpu->f[10], cpu->f[11]);
|
|
/* 0222910C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[31]);
|
|
/* 02229110 */ _t143 = cpu->r[1] + 0x00000018u;
|
|
/* 02229110 */ rbrew_write_f32(cpu->mem, _t143, cpu->f[10]);
|
|
/* 02229114 */ cpu->f[8] = cpu->f[31] * cpu->f[5];
|
|
/* 02229118 */ _t144 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02229118 */ rbrew_write_f32(cpu->mem, _t144, cpu->f[12]);
|
|
/* 0222911C */ _t145 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0222911C */ _t146 = _t145 & 0x00000001u;
|
|
/* 0222911C */ if (_t146) goto L_02229120; else goto L_02229180;
|
|
L_02229120: ; // 0x2229120
|
|
/* 02229120 */ goto L_0222915C;
|
|
L_02229124: ; // 0x2229124
|
|
/* 02229124 */ _ft147 = sqrt(cpu->f[5]);
|
|
/* 02229124 */ _ft148 = (double)(int32_t)0x00000001u;
|
|
/* 02229124 */ cpu->f[0] = _ft148 / _ft147;
|
|
/* 02229128 */ cpu->f[10] = cpu->f[0] * cpu->f[0];
|
|
/* 0222912C */ cpu->f[11] = cpu->f[0] * cpu->f[30];
|
|
/* 02229130 */ cpu->f[10] = -fma(cpu->f[10], cpu->f[5], -(cpu->f[29]));
|
|
/* 02229134 */ cpu->f[0] = cpu->f[10] * cpu->f[11];
|
|
/* 02229138 */ _t149 = cpu->r[1] + 0x00000034u;
|
|
/* 02229138 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t149);
|
|
/* 0222913C */ _t150 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0222913C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t150);
|
|
/* 02229140 */ cpu->f[11] = cpu->f[12] * cpu->f[12];
|
|
/* 02229144 */ cpu->f[7] = fma(cpu->f[10], cpu->f[10], cpu->f[11]);
|
|
/* 02229148 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[31]);
|
|
/* 0222914C */ _t151 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0222914C */ rbrew_write_f32(cpu->mem, _t151, cpu->f[12]);
|
|
/* 02229150 */ cpu->f[8] = cpu->f[0] * cpu->f[5];
|
|
/* 02229154 */ _t152 = cpu->r[1] + 0x00000018u;
|
|
/* 02229154 */ rbrew_write_f32(cpu->mem, _t152, cpu->f[10]);
|
|
/* 02229158 */ _t153 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02229158 */ _t154 = _t153 & 0x00000001u;
|
|
/* 02229158 */ if (_t154) goto L_0222915C; else goto L_02229180;
|
|
L_0222915C: ; // 0x222915c
|
|
/* 0222915C */ _ft155 = sqrt(cpu->f[7]);
|
|
/* 0222915C */ _ft156 = (double)(int32_t)0x00000001u;
|
|
/* 0222915C */ cpu->f[9] = _ft156 / _ft155;
|
|
/* 02229160 */ cpu->f[10] = cpu->f[9] * cpu->f[9];
|
|
/* 02229164 */ cpu->f[11] = cpu->f[9] * cpu->f[8];
|
|
/* 02229168 */ cpu->f[10] = -fma(cpu->f[10], cpu->f[7], -(cpu->f[29]));
|
|
/* 0222916C */ cpu->f[11] = cpu->f[11] * cpu->f[30];
|
|
/* 02229170 */ cpu->f[9] = cpu->f[10] * cpu->f[11];
|
|
/* 02229174 */ /* nop */
|
|
/* 02229178 */ /* nop */
|
|
/* 0222917C */ /* nop */
|
|
L_02229180: ; // 0x2229180
|
|
/* 02229180 */ _t157 = cpu->r[25] + 0x00000004u;
|
|
/* 02229180 */ cpu->r[4] = rbrew_read32(cpu->mem, _t157);
|
|
/* 02229184 */ _t158 = cpu->r[4] + 0x00000414u;
|
|
/* 02229184 */ cpu->r[0] = rbrew_read32(cpu->mem, _t158);
|
|
/* 02229188 */ cpu->ctr = cpu->r[0];
|
|
/* 0222918C */ cpu->r[3] = cpu->r[25];
|
|
/* 02229190 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02229194 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02229198 */ _t159 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02229198 */ _t160 = _t159 & 0x00000001u;
|
|
/* 02229198 */ if (_t160) goto L_0222919C; else goto L_0222934C;
|
|
L_0222919C: ; // 0x222919c
|
|
/* 0222919C */ cpu->f[1] = cpu->f[28];
|
|
/* 022291A0 */ cpu->r[3] = cpu->r[1] + 0x00000108u;
|
|
/* 022291A4 */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 022291A8 */ Gambit_fn_023EDAE8(cpu);
|
|
/* 022291AC */ _t161 = cpu->r[1] + 0x0000010Cu;
|
|
/* 022291AC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t161);
|
|
/* 022291B0 */ _t162 = cpu->r[1] + 0x00000108u;
|
|
/* 022291B0 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t162);
|
|
/* 022291B4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[6]);
|
|
/* 022291B8 */ _t163 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022291B8 */ _t164 = _t163 & 0x00000001u;
|
|
/* 022291B8 */ if (_t164) goto L_022291BC; else goto L_0222934C;
|
|
L_022291BC: ; // 0x22291bc
|
|
/* 022291BC */ /* nop */
|
|
/* 022291C0 */ /* nop */
|
|
/* 022291C4 */ _t165 = cpu->r[1] + 0x00000028u;
|
|
/* 022291C4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t165);
|
|
/* 022291C8 */ _t166 = cpu->r[1] + 0x000000B4u;
|
|
/* 022291C8 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t166);
|
|
/* 022291CC */ /* nop */
|
|
/* 022291D0 */ _t167 = cpu->r[1] + 0x000000A8u;
|
|
/* 022291D0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t167);
|
|
/* 022291D4 */ _t168 = cpu->r[1] + 0x00000020u;
|
|
/* 022291D4 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t168);
|
|
/* 022291D8 */ cpu->f[0] = cpu->f[6] * cpu->f[0];
|
|
/* 022291DC */ /* nop */
|
|
/* 022291E0 */ _t169 = cpu->r[1] + 0x000000E4u;
|
|
/* 022291E0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t169);
|
|
/* 022291E4 */ _t170 = cpu->r[1] + 0x000000E8u;
|
|
/* 022291E4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t170);
|
|
/* 022291E8 */ /* nop */
|
|
/* 022291EC */ _t171 = cpu->r[1] + 0x000000C0u;
|
|
/* 022291EC */ rbrew_write32(cpu->mem, _t171, cpu->r[5]);
|
|
/* 022291F0 */ cpu->f[10] = cpu->f[11] * cpu->f[9];
|
|
/* 022291F4 */ _t172 = cpu->r[1] + 0x000000C4u;
|
|
/* 022291F4 */ rbrew_write32(cpu->mem, _t172, cpu->r[6]);
|
|
/* 022291F8 */ /* nop */
|
|
/* 022291FC */ /* nop */
|
|
/* 02229200 */ _t173 = cpu->r[1] + 0x000000D8u;
|
|
/* 02229200 */ cpu->r[9] = rbrew_read32(cpu->mem, _t173);
|
|
/* 02229204 */ _t174 = cpu->r[1] + 0x000000ECu;
|
|
/* 02229204 */ rbrew_write_f32(cpu->mem, _t174, cpu->f[0]);
|
|
/* 02229208 */ _t175 = cpu->r[1] + 0x000000ECu;
|
|
/* 02229208 */ cpu->r[0] = rbrew_read32(cpu->mem, _t175);
|
|
/* 0222920C */ _t176 = cpu->r[1] + 0x000000E0u;
|
|
/* 0222920C */ rbrew_write_f32(cpu->mem, _t176, cpu->f[10]);
|
|
/* 02229210 */ _t177 = cpu->r[1] + 0x000000C8u;
|
|
/* 02229210 */ rbrew_write32(cpu->mem, _t177, cpu->r[0]);
|
|
/* 02229214 */ _t178 = cpu->r[1] + 0x000000C8u;
|
|
/* 02229214 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t178);
|
|
/* 02229218 */ _t179 = cpu->r[1] + 0x000000E0u;
|
|
/* 02229218 */ cpu->r[4] = rbrew_read32(cpu->mem, _t179);
|
|
/* 0222921C */ _t180 = cpu->r[1] + 0x000000DCu;
|
|
/* 0222921C */ cpu->r[10] = rbrew_read32(cpu->mem, _t180);
|
|
/* 02229220 */ _t181 = cpu->r[1] + 0x00000128u;
|
|
/* 02229220 */ rbrew_write32(cpu->mem, _t181, cpu->r[4]);
|
|
/* 02229224 */ _t182 = cpu->r[1] + 0x00000128u;
|
|
/* 02229224 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t182);
|
|
/* 02229228 */ _t183 = cpu->r[1] + 0x00000120u;
|
|
/* 02229228 */ rbrew_write32(cpu->mem, _t183, cpu->r[9]);
|
|
/* 0222922C */ cpu->f[10] = cpu->f[11] + cpu->f[12];
|
|
/* 02229230 */ _t184 = cpu->r[1] + 0x00000124u;
|
|
/* 02229230 */ rbrew_write32(cpu->mem, _t184, cpu->r[10]);
|
|
/* 02229234 */ /* nop */
|
|
/* 02229238 */ _t185 = cpu->r[1] + 0x000000F8u;
|
|
/* 02229238 */ rbrew_write_f32(cpu->mem, _t185, cpu->f[10]);
|
|
/* 0222923C */ /* nop */
|
|
/* 02229240 */ _t186 = cpu->r[1] + 0x000000F8u;
|
|
/* 02229240 */ cpu->r[0] = rbrew_read32(cpu->mem, _t186);
|
|
/* 02229244 */ /* nop */
|
|
/* 02229248 */ _t187 = cpu->r[1] + 0x000000F4u;
|
|
/* 02229248 */ cpu->r[8] = rbrew_read32(cpu->mem, _t187);
|
|
/* 0222924C */ _t188 = cpu->r[1] + 0x000000F0u;
|
|
/* 0222924C */ cpu->r[7] = rbrew_read32(cpu->mem, _t188);
|
|
/* 02229250 */ _t189 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02229250 */ rbrew_write32(cpu->mem, _t189, cpu->r[8]);
|
|
/* 02229254 */ _t190 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02229254 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t190);
|
|
/* 02229258 */ _t191 = cpu->r[1] + 0x00000058u;
|
|
/* 02229258 */ rbrew_write32(cpu->mem, _t191, cpu->r[7]);
|
|
/* 0222925C */ cpu->f[0] = cpu->f[6] * cpu->f[6];
|
|
/* 02229260 */ _t192 = cpu->r[1] + 0x00000058u;
|
|
/* 02229260 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t192);
|
|
/* 02229264 */ _t193 = cpu->r[1] + 0x00000060u;
|
|
/* 02229264 */ rbrew_write32(cpu->mem, _t193, cpu->r[0]);
|
|
/* 02229268 */ cpu->f[10] = fma(cpu->f[13], cpu->f[13], cpu->f[0]);
|
|
/* 0222926C */ _t194 = cpu->r[1] + 0x00000060u;
|
|
/* 0222926C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t194);
|
|
/* 02229270 */ cpu->f[10] = fma(cpu->f[0], cpu->f[0], cpu->f[10]);
|
|
/* 02229274 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[31]);
|
|
/* 02229278 */ _t195 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02229278 */ _t196 = _t195 & 0x00000001u;
|
|
/* 02229278 */ if (_t196) goto L_022292D4; else goto L_0222927C;
|
|
L_0222927C: ; // 0x222927c
|
|
/* 0222927C */ _t197 = cpu->r[1] + 0x0000010Cu;
|
|
/* 0222927C */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t197);
|
|
/* 02229280 */ /* nop */
|
|
/* 02229284 */ cpu->f[9] = cpu->f[6] / cpu->f[29];
|
|
/* 02229288 */ /* nop */
|
|
/* 0222928C */ _t198 = cpu->r[1] + 0x00000048u;
|
|
/* 0222928C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t198);
|
|
/* 02229290 */ /* nop */
|
|
/* 02229294 */ /* nop */
|
|
/* 02229298 */ _t199 = cpu->r[1] + 0x000000FCu;
|
|
/* 02229298 */ cpu->r[5] = rbrew_read32(cpu->mem, _t199);
|
|
/* 0222929C */ cpu->f[8] = cpu->f[0] * cpu->f[9];
|
|
/* 022292A0 */ _t200 = cpu->r[1] + 0x00000100u;
|
|
/* 022292A0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t200);
|
|
/* 022292A4 */ _t201 = cpu->r[1] + 0x000000C0u;
|
|
/* 022292A4 */ rbrew_write32(cpu->mem, _t201, cpu->r[5]);
|
|
/* 022292A8 */ _t202 = cpu->r[1] + 0x00000104u;
|
|
/* 022292A8 */ rbrew_write_f32(cpu->mem, _t202, cpu->f[8]);
|
|
/* 022292AC */ _t203 = cpu->r[1] + 0x00000104u;
|
|
/* 022292AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t203);
|
|
/* 022292B0 */ _t204 = cpu->r[1] + 0x000000C4u;
|
|
/* 022292B0 */ rbrew_write32(cpu->mem, _t204, cpu->r[7]);
|
|
/* 022292B4 */ _t205 = cpu->r[1] + 0x000000C8u;
|
|
/* 022292B4 */ rbrew_write32(cpu->mem, _t205, cpu->r[0]);
|
|
/* 022292B8 */ _t206 = cpu->r[1] + 0x000000C8u;
|
|
/* 022292B8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t206);
|
|
/* 022292BC */ /* nop */
|
|
/* 022292C0 */ cpu->f[12] = cpu->f[12] + cpu->f[0];
|
|
/* 022292C4 */ /* nop */
|
|
/* 022292C8 */ /* nop */
|
|
/* 022292CC */ _t207 = cpu->r[1] + 0x00000048u;
|
|
/* 022292CC */ rbrew_write_f32(cpu->mem, _t207, cpu->f[12]);
|
|
/* 022292D0 */ goto L_0222934C;
|
|
L_022292D4: ; // 0x22292d4
|
|
/* 022292D4 */ _ft208 = sqrt(cpu->f[10]);
|
|
/* 022292D4 */ _ft209 = (double)(int32_t)0x00000001u;
|
|
/* 022292D4 */ cpu->f[11] = _ft209 / _ft208;
|
|
/* 022292D8 */ cpu->f[12] = cpu->f[11] * cpu->f[11];
|
|
/* 022292DC */ cpu->f[6] = cpu->f[11] * cpu->f[30];
|
|
/* 022292E0 */ cpu->f[12] = -fma(cpu->f[12], cpu->f[10], -(cpu->f[29]));
|
|
/* 022292E4 */ cpu->f[11] = cpu->f[12] * cpu->f[6];
|
|
/* 022292E8 */ _t210 = cpu->r[1] + 0x0000010Cu;
|
|
/* 022292E8 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t210);
|
|
/* 022292EC */ /* nop */
|
|
/* 022292F0 */ cpu->f[9] = cpu->f[6] / cpu->f[29];
|
|
/* 022292F4 */ _t211 = cpu->r[1] + 0x00000060u;
|
|
/* 022292F4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t211);
|
|
/* 022292F8 */ /* nop */
|
|
/* 022292FC */ _t212 = cpu->r[1] + 0x00000048u;
|
|
/* 022292FC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t212);
|
|
/* 02229300 */ /* nop */
|
|
/* 02229304 */ /* nop */
|
|
/* 02229308 */ _t213 = cpu->r[1] + 0x000000FCu;
|
|
/* 02229308 */ cpu->r[5] = rbrew_read32(cpu->mem, _t213);
|
|
/* 0222930C */ cpu->f[0] = cpu->f[0] * cpu->f[11];
|
|
/* 02229310 */ /* nop */
|
|
/* 02229314 */ _t214 = cpu->r[1] + 0x00000100u;
|
|
/* 02229314 */ cpu->r[7] = rbrew_read32(cpu->mem, _t214);
|
|
/* 02229318 */ cpu->f[8] = cpu->f[0] * cpu->f[9];
|
|
/* 0222931C */ _t215 = cpu->r[1] + 0x000000C0u;
|
|
/* 0222931C */ rbrew_write32(cpu->mem, _t215, cpu->r[5]);
|
|
/* 02229320 */ _t216 = cpu->r[1] + 0x000000C4u;
|
|
/* 02229320 */ rbrew_write32(cpu->mem, _t216, cpu->r[7]);
|
|
/* 02229324 */ _t217 = cpu->r[1] + 0x00000104u;
|
|
/* 02229324 */ rbrew_write_f32(cpu->mem, _t217, cpu->f[8]);
|
|
/* 02229328 */ _t218 = cpu->r[1] + 0x00000104u;
|
|
/* 02229328 */ cpu->r[0] = rbrew_read32(cpu->mem, _t218);
|
|
/* 0222932C */ _t219 = cpu->r[1] + 0x00000060u;
|
|
/* 0222932C */ rbrew_write_f32(cpu->mem, _t219, cpu->f[0]);
|
|
/* 02229330 */ _t220 = cpu->r[1] + 0x000000C8u;
|
|
/* 02229330 */ rbrew_write32(cpu->mem, _t220, cpu->r[0]);
|
|
/* 02229334 */ _t221 = cpu->r[1] + 0x000000C8u;
|
|
/* 02229334 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t221);
|
|
/* 02229338 */ /* nop */
|
|
/* 0222933C */ cpu->f[12] = cpu->f[12] + cpu->f[0];
|
|
/* 02229340 */ /* nop */
|
|
/* 02229344 */ /* nop */
|
|
/* 02229348 */ _t222 = cpu->r[1] + 0x00000048u;
|
|
/* 02229348 */ rbrew_write_f32(cpu->mem, _t222, cpu->f[12]);
|
|
L_0222934C: ; // 0x222934c
|
|
/* 0222934C */ cpu->r[20] = 0x101C0000u;
|
|
/* 02229350 */ cpu->r[21] = 0x101C0000u;
|
|
/* 02229354 */ cpu->r[17] = 0x00000000u;
|
|
/* 02229358 */ cpu->r[18] = 0x00000006u;
|
|
/* 0222935C */ cpu->r[21] = cpu->r[21] + 0x00006000u;
|
|
/* 02229360 */ cpu->r[22] = 0x00000001u;
|
|
/* 02229364 */ cpu->r[20] = cpu->r[20] + 0x00005BA0u;
|
|
/* 02229368 */ cpu->r[19] = rbrew_rlwinm(cpu->r[27], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
L_0222936C: ; // 0x222936c
|
|
/* 0222936C */ /* nop */
|
|
/* 02229370 */ cpu->r[10] = cpu->r[23] & cpu->r[9];
|
|
/* 02229370 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02229374 */ _t223 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02229374 */ _t224 = _t223 & 0x00000001u;
|
|
/* 02229374 */ if (_t224) goto L_0222947C; else goto L_02229378;
|
|
L_02229378: ; // 0x2229378
|
|
/* 02229378 */ _t225 = cpu->r[25] + 0x00000004u;
|
|
/* 02229378 */ cpu->r[4] = rbrew_read32(cpu->mem, _t225);
|
|
/* 0222937C */ _t226 = cpu->r[21] + 0x00000000u;
|
|
/* 0222937C */ cpu->r[11] = rbrew_read32(cpu->mem, _t226);
|
|
/* 02229380 */ _t227 = cpu->r[28] + 0x00000000u;
|
|
/* 02229380 */ cpu->r[0] = rbrew_read32(cpu->mem, _t227);
|
|
/* 02229384 */ _t228 = cpu->r[11] + 0x00000004u;
|
|
/* 02229384 */ cpu->r[12] = rbrew_read32(cpu->mem, _t228);
|
|
/* 02229388 */ _t229 = cpu->r[1] + 0x00000014u;
|
|
/* 02229388 */ rbrew_write32(cpu->mem, _t229, cpu->r[0]);
|
|
/* 0222938C */ _t230 = cpu->r[4] + 0x00000414u;
|
|
/* 0222938C */ cpu->r[0] = rbrew_read32(cpu->mem, _t230);
|
|
/* 02229390 */ cpu->ctr = cpu->r[0];
|
|
/* 02229394 */ cpu->r[15] = cpu->r[12] + 0x00000130u;
|
|
/* 02229398 */ cpu->r[16] = 0xFFFFFFFFu;
|
|
/* 0222939C */ cpu->r[3] = cpu->r[25];
|
|
/* 022293A0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022293A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022293A8 */ _t231 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022293A8 */ _t232 = _t231 & 0x00000001u;
|
|
/* 022293A8 */ if (_t232) goto L_022293B0; else goto L_022293AC;
|
|
L_022293AC: ; // 0x22293ac
|
|
/* 022293AC */ cpu->r[16] = 0xFFFFFFFEu;
|
|
L_022293B0: ; // 0x22293b0
|
|
/* 022293B0 */ _t233 = cpu->r[1] + 0x00000040u;
|
|
/* 022293B0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t233);
|
|
/* 022293B4 */ _t234 = cpu->r[1] + 0x00000018u;
|
|
/* 022293B4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t234);
|
|
/* 022293B8 */ _t235 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022293B8 */ rbrew_write32(cpu->mem, _t235, cpu->r[7]);
|
|
/* 022293BC */ _t236 = cpu->r[1] + 0x00000044u;
|
|
/* 022293BC */ cpu->r[9] = rbrew_read32(cpu->mem, _t236);
|
|
/* 022293C0 */ _t237 = cpu->r[1] + 0x00000038u;
|
|
/* 022293C0 */ rbrew_write32(cpu->mem, _t237, cpu->r[12]);
|
|
/* 022293C4 */ _t238 = cpu->r[1] + 0x00000050u;
|
|
/* 022293C4 */ rbrew_write32(cpu->mem, _t238, cpu->r[9]);
|
|
/* 022293C8 */ _t239 = cpu->r[1] + 0x00000048u;
|
|
/* 022293C8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t239);
|
|
/* 022293CC */ _t240 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022293CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t240);
|
|
/* 022293D0 */ _t241 = cpu->r[1] + 0x00000054u;
|
|
/* 022293D0 */ rbrew_write32(cpu->mem, _t241, cpu->r[11]);
|
|
/* 022293D4 */ _t242 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022293D4 */ rbrew_write32(cpu->mem, _t242, cpu->r[0]);
|
|
/* 022293D8 */ _t243 = cpu->r[15] + 0x00000004u;
|
|
/* 022293D8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t243);
|
|
/* 022293DC */ _t244 = cpu->r[21] + 0x00000000u;
|
|
/* 022293DC */ cpu->r[3] = rbrew_read32(cpu->mem, _t244);
|
|
/* 022293E0 */ cpu->ctr = cpu->r[7];
|
|
/* 022293E4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022293E8 */ cpu->r[4] = cpu->r[26];
|
|
/* 022293EC */ cpu->r[9] = cpu->r[17];
|
|
/* 022293F0 */ cpu->f[1] = cpu->f[28];
|
|
/* 022293F4 */ cpu->r[10] = cpu->r[30];
|
|
/* 022293F8 */ _t245 = cpu->r[1] + 0x00000008u;
|
|
/* 022293F8 */ rbrew_write32(cpu->mem, _t245, cpu->r[29]);
|
|
/* 022293FC */ cpu->r[5] = cpu->r[3];
|
|
/* 02229400 */ cpu->r[3] = cpu->r[1] + 0x0000012Cu;
|
|
/* 02229404 */ _t246 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02229404 */ rbrew_write32(cpu->mem, _t246, cpu->r[16]);
|
|
/* 02229408 */ cpu->r[6] = cpu->r[1] + 0x0000004Cu;
|
|
/* 0222940C */ /* nop */
|
|
/* 02229410 */ cpu->r[7] = cpu->r[1] + 0x00000038u;
|
|
/* 02229414 */ cpu->r[8] = cpu->r[1] + 0x00000014u;
|
|
/* 02229418 */ _t247 = cpu->r[1] + 0x00000010u;
|
|
/* 02229418 */ rbrew_write32(cpu->mem, _t247, cpu->r[0]);
|
|
/* 0222941C */ Gambit_fn_023F6488(cpu);
|
|
/* 02229420 */ _t248 = cpu->r[20] + 0x00000000u;
|
|
/* 02229420 */ cpu->r[6] = rbrew_read32(cpu->mem, _t248);
|
|
/* 02229424 */ _t249 = cpu->r[6] + 0x00000078u;
|
|
/* 02229424 */ cpu->r[0] = rbrew_read32(cpu->mem, _t249);
|
|
/* 02229428 */ _t250 = cpu->r[25] + 0x00000004u;
|
|
/* 02229428 */ cpu->r[4] = rbrew_read32(cpu->mem, _t250);
|
|
/* 0222942C */ cpu->r[16] = 0x00000000u;
|
|
/* 02229430 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], cpu->r[0]);
|
|
/* 02229434 */ _t251 = cpu->r[4] + 0x00000414u;
|
|
/* 02229434 */ cpu->r[0] = rbrew_read32(cpu->mem, _t251);
|
|
/* 02229438 */ _t252 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02229438 */ _t253 = _t252 & 0x00000001u;
|
|
/* 02229438 */ if (_t253) goto L_0222943C; else goto L_02229444;
|
|
L_0222943C: ; // 0x222943c
|
|
/* 0222943C */ _t254 = cpu->r[6] + 0x00000080u;
|
|
/* 0222943C */ cpu->r[12] = rbrew_read32(cpu->mem, _t254);
|
|
/* 02229440 */ _t255 = cpu->r[12] + cpu->r[19];
|
|
/* 02229440 */ cpu->r[16] = rbrew_read32(cpu->mem, _t255);
|
|
L_02229444: ; // 0x2229444
|
|
/* 02229444 */ cpu->ctr = cpu->r[0];
|
|
/* 02229448 */ cpu->r[3] = cpu->r[25];
|
|
/* 0222944C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02229450 */ cpu->r[5] = cpu->r[3];
|
|
/* 02229454 */ cpu->r[3] = cpu->r[16];
|
|
/* 02229458 */ cpu->r[4] = cpu->r[1] + 0x0000012Cu;
|
|
/* 0222945C */ Gambit_fn_025E0DF0(cpu);
|
|
/* 02229460 */ _t256 = cpu->r[20] + 0x00000000u;
|
|
/* 02229460 */ cpu->r[7] = rbrew_read32(cpu->mem, _t256);
|
|
/* 02229464 */ _t257 = cpu->r[7] + 0x00000044u;
|
|
/* 02229464 */ cpu->r[0] = rbrew_read8(cpu->mem, _t257);
|
|
/* 02229468 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0222946C */ _t258 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222946C */ _t259 = _t258 & 0x00000001u;
|
|
/* 0222946C */ if (_t259) goto L_0222947C; else goto L_02229470;
|
|
L_02229470: ; // 0x2229470
|
|
/* 02229470 */ _t260 = cpu->r[24] + 0x00000000u;
|
|
/* 02229470 */ cpu->r[3] = rbrew_read32(cpu->mem, _t260);
|
|
/* 02229474 */ cpu->r[4] = cpu->r[1] + 0x0000012Cu;
|
|
/* 02229478 */ Gambit_fn_023EED38(cpu);
|
|
L_0222947C: ; // 0x222947c
|
|
/* 0222947C */ cpu->r[18] = cpu->r[18] + 0xFFFFFFFFu;
|
|
/* 0222947C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[18], 0x00000000u);
|
|
/* 02229480 */ cpu->r[17] = cpu->r[17] + 0x00000001u;
|
|
/* 02229484 */ _t261 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02229484 */ _t262 = _t261 & 0x00000001u;
|
|
/* 02229484 */ if (_t262) goto L_02229488; else goto L_0222936C;
|
|
L_02229488: ; // 0x2229488
|
|
/* 02229488 */ /* nop */
|
|
/* 0222948C */ _t263 = cpu->r[1] + 0x000001E0u;
|
|
/* 0222948C */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t263);
|
|
/* 02229490 */ _t264 = cpu->r[1] + 0x000001F0u;
|
|
/* 02229490 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t264);
|
|
/* 02229494 */ _t265 = cpu->r[1] + 0x000001D8u;
|
|
/* 02229494 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t265);
|
|
/* 02229498 */ _t266 = cpu->r[1] + 0x000001E8u;
|
|
/* 02229498 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t266);
|
|
/* 0222949C */ _t267 = cpu->r[1] + 0x000001D0u;
|
|
/* 0222949C */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t267);
|
|
/* 022294A0 */ _t268 = cpu->r[1] + 0x00000200u;
|
|
/* 022294A0 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t268);
|
|
/* 022294A4 */ _t269 = cpu->r[1] + 0x000001C8u;
|
|
/* 022294A4 */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t269);
|
|
/* 022294A8 */ _t270 = cpu->r[1] + 0x000001F8u;
|
|
/* 022294A8 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t270);
|
|
/* 022294AC */ _t271 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022294AC */ _t272 = _t271 & 0x00000001u;
|
|
/* 022294AC */ if (_t272) goto L_022294B0; // else: addr-0 trap, fall-through
|
|
L_022294B0: ; // 0x22294b0
|
|
/* 022294B0 */ _t273 = cpu->r[1] + 0x0000020Cu;
|
|
/* 022294B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t273);
|
|
/* 022294B4 */ cpu->lr = cpu->r[0];
|
|
/* 022294B8 */ cpu->r[1] = cpu->r[1] + 0x00000208u;
|
|
/* 022294BC */ return;
|
|
}
|
|
|
|
// fn_022294C0 @ 0x22294c0
|
|
void Gambit_fn_022294C0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _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, _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, _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, _t699, _t700, _t701, _t702, _t703, _t704, _t705, _t706, _t707, _t708, _t709, _t710, _t711, _t712, _t713, _t714, _t715, _t716, _t717, _t718, _t719, _t720;
|
|
double _ft381, _ft382, _ft584, _ft585;
|
|
|
|
L_022294C0: ; // 0x22294c0
|
|
/* 022294C0 */ _t0 = cpu->r[1] + 0xFFFFFE40u;
|
|
/* 022294C0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022294C0 */ cpu->r[1] = _t0;
|
|
/* 022294C4 */ /* nop */
|
|
/* 022294C8 */ cpu->r[0] = cpu->lr;
|
|
/* 022294CC */ _t1 = cpu->r[1] + 0x00000160u;
|
|
/* 022294CC */ rbrew_write_f64(cpu->mem, _t1, cpu->f[26]);
|
|
/* 022294D0 */ _t2 = cpu->r[1] + 0x00000170u;
|
|
/* 022294D0 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[27]);
|
|
/* 022294D4 */ _t3 = cpu->r[1] + 0x00000180u;
|
|
/* 022294D4 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[28]);
|
|
/* 022294D8 */ /* nop */
|
|
/* 022294DC */ _t4 = cpu->r[1] + 0x00000190u;
|
|
/* 022294DC */ rbrew_write_f64(cpu->mem, _t4, cpu->f[29]);
|
|
/* 022294E0 */ /* nop */
|
|
/* 022294E4 */ _t5 = cpu->r[1] + 0x000001A0u;
|
|
/* 022294E4 */ rbrew_write_f64(cpu->mem, _t5, cpu->f[30]);
|
|
/* 022294E8 */ /* nop */
|
|
/* 022294EC */ _t6 = cpu->r[1] + 0x00000168u;
|
|
/* 022294EC */ rbrew_write_f32(cpu->mem, _t6, cpu->f[26]);
|
|
/* 022294F0 */ /* nop */
|
|
/* 022294F4 */ _t7 = cpu->r[1] + 0x00000178u;
|
|
/* 022294F4 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[27]);
|
|
/* 022294F8 */ _t8 = cpu->r[1] + 0x00000188u;
|
|
/* 022294F8 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[28]);
|
|
/* 022294FC */ _t9 = cpu->r[1] + 0x00000198u;
|
|
/* 022294FC */ rbrew_write_f32(cpu->mem, _t9, cpu->f[29]);
|
|
/* 02229500 */ /* nop */
|
|
/* 02229504 */ _t10 = cpu->r[1] + 0x000001B0u;
|
|
/* 02229504 */ rbrew_write_f64(cpu->mem, _t10, cpu->f[31]);
|
|
/* 02229508 */ _t11 = cpu->r[1] + 0x000001A8u;
|
|
/* 02229508 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[30]);
|
|
/* 0222950C */ /* nop */
|
|
/* 02229510 */ _t12 = cpu->r[1] + 0x000001C4u;
|
|
/* 02229510 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 02229514 */ _t13 = cpu->r[1] + 0x000001B8u;
|
|
/* 02229514 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[31]);
|
|
/* 02229518 */ cpu->r[29] = cpu->r[3];
|
|
/* 0222951C */ _t14 = cpu->r[29] + 0x000000B0u;
|
|
/* 0222951C */ cpu->r[12] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02229520 */ cpu->r[11] = rbrew_rlwinm(cpu->r[12], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02229524 */ cpu->r[3] = rbrew_rlwinm(cpu->r[12], 0x0000000Du, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02229528 */ cpu->r[7] = cpu->r[11] | cpu->r[3];
|
|
/* 02229528 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0222952C */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222952C */ _t16 = _t15 & 0x00000001u;
|
|
/* 0222952C */ if (_t16) goto L_02229530; else goto L_02229578;
|
|
L_02229530: ; // 0x2229530
|
|
/* 02229530 */ /* nop */
|
|
/* 02229534 */ _t17 = cpu->r[1] + 0x000001A8u;
|
|
/* 02229534 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 02229538 */ _t18 = cpu->r[1] + 0x00000188u;
|
|
/* 02229538 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 0222953C */ _t19 = cpu->r[1] + 0x000001A0u;
|
|
/* 0222953C */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t19);
|
|
/* 02229540 */ _t20 = cpu->r[1] + 0x00000180u;
|
|
/* 02229540 */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t20);
|
|
/* 02229544 */ _t21 = cpu->r[1] + 0x00000178u;
|
|
/* 02229544 */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 02229548 */ _t22 = cpu->r[1] + 0x00000198u;
|
|
/* 02229548 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 0222954C */ _t23 = cpu->r[1] + 0x00000170u;
|
|
/* 0222954C */ cpu->f[27] = rbrew_read_f64(cpu->mem, _t23);
|
|
/* 02229550 */ _t24 = cpu->r[1] + 0x00000190u;
|
|
/* 02229550 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t24);
|
|
/* 02229554 */ _t25 = cpu->r[1] + 0x00000168u;
|
|
/* 02229554 */ cpu->f[26] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 02229558 */ _t26 = cpu->r[1] + 0x000001B8u;
|
|
/* 02229558 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 0222955C */ _t27 = cpu->r[1] + 0x00000160u;
|
|
/* 0222955C */ cpu->f[26] = rbrew_read_f64(cpu->mem, _t27);
|
|
/* 02229560 */ _t28 = cpu->r[1] + 0x000001B0u;
|
|
/* 02229560 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t28);
|
|
/* 02229564 */ _t29 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02229564 */ _t30 = _t29 & 0x00000001u;
|
|
/* 02229564 */ if (_t30) goto L_02229568; // else: addr-0 trap, fall-through
|
|
L_02229568: ; // 0x2229568
|
|
/* 02229568 */ _t31 = cpu->r[1] + 0x000001C4u;
|
|
/* 02229568 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0222956C */ cpu->lr = cpu->r[0];
|
|
/* 02229570 */ cpu->r[1] = cpu->r[1] + 0x000001C0u;
|
|
/* 02229574 */ return;
|
|
L_02229578: ; // 0x2229578
|
|
/* 02229578 */ cpu->r[9] = 0x10050000u;
|
|
/* 0222957C */ _t32 = cpu->r[29] + 0x000000B4u;
|
|
/* 0222957C */ cpu->r[28] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02229580 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02229584 */ cpu->r[30] = 0x00000000u;
|
|
/* 02229588 */ _t33 = cpu->r[9] + 0x0000009Cu;
|
|
/* 02229588 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 0222958C */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222958C */ _t35 = _t34 & 0x00000001u;
|
|
/* 0222958C */ if (_t35) goto L_02229CBC; else goto L_02229590;
|
|
L_02229590: ; // 0x2229590
|
|
/* 02229590 */ _t36 = cpu->r[28] + 0x00000168u;
|
|
/* 02229590 */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02229594 */ _t37 = cpu->r[4] + 0x00000008u;
|
|
/* 02229594 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 02229598 */ cpu->r[11] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000004u, 0x00000004u);
|
|
/* 02229598 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0222959C */ _t38 = cpu->r[5] + 0x00000008u;
|
|
/* 0222959C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 022295A0 */ /* nop */
|
|
/* 022295A4 */ /* nop */
|
|
/* 022295A8 */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022295A8 */ _t40 = _t39 & 0x00000001u;
|
|
/* 022295A8 */ if (_t40) goto L_022295D0; else goto L_022295AC;
|
|
L_022295AC: ; // 0x22295ac
|
|
/* 022295AC */ _t41 = cpu->r[28] + 0x00000044u;
|
|
/* 022295AC */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 022295B0 */ cpu->f[11] = fma(cpu->f[8], cpu->f[10], cpu->f[12]);
|
|
/* 022295B4 */ /* nop */
|
|
/* 022295B8 */ /* nop */
|
|
/* 022295BC */ _t42 = cpu->r[1] + 0x000000BCu;
|
|
/* 022295BC */ rbrew_write_f32(cpu->mem, _t42, cpu->f[11]);
|
|
/* 022295C0 */ _t43 = cpu->r[28] + 0x0000015Cu;
|
|
/* 022295C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t43);
|
|
/* 022295C4 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Cu, 0x0000001Fu);
|
|
/* 022295C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022295C8 */ _t44 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022295C8 */ _t45 = _t44 & 0x00000001u;
|
|
/* 022295C8 */ if (_t45) goto L_02229624; else goto L_022295CC;
|
|
L_022295CC: ; // 0x22295cc
|
|
/* 022295CC */ goto L_022295EC;
|
|
L_022295D0: ; // 0x22295d0
|
|
/* 022295D0 */ cpu->f[11] = fma(cpu->f[31], cpu->f[10], cpu->f[12]);
|
|
/* 022295D4 */ /* nop */
|
|
/* 022295D8 */ /* nop */
|
|
/* 022295DC */ _t46 = cpu->r[1] + 0x000000BCu;
|
|
/* 022295DC */ rbrew_write_f32(cpu->mem, _t46, cpu->f[11]);
|
|
/* 022295E0 */ _t47 = cpu->r[28] + 0x0000015Cu;
|
|
/* 022295E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t47);
|
|
/* 022295E4 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Cu, 0x0000001Fu);
|
|
/* 022295E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022295E8 */ _t48 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022295E8 */ _t49 = _t48 & 0x00000001u;
|
|
/* 022295E8 */ if (_t49) goto L_02229624; else goto L_022295EC;
|
|
L_022295EC: ; // 0x22295ec
|
|
/* 022295EC */ _t50 = cpu->r[28] + 0x00000060u;
|
|
/* 022295EC */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t50);
|
|
/* 022295F0 */ _t51 = cpu->r[29] + 0x00000108u;
|
|
/* 022295F0 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[6]);
|
|
/* 022295F4 */ _t52 = cpu->r[28] + 0x00000064u;
|
|
/* 022295F4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 022295F8 */ _t53 = cpu->r[29] + 0x0000010Cu;
|
|
/* 022295F8 */ rbrew_write_f32(cpu->mem, _t53, cpu->f[8]);
|
|
/* 022295FC */ _t54 = cpu->r[28] + 0x00000068u;
|
|
/* 022295FC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 02229600 */ cpu->r[4] = cpu->r[29];
|
|
/* 02229604 */ cpu->r[3] = cpu->r[28];
|
|
/* 02229608 */ _t55 = cpu->r[29] + 0x00000110u;
|
|
/* 02229608 */ rbrew_write_f32(cpu->mem, _t55, cpu->f[9]);
|
|
/* 0222960C */ Gambit_fn_02040DBC(cpu);
|
|
/* 02229610 */ _t56 = cpu->r[28] + 0x0000015Cu;
|
|
/* 02229610 */ cpu->r[12] = rbrew_read32(cpu->mem, _t56);
|
|
/* 02229614 */ cpu->r[11] = rbrew_rlwinm(cpu->r[12], 0x00000000u, 0x0000001Cu, 0x0000001Fu);
|
|
/* 02229614 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02229618 */ cpu->r[26] = 0x00000000u;
|
|
/* 0222961C */ _t57 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222961C */ _t58 = _t57 & 0x00000001u;
|
|
/* 0222961C */ if (_t58) goto L_02229694; else goto L_02229620;
|
|
L_02229620: ; // 0x2229620
|
|
/* 02229620 */ goto L_02229658;
|
|
L_02229624: ; // 0x2229624
|
|
/* 02229624 */ _t59 = cpu->r[28] + 0x000000C0u;
|
|
/* 02229624 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t59);
|
|
/* 02229628 */ _t60 = cpu->r[29] + 0x00000108u;
|
|
/* 02229628 */ rbrew_write_f32(cpu->mem, _t60, cpu->f[6]);
|
|
/* 0222962C */ _t61 = cpu->r[28] + 0x000000C4u;
|
|
/* 0222962C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t61);
|
|
/* 02229630 */ _t62 = cpu->r[29] + 0x0000010Cu;
|
|
/* 02229630 */ rbrew_write_f32(cpu->mem, _t62, cpu->f[8]);
|
|
/* 02229634 */ _t63 = cpu->r[28] + 0x000000C8u;
|
|
/* 02229634 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t63);
|
|
/* 02229638 */ cpu->r[4] = cpu->r[29];
|
|
/* 0222963C */ cpu->r[3] = cpu->r[28];
|
|
/* 02229640 */ _t64 = cpu->r[29] + 0x00000110u;
|
|
/* 02229640 */ rbrew_write_f32(cpu->mem, _t64, cpu->f[9]);
|
|
/* 02229644 */ Gambit_fn_02040DBC(cpu);
|
|
/* 02229648 */ _t65 = cpu->r[28] + 0x0000015Cu;
|
|
/* 02229648 */ cpu->r[12] = rbrew_read32(cpu->mem, _t65);
|
|
/* 0222964C */ cpu->r[11] = rbrew_rlwinm(cpu->r[12], 0x00000000u, 0x0000001Cu, 0x0000001Fu);
|
|
/* 0222964C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02229650 */ cpu->r[26] = 0x00000000u;
|
|
/* 02229654 */ _t66 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02229654 */ _t67 = _t66 & 0x00000001u;
|
|
/* 02229654 */ if (_t67) goto L_02229694; else goto L_02229658;
|
|
L_02229658: ; // 0x2229658
|
|
/* 02229658 */ _t68 = cpu->r[28] + 0x0000008Cu;
|
|
/* 02229658 */ cpu->r[0] = rbrew_read16(cpu->mem, _t68);
|
|
/* 0222965C */ _t69 = cpu->r[29] + 0x00000030u;
|
|
/* 0222965C */ cpu->r[3] = rbrew_read32(cpu->mem, _t69);
|
|
/* 02229660 */ cpu->r[5] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Au, 0x0000001Fu);
|
|
/* 02229664 */ cpu->r[4] = 0x00000002u;
|
|
/* 02229668 */ Gambit_fn_027B8224(cpu);
|
|
/* 0222966C */ _t70 = cpu->r[29] + 0x00000004u;
|
|
/* 0222966C */ cpu->r[5] = rbrew_read32(cpu->mem, _t70);
|
|
/* 02229670 */ _t71 = cpu->r[5] + 0x00000354u;
|
|
/* 02229670 */ cpu->r[6] = rbrew_read32(cpu->mem, _t71);
|
|
/* 02229674 */ cpu->ctr = cpu->r[6];
|
|
/* 02229678 */ cpu->r[5] = cpu->r[28];
|
|
/* 0222967C */ cpu->r[4] = cpu->r[29] + 0x00000108u;
|
|
/* 02229680 */ cpu->r[3] = cpu->r[29];
|
|
/* 02229684 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02229688 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0222968C */ _t72 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222968C */ _t73 = _t72 & 0x00000001u;
|
|
/* 0222968C */ if (_t73) goto L_02229694; else goto L_02229690;
|
|
L_02229690: ; // 0x2229690
|
|
/* 02229690 */ cpu->r[26] = 0x00000001u;
|
|
L_02229694: ; // 0x2229694
|
|
/* 02229694 */ _t74 = cpu->r[29] + 0x00000004u;
|
|
/* 02229694 */ cpu->r[8] = rbrew_read32(cpu->mem, _t74);
|
|
/* 02229698 */ _t75 = cpu->r[8] + 0x000003E4u;
|
|
/* 02229698 */ cpu->r[10] = rbrew_read32(cpu->mem, _t75);
|
|
/* 0222969C */ cpu->ctr = cpu->r[10];
|
|
/* 022296A0 */ cpu->r[3] = cpu->r[29];
|
|
/* 022296A4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022296A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022296AC */ _t76 = cpu->r[28] + 0x0000015Cu;
|
|
/* 022296AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t76);
|
|
/* 022296B0 */ _t77 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022296B0 */ _t78 = _t77 & 0x00000001u;
|
|
/* 022296B0 */ if (_t78) goto L_022296B4; else goto L_022296BC;
|
|
L_022296B4: ; // 0x22296b4
|
|
/* 022296B4 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Cu, 0x0000001Fu);
|
|
/* 022296B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022296B8 */ _t79 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022296B8 */ _t80 = _t79 & 0x00000001u;
|
|
/* 022296B8 */ if (_t80) goto L_022296BC; else goto L_02229A7C;
|
|
L_022296BC: ; // 0x22296bc
|
|
/* 022296BC */ cpu->r[5] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Bu);
|
|
/* 022296BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 022296C0 */ _t81 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022296C0 */ _t82 = _t81 & 0x00000001u;
|
|
/* 022296C0 */ if (_t82) goto L_02229A7C; else goto L_022296C4;
|
|
L_022296C4: ; // 0x22296c4
|
|
/* 022296C4 */ _t83 = cpu->r[29] + 0x00000051u;
|
|
/* 022296C4 */ cpu->r[7] = rbrew_read8(cpu->mem, _t83);
|
|
/* 022296C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 022296CC */ _t84 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022296CC */ _t85 = _t84 & 0x00000001u;
|
|
/* 022296CC */ if (_t85) goto L_022297DC; else goto L_022296D0;
|
|
L_022296D0: ; // 0x22296d0
|
|
/* 022296D0 */ _t86 = cpu->r[29] + 0x00000004u;
|
|
/* 022296D0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t86);
|
|
/* 022296D4 */ _t87 = cpu->r[8] + 0x00000334u;
|
|
/* 022296D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t87);
|
|
/* 022296D8 */ cpu->ctr = cpu->r[0];
|
|
/* 022296DC */ cpu->r[3] = cpu->r[29];
|
|
/* 022296E0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022296E4 */ cpu->f[29] = cpu->f[1];
|
|
/* 022296E8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[29], cpu->f[31]);
|
|
/* 022296EC */ _t88 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022296EC */ _t89 = _t88 & 0x00000001u;
|
|
/* 022296EC */ if (_t89) goto L_022296F0; else goto L_022297DC;
|
|
L_022296F0: ; // 0x22296f0
|
|
/* 022296F0 */ _t90 = cpu->r[1] + 0x00000018u;
|
|
/* 022296F0 */ rbrew_write32(cpu->mem, _t90, cpu->r[30]);
|
|
/* 022296F4 */ _t91 = cpu->r[28] + 0x00000164u;
|
|
/* 022296F4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t91);
|
|
/* 022296F8 */ cpu->r[0] = 0x101E0000u;
|
|
/* 022296FC */ cpu->r[0] = cpu->r[0] + 0xFFFF9484u;
|
|
/* 02229700 */ cpu->r[11] = rbrew_rlwinm(cpu->r[12], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02229704 */ _t92 = cpu->r[11] + cpu->r[0];
|
|
/* 02229704 */ cpu->r[27] = rbrew_read32(cpu->mem, _t92);
|
|
/* 02229708 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0222970C */ cpu->r[25] = 0x00000000u;
|
|
/* 02229710 */ _t93 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02229710 */ _t94 = _t93 & 0x00000001u;
|
|
/* 02229710 */ if (_t94) goto L_02229714; else goto L_022297DC;
|
|
L_02229714: ; // 0x2229714
|
|
/* 02229714 */ cpu->r[31] = cpu->r[1] + 0x00000018u;
|
|
/* 02229718 */ cpu->r[30] = 0xFFFFFFFFu;
|
|
L_0222971C: ; // 0x222971c
|
|
/* 0222971C */ cpu->r[10] = cpu->r[1] + 0x0000001Cu;
|
|
/* 02229720 */ cpu->r[9] = 0x00000000u;
|
|
/* 02229724 */ cpu->r[8] = cpu->r[1] + 0x00000018u;
|
|
/* 02229728 */ cpu->r[7] = cpu->r[1] + 0x0000006Cu;
|
|
/* 0222972C */ cpu->r[6] = cpu->r[1] + 0x00000060u;
|
|
/* 02229730 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 02229734 */ cpu->r[4] = cpu->r[25];
|
|
/* 02229738 */ cpu->r[3] = cpu->r[28];
|
|
/* 0222973C */ Gambit_fn_02040F70(cpu);
|
|
/* 02229740 */ _t95 = cpu->r[1] + 0x00000018u;
|
|
/* 02229740 */ cpu->r[11] = rbrew_read32(cpu->mem, _t95);
|
|
/* 02229744 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000001u);
|
|
/* 02229748 */ _t96 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02229748 */ _t97 = _t96 & 0x00000001u;
|
|
/* 02229748 */ if (_t97) goto L_0222974C; else goto L_022297D0;
|
|
L_0222974C: ; // 0x222974c
|
|
/* 0222974C */ _t98 = cpu->r[29] + 0x0000002Cu;
|
|
/* 0222974C */ cpu->r[12] = rbrew_read32(cpu->mem, _t98);
|
|
/* 02229750 */ _t99 = cpu->r[31] + 0x00000000u;
|
|
/* 02229750 */ cpu->r[0] = rbrew_read32(cpu->mem, _t99);
|
|
/* 02229754 */ _t100 = cpu->r[29] + 0x000000D8u;
|
|
/* 02229754 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t100);
|
|
/* 02229758 */ _t101 = cpu->r[29] + 0x00000110u;
|
|
/* 02229758 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t101);
|
|
/* 0222975C */ /* nop */
|
|
/* 02229760 */ cpu->f[9] = cpu->f[11] - cpu->f[12];
|
|
/* 02229764 */ _t102 = cpu->r[1] + 0x00000024u;
|
|
/* 02229764 */ rbrew_write32(cpu->mem, _t102, cpu->r[0]);
|
|
/* 02229768 */ /* nop */
|
|
/* 0222976C */ _t103 = cpu->r[1] + 0x00000014u;
|
|
/* 0222976C */ cpu->r[7] = rbrew_read8(cpu->mem, _t103);
|
|
/* 02229770 */ /* nop */
|
|
/* 02229774 */ _t104 = cpu->r[1] + 0x00000030u;
|
|
/* 02229774 */ rbrew_write_f32(cpu->mem, _t104, cpu->f[9]);
|
|
/* 02229778 */ _t105 = cpu->r[1] + 0x00000030u;
|
|
/* 02229778 */ cpu->r[11] = rbrew_read32(cpu->mem, _t105);
|
|
/* 0222977C */ /* nop */
|
|
/* 02229780 */ _t106 = cpu->r[1] + 0x00000028u;
|
|
/* 02229780 */ cpu->r[9] = rbrew_read32(cpu->mem, _t106);
|
|
/* 02229784 */ _t107 = cpu->r[29] + 0x00000058u;
|
|
/* 02229784 */ cpu->r[5] = rbrew_read32(cpu->mem, _t107);
|
|
/* 02229788 */ cpu->r[8] = cpu->r[1] + 0x00000078u;
|
|
/* 0222978C */ _t108 = cpu->r[29] + 0x00000054u;
|
|
/* 0222978C */ cpu->r[4] = rbrew_read32(cpu->mem, _t108);
|
|
/* 02229790 */ _t109 = cpu->r[1] + 0x00000008u;
|
|
/* 02229790 */ rbrew_write32(cpu->mem, _t109, cpu->r[8]);
|
|
/* 02229794 */ cpu->r[8] = cpu->r[1] + 0x00000060u;
|
|
/* 02229798 */ _t110 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02229798 */ cpu->r[10] = rbrew_read32(cpu->mem, _t110);
|
|
/* 0222979C */ _t111 = cpu->r[1] + 0x00000078u;
|
|
/* 0222979C */ rbrew_write32(cpu->mem, _t111, cpu->r[9]);
|
|
/* 022297A0 */ _t112 = cpu->r[1] + 0x0000007Cu;
|
|
/* 022297A0 */ rbrew_write32(cpu->mem, _t112, cpu->r[10]);
|
|
/* 022297A4 */ cpu->r[10] = cpu->r[1] + 0x00000024u;
|
|
/* 022297A8 */ _t113 = cpu->r[1] + 0x00000080u;
|
|
/* 022297A8 */ rbrew_write32(cpu->mem, _t113, cpu->r[11]);
|
|
/* 022297AC */ _t114 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022297AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t114);
|
|
/* 022297B0 */ cpu->f[1] = cpu->f[29];
|
|
/* 022297B4 */ _t115 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022297B4 */ rbrew_write32(cpu->mem, _t115, cpu->r[30]);
|
|
/* 022297B8 */ cpu->r[6] = cpu->r[1] + 0x00000020u;
|
|
/* 022297BC */ cpu->r[3] = cpu->r[29];
|
|
/* 022297C0 */ _t116 = cpu->r[1] + 0x00000010u;
|
|
/* 022297C0 */ rbrew_write32(cpu->mem, _t116, cpu->r[0]);
|
|
/* 022297C4 */ cpu->r[9] = cpu->r[1] + 0x0000006Cu;
|
|
/* 022297C8 */ _t117 = cpu->r[1] + 0x00000020u;
|
|
/* 022297C8 */ rbrew_write32(cpu->mem, _t117, cpu->r[12]);
|
|
/* 022297CC */ Gambit_fn_02228C64(cpu);
|
|
L_022297D0: ; // 0x22297d0
|
|
/* 022297D0 */ cpu->r[27] = cpu->r[27] + 0xFFFFFFFFu;
|
|
/* 022297D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 022297D4 */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 022297D8 */ _t118 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022297D8 */ _t119 = _t118 & 0x00000001u;
|
|
/* 022297D8 */ if (_t119) goto L_022297DC; else goto L_0222971C;
|
|
L_022297DC: ; // 0x22297dc
|
|
/* 022297DC */ _t120 = cpu->r[28] + 0x000000D8u;
|
|
/* 022297DC */ cpu->r[0] = rbrew_read16(cpu->mem, _t120);
|
|
/* 022297E0 */ _t121 = cpu->r[29] + 0x00000030u;
|
|
/* 022297E0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t121);
|
|
/* 022297E4 */ cpu->r[5] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Au, 0x0000001Fu);
|
|
/* 022297E8 */ cpu->r[4] = 0x00000002u;
|
|
/* 022297EC */ Gambit_fn_027B8224(cpu);
|
|
/* 022297F0 */ _t122 = cpu->r[28] + 0x00000040u;
|
|
/* 022297F0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t122);
|
|
/* 022297F4 */ _t123 = cpu->r[29] + 0x00000004u;
|
|
/* 022297F4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t123);
|
|
/* 022297F8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[31], cpu->f[10]);
|
|
/* 022297FC */ cpu->r[4] = cpu->r[4] + 0x00000360u;
|
|
/* 02229800 */ _t124 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02229800 */ _t125 = _t124 & 0x00000001u;
|
|
/* 02229800 */ if (_t125) goto L_02229828; else goto L_02229804;
|
|
L_02229804: ; // 0x2229804
|
|
/* 02229804 */ _t126 = cpu->r[28] + 0x00000000u;
|
|
/* 02229804 */ cpu->r[0] = rbrew_read32(cpu->mem, _t126);
|
|
/* 02229808 */ _t127 = cpu->r[28] + 0x00000038u;
|
|
/* 02229808 */ rbrew_write_f32(cpu->mem, _t127, cpu->f[31]);
|
|
/* 0222980C */ cpu->r[8] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Cu, 0x0000001Cu);
|
|
/* 0222980C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02229810 */ _t128 = cpu->r[28] + 0x0000003Cu;
|
|
/* 02229810 */ rbrew_write_f32(cpu->mem, _t128, cpu->f[31]);
|
|
/* 02229814 */ _t129 = cpu->r[28] + 0x00000034u;
|
|
/* 02229814 */ rbrew_write_f32(cpu->mem, _t129, cpu->f[31]);
|
|
/* 02229818 */ cpu->r[12] = cpu->r[28] + 0x00000034u;
|
|
/* 0222981C */ _t130 = cpu->r[28] + 0x00000040u;
|
|
/* 0222981C */ rbrew_write_f32(cpu->mem, _t130, cpu->f[31]);
|
|
/* 02229820 */ _t131 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02229820 */ _t132 = _t131 & 0x00000001u;
|
|
/* 02229820 */ if (_t132) goto L_02229824; else goto L_022298AC;
|
|
L_02229824: ; // 0x2229824
|
|
/* 02229824 */ goto L_022298D0;
|
|
L_02229828: ; // 0x2229828
|
|
/* 02229828 */ _t133 = cpu->r[28] + 0x00000000u;
|
|
/* 02229828 */ cpu->r[0] = rbrew_read32(cpu->mem, _t133);
|
|
/* 0222982C */ cpu->r[5] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Bu, 0x0000001Cu);
|
|
/* 0222982C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 02229830 */ _t134 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02229830 */ _t135 = _t134 & 0x00000001u;
|
|
/* 02229830 */ if (_t135) goto L_02229834; else goto L_02229890;
|
|
L_02229834: ; // 0x2229834
|
|
/* 02229834 */ /* nop */
|
|
/* 02229838 */ _t136 = cpu->r[1] + 0x000000BCu;
|
|
/* 02229838 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t136);
|
|
/* 0222983C */ /* nop */
|
|
/* 02229840 */ /* nop */
|
|
/* 02229844 */ _t137 = cpu->r[28] + 0x0000003Cu;
|
|
/* 02229844 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t137);
|
|
/* 02229848 */ _t138 = cpu->r[1] + 0x00000114u;
|
|
/* 02229848 */ cpu->r[7] = rbrew_read32(cpu->mem, _t138);
|
|
/* 0222984C */ cpu->f[13] = cpu->f[0] + cpu->f[7];
|
|
/* 02229850 */ _t139 = cpu->r[1] + 0x00000118u;
|
|
/* 02229850 */ cpu->r[8] = rbrew_read32(cpu->mem, _t139);
|
|
/* 02229854 */ _t140 = cpu->r[1] + 0x00000138u;
|
|
/* 02229854 */ rbrew_write32(cpu->mem, _t140, cpu->r[7]);
|
|
/* 02229858 */ _t141 = cpu->r[1] + 0x0000011Cu;
|
|
/* 02229858 */ rbrew_write_f32(cpu->mem, _t141, cpu->f[13]);
|
|
/* 0222985C */ _t142 = cpu->r[1] + 0x0000011Cu;
|
|
/* 0222985C */ cpu->r[10] = rbrew_read32(cpu->mem, _t142);
|
|
/* 02229860 */ _t143 = cpu->r[1] + 0x0000013Cu;
|
|
/* 02229860 */ rbrew_write32(cpu->mem, _t143, cpu->r[8]);
|
|
/* 02229864 */ _t144 = cpu->r[1] + 0x00000140u;
|
|
/* 02229864 */ rbrew_write32(cpu->mem, _t144, cpu->r[10]);
|
|
/* 02229868 */ _t145 = cpu->r[4] + 0x00000004u;
|
|
/* 02229868 */ cpu->r[12] = rbrew_read32(cpu->mem, _t145);
|
|
/* 0222986C */ cpu->ctr = cpu->r[12];
|
|
/* 02229870 */ cpu->r[4] = cpu->r[29] + 0x00000108u;
|
|
/* 02229874 */ cpu->r[6] = cpu->r[1] + 0x00000138u;
|
|
/* 02229878 */ cpu->r[3] = cpu->r[29];
|
|
/* 0222987C */ cpu->r[5] = cpu->r[28];
|
|
/* 02229880 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02229884 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02229888 */ _t146 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02229888 */ _t147 = _t146 & 0x00000001u;
|
|
/* 02229888 */ if (_t147) goto L_02229A7C; else goto L_0222988C;
|
|
L_0222988C: ; // 0x222988c
|
|
/* 0222988C */ goto L_0222A6EC;
|
|
L_02229890: ; // 0x2229890
|
|
/* 02229890 */ _t148 = cpu->r[28] + 0x00000000u;
|
|
/* 02229890 */ cpu->r[0] = rbrew_read32(cpu->mem, _t148);
|
|
/* 02229894 */ _t149 = cpu->r[28] + 0x00000038u;
|
|
/* 02229894 */ rbrew_write_f32(cpu->mem, _t149, cpu->f[31]);
|
|
/* 02229898 */ cpu->r[8] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Cu, 0x0000001Cu);
|
|
/* 02229898 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0222989C */ _t150 = cpu->r[28] + 0x00000034u;
|
|
/* 0222989C */ rbrew_write_f32(cpu->mem, _t150, cpu->f[31]);
|
|
/* 022298A0 */ cpu->r[12] = cpu->r[28] + 0x00000034u;
|
|
/* 022298A4 */ _t151 = cpu->r[28] + 0x0000003Cu;
|
|
/* 022298A4 */ rbrew_write_f32(cpu->mem, _t151, cpu->f[31]);
|
|
/* 022298A8 */ _t152 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022298A8 */ _t153 = _t152 & 0x00000001u;
|
|
/* 022298A8 */ if (_t153) goto L_022298D0; else goto L_022298AC;
|
|
L_022298AC: ; // 0x22298ac
|
|
/* 022298AC */ /* nop */
|
|
/* 022298B0 */ /* nop */
|
|
/* 022298B4 */ /* nop */
|
|
/* 022298B8 */ /* nop */
|
|
/* 022298BC */ _t154 = cpu->r[28] + 0x0000000Cu;
|
|
/* 022298BC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t154);
|
|
/* 022298C0 */ _t155 = cpu->r[28] + 0x00000018u;
|
|
/* 022298C0 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t155);
|
|
/* 022298C4 */ cpu->f[10] = cpu->f[12] + cpu->f[6];
|
|
/* 022298C8 */ _t156 = cpu->r[12] + 0x00000008u;
|
|
/* 022298C8 */ rbrew_write_f32(cpu->mem, _t156, cpu->f[10]);
|
|
/* 022298CC */ _t157 = cpu->r[28] + 0x00000000u;
|
|
/* 022298CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t157);
|
|
L_022298D0: ; // 0x22298d0
|
|
/* 022298D0 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Bu, 0x0000001Bu);
|
|
/* 022298D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 022298D4 */ _t158 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022298D4 */ _t159 = _t158 & 0x00000001u;
|
|
/* 022298D4 */ if (_t159) goto L_02229A1C; else goto L_022298D8;
|
|
L_022298D8: ; // 0x22298d8
|
|
/* 022298D8 */ _t160 = cpu->r[12] + 0x00000000u;
|
|
/* 022298D8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t160);
|
|
/* 022298DC */ _t161 = cpu->r[28] + 0x00000040u;
|
|
/* 022298DC */ cpu->f[4] = rbrew_read_f32(cpu->mem, _t161);
|
|
/* 022298E0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[31]);
|
|
/* 022298E4 */ _t162 = cpu->r[28] + 0x0000001Cu;
|
|
/* 022298E4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t162);
|
|
/* 022298E8 */ _t163 = cpu->r[28] + 0x00000028u;
|
|
/* 022298E8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t163);
|
|
/* 022298EC */ _t164 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022298EC */ _t165 = _t164 & 0x00000001u;
|
|
/* 022298EC */ if (_t165) goto L_022298F0; else goto L_02229914;
|
|
L_022298F0: ; // 0x22298f0
|
|
/* 022298F0 */ cpu->f[11] = cpu->f[13] - cpu->f[10];
|
|
/* 022298F4 */ /* nop */
|
|
/* 022298F8 */ _t166 = cpu->r[12] + 0x00000004u;
|
|
/* 022298F8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t166);
|
|
/* 022298FC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[31]);
|
|
/* 02229900 */ _t167 = cpu->r[28] + 0x00000020u;
|
|
/* 02229900 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t167);
|
|
/* 02229904 */ cpu->f[5] = fma(cpu->f[12], cpu->f[4], cpu->f[13]);
|
|
/* 02229908 */ _t168 = cpu->r[28] + 0x0000002Cu;
|
|
/* 02229908 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t168);
|
|
/* 0222990C */ _t169 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0222990C */ _t170 = _t169 & 0x00000001u;
|
|
/* 0222990C */ if (_t170) goto L_02229910; else goto L_0222997C;
|
|
L_02229910: ; // 0x2229910
|
|
/* 02229910 */ goto L_02229958;
|
|
L_02229914: ; // 0x2229914
|
|
/* 02229914 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[31]);
|
|
/* 02229918 */ _t171 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02229918 */ _t172 = _t171 & 0x00000001u;
|
|
/* 02229918 */ if (_t172) goto L_0222991C; else goto L_02229940;
|
|
L_0222991C: ; // 0x222991c
|
|
/* 0222991C */ cpu->f[6] = cpu->f[12] - cpu->f[10];
|
|
/* 02229920 */ _t173 = cpu->r[12] + 0x00000004u;
|
|
/* 02229920 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t173);
|
|
/* 02229924 */ /* nop */
|
|
/* 02229928 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[31]);
|
|
/* 0222992C */ _t174 = cpu->r[28] + 0x00000020u;
|
|
/* 0222992C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t174);
|
|
/* 02229930 */ cpu->f[5] = fma(cpu->f[13], cpu->f[4], cpu->f[10]);
|
|
/* 02229934 */ _t175 = cpu->r[28] + 0x0000002Cu;
|
|
/* 02229934 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t175);
|
|
/* 02229938 */ _t176 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02229938 */ _t177 = _t176 & 0x00000001u;
|
|
/* 02229938 */ if (_t177) goto L_0222993C; else goto L_0222997C;
|
|
L_0222993C: ; // 0x222993c
|
|
/* 0222993C */ goto L_02229958;
|
|
L_02229940: ; // 0x2229940
|
|
/* 02229940 */ _t178 = cpu->r[12] + 0x00000004u;
|
|
/* 02229940 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t178);
|
|
/* 02229944 */ _t179 = cpu->r[28] + 0x00000020u;
|
|
/* 02229944 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t179);
|
|
/* 02229948 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[31]);
|
|
/* 0222994C */ _t180 = cpu->r[28] + 0x0000002Cu;
|
|
/* 0222994C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t180);
|
|
/* 02229950 */ cpu->f[5] = cpu->f[12] + cpu->f[13];
|
|
/* 02229954 */ _t181 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02229954 */ _t182 = _t181 & 0x00000001u;
|
|
/* 02229954 */ if (_t182) goto L_02229958; else goto L_0222997C;
|
|
L_02229958: ; // 0x2229958
|
|
/* 02229958 */ cpu->f[6] = cpu->f[10] - cpu->f[11];
|
|
/* 0222995C */ _t183 = cpu->r[12] + 0x00000008u;
|
|
/* 0222995C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t183);
|
|
/* 02229960 */ /* nop */
|
|
/* 02229964 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[31]);
|
|
/* 02229968 */ _t184 = cpu->r[28] + 0x00000024u;
|
|
/* 02229968 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t184);
|
|
/* 0222996C */ cpu->f[9] = fma(cpu->f[9], cpu->f[4], cpu->f[8]);
|
|
/* 02229970 */ _t185 = cpu->r[28] + 0x00000030u;
|
|
/* 02229970 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t185);
|
|
/* 02229974 */ _t186 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02229974 */ _t187 = _t186 & 0x00000001u;
|
|
/* 02229974 */ if (_t187) goto L_02229978; else goto L_022299E0;
|
|
L_02229978: ; // 0x2229978
|
|
/* 02229978 */ goto L_022299C0;
|
|
L_0222997C: ; // 0x222997c
|
|
/* 0222997C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[31]);
|
|
/* 02229980 */ _t188 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02229980 */ _t189 = _t188 & 0x00000001u;
|
|
/* 02229980 */ if (_t189) goto L_02229984; else goto L_022299A8;
|
|
L_02229984: ; // 0x2229984
|
|
/* 02229984 */ cpu->f[13] = cpu->f[9] - cpu->f[11];
|
|
/* 02229988 */ _t190 = cpu->r[12] + 0x00000008u;
|
|
/* 02229988 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t190);
|
|
/* 0222998C */ /* nop */
|
|
/* 02229990 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[31]);
|
|
/* 02229994 */ _t191 = cpu->r[28] + 0x00000030u;
|
|
/* 02229994 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t191);
|
|
/* 02229998 */ cpu->f[9] = fma(cpu->f[10], cpu->f[4], cpu->f[6]);
|
|
/* 0222999C */ _t192 = cpu->r[28] + 0x00000024u;
|
|
/* 0222999C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t192);
|
|
/* 022299A0 */ _t193 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022299A0 */ _t194 = _t193 & 0x00000001u;
|
|
/* 022299A0 */ if (_t194) goto L_022299A4; else goto L_022299E0;
|
|
L_022299A4: ; // 0x22299a4
|
|
/* 022299A4 */ goto L_022299C0;
|
|
L_022299A8: ; // 0x22299a8
|
|
/* 022299A8 */ _t195 = cpu->r[12] + 0x00000008u;
|
|
/* 022299A8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t195);
|
|
/* 022299AC */ _t196 = cpu->r[28] + 0x00000024u;
|
|
/* 022299AC */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t196);
|
|
/* 022299B0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[31]);
|
|
/* 022299B4 */ _t197 = cpu->r[28] + 0x00000030u;
|
|
/* 022299B4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t197);
|
|
/* 022299B8 */ cpu->f[9] = cpu->f[9] + cpu->f[10];
|
|
/* 022299BC */ _t198 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022299BC */ _t199 = _t198 & 0x00000001u;
|
|
/* 022299BC */ if (_t199) goto L_022299C0; else goto L_022299E0;
|
|
L_022299C0: ; // 0x22299c0
|
|
/* 022299C0 */ cpu->f[11] = cpu->f[8] - cpu->f[0];
|
|
/* 022299C4 */ /* nop */
|
|
/* 022299C8 */ _t200 = cpu->r[12] + 0x00000004u;
|
|
/* 022299C8 */ rbrew_write_f32(cpu->mem, _t200, cpu->f[9]);
|
|
/* 022299CC */ cpu->f[10] = fma(cpu->f[7], cpu->f[4], cpu->f[12]);
|
|
/* 022299D0 */ _t201 = cpu->r[12] + 0x00000000u;
|
|
/* 022299D0 */ rbrew_write_f32(cpu->mem, _t201, cpu->f[5]);
|
|
/* 022299D4 */ _t202 = cpu->r[12] + 0x00000008u;
|
|
/* 022299D4 */ rbrew_write_f32(cpu->mem, _t202, cpu->f[10]);
|
|
/* 022299D8 */ _t203 = cpu->r[28] + 0x00000000u;
|
|
/* 022299D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t203);
|
|
/* 022299DC */ goto L_02229A1C;
|
|
L_022299E0: ; // 0x22299e0
|
|
/* 022299E0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[31]);
|
|
/* 022299E4 */ _t204 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022299E4 */ _t205 = _t204 & 0x00000001u;
|
|
/* 022299E4 */ if (_t205) goto L_022299E8; else goto L_02229A08;
|
|
L_022299E8: ; // 0x22299e8
|
|
/* 022299E8 */ cpu->f[13] = cpu->f[7] - cpu->f[0];
|
|
/* 022299EC */ /* nop */
|
|
/* 022299F0 */ _t206 = cpu->r[12] + 0x00000004u;
|
|
/* 022299F0 */ rbrew_write_f32(cpu->mem, _t206, cpu->f[9]);
|
|
/* 022299F4 */ cpu->f[10] = fma(cpu->f[8], cpu->f[4], cpu->f[6]);
|
|
/* 022299F8 */ _t207 = cpu->r[12] + 0x00000000u;
|
|
/* 022299F8 */ rbrew_write_f32(cpu->mem, _t207, cpu->f[5]);
|
|
/* 022299FC */ _t208 = cpu->r[12] + 0x00000008u;
|
|
/* 022299FC */ rbrew_write_f32(cpu->mem, _t208, cpu->f[10]);
|
|
/* 02229A00 */ _t209 = cpu->r[28] + 0x00000000u;
|
|
/* 02229A00 */ cpu->r[0] = rbrew_read32(cpu->mem, _t209);
|
|
/* 02229A04 */ goto L_02229A1C;
|
|
L_02229A08: ; // 0x2229a08
|
|
/* 02229A08 */ cpu->f[10] = cpu->f[7] + cpu->f[8];
|
|
/* 02229A0C */ _t210 = cpu->r[12] + 0x00000004u;
|
|
/* 02229A0C */ rbrew_write_f32(cpu->mem, _t210, cpu->f[9]);
|
|
/* 02229A10 */ _t211 = cpu->r[12] + 0x00000000u;
|
|
/* 02229A10 */ rbrew_write_f32(cpu->mem, _t211, cpu->f[5]);
|
|
/* 02229A14 */ _t212 = cpu->r[12] + 0x00000008u;
|
|
/* 02229A14 */ rbrew_write_f32(cpu->mem, _t212, cpu->f[10]);
|
|
/* 02229A18 */ _t213 = cpu->r[28] + 0x00000000u;
|
|
/* 02229A18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t213);
|
|
L_02229A1C: ; // 0x2229a1c
|
|
/* 02229A1C */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Du, 0x0000001Au);
|
|
/* 02229A20 */ _t214 = cpu->r[28] + 0x00000000u;
|
|
/* 02229A20 */ rbrew_write32(cpu->mem, _t214, cpu->r[0]);
|
|
/* 02229A24 */ /* nop */
|
|
/* 02229A28 */ /* nop */
|
|
/* 02229A2C */ /* nop */
|
|
/* 02229A30 */ _t215 = cpu->r[12] + 0x00000008u;
|
|
/* 02229A30 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t215);
|
|
/* 02229A34 */ _t216 = cpu->r[1] + 0x000000BCu;
|
|
/* 02229A34 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t216);
|
|
/* 02229A38 */ _t217 = cpu->r[1] + 0x00000114u;
|
|
/* 02229A38 */ cpu->r[7] = rbrew_read32(cpu->mem, _t217);
|
|
/* 02229A3C */ cpu->f[13] = cpu->f[0] + cpu->f[7];
|
|
/* 02229A40 */ _t218 = cpu->r[1] + 0x00000118u;
|
|
/* 02229A40 */ cpu->r[8] = rbrew_read32(cpu->mem, _t218);
|
|
/* 02229A44 */ _t219 = cpu->r[1] + 0x00000138u;
|
|
/* 02229A44 */ rbrew_write32(cpu->mem, _t219, cpu->r[7]);
|
|
/* 02229A48 */ _t220 = cpu->r[1] + 0x0000011Cu;
|
|
/* 02229A48 */ rbrew_write_f32(cpu->mem, _t220, cpu->f[13]);
|
|
/* 02229A4C */ _t221 = cpu->r[1] + 0x0000011Cu;
|
|
/* 02229A4C */ cpu->r[10] = rbrew_read32(cpu->mem, _t221);
|
|
/* 02229A50 */ _t222 = cpu->r[1] + 0x0000013Cu;
|
|
/* 02229A50 */ rbrew_write32(cpu->mem, _t222, cpu->r[8]);
|
|
/* 02229A54 */ _t223 = cpu->r[1] + 0x00000140u;
|
|
/* 02229A54 */ rbrew_write32(cpu->mem, _t223, cpu->r[10]);
|
|
/* 02229A58 */ _t224 = cpu->r[4] + 0x00000004u;
|
|
/* 02229A58 */ cpu->r[12] = rbrew_read32(cpu->mem, _t224);
|
|
/* 02229A5C */ cpu->ctr = cpu->r[12];
|
|
/* 02229A60 */ cpu->r[4] = cpu->r[29] + 0x00000108u;
|
|
/* 02229A64 */ cpu->r[5] = cpu->r[28];
|
|
/* 02229A68 */ cpu->r[3] = cpu->r[29];
|
|
/* 02229A6C */ cpu->r[6] = cpu->r[1] + 0x00000138u;
|
|
/* 02229A70 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02229A74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02229A78 */ _t225 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02229A78 */ _t226 = _t225 & 0x00000001u;
|
|
/* 02229A78 */ if (_t226) goto L_02229A7C; else goto L_0222A6EC;
|
|
L_02229A7C: ; // 0x2229a7c
|
|
/* 02229A7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 02229A80 */ _t227 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02229A80 */ _t228 = _t227 & 0x00000001u;
|
|
/* 02229A80 */ if (_t228) goto L_02229A84; else goto L_0222A6EC;
|
|
L_02229A84: ; // 0x2229a84
|
|
/* 02229A84 */ _t229 = cpu->r[1] + 0x000000B4u;
|
|
/* 02229A84 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t229);
|
|
/* 02229A88 */ _t230 = cpu->r[1] + 0x000000B8u;
|
|
/* 02229A88 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t230);
|
|
/* 02229A8C */ _t231 = cpu->r[29] + 0x00000094u;
|
|
/* 02229A8C */ rbrew_write_f32(cpu->mem, _t231, cpu->f[13]);
|
|
/* 02229A90 */ _t232 = cpu->r[1] + 0x000000BCu;
|
|
/* 02229A90 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t232);
|
|
/* 02229A94 */ _t233 = cpu->r[29] + 0x00000098u;
|
|
/* 02229A94 */ rbrew_write_f32(cpu->mem, _t233, cpu->f[0]);
|
|
/* 02229A98 */ _t234 = cpu->r[29] + 0x0000009Cu;
|
|
/* 02229A98 */ rbrew_write_f32(cpu->mem, _t234, cpu->f[6]);
|
|
/* 02229A9C */ _t235 = cpu->r[28] + 0x00000040u;
|
|
/* 02229A9C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t235);
|
|
/* 02229AA0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[31], cpu->f[7]);
|
|
/* 02229AA4 */ _t236 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02229AA4 */ _t237 = _t236 & 0x00000001u;
|
|
/* 02229AA4 */ if (_t237) goto L_02229ACC; else goto L_02229AA8;
|
|
L_02229AA8: ; // 0x2229aa8
|
|
/* 02229AA8 */ _t238 = cpu->r[28] + 0x00000000u;
|
|
/* 02229AA8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t238);
|
|
/* 02229AAC */ _t239 = cpu->r[28] + 0x00000038u;
|
|
/* 02229AAC */ rbrew_write_f32(cpu->mem, _t239, cpu->f[31]);
|
|
/* 02229AB0 */ cpu->r[8] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Cu, 0x0000001Cu);
|
|
/* 02229AB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02229AB4 */ _t240 = cpu->r[28] + 0x0000003Cu;
|
|
/* 02229AB4 */ rbrew_write_f32(cpu->mem, _t240, cpu->f[31]);
|
|
/* 02229AB8 */ _t241 = cpu->r[28] + 0x00000034u;
|
|
/* 02229AB8 */ rbrew_write_f32(cpu->mem, _t241, cpu->f[31]);
|
|
/* 02229ABC */ cpu->r[12] = cpu->r[28] + 0x00000034u;
|
|
/* 02229AC0 */ _t242 = cpu->r[28] + 0x00000040u;
|
|
/* 02229AC0 */ rbrew_write_f32(cpu->mem, _t242, cpu->f[31]);
|
|
/* 02229AC4 */ _t243 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02229AC4 */ _t244 = _t243 & 0x00000001u;
|
|
/* 02229AC4 */ if (_t244) goto L_02229AC8; else goto L_02229B1C;
|
|
L_02229AC8: ; // 0x2229ac8
|
|
/* 02229AC8 */ goto L_02229B40;
|
|
L_02229ACC: ; // 0x2229acc
|
|
/* 02229ACC */ _t245 = cpu->r[28] + 0x00000000u;
|
|
/* 02229ACC */ cpu->r[0] = rbrew_read32(cpu->mem, _t245);
|
|
/* 02229AD0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Bu, 0x0000001Cu);
|
|
/* 02229AD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02229AD4 */ _t246 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02229AD4 */ _t247 = _t246 & 0x00000001u;
|
|
/* 02229AD4 */ if (_t247) goto L_02229AD8; else goto L_02229B00;
|
|
L_02229AD8: ; // 0x2229ad8
|
|
/* 02229AD8 */ /* nop */
|
|
/* 02229ADC */ /* nop */
|
|
/* 02229AE0 */ _t248 = cpu->r[29] + 0x0000009Cu;
|
|
/* 02229AE0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t248);
|
|
/* 02229AE4 */ /* nop */
|
|
/* 02229AE8 */ /* nop */
|
|
/* 02229AEC */ _t249 = cpu->r[28] + 0x0000003Cu;
|
|
/* 02229AEC */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t249);
|
|
/* 02229AF0 */ cpu->f[0] = cpu->f[0] + cpu->f[6];
|
|
/* 02229AF4 */ cpu->r[3] = 0x00000001u;
|
|
/* 02229AF8 */ _t250 = cpu->r[29] + 0x0000009Cu;
|
|
/* 02229AF8 */ rbrew_write_f32(cpu->mem, _t250, cpu->f[0]);
|
|
/* 02229AFC */ goto L_0222A6F0;
|
|
L_02229B00: ; // 0x2229b00
|
|
/* 02229B00 */ _t251 = cpu->r[28] + 0x00000000u;
|
|
/* 02229B00 */ cpu->r[0] = rbrew_read32(cpu->mem, _t251);
|
|
/* 02229B04 */ _t252 = cpu->r[28] + 0x00000038u;
|
|
/* 02229B04 */ rbrew_write_f32(cpu->mem, _t252, cpu->f[31]);
|
|
/* 02229B08 */ cpu->r[8] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Cu, 0x0000001Cu);
|
|
/* 02229B08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02229B0C */ _t253 = cpu->r[28] + 0x00000034u;
|
|
/* 02229B0C */ rbrew_write_f32(cpu->mem, _t253, cpu->f[31]);
|
|
/* 02229B10 */ cpu->r[12] = cpu->r[28] + 0x00000034u;
|
|
/* 02229B14 */ _t254 = cpu->r[28] + 0x0000003Cu;
|
|
/* 02229B14 */ rbrew_write_f32(cpu->mem, _t254, cpu->f[31]);
|
|
/* 02229B18 */ _t255 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02229B18 */ _t256 = _t255 & 0x00000001u;
|
|
/* 02229B18 */ if (_t256) goto L_02229B40; else goto L_02229B1C;
|
|
L_02229B1C: ; // 0x2229b1c
|
|
/* 02229B1C */ /* nop */
|
|
/* 02229B20 */ /* nop */
|
|
/* 02229B24 */ /* nop */
|
|
/* 02229B28 */ /* nop */
|
|
/* 02229B2C */ _t257 = cpu->r[28] + 0x0000000Cu;
|
|
/* 02229B2C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t257);
|
|
/* 02229B30 */ _t258 = cpu->r[28] + 0x00000018u;
|
|
/* 02229B30 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t258);
|
|
/* 02229B34 */ cpu->f[8] = cpu->f[9] + cpu->f[10];
|
|
/* 02229B38 */ _t259 = cpu->r[12] + 0x00000008u;
|
|
/* 02229B38 */ rbrew_write_f32(cpu->mem, _t259, cpu->f[8]);
|
|
/* 02229B3C */ _t260 = cpu->r[28] + 0x00000000u;
|
|
/* 02229B3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t260);
|
|
L_02229B40: ; // 0x2229b40
|
|
/* 02229B40 */ cpu->r[6] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Bu, 0x0000001Bu);
|
|
/* 02229B40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 02229B44 */ _t261 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02229B44 */ _t262 = _t261 & 0x00000001u;
|
|
/* 02229B44 */ if (_t262) goto L_02229C8C; else goto L_02229B48;
|
|
L_02229B48: ; // 0x2229b48
|
|
/* 02229B48 */ _t263 = cpu->r[12] + 0x00000000u;
|
|
/* 02229B48 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t263);
|
|
/* 02229B4C */ _t264 = cpu->r[28] + 0x00000040u;
|
|
/* 02229B4C */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t264);
|
|
/* 02229B50 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[31]);
|
|
/* 02229B54 */ _t265 = cpu->r[28] + 0x0000001Cu;
|
|
/* 02229B54 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t265);
|
|
/* 02229B58 */ _t266 = cpu->r[28] + 0x00000028u;
|
|
/* 02229B58 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t266);
|
|
/* 02229B5C */ _t267 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02229B5C */ _t268 = _t267 & 0x00000001u;
|
|
/* 02229B5C */ if (_t268) goto L_02229B60; else goto L_02229B84;
|
|
L_02229B60: ; // 0x2229b60
|
|
/* 02229B60 */ cpu->f[11] = cpu->f[9] - cpu->f[10];
|
|
/* 02229B64 */ /* nop */
|
|
/* 02229B68 */ _t269 = cpu->r[12] + 0x00000004u;
|
|
/* 02229B68 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t269);
|
|
/* 02229B6C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[31]);
|
|
/* 02229B70 */ _t270 = cpu->r[28] + 0x0000002Cu;
|
|
/* 02229B70 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t270);
|
|
/* 02229B74 */ cpu->f[6] = fma(cpu->f[7], cpu->f[5], cpu->f[12]);
|
|
/* 02229B78 */ _t271 = cpu->r[28] + 0x00000020u;
|
|
/* 02229B78 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t271);
|
|
/* 02229B7C */ _t272 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02229B7C */ _t273 = _t272 & 0x00000001u;
|
|
/* 02229B7C */ if (_t273) goto L_02229B80; else goto L_02229BEC;
|
|
L_02229B80: ; // 0x2229b80
|
|
/* 02229B80 */ goto L_02229BC8;
|
|
L_02229B84: ; // 0x2229b84
|
|
/* 02229B84 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[31]);
|
|
/* 02229B88 */ _t274 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02229B88 */ _t275 = _t274 & 0x00000001u;
|
|
/* 02229B88 */ if (_t275) goto L_02229B8C; else goto L_02229BB0;
|
|
L_02229B8C: ; // 0x2229b8c
|
|
/* 02229B8C */ cpu->f[8] = cpu->f[7] - cpu->f[10];
|
|
/* 02229B90 */ _t276 = cpu->r[12] + 0x00000004u;
|
|
/* 02229B90 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t276);
|
|
/* 02229B94 */ /* nop */
|
|
/* 02229B98 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[31]);
|
|
/* 02229B9C */ _t277 = cpu->r[28] + 0x0000002Cu;
|
|
/* 02229B9C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t277);
|
|
/* 02229BA0 */ cpu->f[6] = fma(cpu->f[9], cpu->f[5], cpu->f[10]);
|
|
/* 02229BA4 */ _t278 = cpu->r[28] + 0x00000020u;
|
|
/* 02229BA4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t278);
|
|
/* 02229BA8 */ _t279 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02229BA8 */ _t280 = _t279 & 0x00000001u;
|
|
/* 02229BA8 */ if (_t280) goto L_02229BAC; else goto L_02229BEC;
|
|
L_02229BAC: ; // 0x2229bac
|
|
/* 02229BAC */ goto L_02229BC8;
|
|
L_02229BB0: ; // 0x2229bb0
|
|
/* 02229BB0 */ _t281 = cpu->r[12] + 0x00000004u;
|
|
/* 02229BB0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t281);
|
|
/* 02229BB4 */ _t282 = cpu->r[28] + 0x00000020u;
|
|
/* 02229BB4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t282);
|
|
/* 02229BB8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[31]);
|
|
/* 02229BBC */ _t283 = cpu->r[28] + 0x0000002Cu;
|
|
/* 02229BBC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t283);
|
|
/* 02229BC0 */ cpu->f[6] = cpu->f[7] + cpu->f[9];
|
|
/* 02229BC4 */ _t284 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02229BC4 */ _t285 = _t284 & 0x00000001u;
|
|
/* 02229BC4 */ if (_t285) goto L_02229BC8; else goto L_02229BEC;
|
|
L_02229BC8: ; // 0x2229bc8
|
|
/* 02229BC8 */ cpu->f[12] = cpu->f[0] - cpu->f[11];
|
|
/* 02229BCC */ /* nop */
|
|
/* 02229BD0 */ _t286 = cpu->r[12] + 0x00000008u;
|
|
/* 02229BD0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t286);
|
|
/* 02229BD4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[31]);
|
|
/* 02229BD8 */ _t287 = cpu->r[28] + 0x00000030u;
|
|
/* 02229BD8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t287);
|
|
/* 02229BDC */ cpu->f[8] = fma(cpu->f[13], cpu->f[5], cpu->f[8]);
|
|
/* 02229BE0 */ _t288 = cpu->r[28] + 0x00000024u;
|
|
/* 02229BE0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t288);
|
|
/* 02229BE4 */ _t289 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02229BE4 */ _t290 = _t289 & 0x00000001u;
|
|
/* 02229BE4 */ if (_t290) goto L_02229BE8; else goto L_02229C50;
|
|
L_02229BE8: ; // 0x2229be8
|
|
/* 02229BE8 */ goto L_02229C30;
|
|
L_02229BEC: ; // 0x2229bec
|
|
/* 02229BEC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[31]);
|
|
/* 02229BF0 */ _t291 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02229BF0 */ _t292 = _t291 & 0x00000001u;
|
|
/* 02229BF0 */ if (_t292) goto L_02229BF4; else goto L_02229C18;
|
|
L_02229BF4: ; // 0x2229bf4
|
|
/* 02229BF4 */ cpu->f[7] = cpu->f[13] - cpu->f[11];
|
|
/* 02229BF8 */ /* nop */
|
|
/* 02229BFC */ cpu->f[8] = fma(cpu->f[0], cpu->f[5], cpu->f[9]);
|
|
/* 02229C00 */ _t293 = cpu->r[12] + 0x00000008u;
|
|
/* 02229C00 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t293);
|
|
/* 02229C04 */ _t294 = cpu->r[28] + 0x00000024u;
|
|
/* 02229C04 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t294);
|
|
/* 02229C08 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[31]);
|
|
/* 02229C0C */ _t295 = cpu->r[28] + 0x00000030u;
|
|
/* 02229C0C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t295);
|
|
/* 02229C10 */ _t296 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02229C10 */ _t297 = _t296 & 0x00000001u;
|
|
/* 02229C10 */ if (_t297) goto L_02229C14; else goto L_02229C50;
|
|
L_02229C14: ; // 0x2229c14
|
|
/* 02229C14 */ goto L_02229C30;
|
|
L_02229C18: ; // 0x2229c18
|
|
/* 02229C18 */ cpu->f[8] = cpu->f[13] + cpu->f[0];
|
|
/* 02229C1C */ _t298 = cpu->r[12] + 0x00000008u;
|
|
/* 02229C1C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t298);
|
|
/* 02229C20 */ _t299 = cpu->r[28] + 0x00000024u;
|
|
/* 02229C20 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t299);
|
|
/* 02229C24 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[31]);
|
|
/* 02229C28 */ _t300 = cpu->r[28] + 0x00000030u;
|
|
/* 02229C28 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t300);
|
|
/* 02229C2C */ _t301 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02229C2C */ _t302 = _t301 & 0x00000001u;
|
|
/* 02229C2C */ if (_t302) goto L_02229C30; else goto L_02229C50;
|
|
L_02229C30: ; // 0x2229c30
|
|
/* 02229C30 */ cpu->f[7] = cpu->f[10] - cpu->f[0];
|
|
/* 02229C34 */ /* nop */
|
|
/* 02229C38 */ _t303 = cpu->r[12] + 0x00000004u;
|
|
/* 02229C38 */ rbrew_write_f32(cpu->mem, _t303, cpu->f[8]);
|
|
/* 02229C3C */ cpu->f[11] = fma(cpu->f[13], cpu->f[5], cpu->f[9]);
|
|
/* 02229C40 */ _t304 = cpu->r[12] + 0x00000000u;
|
|
/* 02229C40 */ rbrew_write_f32(cpu->mem, _t304, cpu->f[6]);
|
|
/* 02229C44 */ _t305 = cpu->r[12] + 0x00000008u;
|
|
/* 02229C44 */ rbrew_write_f32(cpu->mem, _t305, cpu->f[11]);
|
|
/* 02229C48 */ _t306 = cpu->r[28] + 0x00000000u;
|
|
/* 02229C48 */ cpu->r[0] = rbrew_read32(cpu->mem, _t306);
|
|
/* 02229C4C */ goto L_02229C8C;
|
|
L_02229C50: ; // 0x2229c50
|
|
/* 02229C50 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[31]);
|
|
/* 02229C54 */ _t307 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02229C54 */ _t308 = _t307 & 0x00000001u;
|
|
/* 02229C54 */ if (_t308) goto L_02229C58; else goto L_02229C78;
|
|
L_02229C58: ; // 0x2229c58
|
|
/* 02229C58 */ cpu->f[7] = cpu->f[13] - cpu->f[0];
|
|
/* 02229C5C */ /* nop */
|
|
/* 02229C60 */ _t309 = cpu->r[12] + 0x00000004u;
|
|
/* 02229C60 */ rbrew_write_f32(cpu->mem, _t309, cpu->f[8]);
|
|
/* 02229C64 */ cpu->f[11] = fma(cpu->f[10], cpu->f[5], cpu->f[9]);
|
|
/* 02229C68 */ _t310 = cpu->r[12] + 0x00000000u;
|
|
/* 02229C68 */ rbrew_write_f32(cpu->mem, _t310, cpu->f[6]);
|
|
/* 02229C6C */ _t311 = cpu->r[12] + 0x00000008u;
|
|
/* 02229C6C */ rbrew_write_f32(cpu->mem, _t311, cpu->f[11]);
|
|
/* 02229C70 */ _t312 = cpu->r[28] + 0x00000000u;
|
|
/* 02229C70 */ cpu->r[0] = rbrew_read32(cpu->mem, _t312);
|
|
/* 02229C74 */ goto L_02229C8C;
|
|
L_02229C78: ; // 0x2229c78
|
|
/* 02229C78 */ cpu->f[11] = cpu->f[13] + cpu->f[10];
|
|
/* 02229C7C */ _t313 = cpu->r[12] + 0x00000004u;
|
|
/* 02229C7C */ rbrew_write_f32(cpu->mem, _t313, cpu->f[8]);
|
|
/* 02229C80 */ _t314 = cpu->r[12] + 0x00000000u;
|
|
/* 02229C80 */ rbrew_write_f32(cpu->mem, _t314, cpu->f[6]);
|
|
/* 02229C84 */ _t315 = cpu->r[12] + 0x00000008u;
|
|
/* 02229C84 */ rbrew_write_f32(cpu->mem, _t315, cpu->f[11]);
|
|
/* 02229C88 */ _t316 = cpu->r[28] + 0x00000000u;
|
|
/* 02229C88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t316);
|
|
L_02229C8C: ; // 0x2229c8c
|
|
/* 02229C8C */ cpu->r[6] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Du, 0x0000001Au);
|
|
/* 02229C90 */ _t317 = cpu->r[28] + 0x00000000u;
|
|
/* 02229C90 */ rbrew_write32(cpu->mem, _t317, cpu->r[6]);
|
|
/* 02229C94 */ /* nop */
|
|
/* 02229C98 */ /* nop */
|
|
/* 02229C9C */ /* nop */
|
|
/* 02229CA0 */ /* nop */
|
|
/* 02229CA4 */ _t318 = cpu->r[12] + 0x00000008u;
|
|
/* 02229CA4 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t318);
|
|
/* 02229CA8 */ _t319 = cpu->r[29] + 0x0000009Cu;
|
|
/* 02229CA8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t319);
|
|
/* 02229CAC */ cpu->f[0] = cpu->f[0] + cpu->f[6];
|
|
/* 02229CB0 */ cpu->r[3] = 0x00000001u;
|
|
/* 02229CB4 */ _t320 = cpu->r[29] + 0x0000009Cu;
|
|
/* 02229CB4 */ rbrew_write_f32(cpu->mem, _t320, cpu->f[0]);
|
|
/* 02229CB8 */ goto L_0222A6F0;
|
|
L_02229CBC: ; // 0x2229cbc
|
|
/* 02229CBC */ _t321 = cpu->r[29] + 0x00000114u;
|
|
/* 02229CBC */ cpu->r[7] = rbrew_read32(cpu->mem, _t321);
|
|
/* 02229CC0 */ cpu->r[8] = rbrew_rlwinm(cpu->r[7], 0x00000014u, 0x00000000u, 0x0000000Bu);
|
|
/* 02229CC4 */ /* nop */
|
|
/* 02229CC8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x0000000Bu);
|
|
/* 02229CCC */ _t322 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02229CCC */ _t323 = _t322 & 0x00000001u;
|
|
/* 02229CCC */ if (_t323) goto L_02229CD0; else goto L_0222A6EC;
|
|
L_02229CD0: ; // 0x2229cd0
|
|
/* 02229CD0 */ _t324 = cpu->r[29] + 0x00000004u;
|
|
/* 02229CD0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t324);
|
|
/* 02229CD4 */ _t325 = cpu->r[9] + 0x00000254u;
|
|
/* 02229CD4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t325);
|
|
/* 02229CD8 */ cpu->ctr = cpu->r[11];
|
|
/* 02229CDC */ _t326 = cpu->r[28] + 0x00000144u;
|
|
/* 02229CDC */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t326);
|
|
/* 02229CE0 */ cpu->r[3] = cpu->r[29];
|
|
/* 02229CE4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02229CE8 */ _t327 = cpu->r[29] + 0x0000008Cu;
|
|
/* 02229CE8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t327);
|
|
/* 02229CEC */ _t328 = cpu->r[3] + 0x00000004u;
|
|
/* 02229CEC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t328);
|
|
/* 02229CF0 */ cpu->f[9] = cpu->f[13] - cpu->f[11];
|
|
/* 02229CF4 */ cpu->r[12] = 0x10050000u;
|
|
/* 02229CF8 */ cpu->f[0] = fabs(cpu->f[9]);
|
|
/* 02229CFC */ _t329 = cpu->r[12] + 0x000000ACu;
|
|
/* 02229CFC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t329);
|
|
/* 02229D00 */ cpu->r[11] = 0x10050000u;
|
|
/* 02229D04 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[13]);
|
|
/* 02229D08 */ _t330 = cpu->r[11] + 0x00000098u;
|
|
/* 02229D08 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t330);
|
|
/* 02229D0C */ _t331 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02229D0C */ _t332 = _t331 & 0x00000001u;
|
|
/* 02229D0C */ if (_t332) goto L_02229D20; else goto L_02229D10;
|
|
L_02229D10: ; // 0x2229d10
|
|
/* 02229D10 */ cpu->f[7] = cpu->f[28] - cpu->f[11];
|
|
/* 02229D14 */ cpu->f[29] = cpu->f[7] / cpu->f[9];
|
|
/* 02229D18 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[29], cpu->f[30]);
|
|
/* 02229D1C */ _t333 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02229D1C */ _t334 = _t333 & 0x00000001u;
|
|
/* 02229D1C */ if (_t334) goto L_02229D20; else goto L_02229D88;
|
|
L_02229D20: ; // 0x2229d20
|
|
/* 02229D20 */ _t335 = cpu->r[29] + 0x00000004u;
|
|
/* 02229D20 */ cpu->r[9] = rbrew_read32(cpu->mem, _t335);
|
|
/* 02229D24 */ _t336 = cpu->r[9] + 0x00000254u;
|
|
/* 02229D24 */ cpu->r[10] = rbrew_read32(cpu->mem, _t336);
|
|
/* 02229D28 */ cpu->ctr = cpu->r[10];
|
|
/* 02229D2C */ cpu->r[3] = cpu->r[29];
|
|
/* 02229D30 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02229D34 */ _t337 = cpu->r[3] + 0x00000000u;
|
|
/* 02229D34 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t337);
|
|
/* 02229D38 */ _t338 = cpu->r[1] + 0x00000034u;
|
|
/* 02229D38 */ rbrew_write_f32(cpu->mem, _t338, cpu->f[10]);
|
|
/* 02229D3C */ _t339 = cpu->r[3] + 0x00000004u;
|
|
/* 02229D3C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t339);
|
|
/* 02229D40 */ _t340 = cpu->r[1] + 0x00000038u;
|
|
/* 02229D40 */ rbrew_write_f32(cpu->mem, _t340, cpu->f[11]);
|
|
/* 02229D44 */ _t341 = cpu->r[3] + 0x00000008u;
|
|
/* 02229D44 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t341);
|
|
/* 02229D48 */ _t342 = cpu->r[1] + 0x00000038u;
|
|
/* 02229D48 */ rbrew_write_f32(cpu->mem, _t342, cpu->f[28]);
|
|
/* 02229D4C */ _t343 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02229D4C */ rbrew_write_f32(cpu->mem, _t343, cpu->f[12]);
|
|
/* 02229D50 */ _t344 = cpu->r[28] + 0x00000148u;
|
|
/* 02229D50 */ cpu->r[0] = rbrew_read16(cpu->mem, _t344);
|
|
/* 02229D54 */ _t345 = cpu->r[29] + 0x00000114u;
|
|
/* 02229D54 */ cpu->r[4] = rbrew_read32(cpu->mem, _t345);
|
|
/* 02229D58 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Au, 0x0000001Fu);
|
|
/* 02229D5C */ cpu->r[9] = 0x10050000u;
|
|
/* 02229D60 */ _t346 = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000014u, 0x0000001Fu);
|
|
/* 02229D60 */ _t347 = cpu->r[4] & 0xFFFFF000u;
|
|
/* 02229D60 */ cpu->r[4] = _t347 | _t346;
|
|
/* 02229D64 */ cpu->r[31] = 0x101F0000u;
|
|
/* 02229D68 */ cpu->r[5] = rbrew_rlwinm(cpu->r[4], 0x00000014u, 0x00000000u, 0x0000000Bu);
|
|
/* 02229D6C */ cpu->r[31] = cpu->r[31] + 0x00006350u;
|
|
/* 02229D70 */ /* nop */
|
|
/* 02229D74 */ _t348 = cpu->r[9] + 0x000000A0u;
|
|
/* 02229D74 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t348);
|
|
/* 02229D78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000000Cu);
|
|
/* 02229D7C */ _t349 = cpu->r[29] + 0x00000114u;
|
|
/* 02229D7C */ rbrew_write32(cpu->mem, _t349, cpu->r[4]);
|
|
/* 02229D80 */ _t350 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02229D80 */ _t351 = _t350 & 0x00000001u;
|
|
/* 02229D80 */ if (_t351) goto L_02229D84; else goto L_0222A3CC;
|
|
L_02229D84: ; // 0x2229d84
|
|
/* 02229D84 */ goto L_02229DF4;
|
|
L_02229D88: ; // 0x2229d88
|
|
/* 02229D88 */ _t352 = cpu->r[29] + 0x00000004u;
|
|
/* 02229D88 */ cpu->r[11] = rbrew_read32(cpu->mem, _t352);
|
|
/* 02229D8C */ _t353 = cpu->r[29] + 0x00000090u;
|
|
/* 02229D8C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t353);
|
|
/* 02229D90 */ _t354 = cpu->r[29] + 0x00000088u;
|
|
/* 02229D90 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t354);
|
|
/* 02229D94 */ _t355 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02229D94 */ rbrew_write_f32(cpu->mem, _t355, cpu->f[0]);
|
|
/* 02229D98 */ _t356 = cpu->r[1] + 0x00000034u;
|
|
/* 02229D98 */ rbrew_write_f32(cpu->mem, _t356, cpu->f[13]);
|
|
/* 02229D9C */ _t357 = cpu->r[1] + 0x00000038u;
|
|
/* 02229D9C */ rbrew_write_f32(cpu->mem, _t357, cpu->f[11]);
|
|
/* 02229DA0 */ _t358 = cpu->r[11] + 0x00000254u;
|
|
/* 02229DA0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t358);
|
|
/* 02229DA4 */ cpu->ctr = cpu->r[12];
|
|
/* 02229DA8 */ cpu->r[3] = cpu->r[29];
|
|
/* 02229DAC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02229DB0 */ cpu->f[1] = cpu->f[29];
|
|
/* 02229DB4 */ cpu->r[4] = cpu->r[3];
|
|
/* 02229DB8 */ cpu->r[3] = cpu->r[1] + 0x00000034u;
|
|
/* 02229DBC */ Gambit_fn_0204E80C(cpu);
|
|
/* 02229DC0 */ _t359 = cpu->r[28] + 0x00000148u;
|
|
/* 02229DC0 */ cpu->r[0] = rbrew_read16(cpu->mem, _t359);
|
|
/* 02229DC4 */ _t360 = cpu->r[29] + 0x00000114u;
|
|
/* 02229DC4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t360);
|
|
/* 02229DC8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Au, 0x0000001Fu);
|
|
/* 02229DCC */ cpu->r[9] = 0x10050000u;
|
|
/* 02229DD0 */ _t361 = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000014u, 0x0000001Fu);
|
|
/* 02229DD0 */ _t362 = cpu->r[4] & 0xFFFFF000u;
|
|
/* 02229DD0 */ cpu->r[4] = _t362 | _t361;
|
|
/* 02229DD4 */ _t363 = cpu->r[9] + 0x000000A0u;
|
|
/* 02229DD4 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t363);
|
|
/* 02229DD8 */ cpu->r[5] = rbrew_rlwinm(cpu->r[4], 0x00000014u, 0x00000000u, 0x0000000Bu);
|
|
/* 02229DDC */ cpu->r[31] = 0x101F0000u;
|
|
/* 02229DE0 */ /* nop */
|
|
/* 02229DE4 */ _t364 = cpu->r[29] + 0x00000114u;
|
|
/* 02229DE4 */ rbrew_write32(cpu->mem, _t364, cpu->r[4]);
|
|
/* 02229DE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000000Cu);
|
|
/* 02229DEC */ cpu->r[31] = cpu->r[31] + 0x00006350u;
|
|
/* 02229DF0 */ _t365 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02229DF0 */ _t366 = _t365 & 0x00000001u;
|
|
/* 02229DF0 */ if (_t366) goto L_02229DF4; else goto L_0222A3CC;
|
|
L_02229DF4: ; // 0x2229df4
|
|
/* 02229DF4 */ _t367 = cpu->r[29] + 0x00000004u;
|
|
/* 02229DF4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t367);
|
|
/* 02229DF8 */ _t368 = cpu->r[6] + 0x0000025Cu;
|
|
/* 02229DF8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t368);
|
|
/* 02229DFC */ cpu->ctr = cpu->r[7];
|
|
/* 02229E00 */ cpu->r[3] = cpu->r[29];
|
|
/* 02229E04 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02229E08 */ _t369 = cpu->r[3] + 0x00000000u;
|
|
/* 02229E08 */ cpu->r[9] = rbrew_read32(cpu->mem, _t369);
|
|
/* 02229E0C */ _t370 = cpu->r[1] + 0x00000040u;
|
|
/* 02229E0C */ rbrew_write32(cpu->mem, _t370, cpu->r[9]);
|
|
/* 02229E10 */ _t371 = cpu->r[3] + 0x00000004u;
|
|
/* 02229E10 */ cpu->r[10] = rbrew_read32(cpu->mem, _t371);
|
|
/* 02229E14 */ _t372 = cpu->r[1] + 0x00000044u;
|
|
/* 02229E14 */ rbrew_write32(cpu->mem, _t372, cpu->r[10]);
|
|
/* 02229E18 */ _t373 = cpu->r[3] + 0x00000008u;
|
|
/* 02229E18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t373);
|
|
/* 02229E1C */ _t374 = cpu->r[1] + 0x00000044u;
|
|
/* 02229E1C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t374);
|
|
/* 02229E20 */ _t375 = cpu->r[1] + 0x00000048u;
|
|
/* 02229E20 */ rbrew_write32(cpu->mem, _t375, cpu->r[0]);
|
|
/* 02229E24 */ cpu->f[6] = cpu->f[0] * cpu->f[0];
|
|
/* 02229E28 */ _t376 = cpu->r[1] + 0x00000040u;
|
|
/* 02229E28 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t376);
|
|
/* 02229E2C */ _t377 = cpu->r[1] + 0x00000048u;
|
|
/* 02229E2C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t377);
|
|
/* 02229E30 */ cpu->f[7] = fma(cpu->f[8], cpu->f[8], cpu->f[6]);
|
|
/* 02229E34 */ cpu->f[12] = fma(cpu->f[12], cpu->f[12], cpu->f[7]);
|
|
/* 02229E38 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[31]);
|
|
/* 02229E3C */ _t378 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02229E3C */ _t379 = _t378 & 0x00000001u;
|
|
/* 02229E3C */ if (_t379) goto L_02229E40; else goto L_02229E78;
|
|
L_02229E40: ; // 0x2229e40
|
|
/* 02229E40 */ cpu->r[7] = 0x10050000u;
|
|
/* 02229E44 */ _t380 = cpu->r[7] + 0x000000A4u;
|
|
/* 02229E44 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t380);
|
|
/* 02229E48 */ _ft381 = sqrt(cpu->f[12]);
|
|
/* 02229E48 */ _ft382 = (double)(int32_t)0x00000001u;
|
|
/* 02229E48 */ cpu->f[7] = _ft382 / _ft381;
|
|
/* 02229E4C */ cpu->f[9] = cpu->f[7] * cpu->f[7];
|
|
/* 02229E50 */ cpu->f[10] = cpu->f[7] * cpu->f[29];
|
|
/* 02229E54 */ cpu->f[9] = -fma(cpu->f[9], cpu->f[12], -(cpu->f[11]));
|
|
/* 02229E58 */ cpu->f[7] = cpu->f[9] * cpu->f[10];
|
|
/* 02229E5C */ /* nop */
|
|
/* 02229E60 */ _t383 = cpu->r[1] + 0x00000048u;
|
|
/* 02229E60 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t383);
|
|
/* 02229E64 */ /* nop */
|
|
/* 02229E68 */ cpu->f[11] = cpu->f[11] * cpu->f[7];
|
|
/* 02229E6C */ /* nop */
|
|
/* 02229E70 */ cpu->f[12] = cpu->f[12] * cpu->f[7];
|
|
/* 02229E74 */ _t384 = cpu->r[1] + 0x00000048u;
|
|
/* 02229E74 */ rbrew_write_f32(cpu->mem, _t384, cpu->f[11]);
|
|
L_02229E78: ; // 0x2229e78
|
|
/* 02229E78 */ cpu->r[6] = 0x10050000u;
|
|
/* 02229E7C */ _t385 = cpu->r[6] + 0x000000B0u;
|
|
/* 02229E7C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t385);
|
|
/* 02229E80 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[12]);
|
|
/* 02229E84 */ _t386 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02229E84 */ _t387 = _t386 & 0x00000001u;
|
|
/* 02229E84 */ if (_t387) goto L_02229E90; else goto L_02229E88;
|
|
L_02229E88: ; // 0x2229e88
|
|
/* 02229E88 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[29]);
|
|
/* 02229E8C */ _t388 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02229E8C */ _t389 = _t388 & 0x00000001u;
|
|
/* 02229E8C */ if (_t389) goto L_02229E90; else goto L_02229F10;
|
|
L_02229E90: ; // 0x2229e90
|
|
/* 02229E90 */ _t390 = cpu->r[1] + 0x00000034u;
|
|
/* 02229E90 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t390);
|
|
/* 02229E94 */ _t391 = cpu->r[31] + 0x00000008u;
|
|
/* 02229E94 */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t391);
|
|
/* 02229E98 */ _t392 = cpu->r[31] + 0x00000004u;
|
|
/* 02229E98 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t392);
|
|
/* 02229E9C */ _t393 = cpu->r[31] + 0x00000000u;
|
|
/* 02229E9C */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t393);
|
|
/* 02229EA0 */ _t394 = cpu->r[29] + 0x0000006Cu;
|
|
/* 02229EA0 */ rbrew_write_f32(cpu->mem, _t394, cpu->f[28]);
|
|
/* 02229EA4 */ _t395 = cpu->r[29] + 0x00000070u;
|
|
/* 02229EA4 */ rbrew_write_f32(cpu->mem, _t395, cpu->f[27]);
|
|
/* 02229EA8 */ _t396 = cpu->r[29] + 0x00000068u;
|
|
/* 02229EA8 */ rbrew_write_f32(cpu->mem, _t396, cpu->f[29]);
|
|
/* 02229EAC */ _t397 = cpu->r[29] + 0x00000074u;
|
|
/* 02229EAC */ rbrew_write_f32(cpu->mem, _t397, cpu->f[0]);
|
|
/* 02229EB0 */ _t398 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02229EB0 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t398);
|
|
/* 02229EB4 */ _t399 = cpu->r[1] + 0x00000038u;
|
|
/* 02229EB4 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t399);
|
|
/* 02229EB8 */ _t400 = cpu->r[29] + 0x00000004u;
|
|
/* 02229EB8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t400);
|
|
/* 02229EBC */ _t401 = cpu->r[29] + 0x00000078u;
|
|
/* 02229EBC */ rbrew_write_f32(cpu->mem, _t401, cpu->f[6]);
|
|
/* 02229EC0 */ _t402 = cpu->r[29] + 0x0000007Cu;
|
|
/* 02229EC0 */ rbrew_write_f32(cpu->mem, _t402, cpu->f[7]);
|
|
/* 02229EC4 */ _t403 = cpu->r[8] + 0x00000294u;
|
|
/* 02229EC4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t403);
|
|
/* 02229EC8 */ /* nop */
|
|
/* 02229ECC */ /* nop */
|
|
/* 02229ED0 */ cpu->ctr = cpu->r[0];
|
|
/* 02229ED4 */ cpu->r[5] = 0x10050000u;
|
|
/* 02229ED8 */ /* nop */
|
|
/* 02229EDC */ _t404 = cpu->r[1] + 0x00000048u;
|
|
/* 02229EDC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t404);
|
|
/* 02229EE0 */ /* nop */
|
|
/* 02229EE4 */ cpu->r[31] = 0x10110000u;
|
|
/* 02229EE8 */ cpu->f[6] = fma(cpu->f[0], cpu->f[27], cpu->f[12]);
|
|
/* 02229EEC */ _t405 = cpu->r[5] + 0x00000020u;
|
|
/* 02229EEC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t405);
|
|
/* 02229EF0 */ cpu->r[31] = cpu->r[31] + 0x000053A0u;
|
|
/* 02229EF4 */ cpu->r[3] = cpu->r[29];
|
|
/* 02229EF8 */ cpu->f[26] = fabs(cpu->f[6]);
|
|
/* 02229EFC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02229F00 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], 0x00000001u);
|
|
/* 02229F04 */ _t406 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02229F04 */ _t407 = _t406 & 0x00000001u;
|
|
/* 02229F04 */ if (_t407) goto L_02229FFC; else goto L_02229F08;
|
|
L_02229F08: ; // 0x2229f08
|
|
/* 02229F08 */ _t408 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02229F08 */ _t409 = _t408 & 0x00000001u;
|
|
/* 02229F08 */ if (_t409) goto L_0222A184; else goto L_02229F0C;
|
|
L_02229F0C: ; // 0x2229f0c
|
|
/* 02229F0C */ goto L_02229FD0;
|
|
L_02229F10: ; // 0x2229f10
|
|
/* 02229F10 */ _t410 = cpu->r[31] + 0x00000008u;
|
|
/* 02229F10 */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t410);
|
|
/* 02229F14 */ _t411 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02229F14 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t411);
|
|
/* 02229F18 */ cpu->f[0] = -cpu->f[27];
|
|
/* 02229F1C */ _t412 = cpu->r[31] + 0x00000000u;
|
|
/* 02229F1C */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t412);
|
|
/* 02229F20 */ _t413 = cpu->r[1] + 0x00000038u;
|
|
/* 02229F20 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t413);
|
|
/* 02229F24 */ cpu->f[12] = -cpu->f[29];
|
|
/* 02229F28 */ _t414 = cpu->r[1] + 0x000000C8u;
|
|
/* 02229F28 */ rbrew_write_f32(cpu->mem, _t414, cpu->f[0]);
|
|
/* 02229F2C */ _t415 = cpu->r[1] + 0x000000C8u;
|
|
/* 02229F2C */ cpu->r[0] = rbrew_read32(cpu->mem, _t415);
|
|
/* 02229F30 */ _t416 = cpu->r[31] + 0x00000004u;
|
|
/* 02229F30 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t416);
|
|
/* 02229F34 */ _t417 = cpu->r[1] + 0x000000C0u;
|
|
/* 02229F34 */ rbrew_write_f32(cpu->mem, _t417, cpu->f[12]);
|
|
/* 02229F38 */ _t418 = cpu->r[1] + 0x000000C0u;
|
|
/* 02229F38 */ cpu->r[6] = rbrew_read32(cpu->mem, _t418);
|
|
/* 02229F3C */ _t419 = cpu->r[29] + 0x0000006Cu;
|
|
/* 02229F3C */ rbrew_write_f32(cpu->mem, _t419, cpu->f[28]);
|
|
/* 02229F40 */ cpu->f[13] = -cpu->f[28];
|
|
/* 02229F44 */ _t420 = cpu->r[29] + 0x00000068u;
|
|
/* 02229F44 */ rbrew_write_f32(cpu->mem, _t420, cpu->f[29]);
|
|
/* 02229F48 */ _t421 = cpu->r[29] + 0x00000070u;
|
|
/* 02229F48 */ rbrew_write_f32(cpu->mem, _t421, cpu->f[27]);
|
|
/* 02229F4C */ _t422 = cpu->r[29] + 0x00000078u;
|
|
/* 02229F4C */ rbrew_write_f32(cpu->mem, _t422, cpu->f[6]);
|
|
/* 02229F50 */ _t423 = cpu->r[1] + 0x00000034u;
|
|
/* 02229F50 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t423);
|
|
/* 02229F54 */ _t424 = cpu->r[29] + 0x0000007Cu;
|
|
/* 02229F54 */ rbrew_write_f32(cpu->mem, _t424, cpu->f[7]);
|
|
/* 02229F58 */ _t425 = cpu->r[29] + 0x00000074u;
|
|
/* 02229F58 */ rbrew_write_f32(cpu->mem, _t425, cpu->f[0]);
|
|
/* 02229F5C */ _t426 = cpu->r[1] + 0x000000C4u;
|
|
/* 02229F5C */ rbrew_write_f32(cpu->mem, _t426, cpu->f[13]);
|
|
/* 02229F60 */ _t427 = cpu->r[1] + 0x000000C4u;
|
|
/* 02229F60 */ cpu->r[7] = rbrew_read32(cpu->mem, _t427);
|
|
/* 02229F64 */ _t428 = cpu->r[1] + 0x00000120u;
|
|
/* 02229F64 */ rbrew_write32(cpu->mem, _t428, cpu->r[6]);
|
|
/* 02229F68 */ _t429 = cpu->r[1] + 0x00000120u;
|
|
/* 02229F68 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t429);
|
|
/* 02229F6C */ _t430 = cpu->r[1] + 0x00000124u;
|
|
/* 02229F6C */ rbrew_write32(cpu->mem, _t430, cpu->r[7]);
|
|
/* 02229F70 */ _t431 = cpu->r[1] + 0x00000128u;
|
|
/* 02229F70 */ rbrew_write32(cpu->mem, _t431, cpu->r[0]);
|
|
/* 02229F74 */ _t432 = cpu->r[1] + 0x00000128u;
|
|
/* 02229F74 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t432);
|
|
/* 02229F78 */ _t433 = cpu->r[1] + 0x00000124u;
|
|
/* 02229F78 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t433);
|
|
/* 02229F7C */ _t434 = cpu->r[1] + 0x00000048u;
|
|
/* 02229F7C */ rbrew_write_f32(cpu->mem, _t434, cpu->f[13]);
|
|
/* 02229F80 */ _t435 = cpu->r[29] + 0x00000004u;
|
|
/* 02229F80 */ cpu->r[8] = rbrew_read32(cpu->mem, _t435);
|
|
/* 02229F84 */ _t436 = cpu->r[1] + 0x00000044u;
|
|
/* 02229F84 */ rbrew_write_f32(cpu->mem, _t436, cpu->f[12]);
|
|
/* 02229F88 */ _t437 = cpu->r[1] + 0x00000040u;
|
|
/* 02229F88 */ rbrew_write_f32(cpu->mem, _t437, cpu->f[10]);
|
|
/* 02229F8C */ _t438 = cpu->r[8] + 0x00000294u;
|
|
/* 02229F8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t438);
|
|
/* 02229F90 */ /* nop */
|
|
/* 02229F94 */ /* nop */
|
|
/* 02229F98 */ cpu->ctr = cpu->r[0];
|
|
/* 02229F9C */ /* nop */
|
|
/* 02229FA0 */ cpu->r[5] = 0x10050000u;
|
|
/* 02229FA4 */ /* nop */
|
|
/* 02229FA8 */ cpu->r[31] = 0x10110000u;
|
|
/* 02229FAC */ cpu->f[6] = fma(cpu->f[13], cpu->f[27], cpu->f[12]);
|
|
/* 02229FB0 */ cpu->r[31] = cpu->r[31] + 0x000053A0u;
|
|
/* 02229FB4 */ _t439 = cpu->r[5] + 0x00000020u;
|
|
/* 02229FB4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t439);
|
|
/* 02229FB8 */ cpu->r[3] = cpu->r[29];
|
|
/* 02229FBC */ cpu->f[26] = fabs(cpu->f[6]);
|
|
/* 02229FC0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02229FC4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], 0x00000001u);
|
|
/* 02229FC8 */ _t440 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02229FC8 */ _t441 = _t440 & 0x00000001u;
|
|
/* 02229FC8 */ if (_t441) goto L_02229FFC; else goto L_02229FCC;
|
|
L_02229FCC: ; // 0x2229fcc
|
|
/* 02229FCC */ _t442 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02229FCC */ _t443 = _t442 & 0x00000001u;
|
|
/* 02229FCC */ if (_t443) goto L_0222A184; else goto L_02229FD0;
|
|
L_02229FD0: ; // 0x2229fd0
|
|
/* 02229FD0 */ _t444 = cpu->r[29] + 0x00000004u;
|
|
/* 02229FD0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t444);
|
|
/* 02229FD4 */ _t445 = cpu->r[8] + 0x00000404u;
|
|
/* 02229FD4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t445);
|
|
/* 02229FD8 */ cpu->ctr = cpu->r[9];
|
|
/* 02229FDC */ cpu->r[3] = cpu->r[29];
|
|
/* 02229FE0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02229FE4 */ _t446 = cpu->r[29] + 0x00000004u;
|
|
/* 02229FE4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t446);
|
|
/* 02229FE8 */ _t447 = cpu->r[10] + 0x0000039Cu;
|
|
/* 02229FE8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t447);
|
|
/* 02229FEC */ cpu->ctr = cpu->r[12];
|
|
/* 02229FF0 */ cpu->r[3] = cpu->r[29];
|
|
/* 02229FF4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02229FF8 */ goto L_0222A6EC;
|
|
L_02229FFC: ; // 0x2229ffc
|
|
/* 02229FFC */ Gambit_fn_021F6FE8(cpu);
|
|
/* 0222A000 */ cpu->r[11] = 0x10050000u;
|
|
/* 0222A004 */ cpu->r[10] = 0x43300000u;
|
|
/* 0222A008 */ _t448 = cpu->r[11] + 0x00000018u;
|
|
/* 0222A008 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t448);
|
|
/* 0222A00C */ cpu->r[0] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x00000008u, 0x0000001Fu);
|
|
/* 0222A010 */ _t449 = cpu->r[1] + 0x00000058u;
|
|
/* 0222A010 */ rbrew_write32(cpu->mem, _t449, cpu->r[10]);
|
|
/* 0222A014 */ _t450 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0222A014 */ rbrew_write32(cpu->mem, _t450, cpu->r[0]);
|
|
/* 0222A018 */ _t451 = cpu->r[1] + 0x00000058u;
|
|
/* 0222A018 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t451);
|
|
/* 0222A01C */ cpu->r[4] = rbrew_rlwinm(cpu->r[3], 0x0000000Cu, 0x00000014u, 0x0000001Bu);
|
|
/* 0222A020 */ cpu->f[0] = cpu->f[13] - cpu->f[0];
|
|
/* 0222A024 */ cpu->r[12] = cpu->r[31] + cpu->r[4];
|
|
/* 0222A028 */ cpu->f[8] = (double)(float)cpu->f[0];
|
|
/* 0222A02C */ _t452 = cpu->r[12] + 0x0000000Cu;
|
|
/* 0222A02C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t452);
|
|
/* 0222A030 */ cpu->f[6] = cpu->f[7] * cpu->f[8];
|
|
/* 0222A034 */ _t453 = cpu->r[12] + 0x00000008u;
|
|
/* 0222A034 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t453);
|
|
/* 0222A038 */ cpu->f[9] = fma(cpu->f[6], cpu->f[31], cpu->f[8]);
|
|
/* 0222A03C */ cpu->r[30] = 0x101C0000u;
|
|
/* 0222A040 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[26], cpu->f[9]);
|
|
/* 0222A044 */ cpu->r[30] = cpu->r[30] + 0x00006000u;
|
|
/* 0222A048 */ _t454 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0222A048 */ _t455 = _t454 & 0x00000001u;
|
|
/* 0222A048 */ if (_t455) goto L_0222A04C; else goto L_0222A0A0;
|
|
L_0222A04C: ; // 0x222a04c
|
|
/* 0222A04C */ _t456 = cpu->r[30] + 0x00000000u;
|
|
/* 0222A04C */ cpu->r[7] = rbrew_read32(cpu->mem, _t456);
|
|
/* 0222A050 */ _t457 = cpu->r[7] + 0x00000274u;
|
|
/* 0222A050 */ cpu->r[3] = rbrew_read32(cpu->mem, _t457);
|
|
/* 0222A054 */ cpu->r[4] = cpu->r[29];
|
|
/* 0222A058 */ Gambit_fn_021EFC54(cpu);
|
|
/* 0222A05C */ _t458 = cpu->r[30] + 0x00000000u;
|
|
/* 0222A05C */ cpu->r[9] = rbrew_read32(cpu->mem, _t458);
|
|
/* 0222A060 */ cpu->r[4] = 0x10050000u;
|
|
/* 0222A064 */ cpu->r[5] = cpu->r[29] + 0x00000074u;
|
|
/* 0222A068 */ _t459 = cpu->r[9] + 0x00000260u;
|
|
/* 0222A068 */ cpu->r[3] = rbrew_read32(cpu->mem, _t459);
|
|
/* 0222A06C */ cpu->r[4] = cpu->r[4] + 0x000000B4u;
|
|
/* 0222A070 */ Gambit_fn_023A7AF0(cpu);
|
|
/* 0222A074 */ _t460 = cpu->r[29] + 0x00000004u;
|
|
/* 0222A074 */ cpu->r[8] = rbrew_read32(cpu->mem, _t460);
|
|
/* 0222A078 */ _t461 = cpu->r[8] + 0x00000404u;
|
|
/* 0222A078 */ cpu->r[9] = rbrew_read32(cpu->mem, _t461);
|
|
/* 0222A07C */ cpu->ctr = cpu->r[9];
|
|
/* 0222A080 */ cpu->r[3] = cpu->r[29];
|
|
/* 0222A084 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222A088 */ _t462 = cpu->r[29] + 0x00000004u;
|
|
/* 0222A088 */ cpu->r[10] = rbrew_read32(cpu->mem, _t462);
|
|
/* 0222A08C */ _t463 = cpu->r[10] + 0x0000039Cu;
|
|
/* 0222A08C */ cpu->r[12] = rbrew_read32(cpu->mem, _t463);
|
|
/* 0222A090 */ cpu->ctr = cpu->r[12];
|
|
/* 0222A094 */ cpu->r[3] = cpu->r[29];
|
|
/* 0222A098 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222A09C */ goto L_0222A6EC;
|
|
L_0222A0A0: ; // 0x222a0a0
|
|
/* 0222A0A0 */ Gambit_fn_021F6FF4(cpu);
|
|
/* 0222A0A4 */ cpu->r[10] = 0x10050000u;
|
|
/* 0222A0A8 */ cpu->r[6] = 0x43300000u;
|
|
/* 0222A0AC */ _t464 = cpu->r[10] + 0x00000018u;
|
|
/* 0222A0AC */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t464);
|
|
/* 0222A0B0 */ cpu->r[9] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x00000008u, 0x0000001Fu);
|
|
/* 0222A0B4 */ _t465 = cpu->r[1] + 0x00000058u;
|
|
/* 0222A0B4 */ rbrew_write32(cpu->mem, _t465, cpu->r[6]);
|
|
/* 0222A0B8 */ _t466 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0222A0B8 */ rbrew_write32(cpu->mem, _t466, cpu->r[9]);
|
|
/* 0222A0BC */ _t467 = cpu->r[1] + 0x00000058u;
|
|
/* 0222A0BC */ cpu->f[12] = rbrew_read_f64(cpu->mem, _t467);
|
|
/* 0222A0C0 */ cpu->r[4] = rbrew_rlwinm(cpu->r[3], 0x0000000Cu, 0x00000014u, 0x0000001Bu);
|
|
/* 0222A0C4 */ cpu->f[13] = cpu->f[12] - cpu->f[13];
|
|
/* 0222A0C8 */ cpu->r[4] = cpu->r[31] + cpu->r[4];
|
|
/* 0222A0CC */ cpu->f[10] = (double)(float)cpu->f[13];
|
|
/* 0222A0D0 */ _t468 = cpu->r[4] + 0x0000000Cu;
|
|
/* 0222A0D0 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t468);
|
|
/* 0222A0D4 */ cpu->f[0] = cpu->f[6] * cpu->f[10];
|
|
/* 0222A0D8 */ _t469 = cpu->r[4] + 0x00000008u;
|
|
/* 0222A0D8 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t469);
|
|
/* 0222A0DC */ cpu->f[11] = fma(cpu->f[0], cpu->f[31], cpu->f[7]);
|
|
/* 0222A0E0 */ _t470 = cpu->r[30] + 0x00000000u;
|
|
/* 0222A0E0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t470);
|
|
/* 0222A0E4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[26], cpu->f[11]);
|
|
/* 0222A0E8 */ _t471 = cpu->r[6] + 0x00000274u;
|
|
/* 0222A0E8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t471);
|
|
/* 0222A0EC */ cpu->r[4] = cpu->r[29];
|
|
/* 0222A0F0 */ _t472 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0222A0F0 */ _t473 = _t472 & 0x00000001u;
|
|
/* 0222A0F0 */ if (_t473) goto L_0222A0F4; else goto L_0222A13C;
|
|
L_0222A0F4: ; // 0x222a0f4
|
|
/* 0222A0F4 */ Gambit_fn_021EFC78(cpu);
|
|
/* 0222A0F8 */ _t474 = cpu->r[30] + 0x00000000u;
|
|
/* 0222A0F8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t474);
|
|
/* 0222A0FC */ _t475 = cpu->r[4] + 0x00000260u;
|
|
/* 0222A0FC */ cpu->r[3] = rbrew_read32(cpu->mem, _t475);
|
|
/* 0222A100 */ cpu->r[4] = 0x10050000u;
|
|
/* 0222A104 */ cpu->r[5] = cpu->r[29] + 0x00000074u;
|
|
/* 0222A108 */ cpu->r[4] = cpu->r[4] + 0x000000D4u;
|
|
/* 0222A10C */ Gambit_fn_023A7AF0(cpu);
|
|
/* 0222A110 */ _t476 = cpu->r[29] + 0x00000004u;
|
|
/* 0222A110 */ cpu->r[8] = rbrew_read32(cpu->mem, _t476);
|
|
/* 0222A114 */ _t477 = cpu->r[8] + 0x00000404u;
|
|
/* 0222A114 */ cpu->r[9] = rbrew_read32(cpu->mem, _t477);
|
|
/* 0222A118 */ cpu->ctr = cpu->r[9];
|
|
/* 0222A11C */ cpu->r[3] = cpu->r[29];
|
|
/* 0222A120 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222A124 */ _t478 = cpu->r[29] + 0x00000004u;
|
|
/* 0222A124 */ cpu->r[10] = rbrew_read32(cpu->mem, _t478);
|
|
/* 0222A128 */ _t479 = cpu->r[10] + 0x0000039Cu;
|
|
/* 0222A128 */ cpu->r[12] = rbrew_read32(cpu->mem, _t479);
|
|
/* 0222A12C */ cpu->ctr = cpu->r[12];
|
|
/* 0222A130 */ cpu->r[3] = cpu->r[29];
|
|
/* 0222A134 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222A138 */ goto L_0222A6EC;
|
|
L_0222A13C: ; // 0x222a13c
|
|
/* 0222A13C */ Gambit_fn_021EFC9C(cpu);
|
|
/* 0222A140 */ _t480 = cpu->r[30] + 0x00000000u;
|
|
/* 0222A140 */ cpu->r[7] = rbrew_read32(cpu->mem, _t480);
|
|
/* 0222A144 */ cpu->r[4] = 0x10050000u;
|
|
/* 0222A148 */ cpu->r[5] = cpu->r[29] + 0x00000074u;
|
|
/* 0222A14C */ _t481 = cpu->r[7] + 0x00000260u;
|
|
/* 0222A14C */ cpu->r[3] = rbrew_read32(cpu->mem, _t481);
|
|
/* 0222A150 */ cpu->r[4] = cpu->r[4] + 0x000000E8u;
|
|
/* 0222A154 */ Gambit_fn_023A7AF0(cpu);
|
|
/* 0222A158 */ _t482 = cpu->r[29] + 0x00000004u;
|
|
/* 0222A158 */ cpu->r[8] = rbrew_read32(cpu->mem, _t482);
|
|
/* 0222A15C */ _t483 = cpu->r[8] + 0x00000404u;
|
|
/* 0222A15C */ cpu->r[9] = rbrew_read32(cpu->mem, _t483);
|
|
/* 0222A160 */ cpu->ctr = cpu->r[9];
|
|
/* 0222A164 */ cpu->r[3] = cpu->r[29];
|
|
/* 0222A168 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222A16C */ _t484 = cpu->r[29] + 0x00000004u;
|
|
/* 0222A16C */ cpu->r[10] = rbrew_read32(cpu->mem, _t484);
|
|
/* 0222A170 */ _t485 = cpu->r[10] + 0x0000039Cu;
|
|
/* 0222A170 */ cpu->r[12] = rbrew_read32(cpu->mem, _t485);
|
|
/* 0222A174 */ cpu->ctr = cpu->r[12];
|
|
/* 0222A178 */ cpu->r[3] = cpu->r[29];
|
|
/* 0222A17C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222A180 */ goto L_0222A6EC;
|
|
L_0222A184: ; // 0x222a184
|
|
/* 0222A184 */ _t486 = cpu->r[29] + 0x00000030u;
|
|
/* 0222A184 */ cpu->r[28] = rbrew_read32(cpu->mem, _t486);
|
|
/* 0222A188 */ cpu->r[4] = 0x00000001u;
|
|
/* 0222A18C */ cpu->r[3] = cpu->r[28];
|
|
/* 0222A190 */ Gambit_fn_027B9B00(cpu);
|
|
/* 0222A194 */ Gambit_fn_021F6FE8(cpu);
|
|
/* 0222A198 */ cpu->r[4] = 0x10050000u;
|
|
/* 0222A19C */ cpu->r[10] = 0x43300000u;
|
|
/* 0222A1A0 */ _t487 = cpu->r[4] + 0x00000018u;
|
|
/* 0222A1A0 */ cpu->f[7] = rbrew_read_f64(cpu->mem, _t487);
|
|
/* 0222A1A4 */ cpu->r[5] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x00000008u, 0x0000001Fu);
|
|
/* 0222A1A8 */ _t488 = cpu->r[1] + 0x00000058u;
|
|
/* 0222A1A8 */ rbrew_write32(cpu->mem, _t488, cpu->r[10]);
|
|
/* 0222A1AC */ _t489 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0222A1AC */ rbrew_write32(cpu->mem, _t489, cpu->r[5]);
|
|
/* 0222A1B0 */ _t490 = cpu->r[1] + 0x00000058u;
|
|
/* 0222A1B0 */ cpu->f[11] = rbrew_read_f64(cpu->mem, _t490);
|
|
/* 0222A1B4 */ cpu->r[8] = rbrew_rlwinm(cpu->r[3], 0x0000000Cu, 0x00000014u, 0x0000001Bu);
|
|
/* 0222A1B8 */ cpu->f[12] = cpu->f[11] - cpu->f[7];
|
|
/* 0222A1BC */ cpu->r[7] = cpu->r[31] + cpu->r[8];
|
|
/* 0222A1C0 */ cpu->f[10] = (double)(float)cpu->f[12];
|
|
/* 0222A1C4 */ _t491 = cpu->r[7] + 0x0000000Cu;
|
|
/* 0222A1C4 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t491);
|
|
/* 0222A1C8 */ cpu->f[0] = cpu->f[7] * cpu->f[10];
|
|
/* 0222A1CC */ _t492 = cpu->r[7] + 0x00000008u;
|
|
/* 0222A1CC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t492);
|
|
/* 0222A1D0 */ cpu->f[8] = fma(cpu->f[0], cpu->f[31], cpu->f[10]);
|
|
/* 0222A1D4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[26], cpu->f[8]);
|
|
/* 0222A1D8 */ _t493 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0222A1D8 */ _t494 = _t493 & 0x00000001u;
|
|
/* 0222A1D8 */ if (_t494) goto L_0222A1DC; else goto L_0222A1E4;
|
|
L_0222A1DC: ; // 0x222a1dc
|
|
/* 0222A1DC */ cpu->r[5] = 0x00000000u;
|
|
/* 0222A1E0 */ goto L_0222A234;
|
|
L_0222A1E4: ; // 0x222a1e4
|
|
/* 0222A1E4 */ Gambit_fn_021F6FF4(cpu);
|
|
/* 0222A1E8 */ cpu->r[12] = 0x10050000u;
|
|
/* 0222A1EC */ cpu->r[5] = 0x43300000u;
|
|
/* 0222A1F0 */ _t495 = cpu->r[12] + 0x00000018u;
|
|
/* 0222A1F0 */ cpu->f[6] = rbrew_read_f64(cpu->mem, _t495);
|
|
/* 0222A1F4 */ cpu->r[9] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x00000008u, 0x0000001Fu);
|
|
/* 0222A1F8 */ _t496 = cpu->r[1] + 0x00000058u;
|
|
/* 0222A1F8 */ rbrew_write32(cpu->mem, _t496, cpu->r[5]);
|
|
/* 0222A1FC */ _t497 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0222A1FC */ rbrew_write32(cpu->mem, _t497, cpu->r[9]);
|
|
/* 0222A200 */ _t498 = cpu->r[1] + 0x00000058u;
|
|
/* 0222A200 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t498);
|
|
/* 0222A204 */ cpu->r[4] = rbrew_rlwinm(cpu->r[3], 0x0000000Cu, 0x00000014u, 0x0000001Bu);
|
|
/* 0222A208 */ cpu->f[6] = cpu->f[0] - cpu->f[6];
|
|
/* 0222A20C */ cpu->r[9] = cpu->r[31] + cpu->r[4];
|
|
/* 0222A210 */ cpu->f[13] = (double)(float)cpu->f[6];
|
|
/* 0222A214 */ _t499 = cpu->r[9] + 0x0000000Cu;
|
|
/* 0222A214 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t499);
|
|
/* 0222A218 */ cpu->f[7] = cpu->f[8] * cpu->f[13];
|
|
/* 0222A21C */ _t500 = cpu->r[9] + 0x00000008u;
|
|
/* 0222A21C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t500);
|
|
/* 0222A220 */ cpu->f[9] = fma(cpu->f[7], cpu->f[31], cpu->f[9]);
|
|
/* 0222A224 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[26], cpu->f[9]);
|
|
/* 0222A228 */ cpu->r[5] = 0x00000002u;
|
|
/* 0222A22C */ _t501 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0222A22C */ _t502 = _t501 & 0x00000001u;
|
|
/* 0222A22C */ if (_t502) goto L_0222A230; else goto L_0222A234;
|
|
L_0222A230: ; // 0x222a230
|
|
/* 0222A230 */ cpu->r[5] = 0x00000001u;
|
|
L_0222A234: ; // 0x222a234
|
|
/* 0222A234 */ cpu->r[3] = cpu->r[28];
|
|
/* 0222A238 */ cpu->r[4] = 0x00000004u;
|
|
/* 0222A23C */ Gambit_fn_027B8224(cpu);
|
|
/* 0222A240 */ cpu->r[3] = cpu->r[28];
|
|
/* 0222A244 */ cpu->r[4] = 0x00000007u;
|
|
/* 0222A248 */ cpu->r[5] = 0x00000001u;
|
|
/* 0222A24C */ Gambit_fn_027B8224(cpu);
|
|
/* 0222A250 */ _t503 = cpu->r[29] + 0x00000114u;
|
|
/* 0222A250 */ cpu->r[9] = rbrew_read32(cpu->mem, _t503);
|
|
/* 0222A254 */ cpu->r[3] = cpu->r[28];
|
|
/* 0222A258 */ cpu->r[10] = rbrew_rlwinm(cpu->r[9], 0x00000014u, 0x00000000u, 0x0000000Bu);
|
|
/* 0222A25C */ cpu->r[4] = 0x00000002u;
|
|
/* 0222A260 */ /* nop */
|
|
/* 0222A264 */ Gambit_fn_027B8224(cpu);
|
|
/* 0222A268 */ _t504 = cpu->r[1] + 0x00000108u;
|
|
/* 0222A268 */ rbrew_write32(cpu->mem, _t504, cpu->r[30]);
|
|
/* 0222A26C */ cpu->r[4] = cpu->r[1] + 0x00000108u;
|
|
/* 0222A270 */ cpu->r[11] = 0x10050000u;
|
|
/* 0222A274 */ cpu->r[11] = cpu->r[11] + 0x00000074u;
|
|
/* 0222A278 */ cpu->r[5] = 0x10050000u;
|
|
/* 0222A27C */ cpu->r[3] = cpu->r[28];
|
|
/* 0222A280 */ _t505 = cpu->r[1] + 0x00000110u;
|
|
/* 0222A280 */ rbrew_write32(cpu->mem, _t505, cpu->r[11]);
|
|
/* 0222A284 */ cpu->r[5] = cpu->r[5] + 0x000000C8u;
|
|
/* 0222A288 */ cpu->r[6] = 0x00000000u;
|
|
/* 0222A28C */ _t506 = cpu->r[1] + 0x0000010Cu;
|
|
/* 0222A28C */ rbrew_write32(cpu->mem, _t506, cpu->r[30]);
|
|
/* 0222A290 */ Gambit_fn_027B72F0(cpu);
|
|
/* 0222A294 */ _t507 = cpu->r[1] + 0x00000040u;
|
|
/* 0222A294 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t507);
|
|
/* 0222A298 */ _t508 = cpu->r[29] + 0x0000007Cu;
|
|
/* 0222A298 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t508);
|
|
/* 0222A29C */ _t509 = cpu->r[1] + 0x0000009Cu;
|
|
/* 0222A29C */ rbrew_write_f32(cpu->mem, _t509, cpu->f[7]);
|
|
/* 0222A2A0 */ cpu->r[11] = 0x101F0000u;
|
|
/* 0222A2A4 */ _t510 = cpu->r[29] + 0x00000074u;
|
|
/* 0222A2A4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t510);
|
|
/* 0222A2A8 */ _t511 = cpu->r[11] + 0x00006344u;
|
|
/* 0222A2A8 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t511);
|
|
/* 0222A2A8 */ cpu->r[11] = _t511;
|
|
/* 0222A2AC */ _t512 = cpu->r[1] + 0x000000A8u;
|
|
/* 0222A2AC */ rbrew_write_f32(cpu->mem, _t512, cpu->f[11]);
|
|
/* 0222A2B0 */ _t513 = cpu->r[1] + 0x00000048u;
|
|
/* 0222A2B0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t513);
|
|
/* 0222A2B4 */ _t514 = cpu->r[1] + 0x000000B0u;
|
|
/* 0222A2B4 */ rbrew_write_f32(cpu->mem, _t514, cpu->f[13]);
|
|
/* 0222A2B8 */ _t515 = cpu->r[1] + 0x000000A4u;
|
|
/* 0222A2B8 */ rbrew_write_f32(cpu->mem, _t515, cpu->f[11]);
|
|
/* 0222A2BC */ _t516 = cpu->r[11] + 0x00000004u;
|
|
/* 0222A2BC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t516);
|
|
/* 0222A2C0 */ _t517 = cpu->r[1] + 0x00000084u;
|
|
/* 0222A2C0 */ rbrew_write_f32(cpu->mem, _t517, cpu->f[8]);
|
|
/* 0222A2C4 */ _t518 = cpu->r[1] + 0x00000088u;
|
|
/* 0222A2C4 */ rbrew_write_f32(cpu->mem, _t518, cpu->f[10]);
|
|
/* 0222A2C8 */ _t519 = cpu->r[29] + 0x00000078u;
|
|
/* 0222A2C8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t519);
|
|
/* 0222A2CC */ _t520 = cpu->r[1] + 0x00000044u;
|
|
/* 0222A2CC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t520);
|
|
/* 0222A2D0 */ cpu->r[4] = 0x10050000u;
|
|
/* 0222A2D4 */ _t521 = cpu->r[1] + 0x00000094u;
|
|
/* 0222A2D4 */ rbrew_write_f32(cpu->mem, _t521, cpu->f[28]);
|
|
/* 0222A2D8 */ cpu->r[4] = cpu->r[4] + 0x000000FCu;
|
|
/* 0222A2DC */ _t522 = cpu->r[1] + 0x000000A0u;
|
|
/* 0222A2DC */ rbrew_write_f32(cpu->mem, _t522, cpu->f[9]);
|
|
/* 0222A2E0 */ cpu->r[5] = 0x00000203u;
|
|
/* 0222A2E4 */ _t523 = cpu->r[1] + 0x00000090u;
|
|
/* 0222A2E4 */ rbrew_write_f32(cpu->mem, _t523, cpu->f[29]);
|
|
/* 0222A2E8 */ cpu->r[3] = cpu->r[1] + 0x00000084u;
|
|
/* 0222A2EC */ _t524 = cpu->r[1] + 0x000000ACu;
|
|
/* 0222A2EC */ rbrew_write_f32(cpu->mem, _t524, cpu->f[12]);
|
|
/* 0222A2F0 */ _t525 = cpu->r[11] + 0x00000008u;
|
|
/* 0222A2F0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t525);
|
|
/* 0222A2F4 */ _t526 = cpu->r[1] + 0x00000098u;
|
|
/* 0222A2F4 */ rbrew_write_f32(cpu->mem, _t526, cpu->f[27]);
|
|
/* 0222A2F8 */ _t527 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0222A2F8 */ rbrew_write_f32(cpu->mem, _t527, cpu->f[12]);
|
|
/* 0222A2FC */ Gambit_fn_0204D380(cpu);
|
|
/* 0222A300 */ _t528 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0222A300 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t528);
|
|
/* 0222A304 */ _t529 = cpu->r[1] + 0x00000090u;
|
|
/* 0222A304 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t529);
|
|
/* 0222A308 */ _t530 = cpu->r[1] + 0x0000009Cu;
|
|
/* 0222A308 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t530);
|
|
/* 0222A30C */ _t531 = cpu->r[1] + 0x00000084u;
|
|
/* 0222A30C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t531);
|
|
/* 0222A310 */ _t532 = cpu->r[1] + 0x000000DCu;
|
|
/* 0222A310 */ rbrew_write_f32(cpu->mem, _t532, cpu->f[7]);
|
|
/* 0222A314 */ _t533 = cpu->r[1] + 0x000000D8u;
|
|
/* 0222A314 */ rbrew_write_f32(cpu->mem, _t533, cpu->f[0]);
|
|
/* 0222A318 */ _t534 = cpu->r[1] + 0x00000094u;
|
|
/* 0222A318 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t534);
|
|
/* 0222A31C */ _t535 = cpu->r[1] + 0x000000A8u;
|
|
/* 0222A31C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t535);
|
|
/* 0222A320 */ _t536 = cpu->r[1] + 0x00000088u;
|
|
/* 0222A320 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t536);
|
|
/* 0222A324 */ _t537 = cpu->r[1] + 0x000000E4u;
|
|
/* 0222A324 */ rbrew_write_f32(cpu->mem, _t537, cpu->f[0]);
|
|
/* 0222A328 */ _t538 = cpu->r[1] + 0x000000E8u;
|
|
/* 0222A328 */ rbrew_write_f32(cpu->mem, _t538, cpu->f[7]);
|
|
/* 0222A32C */ _t539 = cpu->r[1] + 0x000000E0u;
|
|
/* 0222A32C */ rbrew_write_f32(cpu->mem, _t539, cpu->f[11]);
|
|
/* 0222A330 */ _t540 = cpu->r[1] + 0x000000ACu;
|
|
/* 0222A330 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t540);
|
|
/* 0222A334 */ _t541 = cpu->r[1] + 0x000000A4u;
|
|
/* 0222A334 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t541);
|
|
/* 0222A338 */ _t542 = cpu->r[1] + 0x000000F4u;
|
|
/* 0222A338 */ rbrew_write_f32(cpu->mem, _t542, cpu->f[11]);
|
|
/* 0222A33C */ _t543 = cpu->r[1] + 0x00000100u;
|
|
/* 0222A33C */ rbrew_write_f32(cpu->mem, _t543, cpu->f[7]);
|
|
/* 0222A340 */ _t544 = cpu->r[1] + 0x00000108u;
|
|
/* 0222A340 */ cpu->r[31] = rbrew_read32(cpu->mem, _t544);
|
|
/* 0222A344 */ _t545 = cpu->r[1] + 0x000000B0u;
|
|
/* 0222A344 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t545);
|
|
/* 0222A348 */ _t546 = cpu->r[1] + 0x000000A0u;
|
|
/* 0222A348 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t546);
|
|
/* 0222A34C */ _t547 = cpu->r[1] + 0x00000104u;
|
|
/* 0222A34C */ rbrew_write_f32(cpu->mem, _t547, cpu->f[8]);
|
|
/* 0222A350 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0222A354 */ _t548 = cpu->r[1] + 0x000000F0u;
|
|
/* 0222A354 */ rbrew_write_f32(cpu->mem, _t548, cpu->f[10]);
|
|
/* 0222A358 */ _t549 = cpu->r[1] + 0x000000ECu;
|
|
/* 0222A358 */ rbrew_write_f32(cpu->mem, _t549, cpu->f[9]);
|
|
/* 0222A35C */ _t550 = cpu->r[1] + 0x00000098u;
|
|
/* 0222A35C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t550);
|
|
/* 0222A360 */ _t551 = cpu->r[1] + 0x000000F8u;
|
|
/* 0222A360 */ rbrew_write_f32(cpu->mem, _t551, cpu->f[12]);
|
|
/* 0222A364 */ _t552 = cpu->r[1] + 0x000000FCu;
|
|
/* 0222A364 */ rbrew_write_f32(cpu->mem, _t552, cpu->f[0]);
|
|
/* 0222A368 */ _t553 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222A368 */ _t554 = _t553 & 0x00000001u;
|
|
/* 0222A368 */ if (_t554) goto L_0222A6C4; else goto L_0222A36C;
|
|
L_0222A36C: ; // 0x222a36c
|
|
/* 0222A36C */ _t555 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0222A36C */ cpu->r[5] = rbrew_read32(cpu->mem, _t555);
|
|
/* 0222A370 */ _t556 = cpu->r[1] + 0x0000010Cu;
|
|
/* 0222A370 */ cpu->r[6] = rbrew_read32(cpu->mem, _t556);
|
|
/* 0222A374 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[6]);
|
|
/* 0222A378 */ _t557 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222A378 */ _t558 = _t557 & 0x00000001u;
|
|
/* 0222A378 */ if (_t558) goto L_0222A37C; else goto L_0222A6C4;
|
|
L_0222A37C: ; // 0x222a37c
|
|
/* 0222A37C */ cpu->r[3] = cpu->r[1] + 0x000000D8u;
|
|
/* 0222A380 */ cpu->r[4] = cpu->r[31] + 0x0000007Cu;
|
|
/* 0222A384 */ Gambit_fn_02C69510(cpu);
|
|
/* 0222A388 */ _t559 = cpu->r[31] + 0x0000012Cu;
|
|
/* 0222A388 */ cpu->r[7] = rbrew_read32(cpu->mem, _t559);
|
|
/* 0222A38C */ _t560 = cpu->r[31] + 0x00000074u;
|
|
/* 0222A38C */ rbrew_write_f32(cpu->mem, _t560, cpu->f[30]);
|
|
/* 0222A390 */ _t561 = cpu->r[31] + 0x00000078u;
|
|
/* 0222A390 */ rbrew_write_f32(cpu->mem, _t561, cpu->f[30]);
|
|
/* 0222A394 */ cpu->r[7] = cpu->r[7] | 0x00000008u;
|
|
/* 0222A398 */ _t562 = cpu->r[31] + 0x00000070u;
|
|
/* 0222A398 */ rbrew_write_f32(cpu->mem, _t562, cpu->f[30]);
|
|
/* 0222A39C */ _t563 = cpu->r[31] + 0x0000012Cu;
|
|
/* 0222A39C */ rbrew_write32(cpu->mem, _t563, cpu->r[7]);
|
|
/* 0222A3A0 */ _t564 = cpu->r[29] + 0x00000004u;
|
|
/* 0222A3A0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t564);
|
|
/* 0222A3A4 */ _t565 = cpu->r[8] + 0x00000404u;
|
|
/* 0222A3A4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t565);
|
|
/* 0222A3A8 */ cpu->ctr = cpu->r[9];
|
|
/* 0222A3AC */ cpu->r[3] = cpu->r[29];
|
|
/* 0222A3B0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222A3B4 */ _t566 = cpu->r[29] + 0x00000004u;
|
|
/* 0222A3B4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t566);
|
|
/* 0222A3B8 */ _t567 = cpu->r[10] + 0x0000039Cu;
|
|
/* 0222A3B8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t567);
|
|
/* 0222A3BC */ cpu->ctr = cpu->r[12];
|
|
/* 0222A3C0 */ cpu->r[3] = cpu->r[29];
|
|
/* 0222A3C4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222A3C8 */ goto L_0222A6EC;
|
|
L_0222A3CC: ; // 0x222a3cc
|
|
/* 0222A3CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000016u);
|
|
/* 0222A3D0 */ _t568 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222A3D0 */ _t569 = _t568 & 0x00000001u;
|
|
/* 0222A3D0 */ if (_t569) goto L_0222A3D4; else goto L_0222A6C4;
|
|
L_0222A3D4: ; // 0x222a3d4
|
|
/* 0222A3D4 */ _t570 = cpu->r[29] + 0x00000004u;
|
|
/* 0222A3D4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t570);
|
|
/* 0222A3D8 */ _t571 = cpu->r[8] + 0x0000025Cu;
|
|
/* 0222A3D8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t571);
|
|
/* 0222A3DC */ cpu->ctr = cpu->r[9];
|
|
/* 0222A3E0 */ cpu->r[3] = cpu->r[29];
|
|
/* 0222A3E4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222A3E8 */ _t572 = cpu->r[3] + 0x00000000u;
|
|
/* 0222A3E8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t572);
|
|
/* 0222A3EC */ _t573 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0222A3EC */ rbrew_write32(cpu->mem, _t573, cpu->r[11]);
|
|
/* 0222A3F0 */ _t574 = cpu->r[3] + 0x00000004u;
|
|
/* 0222A3F0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t574);
|
|
/* 0222A3F4 */ _t575 = cpu->r[1] + 0x00000050u;
|
|
/* 0222A3F4 */ rbrew_write32(cpu->mem, _t575, cpu->r[12]);
|
|
/* 0222A3F8 */ _t576 = cpu->r[3] + 0x00000008u;
|
|
/* 0222A3F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t576);
|
|
/* 0222A3FC */ _t577 = cpu->r[1] + 0x00000050u;
|
|
/* 0222A3FC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t577);
|
|
/* 0222A400 */ _t578 = cpu->r[1] + 0x00000054u;
|
|
/* 0222A400 */ rbrew_write32(cpu->mem, _t578, cpu->r[0]);
|
|
/* 0222A404 */ cpu->f[9] = cpu->f[10] * cpu->f[10];
|
|
/* 0222A408 */ _t579 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0222A408 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t579);
|
|
/* 0222A40C */ _t580 = cpu->r[1] + 0x00000054u;
|
|
/* 0222A40C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t580);
|
|
/* 0222A410 */ cpu->f[11] = fma(cpu->f[6], cpu->f[6], cpu->f[9]);
|
|
/* 0222A414 */ cpu->f[0] = fma(cpu->f[7], cpu->f[7], cpu->f[11]);
|
|
/* 0222A418 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[31]);
|
|
/* 0222A41C */ _t581 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0222A41C */ _t582 = _t581 & 0x00000001u;
|
|
/* 0222A41C */ if (_t582) goto L_0222A420; else goto L_0222A458;
|
|
L_0222A420: ; // 0x222a420
|
|
/* 0222A420 */ cpu->r[8] = 0x10050000u;
|
|
/* 0222A424 */ _t583 = cpu->r[8] + 0x000000A4u;
|
|
/* 0222A424 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t583);
|
|
/* 0222A428 */ _ft584 = sqrt(cpu->f[0]);
|
|
/* 0222A428 */ _ft585 = (double)(int32_t)0x00000001u;
|
|
/* 0222A428 */ cpu->f[13] = _ft585 / _ft584;
|
|
/* 0222A42C */ cpu->f[7] = cpu->f[13] * cpu->f[13];
|
|
/* 0222A430 */ cpu->f[9] = cpu->f[13] * cpu->f[29];
|
|
/* 0222A434 */ cpu->f[7] = -fma(cpu->f[7], cpu->f[0], -(cpu->f[8]));
|
|
/* 0222A438 */ cpu->f[13] = cpu->f[7] * cpu->f[9];
|
|
/* 0222A43C */ /* nop */
|
|
/* 0222A440 */ _t586 = cpu->r[1] + 0x00000054u;
|
|
/* 0222A440 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t586);
|
|
/* 0222A444 */ /* nop */
|
|
/* 0222A448 */ cpu->f[9] = cpu->f[9] * cpu->f[13];
|
|
/* 0222A44C */ /* nop */
|
|
/* 0222A450 */ cpu->f[0] = cpu->f[0] * cpu->f[13];
|
|
/* 0222A454 */ _t587 = cpu->r[1] + 0x00000054u;
|
|
/* 0222A454 */ rbrew_write_f32(cpu->mem, _t587, cpu->f[9]);
|
|
L_0222A458: ; // 0x222a458
|
|
/* 0222A458 */ cpu->r[5] = 0x10050000u;
|
|
/* 0222A45C */ _t588 = cpu->r[5] + 0x000000B0u;
|
|
/* 0222A45C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t588);
|
|
/* 0222A460 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[0]);
|
|
/* 0222A464 */ _t589 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0222A464 */ _t590 = _t589 & 0x00000001u;
|
|
/* 0222A464 */ if (_t590) goto L_0222A470; else goto L_0222A468;
|
|
L_0222A468: ; // 0x222a468
|
|
/* 0222A468 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[29]);
|
|
/* 0222A46C */ _t591 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0222A46C */ _t592 = _t591 & 0x00000001u;
|
|
/* 0222A46C */ if (_t592) goto L_0222A470; else goto L_0222A4C0;
|
|
L_0222A470: ; // 0x222a470
|
|
/* 0222A470 */ _t593 = cpu->r[1] + 0x00000034u;
|
|
/* 0222A470 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t593);
|
|
/* 0222A474 */ _t594 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0222A474 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t594);
|
|
/* 0222A478 */ _t595 = cpu->r[1] + 0x00000038u;
|
|
/* 0222A478 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t595);
|
|
/* 0222A47C */ _t596 = cpu->r[31] + 0x00000000u;
|
|
/* 0222A47C */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t596);
|
|
/* 0222A480 */ _t597 = cpu->r[31] + 0x00000004u;
|
|
/* 0222A480 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t597);
|
|
/* 0222A484 */ _t598 = cpu->r[31] + 0x00000008u;
|
|
/* 0222A484 */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t598);
|
|
/* 0222A488 */ _t599 = cpu->r[29] + 0x0000006Cu;
|
|
/* 0222A488 */ rbrew_write_f32(cpu->mem, _t599, cpu->f[28]);
|
|
/* 0222A48C */ _t600 = cpu->r[29] + 0x00000070u;
|
|
/* 0222A48C */ rbrew_write_f32(cpu->mem, _t600, cpu->f[27]);
|
|
/* 0222A490 */ _t601 = cpu->r[29] + 0x00000078u;
|
|
/* 0222A490 */ rbrew_write_f32(cpu->mem, _t601, cpu->f[13]);
|
|
/* 0222A494 */ _t602 = cpu->r[29] + 0x0000007Cu;
|
|
/* 0222A494 */ rbrew_write_f32(cpu->mem, _t602, cpu->f[6]);
|
|
/* 0222A498 */ _t603 = cpu->r[29] + 0x00000004u;
|
|
/* 0222A498 */ cpu->r[10] = rbrew_read32(cpu->mem, _t603);
|
|
/* 0222A49C */ _t604 = cpu->r[29] + 0x00000068u;
|
|
/* 0222A49C */ rbrew_write_f32(cpu->mem, _t604, cpu->f[29]);
|
|
/* 0222A4A0 */ _t605 = cpu->r[29] + 0x00000074u;
|
|
/* 0222A4A0 */ rbrew_write_f32(cpu->mem, _t605, cpu->f[11]);
|
|
/* 0222A4A4 */ _t606 = cpu->r[10] + 0x00000294u;
|
|
/* 0222A4A4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t606);
|
|
/* 0222A4A8 */ cpu->ctr = cpu->r[11];
|
|
/* 0222A4AC */ cpu->r[3] = cpu->r[29];
|
|
/* 0222A4B0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222A4B4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], 0x00000001u);
|
|
/* 0222A4B8 */ _t607 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222A4B8 */ _t608 = _t607 & 0x00000001u;
|
|
/* 0222A4B8 */ if (_t608) goto L_0222A4BC; else goto L_0222A6C4;
|
|
L_0222A4BC: ; // 0x222a4bc
|
|
/* 0222A4BC */ goto L_0222A554;
|
|
L_0222A4C0: ; // 0x222a4c0
|
|
/* 0222A4C0 */ _t609 = cpu->r[31] + 0x00000000u;
|
|
/* 0222A4C0 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t609);
|
|
/* 0222A4C4 */ _t610 = cpu->r[31] + 0x00000004u;
|
|
/* 0222A4C4 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t610);
|
|
/* 0222A4C8 */ cpu->f[10] = -cpu->f[29];
|
|
/* 0222A4CC */ _t611 = cpu->r[31] + 0x00000008u;
|
|
/* 0222A4CC */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t611);
|
|
/* 0222A4D0 */ cpu->f[11] = -cpu->f[28];
|
|
/* 0222A4D4 */ _t612 = cpu->r[29] + 0x0000006Cu;
|
|
/* 0222A4D4 */ rbrew_write_f32(cpu->mem, _t612, cpu->f[28]);
|
|
/* 0222A4D8 */ _t613 = cpu->r[1] + 0x000000CCu;
|
|
/* 0222A4D8 */ rbrew_write_f32(cpu->mem, _t613, cpu->f[10]);
|
|
/* 0222A4DC */ _t614 = cpu->r[1] + 0x000000CCu;
|
|
/* 0222A4DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t614);
|
|
/* 0222A4E0 */ _t615 = cpu->r[1] + 0x000000D0u;
|
|
/* 0222A4E0 */ rbrew_write_f32(cpu->mem, _t615, cpu->f[11]);
|
|
/* 0222A4E4 */ _t616 = cpu->r[1] + 0x000000D0u;
|
|
/* 0222A4E4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t616);
|
|
/* 0222A4E8 */ cpu->f[12] = -cpu->f[27];
|
|
/* 0222A4EC */ _t617 = cpu->r[1] + 0x0000012Cu;
|
|
/* 0222A4EC */ rbrew_write32(cpu->mem, _t617, cpu->r[0]);
|
|
/* 0222A4F0 */ _t618 = cpu->r[1] + 0x0000012Cu;
|
|
/* 0222A4F0 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t618);
|
|
/* 0222A4F4 */ _t619 = cpu->r[1] + 0x00000130u;
|
|
/* 0222A4F4 */ rbrew_write32(cpu->mem, _t619, cpu->r[4]);
|
|
/* 0222A4F8 */ _t620 = cpu->r[1] + 0x00000130u;
|
|
/* 0222A4F8 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t620);
|
|
/* 0222A4FC */ _t621 = cpu->r[1] + 0x000000D4u;
|
|
/* 0222A4FC */ rbrew_write_f32(cpu->mem, _t621, cpu->f[12]);
|
|
/* 0222A500 */ _t622 = cpu->r[1] + 0x000000D4u;
|
|
/* 0222A500 */ cpu->r[0] = rbrew_read32(cpu->mem, _t622);
|
|
/* 0222A504 */ _t623 = cpu->r[1] + 0x00000038u;
|
|
/* 0222A504 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t623);
|
|
/* 0222A508 */ _t624 = cpu->r[1] + 0x00000134u;
|
|
/* 0222A508 */ rbrew_write32(cpu->mem, _t624, cpu->r[0]);
|
|
/* 0222A50C */ _t625 = cpu->r[1] + 0x00000134u;
|
|
/* 0222A50C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t625);
|
|
/* 0222A510 */ _t626 = cpu->r[29] + 0x00000070u;
|
|
/* 0222A510 */ rbrew_write_f32(cpu->mem, _t626, cpu->f[27]);
|
|
/* 0222A514 */ _t627 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0222A514 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t627);
|
|
/* 0222A518 */ _t628 = cpu->r[29] + 0x00000078u;
|
|
/* 0222A518 */ rbrew_write_f32(cpu->mem, _t628, cpu->f[13]);
|
|
/* 0222A51C */ _t629 = cpu->r[29] + 0x0000007Cu;
|
|
/* 0222A51C */ rbrew_write_f32(cpu->mem, _t629, cpu->f[6]);
|
|
/* 0222A520 */ _t630 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0222A520 */ rbrew_write_f32(cpu->mem, _t630, cpu->f[8]);
|
|
/* 0222A524 */ _t631 = cpu->r[1] + 0x00000034u;
|
|
/* 0222A524 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t631);
|
|
/* 0222A528 */ _t632 = cpu->r[29] + 0x00000068u;
|
|
/* 0222A528 */ rbrew_write_f32(cpu->mem, _t632, cpu->f[29]);
|
|
/* 0222A52C */ _t633 = cpu->r[29] + 0x00000074u;
|
|
/* 0222A52C */ rbrew_write_f32(cpu->mem, _t633, cpu->f[11]);
|
|
/* 0222A530 */ _t634 = cpu->r[29] + 0x00000004u;
|
|
/* 0222A530 */ cpu->r[10] = rbrew_read32(cpu->mem, _t634);
|
|
/* 0222A534 */ _t635 = cpu->r[1] + 0x00000054u;
|
|
/* 0222A534 */ rbrew_write_f32(cpu->mem, _t635, cpu->f[10]);
|
|
/* 0222A538 */ _t636 = cpu->r[1] + 0x00000050u;
|
|
/* 0222A538 */ rbrew_write_f32(cpu->mem, _t636, cpu->f[9]);
|
|
/* 0222A53C */ _t637 = cpu->r[10] + 0x00000294u;
|
|
/* 0222A53C */ cpu->r[11] = rbrew_read32(cpu->mem, _t637);
|
|
/* 0222A540 */ cpu->ctr = cpu->r[11];
|
|
/* 0222A544 */ cpu->r[3] = cpu->r[29];
|
|
/* 0222A548 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222A54C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], 0x00000001u);
|
|
/* 0222A550 */ _t638 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222A550 */ _t639 = _t638 & 0x00000001u;
|
|
/* 0222A550 */ if (_t639) goto L_0222A554; else goto L_0222A6C4;
|
|
L_0222A554: ; // 0x222a554
|
|
/* 0222A554 */ _t640 = cpu->r[29] + 0x00000030u;
|
|
/* 0222A554 */ cpu->r[31] = rbrew_read32(cpu->mem, _t640);
|
|
/* 0222A558 */ cpu->r[4] = 0x00000001u;
|
|
/* 0222A55C */ cpu->r[3] = cpu->r[31];
|
|
/* 0222A560 */ Gambit_fn_027B9B00(cpu);
|
|
/* 0222A564 */ cpu->r[3] = cpu->r[31];
|
|
/* 0222A568 */ cpu->r[4] = 0x00000007u;
|
|
/* 0222A56C */ cpu->r[5] = 0x00000001u;
|
|
/* 0222A570 */ Gambit_fn_027B8224(cpu);
|
|
/* 0222A574 */ _t641 = cpu->r[29] + 0x00000114u;
|
|
/* 0222A574 */ cpu->r[0] = rbrew_read32(cpu->mem, _t641);
|
|
/* 0222A578 */ cpu->r[3] = cpu->r[31];
|
|
/* 0222A57C */ cpu->r[5] = rbrew_rlwinm(cpu->r[0], 0x00000014u, 0x00000000u, 0x0000000Bu);
|
|
/* 0222A580 */ cpu->r[4] = 0x00000002u;
|
|
/* 0222A584 */ /* nop */
|
|
/* 0222A588 */ Gambit_fn_027B8224(cpu);
|
|
/* 0222A58C */ _t642 = cpu->r[1] + 0x00000108u;
|
|
/* 0222A58C */ rbrew_write32(cpu->mem, _t642, cpu->r[30]);
|
|
/* 0222A590 */ cpu->r[4] = cpu->r[1] + 0x00000108u;
|
|
/* 0222A594 */ cpu->r[8] = 0x10050000u;
|
|
/* 0222A598 */ _t643 = cpu->r[1] + 0x0000010Cu;
|
|
/* 0222A598 */ rbrew_write32(cpu->mem, _t643, cpu->r[30]);
|
|
/* 0222A59C */ cpu->r[6] = 0x00000000u;
|
|
/* 0222A5A0 */ cpu->r[8] = cpu->r[8] + 0x00000074u;
|
|
/* 0222A5A4 */ cpu->r[5] = 0x10050000u;
|
|
/* 0222A5A8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0222A5AC */ _t644 = cpu->r[1] + 0x00000110u;
|
|
/* 0222A5AC */ rbrew_write32(cpu->mem, _t644, cpu->r[8]);
|
|
/* 0222A5B0 */ cpu->r[5] = cpu->r[5] + 0x000000C8u;
|
|
/* 0222A5B4 */ Gambit_fn_027B72F0(cpu);
|
|
/* 0222A5B8 */ _t645 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0222A5B8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t645);
|
|
/* 0222A5BC */ _t646 = cpu->r[1] + 0x00000054u;
|
|
/* 0222A5BC */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t646);
|
|
/* 0222A5C0 */ _t647 = cpu->r[1] + 0x0000009Cu;
|
|
/* 0222A5C0 */ rbrew_write_f32(cpu->mem, _t647, cpu->f[13]);
|
|
/* 0222A5C4 */ _t648 = cpu->r[29] + 0x00000074u;
|
|
/* 0222A5C4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t648);
|
|
/* 0222A5C8 */ _t649 = cpu->r[1] + 0x00000050u;
|
|
/* 0222A5C8 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t649);
|
|
/* 0222A5CC */ _t650 = cpu->r[1] + 0x000000A8u;
|
|
/* 0222A5CC */ rbrew_write_f32(cpu->mem, _t650, cpu->f[13]);
|
|
/* 0222A5D0 */ _t651 = cpu->r[29] + 0x00000078u;
|
|
/* 0222A5D0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t651);
|
|
/* 0222A5D4 */ _t652 = cpu->r[29] + 0x0000007Cu;
|
|
/* 0222A5D4 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t652);
|
|
/* 0222A5D8 */ cpu->r[11] = 0x101F0000u;
|
|
/* 0222A5DC */ _t653 = cpu->r[1] + 0x000000A0u;
|
|
/* 0222A5DC */ rbrew_write_f32(cpu->mem, _t653, cpu->f[6]);
|
|
/* 0222A5E0 */ _t654 = cpu->r[1] + 0x00000090u;
|
|
/* 0222A5E0 */ rbrew_write_f32(cpu->mem, _t654, cpu->f[29]);
|
|
/* 0222A5E4 */ _t655 = cpu->r[1] + 0x000000B0u;
|
|
/* 0222A5E4 */ rbrew_write_f32(cpu->mem, _t655, cpu->f[7]);
|
|
/* 0222A5E8 */ _t656 = cpu->r[11] + 0x00006344u;
|
|
/* 0222A5E8 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t656);
|
|
/* 0222A5E8 */ cpu->r[11] = _t656;
|
|
/* 0222A5EC */ _t657 = cpu->r[11] + 0x00000004u;
|
|
/* 0222A5EC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t657);
|
|
/* 0222A5F0 */ cpu->r[5] = 0x00000229u;
|
|
/* 0222A5F4 */ _t658 = cpu->r[11] + 0x00000008u;
|
|
/* 0222A5F4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t658);
|
|
/* 0222A5F8 */ _t659 = cpu->r[1] + 0x000000A4u;
|
|
/* 0222A5F8 */ rbrew_write_f32(cpu->mem, _t659, cpu->f[8]);
|
|
/* 0222A5FC */ _t660 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0222A5FC */ rbrew_write_f32(cpu->mem, _t660, cpu->f[11]);
|
|
/* 0222A600 */ cpu->r[4] = 0x10050000u;
|
|
/* 0222A604 */ _t661 = cpu->r[1] + 0x000000ACu;
|
|
/* 0222A604 */ rbrew_write_f32(cpu->mem, _t661, cpu->f[0]);
|
|
/* 0222A608 */ cpu->r[3] = cpu->r[1] + 0x00000084u;
|
|
/* 0222A60C */ _t662 = cpu->r[1] + 0x00000084u;
|
|
/* 0222A60C */ rbrew_write_f32(cpu->mem, _t662, cpu->f[6]);
|
|
/* 0222A610 */ _t663 = cpu->r[1] + 0x00000098u;
|
|
/* 0222A610 */ rbrew_write_f32(cpu->mem, _t663, cpu->f[27]);
|
|
/* 0222A614 */ _t664 = cpu->r[1] + 0x00000094u;
|
|
/* 0222A614 */ rbrew_write_f32(cpu->mem, _t664, cpu->f[28]);
|
|
/* 0222A618 */ cpu->r[4] = cpu->r[4] + 0x000000FCu;
|
|
/* 0222A61C */ _t665 = cpu->r[1] + 0x00000088u;
|
|
/* 0222A61C */ rbrew_write_f32(cpu->mem, _t665, cpu->f[9]);
|
|
/* 0222A620 */ Gambit_fn_0204D380(cpu);
|
|
/* 0222A624 */ _t666 = cpu->r[1] + 0x00000090u;
|
|
/* 0222A624 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t666);
|
|
/* 0222A628 */ _t667 = cpu->r[1] + 0x00000108u;
|
|
/* 0222A628 */ cpu->r[31] = rbrew_read32(cpu->mem, _t667);
|
|
/* 0222A62C */ _t668 = cpu->r[1] + 0x000000DCu;
|
|
/* 0222A62C */ rbrew_write_f32(cpu->mem, _t668, cpu->f[10]);
|
|
/* 0222A630 */ _t669 = cpu->r[1] + 0x00000094u;
|
|
/* 0222A630 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t669);
|
|
/* 0222A634 */ _t670 = cpu->r[1] + 0x000000A8u;
|
|
/* 0222A634 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t670);
|
|
/* 0222A638 */ _t671 = cpu->r[1] + 0x000000ECu;
|
|
/* 0222A638 */ rbrew_write_f32(cpu->mem, _t671, cpu->f[10]);
|
|
/* 0222A63C */ _t672 = cpu->r[1] + 0x000000E4u;
|
|
/* 0222A63C */ rbrew_write_f32(cpu->mem, _t672, cpu->f[6]);
|
|
/* 0222A640 */ _t673 = cpu->r[1] + 0x00000084u;
|
|
/* 0222A640 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t673);
|
|
/* 0222A644 */ _t674 = cpu->r[1] + 0x0000009Cu;
|
|
/* 0222A644 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t674);
|
|
/* 0222A648 */ _t675 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0222A648 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t675);
|
|
/* 0222A64C */ _t676 = cpu->r[1] + 0x000000D8u;
|
|
/* 0222A64C */ rbrew_write_f32(cpu->mem, _t676, cpu->f[13]);
|
|
/* 0222A650 */ _t677 = cpu->r[1] + 0x000000F8u;
|
|
/* 0222A650 */ rbrew_write_f32(cpu->mem, _t677, cpu->f[6]);
|
|
/* 0222A654 */ _t678 = cpu->r[1] + 0x000000E0u;
|
|
/* 0222A654 */ rbrew_write_f32(cpu->mem, _t678, cpu->f[11]);
|
|
/* 0222A658 */ _t679 = cpu->r[1] + 0x000000A0u;
|
|
/* 0222A658 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t679);
|
|
/* 0222A65C */ _t680 = cpu->r[1] + 0x00000088u;
|
|
/* 0222A65C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t680);
|
|
/* 0222A660 */ _t681 = cpu->r[1] + 0x000000ACu;
|
|
/* 0222A660 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t681);
|
|
/* 0222A664 */ _t682 = cpu->r[1] + 0x000000E8u;
|
|
/* 0222A664 */ rbrew_write_f32(cpu->mem, _t682, cpu->f[8]);
|
|
/* 0222A668 */ _t683 = cpu->r[1] + 0x000000F4u;
|
|
/* 0222A668 */ rbrew_write_f32(cpu->mem, _t683, cpu->f[12]);
|
|
/* 0222A66C */ _t684 = cpu->r[1] + 0x000000B0u;
|
|
/* 0222A66C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t684);
|
|
/* 0222A670 */ _t685 = cpu->r[1] + 0x000000F0u;
|
|
/* 0222A670 */ rbrew_write_f32(cpu->mem, _t685, cpu->f[11]);
|
|
/* 0222A674 */ _t686 = cpu->r[1] + 0x00000104u;
|
|
/* 0222A674 */ rbrew_write_f32(cpu->mem, _t686, cpu->f[12]);
|
|
/* 0222A678 */ _t687 = cpu->r[1] + 0x00000098u;
|
|
/* 0222A678 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t687);
|
|
/* 0222A67C */ _t688 = cpu->r[1] + 0x000000A4u;
|
|
/* 0222A67C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t688);
|
|
/* 0222A680 */ _t689 = cpu->r[1] + 0x000000FCu;
|
|
/* 0222A680 */ rbrew_write_f32(cpu->mem, _t689, cpu->f[8]);
|
|
/* 0222A684 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0222A688 */ _t690 = cpu->r[1] + 0x00000100u;
|
|
/* 0222A688 */ rbrew_write_f32(cpu->mem, _t690, cpu->f[11]);
|
|
/* 0222A68C */ _t691 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222A68C */ _t692 = _t691 & 0x00000001u;
|
|
/* 0222A68C */ if (_t692) goto L_0222A6C4; else goto L_0222A690;
|
|
L_0222A690: ; // 0x222a690
|
|
/* 0222A690 */ _t693 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0222A690 */ cpu->r[0] = rbrew_read32(cpu->mem, _t693);
|
|
/* 0222A694 */ _t694 = cpu->r[1] + 0x0000010Cu;
|
|
/* 0222A694 */ cpu->r[4] = rbrew_read32(cpu->mem, _t694);
|
|
/* 0222A698 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[4]);
|
|
/* 0222A69C */ _t695 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222A69C */ _t696 = _t695 & 0x00000001u;
|
|
/* 0222A69C */ if (_t696) goto L_0222A6A0; else goto L_0222A6C4;
|
|
L_0222A6A0: ; // 0x222a6a0
|
|
/* 0222A6A0 */ cpu->r[3] = cpu->r[1] + 0x000000D8u;
|
|
/* 0222A6A4 */ cpu->r[4] = cpu->r[31] + 0x0000007Cu;
|
|
/* 0222A6A8 */ Gambit_fn_02C69510(cpu);
|
|
/* 0222A6AC */ _t697 = cpu->r[31] + 0x0000012Cu;
|
|
/* 0222A6AC */ cpu->r[5] = rbrew_read32(cpu->mem, _t697);
|
|
/* 0222A6B0 */ _t698 = cpu->r[31] + 0x00000074u;
|
|
/* 0222A6B0 */ rbrew_write_f32(cpu->mem, _t698, cpu->f[30]);
|
|
/* 0222A6B4 */ _t699 = cpu->r[31] + 0x00000078u;
|
|
/* 0222A6B4 */ rbrew_write_f32(cpu->mem, _t699, cpu->f[30]);
|
|
/* 0222A6B8 */ cpu->r[5] = cpu->r[5] | 0x00000008u;
|
|
/* 0222A6BC */ _t700 = cpu->r[31] + 0x00000070u;
|
|
/* 0222A6BC */ rbrew_write_f32(cpu->mem, _t700, cpu->f[30]);
|
|
/* 0222A6C0 */ _t701 = cpu->r[31] + 0x0000012Cu;
|
|
/* 0222A6C0 */ rbrew_write32(cpu->mem, _t701, cpu->r[5]);
|
|
L_0222A6C4: ; // 0x222a6c4
|
|
/* 0222A6C4 */ _t702 = cpu->r[29] + 0x00000004u;
|
|
/* 0222A6C4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t702);
|
|
/* 0222A6C8 */ _t703 = cpu->r[8] + 0x00000404u;
|
|
/* 0222A6C8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t703);
|
|
/* 0222A6CC */ cpu->ctr = cpu->r[9];
|
|
/* 0222A6D0 */ cpu->r[3] = cpu->r[29];
|
|
/* 0222A6D4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222A6D8 */ _t704 = cpu->r[29] + 0x00000004u;
|
|
/* 0222A6D8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t704);
|
|
/* 0222A6DC */ _t705 = cpu->r[10] + 0x0000039Cu;
|
|
/* 0222A6DC */ cpu->r[12] = rbrew_read32(cpu->mem, _t705);
|
|
/* 0222A6E0 */ cpu->ctr = cpu->r[12];
|
|
/* 0222A6E4 */ cpu->r[3] = cpu->r[29];
|
|
/* 0222A6E8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0222A6EC: ; // 0x222a6ec
|
|
/* 0222A6EC */ cpu->r[3] = 0x00000001u;
|
|
L_0222A6F0: ; // 0x222a6f0
|
|
/* 0222A6F0 */ /* nop */
|
|
/* 0222A6F4 */ _t706 = cpu->r[1] + 0x000001A8u;
|
|
/* 0222A6F4 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t706);
|
|
/* 0222A6F8 */ _t707 = cpu->r[1] + 0x00000188u;
|
|
/* 0222A6F8 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t707);
|
|
/* 0222A6FC */ _t708 = cpu->r[1] + 0x000001A0u;
|
|
/* 0222A6FC */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t708);
|
|
/* 0222A700 */ _t709 = cpu->r[1] + 0x00000180u;
|
|
/* 0222A700 */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t709);
|
|
/* 0222A704 */ _t710 = cpu->r[1] + 0x00000178u;
|
|
/* 0222A704 */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t710);
|
|
/* 0222A708 */ _t711 = cpu->r[1] + 0x00000198u;
|
|
/* 0222A708 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t711);
|
|
/* 0222A70C */ _t712 = cpu->r[1] + 0x00000170u;
|
|
/* 0222A70C */ cpu->f[27] = rbrew_read_f64(cpu->mem, _t712);
|
|
/* 0222A710 */ _t713 = cpu->r[1] + 0x00000190u;
|
|
/* 0222A710 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t713);
|
|
/* 0222A714 */ _t714 = cpu->r[1] + 0x00000168u;
|
|
/* 0222A714 */ cpu->f[26] = rbrew_read_f32(cpu->mem, _t714);
|
|
/* 0222A718 */ _t715 = cpu->r[1] + 0x000001B8u;
|
|
/* 0222A718 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t715);
|
|
/* 0222A71C */ _t716 = cpu->r[1] + 0x00000160u;
|
|
/* 0222A71C */ cpu->f[26] = rbrew_read_f64(cpu->mem, _t716);
|
|
/* 0222A720 */ _t717 = cpu->r[1] + 0x000001B0u;
|
|
/* 0222A720 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t717);
|
|
/* 0222A724 */ _t718 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0222A724 */ _t719 = _t718 & 0x00000001u;
|
|
/* 0222A724 */ if (_t719) goto L_0222A728; // else: addr-0 trap, fall-through
|
|
L_0222A728: ; // 0x222a728
|
|
/* 0222A728 */ _t720 = cpu->r[1] + 0x000001C4u;
|
|
/* 0222A728 */ cpu->r[0] = rbrew_read32(cpu->mem, _t720);
|
|
/* 0222A72C */ cpu->lr = cpu->r[0];
|
|
/* 0222A730 */ cpu->r[1] = cpu->r[1] + 0x000001C0u;
|
|
/* 0222A734 */ return;
|
|
}
|
|
|
|
// fn_0222A738 @ 0x222a738
|
|
void Gambit_fn_0222A738(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _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, _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, _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, _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;
|
|
double _ft136, _ft137, _ft167, _ft168, _ft217, _ft218;
|
|
|
|
L_0222A738: ; // 0x222a738
|
|
/* 0222A738 */ _t0 = cpu->r[1] + 0xFFFFFF30u;
|
|
/* 0222A738 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0222A738 */ cpu->r[1] = _t0;
|
|
/* 0222A73C */ _t1 = cpu->r[1] + 0x00000084u;
|
|
/* 0222A73C */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 0222A740 */ cpu->r[0] = cpu->lr;
|
|
/* 0222A744 */ _t2 = cpu->r[1] + 0x000000A0u;
|
|
/* 0222A744 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[29]);
|
|
/* 0222A748 */ /* nop */
|
|
/* 0222A74C */ _t3 = cpu->r[1] + 0x000000C0u;
|
|
/* 0222A74C */ rbrew_write_f64(cpu->mem, _t3, cpu->f[31]);
|
|
/* 0222A750 */ _t4 = cpu->r[1] + 0x00000088u;
|
|
/* 0222A750 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 0222A754 */ /* nop */
|
|
/* 0222A758 */ _t5 = cpu->r[1] + 0x000000A8u;
|
|
/* 0222A758 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[29]);
|
|
/* 0222A75C */ _t6 = cpu->r[1] + 0x000000B0u;
|
|
/* 0222A75C */ rbrew_write_f64(cpu->mem, _t6, cpu->f[30]);
|
|
/* 0222A760 */ cpu->r[30] = cpu->r[3];
|
|
/* 0222A764 */ _t7 = cpu->r[1] + 0x00000090u;
|
|
/* 0222A764 */ rbrew_write_f64(cpu->mem, _t7, cpu->f[28]);
|
|
/* 0222A768 */ _t8 = cpu->r[1] + 0x000000D4u;
|
|
/* 0222A768 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0222A76C */ /* nop */
|
|
/* 0222A770 */ _t9 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0222A770 */ rbrew_write32(cpu->mem, _t9, cpu->r[31]);
|
|
/* 0222A774 */ _t10 = cpu->r[1] + 0x000000C8u;
|
|
/* 0222A774 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[31]);
|
|
/* 0222A778 */ /* nop */
|
|
/* 0222A77C */ _t11 = cpu->r[1] + 0x000000B8u;
|
|
/* 0222A77C */ rbrew_write_f32(cpu->mem, _t11, cpu->f[30]);
|
|
/* 0222A780 */ cpu->r[31] = cpu->r[5];
|
|
/* 0222A784 */ _t12 = cpu->r[1] + 0x00000098u;
|
|
/* 0222A784 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[28]);
|
|
/* 0222A788 */ cpu->r[29] = cpu->r[4];
|
|
/* 0222A78C */ Gambit_fn_021BC6E4(cpu);
|
|
/* 0222A790 */ _t13 = cpu->r[31] + 0x00000000u;
|
|
/* 0222A790 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 0222A794 */ _t14 = cpu->r[30] + 0x00000114u;
|
|
/* 0222A794 */ cpu->r[8] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0222A798 */ cpu->r[9] = 0x00000001u;
|
|
/* 0222A79C */ _t15 = cpu->r[30] + 0x000000D0u;
|
|
/* 0222A79C */ rbrew_write_f32(cpu->mem, _t15, cpu->f[12]);
|
|
/* 0222A7A0 */ _t16 = cpu->r[31] + 0x00000004u;
|
|
/* 0222A7A0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 0222A7A4 */ _t17 = rbrew_rlwinm(cpu->r[9], 0x00000014u, 0x0000000Au, 0x0000000Bu);
|
|
/* 0222A7A4 */ _t18 = cpu->r[8] & 0xFFCFFFFFu;
|
|
/* 0222A7A4 */ cpu->r[8] = _t18 | _t17;
|
|
/* 0222A7A8 */ _t19 = cpu->r[30] + 0x000000D4u;
|
|
/* 0222A7A8 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[13]);
|
|
/* 0222A7AC */ _t20 = cpu->r[31] + 0x00000008u;
|
|
/* 0222A7AC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 0222A7B0 */ _t21 = cpu->r[30] + 0x00000114u;
|
|
/* 0222A7B0 */ rbrew_write32(cpu->mem, _t21, cpu->r[8]);
|
|
/* 0222A7B4 */ _t22 = cpu->r[30] + 0x000000D8u;
|
|
/* 0222A7B4 */ rbrew_write_f32(cpu->mem, _t22, cpu->f[0]);
|
|
/* 0222A7B8 */ _t23 = cpu->r[31] + 0x00000000u;
|
|
/* 0222A7B8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 0222A7BC */ _t24 = cpu->r[30] + 0x00000094u;
|
|
/* 0222A7BC */ rbrew_write_f32(cpu->mem, _t24, cpu->f[0]);
|
|
/* 0222A7C0 */ _t25 = cpu->r[31] + 0x00000004u;
|
|
/* 0222A7C0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 0222A7C4 */ _t26 = cpu->r[30] + 0x00000098u;
|
|
/* 0222A7C4 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[9]);
|
|
/* 0222A7C8 */ _t27 = cpu->r[31] + 0x00000008u;
|
|
/* 0222A7C8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 0222A7CC */ _t28 = cpu->r[30] + 0x0000008Cu;
|
|
/* 0222A7CC */ rbrew_write_f32(cpu->mem, _t28, cpu->f[9]);
|
|
/* 0222A7D0 */ _t29 = cpu->r[30] + 0x0000009Cu;
|
|
/* 0222A7D0 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[11]);
|
|
/* 0222A7D4 */ _t30 = cpu->r[30] + 0x000000FCu;
|
|
/* 0222A7D4 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[0]);
|
|
/* 0222A7D8 */ _t31 = cpu->r[30] + 0x00000090u;
|
|
/* 0222A7D8 */ rbrew_write_f32(cpu->mem, _t31, cpu->f[11]);
|
|
/* 0222A7DC */ _t32 = cpu->r[30] + 0x00000100u;
|
|
/* 0222A7DC */ rbrew_write_f32(cpu->mem, _t32, cpu->f[9]);
|
|
/* 0222A7E0 */ _t33 = cpu->r[30] + 0x00000104u;
|
|
/* 0222A7E0 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[11]);
|
|
/* 0222A7E4 */ _t34 = cpu->r[30] + 0x000000A4u;
|
|
/* 0222A7E4 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[0]);
|
|
/* 0222A7E8 */ _t35 = cpu->r[30] + 0x000000ACu;
|
|
/* 0222A7E8 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[11]);
|
|
/* 0222A7EC */ _t36 = cpu->r[30] + 0x00000088u;
|
|
/* 0222A7EC */ rbrew_write_f32(cpu->mem, _t36, cpu->f[0]);
|
|
/* 0222A7F0 */ _t37 = cpu->r[30] + 0x000000A8u;
|
|
/* 0222A7F0 */ rbrew_write_f32(cpu->mem, _t37, cpu->f[9]);
|
|
/* 0222A7F4 */ _t38 = cpu->r[31] + 0x00000024u;
|
|
/* 0222A7F4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 0222A7F8 */ _t39 = cpu->r[30] + 0x000000A0u;
|
|
/* 0222A7F8 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[13]);
|
|
/* 0222A7FC */ _t40 = cpu->r[31] + 0x00000028u;
|
|
/* 0222A7FC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 0222A800 */ _t41 = cpu->r[30] + 0x000000E8u;
|
|
/* 0222A800 */ rbrew_write_f32(cpu->mem, _t41, cpu->f[0]);
|
|
/* 0222A804 */ _t42 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0222A804 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 0222A808 */ _t43 = cpu->r[30] + 0x000000F0u;
|
|
/* 0222A808 */ rbrew_write_f32(cpu->mem, _t43, cpu->f[9]);
|
|
/* 0222A80C */ _t44 = cpu->r[31] + 0x00000010u;
|
|
/* 0222A80C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 0222A810 */ _t45 = cpu->r[30] + 0x000000F4u;
|
|
/* 0222A810 */ rbrew_write_f32(cpu->mem, _t45, cpu->f[11]);
|
|
/* 0222A814 */ _t46 = cpu->r[31] + 0x00000014u;
|
|
/* 0222A814 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 0222A818 */ _t47 = cpu->r[30] + 0x000000C4u;
|
|
/* 0222A818 */ rbrew_write_f32(cpu->mem, _t47, cpu->f[9]);
|
|
/* 0222A81C */ _t48 = cpu->r[30] + 0x000000F8u;
|
|
/* 0222A81C */ rbrew_write_f32(cpu->mem, _t48, cpu->f[13]);
|
|
/* 0222A820 */ _t49 = cpu->r[30] + 0x000000C8u;
|
|
/* 0222A820 */ rbrew_write_f32(cpu->mem, _t49, cpu->f[11]);
|
|
/* 0222A824 */ _t50 = cpu->r[30] + 0x000000CCu;
|
|
/* 0222A824 */ rbrew_write_f32(cpu->mem, _t50, cpu->f[13]);
|
|
/* 0222A828 */ _t51 = cpu->r[31] + 0x00000018u;
|
|
/* 0222A828 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 0222A82C */ cpu->r[7] = 0x0000000Bu;
|
|
/* 0222A830 */ _t52 = cpu->r[30] + 0x000000DCu;
|
|
/* 0222A830 */ rbrew_write_f32(cpu->mem, _t52, cpu->f[8]);
|
|
/* 0222A834 */ _t53 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0222A834 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t53);
|
|
/* 0222A838 */ cpu->r[0] = rbrew_rlwinm(cpu->r[8], 0x00000000u, 0x0000000Au, 0x00000007u);
|
|
/* 0222A83C */ _t54 = cpu->r[31] + 0x00000018u;
|
|
/* 0222A83C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 0222A840 */ _t55 = rbrew_rlwinm(cpu->r[7], 0x00000000u, 0x00000014u, 0x0000001Fu);
|
|
/* 0222A840 */ _t56 = cpu->r[0] & 0xFFFFF000u;
|
|
/* 0222A840 */ cpu->r[0] = _t56 | _t55;
|
|
/* 0222A844 */ cpu->r[11] = 0x10050000u;
|
|
/* 0222A848 */ /* nop */
|
|
/* 0222A84C */ _t57 = cpu->r[11] + 0x0000009Cu;
|
|
/* 0222A84C */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 0222A850 */ _t58 = rbrew_rlwinm(cpu->r[9], 0x00000012u, 0x0000000Cu, 0x0000000Du);
|
|
/* 0222A850 */ _t59 = cpu->r[0] & 0xFFF3FFFFu;
|
|
/* 0222A850 */ cpu->r[0] = _t59 | _t58;
|
|
/* 0222A854 */ _t60 = cpu->r[30] + 0x000000E0u;
|
|
/* 0222A854 */ rbrew_write_f32(cpu->mem, _t60, cpu->f[12]);
|
|
/* 0222A858 */ _t61 = cpu->r[31] + 0x00000020u;
|
|
/* 0222A858 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t61);
|
|
/* 0222A85C */ cpu->r[11] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000012u, 0x00000010u);
|
|
/* 0222A860 */ _t62 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0222A860 */ cpu->r[7] = rbrew_read32(cpu->mem, _t62);
|
|
/* 0222A864 */ _t63 = cpu->r[30] + 0x000000E4u;
|
|
/* 0222A864 */ rbrew_write_f32(cpu->mem, _t63, cpu->f[11]);
|
|
/* 0222A868 */ _t64 = cpu->r[31] + 0x0000002Cu;
|
|
/* 0222A868 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 0222A86C */ _t65 = cpu->r[30] + 0x00000114u;
|
|
/* 0222A86C */ rbrew_write32(cpu->mem, _t65, cpu->r[11]);
|
|
/* 0222A870 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000002u);
|
|
/* 0222A874 */ _t66 = cpu->r[30] + 0x000000ECu;
|
|
/* 0222A874 */ rbrew_write_f32(cpu->mem, _t66, cpu->f[12]);
|
|
/* 0222A878 */ _t67 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222A878 */ _t68 = _t67 & 0x00000001u;
|
|
/* 0222A878 */ if (_t68) goto L_0222A884; else goto L_0222A87C;
|
|
L_0222A87C: ; // 0x222a87c
|
|
/* 0222A87C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000003u);
|
|
/* 0222A880 */ _t69 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222A880 */ _t70 = _t69 & 0x00000001u;
|
|
/* 0222A880 */ if (_t70) goto L_0222A884; else goto L_0222A898;
|
|
L_0222A884: ; // 0x222a884
|
|
/* 0222A884 */ _t71 = cpu->r[30] + 0x00000004u;
|
|
/* 0222A884 */ cpu->r[12] = rbrew_read32(cpu->mem, _t71);
|
|
/* 0222A888 */ _t72 = cpu->r[12] + 0x000003B4u;
|
|
/* 0222A888 */ cpu->r[0] = rbrew_read32(cpu->mem, _t72);
|
|
/* 0222A88C */ cpu->ctr = cpu->r[0];
|
|
/* 0222A890 */ cpu->r[3] = cpu->r[30];
|
|
/* 0222A894 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0222A898: ; // 0x222a898
|
|
/* 0222A898 */ _t73 = cpu->r[30] + 0x00000114u;
|
|
/* 0222A898 */ cpu->r[8] = rbrew_read32(cpu->mem, _t73);
|
|
/* 0222A89C */ cpu->r[8] = rbrew_rlwinm(cpu->r[8], 0x00000000u, 0x00000014u, 0x00000011u);
|
|
/* 0222A8A0 */ cpu->r[7] = 0x101D0000u;
|
|
/* 0222A8A4 */ _t74 = cpu->r[30] + 0x00000114u;
|
|
/* 0222A8A4 */ rbrew_write32(cpu->mem, _t74, cpu->r[8]);
|
|
/* 0222A8A8 */ _t75 = cpu->r[7] + 0xFFFFD9C8u;
|
|
/* 0222A8A8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t75);
|
|
/* 0222A8A8 */ cpu->r[7] = _t75;
|
|
/* 0222A8AC */ cpu->r[4] = 0x101D0000u;
|
|
/* 0222A8B0 */ _t76 = cpu->r[29] + 0x00000014u;
|
|
/* 0222A8B0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t76);
|
|
/* 0222A8B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0222A8B8 */ cpu->r[4] = cpu->r[4] + 0xFFFFE310u;
|
|
/* 0222A8BC */ _t77 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222A8BC */ _t78 = _t77 & 0x00000001u;
|
|
/* 0222A8BC */ if (_t78) goto L_0222A8C0; else goto L_0222A8D4;
|
|
L_0222A8C0: ; // 0x222a8c0
|
|
/* 0222A8C0 */ cpu->r[0] = 0x10050000u;
|
|
/* 0222A8C4 */ cpu->r[10] = 0x00000001u;
|
|
/* 0222A8C8 */ cpu->r[0] = cpu->r[0] + 0x00000044u;
|
|
/* 0222A8CC */ _t79 = cpu->r[7] + 0x00000000u;
|
|
/* 0222A8CC */ rbrew_write32(cpu->mem, _t79, cpu->r[10]);
|
|
/* 0222A8D0 */ _t80 = cpu->r[4] + 0x00000000u;
|
|
/* 0222A8D0 */ rbrew_write32(cpu->mem, _t80, cpu->r[0]);
|
|
L_0222A8D4: ; // 0x222a8d4
|
|
/* 0222A8D4 */ cpu->r[11] = 0x10050000u;
|
|
/* 0222A8D8 */ cpu->r[9] = 0x10050000u;
|
|
/* 0222A8DC */ _t81 = cpu->r[11] + 0x000000A0u;
|
|
/* 0222A8DC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t81);
|
|
/* 0222A8E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0222A8E4 */ _t82 = cpu->r[9] + 0x000000A4u;
|
|
/* 0222A8E4 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t82);
|
|
/* 0222A8E8 */ _t83 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222A8E8 */ _t84 = _t83 & 0x00000001u;
|
|
/* 0222A8E8 */ if (_t84) goto L_0222ABC4; else goto L_0222A8EC;
|
|
L_0222A8EC: ; // 0x222a8ec
|
|
/* 0222A8EC */ _t85 = cpu->r[31] + 0x00000004u;
|
|
/* 0222A8EC */ cpu->r[12] = rbrew_read32(cpu->mem, _t85);
|
|
/* 0222A8F0 */ _t86 = cpu->r[12] + 0x00000014u;
|
|
/* 0222A8F0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t86);
|
|
/* 0222A8F4 */ cpu->ctr = cpu->r[7];
|
|
/* 0222A8F8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0222A8FC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222A900 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0222A904 */ _t87 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222A904 */ _t88 = _t87 & 0x00000001u;
|
|
/* 0222A904 */ if (_t88) goto L_0222ABC4; else goto L_0222A908;
|
|
L_0222A908: ; // 0x222a908
|
|
/* 0222A908 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0222A90C */ _t89 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222A90C */ _t90 = _t89 & 0x00000001u;
|
|
/* 0222A90C */ if (_t90) goto L_0222ABC4; else goto L_0222A910;
|
|
L_0222A910: ; // 0x222a910
|
|
/* 0222A910 */ _t91 = cpu->r[30] + 0x00000004u;
|
|
/* 0222A910 */ cpu->r[10] = rbrew_read32(cpu->mem, _t91);
|
|
/* 0222A914 */ _t92 = cpu->r[10] + 0x0000025Cu;
|
|
/* 0222A914 */ cpu->r[12] = rbrew_read32(cpu->mem, _t92);
|
|
/* 0222A918 */ cpu->ctr = cpu->r[12];
|
|
/* 0222A91C */ cpu->r[3] = cpu->r[30];
|
|
/* 0222A920 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222A924 */ _t93 = cpu->r[3] + 0x00000000u;
|
|
/* 0222A924 */ cpu->r[0] = rbrew_read32(cpu->mem, _t93);
|
|
/* 0222A928 */ _t94 = cpu->r[30] + 0x000000D8u;
|
|
/* 0222A928 */ cpu->r[7] = rbrew_read32(cpu->mem, _t94);
|
|
/* 0222A92C */ _t95 = cpu->r[1] + 0x00000008u;
|
|
/* 0222A92C */ rbrew_write32(cpu->mem, _t95, cpu->r[0]);
|
|
/* 0222A930 */ _t96 = cpu->r[3] + 0x00000004u;
|
|
/* 0222A930 */ cpu->r[0] = rbrew_read32(cpu->mem, _t96);
|
|
/* 0222A934 */ _t97 = cpu->r[30] + 0x000000D0u;
|
|
/* 0222A934 */ cpu->r[12] = rbrew_read32(cpu->mem, _t97);
|
|
/* 0222A938 */ _t98 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222A938 */ rbrew_write32(cpu->mem, _t98, cpu->r[0]);
|
|
/* 0222A93C */ _t99 = cpu->r[30] + 0x000000D4u;
|
|
/* 0222A93C */ cpu->r[0] = rbrew_read32(cpu->mem, _t99);
|
|
/* 0222A940 */ _t100 = cpu->r[3] + 0x00000008u;
|
|
/* 0222A940 */ cpu->r[11] = rbrew_read32(cpu->mem, _t100);
|
|
/* 0222A944 */ _t101 = cpu->r[1] + 0x00000024u;
|
|
/* 0222A944 */ rbrew_write32(cpu->mem, _t101, cpu->r[0]);
|
|
/* 0222A948 */ _t102 = cpu->r[1] + 0x00000020u;
|
|
/* 0222A948 */ rbrew_write32(cpu->mem, _t102, cpu->r[12]);
|
|
/* 0222A94C */ /* nop */
|
|
/* 0222A950 */ _t103 = cpu->r[1] + 0x00000010u;
|
|
/* 0222A950 */ rbrew_write32(cpu->mem, _t103, cpu->r[11]);
|
|
/* 0222A954 */ _t104 = cpu->r[1] + 0x00000028u;
|
|
/* 0222A954 */ rbrew_write32(cpu->mem, _t104, cpu->r[7]);
|
|
/* 0222A958 */ /* nop */
|
|
/* 0222A95C */ _t105 = cpu->r[1] + 0x00000028u;
|
|
/* 0222A95C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t105);
|
|
/* 0222A960 */ /* nop */
|
|
/* 0222A964 */ /* nop */
|
|
/* 0222A968 */ _t106 = cpu->r[31] + 0x0000024Cu;
|
|
/* 0222A968 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t106);
|
|
/* 0222A96C */ cpu->f[12] = cpu->f[13] - cpu->f[0];
|
|
/* 0222A970 */ _t107 = cpu->r[30] + 0x00000004u;
|
|
/* 0222A970 */ cpu->r[11] = rbrew_read32(cpu->mem, _t107);
|
|
/* 0222A974 */ _t108 = cpu->r[1] + 0x00000040u;
|
|
/* 0222A974 */ rbrew_write_f32(cpu->mem, _t108, cpu->f[12]);
|
|
/* 0222A978 */ _t109 = cpu->r[11] + 0x0000041Cu;
|
|
/* 0222A978 */ cpu->r[8] = rbrew_read32(cpu->mem, _t109);
|
|
/* 0222A97C */ cpu->ctr = cpu->r[8];
|
|
/* 0222A980 */ cpu->r[3] = cpu->r[30];
|
|
/* 0222A984 */ cpu->r[5] = cpu->r[30] + 0x000000F0u;
|
|
/* 0222A988 */ cpu->r[4] = cpu->r[1] + 0x00000038u;
|
|
/* 0222A98C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222A990 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[28]);
|
|
/* 0222A994 */ _t110 = cpu->r[1] + 0x00000010u;
|
|
/* 0222A994 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t110);
|
|
/* 0222A998 */ _t111 = cpu->r[1] + 0x00000008u;
|
|
/* 0222A998 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t111);
|
|
/* 0222A99C */ _t112 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222A99C */ _t113 = _t112 & 0x00000001u;
|
|
/* 0222A99C */ if (_t113) goto L_0222A9A0; else goto L_0222A9B8;
|
|
L_0222A9A0: ; // 0x222a9a0
|
|
/* 0222A9A0 */ cpu->f[9] = cpu->f[13] * cpu->f[13];
|
|
/* 0222A9A4 */ cpu->f[13] = fma(cpu->f[10], cpu->f[10], cpu->f[9]);
|
|
/* 0222A9A8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[28]);
|
|
/* 0222A9AC */ _t114 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222A9AC */ rbrew_write_f32(cpu->mem, _t114, cpu->f[28]);
|
|
/* 0222A9B0 */ _t115 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0222A9B0 */ _t116 = _t115 & 0x00000001u;
|
|
/* 0222A9B0 */ if (_t116) goto L_0222A9B4; else goto L_0222AAEC;
|
|
L_0222A9B4: ; // 0x222a9b4
|
|
/* 0222A9B4 */ goto L_0222AB38;
|
|
L_0222A9B8: ; // 0x222a9b8
|
|
/* 0222A9B8 */ _t117 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222A9B8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t117);
|
|
/* 0222A9BC */ cpu->f[8] = cpu->f[12] * cpu->f[12];
|
|
/* 0222A9C0 */ cpu->f[9] = fma(cpu->f[10], cpu->f[10], cpu->f[8]);
|
|
/* 0222A9C4 */ cpu->f[11] = fma(cpu->f[13], cpu->f[13], cpu->f[9]);
|
|
/* 0222A9C8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[28]);
|
|
/* 0222A9CC */ _t118 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0222A9CC */ _t119 = _t118 & 0x00000001u;
|
|
/* 0222A9CC */ if (_t119) goto L_0222AA40; else goto L_0222A9D0;
|
|
L_0222A9D0: ; // 0x222a9d0
|
|
/* 0222A9D0 */ /* nop */
|
|
/* 0222A9D4 */ /* nop */
|
|
/* 0222A9D8 */ _t120 = cpu->r[1] + 0x00000028u;
|
|
/* 0222A9D8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t120);
|
|
/* 0222A9DC */ /* nop */
|
|
/* 0222A9E0 */ _t121 = cpu->r[1] + 0x00000044u;
|
|
/* 0222A9E0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t121);
|
|
/* 0222A9E4 */ cpu->f[12] = cpu->f[13] * cpu->f[1];
|
|
/* 0222A9E8 */ _t122 = cpu->r[1] + 0x00000048u;
|
|
/* 0222A9E8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t122);
|
|
/* 0222A9EC */ _t123 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0222A9EC */ rbrew_write32(cpu->mem, _t123, cpu->r[9]);
|
|
/* 0222A9F0 */ _t124 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0222A9F0 */ rbrew_write_f32(cpu->mem, _t124, cpu->f[12]);
|
|
/* 0222A9F4 */ _t125 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0222A9F4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t125);
|
|
/* 0222A9F8 */ _t126 = cpu->r[1] + 0x00000060u;
|
|
/* 0222A9F8 */ rbrew_write32(cpu->mem, _t126, cpu->r[12]);
|
|
/* 0222A9FC */ _t127 = cpu->r[1] + 0x00000064u;
|
|
/* 0222A9FC */ rbrew_write32(cpu->mem, _t127, cpu->r[7]);
|
|
/* 0222AA00 */ _t128 = cpu->r[1] + 0x00000064u;
|
|
/* 0222AA00 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t128);
|
|
/* 0222AA04 */ /* nop */
|
|
/* 0222AA08 */ cpu->f[0] = cpu->f[0] - cpu->f[8];
|
|
/* 0222AA0C */ _t129 = cpu->r[30] + 0x00000004u;
|
|
/* 0222AA0C */ cpu->r[12] = rbrew_read32(cpu->mem, _t129);
|
|
/* 0222AA10 */ /* nop */
|
|
/* 0222AA14 */ /* nop */
|
|
/* 0222AA18 */ _t130 = cpu->r[1] + 0x00000028u;
|
|
/* 0222AA18 */ rbrew_write_f32(cpu->mem, _t130, cpu->f[0]);
|
|
/* 0222AA1C */ _t131 = cpu->r[12] + 0x0000025Cu;
|
|
/* 0222AA1C */ cpu->r[9] = rbrew_read32(cpu->mem, _t131);
|
|
/* 0222AA20 */ cpu->ctr = cpu->r[9];
|
|
/* 0222AA24 */ cpu->r[3] = cpu->r[30];
|
|
/* 0222AA28 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222AA2C */ _t132 = cpu->r[3] + 0x00000000u;
|
|
/* 0222AA2C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t132);
|
|
/* 0222AA30 */ _t133 = cpu->r[1] + 0x00000008u;
|
|
/* 0222AA30 */ rbrew_write_f32(cpu->mem, _t133, cpu->f[10]);
|
|
/* 0222AA34 */ _t134 = cpu->r[3] + 0x00000008u;
|
|
/* 0222AA34 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t134);
|
|
/* 0222AA38 */ _t135 = cpu->r[1] + 0x00000010u;
|
|
/* 0222AA38 */ rbrew_write_f32(cpu->mem, _t135, cpu->f[13]);
|
|
/* 0222AA3C */ goto L_0222AAD8;
|
|
L_0222AA40: ; // 0x222aa40
|
|
/* 0222AA40 */ _ft136 = sqrt(cpu->f[11]);
|
|
/* 0222AA40 */ _ft137 = (double)(int32_t)0x00000001u;
|
|
/* 0222AA40 */ cpu->f[12] = _ft137 / _ft136;
|
|
/* 0222AA44 */ cpu->f[13] = cpu->f[12] * cpu->f[12];
|
|
/* 0222AA48 */ cpu->f[0] = cpu->f[12] * cpu->f[31];
|
|
/* 0222AA4C */ cpu->f[13] = -fma(cpu->f[13], cpu->f[11], -(cpu->f[30]));
|
|
/* 0222AA50 */ cpu->f[12] = cpu->f[13] * cpu->f[0];
|
|
/* 0222AA54 */ /* nop */
|
|
/* 0222AA58 */ /* nop */
|
|
/* 0222AA5C */ /* nop */
|
|
/* 0222AA60 */ _t138 = cpu->r[1] + 0x00000010u;
|
|
/* 0222AA60 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t138);
|
|
/* 0222AA64 */ /* nop */
|
|
/* 0222AA68 */ /* nop */
|
|
/* 0222AA6C */ cpu->f[13] = cpu->f[13] * cpu->f[12];
|
|
/* 0222AA70 */ /* nop */
|
|
/* 0222AA74 */ _t139 = cpu->r[1] + 0x00000048u;
|
|
/* 0222AA74 */ cpu->r[12] = rbrew_read32(cpu->mem, _t139);
|
|
/* 0222AA78 */ _t140 = cpu->r[1] + 0x00000028u;
|
|
/* 0222AA78 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t140);
|
|
/* 0222AA7C */ cpu->f[12] = cpu->f[13] * cpu->f[1];
|
|
/* 0222AA80 */ _t141 = cpu->r[1] + 0x00000044u;
|
|
/* 0222AA80 */ cpu->r[9] = rbrew_read32(cpu->mem, _t141);
|
|
/* 0222AA84 */ _t142 = cpu->r[1] + 0x00000010u;
|
|
/* 0222AA84 */ rbrew_write_f32(cpu->mem, _t142, cpu->f[13]);
|
|
/* 0222AA88 */ _t143 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0222AA88 */ rbrew_write_f32(cpu->mem, _t143, cpu->f[12]);
|
|
/* 0222AA8C */ _t144 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0222AA8C */ cpu->r[7] = rbrew_read32(cpu->mem, _t144);
|
|
/* 0222AA90 */ _t145 = cpu->r[1] + 0x00000064u;
|
|
/* 0222AA90 */ rbrew_write32(cpu->mem, _t145, cpu->r[7]);
|
|
/* 0222AA94 */ _t146 = cpu->r[1] + 0x00000064u;
|
|
/* 0222AA94 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t146);
|
|
/* 0222AA98 */ _t147 = cpu->r[1] + 0x00000060u;
|
|
/* 0222AA98 */ rbrew_write32(cpu->mem, _t147, cpu->r[12]);
|
|
/* 0222AA9C */ cpu->f[0] = cpu->f[0] - cpu->f[8];
|
|
/* 0222AAA0 */ _t148 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0222AAA0 */ rbrew_write32(cpu->mem, _t148, cpu->r[9]);
|
|
/* 0222AAA4 */ /* nop */
|
|
/* 0222AAA8 */ _t149 = cpu->r[30] + 0x00000004u;
|
|
/* 0222AAA8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t149);
|
|
/* 0222AAAC */ /* nop */
|
|
/* 0222AAB0 */ _t150 = cpu->r[1] + 0x00000028u;
|
|
/* 0222AAB0 */ rbrew_write_f32(cpu->mem, _t150, cpu->f[0]);
|
|
/* 0222AAB4 */ /* nop */
|
|
/* 0222AAB8 */ _t151 = cpu->r[12] + 0x0000025Cu;
|
|
/* 0222AAB8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t151);
|
|
/* 0222AABC */ cpu->ctr = cpu->r[9];
|
|
/* 0222AAC0 */ cpu->r[3] = cpu->r[30];
|
|
/* 0222AAC4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222AAC8 */ _t152 = cpu->r[3] + 0x00000000u;
|
|
/* 0222AAC8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t152);
|
|
/* 0222AACC */ _t153 = cpu->r[1] + 0x00000008u;
|
|
/* 0222AACC */ rbrew_write_f32(cpu->mem, _t153, cpu->f[10]);
|
|
/* 0222AAD0 */ _t154 = cpu->r[3] + 0x00000008u;
|
|
/* 0222AAD0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t154);
|
|
/* 0222AAD4 */ _t155 = cpu->r[1] + 0x00000010u;
|
|
/* 0222AAD4 */ rbrew_write_f32(cpu->mem, _t155, cpu->f[13]);
|
|
L_0222AAD8: ; // 0x222aad8
|
|
/* 0222AAD8 */ cpu->f[9] = cpu->f[13] * cpu->f[13];
|
|
/* 0222AADC */ cpu->f[13] = fma(cpu->f[10], cpu->f[10], cpu->f[9]);
|
|
/* 0222AAE0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[28]);
|
|
/* 0222AAE4 */ _t156 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222AAE4 */ rbrew_write_f32(cpu->mem, _t156, cpu->f[28]);
|
|
/* 0222AAE8 */ _t157 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0222AAE8 */ _t158 = _t157 & 0x00000001u;
|
|
/* 0222AAE8 */ if (_t158) goto L_0222AB38; else goto L_0222AAEC;
|
|
L_0222AAEC: ; // 0x222aaec
|
|
/* 0222AAEC */ _t159 = cpu->r[31] + 0x0000024Cu;
|
|
/* 0222AAEC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t159);
|
|
/* 0222AAF0 */ _t160 = cpu->r[1] + 0x00000028u;
|
|
/* 0222AAF0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t160);
|
|
/* 0222AAF4 */ /* nop */
|
|
/* 0222AAF8 */ cpu->f[13] = cpu->f[10] - cpu->f[11];
|
|
/* 0222AAFC */ _t161 = cpu->r[30] + 0x00000004u;
|
|
/* 0222AAFC */ cpu->r[8] = rbrew_read32(cpu->mem, _t161);
|
|
/* 0222AB00 */ /* nop */
|
|
/* 0222AB04 */ /* nop */
|
|
/* 0222AB08 */ _t162 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0222AB08 */ rbrew_write_f32(cpu->mem, _t162, cpu->f[13]);
|
|
/* 0222AB0C */ _t163 = cpu->r[8] + 0x000003D4u;
|
|
/* 0222AB0C */ cpu->r[9] = rbrew_read32(cpu->mem, _t163);
|
|
/* 0222AB10 */ /* nop */
|
|
/* 0222AB14 */ _t164 = cpu->r[1] + 0x00000010u;
|
|
/* 0222AB14 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t164);
|
|
/* 0222AB18 */ cpu->ctr = cpu->r[9];
|
|
/* 0222AB1C */ /* nop */
|
|
/* 0222AB20 */ cpu->f[29] = fma(cpu->f[13], cpu->f[9], cpu->f[0]);
|
|
/* 0222AB24 */ cpu->r[3] = cpu->r[30];
|
|
/* 0222AB28 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222AB2C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[29], cpu->f[1]);
|
|
/* 0222AB30 */ _t165 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0222AB30 */ _t166 = _t165 & 0x00000001u;
|
|
/* 0222AB30 */ if (_t166) goto L_0222AB34; else goto L_0222ABC4;
|
|
L_0222AB34: ; // 0x222ab34
|
|
/* 0222AB34 */ goto L_0222ABAC;
|
|
L_0222AB38: ; // 0x222ab38
|
|
/* 0222AB38 */ _ft167 = sqrt(cpu->f[13]);
|
|
/* 0222AB38 */ _ft168 = (double)(int32_t)0x00000001u;
|
|
/* 0222AB38 */ cpu->f[8] = _ft168 / _ft167;
|
|
/* 0222AB3C */ cpu->f[10] = cpu->f[8] * cpu->f[8];
|
|
/* 0222AB40 */ cpu->f[12] = cpu->f[8] * cpu->f[31];
|
|
/* 0222AB44 */ cpu->f[10] = -fma(cpu->f[10], cpu->f[13], -(cpu->f[30]));
|
|
/* 0222AB48 */ cpu->f[8] = cpu->f[10] * cpu->f[12];
|
|
/* 0222AB4C */ _t169 = cpu->r[1] + 0x00000010u;
|
|
/* 0222AB4C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t169);
|
|
/* 0222AB50 */ _t170 = cpu->r[30] + 0x00000004u;
|
|
/* 0222AB50 */ cpu->r[8] = rbrew_read32(cpu->mem, _t170);
|
|
/* 0222AB54 */ cpu->f[13] = cpu->f[13] * cpu->f[8];
|
|
/* 0222AB58 */ /* nop */
|
|
/* 0222AB5C */ _t171 = cpu->r[1] + 0x00000028u;
|
|
/* 0222AB5C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t171);
|
|
/* 0222AB60 */ /* nop */
|
|
/* 0222AB64 */ _t172 = cpu->r[1] + 0x00000010u;
|
|
/* 0222AB64 */ rbrew_write_f32(cpu->mem, _t172, cpu->f[13]);
|
|
/* 0222AB68 */ /* nop */
|
|
/* 0222AB6C */ _t173 = cpu->r[31] + 0x0000024Cu;
|
|
/* 0222AB6C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t173);
|
|
/* 0222AB70 */ /* nop */
|
|
/* 0222AB74 */ cpu->f[13] = cpu->f[10] - cpu->f[11];
|
|
/* 0222AB78 */ /* nop */
|
|
/* 0222AB7C */ /* nop */
|
|
/* 0222AB80 */ _t174 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0222AB80 */ rbrew_write_f32(cpu->mem, _t174, cpu->f[13]);
|
|
/* 0222AB84 */ _t175 = cpu->r[8] + 0x000003D4u;
|
|
/* 0222AB84 */ cpu->r[9] = rbrew_read32(cpu->mem, _t175);
|
|
/* 0222AB88 */ /* nop */
|
|
/* 0222AB8C */ _t176 = cpu->r[1] + 0x00000010u;
|
|
/* 0222AB8C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t176);
|
|
/* 0222AB90 */ cpu->ctr = cpu->r[9];
|
|
/* 0222AB94 */ /* nop */
|
|
/* 0222AB98 */ cpu->f[29] = fma(cpu->f[13], cpu->f[9], cpu->f[0]);
|
|
/* 0222AB9C */ cpu->r[3] = cpu->r[30];
|
|
/* 0222ABA0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222ABA4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[29], cpu->f[1]);
|
|
/* 0222ABA8 */ _t177 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0222ABA8 */ _t178 = _t177 & 0x00000001u;
|
|
/* 0222ABA8 */ if (_t178) goto L_0222ABAC; else goto L_0222ABC4;
|
|
L_0222ABAC: ; // 0x222abac
|
|
/* 0222ABAC */ _t179 = cpu->r[30] + 0x00000114u;
|
|
/* 0222ABAC */ cpu->r[11] = rbrew_read32(cpu->mem, _t179);
|
|
/* 0222ABB0 */ cpu->r[0] = 0x00000001u;
|
|
/* 0222ABB4 */ cpu->f[10] = cpu->f[1] - cpu->f[29];
|
|
/* 0222ABB8 */ _t180 = rbrew_rlwinm(cpu->r[0], 0x0000000Cu, 0x00000012u, 0x00000013u);
|
|
/* 0222ABB8 */ _t181 = cpu->r[11] & 0xFFFFCFFFu;
|
|
/* 0222ABB8 */ cpu->r[11] = _t181 | _t180;
|
|
/* 0222ABBC */ _t182 = cpu->r[30] + 0x00000114u;
|
|
/* 0222ABBC */ rbrew_write32(cpu->mem, _t182, cpu->r[11]);
|
|
/* 0222ABC0 */ _t183 = cpu->r[30] + 0x00000118u;
|
|
/* 0222ABC0 */ rbrew_write_f32(cpu->mem, _t183, cpu->f[10]);
|
|
L_0222ABC4: ; // 0x222abc4
|
|
/* 0222ABC4 */ _t184 = cpu->r[30] + 0x00000004u;
|
|
/* 0222ABC4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t184);
|
|
/* 0222ABC8 */ _t185 = cpu->r[8] + 0x000003CCu;
|
|
/* 0222ABC8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t185);
|
|
/* 0222ABCC */ cpu->ctr = cpu->r[12];
|
|
/* 0222ABD0 */ cpu->r[3] = cpu->r[30];
|
|
/* 0222ABD4 */ cpu->r[4] = cpu->r[30] + 0x000000F0u;
|
|
/* 0222ABD8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222ABDC */ cpu->f[29] = cpu->f[1];
|
|
/* 0222ABE0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[29], cpu->f[28]);
|
|
/* 0222ABE4 */ _t186 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0222ABE4 */ _t187 = _t186 & 0x00000001u;
|
|
/* 0222ABE4 */ if (_t187) goto L_0222ABE8; else goto L_0222AD8C;
|
|
L_0222ABE8: ; // 0x222abe8
|
|
/* 0222ABE8 */ _t188 = cpu->r[30] + 0x000000F4u;
|
|
/* 0222ABE8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t188);
|
|
/* 0222ABEC */ _t189 = cpu->r[30] + 0x000000F0u;
|
|
/* 0222ABEC */ cpu->r[8] = rbrew_read32(cpu->mem, _t189);
|
|
/* 0222ABF0 */ _t190 = cpu->r[1] + 0x00000018u;
|
|
/* 0222ABF0 */ rbrew_write32(cpu->mem, _t190, cpu->r[9]);
|
|
/* 0222ABF4 */ _t191 = cpu->r[1] + 0x00000018u;
|
|
/* 0222ABF4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t191);
|
|
/* 0222ABF8 */ _t192 = cpu->r[30] + 0x000000F8u;
|
|
/* 0222ABF8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t192);
|
|
/* 0222ABFC */ cpu->f[8] = cpu->f[8] * cpu->f[8];
|
|
/* 0222AC00 */ _t193 = cpu->r[1] + 0x00000014u;
|
|
/* 0222AC00 */ rbrew_write32(cpu->mem, _t193, cpu->r[8]);
|
|
/* 0222AC04 */ _t194 = cpu->r[1] + 0x00000014u;
|
|
/* 0222AC04 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t194);
|
|
/* 0222AC08 */ _t195 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0222AC08 */ rbrew_write32(cpu->mem, _t195, cpu->r[11]);
|
|
/* 0222AC0C */ _t196 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0222AC0C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t196);
|
|
/* 0222AC10 */ cpu->f[10] = fma(cpu->f[9], cpu->f[9], cpu->f[8]);
|
|
/* 0222AC14 */ cpu->f[8] = fma(cpu->f[11], cpu->f[11], cpu->f[10]);
|
|
/* 0222AC18 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[28]);
|
|
/* 0222AC1C */ _t197 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0222AC1C */ _t198 = _t197 & 0x00000001u;
|
|
/* 0222AC1C */ if (_t198) goto L_0222ACC4; else goto L_0222AC20;
|
|
L_0222AC20: ; // 0x222ac20
|
|
/* 0222AC20 */ /* nop */
|
|
/* 0222AC24 */ _t199 = cpu->r[30] + 0x000000ACu;
|
|
/* 0222AC24 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t199);
|
|
/* 0222AC28 */ /* nop */
|
|
/* 0222AC2C */ /* nop */
|
|
/* 0222AC30 */ _t200 = cpu->r[1] + 0x00000050u;
|
|
/* 0222AC30 */ cpu->r[0] = rbrew_read32(cpu->mem, _t200);
|
|
/* 0222AC34 */ cpu->f[12] = cpu->f[11] * cpu->f[29];
|
|
/* 0222AC38 */ _t201 = cpu->r[1] + 0x00000054u;
|
|
/* 0222AC38 */ cpu->r[7] = rbrew_read32(cpu->mem, _t201);
|
|
/* 0222AC3C */ _t202 = cpu->r[1] + 0x00000068u;
|
|
/* 0222AC3C */ rbrew_write32(cpu->mem, _t202, cpu->r[0]);
|
|
/* 0222AC40 */ _t203 = cpu->r[1] + 0x00000058u;
|
|
/* 0222AC40 */ rbrew_write_f32(cpu->mem, _t203, cpu->f[12]);
|
|
/* 0222AC44 */ _t204 = cpu->r[1] + 0x00000058u;
|
|
/* 0222AC44 */ cpu->r[9] = rbrew_read32(cpu->mem, _t204);
|
|
/* 0222AC48 */ _t205 = cpu->r[1] + 0x0000006Cu;
|
|
/* 0222AC48 */ rbrew_write32(cpu->mem, _t205, cpu->r[7]);
|
|
/* 0222AC4C */ /* nop */
|
|
/* 0222AC50 */ _t206 = cpu->r[1] + 0x00000070u;
|
|
/* 0222AC50 */ rbrew_write32(cpu->mem, _t206, cpu->r[9]);
|
|
/* 0222AC54 */ _t207 = cpu->r[1] + 0x00000070u;
|
|
/* 0222AC54 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t207);
|
|
/* 0222AC58 */ /* nop */
|
|
/* 0222AC5C */ cpu->f[9] = cpu->f[10] - cpu->f[12];
|
|
/* 0222AC60 */ _t208 = cpu->r[30] + 0x00000004u;
|
|
/* 0222AC60 */ cpu->r[10] = rbrew_read32(cpu->mem, _t208);
|
|
/* 0222AC64 */ _t209 = cpu->r[1] + 0x00000034u;
|
|
/* 0222AC64 */ rbrew_write_f32(cpu->mem, _t209, cpu->f[9]);
|
|
/* 0222AC68 */ /* nop */
|
|
/* 0222AC6C */ /* nop */
|
|
/* 0222AC70 */ _t210 = cpu->r[10] + 0x000003D4u;
|
|
/* 0222AC70 */ cpu->r[0] = rbrew_read32(cpu->mem, _t210);
|
|
/* 0222AC74 */ cpu->ctr = cpu->r[0];
|
|
/* 0222AC78 */ cpu->r[3] = cpu->r[30];
|
|
/* 0222AC7C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222AC80 */ _t211 = cpu->r[30] + 0x00000004u;
|
|
/* 0222AC80 */ cpu->r[12] = rbrew_read32(cpu->mem, _t211);
|
|
/* 0222AC84 */ _t212 = cpu->r[12] + 0x0000038Cu;
|
|
/* 0222AC84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t212);
|
|
/* 0222AC88 */ cpu->f[2] = cpu->f[1];
|
|
/* 0222AC8C */ cpu->ctr = cpu->r[0];
|
|
/* 0222AC90 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 0222AC94 */ cpu->f[1] = cpu->f[29];
|
|
/* 0222AC98 */ cpu->r[4] = cpu->r[1] + 0x0000002Cu;
|
|
/* 0222AC9C */ cpu->r[3] = cpu->r[30];
|
|
/* 0222ACA0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222ACA4 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 0222ACA8 */ cpu->r[4] = cpu->r[1] + 0x0000002Cu;
|
|
/* 0222ACAC */ cpu->r[3] = cpu->r[30];
|
|
/* 0222ACB0 */ Gambit_fn_022294C0(cpu);
|
|
/* 0222ACB4 */ _t213 = cpu->r[30] + 0x00000114u;
|
|
/* 0222ACB4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t213);
|
|
/* 0222ACB8 */ _t214 = rbrew_rlwinm(cpu->r[3], 0x0000000Eu, 0x00000011u, 0x00000011u);
|
|
/* 0222ACB8 */ _t215 = cpu->r[10] & 0xFFFFBFFFu;
|
|
/* 0222ACB8 */ cpu->r[10] = _t215 | _t214;
|
|
/* 0222ACBC */ _t216 = cpu->r[30] + 0x00000114u;
|
|
/* 0222ACBC */ rbrew_write32(cpu->mem, _t216, cpu->r[10]);
|
|
/* 0222ACC0 */ goto L_0222AD8C;
|
|
L_0222ACC4: ; // 0x222acc4
|
|
/* 0222ACC4 */ _ft217 = sqrt(cpu->f[8]);
|
|
/* 0222ACC4 */ _ft218 = (double)(int32_t)0x00000001u;
|
|
/* 0222ACC4 */ cpu->f[10] = _ft218 / _ft217;
|
|
/* 0222ACC8 */ cpu->f[12] = cpu->f[10] * cpu->f[10];
|
|
/* 0222ACCC */ cpu->f[0] = cpu->f[10] * cpu->f[31];
|
|
/* 0222ACD0 */ cpu->f[12] = -fma(cpu->f[12], cpu->f[8], -(cpu->f[30]));
|
|
/* 0222ACD4 */ cpu->f[10] = cpu->f[12] * cpu->f[0];
|
|
/* 0222ACD8 */ _t219 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0222ACD8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t219);
|
|
/* 0222ACDC */ /* nop */
|
|
/* 0222ACE0 */ cpu->f[11] = cpu->f[11] * cpu->f[10];
|
|
/* 0222ACE4 */ /* nop */
|
|
/* 0222ACE8 */ _t220 = cpu->r[30] + 0x00000004u;
|
|
/* 0222ACE8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t220);
|
|
/* 0222ACEC */ /* nop */
|
|
/* 0222ACF0 */ _t221 = cpu->r[30] + 0x000000ACu;
|
|
/* 0222ACF0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t221);
|
|
/* 0222ACF4 */ /* nop */
|
|
/* 0222ACF8 */ /* nop */
|
|
/* 0222ACFC */ cpu->f[12] = cpu->f[11] * cpu->f[29];
|
|
/* 0222AD00 */ /* nop */
|
|
/* 0222AD04 */ _t222 = cpu->r[1] + 0x00000054u;
|
|
/* 0222AD04 */ cpu->r[7] = rbrew_read32(cpu->mem, _t222);
|
|
/* 0222AD08 */ _t223 = cpu->r[1] + 0x00000050u;
|
|
/* 0222AD08 */ cpu->r[0] = rbrew_read32(cpu->mem, _t223);
|
|
/* 0222AD0C */ _t224 = cpu->r[1] + 0x00000058u;
|
|
/* 0222AD0C */ rbrew_write_f32(cpu->mem, _t224, cpu->f[12]);
|
|
/* 0222AD10 */ _t225 = cpu->r[1] + 0x00000058u;
|
|
/* 0222AD10 */ cpu->r[9] = rbrew_read32(cpu->mem, _t225);
|
|
/* 0222AD14 */ _t226 = cpu->r[1] + 0x00000070u;
|
|
/* 0222AD14 */ rbrew_write32(cpu->mem, _t226, cpu->r[9]);
|
|
/* 0222AD18 */ _t227 = cpu->r[1] + 0x00000070u;
|
|
/* 0222AD18 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t227);
|
|
/* 0222AD1C */ _t228 = cpu->r[1] + 0x00000068u;
|
|
/* 0222AD1C */ rbrew_write32(cpu->mem, _t228, cpu->r[0]);
|
|
/* 0222AD20 */ cpu->f[9] = cpu->f[10] - cpu->f[12];
|
|
/* 0222AD24 */ _t229 = cpu->r[1] + 0x0000006Cu;
|
|
/* 0222AD24 */ rbrew_write32(cpu->mem, _t229, cpu->r[7]);
|
|
/* 0222AD28 */ /* nop */
|
|
/* 0222AD2C */ _t230 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0222AD2C */ rbrew_write_f32(cpu->mem, _t230, cpu->f[11]);
|
|
/* 0222AD30 */ /* nop */
|
|
/* 0222AD34 */ _t231 = cpu->r[1] + 0x00000034u;
|
|
/* 0222AD34 */ rbrew_write_f32(cpu->mem, _t231, cpu->f[9]);
|
|
/* 0222AD38 */ /* nop */
|
|
/* 0222AD3C */ _t232 = cpu->r[10] + 0x000003D4u;
|
|
/* 0222AD3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t232);
|
|
/* 0222AD40 */ cpu->ctr = cpu->r[0];
|
|
/* 0222AD44 */ cpu->r[3] = cpu->r[30];
|
|
/* 0222AD48 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222AD4C */ _t233 = cpu->r[30] + 0x00000004u;
|
|
/* 0222AD4C */ cpu->r[12] = rbrew_read32(cpu->mem, _t233);
|
|
/* 0222AD50 */ _t234 = cpu->r[12] + 0x0000038Cu;
|
|
/* 0222AD50 */ cpu->r[0] = rbrew_read32(cpu->mem, _t234);
|
|
/* 0222AD54 */ cpu->f[2] = cpu->f[1];
|
|
/* 0222AD58 */ cpu->ctr = cpu->r[0];
|
|
/* 0222AD5C */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 0222AD60 */ cpu->f[1] = cpu->f[29];
|
|
/* 0222AD64 */ cpu->r[4] = cpu->r[1] + 0x0000002Cu;
|
|
/* 0222AD68 */ cpu->r[3] = cpu->r[30];
|
|
/* 0222AD6C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222AD70 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 0222AD74 */ cpu->r[4] = cpu->r[1] + 0x0000002Cu;
|
|
/* 0222AD78 */ cpu->r[3] = cpu->r[30];
|
|
/* 0222AD7C */ Gambit_fn_022294C0(cpu);
|
|
/* 0222AD80 */ _t235 = cpu->r[30] + 0x00000114u;
|
|
/* 0222AD80 */ cpu->r[10] = rbrew_read32(cpu->mem, _t235);
|
|
/* 0222AD84 */ _t236 = rbrew_rlwinm(cpu->r[3], 0x0000000Eu, 0x00000011u, 0x00000011u);
|
|
/* 0222AD84 */ _t237 = cpu->r[10] & 0xFFFFBFFFu;
|
|
/* 0222AD84 */ cpu->r[10] = _t237 | _t236;
|
|
/* 0222AD88 */ _t238 = cpu->r[30] + 0x00000114u;
|
|
/* 0222AD88 */ rbrew_write32(cpu->mem, _t238, cpu->r[10]);
|
|
L_0222AD8C: ; // 0x222ad8c
|
|
/* 0222AD8C */ _t239 = cpu->r[30] + 0x00000114u;
|
|
/* 0222AD8C */ cpu->r[9] = rbrew_read32(cpu->mem, _t239);
|
|
/* 0222AD90 */ cpu->r[0] = 0x00000000u;
|
|
/* 0222AD94 */ _t240 = cpu->r[30] + 0x000000C0u;
|
|
/* 0222AD94 */ rbrew_write8(cpu->mem, _t240, (uint8_t)cpu->r[0]);
|
|
/* 0222AD98 */ cpu->r[9] = rbrew_rlwinm(cpu->r[9], 0x00000000u, 0x0000000Fu, 0x0000000Du);
|
|
/* 0222AD9C */ _t241 = cpu->r[30] + 0x00000114u;
|
|
/* 0222AD9C */ rbrew_write32(cpu->mem, _t241, cpu->r[9]);
|
|
/* 0222ADA0 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0222ADA4 */ _t242 = cpu->r[30] + 0x00000114u;
|
|
/* 0222ADA4 */ rbrew_write8(cpu->mem, _t242, (uint8_t)cpu->r[0]);
|
|
/* 0222ADA8 */ _t243 = cpu->r[12] + 0x00006000u;
|
|
/* 0222ADA8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t243);
|
|
/* 0222ADAC */ _t244 = cpu->r[12] + 0x00000274u;
|
|
/* 0222ADAC */ cpu->r[3] = rbrew_read32(cpu->mem, _t244);
|
|
/* 0222ADB0 */ Gambit_fn_021F7008(cpu);
|
|
/* 0222ADB4 */ _t245 = cpu->r[30] + 0x00000114u;
|
|
/* 0222ADB4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t245);
|
|
/* 0222ADB8 */ cpu->r[8] = cpu->r[3] ^ 0x00000001u;
|
|
/* 0222ADBC */ _t246 = rbrew_rlwinm(cpu->r[8], 0x00000010u, 0x0000000Fu, 0x0000000Fu);
|
|
/* 0222ADBC */ _t247 = cpu->r[10] & 0xFFFEFFFFu;
|
|
/* 0222ADBC */ cpu->r[10] = _t247 | _t246;
|
|
/* 0222ADC0 */ _t248 = cpu->r[30] + 0x00000114u;
|
|
/* 0222ADC0 */ rbrew_write32(cpu->mem, _t248, cpu->r[10]);
|
|
/* 0222ADC4 */ _t249 = cpu->r[1] + 0x00000084u;
|
|
/* 0222ADC4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t249);
|
|
/* 0222ADC8 */ _t250 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0222ADC8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t250);
|
|
/* 0222ADCC */ _t251 = cpu->r[1] + 0x000000B8u;
|
|
/* 0222ADCC */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t251);
|
|
/* 0222ADD0 */ _t252 = cpu->r[1] + 0x000000A8u;
|
|
/* 0222ADD0 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t252);
|
|
/* 0222ADD4 */ _t253 = cpu->r[1] + 0x000000B0u;
|
|
/* 0222ADD4 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t253);
|
|
/* 0222ADD8 */ _t254 = cpu->r[1] + 0x000000A0u;
|
|
/* 0222ADD8 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t254);
|
|
/* 0222ADDC */ _t255 = cpu->r[1] + 0x00000098u;
|
|
/* 0222ADDC */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t255);
|
|
/* 0222ADE0 */ _t256 = cpu->r[1] + 0x000000C8u;
|
|
/* 0222ADE0 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t256);
|
|
/* 0222ADE4 */ _t257 = cpu->r[1] + 0x00000090u;
|
|
/* 0222ADE4 */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t257);
|
|
/* 0222ADE8 */ _t258 = cpu->r[1] + 0x000000C0u;
|
|
/* 0222ADE8 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t258);
|
|
/* 0222ADEC */ _t259 = cpu->r[1] + 0x00000088u;
|
|
/* 0222ADEC */ cpu->r[30] = rbrew_read32(cpu->mem, _t259);
|
|
/* 0222ADF0 */ _t260 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0222ADF0 */ _t261 = _t260 & 0x00000001u;
|
|
/* 0222ADF0 */ if (_t261) goto L_0222ADF4; // else: addr-0 trap, fall-through
|
|
L_0222ADF4: ; // 0x222adf4
|
|
/* 0222ADF4 */ _t262 = cpu->r[1] + 0x000000D4u;
|
|
/* 0222ADF4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t262);
|
|
/* 0222ADF8 */ cpu->lr = cpu->r[0];
|
|
/* 0222ADFC */ cpu->r[1] = cpu->r[1] + 0x000000D0u;
|
|
/* 0222AE00 */ return;
|
|
}
|
|
|
|
// fn_0222AE04 @ 0x222ae04
|
|
void Gambit_fn_0222AE04(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _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;
|
|
|
|
L_0222AE04: ; // 0x222ae04
|
|
/* 0222AE04 */ _t0 = cpu->r[1] + 0xFFFFFF08u;
|
|
/* 0222AE04 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0222AE04 */ cpu->r[1] = _t0;
|
|
/* 0222AE08 */ _t1 = cpu->r[1] + 0x000000A8u;
|
|
/* 0222AE08 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[27]);
|
|
/* 0222AE0C */ /* nop */
|
|
/* 0222AE10 */ _t2 = cpu->r[1] + 0x000000E8u;
|
|
/* 0222AE10 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 0222AE14 */ /* nop */
|
|
/* 0222AE18 */ _t3 = cpu->r[1] + 0x000000C8u;
|
|
/* 0222AE18 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[29]);
|
|
/* 0222AE1C */ _t4 = cpu->r[1] + 0x000000B0u;
|
|
/* 0222AE1C */ rbrew_write_f32(cpu->mem, _t4, cpu->f[27]);
|
|
/* 0222AE20 */ /* nop */
|
|
/* 0222AE24 */ _t5 = cpu->r[1] + 0x000000D8u;
|
|
/* 0222AE24 */ rbrew_write_f64(cpu->mem, _t5, cpu->f[30]);
|
|
/* 0222AE28 */ _t6 = cpu->r[1] + 0x000000F0u;
|
|
/* 0222AE28 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[31]);
|
|
/* 0222AE2C */ /* nop */
|
|
/* 0222AE30 */ _t7 = cpu->r[1] + 0x000000B8u;
|
|
/* 0222AE30 */ rbrew_write_f64(cpu->mem, _t7, cpu->f[28]);
|
|
/* 0222AE34 */ _t8 = cpu->r[1] + 0x000000E0u;
|
|
/* 0222AE34 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[30]);
|
|
/* 0222AE38 */ /* nop */
|
|
/* 0222AE3C */ _t9 = cpu->r[1] + 0x000000D0u;
|
|
/* 0222AE3C */ rbrew_write_f32(cpu->mem, _t9, cpu->f[29]);
|
|
/* 0222AE40 */ _t10 = cpu->r[1] + 0x000000C0u;
|
|
/* 0222AE40 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[28]);
|
|
/* 0222AE44 */ _t11 = cpu->r[4] + 0x00000008u;
|
|
/* 0222AE44 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0222AE48 */ _t12 = cpu->r[3] + 0x00000100u;
|
|
/* 0222AE48 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 0222AE4C */ _t13 = cpu->r[12] + 0x000000FCu;
|
|
/* 0222AE4C */ cpu->r[10] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0222AE50 */ _t14 = cpu->r[3] + 0x00000104u;
|
|
/* 0222AE50 */ cpu->f[2] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 0222AE54 */ cpu->r[6] = 0x10050000u;
|
|
/* 0222AE58 */ _t15 = cpu->r[10] + 0x00000753u;
|
|
/* 0222AE58 */ cpu->r[11] = rbrew_read8(cpu->mem, _t15);
|
|
/* 0222AE5C */ cpu->r[7] = 0x10050000u;
|
|
/* 0222AE60 */ _t16 = cpu->r[6] + 0x00000098u;
|
|
/* 0222AE60 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 0222AE64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0222AE68 */ _t17 = cpu->r[7] + 0x0000009Cu;
|
|
/* 0222AE68 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 0222AE6C */ _t18 = cpu->r[3] + 0x000000FCu;
|
|
/* 0222AE6C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 0222AE70 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222AE70 */ _t20 = _t19 & 0x00000001u;
|
|
/* 0222AE70 */ if (_t20) goto L_0222AE74; else goto L_0222B040;
|
|
L_0222AE74: ; // 0x222ae74
|
|
/* 0222AE74 */ cpu->r[11] = cpu->r[12] + 0x00000218u;
|
|
/* 0222AE78 */ cpu->r[0] = cpu->r[1] + 0x00000074u;
|
|
/* 0222AE7C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[0]);
|
|
/* 0222AE80 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222AE80 */ _t22 = _t21 & 0x00000001u;
|
|
/* 0222AE80 */ if (_t22) goto L_0222AEB8; else goto L_0222AE84;
|
|
L_0222AE84: ; // 0x222ae84
|
|
/* 0222AE84 */ cpu->r[8] = 0x00000003u;
|
|
/* 0222AE88 */ cpu->r[6] = cpu->r[11] + 0xFFFFFFFCu;
|
|
/* 0222AE8C */ cpu->ctr = cpu->r[8];
|
|
/* 0222AE90 */ cpu->r[7] = cpu->r[1] + 0x00000070u;
|
|
L_0222AE94: ; // 0x222ae94
|
|
/* 0222AE94 */ _t23 = cpu->r[6] + 0x00000004u;
|
|
/* 0222AE94 */ cpu->r[9] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0222AE98 */ _t24 = cpu->r[7] + 0x00000004u;
|
|
/* 0222AE98 */ rbrew_write32(cpu->mem, _t24, cpu->r[9]);
|
|
/* 0222AE9C */ _t25 = cpu->r[6] + 0x00000008u;
|
|
/* 0222AE9C */ cpu->r[10] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0222AEA0 */ _t26 = cpu->r[7] + 0x00000008u;
|
|
/* 0222AEA0 */ rbrew_write32(cpu->mem, _t26, cpu->r[10]);
|
|
/* 0222AEA4 */ _t27 = cpu->r[6] + 0x0000000Cu;
|
|
/* 0222AEA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0222AEA8 */ _t28 = cpu->r[7] + 0x0000000Cu;
|
|
/* 0222AEA8 */ rbrew_write32(cpu->mem, _t28, cpu->r[0]);
|
|
/* 0222AEAC */ _t29 = cpu->r[6] + 0x00000010u;
|
|
/* 0222AEAC */ cpu->r[0] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0222AEAC */ cpu->r[6] = _t29;
|
|
/* 0222AEB0 */ _t30 = cpu->r[7] + 0x00000010u;
|
|
/* 0222AEB0 */ rbrew_write32(cpu->mem, _t30, cpu->r[0]);
|
|
/* 0222AEB0 */ cpu->r[7] = _t30;
|
|
/* 0222AEB4 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0222AEB4 */ _t31 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0222AEB4 */ _t32 = _t31 >> (0x00000002u & 31u);
|
|
/* 0222AEB4 */ _t33 = _t32 & 0x00000001u;
|
|
/* 0222AEB4 */ if (_t33) goto L_0222AE94; else goto L_0222AEB8;
|
|
L_0222AEB8: ; // 0x222aeb8
|
|
/* 0222AEB8 */ cpu->r[8] = cpu->r[1] + 0x00000074u;
|
|
/* 0222AEBC */ /* nop */
|
|
/* 0222AEC0 */ /* nop */
|
|
/* 0222AEC4 */ /* nop */
|
|
/* 0222AEC8 */ /* nop */
|
|
/* 0222AECC */ /* nop */
|
|
/* 0222AED0 */ /* nop */
|
|
/* 0222AED4 */ /* nop */
|
|
/* 0222AED8 */ /* nop */
|
|
/* 0222AEDC */ /* nop */
|
|
/* 0222AEE0 */ /* nop */
|
|
/* 0222AEE4 */ /* nop */
|
|
/* 0222AEE8 */ /* nop */
|
|
/* 0222AEEC */ /* nop */
|
|
/* 0222AEF0 */ /* nop */
|
|
/* 0222AEF4 */ /* nop */
|
|
/* 0222AEF8 */ /* nop */
|
|
/* 0222AEFC */ /* nop */
|
|
/* 0222AF00 */ /* nop */
|
|
/* 0222AF04 */ /* nop */
|
|
/* 0222AF08 */ /* nop */
|
|
/* 0222AF0C */ /* nop */
|
|
/* 0222AF10 */ /* nop */
|
|
/* 0222AF14 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[7]);
|
|
/* 0222AF18 */ /* nop */
|
|
/* 0222AF1C */ /* nop */
|
|
/* 0222AF20 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222AF20 */ _t35 = _t34 & 0x00000001u;
|
|
/* 0222AF20 */ if (_t35) goto L_0222AF24; else goto L_0222AF30;
|
|
L_0222AF24: ; // 0x222af24
|
|
/* 0222AF24 */ /* nop */
|
|
/* 0222AF28 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[5], cpu->f[7]);
|
|
/* 0222AF2C */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222AF2C */ _t37 = _t36 & 0x00000001u;
|
|
/* 0222AF2C */ if (_t37) goto L_0222AFA8; else goto L_0222AF30;
|
|
L_0222AF30: ; // 0x222af30
|
|
/* 0222AF30 */ cpu->f[29] = cpu->f[6] / cpu->f[8];
|
|
/* 0222AF34 */ _t38 = cpu->r[1] + 0x00000080u;
|
|
/* 0222AF34 */ cpu->f[3] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 0222AF38 */ /* nop */
|
|
/* 0222AF3C */ /* nop */
|
|
/* 0222AF40 */ _t39 = cpu->r[1] + 0x00000090u;
|
|
/* 0222AF40 */ cpu->f[4] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 0222AF44 */ /* nop */
|
|
/* 0222AF48 */ /* nop */
|
|
/* 0222AF4C */ _t40 = cpu->r[1] + 0x000000A0u;
|
|
/* 0222AF4C */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 0222AF50 */ /* nop */
|
|
/* 0222AF54 */ /* nop */
|
|
/* 0222AF58 */ /* nop */
|
|
/* 0222AF5C */ /* nop */
|
|
/* 0222AF60 */ cpu->r[8] = cpu->r[1] + 0x00000014u;
|
|
/* 0222AF64 */ /* nop */
|
|
/* 0222AF68 */ /* nop */
|
|
/* 0222AF6C */ /* nop */
|
|
/* 0222AF70 */ /* nop */
|
|
/* 0222AF74 */ /* nop */
|
|
/* 0222AF78 */ /* nop */
|
|
/* 0222AF7C */ /* nop */
|
|
/* 0222AF80 */ /* nop */
|
|
/* 0222AF84 */ /* nop */
|
|
/* 0222AF88 */ /* nop */
|
|
/* 0222AF8C */ /* nop */
|
|
/* 0222AF90 */ /* nop */
|
|
/* 0222AF94 */ /* nop */
|
|
/* 0222AF98 */ /* nop */
|
|
/* 0222AF9C */ /* nop */
|
|
/* 0222AFA0 */ /* nop */
|
|
/* 0222AFA4 */ _t41 = cpu->r[4] + 0x00000008u;
|
|
/* 0222AFA4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t41);
|
|
L_0222AFA8: ; // 0x222afa8
|
|
/* 0222AFA8 */ _t42 = cpu->r[1] + 0x00000018u;
|
|
/* 0222AFA8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 0222AFAC */ _t43 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0222AFAC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 0222AFB0 */ cpu->f[0] = cpu->f[0] * cpu->f[1];
|
|
/* 0222AFB4 */ _t44 = cpu->r[1] + 0x00000028u;
|
|
/* 0222AFB4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 0222AFB8 */ _t45 = cpu->r[1] + 0x00000014u;
|
|
/* 0222AFB8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t45);
|
|
/* 0222AFBC */ cpu->f[12] = cpu->f[12] * cpu->f[1];
|
|
/* 0222AFC0 */ _t46 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0222AFC0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 0222AFC4 */ cpu->f[9] = fma(cpu->f[11], cpu->f[31], cpu->f[0]);
|
|
/* 0222AFC8 */ _t47 = cpu->r[1] + 0x00000024u;
|
|
/* 0222AFC8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 0222AFCC */ _t48 = cpu->r[1] + 0x00000038u;
|
|
/* 0222AFCC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 0222AFD0 */ cpu->f[12] = fma(cpu->f[11], cpu->f[31], cpu->f[12]);
|
|
/* 0222AFD4 */ _t49 = cpu->r[1] + 0x00000030u;
|
|
/* 0222AFD4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 0222AFD8 */ cpu->f[8] = fma(cpu->f[10], cpu->f[2], cpu->f[9]);
|
|
/* 0222AFDC */ _t50 = cpu->r[1] + 0x00000020u;
|
|
/* 0222AFDC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t50);
|
|
/* 0222AFE0 */ cpu->f[10] = fma(cpu->f[13], cpu->f[2], cpu->f[12]);
|
|
/* 0222AFE4 */ _t51 = cpu->r[1] + 0x00000034u;
|
|
/* 0222AFE4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 0222AFE8 */ cpu->f[9] = cpu->f[8] + cpu->f[9];
|
|
/* 0222AFEC */ _t52 = cpu->r[4] + 0x00000014u;
|
|
/* 0222AFEC */ cpu->r[0] = rbrew_read32(cpu->mem, _t52);
|
|
/* 0222AFF0 */ cpu->f[11] = cpu->f[10] + cpu->f[11];
|
|
/* 0222AFF4 */ _t53 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0222AFF4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t53);
|
|
/* 0222AFF8 */ cpu->f[0] = cpu->f[0] * cpu->f[1];
|
|
/* 0222AFFC */ _t54 = cpu->r[1] + 0x00000008u;
|
|
/* 0222AFFC */ rbrew_write_f32(cpu->mem, _t54, cpu->f[9]);
|
|
/* 0222B000 */ _t55 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222B000 */ rbrew_write_f32(cpu->mem, _t55, cpu->f[11]);
|
|
/* 0222B004 */ _t56 = cpu->r[12] + 0x00000130u;
|
|
/* 0222B004 */ cpu->r[5] = rbrew_read32(cpu->mem, _t56);
|
|
/* 0222B008 */ cpu->f[12] = fma(cpu->f[12], cpu->f[31], cpu->f[0]);
|
|
/* 0222B00C */ _t57 = cpu->r[1] + 0x00000040u;
|
|
/* 0222B00C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 0222B010 */ cpu->r[11] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x00000030u);
|
|
/* 0222B014 */ cpu->f[13] = fma(cpu->f[13], cpu->f[2], cpu->f[12]);
|
|
/* 0222B018 */ _t58 = cpu->r[1] + 0x00000008u;
|
|
/* 0222B018 */ cpu->f[12] = rbrew_read_f64(cpu->mem, _t58);
|
|
/* 0222B01C */ _t59 = cpu->r[11] + cpu->r[5];
|
|
/* 0222B01C */ rbrew_write8(cpu->mem, _t59, (uint8_t)cpu->r[12]);
|
|
/* 0222B020 */ _t60 = cpu->r[4] + 0x00000014u;
|
|
/* 0222B020 */ cpu->r[0] = rbrew_read32(cpu->mem, _t60);
|
|
/* 0222B024 */ _t61 = cpu->r[4] + 0x00000008u;
|
|
/* 0222B024 */ cpu->r[8] = rbrew_read32(cpu->mem, _t61);
|
|
/* 0222B028 */ cpu->r[9] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x00000030u);
|
|
/* 0222B02C */ _t62 = cpu->r[8] + 0x00000130u;
|
|
/* 0222B02C */ cpu->r[5] = rbrew_read32(cpu->mem, _t62);
|
|
/* 0222B030 */ cpu->f[0] = cpu->f[13] + cpu->f[0];
|
|
/* 0222B034 */ cpu->r[4] = cpu->r[5] + cpu->r[9];
|
|
/* 0222B038 */ _t63 = cpu->r[4] + 0x00000008u;
|
|
/* 0222B038 */ rbrew_write_f32(cpu->mem, _t63, cpu->f[0]);
|
|
/* 0222B03C */ goto L_0222B444;
|
|
L_0222B040: ; // 0x222b040
|
|
/* 0222B040 */ _t64 = cpu->r[4] + 0x00000008u;
|
|
/* 0222B040 */ cpu->r[12] = rbrew_read32(cpu->mem, _t64);
|
|
/* 0222B044 */ _t65 = cpu->r[12] + 0x000000FCu;
|
|
/* 0222B044 */ cpu->r[8] = rbrew_read32(cpu->mem, _t65);
|
|
/* 0222B048 */ _t66 = cpu->r[8] + 0x00000753u;
|
|
/* 0222B048 */ cpu->r[0] = rbrew_read8(cpu->mem, _t66);
|
|
/* 0222B04C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 0222B050 */ _t67 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222B050 */ _t68 = _t67 & 0x00000001u;
|
|
/* 0222B050 */ if (_t68) goto L_0222B054; else goto L_0222B24C;
|
|
L_0222B054: ; // 0x222b054
|
|
/* 0222B054 */ _t69 = cpu->r[4] + 0x00000014u;
|
|
/* 0222B054 */ cpu->r[0] = rbrew_read32(cpu->mem, _t69);
|
|
/* 0222B058 */ _t70 = cpu->r[12] + 0x00000224u;
|
|
/* 0222B058 */ cpu->f[4] = rbrew_read_f32(cpu->mem, _t70);
|
|
/* 0222B05C */ cpu->r[10] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x000000B0u);
|
|
/* 0222B060 */ _t71 = cpu->r[12] + 0x00000148u;
|
|
/* 0222B060 */ cpu->r[11] = rbrew_read32(cpu->mem, _t71);
|
|
/* 0222B064 */ _t72 = cpu->r[12] + 0x00000234u;
|
|
/* 0222B064 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t72);
|
|
/* 0222B068 */ cpu->r[8] = cpu->r[11] + cpu->r[10];
|
|
/* 0222B06C */ _t73 = cpu->r[12] + 0x00000244u;
|
|
/* 0222B06C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t73);
|
|
/* 0222B070 */ _t74 = cpu->r[8] + 0x00000058u;
|
|
/* 0222B070 */ cpu->f[3] = rbrew_read_f32(cpu->mem, _t74);
|
|
/* 0222B074 */ _t75 = cpu->r[8] + 0x00000078u;
|
|
/* 0222B074 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t75);
|
|
/* 0222B078 */ _t76 = cpu->r[8] + 0x00000054u;
|
|
/* 0222B078 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t76);
|
|
/* 0222B07C */ _t77 = cpu->r[8] + 0x00000074u;
|
|
/* 0222B07C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t77);
|
|
/* 0222B080 */ _t78 = cpu->r[8] + 0x00000064u;
|
|
/* 0222B080 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t78);
|
|
/* 0222B084 */ _t79 = cpu->r[8] + 0x00000060u;
|
|
/* 0222B084 */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t79);
|
|
/* 0222B088 */ _t80 = cpu->r[8] + 0x00000070u;
|
|
/* 0222B088 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t80);
|
|
/* 0222B08C */ _t81 = cpu->r[8] + 0x00000050u;
|
|
/* 0222B08C */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t81);
|
|
/* 0222B090 */ _t82 = cpu->r[8] + 0x00000068u;
|
|
/* 0222B090 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t82);
|
|
/* 0222B094 */ _t83 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0222B094 */ rbrew_write_f32(cpu->mem, _t83, cpu->f[13]);
|
|
/* 0222B098 */ cpu->r[11] = cpu->r[1] + 0x00000014u;
|
|
/* 0222B09C */ _t84 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0222B09C */ rbrew_write_f32(cpu->mem, _t84, cpu->f[3]);
|
|
/* 0222B0A0 */ _t85 = cpu->r[1] + 0x00000020u;
|
|
/* 0222B0A0 */ rbrew_write_f32(cpu->mem, _t85, cpu->f[4]);
|
|
/* 0222B0A4 */ _t86 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0222B0A4 */ rbrew_write_f32(cpu->mem, _t86, cpu->f[9]);
|
|
/* 0222B0A8 */ _t87 = cpu->r[1] + 0x00000028u;
|
|
/* 0222B0A8 */ rbrew_write_f32(cpu->mem, _t87, cpu->f[8]);
|
|
/* 0222B0AC */ _t88 = cpu->r[1] + 0x00000034u;
|
|
/* 0222B0AC */ rbrew_write_f32(cpu->mem, _t88, cpu->f[11]);
|
|
/* 0222B0B0 */ _t89 = cpu->r[1] + 0x00000038u;
|
|
/* 0222B0B0 */ rbrew_write_f32(cpu->mem, _t89, cpu->f[12]);
|
|
/* 0222B0B4 */ _t90 = cpu->r[1] + 0x00000024u;
|
|
/* 0222B0B4 */ rbrew_write_f32(cpu->mem, _t90, cpu->f[5]);
|
|
/* 0222B0B8 */ _t91 = cpu->r[1] + 0x00000018u;
|
|
/* 0222B0B8 */ rbrew_write_f32(cpu->mem, _t91, cpu->f[30]);
|
|
/* 0222B0BC */ _t92 = cpu->r[1] + 0x00000014u;
|
|
/* 0222B0BC */ rbrew_write_f32(cpu->mem, _t92, cpu->f[29]);
|
|
/* 0222B0C0 */ _t93 = cpu->r[1] + 0x00000030u;
|
|
/* 0222B0C0 */ rbrew_write_f32(cpu->mem, _t93, cpu->f[10]);
|
|
/* 0222B0C4 */ _t94 = cpu->r[1] + 0x00000040u;
|
|
/* 0222B0C4 */ rbrew_write_f32(cpu->mem, _t94, cpu->f[0]);
|
|
/* 0222B0C8 */ /* nop */
|
|
/* 0222B0CC */ /* nop */
|
|
/* 0222B0D0 */ /* nop */
|
|
/* 0222B0D4 */ /* nop */
|
|
/* 0222B0D8 */ /* nop */
|
|
/* 0222B0DC */ /* nop */
|
|
/* 0222B0E0 */ /* nop */
|
|
/* 0222B0E4 */ /* nop */
|
|
/* 0222B0E8 */ /* nop */
|
|
/* 0222B0EC */ /* nop */
|
|
/* 0222B0F0 */ /* nop */
|
|
/* 0222B0F4 */ /* nop */
|
|
/* 0222B0F8 */ /* nop */
|
|
/* 0222B0FC */ /* nop */
|
|
/* 0222B100 */ /* nop */
|
|
/* 0222B104 */ /* nop */
|
|
/* 0222B108 */ /* nop */
|
|
/* 0222B10C */ /* nop */
|
|
/* 0222B110 */ /* nop */
|
|
/* 0222B114 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[4], cpu->f[7]);
|
|
/* 0222B118 */ /* nop */
|
|
/* 0222B11C */ /* nop */
|
|
/* 0222B120 */ /* nop */
|
|
/* 0222B124 */ /* nop */
|
|
/* 0222B128 */ /* nop */
|
|
/* 0222B12C */ _t95 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222B12C */ _t96 = _t95 & 0x00000001u;
|
|
/* 0222B12C */ if (_t96) goto L_0222B130; else goto L_0222B13C;
|
|
L_0222B130: ; // 0x222b130
|
|
/* 0222B130 */ /* nop */
|
|
/* 0222B134 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[7]);
|
|
/* 0222B138 */ _t97 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222B138 */ _t98 = _t97 & 0x00000001u;
|
|
/* 0222B138 */ if (_t98) goto L_0222B1B8; else goto L_0222B13C;
|
|
L_0222B13C: ; // 0x222b13c
|
|
/* 0222B13C */ cpu->f[28] = cpu->f[6] / cpu->f[4];
|
|
/* 0222B140 */ _t99 = cpu->r[1] + 0x00000020u;
|
|
/* 0222B140 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t99);
|
|
/* 0222B144 */ /* nop */
|
|
/* 0222B148 */ /* nop */
|
|
/* 0222B14C */ _t100 = cpu->r[1] + 0x00000030u;
|
|
/* 0222B14C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t100);
|
|
/* 0222B150 */ /* nop */
|
|
/* 0222B154 */ /* nop */
|
|
/* 0222B158 */ /* nop */
|
|
/* 0222B15C */ _t101 = cpu->r[1] + 0x00000040u;
|
|
/* 0222B15C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t101);
|
|
/* 0222B160 */ /* nop */
|
|
/* 0222B164 */ /* nop */
|
|
/* 0222B168 */ /* nop */
|
|
/* 0222B16C */ /* nop */
|
|
/* 0222B170 */ cpu->r[7] = cpu->r[1] + 0x00000044u;
|
|
/* 0222B174 */ /* nop */
|
|
/* 0222B178 */ /* nop */
|
|
/* 0222B17C */ /* nop */
|
|
/* 0222B180 */ /* nop */
|
|
/* 0222B184 */ /* nop */
|
|
/* 0222B188 */ /* nop */
|
|
/* 0222B18C */ /* nop */
|
|
/* 0222B190 */ /* nop */
|
|
/* 0222B194 */ /* nop */
|
|
/* 0222B198 */ /* nop */
|
|
/* 0222B19C */ /* nop */
|
|
/* 0222B1A0 */ /* nop */
|
|
/* 0222B1A4 */ /* nop */
|
|
/* 0222B1A8 */ /* nop */
|
|
/* 0222B1AC */ /* nop */
|
|
/* 0222B1B0 */ _t102 = cpu->r[4] + 0x00000008u;
|
|
/* 0222B1B0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t102);
|
|
/* 0222B1B4 */ _t103 = cpu->r[4] + 0x00000014u;
|
|
/* 0222B1B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t103);
|
|
L_0222B1B8: ; // 0x222b1b8
|
|
/* 0222B1B8 */ _t104 = cpu->r[1] + 0x00000048u;
|
|
/* 0222B1B8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t104);
|
|
/* 0222B1BC */ _t105 = cpu->r[1] + 0x00000068u;
|
|
/* 0222B1BC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t105);
|
|
/* 0222B1C0 */ cpu->f[10] = cpu->f[13] * cpu->f[1];
|
|
/* 0222B1C4 */ _t106 = cpu->r[1] + 0x00000058u;
|
|
/* 0222B1C4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t106);
|
|
/* 0222B1C8 */ cpu->f[0] = cpu->f[0] * cpu->f[1];
|
|
/* 0222B1CC */ _t107 = cpu->r[1] + 0x00000044u;
|
|
/* 0222B1CC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t107);
|
|
/* 0222B1D0 */ cpu->f[12] = cpu->f[13] * cpu->f[1];
|
|
/* 0222B1D4 */ _t108 = cpu->r[1] + 0x00000054u;
|
|
/* 0222B1D4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t108);
|
|
/* 0222B1D8 */ cpu->r[11] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x00000030u);
|
|
/* 0222B1DC */ cpu->f[9] = fma(cpu->f[9], cpu->f[31], cpu->f[10]);
|
|
/* 0222B1E0 */ _t109 = cpu->r[1] + 0x00000064u;
|
|
/* 0222B1E0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t109);
|
|
/* 0222B1E4 */ cpu->f[11] = fma(cpu->f[11], cpu->f[31], cpu->f[12]);
|
|
/* 0222B1E8 */ _t110 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0222B1E8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t110);
|
|
/* 0222B1EC */ cpu->f[12] = fma(cpu->f[13], cpu->f[31], cpu->f[0]);
|
|
/* 0222B1F0 */ _t111 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0222B1F0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t111);
|
|
/* 0222B1F4 */ cpu->f[10] = fma(cpu->f[10], cpu->f[2], cpu->f[9]);
|
|
/* 0222B1F8 */ _t112 = cpu->r[1] + 0x00000050u;
|
|
/* 0222B1F8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t112);
|
|
/* 0222B1FC */ cpu->f[11] = fma(cpu->f[0], cpu->f[2], cpu->f[11]);
|
|
/* 0222B200 */ _t113 = cpu->r[1] + 0x00000060u;
|
|
/* 0222B200 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t113);
|
|
/* 0222B204 */ cpu->f[10] = cpu->f[10] + cpu->f[13];
|
|
/* 0222B208 */ _t114 = cpu->r[1] + 0x0000006Cu;
|
|
/* 0222B208 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t114);
|
|
/* 0222B20C */ cpu->f[11] = cpu->f[11] + cpu->f[0];
|
|
/* 0222B210 */ _t115 = cpu->r[1] + 0x00000070u;
|
|
/* 0222B210 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t115);
|
|
/* 0222B214 */ cpu->f[13] = fma(cpu->f[13], cpu->f[2], cpu->f[12]);
|
|
/* 0222B218 */ _t116 = cpu->r[1] + 0x00000008u;
|
|
/* 0222B218 */ rbrew_write_f32(cpu->mem, _t116, cpu->f[10]);
|
|
/* 0222B21C */ _t117 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222B21C */ rbrew_write_f32(cpu->mem, _t117, cpu->f[11]);
|
|
/* 0222B220 */ _t118 = cpu->r[1] + 0x00000008u;
|
|
/* 0222B220 */ cpu->f[12] = rbrew_read_f64(cpu->mem, _t118);
|
|
/* 0222B224 */ _t119 = cpu->r[12] + 0x00000130u;
|
|
/* 0222B224 */ cpu->r[5] = rbrew_read32(cpu->mem, _t119);
|
|
/* 0222B228 */ _t120 = cpu->r[11] + cpu->r[5];
|
|
/* 0222B228 */ rbrew_write8(cpu->mem, _t120, (uint8_t)cpu->r[12]);
|
|
/* 0222B22C */ _t121 = cpu->r[4] + 0x00000014u;
|
|
/* 0222B22C */ cpu->r[0] = rbrew_read32(cpu->mem, _t121);
|
|
/* 0222B230 */ _t122 = cpu->r[4] + 0x00000008u;
|
|
/* 0222B230 */ cpu->r[8] = rbrew_read32(cpu->mem, _t122);
|
|
/* 0222B234 */ cpu->r[9] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x00000030u);
|
|
/* 0222B238 */ _t123 = cpu->r[8] + 0x00000130u;
|
|
/* 0222B238 */ cpu->r[5] = rbrew_read32(cpu->mem, _t123);
|
|
/* 0222B23C */ cpu->f[0] = cpu->f[13] + cpu->f[0];
|
|
/* 0222B240 */ cpu->r[4] = cpu->r[5] + cpu->r[9];
|
|
/* 0222B244 */ _t124 = cpu->r[4] + 0x00000008u;
|
|
/* 0222B244 */ rbrew_write_f32(cpu->mem, _t124, cpu->f[0]);
|
|
/* 0222B248 */ goto L_0222B444;
|
|
L_0222B24C: ; // 0x222b24c
|
|
/* 0222B24C */ _t125 = cpu->r[4] + 0x00000014u;
|
|
/* 0222B24C */ cpu->r[0] = rbrew_read32(cpu->mem, _t125);
|
|
/* 0222B250 */ _t126 = cpu->r[4] + 0x00000008u;
|
|
/* 0222B250 */ cpu->r[12] = rbrew_read32(cpu->mem, _t126);
|
|
/* 0222B254 */ cpu->r[8] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x000000B0u);
|
|
/* 0222B258 */ _t127 = cpu->r[12] + 0x00000148u;
|
|
/* 0222B258 */ cpu->r[9] = rbrew_read32(cpu->mem, _t127);
|
|
/* 0222B25C */ cpu->r[8] = cpu->r[9] + cpu->r[8];
|
|
/* 0222B260 */ _t128 = cpu->r[8] + 0x00000064u;
|
|
/* 0222B260 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t128);
|
|
/* 0222B264 */ _t129 = cpu->r[8] + 0x0000005Cu;
|
|
/* 0222B264 */ cpu->f[4] = rbrew_read_f32(cpu->mem, _t129);
|
|
/* 0222B268 */ _t130 = cpu->r[8] + 0x00000060u;
|
|
/* 0222B268 */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t130);
|
|
/* 0222B26C */ _t131 = cpu->r[8] + 0x00000074u;
|
|
/* 0222B26C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t131);
|
|
/* 0222B270 */ _t132 = cpu->r[8] + 0x00000068u;
|
|
/* 0222B270 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t132);
|
|
/* 0222B274 */ _t133 = cpu->r[8] + 0x00000070u;
|
|
/* 0222B274 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t133);
|
|
/* 0222B278 */ _t134 = cpu->r[8] + 0x00000054u;
|
|
/* 0222B278 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t134);
|
|
/* 0222B27C */ _t135 = cpu->r[8] + 0x0000006Cu;
|
|
/* 0222B27C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t135);
|
|
/* 0222B280 */ _t136 = cpu->r[8] + 0x0000007Cu;
|
|
/* 0222B280 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t136);
|
|
/* 0222B284 */ _t137 = cpu->r[8] + 0x00000058u;
|
|
/* 0222B284 */ cpu->f[3] = rbrew_read_f32(cpu->mem, _t137);
|
|
/* 0222B288 */ _t138 = cpu->r[8] + 0x00000050u;
|
|
/* 0222B288 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t138);
|
|
/* 0222B28C */ _t139 = cpu->r[8] + 0x00000078u;
|
|
/* 0222B28C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t139);
|
|
/* 0222B290 */ _t140 = cpu->r[1] + 0x00000014u;
|
|
/* 0222B290 */ rbrew_write_f32(cpu->mem, _t140, cpu->f[29]);
|
|
/* 0222B294 */ _t141 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0222B294 */ rbrew_write_f32(cpu->mem, _t141, cpu->f[3]);
|
|
/* 0222B298 */ _t142 = cpu->r[1] + 0x00000034u;
|
|
/* 0222B298 */ rbrew_write_f32(cpu->mem, _t142, cpu->f[11]);
|
|
/* 0222B29C */ _t143 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0222B29C */ rbrew_write_f32(cpu->mem, _t143, cpu->f[13]);
|
|
/* 0222B2A0 */ _t144 = cpu->r[1] + 0x00000030u;
|
|
/* 0222B2A0 */ rbrew_write_f32(cpu->mem, _t144, cpu->f[10]);
|
|
/* 0222B2A4 */ _t145 = cpu->r[1] + 0x00000024u;
|
|
/* 0222B2A4 */ rbrew_write_f32(cpu->mem, _t145, cpu->f[5]);
|
|
/* 0222B2A8 */ _t146 = cpu->r[1] + 0x00000018u;
|
|
/* 0222B2A8 */ rbrew_write_f32(cpu->mem, _t146, cpu->f[30]);
|
|
/* 0222B2AC */ _t147 = cpu->r[1] + 0x00000040u;
|
|
/* 0222B2AC */ rbrew_write_f32(cpu->mem, _t147, cpu->f[0]);
|
|
/* 0222B2B0 */ _t148 = cpu->r[1] + 0x00000020u;
|
|
/* 0222B2B0 */ rbrew_write_f32(cpu->mem, _t148, cpu->f[4]);
|
|
/* 0222B2B4 */ _t149 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0222B2B4 */ rbrew_write_f32(cpu->mem, _t149, cpu->f[9]);
|
|
/* 0222B2B8 */ _t150 = cpu->r[1] + 0x00000038u;
|
|
/* 0222B2B8 */ rbrew_write_f32(cpu->mem, _t150, cpu->f[12]);
|
|
/* 0222B2BC */ cpu->r[6] = cpu->r[1] + 0x00000014u;
|
|
/* 0222B2C0 */ _t151 = cpu->r[1] + 0x00000028u;
|
|
/* 0222B2C0 */ rbrew_write_f32(cpu->mem, _t151, cpu->f[8]);
|
|
/* 0222B2C4 */ /* nop */
|
|
/* 0222B2C8 */ /* nop */
|
|
/* 0222B2CC */ /* nop */
|
|
/* 0222B2D0 */ /* nop */
|
|
/* 0222B2D4 */ /* nop */
|
|
/* 0222B2D8 */ /* nop */
|
|
/* 0222B2DC */ /* nop */
|
|
/* 0222B2E0 */ /* nop */
|
|
/* 0222B2E4 */ /* nop */
|
|
/* 0222B2E8 */ /* nop */
|
|
/* 0222B2EC */ /* nop */
|
|
/* 0222B2F0 */ /* nop */
|
|
/* 0222B2F4 */ /* nop */
|
|
/* 0222B2F8 */ /* nop */
|
|
/* 0222B2FC */ /* nop */
|
|
/* 0222B300 */ /* nop */
|
|
/* 0222B304 */ /* nop */
|
|
/* 0222B308 */ /* nop */
|
|
/* 0222B30C */ /* nop */
|
|
/* 0222B310 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[7]);
|
|
/* 0222B314 */ /* nop */
|
|
/* 0222B318 */ /* nop */
|
|
/* 0222B31C */ /* nop */
|
|
/* 0222B320 */ /* nop */
|
|
/* 0222B324 */ /* nop */
|
|
/* 0222B328 */ _t152 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222B328 */ _t153 = _t152 & 0x00000001u;
|
|
/* 0222B328 */ if (_t153) goto L_0222B32C; else goto L_0222B338;
|
|
L_0222B32C: ; // 0x222b32c
|
|
/* 0222B32C */ /* nop */
|
|
/* 0222B330 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[5], cpu->f[7]);
|
|
/* 0222B334 */ _t154 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222B334 */ _t155 = _t154 & 0x00000001u;
|
|
/* 0222B334 */ if (_t155) goto L_0222B3B4; else goto L_0222B338;
|
|
L_0222B338: ; // 0x222b338
|
|
/* 0222B338 */ cpu->f[29] = cpu->f[6] / cpu->f[11];
|
|
/* 0222B33C */ _t156 = cpu->r[1] + 0x00000020u;
|
|
/* 0222B33C */ cpu->f[3] = rbrew_read_f32(cpu->mem, _t156);
|
|
/* 0222B340 */ /* nop */
|
|
/* 0222B344 */ cpu->r[5] = cpu->r[1] + 0x00000044u;
|
|
/* 0222B348 */ /* nop */
|
|
/* 0222B34C */ _t157 = cpu->r[1] + 0x00000040u;
|
|
/* 0222B34C */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t157);
|
|
/* 0222B350 */ /* nop */
|
|
/* 0222B354 */ _t158 = cpu->r[1] + 0x00000030u;
|
|
/* 0222B354 */ cpu->f[4] = rbrew_read_f32(cpu->mem, _t158);
|
|
/* 0222B358 */ /* nop */
|
|
/* 0222B35C */ /* nop */
|
|
/* 0222B360 */ /* nop */
|
|
/* 0222B364 */ /* nop */
|
|
/* 0222B368 */ /* nop */
|
|
/* 0222B36C */ /* nop */
|
|
/* 0222B370 */ /* nop */
|
|
/* 0222B374 */ /* nop */
|
|
/* 0222B378 */ /* nop */
|
|
/* 0222B37C */ /* nop */
|
|
/* 0222B380 */ /* nop */
|
|
/* 0222B384 */ /* nop */
|
|
/* 0222B388 */ /* nop */
|
|
/* 0222B38C */ /* nop */
|
|
/* 0222B390 */ /* nop */
|
|
/* 0222B394 */ /* nop */
|
|
/* 0222B398 */ /* nop */
|
|
/* 0222B39C */ /* nop */
|
|
/* 0222B3A0 */ /* nop */
|
|
/* 0222B3A4 */ /* nop */
|
|
/* 0222B3A8 */ /* nop */
|
|
/* 0222B3AC */ _t159 = cpu->r[4] + 0x00000008u;
|
|
/* 0222B3AC */ cpu->r[12] = rbrew_read32(cpu->mem, _t159);
|
|
/* 0222B3B0 */ _t160 = cpu->r[4] + 0x00000014u;
|
|
/* 0222B3B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t160);
|
|
L_0222B3B4: ; // 0x222b3b4
|
|
/* 0222B3B4 */ _t161 = cpu->r[1] + 0x00000048u;
|
|
/* 0222B3B4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t161);
|
|
/* 0222B3B8 */ _t162 = cpu->r[1] + 0x00000068u;
|
|
/* 0222B3B8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t162);
|
|
/* 0222B3BC */ cpu->f[10] = cpu->f[13] * cpu->f[1];
|
|
/* 0222B3C0 */ _t163 = cpu->r[1] + 0x00000058u;
|
|
/* 0222B3C0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t163);
|
|
/* 0222B3C4 */ cpu->f[0] = cpu->f[0] * cpu->f[1];
|
|
/* 0222B3C8 */ _t164 = cpu->r[1] + 0x00000044u;
|
|
/* 0222B3C8 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t164);
|
|
/* 0222B3CC */ cpu->f[12] = cpu->f[13] * cpu->f[1];
|
|
/* 0222B3D0 */ _t165 = cpu->r[1] + 0x00000054u;
|
|
/* 0222B3D0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t165);
|
|
/* 0222B3D4 */ cpu->r[11] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x00000030u);
|
|
/* 0222B3D8 */ cpu->f[9] = fma(cpu->f[9], cpu->f[31], cpu->f[10]);
|
|
/* 0222B3DC */ _t166 = cpu->r[1] + 0x00000064u;
|
|
/* 0222B3DC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t166);
|
|
/* 0222B3E0 */ cpu->f[11] = fma(cpu->f[11], cpu->f[31], cpu->f[12]);
|
|
/* 0222B3E4 */ _t167 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0222B3E4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t167);
|
|
/* 0222B3E8 */ cpu->f[12] = fma(cpu->f[13], cpu->f[31], cpu->f[0]);
|
|
/* 0222B3EC */ _t168 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0222B3EC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t168);
|
|
/* 0222B3F0 */ cpu->f[10] = fma(cpu->f[10], cpu->f[2], cpu->f[9]);
|
|
/* 0222B3F4 */ _t169 = cpu->r[1] + 0x00000050u;
|
|
/* 0222B3F4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t169);
|
|
/* 0222B3F8 */ cpu->f[11] = fma(cpu->f[0], cpu->f[2], cpu->f[11]);
|
|
/* 0222B3FC */ _t170 = cpu->r[1] + 0x00000060u;
|
|
/* 0222B3FC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t170);
|
|
/* 0222B400 */ cpu->f[10] = cpu->f[10] + cpu->f[13];
|
|
/* 0222B404 */ _t171 = cpu->r[1] + 0x0000006Cu;
|
|
/* 0222B404 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t171);
|
|
/* 0222B408 */ cpu->f[11] = cpu->f[11] + cpu->f[0];
|
|
/* 0222B40C */ _t172 = cpu->r[1] + 0x00000070u;
|
|
/* 0222B40C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t172);
|
|
/* 0222B410 */ cpu->f[13] = fma(cpu->f[13], cpu->f[2], cpu->f[12]);
|
|
/* 0222B414 */ _t173 = cpu->r[1] + 0x00000008u;
|
|
/* 0222B414 */ rbrew_write_f32(cpu->mem, _t173, cpu->f[10]);
|
|
/* 0222B418 */ _t174 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222B418 */ rbrew_write_f32(cpu->mem, _t174, cpu->f[11]);
|
|
/* 0222B41C */ _t175 = cpu->r[1] + 0x00000008u;
|
|
/* 0222B41C */ cpu->f[12] = rbrew_read_f64(cpu->mem, _t175);
|
|
/* 0222B420 */ _t176 = cpu->r[12] + 0x00000130u;
|
|
/* 0222B420 */ cpu->r[5] = rbrew_read32(cpu->mem, _t176);
|
|
/* 0222B424 */ _t177 = cpu->r[11] + cpu->r[5];
|
|
/* 0222B424 */ rbrew_write8(cpu->mem, _t177, (uint8_t)cpu->r[12]);
|
|
/* 0222B428 */ _t178 = cpu->r[4] + 0x00000014u;
|
|
/* 0222B428 */ cpu->r[0] = rbrew_read32(cpu->mem, _t178);
|
|
/* 0222B42C */ _t179 = cpu->r[4] + 0x00000008u;
|
|
/* 0222B42C */ cpu->r[8] = rbrew_read32(cpu->mem, _t179);
|
|
/* 0222B430 */ cpu->r[9] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x00000030u);
|
|
/* 0222B434 */ _t180 = cpu->r[8] + 0x00000130u;
|
|
/* 0222B434 */ cpu->r[5] = rbrew_read32(cpu->mem, _t180);
|
|
/* 0222B438 */ cpu->f[0] = cpu->f[13] + cpu->f[0];
|
|
/* 0222B43C */ cpu->r[4] = cpu->r[5] + cpu->r[9];
|
|
/* 0222B440 */ _t181 = cpu->r[4] + 0x00000008u;
|
|
/* 0222B440 */ rbrew_write_f32(cpu->mem, _t181, cpu->f[0]);
|
|
L_0222B444: ; // 0x222b444
|
|
/* 0222B444 */ _t182 = cpu->r[1] + 0x000000F0u;
|
|
/* 0222B444 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t182);
|
|
/* 0222B448 */ _t183 = cpu->r[1] + 0x000000D0u;
|
|
/* 0222B448 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t183);
|
|
/* 0222B44C */ _t184 = cpu->r[1] + 0x000000E8u;
|
|
/* 0222B44C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t184);
|
|
/* 0222B450 */ _t185 = cpu->r[1] + 0x000000E0u;
|
|
/* 0222B450 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t185);
|
|
/* 0222B454 */ _t186 = cpu->r[1] + 0x000000C8u;
|
|
/* 0222B454 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t186);
|
|
/* 0222B458 */ _t187 = cpu->r[1] + 0x000000D8u;
|
|
/* 0222B458 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t187);
|
|
/* 0222B45C */ _t188 = cpu->r[1] + 0x000000C0u;
|
|
/* 0222B45C */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t188);
|
|
/* 0222B460 */ _t189 = cpu->r[1] + 0x000000B0u;
|
|
/* 0222B460 */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t189);
|
|
/* 0222B464 */ _t190 = cpu->r[1] + 0x000000B8u;
|
|
/* 0222B464 */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t190);
|
|
/* 0222B468 */ _t191 = cpu->r[1] + 0x000000A8u;
|
|
/* 0222B468 */ cpu->f[27] = rbrew_read_f64(cpu->mem, _t191);
|
|
/* 0222B46C */ _t192 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0222B46C */ _t193 = _t192 & 0x00000001u;
|
|
/* 0222B46C */ if (_t193) goto L_0222B470; // else: addr-0 trap, fall-through
|
|
L_0222B470: ; // 0x222b470
|
|
/* 0222B470 */ cpu->r[1] = cpu->r[1] + 0x000000F8u;
|
|
/* 0222B474 */ return;
|
|
}
|
|
|
|
// fn_0222B478 @ 0x222b478
|
|
void Gambit_fn_0222B478(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _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;
|
|
double _ft42, _ft43;
|
|
|
|
L_0222B478: ; // 0x222b478
|
|
/* 0222B478 */ _t0 = cpu->r[1] + 0xFFFFFEA8u;
|
|
/* 0222B478 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0222B478 */ cpu->r[1] = _t0;
|
|
/* 0222B47C */ _t1 = cpu->r[1] + 0x000000E0u;
|
|
/* 0222B47C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0222B480 */ cpu->r[0] = cpu->lr;
|
|
/* 0222B484 */ _t2 = cpu->r[1] + 0x000000E8u;
|
|
/* 0222B484 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[25]);
|
|
/* 0222B488 */ /* nop */
|
|
/* 0222B48C */ _t3 = cpu->r[1] + 0x00000128u;
|
|
/* 0222B48C */ rbrew_write_f64(cpu->mem, _t3, cpu->f[29]);
|
|
/* 0222B490 */ _t4 = cpu->r[1] + 0x00000108u;
|
|
/* 0222B490 */ rbrew_write_f64(cpu->mem, _t4, cpu->f[27]);
|
|
/* 0222B494 */ /* nop */
|
|
/* 0222B498 */ _t5 = cpu->r[1] + 0x000000F8u;
|
|
/* 0222B498 */ rbrew_write_f64(cpu->mem, _t5, cpu->f[26]);
|
|
/* 0222B49C */ _t6 = cpu->r[1] + 0x00000130u;
|
|
/* 0222B49C */ rbrew_write_f32(cpu->mem, _t6, cpu->f[29]);
|
|
/* 0222B4A0 */ _t7 = cpu->r[1] + 0x00000118u;
|
|
/* 0222B4A0 */ rbrew_write_f64(cpu->mem, _t7, cpu->f[28]);
|
|
/* 0222B4A4 */ _t8 = cpu->r[1] + 0x0000015Cu;
|
|
/* 0222B4A4 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0222B4A8 */ /* nop */
|
|
/* 0222B4AC */ _t9 = cpu->r[1] + 0x000000F0u;
|
|
/* 0222B4AC */ rbrew_write_f32(cpu->mem, _t9, cpu->f[25]);
|
|
/* 0222B4B0 */ /* nop */
|
|
/* 0222B4B4 */ _t10 = cpu->r[1] + 0x00000100u;
|
|
/* 0222B4B4 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[26]);
|
|
/* 0222B4B8 */ /* nop */
|
|
/* 0222B4BC */ _t11 = cpu->r[1] + 0x00000120u;
|
|
/* 0222B4BC */ rbrew_write_f32(cpu->mem, _t11, cpu->f[28]);
|
|
/* 0222B4C0 */ _t12 = cpu->r[1] + 0x00000148u;
|
|
/* 0222B4C0 */ rbrew_write_f64(cpu->mem, _t12, cpu->f[31]);
|
|
/* 0222B4C4 */ /* nop */
|
|
/* 0222B4C8 */ _t13 = cpu->r[1] + 0x00000138u;
|
|
/* 0222B4C8 */ rbrew_write_f64(cpu->mem, _t13, cpu->f[30]);
|
|
/* 0222B4CC */ _t14 = cpu->r[1] + 0x00000150u;
|
|
/* 0222B4CC */ rbrew_write_f32(cpu->mem, _t14, cpu->f[31]);
|
|
/* 0222B4D0 */ _t15 = cpu->r[1] + 0x000000DCu;
|
|
/* 0222B4D0 */ rbrew_write32(cpu->mem, _t15, cpu->r[29]);
|
|
/* 0222B4D4 */ _t16 = cpu->r[1] + 0x000000E4u;
|
|
/* 0222B4D4 */ rbrew_write32(cpu->mem, _t16, cpu->r[31]);
|
|
/* 0222B4D8 */ /* nop */
|
|
/* 0222B4DC */ _t17 = cpu->r[1] + 0x00000110u;
|
|
/* 0222B4DC */ rbrew_write_f32(cpu->mem, _t17, cpu->f[27]);
|
|
/* 0222B4E0 */ _t18 = cpu->r[1] + 0x00000140u;
|
|
/* 0222B4E0 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[30]);
|
|
/* 0222B4E4 */ cpu->r[29] = cpu->r[3];
|
|
/* 0222B4E8 */ _t19 = cpu->r[29] + 0x00000114u;
|
|
/* 0222B4E8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0222B4EC */ cpu->r[9] = rbrew_rlwinm(cpu->r[7], 0x00000014u, 0x00000000u, 0x0000000Bu);
|
|
/* 0222B4F0 */ /* nop */
|
|
/* 0222B4F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x0000000Bu);
|
|
/* 0222B4F8 */ cpu->r[30] = cpu->r[4];
|
|
/* 0222B4FC */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222B4FC */ _t21 = _t20 & 0x00000001u;
|
|
/* 0222B4FC */ if (_t21) goto L_0222B750; else goto L_0222B500;
|
|
L_0222B500: ; // 0x222b500
|
|
/* 0222B500 */ _t22 = cpu->r[29] + 0x00000004u;
|
|
/* 0222B500 */ cpu->r[8] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0222B504 */ _t23 = cpu->r[8] + 0x00000314u;
|
|
/* 0222B504 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0222B508 */ cpu->ctr = cpu->r[0];
|
|
/* 0222B50C */ cpu->r[3] = cpu->r[29];
|
|
/* 0222B510 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222B514 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0222B518 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222B518 */ _t25 = _t24 & 0x00000001u;
|
|
/* 0222B518 */ if (_t25) goto L_0222B51C; else goto L_0222B750;
|
|
L_0222B51C: ; // 0x222b51c
|
|
/* 0222B51C */ _t26 = cpu->r[29] + 0x00000004u;
|
|
/* 0222B51C */ cpu->r[8] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0222B520 */ _t27 = cpu->r[8] + 0x0000025Cu;
|
|
/* 0222B520 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0222B524 */ cpu->ctr = cpu->r[0];
|
|
/* 0222B528 */ cpu->r[3] = cpu->r[29];
|
|
/* 0222B52C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222B530 */ _t28 = cpu->r[3] + 0x00000000u;
|
|
/* 0222B530 */ cpu->r[7] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0222B534 */ _t29 = cpu->r[1] + 0x00000008u;
|
|
/* 0222B534 */ rbrew_write32(cpu->mem, _t29, cpu->r[7]);
|
|
/* 0222B538 */ _t30 = cpu->r[3] + 0x00000004u;
|
|
/* 0222B538 */ cpu->r[8] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0222B53C */ _t31 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222B53C */ rbrew_write32(cpu->mem, _t31, cpu->r[8]);
|
|
/* 0222B540 */ _t32 = cpu->r[3] + 0x00000008u;
|
|
/* 0222B540 */ cpu->r[0] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0222B544 */ _t33 = cpu->r[1] + 0x00000010u;
|
|
/* 0222B544 */ rbrew_write32(cpu->mem, _t33, cpu->r[0]);
|
|
/* 0222B548 */ _t34 = cpu->r[1] + 0x00000010u;
|
|
/* 0222B548 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 0222B54C */ cpu->f[6] = cpu->f[12] * cpu->f[12];
|
|
/* 0222B550 */ _t35 = cpu->r[1] + 0x00000008u;
|
|
/* 0222B550 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 0222B554 */ cpu->r[12] = 0x10050000u;
|
|
/* 0222B558 */ cpu->f[10] = fma(cpu->f[13], cpu->f[13], cpu->f[6]);
|
|
/* 0222B55C */ _t36 = cpu->r[12] + 0x0000009Cu;
|
|
/* 0222B55C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 0222B560 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[31]);
|
|
/* 0222B564 */ _t37 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222B564 */ rbrew_write_f32(cpu->mem, _t37, cpu->f[31]);
|
|
/* 0222B568 */ _t38 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0222B568 */ _t39 = _t38 & 0x00000001u;
|
|
/* 0222B568 */ if (_t39) goto L_0222B56C; else goto L_0222B5AC;
|
|
L_0222B56C: ; // 0x222b56c
|
|
/* 0222B56C */ cpu->r[11] = 0x10050000u;
|
|
/* 0222B570 */ cpu->r[10] = 0x10050000u;
|
|
/* 0222B574 */ _t40 = cpu->r[11] + 0x000000A4u;
|
|
/* 0222B574 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 0222B578 */ _t41 = cpu->r[10] + 0x000000A0u;
|
|
/* 0222B578 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 0222B57C */ _ft42 = sqrt(cpu->f[10]);
|
|
/* 0222B57C */ _ft43 = (double)(int32_t)0x00000001u;
|
|
/* 0222B57C */ cpu->f[0] = _ft43 / _ft42;
|
|
/* 0222B580 */ cpu->f[13] = cpu->f[0] * cpu->f[0];
|
|
/* 0222B584 */ cpu->f[8] = cpu->f[0] * cpu->f[6];
|
|
/* 0222B588 */ cpu->f[13] = -fma(cpu->f[13], cpu->f[10], -(cpu->f[7]));
|
|
/* 0222B58C */ cpu->f[0] = cpu->f[13] * cpu->f[8];
|
|
/* 0222B590 */ /* nop */
|
|
/* 0222B594 */ _t44 = cpu->r[1] + 0x00000010u;
|
|
/* 0222B594 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 0222B598 */ /* nop */
|
|
/* 0222B59C */ cpu->f[12] = cpu->f[12] * cpu->f[0];
|
|
/* 0222B5A0 */ /* nop */
|
|
/* 0222B5A4 */ cpu->f[10] = cpu->f[10] * cpu->f[0];
|
|
/* 0222B5A8 */ _t45 = cpu->r[1] + 0x00000010u;
|
|
/* 0222B5A8 */ rbrew_write_f32(cpu->mem, _t45, cpu->f[12]);
|
|
L_0222B5AC: ; // 0x222b5ac
|
|
/* 0222B5AC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[31]);
|
|
/* 0222B5B0 */ cpu->r[31] = 0x101F0000u;
|
|
/* 0222B5B4 */ cpu->r[31] = cpu->r[31] + 0x0000635Cu;
|
|
/* 0222B5B8 */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222B5B8 */ _t47 = _t46 & 0x00000001u;
|
|
/* 0222B5B8 */ if (_t47) goto L_0222B610; else goto L_0222B5BC;
|
|
L_0222B5BC: ; // 0x222b5bc
|
|
/* 0222B5BC */ /* nop */
|
|
/* 0222B5C0 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0222B5C4 */ /* nop */
|
|
/* 0222B5C8 */ /* nop */
|
|
/* 0222B5CC */ _t48 = cpu->r[31] + 0x00000008u;
|
|
/* 0222B5CC */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 0222B5D0 */ /* nop */
|
|
/* 0222B5D4 */ cpu->r[4] = cpu->r[31];
|
|
/* 0222B5D8 */ cpu->r[5] = cpu->r[1] + 0x000000CCu;
|
|
/* 0222B5DC */ cpu->f[30] = fma(cpu->f[12], cpu->f[30], cpu->f[11]);
|
|
/* 0222B5E0 */ Gambit_fn_02C692EC(cpu);
|
|
/* 0222B5E4 */ cpu->r[3] = cpu->r[1] + 0x000000CCu;
|
|
/* 0222B5E8 */ Gambit_fn_02C69350(cpu);
|
|
/* 0222B5EC */ cpu->f[2] = cpu->f[30];
|
|
/* 0222B5F0 */ Gambit_fn_02C89074(cpu);
|
|
/* 0222B5F4 */ _t49 = cpu->r[1] + 0x00000008u;
|
|
/* 0222B5F4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 0222B5F8 */ _t50 = cpu->r[30] + 0x00000008u;
|
|
/* 0222B5F8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t50);
|
|
/* 0222B5FC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[31]);
|
|
/* 0222B600 */ _t51 = cpu->r[30] + 0x00000014u;
|
|
/* 0222B600 */ cpu->r[0] = rbrew_read32(cpu->mem, _t51);
|
|
/* 0222B604 */ _t52 = cpu->r[3] + 0x00000148u;
|
|
/* 0222B604 */ cpu->r[11] = rbrew_read32(cpu->mem, _t52);
|
|
/* 0222B608 */ _t53 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0222B608 */ _t54 = _t53 & 0x00000001u;
|
|
/* 0222B608 */ if (_t54) goto L_0222B60C; else goto L_0222B7B4;
|
|
L_0222B60C: ; // 0x222b60c
|
|
/* 0222B60C */ goto L_0222B6B0;
|
|
L_0222B610: ; // 0x222b610
|
|
/* 0222B610 */ _t55 = cpu->r[29] + 0x0000005Cu;
|
|
/* 0222B610 */ cpu->r[4] = rbrew_read32(cpu->mem, _t55);
|
|
/* 0222B614 */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 0222B618 */ Gambit_fn_028300A4(cpu);
|
|
/* 0222B61C */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 0222B620 */ Gambit_fn_02830138(cpu);
|
|
/* 0222B624 */ _t56 = cpu->r[31] + 0x00000004u;
|
|
/* 0222B624 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 0222B628 */ cpu->r[5] = cpu->r[3];
|
|
/* 0222B62C */ _t57 = cpu->r[31] + 0x00000000u;
|
|
/* 0222B62C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 0222B630 */ _t58 = cpu->r[31] + 0x00000008u;
|
|
/* 0222B630 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 0222B634 */ cpu->r[4] = 0x101F0000u;
|
|
/* 0222B638 */ _t59 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222B638 */ rbrew_write_f32(cpu->mem, _t59, cpu->f[12]);
|
|
/* 0222B63C */ cpu->r[4] = cpu->r[4] + 0x00006350u;
|
|
/* 0222B640 */ _t60 = cpu->r[1] + 0x00000008u;
|
|
/* 0222B640 */ rbrew_write_f32(cpu->mem, _t60, cpu->f[11]);
|
|
/* 0222B644 */ cpu->r[3] = cpu->r[1] + 0x0000005Cu;
|
|
/* 0222B648 */ _t61 = cpu->r[1] + 0x00000010u;
|
|
/* 0222B648 */ rbrew_write_f32(cpu->mem, _t61, cpu->f[30]);
|
|
/* 0222B64C */ Gambit_fn_021DE37C(cpu);
|
|
/* 0222B650 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0222B654 */ cpu->r[3] = cpu->r[1] + 0x0000005Cu;
|
|
/* 0222B658 */ cpu->r[5] = cpu->r[4];
|
|
/* 0222B65C */ Gambit_fn_02C69468(cpu);
|
|
/* 0222B660 */ /* nop */
|
|
/* 0222B664 */ /* nop */
|
|
/* 0222B668 */ _t62 = cpu->r[1] + 0x00000010u;
|
|
/* 0222B668 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 0222B66C */ /* nop */
|
|
/* 0222B670 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0222B674 */ /* nop */
|
|
/* 0222B678 */ cpu->r[4] = cpu->r[31];
|
|
/* 0222B67C */ cpu->r[5] = cpu->r[1] + 0x000000CCu;
|
|
/* 0222B680 */ cpu->f[30] = fma(cpu->f[12], cpu->f[30], cpu->f[11]);
|
|
/* 0222B684 */ Gambit_fn_02C692EC(cpu);
|
|
/* 0222B688 */ cpu->r[3] = cpu->r[1] + 0x000000CCu;
|
|
/* 0222B68C */ Gambit_fn_02C69350(cpu);
|
|
/* 0222B690 */ cpu->f[2] = cpu->f[30];
|
|
/* 0222B694 */ Gambit_fn_02C89074(cpu);
|
|
/* 0222B698 */ _t63 = cpu->r[1] + 0x00000008u;
|
|
/* 0222B698 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t63);
|
|
/* 0222B69C */ _t64 = cpu->r[30] + 0x00000008u;
|
|
/* 0222B69C */ cpu->r[3] = rbrew_read32(cpu->mem, _t64);
|
|
/* 0222B6A0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[31]);
|
|
/* 0222B6A4 */ _t65 = cpu->r[30] + 0x00000014u;
|
|
/* 0222B6A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t65);
|
|
/* 0222B6A8 */ _t66 = cpu->r[3] + 0x00000148u;
|
|
/* 0222B6A8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t66);
|
|
/* 0222B6AC */ _t67 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0222B6AC */ _t68 = _t67 & 0x00000001u;
|
|
/* 0222B6AC */ if (_t68) goto L_0222B6B0; else goto L_0222B7B4;
|
|
L_0222B6B0: ; // 0x222b6b0
|
|
/* 0222B6B0 */ cpu->r[5] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x000000B0u);
|
|
/* 0222B6B4 */ cpu->r[10] = cpu->r[11] + cpu->r[5];
|
|
/* 0222B6B8 */ _t69 = cpu->r[10] + 0x00000020u;
|
|
/* 0222B6B8 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t69);
|
|
/* 0222B6BC */ _t70 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0222B6BC */ rbrew_write_f32(cpu->mem, _t70, cpu->f[8]);
|
|
/* 0222B6C0 */ _t71 = cpu->r[10] + 0x00000024u;
|
|
/* 0222B6C0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t71);
|
|
/* 0222B6C4 */ _t72 = cpu->r[1] + 0x00000090u;
|
|
/* 0222B6C4 */ rbrew_write_f32(cpu->mem, _t72, cpu->f[9]);
|
|
/* 0222B6C8 */ _t73 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0222B6C8 */ cpu->f[11] = rbrew_read_f64(cpu->mem, _t73);
|
|
/* 0222B6CC */ cpu->f[1] = -cpu->f[1];
|
|
/* 0222B6D0 */ _t74 = cpu->r[1] + 0x00000050u;
|
|
/* 0222B6D0 */ rbrew_write_f64(cpu->mem, _t74, cpu->f[11]);
|
|
/* 0222B6D4 */ _t75 = cpu->r[1] + 0x00000054u;
|
|
/* 0222B6D4 */ rbrew_write_f32(cpu->mem, _t75, cpu->f[1]);
|
|
/* 0222B6D8 */ _t76 = cpu->r[1] + 0x00000050u;
|
|
/* 0222B6D8 */ rbrew_write_f32(cpu->mem, _t76, cpu->f[31]);
|
|
/* 0222B6DC */ _t77 = cpu->r[3] + 0x00000144u;
|
|
/* 0222B6DC */ cpu->r[8] = rbrew_read32(cpu->mem, _t77);
|
|
/* 0222B6E0 */ cpu->r[6] = cpu->r[8] + cpu->r[5];
|
|
/* 0222B6E4 */ _t78 = cpu->r[1] + 0x00000050u;
|
|
/* 0222B6E4 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t78);
|
|
/* 0222B6E8 */ _t79 = cpu->r[6] + 0x00000020u;
|
|
/* 0222B6E8 */ rbrew_write_f64(cpu->mem, _t79, cpu->f[0]);
|
|
/* 0222B6EC */ _t80 = cpu->r[30] + 0x00000014u;
|
|
/* 0222B6EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t80);
|
|
/* 0222B6F0 */ _t81 = cpu->r[30] + 0x00000008u;
|
|
/* 0222B6F0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t81);
|
|
/* 0222B6F4 */ cpu->r[12] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x000000B0u);
|
|
/* 0222B6F8 */ _t82 = cpu->r[10] + 0x00000144u;
|
|
/* 0222B6F8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t82);
|
|
/* 0222B6FC */ cpu->r[4] = cpu->r[5] + cpu->r[12];
|
|
/* 0222B700 */ _t83 = cpu->r[4] + 0x00000028u;
|
|
/* 0222B700 */ rbrew_write_f32(cpu->mem, _t83, cpu->f[31]);
|
|
/* 0222B704 */ _t84 = cpu->r[30] + 0x00000014u;
|
|
/* 0222B704 */ cpu->r[0] = rbrew_read32(cpu->mem, _t84);
|
|
/* 0222B708 */ _t85 = cpu->r[30] + 0x00000008u;
|
|
/* 0222B708 */ cpu->r[8] = rbrew_read32(cpu->mem, _t85);
|
|
/* 0222B70C */ cpu->r[10] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x000000B0u);
|
|
/* 0222B710 */ _t86 = cpu->r[8] + 0x00000144u;
|
|
/* 0222B710 */ cpu->r[5] = rbrew_read32(cpu->mem, _t86);
|
|
/* 0222B714 */ cpu->r[12] = cpu->r[5] + cpu->r[10];
|
|
/* 0222B718 */ cpu->r[4] = 0x0000000Cu;
|
|
/* 0222B71C */ cpu->r[3] = cpu->r[12] + 0x00000020u;
|
|
/* 0222B720 */ rbrew_dispatch(cpu, 0x02d09320u);
|
|
/* 0222B724 */ _t87 = cpu->r[30] + 0x00000008u;
|
|
/* 0222B724 */ cpu->r[3] = rbrew_read32(cpu->mem, _t87);
|
|
/* 0222B728 */ cpu->r[6] = 0x10050000u;
|
|
/* 0222B72C */ _t88 = cpu->r[6] + 0x00000098u;
|
|
/* 0222B72C */ cpu->f[4] = rbrew_read_f32(cpu->mem, _t88);
|
|
/* 0222B730 */ _t89 = cpu->r[3] + 0x000000FCu;
|
|
/* 0222B730 */ cpu->r[7] = rbrew_read32(cpu->mem, _t89);
|
|
/* 0222B734 */ _t90 = cpu->r[29] + 0x00000074u;
|
|
/* 0222B734 */ cpu->f[2] = rbrew_read_f32(cpu->mem, _t90);
|
|
/* 0222B738 */ _t91 = cpu->r[7] + 0x00000753u;
|
|
/* 0222B738 */ cpu->r[9] = rbrew_read8(cpu->mem, _t91);
|
|
/* 0222B73C */ _t92 = cpu->r[29] + 0x00000078u;
|
|
/* 0222B73C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t92);
|
|
/* 0222B740 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0222B744 */ _t93 = cpu->r[29] + 0x0000007Cu;
|
|
/* 0222B744 */ cpu->f[3] = rbrew_read_f32(cpu->mem, _t93);
|
|
/* 0222B748 */ _t94 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222B748 */ _t95 = _t94 & 0x00000001u;
|
|
/* 0222B748 */ if (_t95) goto L_0222B74C; else goto L_0222BA18;
|
|
L_0222B74C: ; // 0x222b74c
|
|
/* 0222B74C */ goto L_0222B84C;
|
|
L_0222B750: ; // 0x222b750
|
|
/* 0222B750 */ cpu->r[3] = cpu->r[29];
|
|
/* 0222B754 */ cpu->r[4] = cpu->r[30];
|
|
/* 0222B758 */ Gambit_fn_021BB038(cpu);
|
|
/* 0222B75C */ _t96 = cpu->r[1] + 0x000000DCu;
|
|
/* 0222B75C */ cpu->r[29] = rbrew_read32(cpu->mem, _t96);
|
|
/* 0222B760 */ _t97 = cpu->r[1] + 0x00000100u;
|
|
/* 0222B760 */ cpu->f[26] = rbrew_read_f32(cpu->mem, _t97);
|
|
/* 0222B764 */ _t98 = cpu->r[1] + 0x000000F0u;
|
|
/* 0222B764 */ cpu->f[25] = rbrew_read_f32(cpu->mem, _t98);
|
|
/* 0222B768 */ _t99 = cpu->r[1] + 0x000000F8u;
|
|
/* 0222B768 */ cpu->f[26] = rbrew_read_f64(cpu->mem, _t99);
|
|
/* 0222B76C */ _t100 = cpu->r[1] + 0x00000110u;
|
|
/* 0222B76C */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t100);
|
|
/* 0222B770 */ _t101 = cpu->r[1] + 0x000000E8u;
|
|
/* 0222B770 */ cpu->f[25] = rbrew_read_f64(cpu->mem, _t101);
|
|
/* 0222B774 */ _t102 = cpu->r[1] + 0x00000108u;
|
|
/* 0222B774 */ cpu->f[27] = rbrew_read_f64(cpu->mem, _t102);
|
|
/* 0222B778 */ _t103 = cpu->r[1] + 0x00000120u;
|
|
/* 0222B778 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t103);
|
|
/* 0222B77C */ _t104 = cpu->r[1] + 0x00000130u;
|
|
/* 0222B77C */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t104);
|
|
/* 0222B780 */ _t105 = cpu->r[1] + 0x00000118u;
|
|
/* 0222B780 */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t105);
|
|
/* 0222B784 */ _t106 = cpu->r[1] + 0x00000128u;
|
|
/* 0222B784 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t106);
|
|
/* 0222B788 */ _t107 = cpu->r[1] + 0x00000150u;
|
|
/* 0222B788 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t107);
|
|
/* 0222B78C */ _t108 = cpu->r[1] + 0x00000140u;
|
|
/* 0222B78C */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t108);
|
|
/* 0222B790 */ _t109 = cpu->r[1] + 0x00000148u;
|
|
/* 0222B790 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t109);
|
|
/* 0222B794 */ _t110 = cpu->r[1] + 0x00000138u;
|
|
/* 0222B794 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t110);
|
|
/* 0222B798 */ _t111 = cpu->r[1] + 0x000000E4u;
|
|
/* 0222B798 */ cpu->r[31] = rbrew_read32(cpu->mem, _t111);
|
|
/* 0222B79C */ _t112 = cpu->r[1] + 0x000000E0u;
|
|
/* 0222B79C */ cpu->r[30] = rbrew_read32(cpu->mem, _t112);
|
|
/* 0222B7A0 */ _t113 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0222B7A0 */ _t114 = _t113 & 0x00000001u;
|
|
/* 0222B7A0 */ if (_t114) goto L_0222B7A4; // else: addr-0 trap, fall-through
|
|
L_0222B7A4: ; // 0x222b7a4
|
|
/* 0222B7A4 */ _t115 = cpu->r[1] + 0x0000015Cu;
|
|
/* 0222B7A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t115);
|
|
/* 0222B7A8 */ cpu->lr = cpu->r[0];
|
|
/* 0222B7AC */ cpu->r[1] = cpu->r[1] + 0x00000158u;
|
|
/* 0222B7B0 */ return;
|
|
L_0222B7B4: ; // 0x222b7b4
|
|
/* 0222B7B4 */ cpu->r[5] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x000000B0u);
|
|
/* 0222B7B8 */ cpu->r[10] = cpu->r[11] + cpu->r[5];
|
|
/* 0222B7BC */ _t116 = cpu->r[10] + 0x00000020u;
|
|
/* 0222B7BC */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t116);
|
|
/* 0222B7C0 */ _t117 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0222B7C0 */ rbrew_write_f32(cpu->mem, _t117, cpu->f[8]);
|
|
/* 0222B7C4 */ _t118 = cpu->r[10] + 0x00000024u;
|
|
/* 0222B7C4 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t118);
|
|
/* 0222B7C8 */ _t119 = cpu->r[1] + 0x00000090u;
|
|
/* 0222B7C8 */ rbrew_write_f32(cpu->mem, _t119, cpu->f[9]);
|
|
/* 0222B7CC */ _t120 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0222B7CC */ cpu->f[11] = rbrew_read_f64(cpu->mem, _t120);
|
|
/* 0222B7D0 */ _t121 = cpu->r[1] + 0x00000050u;
|
|
/* 0222B7D0 */ rbrew_write_f64(cpu->mem, _t121, cpu->f[11]);
|
|
/* 0222B7D4 */ _t122 = cpu->r[1] + 0x00000054u;
|
|
/* 0222B7D4 */ rbrew_write_f32(cpu->mem, _t122, cpu->f[1]);
|
|
/* 0222B7D8 */ _t123 = cpu->r[1] + 0x00000050u;
|
|
/* 0222B7D8 */ rbrew_write_f32(cpu->mem, _t123, cpu->f[31]);
|
|
/* 0222B7DC */ _t124 = cpu->r[3] + 0x00000144u;
|
|
/* 0222B7DC */ cpu->r[8] = rbrew_read32(cpu->mem, _t124);
|
|
/* 0222B7E0 */ cpu->r[6] = cpu->r[8] + cpu->r[5];
|
|
/* 0222B7E4 */ _t125 = cpu->r[1] + 0x00000050u;
|
|
/* 0222B7E4 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t125);
|
|
/* 0222B7E8 */ _t126 = cpu->r[6] + 0x00000020u;
|
|
/* 0222B7E8 */ rbrew_write_f64(cpu->mem, _t126, cpu->f[0]);
|
|
/* 0222B7EC */ _t127 = cpu->r[30] + 0x00000014u;
|
|
/* 0222B7EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t127);
|
|
/* 0222B7F0 */ _t128 = cpu->r[30] + 0x00000008u;
|
|
/* 0222B7F0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t128);
|
|
/* 0222B7F4 */ cpu->r[12] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x000000B0u);
|
|
/* 0222B7F8 */ _t129 = cpu->r[10] + 0x00000144u;
|
|
/* 0222B7F8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t129);
|
|
/* 0222B7FC */ cpu->r[4] = cpu->r[5] + cpu->r[12];
|
|
/* 0222B800 */ _t130 = cpu->r[4] + 0x00000028u;
|
|
/* 0222B800 */ rbrew_write_f32(cpu->mem, _t130, cpu->f[31]);
|
|
/* 0222B804 */ _t131 = cpu->r[30] + 0x00000014u;
|
|
/* 0222B804 */ cpu->r[0] = rbrew_read32(cpu->mem, _t131);
|
|
/* 0222B808 */ _t132 = cpu->r[30] + 0x00000008u;
|
|
/* 0222B808 */ cpu->r[8] = rbrew_read32(cpu->mem, _t132);
|
|
/* 0222B80C */ cpu->r[10] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x000000B0u);
|
|
/* 0222B810 */ _t133 = cpu->r[8] + 0x00000144u;
|
|
/* 0222B810 */ cpu->r[5] = rbrew_read32(cpu->mem, _t133);
|
|
/* 0222B814 */ cpu->r[12] = cpu->r[5] + cpu->r[10];
|
|
/* 0222B818 */ cpu->r[4] = 0x0000000Cu;
|
|
/* 0222B81C */ cpu->r[3] = cpu->r[12] + 0x00000020u;
|
|
/* 0222B820 */ rbrew_dispatch(cpu, 0x02d09320u);
|
|
/* 0222B824 */ _t134 = cpu->r[30] + 0x00000008u;
|
|
/* 0222B824 */ cpu->r[3] = rbrew_read32(cpu->mem, _t134);
|
|
/* 0222B828 */ _t135 = cpu->r[29] + 0x00000074u;
|
|
/* 0222B828 */ cpu->f[2] = rbrew_read_f32(cpu->mem, _t135);
|
|
/* 0222B82C */ _t136 = cpu->r[3] + 0x000000FCu;
|
|
/* 0222B82C */ cpu->r[7] = rbrew_read32(cpu->mem, _t136);
|
|
/* 0222B830 */ cpu->r[6] = 0x10050000u;
|
|
/* 0222B834 */ _t137 = cpu->r[6] + 0x00000098u;
|
|
/* 0222B834 */ cpu->f[4] = rbrew_read_f32(cpu->mem, _t137);
|
|
/* 0222B838 */ _t138 = cpu->r[7] + 0x00000753u;
|
|
/* 0222B838 */ cpu->r[9] = rbrew_read8(cpu->mem, _t138);
|
|
/* 0222B83C */ _t139 = cpu->r[29] + 0x00000078u;
|
|
/* 0222B83C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t139);
|
|
/* 0222B840 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0222B844 */ _t140 = cpu->r[29] + 0x0000007Cu;
|
|
/* 0222B844 */ cpu->f[3] = rbrew_read_f32(cpu->mem, _t140);
|
|
/* 0222B848 */ _t141 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222B848 */ _t142 = _t141 & 0x00000001u;
|
|
/* 0222B848 */ if (_t142) goto L_0222B84C; else goto L_0222BA18;
|
|
L_0222B84C: ; // 0x222b84c
|
|
/* 0222B84C */ cpu->r[6] = cpu->r[3] + 0x00000218u;
|
|
/* 0222B850 */ cpu->r[10] = cpu->r[1] + 0x0000009Cu;
|
|
/* 0222B854 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[10]);
|
|
/* 0222B858 */ _t143 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222B858 */ _t144 = _t143 & 0x00000001u;
|
|
/* 0222B858 */ if (_t144) goto L_0222B890; else goto L_0222B85C;
|
|
L_0222B85C: ; // 0x222b85c
|
|
/* 0222B85C */ cpu->r[4] = 0x00000003u;
|
|
/* 0222B860 */ cpu->r[11] = cpu->r[6] + 0xFFFFFFFCu;
|
|
/* 0222B864 */ cpu->ctr = cpu->r[4];
|
|
/* 0222B868 */ cpu->r[12] = cpu->r[1] + 0x00000098u;
|
|
L_0222B86C: ; // 0x222b86c
|
|
/* 0222B86C */ _t145 = cpu->r[11] + 0x00000004u;
|
|
/* 0222B86C */ cpu->r[5] = rbrew_read32(cpu->mem, _t145);
|
|
/* 0222B870 */ _t146 = cpu->r[12] + 0x00000004u;
|
|
/* 0222B870 */ rbrew_write32(cpu->mem, _t146, cpu->r[5]);
|
|
/* 0222B874 */ _t147 = cpu->r[11] + 0x00000008u;
|
|
/* 0222B874 */ cpu->r[6] = rbrew_read32(cpu->mem, _t147);
|
|
/* 0222B878 */ _t148 = cpu->r[12] + 0x00000008u;
|
|
/* 0222B878 */ rbrew_write32(cpu->mem, _t148, cpu->r[6]);
|
|
/* 0222B87C */ _t149 = cpu->r[11] + 0x0000000Cu;
|
|
/* 0222B87C */ cpu->r[7] = rbrew_read32(cpu->mem, _t149);
|
|
/* 0222B880 */ _t150 = cpu->r[12] + 0x0000000Cu;
|
|
/* 0222B880 */ rbrew_write32(cpu->mem, _t150, cpu->r[7]);
|
|
/* 0222B884 */ _t151 = cpu->r[11] + 0x00000010u;
|
|
/* 0222B884 */ cpu->r[0] = rbrew_read32(cpu->mem, _t151);
|
|
/* 0222B884 */ cpu->r[11] = _t151;
|
|
/* 0222B888 */ _t152 = cpu->r[12] + 0x00000010u;
|
|
/* 0222B888 */ rbrew_write32(cpu->mem, _t152, cpu->r[0]);
|
|
/* 0222B888 */ cpu->r[12] = _t152;
|
|
/* 0222B88C */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0222B88C */ _t153 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0222B88C */ _t154 = _t153 >> (0x00000002u & 31u);
|
|
/* 0222B88C */ _t155 = _t154 & 0x00000001u;
|
|
/* 0222B88C */ if (_t155) goto L_0222B86C; else goto L_0222B890;
|
|
L_0222B890: ; // 0x222b890
|
|
/* 0222B890 */ cpu->r[4] = cpu->r[1] + 0x0000009Cu;
|
|
/* 0222B894 */ /* nop */
|
|
/* 0222B898 */ /* nop */
|
|
/* 0222B89C */ /* nop */
|
|
/* 0222B8A0 */ /* nop */
|
|
/* 0222B8A4 */ /* nop */
|
|
/* 0222B8A8 */ /* nop */
|
|
/* 0222B8AC */ /* nop */
|
|
/* 0222B8B0 */ /* nop */
|
|
/* 0222B8B4 */ /* nop */
|
|
/* 0222B8B8 */ /* nop */
|
|
/* 0222B8BC */ /* nop */
|
|
/* 0222B8C0 */ /* nop */
|
|
/* 0222B8C4 */ /* nop */
|
|
/* 0222B8C8 */ /* nop */
|
|
/* 0222B8CC */ /* nop */
|
|
/* 0222B8D0 */ /* nop */
|
|
/* 0222B8D4 */ /* nop */
|
|
/* 0222B8D8 */ /* nop */
|
|
/* 0222B8DC */ /* nop */
|
|
/* 0222B8E0 */ /* nop */
|
|
/* 0222B8E4 */ /* nop */
|
|
/* 0222B8E8 */ /* nop */
|
|
/* 0222B8EC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[31]);
|
|
/* 0222B8F0 */ /* nop */
|
|
/* 0222B8F4 */ /* nop */
|
|
/* 0222B8F8 */ _t156 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222B8F8 */ _t157 = _t156 & 0x00000001u;
|
|
/* 0222B8F8 */ if (_t157) goto L_0222B8FC; else goto L_0222B908;
|
|
L_0222B8FC: ; // 0x222b8fc
|
|
/* 0222B8FC */ /* nop */
|
|
/* 0222B900 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[6], cpu->f[31]);
|
|
/* 0222B904 */ _t158 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222B904 */ _t159 = _t158 & 0x00000001u;
|
|
/* 0222B904 */ if (_t159) goto L_0222B980; else goto L_0222B908;
|
|
L_0222B908: ; // 0x222b908
|
|
/* 0222B908 */ cpu->f[29] = cpu->f[4] / cpu->f[7];
|
|
/* 0222B90C */ _t160 = cpu->r[1] + 0x000000A8u;
|
|
/* 0222B90C */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t160);
|
|
/* 0222B910 */ /* nop */
|
|
/* 0222B914 */ /* nop */
|
|
/* 0222B918 */ _t161 = cpu->r[1] + 0x000000C8u;
|
|
/* 0222B918 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t161);
|
|
/* 0222B91C */ /* nop */
|
|
/* 0222B920 */ _t162 = cpu->r[1] + 0x000000B8u;
|
|
/* 0222B920 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t162);
|
|
/* 0222B924 */ /* nop */
|
|
/* 0222B928 */ cpu->r[5] = cpu->r[1] + 0x00000020u;
|
|
/* 0222B92C */ /* nop */
|
|
/* 0222B930 */ /* nop */
|
|
/* 0222B934 */ /* nop */
|
|
/* 0222B938 */ /* nop */
|
|
/* 0222B93C */ /* nop */
|
|
/* 0222B940 */ /* nop */
|
|
/* 0222B944 */ /* nop */
|
|
/* 0222B948 */ /* nop */
|
|
/* 0222B94C */ /* nop */
|
|
/* 0222B950 */ /* nop */
|
|
/* 0222B954 */ /* nop */
|
|
/* 0222B958 */ /* nop */
|
|
/* 0222B95C */ /* nop */
|
|
/* 0222B960 */ /* nop */
|
|
/* 0222B964 */ /* nop */
|
|
/* 0222B968 */ /* nop */
|
|
/* 0222B96C */ /* nop */
|
|
/* 0222B970 */ /* nop */
|
|
/* 0222B974 */ /* nop */
|
|
/* 0222B978 */ /* nop */
|
|
/* 0222B97C */ _t163 = cpu->r[30] + 0x00000008u;
|
|
/* 0222B97C */ cpu->r[3] = rbrew_read32(cpu->mem, _t163);
|
|
L_0222B980: ; // 0x222b980
|
|
/* 0222B980 */ _t164 = cpu->r[1] + 0x00000034u;
|
|
/* 0222B980 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t164);
|
|
/* 0222B984 */ _t165 = cpu->r[1] + 0x00000030u;
|
|
/* 0222B984 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t165);
|
|
/* 0222B988 */ cpu->f[10] = cpu->f[11] * cpu->f[1];
|
|
/* 0222B98C */ _t166 = cpu->r[1] + 0x00000024u;
|
|
/* 0222B98C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t166);
|
|
/* 0222B990 */ _t167 = cpu->r[1] + 0x00000020u;
|
|
/* 0222B990 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t167);
|
|
/* 0222B994 */ cpu->f[6] = cpu->f[7] * cpu->f[1];
|
|
/* 0222B998 */ _t168 = cpu->r[1] + 0x00000028u;
|
|
/* 0222B998 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t168);
|
|
/* 0222B99C */ cpu->f[12] = fma(cpu->f[9], cpu->f[2], cpu->f[10]);
|
|
/* 0222B9A0 */ _t169 = cpu->r[1] + 0x00000044u;
|
|
/* 0222B9A0 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t169);
|
|
/* 0222B9A4 */ cpu->f[5] = fma(cpu->f[13], cpu->f[2], cpu->f[6]);
|
|
/* 0222B9A8 */ _t170 = cpu->r[1] + 0x00000038u;
|
|
/* 0222B9A8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t170);
|
|
/* 0222B9AC */ cpu->f[6] = cpu->f[7] * cpu->f[1];
|
|
/* 0222B9B0 */ _t171 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0222B9B0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t171);
|
|
/* 0222B9B4 */ _t172 = cpu->r[30] + 0x00000014u;
|
|
/* 0222B9B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t172);
|
|
/* 0222B9B8 */ cpu->f[11] = fma(cpu->f[8], cpu->f[3], cpu->f[5]);
|
|
/* 0222B9BC */ _t173 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0222B9BC */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t173);
|
|
/* 0222B9C0 */ cpu->f[7] = fma(cpu->f[0], cpu->f[3], cpu->f[12]);
|
|
/* 0222B9C4 */ _t174 = cpu->r[1] + 0x00000048u;
|
|
/* 0222B9C4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t174);
|
|
/* 0222B9C8 */ cpu->f[12] = cpu->f[11] + cpu->f[8];
|
|
/* 0222B9CC */ _t175 = cpu->r[1] + 0x00000040u;
|
|
/* 0222B9CC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t175);
|
|
/* 0222B9D0 */ cpu->f[9] = cpu->f[7] + cpu->f[13];
|
|
/* 0222B9D4 */ _t176 = cpu->r[1] + 0x00000014u;
|
|
/* 0222B9D4 */ rbrew_write_f32(cpu->mem, _t176, cpu->f[12]);
|
|
/* 0222B9D8 */ cpu->r[8] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x00000030u);
|
|
/* 0222B9DC */ _t177 = cpu->r[1] + 0x00000018u;
|
|
/* 0222B9DC */ rbrew_write_f32(cpu->mem, _t177, cpu->f[9]);
|
|
/* 0222B9E0 */ _t178 = cpu->r[3] + 0x00000130u;
|
|
/* 0222B9E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t178);
|
|
/* 0222B9E4 */ _t179 = cpu->r[1] + 0x00000014u;
|
|
/* 0222B9E4 */ cpu->f[7] = rbrew_read_f64(cpu->mem, _t179);
|
|
/* 0222B9E8 */ _t180 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0222B9E8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t180);
|
|
/* 0222B9EC */ cpu->f[8] = fma(cpu->f[0], cpu->f[2], cpu->f[6]);
|
|
/* 0222B9F0 */ _t181 = cpu->r[8] + cpu->r[0];
|
|
/* 0222B9F0 */ rbrew_write8(cpu->mem, _t181, (uint8_t)cpu->r[7]);
|
|
/* 0222B9F4 */ _t182 = cpu->r[30] + 0x00000014u;
|
|
/* 0222B9F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t182);
|
|
/* 0222B9F8 */ cpu->f[11] = fma(cpu->f[10], cpu->f[3], cpu->f[8]);
|
|
/* 0222B9FC */ _t183 = cpu->r[30] + 0x00000008u;
|
|
/* 0222B9FC */ cpu->r[4] = rbrew_read32(cpu->mem, _t183);
|
|
/* 0222BA00 */ cpu->r[6] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x00000030u);
|
|
/* 0222BA04 */ _t184 = cpu->r[4] + 0x00000130u;
|
|
/* 0222BA04 */ cpu->r[11] = rbrew_read32(cpu->mem, _t184);
|
|
/* 0222BA08 */ cpu->f[9] = cpu->f[11] + cpu->f[12];
|
|
/* 0222BA0C */ cpu->r[9] = cpu->r[11] + cpu->r[6];
|
|
/* 0222BA10 */ _t185 = cpu->r[9] + 0x00000008u;
|
|
/* 0222BA10 */ rbrew_write_f32(cpu->mem, _t185, cpu->f[9]);
|
|
/* 0222BA14 */ goto L_0222BE1C;
|
|
L_0222BA18: ; // 0x222ba18
|
|
/* 0222BA18 */ _t186 = cpu->r[30] + 0x00000008u;
|
|
/* 0222BA18 */ cpu->r[3] = rbrew_read32(cpu->mem, _t186);
|
|
/* 0222BA1C */ _t187 = cpu->r[3] + 0x000000FCu;
|
|
/* 0222BA1C */ cpu->r[6] = rbrew_read32(cpu->mem, _t187);
|
|
/* 0222BA20 */ _t188 = cpu->r[6] + 0x00000753u;
|
|
/* 0222BA20 */ cpu->r[7] = rbrew_read8(cpu->mem, _t188);
|
|
/* 0222BA24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000002u);
|
|
/* 0222BA28 */ _t189 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222BA28 */ _t190 = _t189 & 0x00000001u;
|
|
/* 0222BA28 */ if (_t190) goto L_0222BA2C; else goto L_0222BC24;
|
|
L_0222BA2C: ; // 0x222ba2c
|
|
/* 0222BA2C */ _t191 = cpu->r[30] + 0x00000014u;
|
|
/* 0222BA2C */ cpu->r[0] = rbrew_read32(cpu->mem, _t191);
|
|
/* 0222BA30 */ _t192 = cpu->r[3] + 0x00000224u;
|
|
/* 0222BA30 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t192);
|
|
/* 0222BA34 */ cpu->r[5] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x000000B0u);
|
|
/* 0222BA38 */ _t193 = cpu->r[3] + 0x00000148u;
|
|
/* 0222BA38 */ cpu->r[9] = rbrew_read32(cpu->mem, _t193);
|
|
/* 0222BA3C */ _t194 = cpu->r[3] + 0x00000234u;
|
|
/* 0222BA3C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t194);
|
|
/* 0222BA40 */ cpu->r[4] = cpu->r[9] + cpu->r[5];
|
|
/* 0222BA44 */ _t195 = cpu->r[3] + 0x00000244u;
|
|
/* 0222BA44 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t195);
|
|
/* 0222BA48 */ _t196 = cpu->r[4] + 0x00000058u;
|
|
/* 0222BA48 */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t196);
|
|
/* 0222BA4C */ _t197 = cpu->r[4] + 0x00000078u;
|
|
/* 0222BA4C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t197);
|
|
/* 0222BA50 */ _t198 = cpu->r[4] + 0x00000050u;
|
|
/* 0222BA50 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t198);
|
|
/* 0222BA54 */ _t199 = cpu->r[4] + 0x00000054u;
|
|
/* 0222BA54 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t199);
|
|
/* 0222BA58 */ _t200 = cpu->r[4] + 0x00000060u;
|
|
/* 0222BA58 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t200);
|
|
/* 0222BA5C */ _t201 = cpu->r[4] + 0x00000070u;
|
|
/* 0222BA5C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t201);
|
|
/* 0222BA60 */ _t202 = cpu->r[4] + 0x00000068u;
|
|
/* 0222BA60 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t202);
|
|
/* 0222BA64 */ _t203 = cpu->r[4] + 0x00000064u;
|
|
/* 0222BA64 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t203);
|
|
/* 0222BA68 */ _t204 = cpu->r[4] + 0x00000074u;
|
|
/* 0222BA68 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t204);
|
|
/* 0222BA6C */ _t205 = cpu->r[1] + 0x00000044u;
|
|
/* 0222BA6C */ rbrew_write_f32(cpu->mem, _t205, cpu->f[6]);
|
|
/* 0222BA70 */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 0222BA74 */ _t206 = cpu->r[1] + 0x00000028u;
|
|
/* 0222BA74 */ rbrew_write_f32(cpu->mem, _t206, cpu->f[5]);
|
|
/* 0222BA78 */ _t207 = cpu->r[1] + 0x00000024u;
|
|
/* 0222BA78 */ rbrew_write_f32(cpu->mem, _t207, cpu->f[30]);
|
|
/* 0222BA7C */ _t208 = cpu->r[1] + 0x00000048u;
|
|
/* 0222BA7C */ rbrew_write_f32(cpu->mem, _t208, cpu->f[8]);
|
|
/* 0222BA80 */ _t209 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0222BA80 */ rbrew_write_f32(cpu->mem, _t209, cpu->f[12]);
|
|
/* 0222BA84 */ _t210 = cpu->r[1] + 0x00000030u;
|
|
/* 0222BA84 */ rbrew_write_f32(cpu->mem, _t210, cpu->f[13]);
|
|
/* 0222BA88 */ _t211 = cpu->r[1] + 0x00000038u;
|
|
/* 0222BA88 */ rbrew_write_f32(cpu->mem, _t211, cpu->f[10]);
|
|
/* 0222BA8C */ _t212 = cpu->r[1] + 0x00000040u;
|
|
/* 0222BA8C */ rbrew_write_f32(cpu->mem, _t212, cpu->f[0]);
|
|
/* 0222BA90 */ _t213 = cpu->r[1] + 0x00000020u;
|
|
/* 0222BA90 */ rbrew_write_f32(cpu->mem, _t213, cpu->f[29]);
|
|
/* 0222BA94 */ _t214 = cpu->r[1] + 0x00000034u;
|
|
/* 0222BA94 */ rbrew_write_f32(cpu->mem, _t214, cpu->f[7]);
|
|
/* 0222BA98 */ _t215 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0222BA98 */ rbrew_write_f32(cpu->mem, _t215, cpu->f[9]);
|
|
/* 0222BA9C */ _t216 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0222BA9C */ rbrew_write_f32(cpu->mem, _t216, cpu->f[11]);
|
|
/* 0222BAA0 */ /* nop */
|
|
/* 0222BAA4 */ /* nop */
|
|
/* 0222BAA8 */ /* nop */
|
|
/* 0222BAAC */ /* nop */
|
|
/* 0222BAB0 */ /* nop */
|
|
/* 0222BAB4 */ /* nop */
|
|
/* 0222BAB8 */ /* nop */
|
|
/* 0222BABC */ /* nop */
|
|
/* 0222BAC0 */ /* nop */
|
|
/* 0222BAC4 */ /* nop */
|
|
/* 0222BAC8 */ /* nop */
|
|
/* 0222BACC */ /* nop */
|
|
/* 0222BAD0 */ /* nop */
|
|
/* 0222BAD4 */ /* nop */
|
|
/* 0222BAD8 */ /* nop */
|
|
/* 0222BADC */ /* nop */
|
|
/* 0222BAE0 */ /* nop */
|
|
/* 0222BAE4 */ /* nop */
|
|
/* 0222BAE8 */ /* nop */
|
|
/* 0222BAEC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[31]);
|
|
/* 0222BAF0 */ /* nop */
|
|
/* 0222BAF4 */ /* nop */
|
|
/* 0222BAF8 */ /* nop */
|
|
/* 0222BAFC */ /* nop */
|
|
/* 0222BB00 */ /* nop */
|
|
/* 0222BB04 */ _t217 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222BB04 */ _t218 = _t217 & 0x00000001u;
|
|
/* 0222BB04 */ if (_t218) goto L_0222BB08; else goto L_0222BB14;
|
|
L_0222BB08: ; // 0x222bb08
|
|
/* 0222BB08 */ /* nop */
|
|
/* 0222BB0C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[31]);
|
|
/* 0222BB10 */ _t219 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222BB10 */ _t220 = _t219 & 0x00000001u;
|
|
/* 0222BB10 */ if (_t220) goto L_0222BB90; else goto L_0222BB14;
|
|
L_0222BB14: ; // 0x222bb14
|
|
/* 0222BB14 */ cpu->f[29] = cpu->f[4] / cpu->f[9];
|
|
/* 0222BB18 */ _t221 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0222BB18 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t221);
|
|
/* 0222BB1C */ /* nop */
|
|
/* 0222BB20 */ _t222 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0222BB20 */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t222);
|
|
/* 0222BB24 */ /* nop */
|
|
/* 0222BB28 */ /* nop */
|
|
/* 0222BB2C */ /* nop */
|
|
/* 0222BB30 */ _t223 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0222BB30 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t223);
|
|
/* 0222BB34 */ /* nop */
|
|
/* 0222BB38 */ cpu->r[10] = cpu->r[1] + 0x0000005Cu;
|
|
/* 0222BB3C */ /* nop */
|
|
/* 0222BB40 */ /* nop */
|
|
/* 0222BB44 */ /* nop */
|
|
/* 0222BB48 */ /* nop */
|
|
/* 0222BB4C */ /* nop */
|
|
/* 0222BB50 */ /* nop */
|
|
/* 0222BB54 */ /* nop */
|
|
/* 0222BB58 */ /* nop */
|
|
/* 0222BB5C */ /* nop */
|
|
/* 0222BB60 */ /* nop */
|
|
/* 0222BB64 */ /* nop */
|
|
/* 0222BB68 */ /* nop */
|
|
/* 0222BB6C */ /* nop */
|
|
/* 0222BB70 */ /* nop */
|
|
/* 0222BB74 */ /* nop */
|
|
/* 0222BB78 */ /* nop */
|
|
/* 0222BB7C */ /* nop */
|
|
/* 0222BB80 */ /* nop */
|
|
/* 0222BB84 */ /* nop */
|
|
/* 0222BB88 */ _t224 = cpu->r[30] + 0x00000008u;
|
|
/* 0222BB88 */ cpu->r[3] = rbrew_read32(cpu->mem, _t224);
|
|
/* 0222BB8C */ _t225 = cpu->r[30] + 0x00000014u;
|
|
/* 0222BB8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t225);
|
|
L_0222BB90: ; // 0x222bb90
|
|
/* 0222BB90 */ _t226 = cpu->r[1] + 0x00000060u;
|
|
/* 0222BB90 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t226);
|
|
/* 0222BB94 */ _t227 = cpu->r[1] + 0x00000080u;
|
|
/* 0222BB94 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t227);
|
|
/* 0222BB98 */ cpu->f[8] = cpu->f[9] * cpu->f[1];
|
|
/* 0222BB9C */ _t228 = cpu->r[1] + 0x00000070u;
|
|
/* 0222BB9C */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t228);
|
|
/* 0222BBA0 */ cpu->f[13] = cpu->f[0] * cpu->f[1];
|
|
/* 0222BBA4 */ _t229 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0222BBA4 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t229);
|
|
/* 0222BBA8 */ cpu->f[0] = cpu->f[6] * cpu->f[1];
|
|
/* 0222BBAC */ _t230 = cpu->r[1] + 0x0000006Cu;
|
|
/* 0222BBAC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t230);
|
|
/* 0222BBB0 */ cpu->r[8] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x00000030u);
|
|
/* 0222BBB4 */ cpu->f[10] = fma(cpu->f[7], cpu->f[2], cpu->f[8]);
|
|
/* 0222BBB8 */ _t231 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0222BBB8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t231);
|
|
/* 0222BBBC */ cpu->f[7] = fma(cpu->f[11], cpu->f[2], cpu->f[0]);
|
|
/* 0222BBC0 */ _t232 = cpu->r[1] + 0x00000064u;
|
|
/* 0222BBC0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t232);
|
|
/* 0222BBC4 */ cpu->f[6] = fma(cpu->f[12], cpu->f[2], cpu->f[13]);
|
|
/* 0222BBC8 */ _t233 = cpu->r[1] + 0x00000074u;
|
|
/* 0222BBC8 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t233);
|
|
/* 0222BBCC */ cpu->f[0] = fma(cpu->f[11], cpu->f[3], cpu->f[10]);
|
|
/* 0222BBD0 */ _t234 = cpu->r[1] + 0x00000068u;
|
|
/* 0222BBD0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t234);
|
|
/* 0222BBD4 */ cpu->f[9] = fma(cpu->f[8], cpu->f[3], cpu->f[7]);
|
|
/* 0222BBD8 */ _t235 = cpu->r[1] + 0x00000078u;
|
|
/* 0222BBD8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t235);
|
|
/* 0222BBDC */ cpu->f[8] = cpu->f[0] + cpu->f[10];
|
|
/* 0222BBE0 */ _t236 = cpu->r[1] + 0x00000088u;
|
|
/* 0222BBE0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t236);
|
|
/* 0222BBE4 */ cpu->f[10] = cpu->f[9] + cpu->f[11];
|
|
/* 0222BBE8 */ _t237 = cpu->r[1] + 0x00000084u;
|
|
/* 0222BBE8 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t237);
|
|
/* 0222BBEC */ _t238 = cpu->r[1] + 0x00000014u;
|
|
/* 0222BBEC */ rbrew_write_f32(cpu->mem, _t238, cpu->f[8]);
|
|
/* 0222BBF0 */ cpu->f[11] = fma(cpu->f[7], cpu->f[3], cpu->f[6]);
|
|
/* 0222BBF4 */ _t239 = cpu->r[1] + 0x00000018u;
|
|
/* 0222BBF4 */ rbrew_write_f32(cpu->mem, _t239, cpu->f[10]);
|
|
/* 0222BBF8 */ _t240 = cpu->r[1] + 0x00000014u;
|
|
/* 0222BBF8 */ cpu->f[7] = rbrew_read_f64(cpu->mem, _t240);
|
|
/* 0222BBFC */ _t241 = cpu->r[3] + 0x00000130u;
|
|
/* 0222BBFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t241);
|
|
/* 0222BC00 */ _t242 = cpu->r[8] + cpu->r[0];
|
|
/* 0222BC00 */ rbrew_write8(cpu->mem, _t242, (uint8_t)cpu->r[7]);
|
|
/* 0222BC04 */ _t243 = cpu->r[30] + 0x00000014u;
|
|
/* 0222BC04 */ cpu->r[0] = rbrew_read32(cpu->mem, _t243);
|
|
/* 0222BC08 */ _t244 = cpu->r[30] + 0x00000008u;
|
|
/* 0222BC08 */ cpu->r[4] = rbrew_read32(cpu->mem, _t244);
|
|
/* 0222BC0C */ cpu->r[6] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x00000030u);
|
|
/* 0222BC10 */ _t245 = cpu->r[4] + 0x00000130u;
|
|
/* 0222BC10 */ cpu->r[11] = rbrew_read32(cpu->mem, _t245);
|
|
/* 0222BC14 */ cpu->f[9] = cpu->f[11] + cpu->f[12];
|
|
/* 0222BC18 */ cpu->r[9] = cpu->r[11] + cpu->r[6];
|
|
/* 0222BC1C */ _t246 = cpu->r[9] + 0x00000008u;
|
|
/* 0222BC1C */ rbrew_write_f32(cpu->mem, _t246, cpu->f[9]);
|
|
/* 0222BC20 */ goto L_0222BE1C;
|
|
L_0222BC24: ; // 0x222bc24
|
|
/* 0222BC24 */ _t247 = cpu->r[30] + 0x00000014u;
|
|
/* 0222BC24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t247);
|
|
/* 0222BC28 */ _t248 = cpu->r[30] + 0x00000008u;
|
|
/* 0222BC28 */ cpu->r[3] = rbrew_read32(cpu->mem, _t248);
|
|
/* 0222BC2C */ cpu->r[5] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x000000B0u);
|
|
/* 0222BC30 */ _t249 = cpu->r[3] + 0x00000148u;
|
|
/* 0222BC30 */ cpu->r[10] = rbrew_read32(cpu->mem, _t249);
|
|
/* 0222BC34 */ cpu->r[4] = cpu->r[10] + cpu->r[5];
|
|
/* 0222BC38 */ _t250 = cpu->r[4] + 0x00000060u;
|
|
/* 0222BC38 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t250);
|
|
/* 0222BC3C */ _t251 = cpu->r[4] + 0x00000064u;
|
|
/* 0222BC3C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t251);
|
|
/* 0222BC40 */ _t252 = cpu->r[4] + 0x00000068u;
|
|
/* 0222BC40 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t252);
|
|
/* 0222BC44 */ _t253 = cpu->r[4] + 0x0000005Cu;
|
|
/* 0222BC44 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t253);
|
|
/* 0222BC48 */ _t254 = cpu->r[4] + 0x00000054u;
|
|
/* 0222BC48 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t254);
|
|
/* 0222BC4C */ _t255 = cpu->r[4] + 0x00000070u;
|
|
/* 0222BC4C */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t255);
|
|
/* 0222BC50 */ _t256 = cpu->r[4] + 0x00000050u;
|
|
/* 0222BC50 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t256);
|
|
/* 0222BC54 */ _t257 = cpu->r[4] + 0x0000006Cu;
|
|
/* 0222BC54 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t257);
|
|
/* 0222BC58 */ _t258 = cpu->r[4] + 0x0000007Cu;
|
|
/* 0222BC58 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t258);
|
|
/* 0222BC5C */ _t259 = cpu->r[4] + 0x00000078u;
|
|
/* 0222BC5C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t259);
|
|
/* 0222BC60 */ _t260 = cpu->r[4] + 0x00000058u;
|
|
/* 0222BC60 */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t260);
|
|
/* 0222BC64 */ _t261 = cpu->r[4] + 0x00000074u;
|
|
/* 0222BC64 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t261);
|
|
/* 0222BC68 */ _t262 = cpu->r[1] + 0x00000030u;
|
|
/* 0222BC68 */ rbrew_write_f32(cpu->mem, _t262, cpu->f[7]);
|
|
/* 0222BC6C */ _t263 = cpu->r[1] + 0x00000028u;
|
|
/* 0222BC6C */ rbrew_write_f32(cpu->mem, _t263, cpu->f[5]);
|
|
/* 0222BC70 */ _t264 = cpu->r[1] + 0x00000044u;
|
|
/* 0222BC70 */ rbrew_write_f32(cpu->mem, _t264, cpu->f[9]);
|
|
/* 0222BC74 */ _t265 = cpu->r[1] + 0x00000034u;
|
|
/* 0222BC74 */ rbrew_write_f32(cpu->mem, _t265, cpu->f[8]);
|
|
/* 0222BC78 */ _t266 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0222BC78 */ rbrew_write_f32(cpu->mem, _t266, cpu->f[12]);
|
|
/* 0222BC7C */ _t267 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0222BC7C */ rbrew_write_f32(cpu->mem, _t267, cpu->f[0]);
|
|
/* 0222BC80 */ _t268 = cpu->r[1] + 0x00000020u;
|
|
/* 0222BC80 */ rbrew_write_f32(cpu->mem, _t268, cpu->f[29]);
|
|
/* 0222BC84 */ _t269 = cpu->r[1] + 0x00000038u;
|
|
/* 0222BC84 */ rbrew_write_f32(cpu->mem, _t269, cpu->f[11]);
|
|
/* 0222BC88 */ _t270 = cpu->r[1] + 0x00000040u;
|
|
/* 0222BC88 */ rbrew_write_f32(cpu->mem, _t270, cpu->f[6]);
|
|
/* 0222BC8C */ _t271 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0222BC8C */ rbrew_write_f32(cpu->mem, _t271, cpu->f[13]);
|
|
/* 0222BC90 */ _t272 = cpu->r[1] + 0x00000024u;
|
|
/* 0222BC90 */ rbrew_write_f32(cpu->mem, _t272, cpu->f[30]);
|
|
/* 0222BC94 */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 0222BC98 */ _t273 = cpu->r[1] + 0x00000048u;
|
|
/* 0222BC98 */ rbrew_write_f32(cpu->mem, _t273, cpu->f[10]);
|
|
/* 0222BC9C */ /* nop */
|
|
/* 0222BCA0 */ /* nop */
|
|
/* 0222BCA4 */ /* nop */
|
|
/* 0222BCA8 */ /* nop */
|
|
/* 0222BCAC */ /* nop */
|
|
/* 0222BCB0 */ /* nop */
|
|
/* 0222BCB4 */ /* nop */
|
|
/* 0222BCB8 */ /* nop */
|
|
/* 0222BCBC */ /* nop */
|
|
/* 0222BCC0 */ /* nop */
|
|
/* 0222BCC4 */ /* nop */
|
|
/* 0222BCC8 */ /* nop */
|
|
/* 0222BCCC */ /* nop */
|
|
/* 0222BCD0 */ /* nop */
|
|
/* 0222BCD4 */ /* nop */
|
|
/* 0222BCD8 */ /* nop */
|
|
/* 0222BCDC */ /* nop */
|
|
/* 0222BCE0 */ /* nop */
|
|
/* 0222BCE4 */ /* nop */
|
|
/* 0222BCE8 */ /* nop */
|
|
/* 0222BCEC */ /* nop */
|
|
/* 0222BCF0 */ /* nop */
|
|
/* 0222BCF4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[31]);
|
|
/* 0222BCF8 */ /* nop */
|
|
/* 0222BCFC */ /* nop */
|
|
/* 0222BD00 */ _t274 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222BD00 */ _t275 = _t274 & 0x00000001u;
|
|
/* 0222BD00 */ if (_t275) goto L_0222BD04; else goto L_0222BD10;
|
|
L_0222BD04: ; // 0x222bd04
|
|
/* 0222BD04 */ /* nop */
|
|
/* 0222BD08 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[31]);
|
|
/* 0222BD0C */ _t276 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222BD0C */ _t277 = _t276 & 0x00000001u;
|
|
/* 0222BD0C */ if (_t277) goto L_0222BD8C; else goto L_0222BD10;
|
|
L_0222BD10: ; // 0x222bd10
|
|
/* 0222BD10 */ cpu->f[9] = cpu->f[4] / cpu->f[9];
|
|
/* 0222BD14 */ _t278 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0222BD14 */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t278);
|
|
/* 0222BD18 */ /* nop */
|
|
/* 0222BD1C */ /* nop */
|
|
/* 0222BD20 */ _t279 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0222BD20 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t279);
|
|
/* 0222BD24 */ /* nop */
|
|
/* 0222BD28 */ /* nop */
|
|
/* 0222BD2C */ /* nop */
|
|
/* 0222BD30 */ _t280 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0222BD30 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t280);
|
|
/* 0222BD34 */ /* nop */
|
|
/* 0222BD38 */ /* nop */
|
|
/* 0222BD3C */ /* nop */
|
|
/* 0222BD40 */ cpu->r[10] = cpu->r[1] + 0x0000005Cu;
|
|
/* 0222BD44 */ /* nop */
|
|
/* 0222BD48 */ /* nop */
|
|
/* 0222BD4C */ /* nop */
|
|
/* 0222BD50 */ /* nop */
|
|
/* 0222BD54 */ /* nop */
|
|
/* 0222BD58 */ /* nop */
|
|
/* 0222BD5C */ /* nop */
|
|
/* 0222BD60 */ /* nop */
|
|
/* 0222BD64 */ /* nop */
|
|
/* 0222BD68 */ /* nop */
|
|
/* 0222BD6C */ /* nop */
|
|
/* 0222BD70 */ /* nop */
|
|
/* 0222BD74 */ /* nop */
|
|
/* 0222BD78 */ /* nop */
|
|
/* 0222BD7C */ /* nop */
|
|
/* 0222BD80 */ /* nop */
|
|
/* 0222BD84 */ _t281 = cpu->r[30] + 0x00000008u;
|
|
/* 0222BD84 */ cpu->r[3] = rbrew_read32(cpu->mem, _t281);
|
|
/* 0222BD88 */ _t282 = cpu->r[30] + 0x00000014u;
|
|
/* 0222BD88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t282);
|
|
L_0222BD8C: ; // 0x222bd8c
|
|
/* 0222BD8C */ _t283 = cpu->r[1] + 0x00000060u;
|
|
/* 0222BD8C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t283);
|
|
/* 0222BD90 */ _t284 = cpu->r[1] + 0x0000006Cu;
|
|
/* 0222BD90 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t284);
|
|
/* 0222BD94 */ cpu->f[7] = cpu->f[8] * cpu->f[1];
|
|
/* 0222BD98 */ _t285 = cpu->r[1] + 0x00000080u;
|
|
/* 0222BD98 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t285);
|
|
/* 0222BD9C */ _t286 = cpu->r[1] + 0x00000070u;
|
|
/* 0222BD9C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t286);
|
|
/* 0222BDA0 */ cpu->f[12] = cpu->f[13] * cpu->f[1];
|
|
/* 0222BDA4 */ _t287 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0222BDA4 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t287);
|
|
/* 0222BDA8 */ cpu->f[13] = cpu->f[0] * cpu->f[1];
|
|
/* 0222BDAC */ _t288 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0222BDAC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t288);
|
|
/* 0222BDB0 */ cpu->f[9] = fma(cpu->f[6], cpu->f[2], cpu->f[7]);
|
|
/* 0222BDB4 */ _t289 = cpu->r[1] + 0x00000074u;
|
|
/* 0222BDB4 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t289);
|
|
/* 0222BDB8 */ cpu->f[6] = fma(cpu->f[10], cpu->f[2], cpu->f[13]);
|
|
/* 0222BDBC */ _t290 = cpu->r[1] + 0x00000064u;
|
|
/* 0222BDBC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t290);
|
|
/* 0222BDC0 */ cpu->f[0] = fma(cpu->f[11], cpu->f[2], cpu->f[12]);
|
|
/* 0222BDC4 */ _t291 = cpu->r[1] + 0x00000088u;
|
|
/* 0222BDC4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t291);
|
|
/* 0222BDC8 */ cpu->f[13] = fma(cpu->f[10], cpu->f[3], cpu->f[9]);
|
|
/* 0222BDCC */ _t292 = cpu->r[1] + 0x00000068u;
|
|
/* 0222BDCC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t292);
|
|
/* 0222BDD0 */ cpu->f[8] = fma(cpu->f[7], cpu->f[3], cpu->f[6]);
|
|
/* 0222BDD4 */ _t293 = cpu->r[1] + 0x00000078u;
|
|
/* 0222BDD4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t293);
|
|
/* 0222BDD8 */ cpu->f[7] = cpu->f[13] + cpu->f[9];
|
|
/* 0222BDDC */ _t294 = cpu->r[1] + 0x00000084u;
|
|
/* 0222BDDC */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t294);
|
|
/* 0222BDE0 */ cpu->f[9] = cpu->f[8] + cpu->f[10];
|
|
/* 0222BDE4 */ cpu->r[8] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x00000030u);
|
|
/* 0222BDE8 */ _t295 = cpu->r[1] + 0x00000014u;
|
|
/* 0222BDE8 */ rbrew_write_f32(cpu->mem, _t295, cpu->f[7]);
|
|
/* 0222BDEC */ _t296 = cpu->r[1] + 0x00000018u;
|
|
/* 0222BDEC */ rbrew_write_f32(cpu->mem, _t296, cpu->f[9]);
|
|
/* 0222BDF0 */ _t297 = cpu->r[1] + 0x00000014u;
|
|
/* 0222BDF0 */ cpu->f[7] = rbrew_read_f64(cpu->mem, _t297);
|
|
/* 0222BDF4 */ _t298 = cpu->r[3] + 0x00000130u;
|
|
/* 0222BDF4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t298);
|
|
/* 0222BDF8 */ _t299 = cpu->r[8] + cpu->r[0];
|
|
/* 0222BDF8 */ rbrew_write8(cpu->mem, _t299, (uint8_t)cpu->r[7]);
|
|
/* 0222BDFC */ _t300 = cpu->r[30] + 0x00000014u;
|
|
/* 0222BDFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t300);
|
|
/* 0222BE00 */ cpu->f[11] = fma(cpu->f[6], cpu->f[3], cpu->f[0]);
|
|
/* 0222BE04 */ _t301 = cpu->r[30] + 0x00000008u;
|
|
/* 0222BE04 */ cpu->r[4] = rbrew_read32(cpu->mem, _t301);
|
|
/* 0222BE08 */ cpu->r[6] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x00000030u);
|
|
/* 0222BE0C */ _t302 = cpu->r[4] + 0x00000130u;
|
|
/* 0222BE0C */ cpu->r[11] = rbrew_read32(cpu->mem, _t302);
|
|
/* 0222BE10 */ cpu->f[9] = cpu->f[11] + cpu->f[12];
|
|
/* 0222BE14 */ cpu->r[9] = cpu->r[11] + cpu->r[6];
|
|
/* 0222BE18 */ _t303 = cpu->r[9] + 0x00000008u;
|
|
/* 0222BE18 */ rbrew_write_f32(cpu->mem, _t303, cpu->f[9]);
|
|
L_0222BE1C: ; // 0x222be1c
|
|
/* 0222BE1C */ _t304 = cpu->r[1] + 0x000000DCu;
|
|
/* 0222BE1C */ cpu->r[29] = rbrew_read32(cpu->mem, _t304);
|
|
/* 0222BE20 */ _t305 = cpu->r[1] + 0x00000100u;
|
|
/* 0222BE20 */ cpu->f[26] = rbrew_read_f32(cpu->mem, _t305);
|
|
/* 0222BE24 */ _t306 = cpu->r[1] + 0x000000F0u;
|
|
/* 0222BE24 */ cpu->f[25] = rbrew_read_f32(cpu->mem, _t306);
|
|
/* 0222BE28 */ _t307 = cpu->r[1] + 0x000000F8u;
|
|
/* 0222BE28 */ cpu->f[26] = rbrew_read_f64(cpu->mem, _t307);
|
|
/* 0222BE2C */ _t308 = cpu->r[1] + 0x00000110u;
|
|
/* 0222BE2C */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t308);
|
|
/* 0222BE30 */ _t309 = cpu->r[1] + 0x000000E8u;
|
|
/* 0222BE30 */ cpu->f[25] = rbrew_read_f64(cpu->mem, _t309);
|
|
/* 0222BE34 */ _t310 = cpu->r[1] + 0x00000108u;
|
|
/* 0222BE34 */ cpu->f[27] = rbrew_read_f64(cpu->mem, _t310);
|
|
/* 0222BE38 */ _t311 = cpu->r[1] + 0x00000120u;
|
|
/* 0222BE38 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t311);
|
|
/* 0222BE3C */ _t312 = cpu->r[1] + 0x00000130u;
|
|
/* 0222BE3C */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t312);
|
|
/* 0222BE40 */ _t313 = cpu->r[1] + 0x00000118u;
|
|
/* 0222BE40 */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t313);
|
|
/* 0222BE44 */ _t314 = cpu->r[1] + 0x00000128u;
|
|
/* 0222BE44 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t314);
|
|
/* 0222BE48 */ _t315 = cpu->r[1] + 0x00000150u;
|
|
/* 0222BE48 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t315);
|
|
/* 0222BE4C */ _t316 = cpu->r[1] + 0x00000140u;
|
|
/* 0222BE4C */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t316);
|
|
/* 0222BE50 */ _t317 = cpu->r[1] + 0x00000148u;
|
|
/* 0222BE50 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t317);
|
|
/* 0222BE54 */ _t318 = cpu->r[1] + 0x00000138u;
|
|
/* 0222BE54 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t318);
|
|
/* 0222BE58 */ _t319 = cpu->r[1] + 0x000000E4u;
|
|
/* 0222BE58 */ cpu->r[31] = rbrew_read32(cpu->mem, _t319);
|
|
/* 0222BE5C */ _t320 = cpu->r[1] + 0x000000E0u;
|
|
/* 0222BE5C */ cpu->r[30] = rbrew_read32(cpu->mem, _t320);
|
|
/* 0222BE60 */ _t321 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0222BE60 */ _t322 = _t321 & 0x00000001u;
|
|
/* 0222BE60 */ if (_t322) goto L_0222BE64; // else: addr-0 trap, fall-through
|
|
L_0222BE64: ; // 0x222be64
|
|
/* 0222BE64 */ _t323 = cpu->r[1] + 0x0000015Cu;
|
|
/* 0222BE64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t323);
|
|
/* 0222BE68 */ cpu->lr = cpu->r[0];
|
|
/* 0222BE6C */ cpu->r[1] = cpu->r[1] + 0x00000158u;
|
|
/* 0222BE70 */ return;
|
|
}
|
|
|
|
// fn_0222BE74 @ 0x222be74
|
|
void Gambit_fn_0222BE74(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _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_0222BE74: ; // 0x222be74
|
|
/* 0222BE74 */ _t0 = cpu->r[1] + 0xFFFFFFA8u;
|
|
/* 0222BE74 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0222BE74 */ cpu->r[1] = _t0;
|
|
/* 0222BE78 */ /* nop */
|
|
/* 0222BE7C */ cpu->r[0] = cpu->lr;
|
|
/* 0222BE80 */ _t1 = cpu->r[1] + 0x00000048u;
|
|
/* 0222BE80 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0222BE84 */ /* nop */
|
|
/* 0222BE88 */ _t2 = cpu->r[1] + 0x00000050u;
|
|
/* 0222BE88 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 0222BE8C */ _t3 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0222BE8C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0222BE90 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0222BE90 */ cpu->r[8] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0222BE94 */ _t5 = cpu->r[8] + 0x00000334u;
|
|
/* 0222BE94 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0222BE98 */ cpu->ctr = cpu->r[0];
|
|
/* 0222BE9C */ cpu->r[29] = cpu->r[3];
|
|
/* 0222BEA0 */ cpu->r[31] = cpu->r[4];
|
|
/* 0222BEA4 */ cpu->r[30] = cpu->r[5];
|
|
/* 0222BEA8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222BEAC */ cpu->r[11] = 0x10050000u;
|
|
/* 0222BEB0 */ cpu->f[31] = cpu->f[1];
|
|
/* 0222BEB4 */ _t6 = cpu->r[11] + 0x0000009Cu;
|
|
/* 0222BEB4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 0222BEB8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[31], cpu->f[0]);
|
|
/* 0222BEBC */ _t7 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0222BEBC */ _t8 = _t7 & 0x00000001u;
|
|
/* 0222BEBC */ if (_t8) goto L_0222BEC0; else goto L_0222BF74;
|
|
L_0222BEC0: ; // 0x222bec0
|
|
/* 0222BEC0 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0222BEC4 */ _t9 = cpu->r[3] + 0x00006000u;
|
|
/* 0222BEC4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0222BEC8 */ _t10 = cpu->r[3] + 0x00000004u;
|
|
/* 0222BEC8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0222BECC */ _t11 = cpu->r[7] + 0x0000012Cu;
|
|
/* 0222BECC */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0222BED0 */ cpu->ctr = cpu->r[0];
|
|
/* 0222BED4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222BED8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0222BEDC */ /* nop */
|
|
/* 0222BEE0 */ _t12 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0222BEE0 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0222BEE0 */ if (_t13) goto L_0222BEE4; else goto L_0222BF74;
|
|
L_0222BEE4: ; // 0x222bee4
|
|
/* 0222BEE4 */ cpu->r[28] = 0x00000000u;
|
|
L_0222BEE8: ; // 0x222bee8
|
|
/* 0222BEE8 */ /* nop */
|
|
/* 0222BEEC */ _t14 = cpu->r[29] + 0x0000002Cu;
|
|
/* 0222BEEC */ cpu->r[12] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0222BEF0 */ _t15 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0222BEF0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0222BEF4 */ _t16 = cpu->r[29] + 0x00000110u;
|
|
/* 0222BEF4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 0222BEF8 */ /* nop */
|
|
/* 0222BEFC */ _t17 = cpu->r[29] + 0x000000D8u;
|
|
/* 0222BEFC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 0222BF00 */ /* nop */
|
|
/* 0222BF04 */ _t18 = cpu->r[1] + 0x00000018u;
|
|
/* 0222BF04 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
/* 0222BF08 */ cpu->f[0] = cpu->f[10] - cpu->f[11];
|
|
/* 0222BF0C */ /* nop */
|
|
/* 0222BF10 */ _t19 = cpu->r[1] + 0x00000020u;
|
|
/* 0222BF10 */ cpu->r[8] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0222BF14 */ _t20 = cpu->r[29] + 0x00000054u;
|
|
/* 0222BF14 */ cpu->r[4] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0222BF18 */ _t21 = cpu->r[1] + 0x00000024u;
|
|
/* 0222BF18 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[0]);
|
|
/* 0222BF1C */ _t22 = cpu->r[1] + 0x00000024u;
|
|
/* 0222BF1C */ cpu->r[9] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0222BF20 */ _t23 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0222BF20 */ cpu->r[6] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0222BF24 */ _t24 = cpu->r[1] + 0x00000030u;
|
|
/* 0222BF24 */ rbrew_write32(cpu->mem, _t24, cpu->r[9]);
|
|
/* 0222BF28 */ _t25 = cpu->r[1] + 0x00000014u;
|
|
/* 0222BF28 */ rbrew_write32(cpu->mem, _t25, cpu->r[12]);
|
|
/* 0222BF2C */ _t26 = cpu->r[1] + 0x00000028u;
|
|
/* 0222BF2C */ rbrew_write32(cpu->mem, _t26, cpu->r[6]);
|
|
/* 0222BF30 */ cpu->r[6] = cpu->r[1] + 0x00000014u;
|
|
/* 0222BF34 */ _t27 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0222BF34 */ rbrew_write32(cpu->mem, _t27, cpu->r[8]);
|
|
/* 0222BF38 */ _t28 = cpu->r[31] + 0x00000000u;
|
|
/* 0222BF38 */ cpu->r[7] = rbrew_read8(cpu->mem, _t28);
|
|
/* 0222BF3C */ cpu->f[1] = cpu->f[31];
|
|
/* 0222BF40 */ _t29 = cpu->r[29] + 0x00000058u;
|
|
/* 0222BF40 */ cpu->r[5] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0222BF44 */ cpu->r[8] = cpu->r[31] + 0x00000004u;
|
|
/* 0222BF48 */ cpu->r[12] = cpu->r[1] + 0x00000028u;
|
|
/* 0222BF4C */ _t30 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222BF4C */ rbrew_write32(cpu->mem, _t30, cpu->r[27]);
|
|
/* 0222BF50 */ cpu->r[10] = cpu->r[1] + 0x00000018u;
|
|
/* 0222BF54 */ cpu->r[9] = cpu->r[31] + 0x00000010u;
|
|
/* 0222BF58 */ _t31 = cpu->r[1] + 0x00000010u;
|
|
/* 0222BF58 */ rbrew_write32(cpu->mem, _t31, cpu->r[28]);
|
|
/* 0222BF5C */ cpu->r[3] = cpu->r[29];
|
|
/* 0222BF60 */ _t32 = cpu->r[1] + 0x00000008u;
|
|
/* 0222BF60 */ rbrew_write32(cpu->mem, _t32, cpu->r[12]);
|
|
/* 0222BF64 */ Gambit_fn_02228C64(cpu);
|
|
/* 0222BF68 */ cpu->r[30] = cpu->r[30] + 0xFFFFFFFFu;
|
|
/* 0222BF68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0222BF6C */ cpu->r[31] = cpu->r[31] + 0x00000020u;
|
|
/* 0222BF70 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222BF70 */ _t34 = _t33 & 0x00000001u;
|
|
/* 0222BF70 */ if (_t34) goto L_0222BF74; else goto L_0222BEE8;
|
|
L_0222BF74: ; // 0x222bf74
|
|
/* 0222BF74 */ /* nop */
|
|
/* 0222BF78 */ _t35 = cpu->r[1] + 0x00000050u;
|
|
/* 0222BF78 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 0222BF7C */ _t36 = cpu->r[1] + 0x00000048u;
|
|
/* 0222BF7C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t36);
|
|
/* 0222BF80 */ _t37 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0222BF80 */ _t38 = _t37 & 0x00000001u;
|
|
/* 0222BF80 */ if (_t38) goto L_0222BF84; // else: addr-0 trap, fall-through
|
|
L_0222BF84: ; // 0x222bf84
|
|
/* 0222BF84 */ _t39 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0222BF84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t39);
|
|
/* 0222BF88 */ cpu->lr = cpu->r[0];
|
|
/* 0222BF8C */ cpu->r[1] = cpu->r[1] + 0x00000058u;
|
|
/* 0222BF90 */ return;
|
|
}
|
|
|
|
// fn_0222BF94 @ 0x222bf94
|
|
void Gambit_fn_0222BF94(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48;
|
|
double _ft24, _ft25, _ft39, _ft40;
|
|
|
|
L_0222BF94: ; // 0x222bf94
|
|
/* 0222BF94 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 0222BF94 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0222BF94 */ cpu->r[1] = _t0;
|
|
/* 0222BF98 */ _t1 = cpu->r[4] + 0x00000008u;
|
|
/* 0222BF98 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0222BF9C */ _t2 = cpu->r[4] + 0x00000004u;
|
|
/* 0222BF9C */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0222BFA0 */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 0222BFA0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0222BFA4 */ _t4 = cpu->r[4] + 0x00000000u;
|
|
/* 0222BFA4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0222BFA8 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222BFA8 */ rbrew_write32(cpu->mem, _t5, cpu->r[12]);
|
|
/* 0222BFAC */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222BFAC */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 0222BFB0 */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 0222BFB0 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 0222BFB4 */ cpu->f[8] = cpu->f[5] * cpu->f[5];
|
|
/* 0222BFB8 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 0222BFB8 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 0222BFBC */ _t9 = cpu->r[1] + 0x00000010u;
|
|
/* 0222BFBC */ cpu->f[4] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 0222BFC0 */ cpu->r[9] = 0x10050000u;
|
|
/* 0222BFC4 */ cpu->f[9] = fma(cpu->f[6], cpu->f[6], cpu->f[8]);
|
|
/* 0222BFC8 */ _t10 = cpu->r[9] + 0x0000009Cu;
|
|
/* 0222BFC8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 0222BFCC */ cpu->r[10] = 0x10050000u;
|
|
/* 0222BFD0 */ cpu->f[13] = fma(cpu->f[4], cpu->f[4], cpu->f[9]);
|
|
/* 0222BFD4 */ _t11 = cpu->r[10] + 0x000000A4u;
|
|
/* 0222BFD4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 0222BFD8 */ cpu->r[8] = 0x10050000u;
|
|
/* 0222BFDC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 0222BFE0 */ _t12 = cpu->r[8] + 0x000000A0u;
|
|
/* 0222BFE0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 0222BFE4 */ _t13 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0222BFE4 */ _t14 = _t13 & 0x00000001u;
|
|
/* 0222BFE4 */ if (_t14) goto L_0222C044; else goto L_0222BFE8;
|
|
L_0222BFE8: ; // 0x222bfe8
|
|
/* 0222BFE8 */ /* nop */
|
|
/* 0222BFEC */ /* nop */
|
|
/* 0222BFF0 */ /* nop */
|
|
/* 0222BFF4 */ /* nop */
|
|
/* 0222BFF8 */ _t15 = cpu->r[5] + 0x00000008u;
|
|
/* 0222BFF8 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 0222BFFC */ cpu->f[9] = fma(cpu->f[4], cpu->f[8], cpu->f[10]);
|
|
/* 0222C000 */ cpu->f[8] = -cpu->f[9];
|
|
/* 0222C004 */ cpu->f[8] = cpu->f[8] + cpu->f[8];
|
|
/* 0222C008 */ _t16 = cpu->r[5] + 0x00000000u;
|
|
/* 0222C008 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 0222C00C */ cpu->f[10] = fma(cpu->f[8], cpu->f[10], cpu->f[6]);
|
|
/* 0222C010 */ _t17 = cpu->r[3] + 0x00000000u;
|
|
/* 0222C010 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[10]);
|
|
/* 0222C014 */ _t18 = cpu->r[5] + 0x00000004u;
|
|
/* 0222C014 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 0222C018 */ cpu->f[9] = fma(cpu->f[8], cpu->f[7], cpu->f[5]);
|
|
/* 0222C01C */ cpu->f[7] = cpu->f[9] * cpu->f[9];
|
|
/* 0222C020 */ _t19 = cpu->r[3] + 0x00000004u;
|
|
/* 0222C020 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[9]);
|
|
/* 0222C024 */ _t20 = cpu->r[5] + 0x00000008u;
|
|
/* 0222C024 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 0222C028 */ cpu->f[7] = fma(cpu->f[10], cpu->f[10], cpu->f[7]);
|
|
/* 0222C02C */ cpu->f[9] = fma(cpu->f[8], cpu->f[9], cpu->f[4]);
|
|
/* 0222C030 */ cpu->f[7] = fma(cpu->f[9], cpu->f[9], cpu->f[7]);
|
|
/* 0222C034 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[0]);
|
|
/* 0222C038 */ _t21 = cpu->r[3] + 0x00000008u;
|
|
/* 0222C038 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[9]);
|
|
/* 0222C03C */ _t22 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0222C03C */ _t23 = _t22 & 0x00000001u;
|
|
/* 0222C03C */ if (_t23) goto L_0222C040; else goto L_0222C100;
|
|
L_0222C040: ; // 0x222c040
|
|
/* 0222C040 */ goto L_0222C0D0;
|
|
L_0222C044: ; // 0x222c044
|
|
/* 0222C044 */ _ft24 = sqrt(cpu->f[13]);
|
|
/* 0222C044 */ _ft25 = (double)(int32_t)0x00000001u;
|
|
/* 0222C044 */ cpu->f[8] = _ft25 / _ft24;
|
|
/* 0222C048 */ cpu->f[9] = cpu->f[8] * cpu->f[8];
|
|
/* 0222C04C */ cpu->f[10] = cpu->f[8] * cpu->f[11];
|
|
/* 0222C050 */ cpu->f[9] = -fma(cpu->f[9], cpu->f[13], -(cpu->f[12]));
|
|
/* 0222C054 */ cpu->f[8] = cpu->f[9] * cpu->f[10];
|
|
/* 0222C058 */ _t26 = cpu->r[1] + 0x00000010u;
|
|
/* 0222C058 */ cpu->f[4] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 0222C05C */ cpu->f[13] = cpu->f[13] * cpu->f[8];
|
|
/* 0222C060 */ /* nop */
|
|
/* 0222C064 */ cpu->f[4] = cpu->f[4] * cpu->f[8];
|
|
/* 0222C068 */ /* nop */
|
|
/* 0222C06C */ /* nop */
|
|
/* 0222C070 */ /* nop */
|
|
/* 0222C074 */ /* nop */
|
|
/* 0222C078 */ /* nop */
|
|
/* 0222C07C */ _t27 = cpu->r[5] + 0x00000008u;
|
|
/* 0222C07C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 0222C080 */ cpu->f[9] = fma(cpu->f[4], cpu->f[8], cpu->f[10]);
|
|
/* 0222C084 */ cpu->f[8] = -cpu->f[9];
|
|
/* 0222C088 */ _t28 = cpu->r[1] + 0x00000008u;
|
|
/* 0222C088 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 0222C08C */ cpu->f[8] = cpu->f[8] + cpu->f[8];
|
|
/* 0222C090 */ _t29 = cpu->r[5] + 0x00000000u;
|
|
/* 0222C090 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 0222C094 */ cpu->f[10] = fma(cpu->f[8], cpu->f[10], cpu->f[6]);
|
|
/* 0222C098 */ _t30 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222C098 */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 0222C09C */ _t31 = cpu->r[3] + 0x00000000u;
|
|
/* 0222C09C */ rbrew_write_f32(cpu->mem, _t31, cpu->f[10]);
|
|
/* 0222C0A0 */ _t32 = cpu->r[5] + 0x00000004u;
|
|
/* 0222C0A0 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 0222C0A4 */ cpu->f[9] = fma(cpu->f[8], cpu->f[7], cpu->f[5]);
|
|
/* 0222C0A8 */ cpu->f[7] = cpu->f[9] * cpu->f[9];
|
|
/* 0222C0AC */ _t33 = cpu->r[3] + 0x00000004u;
|
|
/* 0222C0AC */ rbrew_write_f32(cpu->mem, _t33, cpu->f[9]);
|
|
/* 0222C0B0 */ _t34 = cpu->r[5] + 0x00000008u;
|
|
/* 0222C0B0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 0222C0B4 */ cpu->f[7] = fma(cpu->f[10], cpu->f[10], cpu->f[7]);
|
|
/* 0222C0B8 */ cpu->f[9] = fma(cpu->f[8], cpu->f[9], cpu->f[4]);
|
|
/* 0222C0BC */ cpu->f[7] = fma(cpu->f[9], cpu->f[9], cpu->f[7]);
|
|
/* 0222C0C0 */ _t35 = cpu->r[3] + 0x00000008u;
|
|
/* 0222C0C0 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[9]);
|
|
/* 0222C0C4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[0]);
|
|
/* 0222C0C8 */ _t36 = cpu->r[1] + 0x00000010u;
|
|
/* 0222C0C8 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[4]);
|
|
/* 0222C0CC */ _t37 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0222C0CC */ _t38 = _t37 & 0x00000001u;
|
|
/* 0222C0CC */ if (_t38) goto L_0222C0D0; else goto L_0222C100;
|
|
L_0222C0D0: ; // 0x222c0d0
|
|
/* 0222C0D0 */ _ft39 = sqrt(cpu->f[7]);
|
|
/* 0222C0D0 */ _ft40 = (double)(int32_t)0x00000001u;
|
|
/* 0222C0D0 */ cpu->f[8] = _ft40 / _ft39;
|
|
/* 0222C0D4 */ cpu->f[10] = cpu->f[8] * cpu->f[8];
|
|
/* 0222C0D8 */ cpu->f[0] = cpu->f[8] * cpu->f[11];
|
|
/* 0222C0DC */ cpu->f[10] = -fma(cpu->f[10], cpu->f[7], -(cpu->f[12]));
|
|
/* 0222C0E0 */ cpu->f[8] = cpu->f[10] * cpu->f[0];
|
|
/* 0222C0E4 */ _t41 = cpu->r[3] + 0x00000008u;
|
|
/* 0222C0E4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 0222C0E8 */ /* nop */
|
|
/* 0222C0EC */ cpu->f[0] = cpu->f[0] * cpu->f[8];
|
|
/* 0222C0F0 */ /* nop */
|
|
/* 0222C0F4 */ /* nop */
|
|
/* 0222C0F8 */ _t42 = cpu->r[3] + 0x00000000u;
|
|
/* 0222C0F8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 0222C0FC */ _t43 = cpu->r[3] + 0x00000008u;
|
|
/* 0222C0FC */ rbrew_write_f32(cpu->mem, _t43, cpu->f[0]);
|
|
L_0222C100: ; // 0x222c100
|
|
/* 0222C100 */ _t44 = cpu->r[3] + 0x00000004u;
|
|
/* 0222C100 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 0222C104 */ cpu->f[0] = cpu->f[10] * cpu->f[13];
|
|
/* 0222C108 */ _t45 = cpu->r[3] + 0x00000008u;
|
|
/* 0222C108 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t45);
|
|
/* 0222C10C */ cpu->f[9] = cpu->f[9] * cpu->f[13];
|
|
/* 0222C110 */ _t46 = cpu->r[3] + 0x00000000u;
|
|
/* 0222C110 */ rbrew_write_f32(cpu->mem, _t46, cpu->f[0]);
|
|
/* 0222C114 */ cpu->f[7] = cpu->f[7] * cpu->f[13];
|
|
/* 0222C118 */ _t47 = cpu->r[3] + 0x00000004u;
|
|
/* 0222C118 */ rbrew_write_f32(cpu->mem, _t47, cpu->f[9]);
|
|
/* 0222C11C */ _t48 = cpu->r[3] + 0x00000008u;
|
|
/* 0222C11C */ rbrew_write_f32(cpu->mem, _t48, cpu->f[7]);
|
|
/* 0222C120 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 0222C124 */ return;
|
|
}
|
|
|
|
// fn_0222C128 @ 0x222c128
|
|
void Gambit_fn_0222C128(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103;
|
|
double _ft82, _ft83;
|
|
|
|
L_0222C128: ; // 0x222c128
|
|
/* 0222C128 */ cpu->r[0] = cpu->lr;
|
|
/* 0222C12C */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 0222C12C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0222C12C */ cpu->r[1] = _t0;
|
|
/* 0222C130 */ _t1 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0222C130 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0222C134 */ cpu->r[31] = cpu->r[3];
|
|
/* 0222C138 */ _t2 = cpu->r[1] + 0x00000044u;
|
|
/* 0222C138 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0222C13C */ Gambit_fn_021BEFA0(cpu);
|
|
/* 0222C140 */ _t3 = cpu->r[31] + 0x00000114u;
|
|
/* 0222C140 */ cpu->r[10] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0222C144 */ cpu->r[10] = rbrew_rlwinm(cpu->r[10], 0x00000000u, 0x00000011u, 0x0000000Fu);
|
|
/* 0222C148 */ cpu->r[3] = cpu->r[31];
|
|
/* 0222C14C */ cpu->r[0] = rbrew_rlwinm(cpu->r[10], 0x00000000u, 0x00000008u, 0x00000009u);
|
|
/* 0222C14C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0222C150 */ _t4 = cpu->r[31] + 0x00000114u;
|
|
/* 0222C150 */ rbrew_write32(cpu->mem, _t4, cpu->r[10]);
|
|
/* 0222C154 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222C154 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0222C154 */ if (_t6) goto L_0222C184; else goto L_0222C158;
|
|
L_0222C158: ; // 0x222c158
|
|
/* 0222C158 */ _t7 = cpu->r[31] + 0x00000004u;
|
|
/* 0222C158 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0222C15C */ _t8 = cpu->r[12] + 0x00000304u;
|
|
/* 0222C15C */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0222C160 */ cpu->ctr = cpu->r[0];
|
|
/* 0222C164 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222C168 */ cpu->r[3] = cpu->r[31];
|
|
/* 0222C16C */ Gambit_fn_02790488(cpu);
|
|
/* 0222C170 */ _t9 = cpu->r[1] + 0x00000044u;
|
|
/* 0222C170 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0222C174 */ _t10 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0222C174 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0222C178 */ cpu->lr = cpu->r[0];
|
|
/* 0222C17C */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 0222C180 */ return;
|
|
L_0222C184: ; // 0x222c184
|
|
/* 0222C184 */ _t11 = cpu->r[31] + 0x000000C4u;
|
|
/* 0222C184 */ cpu->r[11] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0222C188 */ _t12 = cpu->r[31] + 0x000000DCu;
|
|
/* 0222C188 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 0222C18C */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 0222C18C */ rbrew_write32(cpu->mem, _t13, cpu->r[11]);
|
|
/* 0222C190 */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 0222C190 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 0222C194 */ _t15 = cpu->r[31] + 0x000000CCu;
|
|
/* 0222C194 */ cpu->r[10] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0222C198 */ _t16 = cpu->r[31] + 0x000000C8u;
|
|
/* 0222C198 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0222C19C */ cpu->f[11] = cpu->f[13] * cpu->f[10];
|
|
/* 0222C1A0 */ _t17 = cpu->r[1] + 0x00000010u;
|
|
/* 0222C1A0 */ rbrew_write32(cpu->mem, _t17, cpu->r[10]);
|
|
/* 0222C1A4 */ _t18 = cpu->r[1] + 0x00000010u;
|
|
/* 0222C1A4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 0222C1A8 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222C1A8 */ rbrew_write32(cpu->mem, _t19, cpu->r[0]);
|
|
/* 0222C1AC */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222C1AC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 0222C1B0 */ cpu->f[9] = cpu->f[8] * cpu->f[10];
|
|
/* 0222C1B4 */ _t21 = cpu->r[31] + 0x000000E0u;
|
|
/* 0222C1B4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 0222C1B8 */ _t22 = cpu->r[31] + 0x0000009Cu;
|
|
/* 0222C1B8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 0222C1BC */ cpu->f[10] = cpu->f[0] * cpu->f[8];
|
|
/* 0222C1C0 */ _t23 = cpu->r[31] + 0x000000ECu;
|
|
/* 0222C1C0 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 0222C1C4 */ cpu->f[8] = -cpu->f[10];
|
|
/* 0222C1C8 */ _t24 = cpu->r[31] + 0x000000E4u;
|
|
/* 0222C1C8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 0222C1CC */ cpu->f[0] = -cpu->f[11];
|
|
/* 0222C1D0 */ _t25 = cpu->r[31] + 0x00000094u;
|
|
/* 0222C1D0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 0222C1D4 */ cpu->f[10] = -cpu->f[9];
|
|
/* 0222C1D8 */ _t26 = cpu->r[31] + 0x00000090u;
|
|
/* 0222C1D8 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[13]);
|
|
/* 0222C1DC */ cpu->f[9] = cpu->f[8] - cpu->f[12];
|
|
/* 0222C1E0 */ _t27 = cpu->r[31] + 0x000000ACu;
|
|
/* 0222C1E0 */ rbrew_write_f32(cpu->mem, _t27, cpu->f[13]);
|
|
/* 0222C1E4 */ _t28 = cpu->r[31] + 0x000000A4u;
|
|
/* 0222C1E4 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[11]);
|
|
/* 0222C1E8 */ _t29 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222C1E8 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[9]);
|
|
/* 0222C1EC */ _t30 = cpu->r[31] + 0x000000CCu;
|
|
/* 0222C1EC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 0222C1F0 */ _t31 = cpu->r[31] + 0x00000098u;
|
|
/* 0222C1F0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 0222C1F4 */ cpu->f[9] = fma(cpu->f[7], cpu->f[10], cpu->f[9]);
|
|
/* 0222C1F8 */ _t32 = cpu->r[1] + 0x00000008u;
|
|
/* 0222C1F8 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[0]);
|
|
/* 0222C1FC */ /* nop */
|
|
/* 0222C200 */ /* nop */
|
|
/* 0222C204 */ _t33 = cpu->r[31] + 0x000000CCu;
|
|
/* 0222C204 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[9]);
|
|
/* 0222C208 */ /* nop */
|
|
/* 0222C20C */ /* nop */
|
|
/* 0222C210 */ cpu->f[13] = fma(cpu->f[7], cpu->f[9], cpu->f[13]);
|
|
/* 0222C214 */ _t34 = cpu->r[1] + 0x00000010u;
|
|
/* 0222C214 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[10]);
|
|
/* 0222C218 */ _t35 = cpu->r[31] + 0x0000009Cu;
|
|
/* 0222C218 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[13]);
|
|
/* 0222C21C */ /* nop */
|
|
/* 0222C220 */ /* nop */
|
|
/* 0222C224 */ /* nop */
|
|
/* 0222C228 */ _t36 = cpu->r[31] + 0x00000004u;
|
|
/* 0222C228 */ cpu->r[12] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0222C22C */ _t37 = cpu->r[31] + 0x00000088u;
|
|
/* 0222C22C */ rbrew_write_f32(cpu->mem, _t37, cpu->f[11]);
|
|
/* 0222C230 */ _t38 = cpu->r[31] + 0x0000008Cu;
|
|
/* 0222C230 */ rbrew_write_f32(cpu->mem, _t38, cpu->f[12]);
|
|
/* 0222C234 */ _t39 = cpu->r[31] + 0x000000A8u;
|
|
/* 0222C234 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[12]);
|
|
/* 0222C238 */ _t40 = cpu->r[12] + 0x00000324u;
|
|
/* 0222C238 */ cpu->r[10] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0222C23C */ cpu->ctr = cpu->r[10];
|
|
/* 0222C240 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222C244 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0222C248 */ _t41 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222C248 */ _t42 = _t41 & 0x00000001u;
|
|
/* 0222C248 */ if (_t42) goto L_0222C260; else goto L_0222C24C;
|
|
L_0222C24C: ; // 0x222c24c
|
|
/* 0222C24C */ _t43 = cpu->r[31] + 0x00000004u;
|
|
/* 0222C24C */ cpu->r[9] = rbrew_read32(cpu->mem, _t43);
|
|
/* 0222C250 */ _t44 = cpu->r[9] + 0x000003C4u;
|
|
/* 0222C250 */ cpu->r[12] = rbrew_read32(cpu->mem, _t44);
|
|
/* 0222C254 */ cpu->ctr = cpu->r[12];
|
|
/* 0222C258 */ cpu->r[3] = cpu->r[31];
|
|
/* 0222C25C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0222C260: ; // 0x222c260
|
|
/* 0222C260 */ _t45 = cpu->r[31] + 0x00000114u;
|
|
/* 0222C260 */ cpu->r[11] = rbrew_read8(cpu->mem, _t45);
|
|
/* 0222C264 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], 0x000000FFu);
|
|
/* 0222C268 */ _t46 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0222C268 */ _t47 = _t46 & 0x00000001u;
|
|
/* 0222C268 */ if (_t47) goto L_0222C26C; else goto L_0222C274;
|
|
L_0222C26C: ; // 0x222c26c
|
|
/* 0222C26C */ cpu->r[9] = cpu->r[11] + 0x00000001u;
|
|
/* 0222C270 */ _t48 = cpu->r[31] + 0x00000114u;
|
|
/* 0222C270 */ rbrew_write8(cpu->mem, _t48, (uint8_t)cpu->r[9]);
|
|
L_0222C274: ; // 0x222c274
|
|
/* 0222C274 */ _t49 = cpu->r[31] + 0x00000114u;
|
|
/* 0222C274 */ cpu->r[11] = rbrew_read32(cpu->mem, _t49);
|
|
/* 0222C278 */ cpu->r[11] = rbrew_rlwinm(cpu->r[11], 0x00000000u, 0x00000012u, 0x00000013u);
|
|
/* 0222C278 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0222C27C */ _t50 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222C27C */ _t51 = _t50 & 0x00000001u;
|
|
/* 0222C27C */ if (_t51) goto L_0222C3D4; else goto L_0222C280;
|
|
L_0222C280: ; // 0x222c280
|
|
/* 0222C280 */ _t52 = cpu->r[31] + 0x00000004u;
|
|
/* 0222C280 */ cpu->r[12] = rbrew_read32(cpu->mem, _t52);
|
|
/* 0222C284 */ _t53 = cpu->r[12] + 0x0000025Cu;
|
|
/* 0222C284 */ cpu->r[0] = rbrew_read32(cpu->mem, _t53);
|
|
/* 0222C288 */ cpu->ctr = cpu->r[0];
|
|
/* 0222C28C */ cpu->r[3] = cpu->r[31];
|
|
/* 0222C290 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222C294 */ _t54 = cpu->r[3] + 0x00000000u;
|
|
/* 0222C294 */ cpu->r[0] = rbrew_read32(cpu->mem, _t54);
|
|
/* 0222C298 */ _t55 = cpu->r[1] + 0x00000014u;
|
|
/* 0222C298 */ rbrew_write32(cpu->mem, _t55, cpu->r[0]);
|
|
/* 0222C29C */ _t56 = cpu->r[3] + 0x00000004u;
|
|
/* 0222C29C */ cpu->r[9] = rbrew_read32(cpu->mem, _t56);
|
|
/* 0222C2A0 */ _t57 = cpu->r[1] + 0x00000018u;
|
|
/* 0222C2A0 */ rbrew_write32(cpu->mem, _t57, cpu->r[9]);
|
|
/* 0222C2A4 */ _t58 = cpu->r[3] + 0x00000008u;
|
|
/* 0222C2A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t58);
|
|
/* 0222C2A8 */ _t59 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0222C2A8 */ rbrew_write32(cpu->mem, _t59, cpu->r[0]);
|
|
/* 0222C2AC */ _t60 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0222C2AC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t60);
|
|
/* 0222C2B0 */ cpu->f[9] = cpu->f[0] * cpu->f[0];
|
|
/* 0222C2B4 */ _t61 = cpu->r[1] + 0x00000014u;
|
|
/* 0222C2B4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t61);
|
|
/* 0222C2B8 */ cpu->r[9] = 0x10050000u;
|
|
/* 0222C2BC */ cpu->f[9] = fma(cpu->f[8], cpu->f[8], cpu->f[9]);
|
|
/* 0222C2C0 */ _t62 = cpu->r[9] + 0x0000009Cu;
|
|
/* 0222C2C0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 0222C2C4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[12]);
|
|
/* 0222C2C8 */ _t63 = cpu->r[1] + 0x00000018u;
|
|
/* 0222C2C8 */ rbrew_write_f32(cpu->mem, _t63, cpu->f[12]);
|
|
/* 0222C2CC */ _t64 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0222C2CC */ _t65 = _t64 & 0x00000001u;
|
|
/* 0222C2CC */ if (_t65) goto L_0222C334; else goto L_0222C2D0;
|
|
L_0222C2D0: ; // 0x222c2d0
|
|
/* 0222C2D0 */ /* nop */
|
|
/* 0222C2D4 */ /* nop */
|
|
/* 0222C2D8 */ _t66 = cpu->r[31] + 0x000000D8u;
|
|
/* 0222C2D8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t66);
|
|
/* 0222C2DC */ /* nop */
|
|
/* 0222C2E0 */ _t67 = cpu->r[31] + 0x0000009Cu;
|
|
/* 0222C2E0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t67);
|
|
/* 0222C2E4 */ /* nop */
|
|
/* 0222C2E8 */ _t68 = cpu->r[1] + 0x00000020u;
|
|
/* 0222C2E8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t68);
|
|
/* 0222C2EC */ _t69 = cpu->r[1] + 0x00000024u;
|
|
/* 0222C2EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t69);
|
|
/* 0222C2F0 */ _t70 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0222C2F0 */ rbrew_write32(cpu->mem, _t70, cpu->r[11]);
|
|
/* 0222C2F4 */ cpu->f[13] = cpu->f[9] - cpu->f[10];
|
|
/* 0222C2F8 */ _t71 = cpu->r[1] + 0x00000030u;
|
|
/* 0222C2F8 */ rbrew_write32(cpu->mem, _t71, cpu->r[0]);
|
|
/* 0222C2FC */ /* nop */
|
|
/* 0222C300 */ /* nop */
|
|
/* 0222C304 */ _t72 = cpu->r[1] + 0x00000028u;
|
|
/* 0222C304 */ rbrew_write_f32(cpu->mem, _t72, cpu->f[13]);
|
|
/* 0222C308 */ _t73 = cpu->r[1] + 0x00000028u;
|
|
/* 0222C308 */ cpu->r[10] = rbrew_read32(cpu->mem, _t73);
|
|
/* 0222C30C */ /* nop */
|
|
/* 0222C310 */ _t74 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0222C310 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t74);
|
|
/* 0222C314 */ _t75 = cpu->r[1] + 0x00000034u;
|
|
/* 0222C314 */ rbrew_write32(cpu->mem, _t75, cpu->r[10]);
|
|
/* 0222C318 */ _t76 = cpu->r[1] + 0x00000034u;
|
|
/* 0222C318 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t76);
|
|
/* 0222C31C */ /* nop */
|
|
/* 0222C320 */ cpu->f[9] = fma(cpu->f[8], cpu->f[10], cpu->f[9]);
|
|
/* 0222C324 */ _t77 = cpu->r[31] + 0x00000118u;
|
|
/* 0222C324 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t77);
|
|
/* 0222C328 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[13]);
|
|
/* 0222C32C */ _t78 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0222C32C */ _t79 = _t78 & 0x00000001u;
|
|
/* 0222C32C */ if (_t79) goto L_0222C3D4; else goto L_0222C330;
|
|
L_0222C330: ; // 0x222c330
|
|
/* 0222C330 */ goto L_0222C3C8;
|
|
L_0222C334: ; // 0x222c334
|
|
/* 0222C334 */ cpu->r[12] = 0x10050000u;
|
|
/* 0222C338 */ cpu->r[10] = 0x10050000u;
|
|
/* 0222C33C */ _t80 = cpu->r[12] + 0x000000A4u;
|
|
/* 0222C33C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t80);
|
|
/* 0222C340 */ _t81 = cpu->r[10] + 0x000000A0u;
|
|
/* 0222C340 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t81);
|
|
/* 0222C344 */ _ft82 = sqrt(cpu->f[9]);
|
|
/* 0222C344 */ _ft83 = (double)(int32_t)0x00000001u;
|
|
/* 0222C344 */ cpu->f[10] = _ft83 / _ft82;
|
|
/* 0222C348 */ cpu->f[12] = cpu->f[10] * cpu->f[10];
|
|
/* 0222C34C */ cpu->f[0] = cpu->f[10] * cpu->f[11];
|
|
/* 0222C350 */ cpu->f[12] = -fma(cpu->f[12], cpu->f[9], -(cpu->f[13]));
|
|
/* 0222C354 */ cpu->f[10] = cpu->f[12] * cpu->f[0];
|
|
/* 0222C358 */ /* nop */
|
|
/* 0222C35C */ /* nop */
|
|
/* 0222C360 */ /* nop */
|
|
/* 0222C364 */ /* nop */
|
|
/* 0222C368 */ _t84 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0222C368 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t84);
|
|
/* 0222C36C */ /* nop */
|
|
/* 0222C370 */ /* nop */
|
|
/* 0222C374 */ cpu->f[13] = cpu->f[13] * cpu->f[10];
|
|
/* 0222C378 */ _t85 = cpu->r[31] + 0x000000D8u;
|
|
/* 0222C378 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t85);
|
|
/* 0222C37C */ _t86 = cpu->r[1] + 0x00000024u;
|
|
/* 0222C37C */ cpu->r[0] = rbrew_read32(cpu->mem, _t86);
|
|
/* 0222C380 */ _t87 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0222C380 */ rbrew_write_f32(cpu->mem, _t87, cpu->f[13]);
|
|
/* 0222C384 */ _t88 = cpu->r[1] + 0x00000020u;
|
|
/* 0222C384 */ cpu->r[11] = rbrew_read32(cpu->mem, _t88);
|
|
/* 0222C388 */ _t89 = cpu->r[31] + 0x0000009Cu;
|
|
/* 0222C388 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t89);
|
|
/* 0222C38C */ _t90 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0222C38C */ rbrew_write32(cpu->mem, _t90, cpu->r[11]);
|
|
/* 0222C390 */ cpu->f[13] = cpu->f[9] - cpu->f[10];
|
|
/* 0222C394 */ _t91 = cpu->r[1] + 0x00000030u;
|
|
/* 0222C394 */ rbrew_write32(cpu->mem, _t91, cpu->r[0]);
|
|
/* 0222C398 */ /* nop */
|
|
/* 0222C39C */ _t92 = cpu->r[1] + 0x00000028u;
|
|
/* 0222C39C */ rbrew_write_f32(cpu->mem, _t92, cpu->f[13]);
|
|
/* 0222C3A0 */ _t93 = cpu->r[1] + 0x00000028u;
|
|
/* 0222C3A0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t93);
|
|
/* 0222C3A4 */ /* nop */
|
|
/* 0222C3A8 */ _t94 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0222C3A8 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t94);
|
|
/* 0222C3AC */ _t95 = cpu->r[1] + 0x00000034u;
|
|
/* 0222C3AC */ rbrew_write32(cpu->mem, _t95, cpu->r[10]);
|
|
/* 0222C3B0 */ _t96 = cpu->r[1] + 0x00000034u;
|
|
/* 0222C3B0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t96);
|
|
/* 0222C3B4 */ /* nop */
|
|
/* 0222C3B8 */ cpu->f[9] = fma(cpu->f[8], cpu->f[10], cpu->f[9]);
|
|
/* 0222C3BC */ _t97 = cpu->r[31] + 0x00000118u;
|
|
/* 0222C3BC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t97);
|
|
/* 0222C3C0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[13]);
|
|
/* 0222C3C4 */ _t98 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0222C3C4 */ _t99 = _t98 & 0x00000001u;
|
|
/* 0222C3C4 */ if (_t99) goto L_0222C3D4; else goto L_0222C3C8;
|
|
L_0222C3C8: ; // 0x222c3c8
|
|
/* 0222C3C8 */ _t100 = cpu->r[31] + 0x00000114u;
|
|
/* 0222C3C8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t100);
|
|
/* 0222C3CC */ cpu->r[12] = rbrew_rlwinm(cpu->r[12], 0x00000000u, 0x00000014u, 0x00000011u);
|
|
/* 0222C3D0 */ _t101 = cpu->r[31] + 0x00000114u;
|
|
/* 0222C3D0 */ rbrew_write32(cpu->mem, _t101, cpu->r[12]);
|
|
L_0222C3D4: ; // 0x222c3d4
|
|
/* 0222C3D4 */ _t102 = cpu->r[1] + 0x00000044u;
|
|
/* 0222C3D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t102);
|
|
/* 0222C3D8 */ _t103 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0222C3D8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t103);
|
|
/* 0222C3DC */ cpu->lr = cpu->r[0];
|
|
/* 0222C3E0 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 0222C3E4 */ return;
|
|
}
|
|
|
|
// fn_0222C12C @ 0x222c12c
|
|
void Gambit_fn_0222C12C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103;
|
|
double _ft82, _ft83;
|
|
|
|
L_0222C12C: ; // 0x222c12c
|
|
/* 0222C12C */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 0222C12C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0222C12C */ cpu->r[1] = _t0;
|
|
/* 0222C130 */ _t1 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0222C130 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0222C134 */ cpu->r[31] = cpu->r[3];
|
|
/* 0222C138 */ _t2 = cpu->r[1] + 0x00000044u;
|
|
/* 0222C138 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0222C13C */ Gambit_fn_021BEFA0(cpu);
|
|
/* 0222C140 */ _t3 = cpu->r[31] + 0x00000114u;
|
|
/* 0222C140 */ cpu->r[10] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0222C144 */ cpu->r[10] = rbrew_rlwinm(cpu->r[10], 0x00000000u, 0x00000011u, 0x0000000Fu);
|
|
/* 0222C148 */ cpu->r[3] = cpu->r[31];
|
|
/* 0222C14C */ cpu->r[0] = rbrew_rlwinm(cpu->r[10], 0x00000000u, 0x00000008u, 0x00000009u);
|
|
/* 0222C14C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0222C150 */ _t4 = cpu->r[31] + 0x00000114u;
|
|
/* 0222C150 */ rbrew_write32(cpu->mem, _t4, cpu->r[10]);
|
|
/* 0222C154 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222C154 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0222C154 */ if (_t6) goto L_0222C184; else goto L_0222C158;
|
|
L_0222C158: ; // 0x222c158
|
|
/* 0222C158 */ _t7 = cpu->r[31] + 0x00000004u;
|
|
/* 0222C158 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0222C15C */ _t8 = cpu->r[12] + 0x00000304u;
|
|
/* 0222C15C */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0222C160 */ cpu->ctr = cpu->r[0];
|
|
/* 0222C164 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222C168 */ cpu->r[3] = cpu->r[31];
|
|
/* 0222C16C */ Gambit_fn_02790488(cpu);
|
|
/* 0222C170 */ _t9 = cpu->r[1] + 0x00000044u;
|
|
/* 0222C170 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0222C174 */ _t10 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0222C174 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0222C178 */ cpu->lr = cpu->r[0];
|
|
/* 0222C17C */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 0222C180 */ return;
|
|
L_0222C184: ; // 0x222c184
|
|
/* 0222C184 */ _t11 = cpu->r[31] + 0x000000C4u;
|
|
/* 0222C184 */ cpu->r[11] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0222C188 */ _t12 = cpu->r[31] + 0x000000DCu;
|
|
/* 0222C188 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 0222C18C */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 0222C18C */ rbrew_write32(cpu->mem, _t13, cpu->r[11]);
|
|
/* 0222C190 */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 0222C190 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 0222C194 */ _t15 = cpu->r[31] + 0x000000CCu;
|
|
/* 0222C194 */ cpu->r[10] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0222C198 */ _t16 = cpu->r[31] + 0x000000C8u;
|
|
/* 0222C198 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0222C19C */ cpu->f[11] = cpu->f[13] * cpu->f[10];
|
|
/* 0222C1A0 */ _t17 = cpu->r[1] + 0x00000010u;
|
|
/* 0222C1A0 */ rbrew_write32(cpu->mem, _t17, cpu->r[10]);
|
|
/* 0222C1A4 */ _t18 = cpu->r[1] + 0x00000010u;
|
|
/* 0222C1A4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 0222C1A8 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222C1A8 */ rbrew_write32(cpu->mem, _t19, cpu->r[0]);
|
|
/* 0222C1AC */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222C1AC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 0222C1B0 */ cpu->f[9] = cpu->f[8] * cpu->f[10];
|
|
/* 0222C1B4 */ _t21 = cpu->r[31] + 0x000000E0u;
|
|
/* 0222C1B4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 0222C1B8 */ _t22 = cpu->r[31] + 0x0000009Cu;
|
|
/* 0222C1B8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 0222C1BC */ cpu->f[10] = cpu->f[0] * cpu->f[8];
|
|
/* 0222C1C0 */ _t23 = cpu->r[31] + 0x000000ECu;
|
|
/* 0222C1C0 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 0222C1C4 */ cpu->f[8] = -cpu->f[10];
|
|
/* 0222C1C8 */ _t24 = cpu->r[31] + 0x000000E4u;
|
|
/* 0222C1C8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 0222C1CC */ cpu->f[0] = -cpu->f[11];
|
|
/* 0222C1D0 */ _t25 = cpu->r[31] + 0x00000094u;
|
|
/* 0222C1D0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 0222C1D4 */ cpu->f[10] = -cpu->f[9];
|
|
/* 0222C1D8 */ _t26 = cpu->r[31] + 0x00000090u;
|
|
/* 0222C1D8 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[13]);
|
|
/* 0222C1DC */ cpu->f[9] = cpu->f[8] - cpu->f[12];
|
|
/* 0222C1E0 */ _t27 = cpu->r[31] + 0x000000ACu;
|
|
/* 0222C1E0 */ rbrew_write_f32(cpu->mem, _t27, cpu->f[13]);
|
|
/* 0222C1E4 */ _t28 = cpu->r[31] + 0x000000A4u;
|
|
/* 0222C1E4 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[11]);
|
|
/* 0222C1E8 */ _t29 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222C1E8 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[9]);
|
|
/* 0222C1EC */ _t30 = cpu->r[31] + 0x000000CCu;
|
|
/* 0222C1EC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 0222C1F0 */ _t31 = cpu->r[31] + 0x00000098u;
|
|
/* 0222C1F0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 0222C1F4 */ cpu->f[9] = fma(cpu->f[7], cpu->f[10], cpu->f[9]);
|
|
/* 0222C1F8 */ _t32 = cpu->r[1] + 0x00000008u;
|
|
/* 0222C1F8 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[0]);
|
|
/* 0222C1FC */ /* nop */
|
|
/* 0222C200 */ /* nop */
|
|
/* 0222C204 */ _t33 = cpu->r[31] + 0x000000CCu;
|
|
/* 0222C204 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[9]);
|
|
/* 0222C208 */ /* nop */
|
|
/* 0222C20C */ /* nop */
|
|
/* 0222C210 */ cpu->f[13] = fma(cpu->f[7], cpu->f[9], cpu->f[13]);
|
|
/* 0222C214 */ _t34 = cpu->r[1] + 0x00000010u;
|
|
/* 0222C214 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[10]);
|
|
/* 0222C218 */ _t35 = cpu->r[31] + 0x0000009Cu;
|
|
/* 0222C218 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[13]);
|
|
/* 0222C21C */ /* nop */
|
|
/* 0222C220 */ /* nop */
|
|
/* 0222C224 */ /* nop */
|
|
/* 0222C228 */ _t36 = cpu->r[31] + 0x00000004u;
|
|
/* 0222C228 */ cpu->r[12] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0222C22C */ _t37 = cpu->r[31] + 0x00000088u;
|
|
/* 0222C22C */ rbrew_write_f32(cpu->mem, _t37, cpu->f[11]);
|
|
/* 0222C230 */ _t38 = cpu->r[31] + 0x0000008Cu;
|
|
/* 0222C230 */ rbrew_write_f32(cpu->mem, _t38, cpu->f[12]);
|
|
/* 0222C234 */ _t39 = cpu->r[31] + 0x000000A8u;
|
|
/* 0222C234 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[12]);
|
|
/* 0222C238 */ _t40 = cpu->r[12] + 0x00000324u;
|
|
/* 0222C238 */ cpu->r[10] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0222C23C */ cpu->ctr = cpu->r[10];
|
|
/* 0222C240 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222C244 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0222C248 */ _t41 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222C248 */ _t42 = _t41 & 0x00000001u;
|
|
/* 0222C248 */ if (_t42) goto L_0222C260; else goto L_0222C24C;
|
|
L_0222C24C: ; // 0x222c24c
|
|
/* 0222C24C */ _t43 = cpu->r[31] + 0x00000004u;
|
|
/* 0222C24C */ cpu->r[9] = rbrew_read32(cpu->mem, _t43);
|
|
/* 0222C250 */ _t44 = cpu->r[9] + 0x000003C4u;
|
|
/* 0222C250 */ cpu->r[12] = rbrew_read32(cpu->mem, _t44);
|
|
/* 0222C254 */ cpu->ctr = cpu->r[12];
|
|
/* 0222C258 */ cpu->r[3] = cpu->r[31];
|
|
/* 0222C25C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0222C260: ; // 0x222c260
|
|
/* 0222C260 */ _t45 = cpu->r[31] + 0x00000114u;
|
|
/* 0222C260 */ cpu->r[11] = rbrew_read8(cpu->mem, _t45);
|
|
/* 0222C264 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], 0x000000FFu);
|
|
/* 0222C268 */ _t46 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0222C268 */ _t47 = _t46 & 0x00000001u;
|
|
/* 0222C268 */ if (_t47) goto L_0222C26C; else goto L_0222C274;
|
|
L_0222C26C: ; // 0x222c26c
|
|
/* 0222C26C */ cpu->r[9] = cpu->r[11] + 0x00000001u;
|
|
/* 0222C270 */ _t48 = cpu->r[31] + 0x00000114u;
|
|
/* 0222C270 */ rbrew_write8(cpu->mem, _t48, (uint8_t)cpu->r[9]);
|
|
L_0222C274: ; // 0x222c274
|
|
/* 0222C274 */ _t49 = cpu->r[31] + 0x00000114u;
|
|
/* 0222C274 */ cpu->r[11] = rbrew_read32(cpu->mem, _t49);
|
|
/* 0222C278 */ cpu->r[11] = rbrew_rlwinm(cpu->r[11], 0x00000000u, 0x00000012u, 0x00000013u);
|
|
/* 0222C278 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0222C27C */ _t50 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222C27C */ _t51 = _t50 & 0x00000001u;
|
|
/* 0222C27C */ if (_t51) goto L_0222C3D4; else goto L_0222C280;
|
|
L_0222C280: ; // 0x222c280
|
|
/* 0222C280 */ _t52 = cpu->r[31] + 0x00000004u;
|
|
/* 0222C280 */ cpu->r[12] = rbrew_read32(cpu->mem, _t52);
|
|
/* 0222C284 */ _t53 = cpu->r[12] + 0x0000025Cu;
|
|
/* 0222C284 */ cpu->r[0] = rbrew_read32(cpu->mem, _t53);
|
|
/* 0222C288 */ cpu->ctr = cpu->r[0];
|
|
/* 0222C28C */ cpu->r[3] = cpu->r[31];
|
|
/* 0222C290 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222C294 */ _t54 = cpu->r[3] + 0x00000000u;
|
|
/* 0222C294 */ cpu->r[0] = rbrew_read32(cpu->mem, _t54);
|
|
/* 0222C298 */ _t55 = cpu->r[1] + 0x00000014u;
|
|
/* 0222C298 */ rbrew_write32(cpu->mem, _t55, cpu->r[0]);
|
|
/* 0222C29C */ _t56 = cpu->r[3] + 0x00000004u;
|
|
/* 0222C29C */ cpu->r[9] = rbrew_read32(cpu->mem, _t56);
|
|
/* 0222C2A0 */ _t57 = cpu->r[1] + 0x00000018u;
|
|
/* 0222C2A0 */ rbrew_write32(cpu->mem, _t57, cpu->r[9]);
|
|
/* 0222C2A4 */ _t58 = cpu->r[3] + 0x00000008u;
|
|
/* 0222C2A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t58);
|
|
/* 0222C2A8 */ _t59 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0222C2A8 */ rbrew_write32(cpu->mem, _t59, cpu->r[0]);
|
|
/* 0222C2AC */ _t60 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0222C2AC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t60);
|
|
/* 0222C2B0 */ cpu->f[9] = cpu->f[0] * cpu->f[0];
|
|
/* 0222C2B4 */ _t61 = cpu->r[1] + 0x00000014u;
|
|
/* 0222C2B4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t61);
|
|
/* 0222C2B8 */ cpu->r[9] = 0x10050000u;
|
|
/* 0222C2BC */ cpu->f[9] = fma(cpu->f[8], cpu->f[8], cpu->f[9]);
|
|
/* 0222C2C0 */ _t62 = cpu->r[9] + 0x0000009Cu;
|
|
/* 0222C2C0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 0222C2C4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[12]);
|
|
/* 0222C2C8 */ _t63 = cpu->r[1] + 0x00000018u;
|
|
/* 0222C2C8 */ rbrew_write_f32(cpu->mem, _t63, cpu->f[12]);
|
|
/* 0222C2CC */ _t64 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0222C2CC */ _t65 = _t64 & 0x00000001u;
|
|
/* 0222C2CC */ if (_t65) goto L_0222C334; else goto L_0222C2D0;
|
|
L_0222C2D0: ; // 0x222c2d0
|
|
/* 0222C2D0 */ /* nop */
|
|
/* 0222C2D4 */ /* nop */
|
|
/* 0222C2D8 */ _t66 = cpu->r[31] + 0x000000D8u;
|
|
/* 0222C2D8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t66);
|
|
/* 0222C2DC */ /* nop */
|
|
/* 0222C2E0 */ _t67 = cpu->r[31] + 0x0000009Cu;
|
|
/* 0222C2E0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t67);
|
|
/* 0222C2E4 */ /* nop */
|
|
/* 0222C2E8 */ _t68 = cpu->r[1] + 0x00000020u;
|
|
/* 0222C2E8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t68);
|
|
/* 0222C2EC */ _t69 = cpu->r[1] + 0x00000024u;
|
|
/* 0222C2EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t69);
|
|
/* 0222C2F0 */ _t70 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0222C2F0 */ rbrew_write32(cpu->mem, _t70, cpu->r[11]);
|
|
/* 0222C2F4 */ cpu->f[13] = cpu->f[9] - cpu->f[10];
|
|
/* 0222C2F8 */ _t71 = cpu->r[1] + 0x00000030u;
|
|
/* 0222C2F8 */ rbrew_write32(cpu->mem, _t71, cpu->r[0]);
|
|
/* 0222C2FC */ /* nop */
|
|
/* 0222C300 */ /* nop */
|
|
/* 0222C304 */ _t72 = cpu->r[1] + 0x00000028u;
|
|
/* 0222C304 */ rbrew_write_f32(cpu->mem, _t72, cpu->f[13]);
|
|
/* 0222C308 */ _t73 = cpu->r[1] + 0x00000028u;
|
|
/* 0222C308 */ cpu->r[10] = rbrew_read32(cpu->mem, _t73);
|
|
/* 0222C30C */ /* nop */
|
|
/* 0222C310 */ _t74 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0222C310 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t74);
|
|
/* 0222C314 */ _t75 = cpu->r[1] + 0x00000034u;
|
|
/* 0222C314 */ rbrew_write32(cpu->mem, _t75, cpu->r[10]);
|
|
/* 0222C318 */ _t76 = cpu->r[1] + 0x00000034u;
|
|
/* 0222C318 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t76);
|
|
/* 0222C31C */ /* nop */
|
|
/* 0222C320 */ cpu->f[9] = fma(cpu->f[8], cpu->f[10], cpu->f[9]);
|
|
/* 0222C324 */ _t77 = cpu->r[31] + 0x00000118u;
|
|
/* 0222C324 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t77);
|
|
/* 0222C328 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[13]);
|
|
/* 0222C32C */ _t78 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0222C32C */ _t79 = _t78 & 0x00000001u;
|
|
/* 0222C32C */ if (_t79) goto L_0222C3D4; else goto L_0222C330;
|
|
L_0222C330: ; // 0x222c330
|
|
/* 0222C330 */ goto L_0222C3C8;
|
|
L_0222C334: ; // 0x222c334
|
|
/* 0222C334 */ cpu->r[12] = 0x10050000u;
|
|
/* 0222C338 */ cpu->r[10] = 0x10050000u;
|
|
/* 0222C33C */ _t80 = cpu->r[12] + 0x000000A4u;
|
|
/* 0222C33C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t80);
|
|
/* 0222C340 */ _t81 = cpu->r[10] + 0x000000A0u;
|
|
/* 0222C340 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t81);
|
|
/* 0222C344 */ _ft82 = sqrt(cpu->f[9]);
|
|
/* 0222C344 */ _ft83 = (double)(int32_t)0x00000001u;
|
|
/* 0222C344 */ cpu->f[10] = _ft83 / _ft82;
|
|
/* 0222C348 */ cpu->f[12] = cpu->f[10] * cpu->f[10];
|
|
/* 0222C34C */ cpu->f[0] = cpu->f[10] * cpu->f[11];
|
|
/* 0222C350 */ cpu->f[12] = -fma(cpu->f[12], cpu->f[9], -(cpu->f[13]));
|
|
/* 0222C354 */ cpu->f[10] = cpu->f[12] * cpu->f[0];
|
|
/* 0222C358 */ /* nop */
|
|
/* 0222C35C */ /* nop */
|
|
/* 0222C360 */ /* nop */
|
|
/* 0222C364 */ /* nop */
|
|
/* 0222C368 */ _t84 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0222C368 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t84);
|
|
/* 0222C36C */ /* nop */
|
|
/* 0222C370 */ /* nop */
|
|
/* 0222C374 */ cpu->f[13] = cpu->f[13] * cpu->f[10];
|
|
/* 0222C378 */ _t85 = cpu->r[31] + 0x000000D8u;
|
|
/* 0222C378 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t85);
|
|
/* 0222C37C */ _t86 = cpu->r[1] + 0x00000024u;
|
|
/* 0222C37C */ cpu->r[0] = rbrew_read32(cpu->mem, _t86);
|
|
/* 0222C380 */ _t87 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0222C380 */ rbrew_write_f32(cpu->mem, _t87, cpu->f[13]);
|
|
/* 0222C384 */ _t88 = cpu->r[1] + 0x00000020u;
|
|
/* 0222C384 */ cpu->r[11] = rbrew_read32(cpu->mem, _t88);
|
|
/* 0222C388 */ _t89 = cpu->r[31] + 0x0000009Cu;
|
|
/* 0222C388 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t89);
|
|
/* 0222C38C */ _t90 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0222C38C */ rbrew_write32(cpu->mem, _t90, cpu->r[11]);
|
|
/* 0222C390 */ cpu->f[13] = cpu->f[9] - cpu->f[10];
|
|
/* 0222C394 */ _t91 = cpu->r[1] + 0x00000030u;
|
|
/* 0222C394 */ rbrew_write32(cpu->mem, _t91, cpu->r[0]);
|
|
/* 0222C398 */ /* nop */
|
|
/* 0222C39C */ _t92 = cpu->r[1] + 0x00000028u;
|
|
/* 0222C39C */ rbrew_write_f32(cpu->mem, _t92, cpu->f[13]);
|
|
/* 0222C3A0 */ _t93 = cpu->r[1] + 0x00000028u;
|
|
/* 0222C3A0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t93);
|
|
/* 0222C3A4 */ /* nop */
|
|
/* 0222C3A8 */ _t94 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0222C3A8 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t94);
|
|
/* 0222C3AC */ _t95 = cpu->r[1] + 0x00000034u;
|
|
/* 0222C3AC */ rbrew_write32(cpu->mem, _t95, cpu->r[10]);
|
|
/* 0222C3B0 */ _t96 = cpu->r[1] + 0x00000034u;
|
|
/* 0222C3B0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t96);
|
|
/* 0222C3B4 */ /* nop */
|
|
/* 0222C3B8 */ cpu->f[9] = fma(cpu->f[8], cpu->f[10], cpu->f[9]);
|
|
/* 0222C3BC */ _t97 = cpu->r[31] + 0x00000118u;
|
|
/* 0222C3BC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t97);
|
|
/* 0222C3C0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[13]);
|
|
/* 0222C3C4 */ _t98 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0222C3C4 */ _t99 = _t98 & 0x00000001u;
|
|
/* 0222C3C4 */ if (_t99) goto L_0222C3D4; else goto L_0222C3C8;
|
|
L_0222C3C8: ; // 0x222c3c8
|
|
/* 0222C3C8 */ _t100 = cpu->r[31] + 0x00000114u;
|
|
/* 0222C3C8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t100);
|
|
/* 0222C3CC */ cpu->r[12] = rbrew_rlwinm(cpu->r[12], 0x00000000u, 0x00000014u, 0x00000011u);
|
|
/* 0222C3D0 */ _t101 = cpu->r[31] + 0x00000114u;
|
|
/* 0222C3D0 */ rbrew_write32(cpu->mem, _t101, cpu->r[12]);
|
|
L_0222C3D4: ; // 0x222c3d4
|
|
/* 0222C3D4 */ _t102 = cpu->r[1] + 0x00000044u;
|
|
/* 0222C3D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t102);
|
|
/* 0222C3D8 */ _t103 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0222C3D8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t103);
|
|
/* 0222C3DC */ cpu->lr = cpu->r[0];
|
|
/* 0222C3E0 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 0222C3E4 */ return;
|
|
}
|
|
|
|
// fn_0222C3E8 @ 0x222c3e8
|
|
void Gambit_fn_0222C3E8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _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_0222C3E8: ; // 0x222c3e8
|
|
/* 0222C3E8 */ cpu->r[0] = cpu->lr;
|
|
/* 0222C3EC */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 0222C3EC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0222C3EC */ cpu->r[1] = _t0;
|
|
/* 0222C3F0 */ _t1 = cpu->r[1] + 0x00000028u;
|
|
/* 0222C3F0 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0222C3F4 */ _t2 = cpu->r[1] + 0x00000024u;
|
|
/* 0222C3F4 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0222C3F8 */ /* nop */
|
|
/* 0222C3FC */ _t3 = cpu->r[1] + 0x00000030u;
|
|
/* 0222C3FC */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 0222C400 */ cpu->r[31] = cpu->r[3];
|
|
/* 0222C404 */ _t4 = cpu->r[1] + 0x00000020u;
|
|
/* 0222C404 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 0222C408 */ _t5 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0222C408 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0222C40C */ _t6 = cpu->r[31] + 0x00000114u;
|
|
/* 0222C40C */ cpu->r[11] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0222C410 */ cpu->r[0] = rbrew_rlwinm(cpu->r[11], 0x0000000Cu, 0x0000001Eu, 0x0000001Fu);
|
|
/* 0222C410 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0222C414 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222C414 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0222C414 */ if (_t8) goto L_0222C4BC; else goto L_0222C418;
|
|
L_0222C418: ; // 0x222c418
|
|
/* 0222C418 */ _t9 = cpu->r[31] + 0x00000004u;
|
|
/* 0222C418 */ cpu->r[10] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0222C41C */ cpu->r[9] = cpu->r[0] + 0xFFFFFFFFu;
|
|
/* 0222C420 */ cpu->r[30] = cpu->r[0] - cpu->r[9];
|
|
/* 0222C424 */ _t10 = cpu->r[10] + 0x0000037Cu;
|
|
/* 0222C424 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0222C428 */ cpu->ctr = cpu->r[0];
|
|
/* 0222C42C */ cpu->r[3] = cpu->r[31];
|
|
/* 0222C430 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222C434 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0222C438 */ _t11 = cpu->r[31] + 0x00000114u;
|
|
/* 0222C438 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0222C43C */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222C43C */ _t13 = _t12 & 0x00000001u;
|
|
/* 0222C43C */ if (_t13) goto L_0222C440; else goto L_0222C444;
|
|
L_0222C440: ; // 0x222c440
|
|
/* 0222C440 */ cpu->r[30] = 0x00000000u;
|
|
L_0222C444: ; // 0x222c444
|
|
/* 0222C444 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000000Cu, 0x00000009u);
|
|
/* 0222C448 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0222C44C */ _t14 = cpu->r[31] + 0x00000114u;
|
|
/* 0222C44C */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
/* 0222C450 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222C450 */ _t16 = _t15 & 0x00000001u;
|
|
/* 0222C450 */ if (_t16) goto L_0222C4BC; else goto L_0222C454;
|
|
L_0222C454: ; // 0x222c454
|
|
/* 0222C454 */ _t17 = cpu->r[31] + 0x00000054u;
|
|
/* 0222C454 */ cpu->r[3] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0222C458 */ Gambit_fn_027E3E40(cpu);
|
|
/* 0222C45C */ cpu->r[4] = cpu->r[31] + 0x000000FCu;
|
|
/* 0222C460 */ cpu->r[30] = cpu->r[3];
|
|
/* 0222C464 */ Gambit_fn_025CAEB8(cpu);
|
|
/* 0222C468 */ _t18 = cpu->r[31] + 0x00000004u;
|
|
/* 0222C468 */ cpu->r[7] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0222C46C */ _t19 = cpu->r[7] + 0x00000454u;
|
|
/* 0222C46C */ cpu->r[9] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0222C470 */ cpu->ctr = cpu->r[9];
|
|
/* 0222C474 */ cpu->r[3] = cpu->r[31];
|
|
/* 0222C478 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222C47C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0222C480 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222C480 */ _t21 = _t20 & 0x00000001u;
|
|
/* 0222C480 */ if (_t21) goto L_0222C4A8; else goto L_0222C484;
|
|
L_0222C484: ; // 0x222c484
|
|
/* 0222C484 */ _t22 = cpu->r[31] + 0x00000004u;
|
|
/* 0222C484 */ cpu->r[10] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0222C488 */ _t23 = cpu->r[10] + 0x0000025Cu;
|
|
/* 0222C488 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0222C48C */ cpu->ctr = cpu->r[0];
|
|
/* 0222C490 */ cpu->r[3] = cpu->r[31];
|
|
/* 0222C494 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222C498 */ cpu->r[5] = cpu->r[3];
|
|
/* 0222C49C */ cpu->r[3] = cpu->r[30];
|
|
/* 0222C4A0 */ cpu->r[4] = cpu->r[31] + 0x000000FCu;
|
|
/* 0222C4A4 */ Gambit_fn_025C8BB4(cpu);
|
|
L_0222C4A8: ; // 0x222c4a8
|
|
/* 0222C4A8 */ _t24 = cpu->r[31] + 0x00000004u;
|
|
/* 0222C4A8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0222C4AC */ _t25 = cpu->r[12] + 0x000003ACu;
|
|
/* 0222C4AC */ cpu->r[7] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0222C4B0 */ cpu->ctr = cpu->r[7];
|
|
/* 0222C4B4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0222C4B8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0222C4BC: ; // 0x222c4bc
|
|
/* 0222C4BC */ /* nop */
|
|
/* 0222C4C0 */ /* nop */
|
|
/* 0222C4C4 */ _t26 = cpu->r[31] + 0x00000090u;
|
|
/* 0222C4C4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 0222C4C8 */ /* nop */
|
|
/* 0222C4CC */ _t27 = cpu->r[31] + 0x00000104u;
|
|
/* 0222C4CC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 0222C4D0 */ /* nop */
|
|
/* 0222C4D4 */ _t28 = cpu->r[1] + 0x00000008u;
|
|
/* 0222C4D4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0222C4D8 */ _t29 = cpu->r[31] + 0x0000009Cu;
|
|
/* 0222C4D8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 0222C4DC */ _t30 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222C4DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0222C4E0 */ cpu->f[12] = cpu->f[13] - cpu->f[0];
|
|
/* 0222C4E4 */ _t31 = cpu->r[1] + 0x00000014u;
|
|
/* 0222C4E4 */ rbrew_write32(cpu->mem, _t31, cpu->r[12]);
|
|
/* 0222C4E8 */ _t32 = cpu->r[1] + 0x00000018u;
|
|
/* 0222C4E8 */ rbrew_write32(cpu->mem, _t32, cpu->r[0]);
|
|
/* 0222C4EC */ _t33 = cpu->r[1] + 0x00000010u;
|
|
/* 0222C4EC */ rbrew_write_f32(cpu->mem, _t33, cpu->f[12]);
|
|
/* 0222C4F0 */ _t34 = cpu->r[1] + 0x00000010u;
|
|
/* 0222C4F0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t34);
|
|
/* 0222C4F4 */ /* nop */
|
|
/* 0222C4F8 */ _t35 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0222C4F8 */ rbrew_write32(cpu->mem, _t35, cpu->r[8]);
|
|
/* 0222C4FC */ _t36 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0222C4FC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 0222C500 */ /* nop */
|
|
/* 0222C504 */ cpu->f[11] = cpu->f[11] + cpu->f[0];
|
|
/* 0222C508 */ _t37 = cpu->r[31] + 0x00000004u;
|
|
/* 0222C508 */ cpu->r[30] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0222C50C */ /* nop */
|
|
/* 0222C510 */ /* nop */
|
|
/* 0222C514 */ _t38 = cpu->r[31] + 0x00000104u;
|
|
/* 0222C514 */ rbrew_write_f32(cpu->mem, _t38, cpu->f[11]);
|
|
/* 0222C518 */ _t39 = cpu->r[30] + 0x0000033Cu;
|
|
/* 0222C518 */ cpu->r[12] = rbrew_read32(cpu->mem, _t39);
|
|
/* 0222C51C */ cpu->ctr = cpu->r[12];
|
|
/* 0222C520 */ cpu->r[3] = cpu->r[31];
|
|
/* 0222C524 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222C528 */ _t40 = cpu->r[30] + 0x00000344u;
|
|
/* 0222C528 */ cpu->r[8] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0222C52C */ cpu->ctr = cpu->r[8];
|
|
/* 0222C530 */ cpu->f[31] = cpu->f[1];
|
|
/* 0222C534 */ cpu->r[3] = cpu->r[31];
|
|
/* 0222C538 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222C53C */ cpu->f[2] = cpu->f[1];
|
|
/* 0222C540 */ cpu->r[5] = cpu->r[31] + 0x00000094u;
|
|
/* 0222C544 */ cpu->f[1] = cpu->f[31];
|
|
/* 0222C548 */ cpu->r[6] = cpu->r[31] + 0x00000088u;
|
|
/* 0222C54C */ cpu->r[4] = cpu->r[31] + 0x000000FCu;
|
|
/* 0222C550 */ cpu->r[3] = cpu->r[31];
|
|
/* 0222C554 */ Gambit_fn_021BED44(cpu);
|
|
/* 0222C558 */ _t41 = cpu->r[1] + 0x00000030u;
|
|
/* 0222C558 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 0222C55C */ _t42 = cpu->r[1] + 0x00000024u;
|
|
/* 0222C55C */ cpu->r[31] = rbrew_read32(cpu->mem, _t42);
|
|
/* 0222C560 */ _t43 = cpu->r[1] + 0x00000028u;
|
|
/* 0222C560 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t43);
|
|
/* 0222C564 */ _t44 = cpu->r[1] + 0x00000020u;
|
|
/* 0222C564 */ cpu->r[30] = rbrew_read32(cpu->mem, _t44);
|
|
/* 0222C568 */ _t45 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0222C568 */ _t46 = _t45 & 0x00000001u;
|
|
/* 0222C568 */ if (_t46) goto L_0222C56C; // else: addr-0 trap, fall-through
|
|
L_0222C56C: ; // 0x222c56c
|
|
/* 0222C56C */ _t47 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0222C56C */ cpu->r[0] = rbrew_read32(cpu->mem, _t47);
|
|
/* 0222C570 */ cpu->lr = cpu->r[0];
|
|
/* 0222C574 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 0222C578 */ return;
|
|
}
|
|
|
|
// fn_0222C3EC @ 0x222c3ec
|
|
void Gambit_fn_0222C3EC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _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_0222C3EC: ; // 0x222c3ec
|
|
/* 0222C3EC */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 0222C3EC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0222C3EC */ cpu->r[1] = _t0;
|
|
/* 0222C3F0 */ _t1 = cpu->r[1] + 0x00000028u;
|
|
/* 0222C3F0 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0222C3F4 */ _t2 = cpu->r[1] + 0x00000024u;
|
|
/* 0222C3F4 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0222C3F8 */ /* nop */
|
|
/* 0222C3FC */ _t3 = cpu->r[1] + 0x00000030u;
|
|
/* 0222C3FC */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 0222C400 */ cpu->r[31] = cpu->r[3];
|
|
/* 0222C404 */ _t4 = cpu->r[1] + 0x00000020u;
|
|
/* 0222C404 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 0222C408 */ _t5 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0222C408 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0222C40C */ _t6 = cpu->r[31] + 0x00000114u;
|
|
/* 0222C40C */ cpu->r[11] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0222C410 */ cpu->r[0] = rbrew_rlwinm(cpu->r[11], 0x0000000Cu, 0x0000001Eu, 0x0000001Fu);
|
|
/* 0222C410 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0222C414 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222C414 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0222C414 */ if (_t8) goto L_0222C4BC; else goto L_0222C418;
|
|
L_0222C418: ; // 0x222c418
|
|
/* 0222C418 */ _t9 = cpu->r[31] + 0x00000004u;
|
|
/* 0222C418 */ cpu->r[10] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0222C41C */ cpu->r[9] = cpu->r[0] + 0xFFFFFFFFu;
|
|
/* 0222C420 */ cpu->r[30] = cpu->r[0] - cpu->r[9];
|
|
/* 0222C424 */ _t10 = cpu->r[10] + 0x0000037Cu;
|
|
/* 0222C424 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0222C428 */ cpu->ctr = cpu->r[0];
|
|
/* 0222C42C */ cpu->r[3] = cpu->r[31];
|
|
/* 0222C430 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222C434 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0222C438 */ _t11 = cpu->r[31] + 0x00000114u;
|
|
/* 0222C438 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0222C43C */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222C43C */ _t13 = _t12 & 0x00000001u;
|
|
/* 0222C43C */ if (_t13) goto L_0222C440; else goto L_0222C444;
|
|
L_0222C440: ; // 0x222c440
|
|
/* 0222C440 */ cpu->r[30] = 0x00000000u;
|
|
L_0222C444: ; // 0x222c444
|
|
/* 0222C444 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000000Cu, 0x00000009u);
|
|
/* 0222C448 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0222C44C */ _t14 = cpu->r[31] + 0x00000114u;
|
|
/* 0222C44C */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
/* 0222C450 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222C450 */ _t16 = _t15 & 0x00000001u;
|
|
/* 0222C450 */ if (_t16) goto L_0222C4BC; else goto L_0222C454;
|
|
L_0222C454: ; // 0x222c454
|
|
/* 0222C454 */ _t17 = cpu->r[31] + 0x00000054u;
|
|
/* 0222C454 */ cpu->r[3] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0222C458 */ Gambit_fn_027E3E40(cpu);
|
|
/* 0222C45C */ cpu->r[4] = cpu->r[31] + 0x000000FCu;
|
|
/* 0222C460 */ cpu->r[30] = cpu->r[3];
|
|
/* 0222C464 */ Gambit_fn_025CAEB8(cpu);
|
|
/* 0222C468 */ _t18 = cpu->r[31] + 0x00000004u;
|
|
/* 0222C468 */ cpu->r[7] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0222C46C */ _t19 = cpu->r[7] + 0x00000454u;
|
|
/* 0222C46C */ cpu->r[9] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0222C470 */ cpu->ctr = cpu->r[9];
|
|
/* 0222C474 */ cpu->r[3] = cpu->r[31];
|
|
/* 0222C478 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222C47C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0222C480 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222C480 */ _t21 = _t20 & 0x00000001u;
|
|
/* 0222C480 */ if (_t21) goto L_0222C4A8; else goto L_0222C484;
|
|
L_0222C484: ; // 0x222c484
|
|
/* 0222C484 */ _t22 = cpu->r[31] + 0x00000004u;
|
|
/* 0222C484 */ cpu->r[10] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0222C488 */ _t23 = cpu->r[10] + 0x0000025Cu;
|
|
/* 0222C488 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0222C48C */ cpu->ctr = cpu->r[0];
|
|
/* 0222C490 */ cpu->r[3] = cpu->r[31];
|
|
/* 0222C494 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222C498 */ cpu->r[5] = cpu->r[3];
|
|
/* 0222C49C */ cpu->r[3] = cpu->r[30];
|
|
/* 0222C4A0 */ cpu->r[4] = cpu->r[31] + 0x000000FCu;
|
|
/* 0222C4A4 */ Gambit_fn_025C8BB4(cpu);
|
|
L_0222C4A8: ; // 0x222c4a8
|
|
/* 0222C4A8 */ _t24 = cpu->r[31] + 0x00000004u;
|
|
/* 0222C4A8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0222C4AC */ _t25 = cpu->r[12] + 0x000003ACu;
|
|
/* 0222C4AC */ cpu->r[7] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0222C4B0 */ cpu->ctr = cpu->r[7];
|
|
/* 0222C4B4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0222C4B8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0222C4BC: ; // 0x222c4bc
|
|
/* 0222C4BC */ /* nop */
|
|
/* 0222C4C0 */ /* nop */
|
|
/* 0222C4C4 */ _t26 = cpu->r[31] + 0x00000090u;
|
|
/* 0222C4C4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 0222C4C8 */ /* nop */
|
|
/* 0222C4CC */ _t27 = cpu->r[31] + 0x00000104u;
|
|
/* 0222C4CC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 0222C4D0 */ /* nop */
|
|
/* 0222C4D4 */ _t28 = cpu->r[1] + 0x00000008u;
|
|
/* 0222C4D4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0222C4D8 */ _t29 = cpu->r[31] + 0x0000009Cu;
|
|
/* 0222C4D8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 0222C4DC */ _t30 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222C4DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0222C4E0 */ cpu->f[12] = cpu->f[13] - cpu->f[0];
|
|
/* 0222C4E4 */ _t31 = cpu->r[1] + 0x00000014u;
|
|
/* 0222C4E4 */ rbrew_write32(cpu->mem, _t31, cpu->r[12]);
|
|
/* 0222C4E8 */ _t32 = cpu->r[1] + 0x00000018u;
|
|
/* 0222C4E8 */ rbrew_write32(cpu->mem, _t32, cpu->r[0]);
|
|
/* 0222C4EC */ _t33 = cpu->r[1] + 0x00000010u;
|
|
/* 0222C4EC */ rbrew_write_f32(cpu->mem, _t33, cpu->f[12]);
|
|
/* 0222C4F0 */ _t34 = cpu->r[1] + 0x00000010u;
|
|
/* 0222C4F0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t34);
|
|
/* 0222C4F4 */ /* nop */
|
|
/* 0222C4F8 */ _t35 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0222C4F8 */ rbrew_write32(cpu->mem, _t35, cpu->r[8]);
|
|
/* 0222C4FC */ _t36 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0222C4FC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 0222C500 */ /* nop */
|
|
/* 0222C504 */ cpu->f[11] = cpu->f[11] + cpu->f[0];
|
|
/* 0222C508 */ _t37 = cpu->r[31] + 0x00000004u;
|
|
/* 0222C508 */ cpu->r[30] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0222C50C */ /* nop */
|
|
/* 0222C510 */ /* nop */
|
|
/* 0222C514 */ _t38 = cpu->r[31] + 0x00000104u;
|
|
/* 0222C514 */ rbrew_write_f32(cpu->mem, _t38, cpu->f[11]);
|
|
/* 0222C518 */ _t39 = cpu->r[30] + 0x0000033Cu;
|
|
/* 0222C518 */ cpu->r[12] = rbrew_read32(cpu->mem, _t39);
|
|
/* 0222C51C */ cpu->ctr = cpu->r[12];
|
|
/* 0222C520 */ cpu->r[3] = cpu->r[31];
|
|
/* 0222C524 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222C528 */ _t40 = cpu->r[30] + 0x00000344u;
|
|
/* 0222C528 */ cpu->r[8] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0222C52C */ cpu->ctr = cpu->r[8];
|
|
/* 0222C530 */ cpu->f[31] = cpu->f[1];
|
|
/* 0222C534 */ cpu->r[3] = cpu->r[31];
|
|
/* 0222C538 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222C53C */ cpu->f[2] = cpu->f[1];
|
|
/* 0222C540 */ cpu->r[5] = cpu->r[31] + 0x00000094u;
|
|
/* 0222C544 */ cpu->f[1] = cpu->f[31];
|
|
/* 0222C548 */ cpu->r[6] = cpu->r[31] + 0x00000088u;
|
|
/* 0222C54C */ cpu->r[4] = cpu->r[31] + 0x000000FCu;
|
|
/* 0222C550 */ cpu->r[3] = cpu->r[31];
|
|
/* 0222C554 */ Gambit_fn_021BED44(cpu);
|
|
/* 0222C558 */ _t41 = cpu->r[1] + 0x00000030u;
|
|
/* 0222C558 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 0222C55C */ _t42 = cpu->r[1] + 0x00000024u;
|
|
/* 0222C55C */ cpu->r[31] = rbrew_read32(cpu->mem, _t42);
|
|
/* 0222C560 */ _t43 = cpu->r[1] + 0x00000028u;
|
|
/* 0222C560 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t43);
|
|
/* 0222C564 */ _t44 = cpu->r[1] + 0x00000020u;
|
|
/* 0222C564 */ cpu->r[30] = rbrew_read32(cpu->mem, _t44);
|
|
/* 0222C568 */ _t45 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0222C568 */ _t46 = _t45 & 0x00000001u;
|
|
/* 0222C568 */ if (_t46) goto L_0222C56C; // else: addr-0 trap, fall-through
|
|
L_0222C56C: ; // 0x222c56c
|
|
/* 0222C56C */ _t47 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0222C56C */ cpu->r[0] = rbrew_read32(cpu->mem, _t47);
|
|
/* 0222C570 */ cpu->lr = cpu->r[0];
|
|
/* 0222C574 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 0222C578 */ return;
|
|
}
|
|
|
|
// fn_0222C57C @ 0x222c57c
|
|
void Gambit_fn_0222C57C(CPUState* cpu) {
|
|
uint32_t _t0, _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_0222C57C: ; // 0x222c57c
|
|
/* 0222C57C */ cpu->r[0] = cpu->lr;
|
|
/* 0222C580 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0222C580 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0222C580 */ cpu->r[1] = _t0;
|
|
/* 0222C584 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222C584 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0222C588 */ cpu->r[31] = cpu->r[3];
|
|
/* 0222C58C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0222C58C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0222C590 */ _t3 = cpu->r[31] + 0x00000114u;
|
|
/* 0222C590 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0222C594 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000008u, 0x00000009u);
|
|
/* 0222C594 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0222C598 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222C598 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0222C598 */ if (_t5) goto L_0222C59C; else goto L_0222C5B8;
|
|
L_0222C59C: ; // 0x222c59c
|
|
/* 0222C59C */ cpu->r[3] = cpu->r[31];
|
|
/* 0222C5A0 */ Gambit_fn_021BF004(cpu);
|
|
/* 0222C5A4 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 0222C5A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0222C5A8 */ _t7 = cpu->r[12] + 0x00000384u;
|
|
/* 0222C5A8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0222C5AC */ cpu->ctr = cpu->r[10];
|
|
/* 0222C5B0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0222C5B4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0222C5B8: ; // 0x222c5b8
|
|
/* 0222C5B8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0222C5BC */ Gambit_fn_0222C3E8(cpu);
|
|
/* 0222C5C0 */ _t8 = cpu->r[31] + 0x00000114u;
|
|
/* 0222C5C0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0222C5C4 */ cpu->r[11] = rbrew_rlwinm(cpu->r[10], 0x00000014u, 0x00000000u, 0x0000000Bu);
|
|
/* 0222C5C8 */ /* nop */
|
|
/* 0222C5CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000000Bu);
|
|
/* 0222C5D0 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222C5D0 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0222C5D0 */ if (_t10) goto L_0222C5F8; else goto L_0222C5D4;
|
|
L_0222C5D4: ; // 0x222c5d4
|
|
/* 0222C5D4 */ _t11 = cpu->r[31] + 0x00000030u;
|
|
/* 0222C5D4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0222C5D8 */ cpu->r[4] = 0x00000001u;
|
|
/* 0222C5DC */ Gambit_fn_027B9B00(cpu);
|
|
/* 0222C5E0 */ _t12 = cpu->r[31] + 0x00000114u;
|
|
/* 0222C5E0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0222C5E4 */ _t13 = cpu->r[31] + 0x00000030u;
|
|
/* 0222C5E4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0222C5E8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[12], 0x00000014u, 0x00000000u, 0x0000000Bu);
|
|
/* 0222C5EC */ cpu->r[4] = 0x00000002u;
|
|
/* 0222C5F0 */ /* nop */
|
|
/* 0222C5F4 */ Gambit_fn_027B8224(cpu);
|
|
L_0222C5F8: ; // 0x222c5f8
|
|
/* 0222C5F8 */ _t14 = cpu->r[31] + 0x00000114u;
|
|
/* 0222C5F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0222C5FC */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000000Eu, 0x0000000Eu);
|
|
/* 0222C5FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0222C600 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222C600 */ _t16 = _t15 & 0x00000001u;
|
|
/* 0222C600 */ if (_t16) goto L_0222C618; else goto L_0222C604;
|
|
L_0222C604: ; // 0x222c604
|
|
/* 0222C604 */ _t17 = cpu->r[31] + 0x00000004u;
|
|
/* 0222C604 */ cpu->r[11] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0222C608 */ _t18 = cpu->r[11] + 0x0000039Cu;
|
|
/* 0222C608 */ cpu->r[12] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0222C60C */ cpu->ctr = cpu->r[12];
|
|
/* 0222C610 */ cpu->r[3] = cpu->r[31];
|
|
/* 0222C614 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0222C618: ; // 0x222c618
|
|
/* 0222C618 */ cpu->r[3] = cpu->r[31] + 0x00000094u;
|
|
/* 0222C61C */ Gambit_fn_027E3F3C(cpu);
|
|
/* 0222C620 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0222C624 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222C624 */ _t20 = _t19 & 0x00000001u;
|
|
/* 0222C624 */ if (_t20) goto L_0222C644; else goto L_0222C628;
|
|
L_0222C628: ; // 0x222c628
|
|
/* 0222C628 */ _t21 = cpu->r[31] + 0x00000004u;
|
|
/* 0222C628 */ cpu->r[11] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0222C62C */ _t22 = cpu->r[11] + 0x0000040Cu;
|
|
/* 0222C62C */ cpu->r[12] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0222C630 */ cpu->ctr = cpu->r[12];
|
|
/* 0222C634 */ cpu->r[3] = cpu->r[31];
|
|
/* 0222C638 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222C63C */ cpu->r[3] = cpu->r[31];
|
|
/* 0222C640 */ Gambit_fn_02790488(cpu);
|
|
L_0222C644: ; // 0x222c644
|
|
/* 0222C644 */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 0222C644 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0222C648 */ _t24 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222C648 */ cpu->r[31] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0222C64C */ cpu->lr = cpu->r[0];
|
|
/* 0222C650 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0222C654 */ return;
|
|
}
|
|
|
|
// fn_0222C580 @ 0x222c580
|
|
void Gambit_fn_0222C580(CPUState* cpu) {
|
|
uint32_t _t0, _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_0222C580: ; // 0x222c580
|
|
/* 0222C580 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0222C580 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0222C580 */ cpu->r[1] = _t0;
|
|
/* 0222C584 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222C584 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0222C588 */ cpu->r[31] = cpu->r[3];
|
|
/* 0222C58C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0222C58C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0222C590 */ _t3 = cpu->r[31] + 0x00000114u;
|
|
/* 0222C590 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0222C594 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000008u, 0x00000009u);
|
|
/* 0222C594 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0222C598 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222C598 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0222C598 */ if (_t5) goto L_0222C59C; else goto L_0222C5B8;
|
|
L_0222C59C: ; // 0x222c59c
|
|
/* 0222C59C */ cpu->r[3] = cpu->r[31];
|
|
/* 0222C5A0 */ Gambit_fn_021BF004(cpu);
|
|
/* 0222C5A4 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 0222C5A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0222C5A8 */ _t7 = cpu->r[12] + 0x00000384u;
|
|
/* 0222C5A8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0222C5AC */ cpu->ctr = cpu->r[10];
|
|
/* 0222C5B0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0222C5B4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0222C5B8: ; // 0x222c5b8
|
|
/* 0222C5B8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0222C5BC */ Gambit_fn_0222C3E8(cpu);
|
|
/* 0222C5C0 */ _t8 = cpu->r[31] + 0x00000114u;
|
|
/* 0222C5C0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0222C5C4 */ cpu->r[11] = rbrew_rlwinm(cpu->r[10], 0x00000014u, 0x00000000u, 0x0000000Bu);
|
|
/* 0222C5C8 */ /* nop */
|
|
/* 0222C5CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000000Bu);
|
|
/* 0222C5D0 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222C5D0 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0222C5D0 */ if (_t10) goto L_0222C5F8; else goto L_0222C5D4;
|
|
L_0222C5D4: ; // 0x222c5d4
|
|
/* 0222C5D4 */ _t11 = cpu->r[31] + 0x00000030u;
|
|
/* 0222C5D4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0222C5D8 */ cpu->r[4] = 0x00000001u;
|
|
/* 0222C5DC */ Gambit_fn_027B9B00(cpu);
|
|
/* 0222C5E0 */ _t12 = cpu->r[31] + 0x00000114u;
|
|
/* 0222C5E0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0222C5E4 */ _t13 = cpu->r[31] + 0x00000030u;
|
|
/* 0222C5E4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0222C5E8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[12], 0x00000014u, 0x00000000u, 0x0000000Bu);
|
|
/* 0222C5EC */ cpu->r[4] = 0x00000002u;
|
|
/* 0222C5F0 */ /* nop */
|
|
/* 0222C5F4 */ Gambit_fn_027B8224(cpu);
|
|
L_0222C5F8: ; // 0x222c5f8
|
|
/* 0222C5F8 */ _t14 = cpu->r[31] + 0x00000114u;
|
|
/* 0222C5F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0222C5FC */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000000Eu, 0x0000000Eu);
|
|
/* 0222C5FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0222C600 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222C600 */ _t16 = _t15 & 0x00000001u;
|
|
/* 0222C600 */ if (_t16) goto L_0222C618; else goto L_0222C604;
|
|
L_0222C604: ; // 0x222c604
|
|
/* 0222C604 */ _t17 = cpu->r[31] + 0x00000004u;
|
|
/* 0222C604 */ cpu->r[11] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0222C608 */ _t18 = cpu->r[11] + 0x0000039Cu;
|
|
/* 0222C608 */ cpu->r[12] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0222C60C */ cpu->ctr = cpu->r[12];
|
|
/* 0222C610 */ cpu->r[3] = cpu->r[31];
|
|
/* 0222C614 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0222C618: ; // 0x222c618
|
|
/* 0222C618 */ cpu->r[3] = cpu->r[31] + 0x00000094u;
|
|
/* 0222C61C */ Gambit_fn_027E3F3C(cpu);
|
|
/* 0222C620 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0222C624 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222C624 */ _t20 = _t19 & 0x00000001u;
|
|
/* 0222C624 */ if (_t20) goto L_0222C644; else goto L_0222C628;
|
|
L_0222C628: ; // 0x222c628
|
|
/* 0222C628 */ _t21 = cpu->r[31] + 0x00000004u;
|
|
/* 0222C628 */ cpu->r[11] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0222C62C */ _t22 = cpu->r[11] + 0x0000040Cu;
|
|
/* 0222C62C */ cpu->r[12] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0222C630 */ cpu->ctr = cpu->r[12];
|
|
/* 0222C634 */ cpu->r[3] = cpu->r[31];
|
|
/* 0222C638 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222C63C */ cpu->r[3] = cpu->r[31];
|
|
/* 0222C640 */ Gambit_fn_02790488(cpu);
|
|
L_0222C644: ; // 0x222c644
|
|
/* 0222C644 */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 0222C644 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0222C648 */ _t24 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222C648 */ cpu->r[31] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0222C64C */ cpu->lr = cpu->r[0];
|
|
/* 0222C650 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0222C654 */ return;
|
|
}
|
|
|
|
// fn_0222C658 @ 0x222c658
|
|
void Gambit_fn_0222C658(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0222C658: ; // 0x222c658
|
|
/* 0222C658 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0222C658 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0222C65C */ _t1 = cpu->r[12] + 0x000003BCu;
|
|
/* 0222C65C */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0222C660 */ cpu->ctr = cpu->r[0];
|
|
/* 0222C664 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0222C668 @ 0x222c668
|
|
void Gambit_fn_0222C668(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60;
|
|
|
|
L_0222C668: ; // 0x222c668
|
|
/* 0222C668 */ _t0 = cpu->r[1] + 0xFFFFFF58u;
|
|
/* 0222C668 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0222C668 */ cpu->r[1] = _t0;
|
|
/* 0222C66C */ _t1 = cpu->r[1] + 0x00000084u;
|
|
/* 0222C66C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0222C670 */ cpu->r[0] = cpu->lr;
|
|
/* 0222C674 */ _t2 = cpu->r[1] + 0x00000088u;
|
|
/* 0222C674 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[30]);
|
|
/* 0222C678 */ /* nop */
|
|
/* 0222C67C */ _t3 = cpu->r[1] + 0x00000080u;
|
|
/* 0222C67C */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 0222C680 */ cpu->r[30] = cpu->r[3];
|
|
/* 0222C684 */ _t4 = cpu->r[1] + 0x00000098u;
|
|
/* 0222C684 */ rbrew_write_f64(cpu->mem, _t4, cpu->f[31]);
|
|
/* 0222C688 */ /* nop */
|
|
/* 0222C68C */ _t5 = cpu->r[1] + 0x00000090u;
|
|
/* 0222C68C */ rbrew_write_f32(cpu->mem, _t5, cpu->f[30]);
|
|
/* 0222C690 */ cpu->f[30] = cpu->f[1];
|
|
/* 0222C694 */ cpu->r[31] = cpu->r[4];
|
|
/* 0222C698 */ _t6 = cpu->r[1] + 0x000000A0u;
|
|
/* 0222C698 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[31]);
|
|
/* 0222C69C */ cpu->f[31] = cpu->f[2];
|
|
/* 0222C6A0 */ cpu->r[5] = cpu->r[31];
|
|
/* 0222C6A4 */ _t7 = cpu->r[1] + 0x000000ACu;
|
|
/* 0222C6A4 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 0222C6A8 */ cpu->r[4] = cpu->r[30] + 0x000000C4u;
|
|
/* 0222C6AC */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0222C6B0 */ Gambit_fn_0222BF94(cpu);
|
|
/* 0222C6B4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[30], cpu->f[31]);
|
|
/* 0222C6B8 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222C6B8 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0222C6B8 */ if (_t9) goto L_0222C6BC; else goto L_0222C708;
|
|
L_0222C6BC: ; // 0x222c6bc
|
|
/* 0222C6BC */ /* nop */
|
|
/* 0222C6C0 */ _t10 = cpu->r[1] + 0x00000010u;
|
|
/* 0222C6C0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 0222C6C4 */ /* nop */
|
|
/* 0222C6C8 */ /* nop */
|
|
/* 0222C6CC */ cpu->f[11] = cpu->f[12] * cpu->f[30];
|
|
/* 0222C6D0 */ _t11 = cpu->r[1] + 0x00000018u;
|
|
/* 0222C6D0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0222C6D4 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0222C6D4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0222C6D8 */ _t13 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0222C6D8 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[11]);
|
|
/* 0222C6DC */ _t14 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0222C6DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0222C6E0 */ _t15 = cpu->r[1] + 0x00000044u;
|
|
/* 0222C6E0 */ rbrew_write32(cpu->mem, _t15, cpu->r[10]);
|
|
/* 0222C6E4 */ _t16 = cpu->r[1] + 0x00000044u;
|
|
/* 0222C6E4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 0222C6E8 */ _t17 = cpu->r[1] + 0x00000048u;
|
|
/* 0222C6E8 */ rbrew_write32(cpu->mem, _t17, cpu->r[11]);
|
|
/* 0222C6EC */ _t18 = cpu->r[1] + 0x00000048u;
|
|
/* 0222C6EC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 0222C6F0 */ _t19 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0222C6F0 */ rbrew_write32(cpu->mem, _t19, cpu->r[0]);
|
|
/* 0222C6F4 */ _t20 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0222C6F4 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 0222C6F8 */ _t21 = cpu->r[30] + 0x000000C8u;
|
|
/* 0222C6F8 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[11]);
|
|
/* 0222C6FC */ _t22 = cpu->r[30] + 0x000000C4u;
|
|
/* 0222C6FC */ rbrew_write_f32(cpu->mem, _t22, cpu->f[10]);
|
|
/* 0222C700 */ _t23 = cpu->r[30] + 0x000000CCu;
|
|
/* 0222C700 */ rbrew_write_f32(cpu->mem, _t23, cpu->f[9]);
|
|
/* 0222C704 */ goto L_0222C7D4;
|
|
L_0222C708: ; // 0x222c708
|
|
/* 0222C708 */ /* nop */
|
|
/* 0222C70C */ /* nop */
|
|
/* 0222C710 */ /* nop */
|
|
/* 0222C714 */ /* nop */
|
|
/* 0222C718 */ _t24 = cpu->r[1] + 0x00000010u;
|
|
/* 0222C718 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 0222C71C */ cpu->f[7] = cpu->f[0];
|
|
/* 0222C720 */ _t25 = cpu->r[31] + 0x00000008u;
|
|
/* 0222C720 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 0222C724 */ cpu->f[10] = fma(cpu->f[12], cpu->f[0], cpu->f[7]);
|
|
/* 0222C728 */ /* nop */
|
|
/* 0222C72C */ /* nop */
|
|
/* 0222C730 */ cpu->f[10] = cpu->f[0] * cpu->f[10];
|
|
/* 0222C734 */ _t26 = cpu->r[1] + 0x00000024u;
|
|
/* 0222C734 */ cpu->r[8] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0222C738 */ _t27 = cpu->r[1] + 0x00000020u;
|
|
/* 0222C738 */ cpu->r[7] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0222C73C */ _t28 = cpu->r[1] + 0x00000028u;
|
|
/* 0222C73C */ rbrew_write_f32(cpu->mem, _t28, cpu->f[10]);
|
|
/* 0222C740 */ _t29 = cpu->r[1] + 0x00000028u;
|
|
/* 0222C740 */ cpu->r[0] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0222C744 */ _t30 = cpu->r[1] + 0x0000006Cu;
|
|
/* 0222C744 */ rbrew_write32(cpu->mem, _t30, cpu->r[8]);
|
|
/* 0222C748 */ _t31 = cpu->r[1] + 0x00000068u;
|
|
/* 0222C748 */ rbrew_write32(cpu->mem, _t31, cpu->r[7]);
|
|
/* 0222C74C */ _t32 = cpu->r[1] + 0x00000070u;
|
|
/* 0222C74C */ rbrew_write32(cpu->mem, _t32, cpu->r[0]);
|
|
/* 0222C750 */ _t33 = cpu->r[1] + 0x00000070u;
|
|
/* 0222C750 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 0222C754 */ cpu->f[12] = cpu->f[12] - cpu->f[0];
|
|
/* 0222C758 */ /* nop */
|
|
/* 0222C75C */ cpu->f[8] = cpu->f[0] * cpu->f[30];
|
|
/* 0222C760 */ _t34 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0222C760 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[12]);
|
|
/* 0222C764 */ cpu->f[0] = cpu->f[12] * cpu->f[31];
|
|
/* 0222C768 */ _t35 = cpu->r[1] + 0x00000034u;
|
|
/* 0222C768 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[8]);
|
|
/* 0222C76C */ /* nop */
|
|
/* 0222C770 */ _t36 = cpu->r[1] + 0x00000040u;
|
|
/* 0222C770 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[0]);
|
|
/* 0222C774 */ _t37 = cpu->r[1] + 0x00000040u;
|
|
/* 0222C774 */ cpu->r[0] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0222C778 */ /* nop */
|
|
/* 0222C77C */ /* nop */
|
|
/* 0222C780 */ /* nop */
|
|
/* 0222C784 */ _t38 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0222C784 */ cpu->r[5] = rbrew_read32(cpu->mem, _t38);
|
|
/* 0222C788 */ /* nop */
|
|
/* 0222C78C */ _t39 = cpu->r[1] + 0x00000038u;
|
|
/* 0222C78C */ cpu->r[8] = rbrew_read32(cpu->mem, _t39);
|
|
/* 0222C790 */ _t40 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0222C790 */ cpu->r[9] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0222C794 */ _t41 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0222C794 */ rbrew_write32(cpu->mem, _t41, cpu->r[8]);
|
|
/* 0222C798 */ _t42 = cpu->r[1] + 0x00000060u;
|
|
/* 0222C798 */ rbrew_write32(cpu->mem, _t42, cpu->r[9]);
|
|
/* 0222C79C */ /* nop */
|
|
/* 0222C7A0 */ _t43 = cpu->r[1] + 0x00000030u;
|
|
/* 0222C7A0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t43);
|
|
/* 0222C7A4 */ _t44 = cpu->r[1] + 0x00000034u;
|
|
/* 0222C7A4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t44);
|
|
/* 0222C7A8 */ _t45 = cpu->r[1] + 0x00000054u;
|
|
/* 0222C7A8 */ rbrew_write32(cpu->mem, _t45, cpu->r[7]);
|
|
/* 0222C7AC */ _t46 = cpu->r[1] + 0x00000058u;
|
|
/* 0222C7AC */ rbrew_write32(cpu->mem, _t46, cpu->r[9]);
|
|
/* 0222C7B0 */ _t47 = cpu->r[1] + 0x00000058u;
|
|
/* 0222C7B0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 0222C7B4 */ _t48 = cpu->r[1] + 0x00000064u;
|
|
/* 0222C7B4 */ rbrew_write32(cpu->mem, _t48, cpu->r[0]);
|
|
/* 0222C7B8 */ _t49 = cpu->r[1] + 0x00000064u;
|
|
/* 0222C7B8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 0222C7BC */ _t50 = cpu->r[1] + 0x00000050u;
|
|
/* 0222C7BC */ rbrew_write32(cpu->mem, _t50, cpu->r[5]);
|
|
/* 0222C7C0 */ /* nop */
|
|
/* 0222C7C4 */ cpu->f[9] = cpu->f[9] + cpu->f[12];
|
|
/* 0222C7C8 */ /* nop */
|
|
/* 0222C7CC */ /* nop */
|
|
/* 0222C7D0 */ _t51 = cpu->r[30] + 0x000000CCu;
|
|
/* 0222C7D0 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[9]);
|
|
L_0222C7D4: ; // 0x222c7d4
|
|
/* 0222C7D4 */ _t52 = cpu->r[1] + 0x00000084u;
|
|
/* 0222C7D4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t52);
|
|
/* 0222C7D8 */ _t53 = cpu->r[1] + 0x000000A0u;
|
|
/* 0222C7D8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t53);
|
|
/* 0222C7DC */ _t54 = cpu->r[1] + 0x00000090u;
|
|
/* 0222C7DC */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 0222C7E0 */ _t55 = cpu->r[1] + 0x00000098u;
|
|
/* 0222C7E0 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t55);
|
|
/* 0222C7E4 */ _t56 = cpu->r[1] + 0x00000088u;
|
|
/* 0222C7E4 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t56);
|
|
/* 0222C7E8 */ _t57 = cpu->r[1] + 0x00000080u;
|
|
/* 0222C7E8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t57);
|
|
/* 0222C7EC */ _t58 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0222C7EC */ _t59 = _t58 & 0x00000001u;
|
|
/* 0222C7EC */ if (_t59) goto L_0222C7F0; // else: addr-0 trap, fall-through
|
|
L_0222C7F0: ; // 0x222c7f0
|
|
/* 0222C7F0 */ _t60 = cpu->r[1] + 0x000000ACu;
|
|
/* 0222C7F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t60);
|
|
/* 0222C7F4 */ cpu->lr = cpu->r[0];
|
|
/* 0222C7F8 */ cpu->r[1] = cpu->r[1] + 0x000000A8u;
|
|
/* 0222C7FC */ return;
|
|
}
|
|
|
|
// fn_0222C800 @ 0x222c800
|
|
void Gambit_fn_0222C800(CPUState* cpu) {
|
|
uint32_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_0222C800: ; // 0x222c800
|
|
/* 0222C800 */ _t0 = cpu->r[3] + 0x00000088u;
|
|
/* 0222C800 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 0222C804 */ _t1 = cpu->r[4] + 0x00000004u;
|
|
/* 0222C804 */ rbrew_write_f32(cpu->mem, _t1, cpu->f[0]);
|
|
/* 0222C808 */ _t2 = cpu->r[3] + 0x0000008Cu;
|
|
/* 0222C808 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 0222C80C */ _t3 = cpu->r[4] + 0x00000008u;
|
|
/* 0222C80C */ rbrew_write_f32(cpu->mem, _t3, cpu->f[0]);
|
|
/* 0222C810 */ _t4 = cpu->r[3] + 0x00000090u;
|
|
/* 0222C810 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 0222C814 */ _t5 = cpu->r[4] + 0x0000000Cu;
|
|
/* 0222C814 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[0]);
|
|
/* 0222C818 */ _t6 = cpu->r[3] + 0x00000094u;
|
|
/* 0222C818 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 0222C81C */ _t7 = cpu->r[4] + 0x00000010u;
|
|
/* 0222C81C */ rbrew_write_f32(cpu->mem, _t7, cpu->f[0]);
|
|
/* 0222C820 */ _t8 = cpu->r[3] + 0x00000098u;
|
|
/* 0222C820 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 0222C824 */ _t9 = cpu->r[4] + 0x00000014u;
|
|
/* 0222C824 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[0]);
|
|
/* 0222C828 */ _t10 = cpu->r[3] + 0x0000009Cu;
|
|
/* 0222C828 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 0222C82C */ _t11 = cpu->r[4] + 0x00000018u;
|
|
/* 0222C82C */ rbrew_write_f32(cpu->mem, _t11, cpu->f[0]);
|
|
/* 0222C830 */ _t12 = cpu->r[3] + 0x000000A0u;
|
|
/* 0222C830 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 0222C834 */ _t13 = cpu->r[4] + 0x0000001Cu;
|
|
/* 0222C834 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[0]);
|
|
/* 0222C838 */ _t14 = cpu->r[3] + 0x00000114u;
|
|
/* 0222C838 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0222C83C */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000010u, 0x00000010u);
|
|
/* 0222C83C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0222C840 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222C840 */ _t16 = _t15 & 0x00000001u;
|
|
/* 0222C840 */ if (_t16) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0222C840 */ goto L_0222C844;
|
|
L_0222C844: ; // 0x222c844
|
|
/* 0222C844 */ _t17 = cpu->r[3] + 0x0000011Cu;
|
|
/* 0222C844 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 0222C848 */ _t18 = cpu->r[4] + 0x00000010u;
|
|
/* 0222C848 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[0]);
|
|
/* 0222C84C */ _t19 = cpu->r[3] + 0x00000120u;
|
|
/* 0222C84C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 0222C850 */ _t20 = cpu->r[4] + 0x00000014u;
|
|
/* 0222C850 */ rbrew_write_f32(cpu->mem, _t20, cpu->f[0]);
|
|
/* 0222C854 */ _t21 = cpu->r[3] + 0x00000124u;
|
|
/* 0222C854 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 0222C858 */ _t22 = cpu->r[4] + 0x00000018u;
|
|
/* 0222C858 */ rbrew_write_f32(cpu->mem, _t22, cpu->f[0]);
|
|
/* 0222C85C */ return;
|
|
}
|
|
|
|
// fn_0222C860 @ 0x222c860
|
|
void Gambit_fn_0222C860(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_0222C860: ; // 0x222c860
|
|
/* 0222C860 */ cpu->r[0] = cpu->lr;
|
|
/* 0222C864 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 0222C864 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0222C864 */ cpu->r[1] = _t0;
|
|
/* 0222C868 */ _t1 = cpu->r[1] + 0x00000018u;
|
|
/* 0222C868 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0222C86C */ cpu->r[30] = cpu->r[5];
|
|
/* 0222C870 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0222C870 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0222C874 */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 0222C874 */ rbrew_write32(cpu->mem, _t3, cpu->r[28]);
|
|
/* 0222C878 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x0000000Fu);
|
|
/* 0222C87C */ cpu->r[31] = cpu->r[7];
|
|
/* 0222C880 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0222C880 */ rbrew_write32(cpu->mem, _t4, cpu->r[29]);
|
|
/* 0222C884 */ _t5 = cpu->r[1] + 0x00000024u;
|
|
/* 0222C884 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0222C888 */ cpu->r[29] = cpu->r[3];
|
|
/* 0222C88C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222C88C */ _t7 = _t6 & 0x00000001u;
|
|
/* 0222C88C */ if (_t7) goto L_0222C8D0; else goto L_0222C890;
|
|
L_0222C890: ; // 0x222c890
|
|
/* 0222C890 */ _t8 = cpu->r[6] + 0x00000000u;
|
|
/* 0222C890 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0222C894 */ _t9 = cpu->r[29] + 0x00000004u;
|
|
/* 0222C894 */ cpu->r[28] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0222C898 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 0222C898 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 0222C89C */ _t11 = cpu->r[28] + 0x00000254u;
|
|
/* 0222C89C */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0222C8A0 */ cpu->ctr = cpu->r[0];
|
|
/* 0222C8A4 */ cpu->r[3] = cpu->r[29];
|
|
/* 0222C8A8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222C8AC */ _t12 = cpu->r[28] + 0x00000274u;
|
|
/* 0222C8AC */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0222C8B0 */ cpu->r[4] = cpu->r[3];
|
|
/* 0222C8B4 */ cpu->ctr = cpu->r[12];
|
|
/* 0222C8B8 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 0222C8BC */ cpu->r[8] = cpu->r[31];
|
|
/* 0222C8C0 */ cpu->r[6] = cpu->r[30];
|
|
/* 0222C8C4 */ cpu->r[5] = cpu->r[29] + 0x000000C4u;
|
|
/* 0222C8C8 */ cpu->r[3] = cpu->r[29];
|
|
/* 0222C8CC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0222C8D0: ; // 0x222c8d0
|
|
/* 0222C8D0 */ _t13 = cpu->r[1] + 0x00000010u;
|
|
/* 0222C8D0 */ cpu->r[28] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0222C8D4 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 0222C8D4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0222C8D8 */ _t15 = cpu->r[1] + 0x00000024u;
|
|
/* 0222C8D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0222C8DC */ _t16 = cpu->r[1] + 0x00000018u;
|
|
/* 0222C8DC */ cpu->r[30] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0222C8E0 */ cpu->lr = cpu->r[0];
|
|
/* 0222C8E4 */ _t17 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0222C8E4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0222C8E8 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 0222C8EC */ return;
|
|
}
|
|
|
|
// fn_0222C864 @ 0x222c864
|
|
void Gambit_fn_0222C864(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_0222C864: ; // 0x222c864
|
|
/* 0222C864 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 0222C864 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0222C864 */ cpu->r[1] = _t0;
|
|
/* 0222C868 */ _t1 = cpu->r[1] + 0x00000018u;
|
|
/* 0222C868 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0222C86C */ cpu->r[30] = cpu->r[5];
|
|
/* 0222C870 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0222C870 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0222C874 */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 0222C874 */ rbrew_write32(cpu->mem, _t3, cpu->r[28]);
|
|
/* 0222C878 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x0000000Fu);
|
|
/* 0222C87C */ cpu->r[31] = cpu->r[7];
|
|
/* 0222C880 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0222C880 */ rbrew_write32(cpu->mem, _t4, cpu->r[29]);
|
|
/* 0222C884 */ _t5 = cpu->r[1] + 0x00000024u;
|
|
/* 0222C884 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0222C888 */ cpu->r[29] = cpu->r[3];
|
|
/* 0222C88C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222C88C */ _t7 = _t6 & 0x00000001u;
|
|
/* 0222C88C */ if (_t7) goto L_0222C8D0; else goto L_0222C890;
|
|
L_0222C890: ; // 0x222c890
|
|
/* 0222C890 */ _t8 = cpu->r[6] + 0x00000000u;
|
|
/* 0222C890 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0222C894 */ _t9 = cpu->r[29] + 0x00000004u;
|
|
/* 0222C894 */ cpu->r[28] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0222C898 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 0222C898 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 0222C89C */ _t11 = cpu->r[28] + 0x00000254u;
|
|
/* 0222C89C */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0222C8A0 */ cpu->ctr = cpu->r[0];
|
|
/* 0222C8A4 */ cpu->r[3] = cpu->r[29];
|
|
/* 0222C8A8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222C8AC */ _t12 = cpu->r[28] + 0x00000274u;
|
|
/* 0222C8AC */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0222C8B0 */ cpu->r[4] = cpu->r[3];
|
|
/* 0222C8B4 */ cpu->ctr = cpu->r[12];
|
|
/* 0222C8B8 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 0222C8BC */ cpu->r[8] = cpu->r[31];
|
|
/* 0222C8C0 */ cpu->r[6] = cpu->r[30];
|
|
/* 0222C8C4 */ cpu->r[5] = cpu->r[29] + 0x000000C4u;
|
|
/* 0222C8C8 */ cpu->r[3] = cpu->r[29];
|
|
/* 0222C8CC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0222C8D0: ; // 0x222c8d0
|
|
/* 0222C8D0 */ _t13 = cpu->r[1] + 0x00000010u;
|
|
/* 0222C8D0 */ cpu->r[28] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0222C8D4 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 0222C8D4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0222C8D8 */ _t15 = cpu->r[1] + 0x00000024u;
|
|
/* 0222C8D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0222C8DC */ _t16 = cpu->r[1] + 0x00000018u;
|
|
/* 0222C8DC */ cpu->r[30] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0222C8E0 */ cpu->lr = cpu->r[0];
|
|
/* 0222C8E4 */ _t17 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0222C8E4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0222C8E8 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 0222C8EC */ return;
|
|
}
|
|
|
|
// fn_0222C8F0 @ 0x222c8f0
|
|
void Gambit_fn_0222C8F0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _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_0222C8F0: ; // 0x222c8f0
|
|
/* 0222C8F0 */ _t0 = cpu->r[1] + 0xFFFFFF90u;
|
|
/* 0222C8F0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0222C8F0 */ cpu->r[1] = _t0;
|
|
/* 0222C8F4 */ /* nop */
|
|
/* 0222C8F8 */ cpu->r[0] = cpu->lr;
|
|
/* 0222C8FC */ _t1 = cpu->r[1] + 0x00000060u;
|
|
/* 0222C8FC */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0222C900 */ /* nop */
|
|
/* 0222C904 */ _t2 = cpu->r[1] + 0x00000074u;
|
|
/* 0222C904 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0222C908 */ _t3 = cpu->r[1] + 0x00000068u;
|
|
/* 0222C908 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 0222C90C */ cpu->r[29] = cpu->r[5];
|
|
/* 0222C910 */ cpu->r[28] = cpu->r[4];
|
|
/* 0222C914 */ _t4 = cpu->r[28] + 0x0000015Cu;
|
|
/* 0222C914 */ cpu->r[10] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0222C918 */ cpu->r[27] = cpu->r[3];
|
|
/* 0222C91C */ cpu->r[9] = rbrew_rlwinm(cpu->r[10], 0x00000000u, 0x0000001Cu, 0x0000001Eu);
|
|
/* 0222C91C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0222C920 */ cpu->f[31] = cpu->f[1];
|
|
/* 0222C924 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222C924 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0222C924 */ if (_t6) goto L_0222C9F4; else goto L_0222C928;
|
|
L_0222C928: ; // 0x222c928
|
|
/* 0222C928 */ _t7 = cpu->r[28] + 0x00000164u;
|
|
/* 0222C928 */ cpu->r[7] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0222C92C */ cpu->r[0] = 0x101E0000u;
|
|
/* 0222C930 */ cpu->r[0] = cpu->r[0] + 0xFFFF9484u;
|
|
/* 0222C934 */ cpu->r[12] = rbrew_rlwinm(cpu->r[7], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0222C938 */ _t8 = cpu->r[12] + cpu->r[0];
|
|
/* 0222C938 */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0222C93C */ cpu->r[30] = 0x00000000u;
|
|
/* 0222C940 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0222C944 */ _t9 = cpu->r[1] + 0x00000028u;
|
|
/* 0222C944 */ rbrew_write32(cpu->mem, _t9, cpu->r[30]);
|
|
/* 0222C948 */ _t10 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0222C948 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0222C948 */ if (_t11) goto L_0222C94C; else goto L_0222C9F4;
|
|
L_0222C94C: ; // 0x222c94c
|
|
/* 0222C94C */ cpu->r[26] = 0xFFFFFFFFu;
|
|
/* 0222C950 */ cpu->r[25] = cpu->r[1] + 0x00000028u;
|
|
L_0222C954: ; // 0x222c954
|
|
/* 0222C954 */ cpu->r[10] = cpu->r[1] + 0x00000018u;
|
|
/* 0222C958 */ cpu->r[9] = 0x00000000u;
|
|
/* 0222C95C */ cpu->r[8] = cpu->r[1] + 0x00000028u;
|
|
/* 0222C960 */ cpu->r[7] = cpu->r[1] + 0x00000038u;
|
|
/* 0222C964 */ cpu->r[6] = cpu->r[1] + 0x0000002Cu;
|
|
/* 0222C968 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 0222C96C */ cpu->r[4] = cpu->r[30];
|
|
/* 0222C970 */ cpu->r[3] = cpu->r[28];
|
|
/* 0222C974 */ Gambit_fn_02040F70(cpu);
|
|
/* 0222C978 */ _t12 = cpu->r[25] + 0x00000000u;
|
|
/* 0222C978 */ cpu->r[11] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0222C97C */ _t13 = cpu->r[27] + 0x00000004u;
|
|
/* 0222C97C */ cpu->r[10] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0222C980 */ _t14 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0222C980 */ rbrew_write32(cpu->mem, _t14, cpu->r[11]);
|
|
/* 0222C984 */ _t15 = cpu->r[10] + 0x0000043Cu;
|
|
/* 0222C984 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0222C988 */ cpu->ctr = cpu->r[0];
|
|
/* 0222C98C */ cpu->r[3] = cpu->r[27];
|
|
/* 0222C990 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0222C994 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222C998 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0222C99C */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222C99C */ _t17 = _t16 & 0x00000001u;
|
|
/* 0222C99C */ if (_t17) goto L_0222C9E8; else goto L_0222C9A0;
|
|
L_0222C9A0: ; // 0x222c9a0
|
|
/* 0222C9A0 */ _t18 = cpu->r[27] + 0x00000054u;
|
|
/* 0222C9A0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0222C9A4 */ _t19 = cpu->r[27] + 0x00000058u;
|
|
/* 0222C9A4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0222C9A8 */ _t20 = cpu->r[27] + 0x0000002Cu;
|
|
/* 0222C9A8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0222C9AC */ _t21 = cpu->r[25] + 0x00000000u;
|
|
/* 0222C9AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0222C9B0 */ _t22 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222C9B0 */ rbrew_write32(cpu->mem, _t22, cpu->r[26]);
|
|
/* 0222C9B4 */ _t23 = cpu->r[1] + 0x00000024u;
|
|
/* 0222C9B4 */ rbrew_write32(cpu->mem, _t23, cpu->r[0]);
|
|
/* 0222C9B8 */ _t24 = cpu->r[1] + 0x00000018u;
|
|
/* 0222C9B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0222C9BC */ cpu->r[3] = cpu->r[27];
|
|
/* 0222C9C0 */ _t25 = cpu->r[1] + 0x00000020u;
|
|
/* 0222C9C0 */ rbrew_write32(cpu->mem, _t25, cpu->r[7]);
|
|
/* 0222C9C4 */ cpu->r[6] = cpu->r[1] + 0x00000020u;
|
|
/* 0222C9C8 */ cpu->f[1] = cpu->f[31];
|
|
/* 0222C9CC */ _t26 = cpu->r[1] + 0x00000014u;
|
|
/* 0222C9CC */ cpu->r[7] = rbrew_read8(cpu->mem, _t26);
|
|
/* 0222C9D0 */ cpu->r[8] = cpu->r[1] + 0x0000002Cu;
|
|
/* 0222C9D4 */ cpu->r[9] = cpu->r[1] + 0x00000038u;
|
|
/* 0222C9D8 */ _t27 = cpu->r[1] + 0x00000008u;
|
|
/* 0222C9D8 */ rbrew_write32(cpu->mem, _t27, cpu->r[29]);
|
|
/* 0222C9DC */ cpu->r[10] = cpu->r[1] + 0x00000024u;
|
|
/* 0222C9E0 */ _t28 = cpu->r[1] + 0x00000010u;
|
|
/* 0222C9E0 */ rbrew_write32(cpu->mem, _t28, cpu->r[0]);
|
|
/* 0222C9E4 */ Gambit_fn_02228C64(cpu);
|
|
L_0222C9E8: ; // 0x222c9e8
|
|
/* 0222C9E8 */ cpu->r[31] = cpu->r[31] + 0xFFFFFFFFu;
|
|
/* 0222C9E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0222C9EC */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 0222C9F0 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222C9F0 */ _t30 = _t29 & 0x00000001u;
|
|
/* 0222C9F0 */ if (_t30) goto L_0222C9F4; else goto L_0222C954;
|
|
L_0222C9F4: ; // 0x222c9f4
|
|
/* 0222C9F4 */ /* nop */
|
|
/* 0222C9F8 */ _t31 = cpu->r[1] + 0x00000068u;
|
|
/* 0222C9F8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 0222C9FC */ _t32 = cpu->r[1] + 0x00000060u;
|
|
/* 0222C9FC */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t32);
|
|
/* 0222CA00 */ _t33 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0222CA00 */ _t34 = _t33 & 0x00000001u;
|
|
/* 0222CA00 */ if (_t34) goto L_0222CA04; // else: addr-0 trap, fall-through
|
|
L_0222CA04: ; // 0x222ca04
|
|
/* 0222CA04 */ _t35 = cpu->r[1] + 0x00000074u;
|
|
/* 0222CA04 */ cpu->r[0] = rbrew_read32(cpu->mem, _t35);
|
|
/* 0222CA08 */ cpu->lr = cpu->r[0];
|
|
/* 0222CA0C */ cpu->r[1] = cpu->r[1] + 0x00000070u;
|
|
/* 0222CA10 */ return;
|
|
}
|
|
|
|
// fn_0222CA14 @ 0x222ca14
|
|
void Gambit_fn_0222CA14(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0222CA14: ; // 0x222ca14
|
|
/* 0222CA14 */ cpu->r[0] = 0x00000001u;
|
|
/* 0222CA18 */ _t0 = cpu->r[3] + 0x000000C0u;
|
|
/* 0222CA18 */ rbrew_write8(cpu->mem, _t0, (uint8_t)cpu->r[0]);
|
|
/* 0222CA1C */ return;
|
|
}
|
|
|
|
// fn_0222CA20 @ 0x222ca20
|
|
void Gambit_fn_0222CA20(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92;
|
|
|
|
L_0222CA20: ; // 0x222ca20
|
|
/* 0222CA20 */ _t0 = cpu->r[1] + 0xFFFFFF80u;
|
|
/* 0222CA20 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0222CA20 */ cpu->r[1] = _t0;
|
|
/* 0222CA24 */ /* nop */
|
|
/* 0222CA28 */ cpu->r[0] = cpu->lr;
|
|
/* 0222CA2C */ _t1 = cpu->r[1] + 0x00000070u;
|
|
/* 0222CA2C */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0222CA30 */ _t2 = cpu->r[1] + 0x00000060u;
|
|
/* 0222CA30 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[30]);
|
|
/* 0222CA34 */ /* nop */
|
|
/* 0222CA38 */ _t3 = cpu->r[1] + 0x00000078u;
|
|
/* 0222CA38 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 0222CA3C */ /* nop */
|
|
/* 0222CA40 */ _t4 = cpu->r[1] + 0x00000084u;
|
|
/* 0222CA40 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0222CA44 */ cpu->r[7] = 0x10050000u;
|
|
/* 0222CA48 */ _t5 = cpu->r[1] + 0x00000068u;
|
|
/* 0222CA48 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[30]);
|
|
/* 0222CA4C */ cpu->r[29] = cpu->r[4];
|
|
/* 0222CA50 */ _t6 = cpu->r[7] + 0x00000098u;
|
|
/* 0222CA50 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 0222CA54 */ cpu->r[30] = cpu->r[5];
|
|
/* 0222CA58 */ cpu->r[26] = 0x00000000u;
|
|
/* 0222CA5C */ _t7 = cpu->r[30] + 0x0000015Cu;
|
|
/* 0222CA5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0222CA60 */ cpu->r[28] = cpu->r[3];
|
|
/* 0222CA64 */ cpu->r[25] = cpu->r[26];
|
|
/* 0222CA68 */ cpu->r[8] = 0x10050000u;
|
|
/* 0222CA6C */ cpu->r[5] = cpu->r[0] & 0x00000044u;
|
|
/* 0222CA6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 0222CA70 */ _t8 = cpu->r[8] + 0x0000009Cu;
|
|
/* 0222CA70 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 0222CA74 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222CA74 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0222CA74 */ if (_t10) goto L_0222CB3C; else goto L_0222CA78;
|
|
L_0222CA78: ; // 0x222ca78
|
|
/* 0222CA78 */ cpu->r[9] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Bu);
|
|
/* 0222CA78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0222CA7C */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222CA7C */ _t12 = _t11 & 0x00000001u;
|
|
/* 0222CA7C */ if (_t12) goto L_0222CA80; else goto L_0222CB3C;
|
|
L_0222CA80: ; // 0x222ca80
|
|
/* 0222CA80 */ _t13 = cpu->r[28] + 0x00000004u;
|
|
/* 0222CA80 */ cpu->r[10] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0222CA84 */ _t14 = cpu->r[10] + 0x0000035Cu;
|
|
/* 0222CA84 */ cpu->r[6] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0222CA88 */ cpu->ctr = cpu->r[6];
|
|
/* 0222CA8C */ cpu->r[3] = cpu->r[28];
|
|
/* 0222CA90 */ cpu->r[4] = cpu->r[29];
|
|
/* 0222CA94 */ cpu->r[5] = cpu->r[30];
|
|
/* 0222CA98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222CA9C */ _t15 = cpu->r[30] + 0x00000000u;
|
|
/* 0222CA9C */ cpu->r[5] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0222CAA0 */ cpu->r[31] = cpu->r[3];
|
|
/* 0222CAA4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[5], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0222CAA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0222CAA8 */ cpu->r[27] = cpu->r[30] + 0x00000048u;
|
|
/* 0222CAAC */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222CAAC */ _t17 = _t16 & 0x00000001u;
|
|
/* 0222CAAC */ if (_t17) goto L_0222CAE8; else goto L_0222CAB0;
|
|
L_0222CAB0: ; // 0x222cab0
|
|
/* 0222CAB0 */ cpu->r[3] = cpu->r[30] + 0x0000012Cu;
|
|
/* 0222CAB4 */ Gambit_fn_02C69350(cpu);
|
|
/* 0222CAB8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[30]);
|
|
/* 0222CABC */ _t18 = cpu->r[30] + 0x00000000u;
|
|
/* 0222CABC */ cpu->r[7] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0222CAC0 */ _t19 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0222CAC0 */ _t20 = _t19 & 0x00000001u;
|
|
/* 0222CAC0 */ if (_t20) goto L_0222CAC4; else goto L_0222CAE0;
|
|
L_0222CAC4: ; // 0x222cac4
|
|
/* 0222CAC4 */ cpu->f[10] = cpu->f[31] / cpu->f[1];
|
|
/* 0222CAC8 */ _t21 = cpu->r[30] + 0x00000134u;
|
|
/* 0222CAC8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 0222CACC */ /* nop */
|
|
/* 0222CAD0 */ /* nop */
|
|
/* 0222CAD4 */ cpu->f[11] = cpu->f[12] * cpu->f[10];
|
|
/* 0222CAD8 */ /* nop */
|
|
/* 0222CADC */ _t22 = cpu->r[30] + 0x00000050u;
|
|
/* 0222CADC */ rbrew_write_f32(cpu->mem, _t22, cpu->f[11]);
|
|
L_0222CAE0: ; // 0x222cae0
|
|
/* 0222CAE0 */ cpu->r[7] = rbrew_rlwinm(cpu->r[7], 0x00000000u, 0x00000000u, 0x0000001Eu);
|
|
/* 0222CAE4 */ _t23 = cpu->r[30] + 0x00000000u;
|
|
/* 0222CAE4 */ rbrew_write32(cpu->mem, _t23, cpu->r[7]);
|
|
L_0222CAE8: ; // 0x222cae8
|
|
/* 0222CAE8 */ cpu->r[12] = 0x10050000u;
|
|
/* 0222CAEC */ _t24 = cpu->r[27] + 0x00000004u;
|
|
/* 0222CAEC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 0222CAF0 */ _t25 = cpu->r[12] + 0x00000114u;
|
|
/* 0222CAF0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 0222CAF4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 0222CAF8 */ _t26 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0222CAF8 */ _t27 = _t26 & 0x00000001u;
|
|
/* 0222CAF8 */ if (_t27) goto L_0222CAFC; else goto L_0222CB10;
|
|
L_0222CAFC: ; // 0x222cafc
|
|
/* 0222CAFC */ _t28 = cpu->r[28] + 0x00000004u;
|
|
/* 0222CAFC */ cpu->r[8] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0222CB00 */ _t29 = cpu->r[8] + 0x0000039Cu;
|
|
/* 0222CB00 */ cpu->r[9] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0222CB04 */ cpu->ctr = cpu->r[9];
|
|
/* 0222CB08 */ cpu->r[3] = cpu->r[28];
|
|
/* 0222CB0C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0222CB10: ; // 0x222cb10
|
|
/* 0222CB10 */ cpu->r[3] = cpu->r[31];
|
|
/* 0222CB14 */ /* nop */
|
|
/* 0222CB18 */ _t30 = cpu->r[1] + 0x00000068u;
|
|
/* 0222CB18 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 0222CB1C */ _t31 = cpu->r[1] + 0x00000078u;
|
|
/* 0222CB1C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 0222CB20 */ _t32 = cpu->r[1] + 0x00000060u;
|
|
/* 0222CB20 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t32);
|
|
/* 0222CB24 */ _t33 = cpu->r[1] + 0x00000070u;
|
|
/* 0222CB24 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t33);
|
|
/* 0222CB28 */ _t34 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0222CB28 */ _t35 = _t34 & 0x00000001u;
|
|
/* 0222CB28 */ if (_t35) goto L_0222CB2C; // else: addr-0 trap, fall-through
|
|
L_0222CB2C: ; // 0x222cb2c
|
|
/* 0222CB2C */ _t36 = cpu->r[1] + 0x00000084u;
|
|
/* 0222CB2C */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0222CB30 */ cpu->lr = cpu->r[0];
|
|
/* 0222CB34 */ cpu->r[1] = cpu->r[1] + 0x00000080u;
|
|
/* 0222CB38 */ return;
|
|
L_0222CB3C: ; // 0x222cb3c
|
|
/* 0222CB3C */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Cu, 0x0000001Eu);
|
|
/* 0222CB3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0222CB40 */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222CB40 */ _t38 = _t37 & 0x00000001u;
|
|
/* 0222CB40 */ if (_t38) goto L_0222CBB4; else goto L_0222CB44;
|
|
L_0222CB44: ; // 0x222cb44
|
|
/* 0222CB44 */ _t39 = cpu->r[28] + 0x00000051u;
|
|
/* 0222CB44 */ cpu->r[0] = rbrew_read8(cpu->mem, _t39);
|
|
/* 0222CB48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0222CB4C */ _t40 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222CB4C */ _t41 = _t40 & 0x00000001u;
|
|
/* 0222CB4C */ if (_t41) goto L_0222CBB4; else goto L_0222CB50;
|
|
L_0222CB50: ; // 0x222cb50
|
|
/* 0222CB50 */ /* nop */
|
|
/* 0222CB54 */ /* nop */
|
|
/* 0222CB58 */ _t42 = cpu->r[29] + 0x00000008u;
|
|
/* 0222CB58 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 0222CB5C */ /* nop */
|
|
/* 0222CB60 */ _t43 = cpu->r[28] + 0x000000D8u;
|
|
/* 0222CB60 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 0222CB64 */ /* nop */
|
|
/* 0222CB68 */ _t44 = cpu->r[1] + 0x00000018u;
|
|
/* 0222CB68 */ cpu->r[7] = rbrew_read32(cpu->mem, _t44);
|
|
/* 0222CB6C */ cpu->f[12] = cpu->f[13] - cpu->f[0];
|
|
/* 0222CB70 */ _t45 = cpu->r[1] + 0x00000014u;
|
|
/* 0222CB70 */ cpu->r[6] = rbrew_read32(cpu->mem, _t45);
|
|
/* 0222CB74 */ _t46 = cpu->r[28] + 0x00000004u;
|
|
/* 0222CB74 */ cpu->r[9] = rbrew_read32(cpu->mem, _t46);
|
|
/* 0222CB78 */ _t47 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0222CB78 */ rbrew_write_f32(cpu->mem, _t47, cpu->f[12]);
|
|
/* 0222CB7C */ _t48 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0222CB7C */ cpu->r[8] = rbrew_read32(cpu->mem, _t48);
|
|
/* 0222CB80 */ _t49 = cpu->r[1] + 0x00000038u;
|
|
/* 0222CB80 */ rbrew_write32(cpu->mem, _t49, cpu->r[6]);
|
|
/* 0222CB84 */ _t50 = cpu->r[1] + 0x00000040u;
|
|
/* 0222CB84 */ rbrew_write32(cpu->mem, _t50, cpu->r[8]);
|
|
/* 0222CB88 */ _t51 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0222CB88 */ rbrew_write32(cpu->mem, _t51, cpu->r[7]);
|
|
/* 0222CB8C */ _t52 = cpu->r[9] + 0x00000334u;
|
|
/* 0222CB8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t52);
|
|
/* 0222CB90 */ cpu->ctr = cpu->r[0];
|
|
/* 0222CB94 */ cpu->r[3] = cpu->r[28];
|
|
/* 0222CB98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222CB9C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[30]);
|
|
/* 0222CBA0 */ _t53 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0222CBA0 */ _t54 = _t53 & 0x00000001u;
|
|
/* 0222CBA0 */ if (_t54) goto L_0222CBA4; else goto L_0222CBB4;
|
|
L_0222CBA4: ; // 0x222cba4
|
|
/* 0222CBA4 */ cpu->r[5] = cpu->r[1] + 0x00000038u;
|
|
/* 0222CBA8 */ cpu->r[4] = cpu->r[30];
|
|
/* 0222CBAC */ cpu->r[3] = cpu->r[28];
|
|
/* 0222CBB0 */ Gambit_fn_0222C8F0(cpu);
|
|
L_0222CBB4: ; // 0x222cbb4
|
|
/* 0222CBB4 */ _t55 = cpu->r[30] + 0x00000164u;
|
|
/* 0222CBB4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t55);
|
|
/* 0222CBB8 */ cpu->r[0] = 0x101E0000u;
|
|
/* 0222CBBC */ cpu->r[0] = cpu->r[0] + 0xFFFF9484u;
|
|
/* 0222CBC0 */ cpu->r[11] = rbrew_rlwinm(cpu->r[12], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0222CBC4 */ _t56 = cpu->r[11] + cpu->r[0];
|
|
/* 0222CBC4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t56);
|
|
/* 0222CBC8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0222CBCC */ _t57 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222CBCC */ _t58 = _t57 & 0x00000001u;
|
|
/* 0222CBCC */ if (_t58) goto L_0222CBD0; else goto L_0222CBE0;
|
|
L_0222CBD0: ; // 0x222cbd0
|
|
/* 0222CBD0 */ cpu->r[3] = cpu->r[28];
|
|
/* 0222CBD4 */ cpu->r[26] = 0x00000001u;
|
|
/* 0222CBD8 */ Gambit_fn_0222CA14(cpu);
|
|
/* 0222CBDC */ goto L_0222CC5C;
|
|
L_0222CBE0: ; // 0x222cbe0
|
|
/* 0222CBE0 */ cpu->r[27] = 0x00000000u;
|
|
/* 0222CBE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0222CBE8 */ _t59 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222CBE8 */ rbrew_write32(cpu->mem, _t59, cpu->r[27]);
|
|
/* 0222CBEC */ _t60 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0222CBEC */ _t61 = _t60 & 0x00000001u;
|
|
/* 0222CBEC */ if (_t61) goto L_0222CBF0; else goto L_0222CC5C;
|
|
L_0222CBF0: ; // 0x222cbf0
|
|
/* 0222CBF0 */ cpu->r[10] = cpu->r[1] + 0x00000010u;
|
|
/* 0222CBF4 */ cpu->r[9] = 0x00000000u;
|
|
/* 0222CBF8 */ cpu->r[8] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222CBFC */ cpu->r[7] = cpu->r[1] + 0x0000002Cu;
|
|
/* 0222CC00 */ cpu->r[6] = cpu->r[1] + 0x00000020u;
|
|
/* 0222CC04 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0222CC08 */ cpu->r[4] = cpu->r[27];
|
|
/* 0222CC0C */ cpu->r[3] = cpu->r[30];
|
|
/* 0222CC10 */ Gambit_fn_02040F70(cpu);
|
|
/* 0222CC14 */ _t62 = cpu->r[1] + 0x00000010u;
|
|
/* 0222CC14 */ cpu->r[9] = rbrew_read32(cpu->mem, _t62);
|
|
/* 0222CC18 */ _t63 = cpu->r[9] + 0x000001ACu;
|
|
/* 0222CC18 */ cpu->r[7] = rbrew_read32(cpu->mem, _t63);
|
|
/* 0222CC1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0222CC20 */ _t64 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222CC20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t64);
|
|
/* 0222CC24 */ _t65 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222CC24 */ _t66 = _t65 & 0x00000001u;
|
|
/* 0222CC24 */ if (_t66) goto L_0222CC2C; else goto L_0222CC28;
|
|
L_0222CC28: ; // 0x222cc28
|
|
/* 0222CC28 */ cpu->r[26] = 0x00000001u;
|
|
L_0222CC2C: ; // 0x222cc2c
|
|
/* 0222CC2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0222CC30 */ _t67 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222CC30 */ _t68 = _t67 & 0x00000001u;
|
|
/* 0222CC30 */ if (_t68) goto L_0222CC34; else goto L_0222CC40;
|
|
L_0222CC34: ; // 0x222cc34
|
|
/* 0222CC34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0222CC38 */ _t69 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222CC38 */ _t70 = _t69 & 0x00000001u;
|
|
/* 0222CC38 */ if (_t70) goto L_0222CC3C; else goto L_0222CC40;
|
|
L_0222CC3C: ; // 0x222cc3c
|
|
/* 0222CC3C */ cpu->r[25] = 0x00000001u;
|
|
L_0222CC40: ; // 0x222cc40
|
|
/* 0222CC40 */ cpu->r[31] = cpu->r[31] + 0xFFFFFFFFu;
|
|
/* 0222CC40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0222CC44 */ cpu->r[27] = cpu->r[27] + 0x00000001u;
|
|
/* 0222CC48 */ _t71 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222CC48 */ _t72 = _t71 & 0x00000001u;
|
|
/* 0222CC48 */ if (_t72) goto L_0222CC4C; else goto L_0222CBF0;
|
|
L_0222CC4C: ; // 0x222cc4c
|
|
/* 0222CC4C */ cpu->r[0] = cpu->r[26] | cpu->r[25];
|
|
/* 0222CC4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0222CC50 */ _t73 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222CC50 */ _t74 = _t73 & 0x00000001u;
|
|
/* 0222CC50 */ if (_t74) goto L_0222CC5C; else goto L_0222CC54;
|
|
L_0222CC54: ; // 0x222cc54
|
|
/* 0222CC54 */ cpu->r[3] = cpu->r[28];
|
|
/* 0222CC58 */ Gambit_fn_0222CA14(cpu);
|
|
L_0222CC5C: ; // 0x222cc5c
|
|
/* 0222CC5C */ _t75 = cpu->r[30] + 0x00000000u;
|
|
/* 0222CC5C */ cpu->r[6] = rbrew_read32(cpu->mem, _t75);
|
|
/* 0222CC60 */ cpu->r[0] = rbrew_rlwinm(cpu->r[6], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0222CC60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0222CC64 */ cpu->r[27] = cpu->r[30] + 0x00000048u;
|
|
/* 0222CC68 */ _t76 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222CC68 */ _t77 = _t76 & 0x00000001u;
|
|
/* 0222CC68 */ if (_t77) goto L_0222CCA4; else goto L_0222CC6C;
|
|
L_0222CC6C: ; // 0x222cc6c
|
|
/* 0222CC6C */ cpu->r[3] = cpu->r[30] + 0x0000012Cu;
|
|
/* 0222CC70 */ Gambit_fn_02C69350(cpu);
|
|
/* 0222CC74 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[30]);
|
|
/* 0222CC78 */ _t78 = cpu->r[30] + 0x00000000u;
|
|
/* 0222CC78 */ cpu->r[11] = rbrew_read32(cpu->mem, _t78);
|
|
/* 0222CC7C */ _t79 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0222CC7C */ _t80 = _t79 & 0x00000001u;
|
|
/* 0222CC7C */ if (_t80) goto L_0222CC80; else goto L_0222CC9C;
|
|
L_0222CC80: ; // 0x222cc80
|
|
/* 0222CC80 */ cpu->f[12] = cpu->f[31] / cpu->f[1];
|
|
/* 0222CC84 */ _t81 = cpu->r[30] + 0x00000134u;
|
|
/* 0222CC84 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t81);
|
|
/* 0222CC88 */ /* nop */
|
|
/* 0222CC8C */ /* nop */
|
|
/* 0222CC90 */ cpu->f[12] = cpu->f[13] * cpu->f[12];
|
|
/* 0222CC94 */ /* nop */
|
|
/* 0222CC98 */ _t82 = cpu->r[30] + 0x00000050u;
|
|
/* 0222CC98 */ rbrew_write_f32(cpu->mem, _t82, cpu->f[12]);
|
|
L_0222CC9C: ; // 0x222cc9c
|
|
/* 0222CC9C */ cpu->r[11] = rbrew_rlwinm(cpu->r[11], 0x00000000u, 0x00000000u, 0x0000001Eu);
|
|
/* 0222CCA0 */ _t83 = cpu->r[30] + 0x00000000u;
|
|
/* 0222CCA0 */ rbrew_write32(cpu->mem, _t83, cpu->r[11]);
|
|
L_0222CCA4: ; // 0x222cca4
|
|
/* 0222CCA4 */ cpu->r[7] = cpu->r[26];
|
|
/* 0222CCA8 */ cpu->r[6] = cpu->r[27];
|
|
/* 0222CCAC */ cpu->r[5] = cpu->r[28] + 0x000000C4u;
|
|
/* 0222CCB0 */ cpu->r[4] = cpu->r[29];
|
|
/* 0222CCB4 */ cpu->r[3] = cpu->r[28];
|
|
/* 0222CCB8 */ Gambit_fn_021BD95C(cpu);
|
|
/* 0222CCBC */ _t84 = cpu->r[28] + 0x00000004u;
|
|
/* 0222CCBC */ cpu->r[12] = rbrew_read32(cpu->mem, _t84);
|
|
/* 0222CCC0 */ _t85 = cpu->r[12] + 0x0000039Cu;
|
|
/* 0222CCC0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t85);
|
|
/* 0222CCC4 */ cpu->ctr = cpu->r[0];
|
|
/* 0222CCC8 */ cpu->r[3] = cpu->r[28];
|
|
/* 0222CCCC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222CCD0 */ /* nop */
|
|
/* 0222CCD4 */ _t86 = cpu->r[1] + 0x00000068u;
|
|
/* 0222CCD4 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t86);
|
|
/* 0222CCD8 */ _t87 = cpu->r[1] + 0x00000078u;
|
|
/* 0222CCD8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t87);
|
|
/* 0222CCDC */ _t88 = cpu->r[1] + 0x00000060u;
|
|
/* 0222CCDC */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t88);
|
|
/* 0222CCE0 */ _t89 = cpu->r[1] + 0x00000070u;
|
|
/* 0222CCE0 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t89);
|
|
/* 0222CCE4 */ cpu->r[3] = 0x00000001u;
|
|
/* 0222CCE8 */ _t90 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0222CCE8 */ _t91 = _t90 & 0x00000001u;
|
|
/* 0222CCE8 */ if (_t91) goto L_0222CCEC; // else: addr-0 trap, fall-through
|
|
L_0222CCEC: ; // 0x222ccec
|
|
/* 0222CCEC */ _t92 = cpu->r[1] + 0x00000084u;
|
|
/* 0222CCEC */ cpu->r[0] = rbrew_read32(cpu->mem, _t92);
|
|
/* 0222CCF0 */ cpu->lr = cpu->r[0];
|
|
/* 0222CCF4 */ cpu->r[1] = cpu->r[1] + 0x00000080u;
|
|
/* 0222CCF8 */ return;
|
|
}
|
|
|
|
// fn_0222CCFC @ 0x222ccfc
|
|
void Gambit_fn_0222CCFC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _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;
|
|
|
|
L_0222CCFC: ; // 0x222ccfc
|
|
/* 0222CCFC */ _t0 = cpu->r[1] + 0xFFFFFF50u;
|
|
/* 0222CCFC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0222CCFC */ cpu->r[1] = _t0;
|
|
/* 0222CD00 */ /* nop */
|
|
/* 0222CD04 */ _t1 = cpu->r[1] + 0x00000090u;
|
|
/* 0222CD04 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[30]);
|
|
/* 0222CD08 */ /* nop */
|
|
/* 0222CD0C */ _t2 = cpu->r[1] + 0x000000A0u;
|
|
/* 0222CD0C */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 0222CD10 */ /* nop */
|
|
/* 0222CD14 */ _t3 = cpu->r[1] + 0x00000098u;
|
|
/* 0222CD14 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[30]);
|
|
/* 0222CD18 */ _t4 = cpu->r[1] + 0x000000A8u;
|
|
/* 0222CD18 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[31]);
|
|
/* 0222CD1C */ cpu->r[0] = cpu->lr;
|
|
/* 0222CD20 */ _t5 = cpu->r[1] + 0x000000B4u;
|
|
/* 0222CD20 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0222CD24 */ _t6 = cpu->r[3] + 0x00000004u;
|
|
/* 0222CD24 */ cpu->r[6] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0222CD28 */ _t7 = cpu->r[6] + 0x0000036Cu;
|
|
/* 0222CD28 */ cpu->r[10] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0222CD2C */ cpu->ctr = cpu->r[10];
|
|
/* 0222CD30 */ cpu->r[29] = cpu->r[3];
|
|
/* 0222CD34 */ cpu->r[30] = cpu->r[5];
|
|
/* 0222CD38 */ cpu->r[28] = cpu->r[4];
|
|
/* 0222CD3C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222CD40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0222CD44 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222CD44 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0222CD44 */ if (_t9) goto L_0222CD48; else goto L_0222CD74;
|
|
L_0222CD48: ; // 0x222cd48
|
|
/* 0222CD48 */ /* nop */
|
|
/* 0222CD4C */ _t10 = cpu->r[1] + 0x00000098u;
|
|
/* 0222CD4C */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 0222CD50 */ _t11 = cpu->r[1] + 0x000000A8u;
|
|
/* 0222CD50 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 0222CD54 */ _t12 = cpu->r[1] + 0x00000090u;
|
|
/* 0222CD54 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t12);
|
|
/* 0222CD58 */ _t13 = cpu->r[1] + 0x000000A0u;
|
|
/* 0222CD58 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t13);
|
|
/* 0222CD5C */ cpu->r[3] = 0x00000000u;
|
|
/* 0222CD60 */ _t14 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0222CD60 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0222CD60 */ if (_t15) goto L_0222CD64; // else: addr-0 trap, fall-through
|
|
L_0222CD64: ; // 0x222cd64
|
|
/* 0222CD64 */ _t16 = cpu->r[1] + 0x000000B4u;
|
|
/* 0222CD64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0222CD68 */ cpu->lr = cpu->r[0];
|
|
/* 0222CD6C */ cpu->r[1] = cpu->r[1] + 0x000000B0u;
|
|
/* 0222CD70 */ return;
|
|
L_0222CD74: ; // 0x222cd74
|
|
/* 0222CD74 */ _t17 = cpu->r[29] + 0x00000004u;
|
|
/* 0222CD74 */ cpu->r[12] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0222CD78 */ _t18 = cpu->r[12] + 0x00000444u;
|
|
/* 0222CD78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0222CD7C */ cpu->ctr = cpu->r[0];
|
|
/* 0222CD80 */ cpu->r[3] = cpu->r[29];
|
|
/* 0222CD84 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222CD88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0222CD8C */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222CD8C */ _t20 = _t19 & 0x00000001u;
|
|
/* 0222CD8C */ if (_t20) goto L_0222CE04; else goto L_0222CD90;
|
|
L_0222CD90: ; // 0x222cd90
|
|
/* 0222CD90 */ cpu->r[9] = 0x101C0000u;
|
|
/* 0222CD94 */ _t21 = cpu->r[9] + 0x00005BA0u;
|
|
/* 0222CD94 */ cpu->r[9] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0222CD98 */ _t22 = cpu->r[29] + 0x00000058u;
|
|
/* 0222CD98 */ cpu->r[7] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0222CD9C */ _t23 = cpu->r[9] + 0x00000078u;
|
|
/* 0222CD9C */ cpu->r[4] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0222CDA0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[4]);
|
|
/* 0222CDA4 */ cpu->r[3] = 0x00000000u;
|
|
/* 0222CDA8 */ _t24 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0222CDA8 */ _t25 = _t24 & 0x00000001u;
|
|
/* 0222CDA8 */ if (_t25) goto L_0222CDAC; else goto L_0222CDB8;
|
|
L_0222CDAC: ; // 0x222cdac
|
|
/* 0222CDAC */ _t26 = cpu->r[9] + 0x00000080u;
|
|
/* 0222CDAC */ cpu->r[8] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0222CDB0 */ cpu->r[6] = rbrew_rlwinm(cpu->r[7], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0222CDB4 */ _t27 = cpu->r[6] + cpu->r[8];
|
|
/* 0222CDB4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t27);
|
|
L_0222CDB8: ; // 0x222cdb8
|
|
/* 0222CDB8 */ Gambit_fn_025E068C(cpu);
|
|
/* 0222CDBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0222CDC0 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222CDC0 */ _t29 = _t28 & 0x00000001u;
|
|
/* 0222CDC0 */ if (_t29) goto L_0222CDC4; else goto L_0222CE04;
|
|
L_0222CDC4: ; // 0x222cdc4
|
|
/* 0222CDC4 */ _t30 = cpu->r[29] + 0x00000004u;
|
|
/* 0222CDC4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0222CDC8 */ _t31 = cpu->r[10] + 0x000003A4u;
|
|
/* 0222CDC8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0222CDCC */ cpu->ctr = cpu->r[11];
|
|
/* 0222CDD0 */ cpu->r[3] = cpu->r[29];
|
|
/* 0222CDD4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222CDD8 */ /* nop */
|
|
/* 0222CDDC */ _t32 = cpu->r[1] + 0x00000098u;
|
|
/* 0222CDDC */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 0222CDE0 */ _t33 = cpu->r[1] + 0x000000A8u;
|
|
/* 0222CDE0 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 0222CDE4 */ _t34 = cpu->r[1] + 0x00000090u;
|
|
/* 0222CDE4 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t34);
|
|
/* 0222CDE8 */ _t35 = cpu->r[1] + 0x000000A0u;
|
|
/* 0222CDE8 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t35);
|
|
/* 0222CDEC */ cpu->r[3] = 0x00000001u;
|
|
/* 0222CDF0 */ _t36 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0222CDF0 */ _t37 = _t36 & 0x00000001u;
|
|
/* 0222CDF0 */ if (_t37) goto L_0222CDF4; // else: addr-0 trap, fall-through
|
|
L_0222CDF4: ; // 0x222cdf4
|
|
/* 0222CDF4 */ _t38 = cpu->r[1] + 0x000000B4u;
|
|
/* 0222CDF4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t38);
|
|
/* 0222CDF8 */ cpu->lr = cpu->r[0];
|
|
/* 0222CDFC */ cpu->r[1] = cpu->r[1] + 0x000000B0u;
|
|
/* 0222CE00 */ return;
|
|
L_0222CE04: ; // 0x222ce04
|
|
/* 0222CE04 */ _t39 = cpu->r[30] + 0x00000164u;
|
|
/* 0222CE04 */ cpu->r[0] = rbrew_read32(cpu->mem, _t39);
|
|
/* 0222CE08 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0222CE0C */ cpu->r[4] = cpu->r[12] + 0x101E0000u;
|
|
/* 0222CE10 */ _t40 = cpu->r[4] + 0xFFFF9484u;
|
|
/* 0222CE10 */ cpu->r[31] = rbrew_read32(cpu->mem, _t40);
|
|
/* 0222CE14 */ cpu->r[26] = 0x00000000u;
|
|
/* 0222CE18 */ cpu->r[7] = 0x10050000u;
|
|
/* 0222CE1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0222CE20 */ _t41 = cpu->r[7] + 0x0000009Cu;
|
|
/* 0222CE20 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 0222CE24 */ _t42 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222CE24 */ _t43 = _t42 & 0x00000001u;
|
|
/* 0222CE24 */ if (_t43) goto L_0222CE28; else goto L_0222CE34;
|
|
L_0222CE28: ; // 0x222ce28
|
|
/* 0222CE28 */ _t44 = cpu->r[30] + 0x0000015Cu;
|
|
/* 0222CE28 */ cpu->r[11] = rbrew_read32(cpu->mem, _t44);
|
|
/* 0222CE2C */ cpu->r[5] = rbrew_rlwinm(cpu->r[11], 0x00000000u, 0x00000018u, 0x0000001Au);
|
|
/* 0222CE2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 0222CE30 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222CE30 */ _t46 = _t45 & 0x00000001u;
|
|
/* 0222CE30 */ if (_t46) goto L_0222CF50; else goto L_0222CE34;
|
|
L_0222CE34: ; // 0x222ce34
|
|
/* 0222CE34 */ _t47 = cpu->r[29] + 0x00000004u;
|
|
/* 0222CE34 */ cpu->r[9] = rbrew_read32(cpu->mem, _t47);
|
|
/* 0222CE38 */ cpu->r[8] = 0x00000000u;
|
|
/* 0222CE3C */ _t48 = cpu->r[1] + 0x00000018u;
|
|
/* 0222CE3C */ rbrew_write32(cpu->mem, _t48, cpu->r[8]);
|
|
/* 0222CE40 */ _t49 = cpu->r[9] + 0x00000334u;
|
|
/* 0222CE40 */ cpu->r[10] = rbrew_read32(cpu->mem, _t49);
|
|
/* 0222CE44 */ cpu->ctr = cpu->r[10];
|
|
/* 0222CE48 */ cpu->r[3] = cpu->r[29];
|
|
/* 0222CE4C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222CE50 */ cpu->f[30] = cpu->f[1];
|
|
/* 0222CE54 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[30], cpu->f[31]);
|
|
/* 0222CE58 */ _t50 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0222CE58 */ _t51 = _t50 & 0x00000001u;
|
|
/* 0222CE58 */ if (_t51) goto L_0222CE5C; else goto L_0222CF4C;
|
|
L_0222CE5C: ; // 0x222ce5c
|
|
/* 0222CE5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0222CE60 */ cpu->r[24] = 0x00000000u;
|
|
/* 0222CE64 */ _t52 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0222CE64 */ _t53 = _t52 & 0x00000001u;
|
|
/* 0222CE64 */ if (_t53) goto L_0222CE68; else goto L_0222CF4C;
|
|
L_0222CE68: ; // 0x222ce68
|
|
/* 0222CE68 */ cpu->r[27] = cpu->r[1] + 0x00000018u;
|
|
/* 0222CE6C */ cpu->r[25] = 0xFFFFFFFFu;
|
|
L_0222CE70: ; // 0x222ce70
|
|
/* 0222CE70 */ cpu->r[10] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0222CE74 */ cpu->r[9] = 0x00000000u;
|
|
/* 0222CE78 */ cpu->r[8] = cpu->r[1] + 0x00000018u;
|
|
/* 0222CE7C */ cpu->r[7] = cpu->r[1] + 0x00000040u;
|
|
/* 0222CE80 */ cpu->r[6] = cpu->r[1] + 0x00000034u;
|
|
/* 0222CE84 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 0222CE88 */ cpu->r[4] = cpu->r[24];
|
|
/* 0222CE8C */ cpu->r[3] = cpu->r[30];
|
|
/* 0222CE90 */ Gambit_fn_02040F70(cpu);
|
|
/* 0222CE94 */ _t54 = cpu->r[1] + 0x00000018u;
|
|
/* 0222CE94 */ cpu->r[0] = rbrew_read32(cpu->mem, _t54);
|
|
/* 0222CE98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0222CE9C */ _t55 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222CE9C */ _t56 = _t55 & 0x00000001u;
|
|
/* 0222CE9C */ if (_t56) goto L_0222CF40; else goto L_0222CEA0;
|
|
L_0222CEA0: ; // 0x222cea0
|
|
/* 0222CEA0 */ _t57 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0222CEA0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t57);
|
|
/* 0222CEA4 */ _t58 = cpu->r[9] + 0x000001ACu;
|
|
/* 0222CEA4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t58);
|
|
/* 0222CEA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 0222CEAC */ _t59 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222CEAC */ _t60 = _t59 & 0x00000001u;
|
|
/* 0222CEAC */ if (_t60) goto L_0222CF40; else goto L_0222CEB0;
|
|
L_0222CEB0: ; // 0x222ceb0
|
|
/* 0222CEB0 */ _t61 = cpu->r[29] + 0x00000051u;
|
|
/* 0222CEB0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t61);
|
|
/* 0222CEB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0222CEB8 */ _t62 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222CEB8 */ _t63 = _t62 & 0x00000001u;
|
|
/* 0222CEB8 */ if (_t63) goto L_0222CF3C; else goto L_0222CEBC;
|
|
L_0222CEBC: ; // 0x222cebc
|
|
/* 0222CEBC */ /* nop */
|
|
/* 0222CEC0 */ /* nop */
|
|
/* 0222CEC4 */ _t64 = cpu->r[29] + 0x000000D8u;
|
|
/* 0222CEC4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 0222CEC8 */ /* nop */
|
|
/* 0222CECC */ _t65 = cpu->r[28] + 0x00000008u;
|
|
/* 0222CECC */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t65);
|
|
/* 0222CED0 */ _t66 = cpu->r[29] + 0x0000002Cu;
|
|
/* 0222CED0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t66);
|
|
/* 0222CED4 */ cpu->f[13] = cpu->f[7] - cpu->f[8];
|
|
/* 0222CED8 */ /* nop */
|
|
/* 0222CEDC */ _t67 = cpu->r[1] + 0x00000028u;
|
|
/* 0222CEDC */ cpu->r[0] = rbrew_read32(cpu->mem, _t67);
|
|
/* 0222CEE0 */ _t68 = cpu->r[29] + 0x00000054u;
|
|
/* 0222CEE0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t68);
|
|
/* 0222CEE4 */ _t69 = cpu->r[1] + 0x00000030u;
|
|
/* 0222CEE4 */ rbrew_write_f32(cpu->mem, _t69, cpu->f[13]);
|
|
/* 0222CEE8 */ _t70 = cpu->r[1] + 0x00000030u;
|
|
/* 0222CEE8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t70);
|
|
/* 0222CEEC */ _t71 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0222CEEC */ rbrew_write32(cpu->mem, _t71, cpu->r[0]);
|
|
/* 0222CEF0 */ _t72 = cpu->r[1] + 0x00000054u;
|
|
/* 0222CEF0 */ rbrew_write32(cpu->mem, _t72, cpu->r[6]);
|
|
/* 0222CEF4 */ _t73 = cpu->r[29] + 0x00000058u;
|
|
/* 0222CEF4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t73);
|
|
/* 0222CEF8 */ _t74 = cpu->r[1] + 0x00000010u;
|
|
/* 0222CEF8 */ rbrew_write32(cpu->mem, _t74, cpu->r[9]);
|
|
/* 0222CEFC */ _t75 = cpu->r[1] + 0x00000014u;
|
|
/* 0222CEFC */ cpu->r[7] = rbrew_read8(cpu->mem, _t75);
|
|
/* 0222CF00 */ cpu->r[8] = cpu->r[1] + 0x00000034u;
|
|
/* 0222CF04 */ _t76 = cpu->r[27] + 0x00000000u;
|
|
/* 0222CF04 */ cpu->r[0] = rbrew_read32(cpu->mem, _t76);
|
|
/* 0222CF08 */ cpu->f[1] = cpu->f[30];
|
|
/* 0222CF0C */ _t77 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0222CF0C */ cpu->r[12] = rbrew_read32(cpu->mem, _t77);
|
|
/* 0222CF10 */ cpu->r[9] = cpu->r[1] + 0x00000040u;
|
|
/* 0222CF14 */ _t78 = cpu->r[1] + 0x00000024u;
|
|
/* 0222CF14 */ rbrew_write32(cpu->mem, _t78, cpu->r[0]);
|
|
/* 0222CF18 */ cpu->r[11] = cpu->r[1] + 0x0000004Cu;
|
|
/* 0222CF1C */ _t79 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222CF1C */ rbrew_write32(cpu->mem, _t79, cpu->r[25]);
|
|
/* 0222CF20 */ cpu->r[6] = cpu->r[1] + 0x00000020u;
|
|
/* 0222CF24 */ _t80 = cpu->r[1] + 0x00000020u;
|
|
/* 0222CF24 */ rbrew_write32(cpu->mem, _t80, cpu->r[10]);
|
|
/* 0222CF28 */ cpu->r[3] = cpu->r[29];
|
|
/* 0222CF2C */ _t81 = cpu->r[1] + 0x00000008u;
|
|
/* 0222CF2C */ rbrew_write32(cpu->mem, _t81, cpu->r[11]);
|
|
/* 0222CF30 */ cpu->r[10] = cpu->r[1] + 0x00000024u;
|
|
/* 0222CF34 */ _t82 = cpu->r[1] + 0x00000050u;
|
|
/* 0222CF34 */ rbrew_write32(cpu->mem, _t82, cpu->r[12]);
|
|
/* 0222CF38 */ Gambit_fn_02228C64(cpu);
|
|
L_0222CF3C: ; // 0x222cf3c
|
|
/* 0222CF3C */ cpu->r[26] = 0x00000001u;
|
|
L_0222CF40: ; // 0x222cf40
|
|
/* 0222CF40 */ cpu->r[31] = cpu->r[31] + 0xFFFFFFFFu;
|
|
/* 0222CF40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0222CF44 */ cpu->r[24] = cpu->r[24] + 0x00000001u;
|
|
/* 0222CF48 */ _t83 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222CF48 */ _t84 = _t83 & 0x00000001u;
|
|
/* 0222CF48 */ if (_t84) goto L_0222CF4C; else goto L_0222CE70;
|
|
L_0222CF4C: ; // 0x222cf4c
|
|
/* 0222CF4C */ _t85 = cpu->r[30] + 0x0000015Cu;
|
|
/* 0222CF4C */ cpu->r[11] = rbrew_read32(cpu->mem, _t85);
|
|
L_0222CF50: ; // 0x222cf50
|
|
/* 0222CF50 */ cpu->r[6] = 0x10050000u;
|
|
/* 0222CF54 */ _t86 = cpu->r[30] + 0x00000000u;
|
|
/* 0222CF54 */ cpu->r[5] = rbrew_read32(cpu->mem, _t86);
|
|
/* 0222CF58 */ cpu->r[12] = rbrew_rlwinm(cpu->r[11], 0x00000000u, 0x00000018u, 0x0000001Bu);
|
|
/* 0222CF58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0222CF5C */ _t87 = cpu->r[6] + 0x00000098u;
|
|
/* 0222CF5C */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t87);
|
|
/* 0222CF60 */ _t88 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222CF60 */ _t89 = _t88 & 0x00000001u;
|
|
/* 0222CF60 */ if (_t89) goto L_0222CFB4; else goto L_0222CF64;
|
|
L_0222CF64: ; // 0x222cf64
|
|
/* 0222CF64 */ cpu->r[4] = rbrew_rlwinm(cpu->r[5], 0x00000000u, 0x0000001Eu, 0x0000001Eu);
|
|
/* 0222CF64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 0222CF68 */ cpu->r[31] = cpu->r[30] + 0x000000A8u;
|
|
/* 0222CF6C */ _t90 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222CF6C */ _t91 = _t90 & 0x00000001u;
|
|
/* 0222CF6C */ if (_t91) goto L_0222CFA8; else goto L_0222CF70;
|
|
L_0222CF70: ; // 0x222cf70
|
|
/* 0222CF70 */ cpu->r[3] = cpu->r[30] + 0x00000138u;
|
|
/* 0222CF74 */ Gambit_fn_02C69350(cpu);
|
|
/* 0222CF78 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[31]);
|
|
/* 0222CF7C */ _t92 = cpu->r[30] + 0x00000000u;
|
|
/* 0222CF7C */ cpu->r[12] = rbrew_read32(cpu->mem, _t92);
|
|
/* 0222CF80 */ _t93 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0222CF80 */ _t94 = _t93 & 0x00000001u;
|
|
/* 0222CF80 */ if (_t94) goto L_0222CF84; else goto L_0222CFA0;
|
|
L_0222CF84: ; // 0x222cf84
|
|
/* 0222CF84 */ cpu->f[12] = cpu->f[30] / cpu->f[1];
|
|
/* 0222CF88 */ _t95 = cpu->r[30] + 0x00000140u;
|
|
/* 0222CF88 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t95);
|
|
/* 0222CF8C */ /* nop */
|
|
/* 0222CF90 */ /* nop */
|
|
/* 0222CF94 */ cpu->f[7] = cpu->f[8] * cpu->f[12];
|
|
/* 0222CF98 */ /* nop */
|
|
/* 0222CF9C */ _t96 = cpu->r[30] + 0x000000B0u;
|
|
/* 0222CF9C */ rbrew_write_f32(cpu->mem, _t96, cpu->f[7]);
|
|
L_0222CFA0: ; // 0x222cfa0
|
|
/* 0222CFA0 */ cpu->r[12] = rbrew_rlwinm(cpu->r[12], 0x00000000u, 0x0000001Fu, 0x0000001Du);
|
|
/* 0222CFA4 */ _t97 = cpu->r[30] + 0x00000000u;
|
|
/* 0222CFA4 */ rbrew_write32(cpu->mem, _t97, cpu->r[12]);
|
|
L_0222CFA8: ; // 0x222cfa8
|
|
/* 0222CFA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 0222CFAC */ _t98 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222CFAC */ _t99 = _t98 & 0x00000001u;
|
|
/* 0222CFAC */ if (_t99) goto L_0222D018; else goto L_0222CFB0;
|
|
L_0222CFB0: ; // 0x222cfb0
|
|
/* 0222CFB0 */ goto L_0222D000;
|
|
L_0222CFB4: ; // 0x222cfb4
|
|
/* 0222CFB4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[5], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0222CFB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0222CFB8 */ cpu->r[31] = cpu->r[30] + 0x00000048u;
|
|
/* 0222CFBC */ _t100 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222CFBC */ _t101 = _t100 & 0x00000001u;
|
|
/* 0222CFBC */ if (_t101) goto L_0222CFF8; else goto L_0222CFC0;
|
|
L_0222CFC0: ; // 0x222cfc0
|
|
/* 0222CFC0 */ cpu->r[3] = cpu->r[30] + 0x0000012Cu;
|
|
/* 0222CFC4 */ Gambit_fn_02C69350(cpu);
|
|
/* 0222CFC8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[31]);
|
|
/* 0222CFCC */ _t102 = cpu->r[30] + 0x00000000u;
|
|
/* 0222CFCC */ cpu->r[0] = rbrew_read32(cpu->mem, _t102);
|
|
/* 0222CFD0 */ _t103 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0222CFD0 */ _t104 = _t103 & 0x00000001u;
|
|
/* 0222CFD0 */ if (_t104) goto L_0222CFD4; else goto L_0222CFF0;
|
|
L_0222CFD4: ; // 0x222cfd4
|
|
/* 0222CFD4 */ cpu->f[8] = cpu->f[30] / cpu->f[1];
|
|
/* 0222CFD8 */ _t105 = cpu->r[30] + 0x00000134u;
|
|
/* 0222CFD8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t105);
|
|
/* 0222CFDC */ /* nop */
|
|
/* 0222CFE0 */ /* nop */
|
|
/* 0222CFE4 */ cpu->f[11] = cpu->f[12] * cpu->f[8];
|
|
/* 0222CFE8 */ /* nop */
|
|
/* 0222CFEC */ _t106 = cpu->r[30] + 0x00000050u;
|
|
/* 0222CFEC */ rbrew_write_f32(cpu->mem, _t106, cpu->f[11]);
|
|
L_0222CFF0: ; // 0x222cff0
|
|
/* 0222CFF0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000000u, 0x0000001Eu);
|
|
/* 0222CFF4 */ _t107 = cpu->r[30] + 0x00000000u;
|
|
/* 0222CFF4 */ rbrew_write32(cpu->mem, _t107, cpu->r[0]);
|
|
L_0222CFF8: ; // 0x222cff8
|
|
/* 0222CFF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 0222CFFC */ _t108 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222CFFC */ _t109 = _t108 & 0x00000001u;
|
|
/* 0222CFFC */ if (_t109) goto L_0222D018; else goto L_0222D000;
|
|
L_0222D000: ; // 0x222d000
|
|
/* 0222D000 */ cpu->r[7] = 0x00000001u;
|
|
/* 0222D004 */ cpu->r[6] = cpu->r[31];
|
|
/* 0222D008 */ cpu->r[5] = cpu->r[29] + 0x000000C4u;
|
|
/* 0222D00C */ cpu->r[4] = cpu->r[28];
|
|
/* 0222D010 */ cpu->r[3] = cpu->r[29];
|
|
/* 0222D014 */ Gambit_fn_021BD95C(cpu);
|
|
L_0222D018: ; // 0x222d018
|
|
/* 0222D018 */ _t110 = cpu->r[28] + 0x00000000u;
|
|
/* 0222D018 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t110);
|
|
/* 0222D01C */ _t111 = cpu->r[29] + 0x00000094u;
|
|
/* 0222D01C */ rbrew_write_f32(cpu->mem, _t111, cpu->f[13]);
|
|
/* 0222D020 */ _t112 = cpu->r[28] + 0x00000004u;
|
|
/* 0222D020 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t112);
|
|
/* 0222D024 */ _t113 = cpu->r[29] + 0x00000098u;
|
|
/* 0222D024 */ rbrew_write_f32(cpu->mem, _t113, cpu->f[0]);
|
|
/* 0222D028 */ _t114 = cpu->r[28] + 0x00000008u;
|
|
/* 0222D028 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t114);
|
|
/* 0222D02C */ _t115 = cpu->r[29] + 0x0000009Cu;
|
|
/* 0222D02C */ rbrew_write_f32(cpu->mem, _t115, cpu->f[7]);
|
|
/* 0222D030 */ _t116 = cpu->r[30] + 0x00000040u;
|
|
/* 0222D030 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t116);
|
|
/* 0222D034 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[31], cpu->f[10]);
|
|
/* 0222D038 */ _t117 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222D038 */ _t118 = _t117 & 0x00000001u;
|
|
/* 0222D038 */ if (_t118) goto L_0222D060; else goto L_0222D03C;
|
|
L_0222D03C: ; // 0x222d03c
|
|
/* 0222D03C */ _t119 = cpu->r[30] + 0x00000000u;
|
|
/* 0222D03C */ cpu->r[10] = rbrew_read32(cpu->mem, _t119);
|
|
/* 0222D040 */ _t120 = cpu->r[30] + 0x00000034u;
|
|
/* 0222D040 */ rbrew_write_f32(cpu->mem, _t120, cpu->f[31]);
|
|
/* 0222D044 */ cpu->r[11] = rbrew_rlwinm(cpu->r[10], 0x00000000u, 0x0000001Cu, 0x0000001Cu);
|
|
/* 0222D044 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0222D048 */ _t121 = cpu->r[30] + 0x0000003Cu;
|
|
/* 0222D048 */ rbrew_write_f32(cpu->mem, _t121, cpu->f[31]);
|
|
/* 0222D04C */ _t122 = cpu->r[30] + 0x00000040u;
|
|
/* 0222D04C */ rbrew_write_f32(cpu->mem, _t122, cpu->f[31]);
|
|
/* 0222D050 */ cpu->r[12] = cpu->r[30] + 0x00000034u;
|
|
/* 0222D054 */ _t123 = cpu->r[30] + 0x00000038u;
|
|
/* 0222D054 */ rbrew_write_f32(cpu->mem, _t123, cpu->f[31]);
|
|
/* 0222D058 */ _t124 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222D058 */ _t125 = _t124 & 0x00000001u;
|
|
/* 0222D058 */ if (_t125) goto L_0222D05C; else goto L_0222D0BC;
|
|
L_0222D05C: ; // 0x222d05c
|
|
/* 0222D05C */ goto L_0222D0E0;
|
|
L_0222D060: ; // 0x222d060
|
|
/* 0222D060 */ _t126 = cpu->r[30] + 0x00000000u;
|
|
/* 0222D060 */ cpu->r[10] = rbrew_read32(cpu->mem, _t126);
|
|
/* 0222D064 */ cpu->r[6] = rbrew_rlwinm(cpu->r[10], 0x00000000u, 0x0000001Bu, 0x0000001Cu);
|
|
/* 0222D064 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 0222D068 */ _t127 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222D068 */ _t128 = _t127 & 0x00000001u;
|
|
/* 0222D068 */ if (_t128) goto L_0222D06C; else goto L_0222D0A0;
|
|
L_0222D06C: ; // 0x222d06c
|
|
/* 0222D06C */ /* nop */
|
|
/* 0222D070 */ /* nop */
|
|
/* 0222D074 */ _t129 = cpu->r[29] + 0x0000009Cu;
|
|
/* 0222D074 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t129);
|
|
/* 0222D078 */ /* nop */
|
|
/* 0222D07C */ /* nop */
|
|
/* 0222D080 */ _t130 = cpu->r[30] + 0x0000003Cu;
|
|
/* 0222D080 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t130);
|
|
/* 0222D084 */ cpu->f[10] = cpu->f[10] + cpu->f[11];
|
|
/* 0222D088 */ _t131 = cpu->r[29] + 0x0000009Cu;
|
|
/* 0222D088 */ rbrew_write_f32(cpu->mem, _t131, cpu->f[10]);
|
|
/* 0222D08C */ _t132 = cpu->r[30] + 0x00000040u;
|
|
/* 0222D08C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t132);
|
|
/* 0222D090 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[31], cpu->f[12]);
|
|
/* 0222D094 */ cpu->r[12] = cpu->r[30] + 0x00000034u;
|
|
/* 0222D098 */ _t133 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222D098 */ _t134 = _t133 & 0x00000001u;
|
|
/* 0222D098 */ if (_t134) goto L_0222D280; else goto L_0222D09C;
|
|
L_0222D09C: ; // 0x222d09c
|
|
/* 0222D09C */ goto L_0222D260;
|
|
L_0222D0A0: ; // 0x222d0a0
|
|
/* 0222D0A0 */ _t135 = cpu->r[30] + 0x00000000u;
|
|
/* 0222D0A0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t135);
|
|
/* 0222D0A4 */ _t136 = cpu->r[30] + 0x00000038u;
|
|
/* 0222D0A4 */ rbrew_write_f32(cpu->mem, _t136, cpu->f[31]);
|
|
/* 0222D0A8 */ cpu->r[11] = rbrew_rlwinm(cpu->r[10], 0x00000000u, 0x0000001Cu, 0x0000001Cu);
|
|
/* 0222D0A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0222D0AC */ _t137 = cpu->r[30] + 0x00000034u;
|
|
/* 0222D0AC */ rbrew_write_f32(cpu->mem, _t137, cpu->f[31]);
|
|
/* 0222D0B0 */ cpu->r[12] = cpu->r[30] + 0x00000034u;
|
|
/* 0222D0B4 */ _t138 = cpu->r[30] + 0x0000003Cu;
|
|
/* 0222D0B4 */ rbrew_write_f32(cpu->mem, _t138, cpu->f[31]);
|
|
/* 0222D0B8 */ _t139 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222D0B8 */ _t140 = _t139 & 0x00000001u;
|
|
/* 0222D0B8 */ if (_t140) goto L_0222D0E0; else goto L_0222D0BC;
|
|
L_0222D0BC: ; // 0x222d0bc
|
|
/* 0222D0BC */ /* nop */
|
|
/* 0222D0C0 */ /* nop */
|
|
/* 0222D0C4 */ /* nop */
|
|
/* 0222D0C8 */ /* nop */
|
|
/* 0222D0CC */ _t141 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0222D0CC */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t141);
|
|
/* 0222D0D0 */ _t142 = cpu->r[30] + 0x00000018u;
|
|
/* 0222D0D0 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t142);
|
|
/* 0222D0D4 */ cpu->f[0] = cpu->f[6] + cpu->f[7];
|
|
/* 0222D0D8 */ _t143 = cpu->r[12] + 0x00000008u;
|
|
/* 0222D0D8 */ rbrew_write_f32(cpu->mem, _t143, cpu->f[0]);
|
|
/* 0222D0DC */ _t144 = cpu->r[30] + 0x00000000u;
|
|
/* 0222D0DC */ cpu->r[10] = rbrew_read32(cpu->mem, _t144);
|
|
L_0222D0E0: ; // 0x222d0e0
|
|
/* 0222D0E0 */ cpu->r[4] = rbrew_rlwinm(cpu->r[10], 0x00000000u, 0x0000001Bu, 0x0000001Bu);
|
|
/* 0222D0E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 0222D0E4 */ _t145 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222D0E4 */ _t146 = _t145 & 0x00000001u;
|
|
/* 0222D0E4 */ if (_t146) goto L_0222D22C; else goto L_0222D0E8;
|
|
L_0222D0E8: ; // 0x222d0e8
|
|
/* 0222D0E8 */ _t147 = cpu->r[12] + 0x00000000u;
|
|
/* 0222D0E8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t147);
|
|
/* 0222D0EC */ _t148 = cpu->r[30] + 0x00000040u;
|
|
/* 0222D0EC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t148);
|
|
/* 0222D0F0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[31]);
|
|
/* 0222D0F4 */ _t149 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0222D0F4 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t149);
|
|
/* 0222D0F8 */ _t150 = cpu->r[30] + 0x00000028u;
|
|
/* 0222D0F8 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t150);
|
|
/* 0222D0FC */ _t151 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0222D0FC */ _t152 = _t151 & 0x00000001u;
|
|
/* 0222D0FC */ if (_t152) goto L_0222D100; else goto L_0222D124;
|
|
L_0222D100: ; // 0x222d100
|
|
/* 0222D100 */ cpu->f[9] = cpu->f[7] - cpu->f[10];
|
|
/* 0222D104 */ /* nop */
|
|
/* 0222D108 */ cpu->f[0] = fma(cpu->f[6], cpu->f[12], cpu->f[11]);
|
|
/* 0222D10C */ _t153 = cpu->r[12] + 0x00000004u;
|
|
/* 0222D10C */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t153);
|
|
/* 0222D110 */ _t154 = cpu->r[30] + 0x0000002Cu;
|
|
/* 0222D110 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t154);
|
|
/* 0222D114 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[6], cpu->f[31]);
|
|
/* 0222D118 */ _t155 = cpu->r[30] + 0x00000020u;
|
|
/* 0222D118 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t155);
|
|
/* 0222D11C */ _t156 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0222D11C */ _t157 = _t156 & 0x00000001u;
|
|
/* 0222D11C */ if (_t157) goto L_0222D120; else goto L_0222D18C;
|
|
L_0222D120: ; // 0x222d120
|
|
/* 0222D120 */ goto L_0222D168;
|
|
L_0222D124: ; // 0x222d124
|
|
/* 0222D124 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[31]);
|
|
/* 0222D128 */ _t158 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0222D128 */ _t159 = _t158 & 0x00000001u;
|
|
/* 0222D128 */ if (_t159) goto L_0222D12C; else goto L_0222D150;
|
|
L_0222D12C: ; // 0x222d12c
|
|
/* 0222D12C */ cpu->f[13] = cpu->f[6] - cpu->f[10];
|
|
/* 0222D130 */ /* nop */
|
|
/* 0222D134 */ _t160 = cpu->r[12] + 0x00000004u;
|
|
/* 0222D134 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t160);
|
|
/* 0222D138 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[6], cpu->f[31]);
|
|
/* 0222D13C */ _t161 = cpu->r[30] + 0x00000020u;
|
|
/* 0222D13C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t161);
|
|
/* 0222D140 */ cpu->f[0] = fma(cpu->f[7], cpu->f[12], cpu->f[0]);
|
|
/* 0222D144 */ _t162 = cpu->r[30] + 0x0000002Cu;
|
|
/* 0222D144 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t162);
|
|
/* 0222D148 */ _t163 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0222D148 */ _t164 = _t163 & 0x00000001u;
|
|
/* 0222D148 */ if (_t164) goto L_0222D14C; else goto L_0222D18C;
|
|
L_0222D14C: ; // 0x222d14c
|
|
/* 0222D14C */ goto L_0222D168;
|
|
L_0222D150: ; // 0x222d150
|
|
/* 0222D150 */ cpu->f[0] = cpu->f[6] + cpu->f[7];
|
|
/* 0222D154 */ _t165 = cpu->r[12] + 0x00000004u;
|
|
/* 0222D154 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t165);
|
|
/* 0222D158 */ _t166 = cpu->r[30] + 0x00000020u;
|
|
/* 0222D158 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t166);
|
|
/* 0222D15C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[6], cpu->f[31]);
|
|
/* 0222D160 */ _t167 = cpu->r[30] + 0x0000002Cu;
|
|
/* 0222D160 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t167);
|
|
/* 0222D164 */ _t168 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0222D164 */ _t169 = _t168 & 0x00000001u;
|
|
/* 0222D164 */ if (_t169) goto L_0222D168; else goto L_0222D18C;
|
|
L_0222D168: ; // 0x222d168
|
|
/* 0222D168 */ cpu->f[8] = cpu->f[7] - cpu->f[6];
|
|
/* 0222D16C */ /* nop */
|
|
/* 0222D170 */ _t170 = cpu->r[12] + 0x00000008u;
|
|
/* 0222D170 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t170);
|
|
/* 0222D174 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[31]);
|
|
/* 0222D178 */ _t171 = cpu->r[30] + 0x00000030u;
|
|
/* 0222D178 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t171);
|
|
/* 0222D17C */ cpu->f[7] = fma(cpu->f[13], cpu->f[12], cpu->f[9]);
|
|
/* 0222D180 */ _t172 = cpu->r[30] + 0x00000024u;
|
|
/* 0222D180 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t172);
|
|
/* 0222D184 */ _t173 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0222D184 */ _t174 = _t173 & 0x00000001u;
|
|
/* 0222D184 */ if (_t174) goto L_0222D188; else goto L_0222D1F0;
|
|
L_0222D188: ; // 0x222d188
|
|
/* 0222D188 */ goto L_0222D1D0;
|
|
L_0222D18C: ; // 0x222d18c
|
|
/* 0222D18C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[6], cpu->f[31]);
|
|
/* 0222D190 */ _t175 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0222D190 */ _t176 = _t175 & 0x00000001u;
|
|
/* 0222D190 */ if (_t176) goto L_0222D194; else goto L_0222D1B8;
|
|
L_0222D194: ; // 0x222d194
|
|
/* 0222D194 */ cpu->f[10] = cpu->f[13] - cpu->f[6];
|
|
/* 0222D198 */ _t177 = cpu->r[12] + 0x00000008u;
|
|
/* 0222D198 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t177);
|
|
/* 0222D19C */ /* nop */
|
|
/* 0222D1A0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[31]);
|
|
/* 0222D1A4 */ _t178 = cpu->r[30] + 0x00000024u;
|
|
/* 0222D1A4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t178);
|
|
/* 0222D1A8 */ cpu->f[7] = fma(cpu->f[7], cpu->f[12], cpu->f[11]);
|
|
/* 0222D1AC */ _t179 = cpu->r[30] + 0x00000030u;
|
|
/* 0222D1AC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t179);
|
|
/* 0222D1B0 */ _t180 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0222D1B0 */ _t181 = _t180 & 0x00000001u;
|
|
/* 0222D1B0 */ if (_t181) goto L_0222D1B4; else goto L_0222D1F0;
|
|
L_0222D1B4: ; // 0x222d1b4
|
|
/* 0222D1B4 */ goto L_0222D1D0;
|
|
L_0222D1B8: ; // 0x222d1b8
|
|
/* 0222D1B8 */ _t182 = cpu->r[12] + 0x00000008u;
|
|
/* 0222D1B8 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t182);
|
|
/* 0222D1BC */ _t183 = cpu->r[30] + 0x00000024u;
|
|
/* 0222D1BC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t183);
|
|
/* 0222D1C0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[31]);
|
|
/* 0222D1C4 */ _t184 = cpu->r[30] + 0x00000030u;
|
|
/* 0222D1C4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t184);
|
|
/* 0222D1C8 */ cpu->f[7] = cpu->f[13] + cpu->f[7];
|
|
/* 0222D1CC */ _t185 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0222D1CC */ _t186 = _t185 & 0x00000001u;
|
|
/* 0222D1CC */ if (_t186) goto L_0222D1D0; else goto L_0222D1F0;
|
|
L_0222D1D0: ; // 0x222d1d0
|
|
/* 0222D1D0 */ cpu->f[9] = cpu->f[11] - cpu->f[8];
|
|
/* 0222D1D4 */ /* nop */
|
|
/* 0222D1D8 */ _t187 = cpu->r[12] + 0x00000004u;
|
|
/* 0222D1D8 */ rbrew_write_f32(cpu->mem, _t187, cpu->f[7]);
|
|
/* 0222D1DC */ cpu->f[9] = fma(cpu->f[10], cpu->f[12], cpu->f[13]);
|
|
/* 0222D1E0 */ _t188 = cpu->r[12] + 0x00000000u;
|
|
/* 0222D1E0 */ rbrew_write_f32(cpu->mem, _t188, cpu->f[0]);
|
|
/* 0222D1E4 */ _t189 = cpu->r[12] + 0x00000008u;
|
|
/* 0222D1E4 */ rbrew_write_f32(cpu->mem, _t189, cpu->f[9]);
|
|
/* 0222D1E8 */ _t190 = cpu->r[30] + 0x00000000u;
|
|
/* 0222D1E8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t190);
|
|
/* 0222D1EC */ goto L_0222D22C;
|
|
L_0222D1F0: ; // 0x222d1f0
|
|
/* 0222D1F0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[31]);
|
|
/* 0222D1F4 */ _t191 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0222D1F4 */ _t192 = _t191 & 0x00000001u;
|
|
/* 0222D1F4 */ if (_t192) goto L_0222D1F8; else goto L_0222D218;
|
|
L_0222D1F8: ; // 0x222d1f8
|
|
/* 0222D1F8 */ cpu->f[6] = cpu->f[10] - cpu->f[8];
|
|
/* 0222D1FC */ /* nop */
|
|
/* 0222D200 */ _t193 = cpu->r[12] + 0x00000004u;
|
|
/* 0222D200 */ rbrew_write_f32(cpu->mem, _t193, cpu->f[7]);
|
|
/* 0222D204 */ cpu->f[9] = fma(cpu->f[11], cpu->f[12], cpu->f[9]);
|
|
/* 0222D208 */ _t194 = cpu->r[12] + 0x00000000u;
|
|
/* 0222D208 */ rbrew_write_f32(cpu->mem, _t194, cpu->f[0]);
|
|
/* 0222D20C */ _t195 = cpu->r[12] + 0x00000008u;
|
|
/* 0222D20C */ rbrew_write_f32(cpu->mem, _t195, cpu->f[9]);
|
|
/* 0222D210 */ _t196 = cpu->r[30] + 0x00000000u;
|
|
/* 0222D210 */ cpu->r[10] = rbrew_read32(cpu->mem, _t196);
|
|
/* 0222D214 */ goto L_0222D22C;
|
|
L_0222D218: ; // 0x222d218
|
|
/* 0222D218 */ cpu->f[9] = cpu->f[10] + cpu->f[11];
|
|
/* 0222D21C */ _t197 = cpu->r[12] + 0x00000004u;
|
|
/* 0222D21C */ rbrew_write_f32(cpu->mem, _t197, cpu->f[7]);
|
|
/* 0222D220 */ _t198 = cpu->r[12] + 0x00000000u;
|
|
/* 0222D220 */ rbrew_write_f32(cpu->mem, _t198, cpu->f[0]);
|
|
/* 0222D224 */ _t199 = cpu->r[12] + 0x00000008u;
|
|
/* 0222D224 */ rbrew_write_f32(cpu->mem, _t199, cpu->f[9]);
|
|
/* 0222D228 */ _t200 = cpu->r[30] + 0x00000000u;
|
|
/* 0222D228 */ cpu->r[10] = rbrew_read32(cpu->mem, _t200);
|
|
L_0222D22C: ; // 0x222d22c
|
|
/* 0222D22C */ cpu->r[11] = rbrew_rlwinm(cpu->r[10], 0x00000000u, 0x0000001Du, 0x0000001Au);
|
|
/* 0222D230 */ _t201 = cpu->r[30] + 0x00000000u;
|
|
/* 0222D230 */ rbrew_write32(cpu->mem, _t201, cpu->r[11]);
|
|
/* 0222D234 */ /* nop */
|
|
/* 0222D238 */ /* nop */
|
|
/* 0222D23C */ /* nop */
|
|
/* 0222D240 */ /* nop */
|
|
/* 0222D244 */ _t202 = cpu->r[12] + 0x00000008u;
|
|
/* 0222D244 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t202);
|
|
/* 0222D248 */ _t203 = cpu->r[29] + 0x0000009Cu;
|
|
/* 0222D248 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t203);
|
|
/* 0222D24C */ cpu->f[10] = cpu->f[10] + cpu->f[11];
|
|
/* 0222D250 */ _t204 = cpu->r[29] + 0x0000009Cu;
|
|
/* 0222D250 */ rbrew_write_f32(cpu->mem, _t204, cpu->f[10]);
|
|
/* 0222D254 */ _t205 = cpu->r[30] + 0x00000040u;
|
|
/* 0222D254 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t205);
|
|
/* 0222D258 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[31], cpu->f[12]);
|
|
/* 0222D25C */ _t206 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222D25C */ _t207 = _t206 & 0x00000001u;
|
|
/* 0222D25C */ if (_t207) goto L_0222D280; else goto L_0222D260;
|
|
L_0222D260: ; // 0x222d260
|
|
/* 0222D260 */ _t208 = cpu->r[30] + 0x00000040u;
|
|
/* 0222D260 */ rbrew_write_f32(cpu->mem, _t208, cpu->f[31]);
|
|
/* 0222D264 */ _t209 = cpu->r[12] + 0x00000000u;
|
|
/* 0222D264 */ rbrew_write_f32(cpu->mem, _t209, cpu->f[31]);
|
|
/* 0222D268 */ _t210 = cpu->r[12] + 0x00000004u;
|
|
/* 0222D268 */ rbrew_write_f32(cpu->mem, _t210, cpu->f[31]);
|
|
/* 0222D26C */ _t211 = cpu->r[12] + 0x00000008u;
|
|
/* 0222D26C */ rbrew_write_f32(cpu->mem, _t211, cpu->f[31]);
|
|
/* 0222D270 */ _t212 = cpu->r[30] + 0x00000000u;
|
|
/* 0222D270 */ cpu->r[10] = rbrew_read32(cpu->mem, _t212);
|
|
/* 0222D274 */ cpu->r[9] = rbrew_rlwinm(cpu->r[10], 0x00000000u, 0x0000001Cu, 0x0000001Cu);
|
|
/* 0222D274 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0222D278 */ _t213 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222D278 */ _t214 = _t213 & 0x00000001u;
|
|
/* 0222D278 */ if (_t214) goto L_0222D27C; else goto L_0222D2A4;
|
|
L_0222D27C: ; // 0x222d27c
|
|
/* 0222D27C */ goto L_0222D2C8;
|
|
L_0222D280: ; // 0x222d280
|
|
/* 0222D280 */ _t215 = cpu->r[30] + 0x00000000u;
|
|
/* 0222D280 */ cpu->r[7] = rbrew_read32(cpu->mem, _t215);
|
|
/* 0222D284 */ cpu->r[5] = rbrew_rlwinm(cpu->r[7], 0x00000000u, 0x0000001Bu, 0x0000001Cu);
|
|
/* 0222D284 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 0222D288 */ _t216 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222D288 */ _t217 = _t216 & 0x00000001u;
|
|
/* 0222D288 */ if (_t217) goto L_0222D41C; else goto L_0222D28C;
|
|
L_0222D28C: ; // 0x222d28c
|
|
/* 0222D28C */ _t218 = cpu->r[12] + 0x00000008u;
|
|
/* 0222D28C */ rbrew_write_f32(cpu->mem, _t218, cpu->f[31]);
|
|
/* 0222D290 */ _t219 = cpu->r[12] + 0x00000004u;
|
|
/* 0222D290 */ rbrew_write_f32(cpu->mem, _t219, cpu->f[31]);
|
|
/* 0222D294 */ _t220 = cpu->r[12] + 0x00000000u;
|
|
/* 0222D294 */ rbrew_write_f32(cpu->mem, _t220, cpu->f[31]);
|
|
/* 0222D298 */ _t221 = cpu->r[30] + 0x00000000u;
|
|
/* 0222D298 */ cpu->r[10] = rbrew_read32(cpu->mem, _t221);
|
|
/* 0222D29C */ cpu->r[9] = rbrew_rlwinm(cpu->r[10], 0x00000000u, 0x0000001Cu, 0x0000001Cu);
|
|
/* 0222D29C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0222D2A0 */ _t222 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222D2A0 */ _t223 = _t222 & 0x00000001u;
|
|
/* 0222D2A0 */ if (_t223) goto L_0222D2C8; else goto L_0222D2A4;
|
|
L_0222D2A4: ; // 0x222d2a4
|
|
/* 0222D2A4 */ /* nop */
|
|
/* 0222D2A8 */ /* nop */
|
|
/* 0222D2AC */ /* nop */
|
|
/* 0222D2B0 */ /* nop */
|
|
/* 0222D2B4 */ _t224 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0222D2B4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t224);
|
|
/* 0222D2B8 */ _t225 = cpu->r[30] + 0x00000018u;
|
|
/* 0222D2B8 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t225);
|
|
/* 0222D2BC */ cpu->f[12] = cpu->f[0] + cpu->f[6];
|
|
/* 0222D2C0 */ _t226 = cpu->r[12] + 0x00000008u;
|
|
/* 0222D2C0 */ rbrew_write_f32(cpu->mem, _t226, cpu->f[12]);
|
|
/* 0222D2C4 */ _t227 = cpu->r[30] + 0x00000000u;
|
|
/* 0222D2C4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t227);
|
|
L_0222D2C8: ; // 0x222d2c8
|
|
/* 0222D2C8 */ cpu->r[7] = rbrew_rlwinm(cpu->r[10], 0x00000000u, 0x0000001Bu, 0x0000001Bu);
|
|
/* 0222D2C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0222D2CC */ _t228 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222D2CC */ _t229 = _t228 & 0x00000001u;
|
|
/* 0222D2CC */ if (_t229) goto L_0222D414; else goto L_0222D2D0;
|
|
L_0222D2D0: ; // 0x222d2d0
|
|
/* 0222D2D0 */ _t230 = cpu->r[12] + 0x00000000u;
|
|
/* 0222D2D0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t230);
|
|
/* 0222D2D4 */ _t231 = cpu->r[30] + 0x00000040u;
|
|
/* 0222D2D4 */ cpu->f[4] = rbrew_read_f32(cpu->mem, _t231);
|
|
/* 0222D2D8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[31]);
|
|
/* 0222D2DC */ _t232 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0222D2DC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t232);
|
|
/* 0222D2E0 */ _t233 = cpu->r[30] + 0x00000028u;
|
|
/* 0222D2E0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t233);
|
|
/* 0222D2E4 */ _t234 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0222D2E4 */ _t235 = _t234 & 0x00000001u;
|
|
/* 0222D2E4 */ if (_t235) goto L_0222D2E8; else goto L_0222D30C;
|
|
L_0222D2E8: ; // 0x222d2e8
|
|
/* 0222D2E8 */ cpu->f[7] = cpu->f[12] - cpu->f[10];
|
|
/* 0222D2EC */ _t236 = cpu->r[12] + 0x00000004u;
|
|
/* 0222D2EC */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t236);
|
|
/* 0222D2F0 */ /* nop */
|
|
/* 0222D2F4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[6], cpu->f[31]);
|
|
/* 0222D2F8 */ _t237 = cpu->r[30] + 0x0000002Cu;
|
|
/* 0222D2F8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t237);
|
|
/* 0222D2FC */ cpu->f[5] = fma(cpu->f[11], cpu->f[4], cpu->f[8]);
|
|
/* 0222D300 */ _t238 = cpu->r[30] + 0x00000020u;
|
|
/* 0222D300 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t238);
|
|
/* 0222D304 */ _t239 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0222D304 */ _t240 = _t239 & 0x00000001u;
|
|
/* 0222D304 */ if (_t240) goto L_0222D308; else goto L_0222D374;
|
|
L_0222D308: ; // 0x222d308
|
|
/* 0222D308 */ goto L_0222D350;
|
|
L_0222D30C: ; // 0x222d30c
|
|
/* 0222D30C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[31]);
|
|
/* 0222D310 */ _t241 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0222D310 */ _t242 = _t241 & 0x00000001u;
|
|
/* 0222D310 */ if (_t242) goto L_0222D314; else goto L_0222D338;
|
|
L_0222D314: ; // 0x222d314
|
|
/* 0222D314 */ cpu->f[9] = cpu->f[11] - cpu->f[10];
|
|
/* 0222D318 */ _t243 = cpu->r[12] + 0x00000004u;
|
|
/* 0222D318 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t243);
|
|
/* 0222D31C */ /* nop */
|
|
/* 0222D320 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[6], cpu->f[31]);
|
|
/* 0222D324 */ _t244 = cpu->r[30] + 0x0000002Cu;
|
|
/* 0222D324 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t244);
|
|
/* 0222D328 */ cpu->f[5] = fma(cpu->f[12], cpu->f[4], cpu->f[10]);
|
|
/* 0222D32C */ _t245 = cpu->r[30] + 0x00000020u;
|
|
/* 0222D32C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t245);
|
|
/* 0222D330 */ _t246 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0222D330 */ _t247 = _t246 & 0x00000001u;
|
|
/* 0222D330 */ if (_t247) goto L_0222D334; else goto L_0222D374;
|
|
L_0222D334: ; // 0x222d334
|
|
/* 0222D334 */ goto L_0222D350;
|
|
L_0222D338: ; // 0x222d338
|
|
/* 0222D338 */ _t248 = cpu->r[12] + 0x00000004u;
|
|
/* 0222D338 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t248);
|
|
/* 0222D33C */ cpu->f[5] = cpu->f[11] + cpu->f[12];
|
|
/* 0222D340 */ _t249 = cpu->r[30] + 0x0000002Cu;
|
|
/* 0222D340 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t249);
|
|
/* 0222D344 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[6], cpu->f[31]);
|
|
/* 0222D348 */ _t250 = cpu->r[30] + 0x00000020u;
|
|
/* 0222D348 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t250);
|
|
/* 0222D34C */ _t251 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0222D34C */ _t252 = _t251 & 0x00000001u;
|
|
/* 0222D34C */ if (_t252) goto L_0222D350; else goto L_0222D374;
|
|
L_0222D350: ; // 0x222d350
|
|
/* 0222D350 */ cpu->f[13] = cpu->f[0] - cpu->f[6];
|
|
/* 0222D354 */ _t253 = cpu->r[12] + 0x00000008u;
|
|
/* 0222D354 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t253);
|
|
/* 0222D358 */ /* nop */
|
|
/* 0222D35C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[31]);
|
|
/* 0222D360 */ _t254 = cpu->r[30] + 0x00000030u;
|
|
/* 0222D360 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t254);
|
|
/* 0222D364 */ cpu->f[7] = fma(cpu->f[12], cpu->f[4], cpu->f[6]);
|
|
/* 0222D368 */ _t255 = cpu->r[30] + 0x00000024u;
|
|
/* 0222D368 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t255);
|
|
/* 0222D36C */ _t256 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0222D36C */ _t257 = _t256 & 0x00000001u;
|
|
/* 0222D36C */ if (_t257) goto L_0222D370; else goto L_0222D3D8;
|
|
L_0222D370: ; // 0x222d370
|
|
/* 0222D370 */ goto L_0222D3B8;
|
|
L_0222D374: ; // 0x222d374
|
|
/* 0222D374 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[6], cpu->f[31]);
|
|
/* 0222D378 */ _t258 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0222D378 */ _t259 = _t258 & 0x00000001u;
|
|
/* 0222D378 */ if (_t259) goto L_0222D37C; else goto L_0222D3A0;
|
|
L_0222D37C: ; // 0x222d37c
|
|
/* 0222D37C */ cpu->f[7] = cpu->f[12] - cpu->f[6];
|
|
/* 0222D380 */ /* nop */
|
|
/* 0222D384 */ cpu->f[7] = fma(cpu->f[0], cpu->f[4], cpu->f[8]);
|
|
/* 0222D388 */ _t260 = cpu->r[12] + 0x00000008u;
|
|
/* 0222D388 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t260);
|
|
/* 0222D38C */ _t261 = cpu->r[30] + 0x00000030u;
|
|
/* 0222D38C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t261);
|
|
/* 0222D390 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[31]);
|
|
/* 0222D394 */ _t262 = cpu->r[30] + 0x00000024u;
|
|
/* 0222D394 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t262);
|
|
/* 0222D398 */ _t263 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0222D398 */ _t264 = _t263 & 0x00000001u;
|
|
/* 0222D398 */ if (_t264) goto L_0222D39C; else goto L_0222D3D8;
|
|
L_0222D39C: ; // 0x222d39c
|
|
/* 0222D39C */ goto L_0222D3B8;
|
|
L_0222D3A0: ; // 0x222d3a0
|
|
/* 0222D3A0 */ _t265 = cpu->r[12] + 0x00000008u;
|
|
/* 0222D3A0 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t265);
|
|
/* 0222D3A4 */ cpu->f[7] = cpu->f[12] + cpu->f[0];
|
|
/* 0222D3A8 */ _t266 = cpu->r[30] + 0x00000024u;
|
|
/* 0222D3A8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t266);
|
|
/* 0222D3AC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[31]);
|
|
/* 0222D3B0 */ _t267 = cpu->r[30] + 0x00000030u;
|
|
/* 0222D3B0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t267);
|
|
/* 0222D3B4 */ _t268 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0222D3B4 */ _t269 = _t268 & 0x00000001u;
|
|
/* 0222D3B4 */ if (_t269) goto L_0222D3B8; else goto L_0222D3D8;
|
|
L_0222D3B8: ; // 0x222d3b8
|
|
/* 0222D3B8 */ cpu->f[9] = cpu->f[0] - cpu->f[8];
|
|
/* 0222D3BC */ /* nop */
|
|
/* 0222D3C0 */ _t270 = cpu->r[12] + 0x00000004u;
|
|
/* 0222D3C0 */ rbrew_write_f32(cpu->mem, _t270, cpu->f[7]);
|
|
/* 0222D3C4 */ cpu->f[13] = fma(cpu->f[13], cpu->f[4], cpu->f[10]);
|
|
/* 0222D3C8 */ _t271 = cpu->r[12] + 0x00000000u;
|
|
/* 0222D3C8 */ rbrew_write_f32(cpu->mem, _t271, cpu->f[5]);
|
|
/* 0222D3CC */ _t272 = cpu->r[12] + 0x00000008u;
|
|
/* 0222D3CC */ rbrew_write_f32(cpu->mem, _t272, cpu->f[13]);
|
|
/* 0222D3D0 */ _t273 = cpu->r[30] + 0x00000000u;
|
|
/* 0222D3D0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t273);
|
|
/* 0222D3D4 */ goto L_0222D414;
|
|
L_0222D3D8: ; // 0x222d3d8
|
|
/* 0222D3D8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[31]);
|
|
/* 0222D3DC */ _t274 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0222D3DC */ _t275 = _t274 & 0x00000001u;
|
|
/* 0222D3DC */ if (_t275) goto L_0222D3E0; else goto L_0222D400;
|
|
L_0222D3E0: ; // 0x222d3e0
|
|
/* 0222D3E0 */ cpu->f[11] = cpu->f[13] - cpu->f[8];
|
|
/* 0222D3E4 */ /* nop */
|
|
/* 0222D3E8 */ _t276 = cpu->r[12] + 0x00000004u;
|
|
/* 0222D3E8 */ rbrew_write_f32(cpu->mem, _t276, cpu->f[7]);
|
|
/* 0222D3EC */ cpu->f[13] = fma(cpu->f[0], cpu->f[4], cpu->f[12]);
|
|
/* 0222D3F0 */ _t277 = cpu->r[12] + 0x00000000u;
|
|
/* 0222D3F0 */ rbrew_write_f32(cpu->mem, _t277, cpu->f[5]);
|
|
/* 0222D3F4 */ _t278 = cpu->r[12] + 0x00000008u;
|
|
/* 0222D3F4 */ rbrew_write_f32(cpu->mem, _t278, cpu->f[13]);
|
|
/* 0222D3F8 */ _t279 = cpu->r[30] + 0x00000000u;
|
|
/* 0222D3F8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t279);
|
|
/* 0222D3FC */ goto L_0222D414;
|
|
L_0222D400: ; // 0x222d400
|
|
/* 0222D400 */ cpu->f[13] = cpu->f[13] + cpu->f[0];
|
|
/* 0222D404 */ _t280 = cpu->r[12] + 0x00000004u;
|
|
/* 0222D404 */ rbrew_write_f32(cpu->mem, _t280, cpu->f[7]);
|
|
/* 0222D408 */ _t281 = cpu->r[12] + 0x00000000u;
|
|
/* 0222D408 */ rbrew_write_f32(cpu->mem, _t281, cpu->f[5]);
|
|
/* 0222D40C */ _t282 = cpu->r[12] + 0x00000008u;
|
|
/* 0222D40C */ rbrew_write_f32(cpu->mem, _t282, cpu->f[13]);
|
|
/* 0222D410 */ _t283 = cpu->r[30] + 0x00000000u;
|
|
/* 0222D410 */ cpu->r[10] = rbrew_read32(cpu->mem, _t283);
|
|
L_0222D414: ; // 0x222d414
|
|
/* 0222D414 */ cpu->r[11] = rbrew_rlwinm(cpu->r[10], 0x00000000u, 0x0000001Du, 0x0000001Au);
|
|
/* 0222D418 */ _t284 = cpu->r[30] + 0x00000000u;
|
|
/* 0222D418 */ rbrew_write32(cpu->mem, _t284, cpu->r[11]);
|
|
L_0222D41C: ; // 0x222d41c
|
|
/* 0222D41C */ /* nop */
|
|
/* 0222D420 */ /* nop */
|
|
/* 0222D424 */ /* nop */
|
|
/* 0222D428 */ /* nop */
|
|
/* 0222D42C */ _t285 = cpu->r[12] + 0x00000008u;
|
|
/* 0222D42C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t285);
|
|
/* 0222D430 */ _t286 = cpu->r[29] + 0x00000104u;
|
|
/* 0222D430 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t286);
|
|
/* 0222D434 */ cpu->f[12] = cpu->f[12] + cpu->f[13];
|
|
/* 0222D438 */ _t287 = cpu->r[29] + 0x00000104u;
|
|
/* 0222D438 */ rbrew_write_f32(cpu->mem, _t287, cpu->f[12]);
|
|
/* 0222D43C */ _t288 = cpu->r[30] + 0x0000015Cu;
|
|
/* 0222D43C */ cpu->r[0] = rbrew_read32(cpu->mem, _t288);
|
|
/* 0222D440 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Bu);
|
|
/* 0222D440 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0222D444 */ _t289 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222D444 */ _t290 = _t289 & 0x00000001u;
|
|
/* 0222D444 */ if (_t290) goto L_0222D498; else goto L_0222D448;
|
|
L_0222D448: ; // 0x222d448
|
|
/* 0222D448 */ _t291 = cpu->r[30] + 0x000000C0u;
|
|
/* 0222D448 */ cpu->r[8] = rbrew_read32(cpu->mem, _t291);
|
|
/* 0222D44C */ _t292 = cpu->r[1] + 0x00000060u;
|
|
/* 0222D44C */ rbrew_write32(cpu->mem, _t292, cpu->r[8]);
|
|
/* 0222D450 */ _t293 = cpu->r[30] + 0x000000C4u;
|
|
/* 0222D450 */ cpu->r[9] = rbrew_read32(cpu->mem, _t293);
|
|
/* 0222D454 */ _t294 = cpu->r[29] + 0x00000004u;
|
|
/* 0222D454 */ cpu->r[28] = rbrew_read32(cpu->mem, _t294);
|
|
/* 0222D458 */ _t295 = cpu->r[1] + 0x00000064u;
|
|
/* 0222D458 */ rbrew_write32(cpu->mem, _t295, cpu->r[9]);
|
|
/* 0222D45C */ _t296 = cpu->r[30] + 0x000000C8u;
|
|
/* 0222D45C */ cpu->r[11] = rbrew_read32(cpu->mem, _t296);
|
|
/* 0222D460 */ _t297 = cpu->r[1] + 0x00000068u;
|
|
/* 0222D460 */ rbrew_write32(cpu->mem, _t297, cpu->r[11]);
|
|
/* 0222D464 */ _t298 = cpu->r[28] + 0x0000025Cu;
|
|
/* 0222D464 */ cpu->r[4] = rbrew_read32(cpu->mem, _t298);
|
|
/* 0222D468 */ cpu->ctr = cpu->r[4];
|
|
/* 0222D46C */ cpu->r[3] = cpu->r[29];
|
|
/* 0222D470 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222D474 */ _t299 = cpu->r[28] + 0x0000042Cu;
|
|
/* 0222D474 */ cpu->r[6] = rbrew_read32(cpu->mem, _t299);
|
|
/* 0222D478 */ cpu->r[4] = cpu->r[3];
|
|
/* 0222D47C */ cpu->ctr = cpu->r[6];
|
|
/* 0222D480 */ cpu->r[3] = cpu->r[29];
|
|
/* 0222D484 */ cpu->r[5] = cpu->r[31];
|
|
/* 0222D488 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222D48C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0222D490 */ _t300 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222D490 */ _t301 = _t300 & 0x00000001u;
|
|
/* 0222D490 */ if (_t301) goto L_0222D4E4; else goto L_0222D494;
|
|
L_0222D494: ; // 0x222d494
|
|
/* 0222D494 */ goto L_0222D5A4;
|
|
L_0222D498: ; // 0x222d498
|
|
/* 0222D498 */ _t302 = cpu->r[30] + 0x00000060u;
|
|
/* 0222D498 */ cpu->r[8] = rbrew_read32(cpu->mem, _t302);
|
|
/* 0222D49C */ _t303 = cpu->r[1] + 0x00000060u;
|
|
/* 0222D49C */ rbrew_write32(cpu->mem, _t303, cpu->r[8]);
|
|
/* 0222D4A0 */ _t304 = cpu->r[30] + 0x00000064u;
|
|
/* 0222D4A0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t304);
|
|
/* 0222D4A4 */ _t305 = cpu->r[29] + 0x00000004u;
|
|
/* 0222D4A4 */ cpu->r[28] = rbrew_read32(cpu->mem, _t305);
|
|
/* 0222D4A8 */ _t306 = cpu->r[1] + 0x00000064u;
|
|
/* 0222D4A8 */ rbrew_write32(cpu->mem, _t306, cpu->r[9]);
|
|
/* 0222D4AC */ _t307 = cpu->r[30] + 0x00000068u;
|
|
/* 0222D4AC */ cpu->r[11] = rbrew_read32(cpu->mem, _t307);
|
|
/* 0222D4B0 */ _t308 = cpu->r[1] + 0x00000068u;
|
|
/* 0222D4B0 */ rbrew_write32(cpu->mem, _t308, cpu->r[11]);
|
|
/* 0222D4B4 */ _t309 = cpu->r[28] + 0x0000025Cu;
|
|
/* 0222D4B4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t309);
|
|
/* 0222D4B8 */ cpu->ctr = cpu->r[4];
|
|
/* 0222D4BC */ cpu->r[3] = cpu->r[29];
|
|
/* 0222D4C0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222D4C4 */ _t310 = cpu->r[28] + 0x0000042Cu;
|
|
/* 0222D4C4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t310);
|
|
/* 0222D4C8 */ cpu->r[4] = cpu->r[3];
|
|
/* 0222D4CC */ cpu->ctr = cpu->r[6];
|
|
/* 0222D4D0 */ cpu->r[3] = cpu->r[29];
|
|
/* 0222D4D4 */ cpu->r[5] = cpu->r[31];
|
|
/* 0222D4D8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222D4DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0222D4E0 */ _t311 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222D4E0 */ _t312 = _t311 & 0x00000001u;
|
|
/* 0222D4E0 */ if (_t312) goto L_0222D4E4; else goto L_0222D5A4;
|
|
L_0222D4E4: ; // 0x222d4e4
|
|
/* 0222D4E4 */ _t313 = cpu->r[29] + 0x00000051u;
|
|
/* 0222D4E4 */ cpu->r[7] = rbrew_read8(cpu->mem, _t313);
|
|
/* 0222D4E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0222D4EC */ _t314 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222D4EC */ _t315 = _t314 & 0x00000001u;
|
|
/* 0222D4EC */ if (_t315) goto L_0222D4F0; else goto L_0222D588;
|
|
L_0222D4F0: ; // 0x222d4f0
|
|
/* 0222D4F0 */ cpu->r[3] = 0x101D0000u;
|
|
/* 0222D4F4 */ _t316 = cpu->r[3] + 0xFFFF9918u;
|
|
/* 0222D4F4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t316);
|
|
/* 0222D4F8 */ Gambit_fn_02830138(cpu);
|
|
/* 0222D4FC */ cpu->r[4] = rbrew_rlwinm(cpu->r[3], 0x00000017u, 0x00000009u, 0x0000001Fu);
|
|
/* 0222D500 */ cpu->r[10] = 0x101C0000u;
|
|
/* 0222D504 */ cpu->r[5] = cpu->r[4] | 0x3F800000u;
|
|
/* 0222D508 */ _t317 = cpu->r[10] + 0x00006000u;
|
|
/* 0222D508 */ cpu->r[10] = rbrew_read32(cpu->mem, _t317);
|
|
/* 0222D50C */ _t318 = cpu->r[1] + 0x00000058u;
|
|
/* 0222D50C */ rbrew_write32(cpu->mem, _t318, cpu->r[5]);
|
|
/* 0222D510 */ _t319 = cpu->r[1] + 0x00000058u;
|
|
/* 0222D510 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t319);
|
|
/* 0222D514 */ _t320 = cpu->r[10] + 0x00000274u;
|
|
/* 0222D514 */ cpu->r[3] = rbrew_read32(cpu->mem, _t320);
|
|
/* 0222D518 */ cpu->f[6] = cpu->f[8] - cpu->f[30];
|
|
/* 0222D51C */ _t321 = cpu->r[3] + 0x00000268u;
|
|
/* 0222D51C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t321);
|
|
/* 0222D520 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[6], cpu->f[9]);
|
|
/* 0222D524 */ _t322 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0222D524 */ _t323 = _t322 & 0x00000001u;
|
|
/* 0222D524 */ if (_t323) goto L_0222D528; else goto L_0222D5A4;
|
|
L_0222D528: ; // 0x222d528
|
|
/* 0222D528 */ cpu->r[4] = cpu->r[29];
|
|
/* 0222D52C */ Gambit_fn_021F4CA8(cpu);
|
|
/* 0222D530 */ cpu->r[12] = 0x10050000u;
|
|
/* 0222D534 */ cpu->r[11] = 0x10050000u;
|
|
/* 0222D538 */ _t324 = cpu->r[12] + 0x00000118u;
|
|
/* 0222D538 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t324);
|
|
/* 0222D53C */ _t325 = cpu->r[11] + 0x0000011Cu;
|
|
/* 0222D53C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t325);
|
|
/* 0222D540 */ cpu->r[3] = cpu->r[1] + 0x0000005Cu;
|
|
/* 0222D544 */ cpu->f[31] = fma(cpu->f[13], cpu->f[1], cpu->f[0]);
|
|
/* 0222D548 */ Gambit_fn_02019890(cpu);
|
|
/* 0222D54C */ _t326 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0222D54C */ cpu->r[12] = rbrew_read32(cpu->mem, _t326);
|
|
/* 0222D550 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], 0x00000000u);
|
|
/* 0222D554 */ _t327 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222D554 */ _t328 = _t327 & 0x00000001u;
|
|
/* 0222D554 */ if (_t328) goto L_0222D560; else goto L_0222D558;
|
|
L_0222D558: ; // 0x222d558
|
|
/* 0222D558 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], 0x0000000Eu);
|
|
/* 0222D55C */ _t329 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222D55C */ _t330 = _t329 & 0x00000001u;
|
|
/* 0222D55C */ if (_t330) goto L_0222D560; else goto L_0222D588;
|
|
L_0222D560: ; // 0x222d560
|
|
/* 0222D560 */ cpu->r[11] = 0x101C0000u;
|
|
/* 0222D564 */ _t331 = cpu->r[11] + 0x00004604u;
|
|
/* 0222D564 */ cpu->r[11] = rbrew_read32(cpu->mem, _t331);
|
|
/* 0222D568 */ cpu->r[4] = cpu->r[1] + 0x00000060u;
|
|
/* 0222D56C */ cpu->r[3] = cpu->r[11] + 0x00000008u;
|
|
/* 0222D570 */ Gambit_fn_02C69328(cpu);
|
|
/* 0222D574 */ cpu->f[8] = cpu->f[31] * cpu->f[31];
|
|
/* 0222D578 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[8]);
|
|
/* 0222D57C */ /* nop */
|
|
/* 0222D580 */ cpu->r[0] = rbrew_rlwinm(cpu->r[5], 0x00000002u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0222D580 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0222D584 */ _t332 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222D584 */ _t333 = _t332 & 0x00000001u;
|
|
/* 0222D584 */ if (_t333) goto L_0222D588; else goto L_0222D5A4;
|
|
L_0222D588: ; // 0x222d588
|
|
/* 0222D588 */ _t334 = cpu->r[29] + 0x00000004u;
|
|
/* 0222D588 */ cpu->r[6] = rbrew_read32(cpu->mem, _t334);
|
|
/* 0222D58C */ _t335 = cpu->r[6] + 0x0000045Cu;
|
|
/* 0222D58C */ cpu->r[7] = rbrew_read32(cpu->mem, _t335);
|
|
/* 0222D590 */ cpu->ctr = cpu->r[7];
|
|
/* 0222D594 */ cpu->r[3] = cpu->r[29];
|
|
/* 0222D598 */ cpu->r[5] = cpu->r[30];
|
|
/* 0222D59C */ cpu->r[4] = cpu->r[1] + 0x00000060u;
|
|
/* 0222D5A0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0222D5A4: ; // 0x222d5a4
|
|
/* 0222D5A4 */ _t336 = cpu->r[29] + 0x00000030u;
|
|
/* 0222D5A4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t336);
|
|
/* 0222D5A8 */ cpu->r[4] = 0x00000001u;
|
|
/* 0222D5AC */ Gambit_fn_027B9B00(cpu);
|
|
/* 0222D5B0 */ _t337 = cpu->r[29] + 0x00000004u;
|
|
/* 0222D5B0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t337);
|
|
/* 0222D5B4 */ cpu->r[8] = 0x00000002u;
|
|
/* 0222D5B8 */ _t338 = cpu->r[29] + 0x00000050u;
|
|
/* 0222D5B8 */ rbrew_write8(cpu->mem, _t338, (uint8_t)cpu->r[8]);
|
|
/* 0222D5BC */ _t339 = cpu->r[9] + 0x000003A4u;
|
|
/* 0222D5BC */ cpu->r[10] = rbrew_read32(cpu->mem, _t339);
|
|
/* 0222D5C0 */ cpu->ctr = cpu->r[10];
|
|
/* 0222D5C4 */ cpu->r[3] = cpu->r[29];
|
|
/* 0222D5C8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222D5CC */ /* nop */
|
|
/* 0222D5D0 */ _t340 = cpu->r[1] + 0x00000098u;
|
|
/* 0222D5D0 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t340);
|
|
/* 0222D5D4 */ _t341 = cpu->r[1] + 0x000000A8u;
|
|
/* 0222D5D4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t341);
|
|
/* 0222D5D8 */ _t342 = cpu->r[1] + 0x00000090u;
|
|
/* 0222D5D8 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t342);
|
|
/* 0222D5DC */ _t343 = cpu->r[1] + 0x000000A0u;
|
|
/* 0222D5DC */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t343);
|
|
/* 0222D5E0 */ cpu->r[3] = 0x00000001u;
|
|
/* 0222D5E4 */ _t344 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0222D5E4 */ _t345 = _t344 & 0x00000001u;
|
|
/* 0222D5E4 */ if (_t345) goto L_0222D5E8; // else: addr-0 trap, fall-through
|
|
L_0222D5E8: ; // 0x222d5e8
|
|
/* 0222D5E8 */ _t346 = cpu->r[1] + 0x000000B4u;
|
|
/* 0222D5E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t346);
|
|
/* 0222D5EC */ cpu->lr = cpu->r[0];
|
|
/* 0222D5F0 */ cpu->r[1] = cpu->r[1] + 0x000000B0u;
|
|
/* 0222D5F4 */ return;
|
|
}
|
|
|
|
// fn_0222D5F8 @ 0x222d5f8
|
|
void Gambit_fn_0222D5F8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38;
|
|
|
|
L_0222D5F8: ; // 0x222d5f8
|
|
/* 0222D5F8 */ _t0 = cpu->r[1] + 0xFFFFFF68u;
|
|
/* 0222D5F8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0222D5F8 */ cpu->r[1] = _t0;
|
|
/* 0222D5FC */ /* nop */
|
|
/* 0222D600 */ _t1 = cpu->r[1] + 0x00000088u;
|
|
/* 0222D600 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0222D604 */ cpu->r[0] = cpu->lr;
|
|
/* 0222D608 */ _t2 = cpu->r[1] + 0x0000009Cu;
|
|
/* 0222D608 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0222D60C */ /* nop */
|
|
/* 0222D610 */ _t3 = cpu->r[1] + 0x00000090u;
|
|
/* 0222D610 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 0222D614 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0222D618 */ _t4 = cpu->r[3] + 0x00006000u;
|
|
/* 0222D618 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0222D61C */ cpu->r[29] = cpu->r[7];
|
|
/* 0222D620 */ _t5 = cpu->r[3] + 0x00000004u;
|
|
/* 0222D620 */ cpu->r[11] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0222D624 */ cpu->r[27] = cpu->r[5];
|
|
/* 0222D628 */ _t6 = cpu->r[11] + 0x00000134u;
|
|
/* 0222D628 */ cpu->r[5] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0222D62C */ cpu->ctr = cpu->r[5];
|
|
/* 0222D630 */ _t7 = cpu->r[1] + 0x000000A3u;
|
|
/* 0222D630 */ cpu->r[25] = rbrew_read8(cpu->mem, _t7);
|
|
/* 0222D634 */ cpu->f[31] = cpu->f[1];
|
|
/* 0222D638 */ cpu->r[26] = cpu->r[4];
|
|
/* 0222D63C */ cpu->r[28] = cpu->r[6];
|
|
/* 0222D640 */ cpu->r[30] = cpu->r[8];
|
|
/* 0222D644 */ cpu->r[31] = cpu->r[9];
|
|
/* 0222D648 */ cpu->r[24] = cpu->r[10];
|
|
/* 0222D64C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222D650 */ _t8 = cpu->r[28] + 0x00000000u;
|
|
/* 0222D650 */ cpu->r[7] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0222D654 */ _t9 = cpu->r[31] + 0x00000000u;
|
|
/* 0222D654 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0222D658 */ cpu->r[9] = cpu->r[1] + 0x00000018u;
|
|
/* 0222D65C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0222D65C */ rbrew_write32(cpu->mem, _t10, cpu->r[7]);
|
|
/* 0222D660 */ cpu->r[7] = cpu->r[9];
|
|
/* 0222D664 */ _t11 = cpu->r[31] + 0x00000004u;
|
|
/* 0222D664 */ cpu->r[11] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0222D668 */ cpu->r[9] = cpu->r[24];
|
|
/* 0222D66C */ _t12 = cpu->r[29] + 0x00000000u;
|
|
/* 0222D66C */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0222D670 */ _t13 = cpu->r[29] + 0x00000004u;
|
|
/* 0222D670 */ cpu->r[6] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0222D674 */ _t14 = cpu->r[1] + 0x00000020u;
|
|
/* 0222D674 */ rbrew_write32(cpu->mem, _t14, cpu->r[12]);
|
|
/* 0222D678 */ _t15 = cpu->r[29] + 0x00000008u;
|
|
/* 0222D678 */ cpu->r[8] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0222D67C */ cpu->r[5] = cpu->r[3];
|
|
/* 0222D680 */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 0222D680 */ rbrew_write32(cpu->mem, _t16, cpu->r[25]);
|
|
/* 0222D684 */ _t17 = cpu->r[1] + 0x00000028u;
|
|
/* 0222D684 */ rbrew_write32(cpu->mem, _t17, cpu->r[8]);
|
|
/* 0222D688 */ cpu->r[8] = cpu->r[1] + 0x00000014u;
|
|
/* 0222D68C */ _t18 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0222D68C */ rbrew_write32(cpu->mem, _t18, cpu->r[11]);
|
|
/* 0222D690 */ cpu->r[4] = cpu->r[26];
|
|
/* 0222D694 */ cpu->r[12] = 0x00000005u;
|
|
/* 0222D698 */ _t19 = cpu->r[1] + 0x00000024u;
|
|
/* 0222D698 */ rbrew_write32(cpu->mem, _t19, cpu->r[6]);
|
|
/* 0222D69C */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 0222D6A0 */ cpu->f[1] = cpu->f[31];
|
|
/* 0222D6A4 */ _t20 = cpu->r[1] + 0x00000018u;
|
|
/* 0222D6A4 */ rbrew_write32(cpu->mem, _t20, cpu->r[0]);
|
|
/* 0222D6A8 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 0222D6AC */ cpu->r[6] = cpu->r[1] + 0x00000020u;
|
|
/* 0222D6B0 */ _t21 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222D6B0 */ rbrew_write32(cpu->mem, _t21, cpu->r[12]);
|
|
/* 0222D6B4 */ cpu->r[10] = cpu->r[30];
|
|
/* 0222D6B8 */ _t22 = cpu->r[1] + 0x00000010u;
|
|
/* 0222D6B8 */ rbrew_write32(cpu->mem, _t22, cpu->r[0]);
|
|
/* 0222D6BC */ Gambit_fn_023F6488(cpu);
|
|
/* 0222D6C0 */ cpu->r[31] = 0x101C0000u;
|
|
/* 0222D6C4 */ _t23 = cpu->r[31] + 0x00005BA0u;
|
|
/* 0222D6C4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0222D6C4 */ cpu->r[31] = _t23;
|
|
/* 0222D6C8 */ _t24 = cpu->r[12] + 0x00000078u;
|
|
/* 0222D6C8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0222D6CC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], cpu->r[6]);
|
|
/* 0222D6D0 */ cpu->r[3] = 0x00000000u;
|
|
/* 0222D6D4 */ _t25 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0222D6D4 */ _t26 = _t25 & 0x00000001u;
|
|
/* 0222D6D4 */ if (_t26) goto L_0222D6D8; else goto L_0222D6E4;
|
|
L_0222D6D8: ; // 0x222d6d8
|
|
/* 0222D6D8 */ _t27 = cpu->r[12] + 0x00000080u;
|
|
/* 0222D6D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0222D6DC */ cpu->r[8] = rbrew_rlwinm(cpu->r[27], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0222D6E0 */ _t28 = cpu->r[8] + cpu->r[0];
|
|
/* 0222D6E0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t28);
|
|
L_0222D6E4: ; // 0x222d6e4
|
|
/* 0222D6E4 */ cpu->r[5] = 0x00000005u;
|
|
/* 0222D6E8 */ cpu->r[4] = cpu->r[1] + 0x0000002Cu;
|
|
/* 0222D6EC */ Gambit_fn_025E0B80(cpu);
|
|
/* 0222D6F0 */ _t29 = cpu->r[31] + 0x00000000u;
|
|
/* 0222D6F0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0222D6F4 */ _t30 = cpu->r[5] + 0x00000044u;
|
|
/* 0222D6F4 */ cpu->r[7] = rbrew_read8(cpu->mem, _t30);
|
|
/* 0222D6F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0222D6FC */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222D6FC */ _t32 = _t31 & 0x00000001u;
|
|
/* 0222D6FC */ if (_t32) goto L_0222D710; else goto L_0222D700;
|
|
L_0222D700: ; // 0x222d700
|
|
/* 0222D700 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0222D704 */ _t33 = cpu->r[3] + 0x000060F4u;
|
|
/* 0222D704 */ cpu->r[3] = rbrew_read32(cpu->mem, _t33);
|
|
/* 0222D708 */ cpu->r[4] = cpu->r[1] + 0x0000002Cu;
|
|
/* 0222D70C */ Gambit_fn_023EED38(cpu);
|
|
L_0222D710: ; // 0x222d710
|
|
/* 0222D710 */ /* nop */
|
|
/* 0222D714 */ _t34 = cpu->r[1] + 0x00000090u;
|
|
/* 0222D714 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 0222D718 */ _t35 = cpu->r[1] + 0x00000088u;
|
|
/* 0222D718 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t35);
|
|
/* 0222D71C */ _t36 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0222D71C */ _t37 = _t36 & 0x00000001u;
|
|
/* 0222D71C */ if (_t37) goto L_0222D720; // else: addr-0 trap, fall-through
|
|
L_0222D720: ; // 0x222d720
|
|
/* 0222D720 */ _t38 = cpu->r[1] + 0x0000009Cu;
|
|
/* 0222D720 */ cpu->r[0] = rbrew_read32(cpu->mem, _t38);
|
|
/* 0222D724 */ cpu->lr = cpu->r[0];
|
|
/* 0222D728 */ cpu->r[1] = cpu->r[1] + 0x00000098u;
|
|
/* 0222D72C */ return;
|
|
}
|
|
|
|
// fn_0222D730 @ 0x222d730
|
|
void Gambit_fn_0222D730(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _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_0222D730: ; // 0x222d730
|
|
/* 0222D730 */ cpu->r[0] = cpu->lr;
|
|
/* 0222D734 */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 0222D734 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0222D734 */ cpu->r[1] = _t0;
|
|
/* 0222D738 */ _t1 = cpu->r[1] + 0x00000028u;
|
|
/* 0222D738 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0222D73C */ /* nop */
|
|
/* 0222D740 */ _t2 = cpu->r[1] + 0x00000030u;
|
|
/* 0222D740 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 0222D744 */ _t3 = cpu->r[1] + 0x00000024u;
|
|
/* 0222D744 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 0222D748 */ _t4 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0222D748 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0222D74C */ _t5 = cpu->r[3] + 0x00000004u;
|
|
/* 0222D74C */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0222D750 */ _t6 = cpu->r[12] + 0x00000394u;
|
|
/* 0222D750 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0222D754 */ cpu->ctr = cpu->r[0];
|
|
/* 0222D758 */ cpu->r[31] = cpu->r[3];
|
|
/* 0222D75C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222D760 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0222D764 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222D764 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0222D764 */ if (_t8) goto L_0222D7F0; else goto L_0222D768;
|
|
L_0222D768: ; // 0x222d768
|
|
/* 0222D768 */ _t9 = cpu->r[31] + 0x00000004u;
|
|
/* 0222D768 */ cpu->r[11] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0222D76C */ _t10 = cpu->r[11] + 0x000003D4u;
|
|
/* 0222D76C */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0222D770 */ cpu->ctr = cpu->r[12];
|
|
/* 0222D774 */ cpu->r[3] = cpu->r[31];
|
|
/* 0222D778 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222D77C */ cpu->r[6] = cpu->r[31] + 0x000000A4u;
|
|
/* 0222D780 */ cpu->r[7] = cpu->r[31] + 0x00000094u;
|
|
/* 0222D784 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0222D788 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222D78C */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 0222D790 */ cpu->f[31] = cpu->f[1];
|
|
/* 0222D794 */ Gambit_fn_02043998(cpu);
|
|
/* 0222D798 */ _t11 = cpu->r[31] + 0x00000114u;
|
|
/* 0222D798 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0222D79C */ _t12 = cpu->r[31] + 0x00000004u;
|
|
/* 0222D79C */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0222D7A0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000000Eu, 0x0000000Bu);
|
|
/* 0222D7A4 */ _t13 = cpu->r[31] + 0x00000114u;
|
|
/* 0222D7A4 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 0222D7A8 */ _t14 = cpu->r[12] + 0x0000038Cu;
|
|
/* 0222D7A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0222D7AC */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 0222D7AC */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 0222D7B0 */ cpu->ctr = cpu->r[0];
|
|
/* 0222D7B4 */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 0222D7B8 */ cpu->f[2] = cpu->f[31];
|
|
/* 0222D7BC */ cpu->r[3] = cpu->r[31];
|
|
/* 0222D7C0 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222D7C4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222D7C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0222D7CC */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222D7CC */ _t17 = _t16 & 0x00000001u;
|
|
/* 0222D7CC */ if (_t17) goto L_0222D7E0; else goto L_0222D7D0;
|
|
L_0222D7D0: ; // 0x222d7d0
|
|
/* 0222D7D0 */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 0222D7D4 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222D7D8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0222D7DC */ Gambit_fn_022294C0(cpu);
|
|
L_0222D7E0: ; // 0x222d7e0
|
|
/* 0222D7E0 */ _t18 = cpu->r[31] + 0x00000114u;
|
|
/* 0222D7E0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0222D7E4 */ cpu->r[0] = 0x00000001u;
|
|
/* 0222D7E8 */ _t19 = rbrew_rlwinm(cpu->r[0], 0x00000012u, 0x0000000Cu, 0x0000000Du);
|
|
/* 0222D7E8 */ _t20 = cpu->r[12] & 0xFFF3FFFFu;
|
|
/* 0222D7E8 */ cpu->r[12] = _t20 | _t19;
|
|
/* 0222D7EC */ _t21 = cpu->r[31] + 0x00000114u;
|
|
/* 0222D7EC */ rbrew_write32(cpu->mem, _t21, cpu->r[12]);
|
|
L_0222D7F0: ; // 0x222d7f0
|
|
/* 0222D7F0 */ _t22 = cpu->r[1] + 0x00000030u;
|
|
/* 0222D7F0 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 0222D7F4 */ _t23 = cpu->r[1] + 0x00000024u;
|
|
/* 0222D7F4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0222D7F8 */ _t24 = cpu->r[1] + 0x00000028u;
|
|
/* 0222D7F8 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t24);
|
|
/* 0222D7FC */ _t25 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0222D7FC */ _t26 = _t25 & 0x00000001u;
|
|
/* 0222D7FC */ if (_t26) goto L_0222D800; // else: addr-0 trap, fall-through
|
|
L_0222D800: ; // 0x222d800
|
|
/* 0222D800 */ _t27 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0222D800 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0222D804 */ cpu->lr = cpu->r[0];
|
|
/* 0222D808 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 0222D80C */ return;
|
|
}
|
|
|
|
// fn_0222D734 @ 0x222d734
|
|
void Gambit_fn_0222D734(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _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_0222D734: ; // 0x222d734
|
|
/* 0222D734 */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 0222D734 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0222D734 */ cpu->r[1] = _t0;
|
|
/* 0222D738 */ _t1 = cpu->r[1] + 0x00000028u;
|
|
/* 0222D738 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0222D73C */ /* nop */
|
|
/* 0222D740 */ _t2 = cpu->r[1] + 0x00000030u;
|
|
/* 0222D740 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 0222D744 */ _t3 = cpu->r[1] + 0x00000024u;
|
|
/* 0222D744 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 0222D748 */ _t4 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0222D748 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0222D74C */ _t5 = cpu->r[3] + 0x00000004u;
|
|
/* 0222D74C */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0222D750 */ _t6 = cpu->r[12] + 0x00000394u;
|
|
/* 0222D750 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0222D754 */ cpu->ctr = cpu->r[0];
|
|
/* 0222D758 */ cpu->r[31] = cpu->r[3];
|
|
/* 0222D75C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222D760 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0222D764 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222D764 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0222D764 */ if (_t8) goto L_0222D7F0; else goto L_0222D768;
|
|
L_0222D768: ; // 0x222d768
|
|
/* 0222D768 */ _t9 = cpu->r[31] + 0x00000004u;
|
|
/* 0222D768 */ cpu->r[11] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0222D76C */ _t10 = cpu->r[11] + 0x000003D4u;
|
|
/* 0222D76C */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0222D770 */ cpu->ctr = cpu->r[12];
|
|
/* 0222D774 */ cpu->r[3] = cpu->r[31];
|
|
/* 0222D778 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222D77C */ cpu->r[6] = cpu->r[31] + 0x000000A4u;
|
|
/* 0222D780 */ cpu->r[7] = cpu->r[31] + 0x00000094u;
|
|
/* 0222D784 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0222D788 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222D78C */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 0222D790 */ cpu->f[31] = cpu->f[1];
|
|
/* 0222D794 */ Gambit_fn_02043998(cpu);
|
|
/* 0222D798 */ _t11 = cpu->r[31] + 0x00000114u;
|
|
/* 0222D798 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0222D79C */ _t12 = cpu->r[31] + 0x00000004u;
|
|
/* 0222D79C */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0222D7A0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000000Eu, 0x0000000Bu);
|
|
/* 0222D7A4 */ _t13 = cpu->r[31] + 0x00000114u;
|
|
/* 0222D7A4 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 0222D7A8 */ _t14 = cpu->r[12] + 0x0000038Cu;
|
|
/* 0222D7A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0222D7AC */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 0222D7AC */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 0222D7B0 */ cpu->ctr = cpu->r[0];
|
|
/* 0222D7B4 */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 0222D7B8 */ cpu->f[2] = cpu->f[31];
|
|
/* 0222D7BC */ cpu->r[3] = cpu->r[31];
|
|
/* 0222D7C0 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222D7C4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222D7C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0222D7CC */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222D7CC */ _t17 = _t16 & 0x00000001u;
|
|
/* 0222D7CC */ if (_t17) goto L_0222D7E0; else goto L_0222D7D0;
|
|
L_0222D7D0: ; // 0x222d7d0
|
|
/* 0222D7D0 */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 0222D7D4 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222D7D8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0222D7DC */ Gambit_fn_022294C0(cpu);
|
|
L_0222D7E0: ; // 0x222d7e0
|
|
/* 0222D7E0 */ _t18 = cpu->r[31] + 0x00000114u;
|
|
/* 0222D7E0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0222D7E4 */ cpu->r[0] = 0x00000001u;
|
|
/* 0222D7E8 */ _t19 = rbrew_rlwinm(cpu->r[0], 0x00000012u, 0x0000000Cu, 0x0000000Du);
|
|
/* 0222D7E8 */ _t20 = cpu->r[12] & 0xFFF3FFFFu;
|
|
/* 0222D7E8 */ cpu->r[12] = _t20 | _t19;
|
|
/* 0222D7EC */ _t21 = cpu->r[31] + 0x00000114u;
|
|
/* 0222D7EC */ rbrew_write32(cpu->mem, _t21, cpu->r[12]);
|
|
L_0222D7F0: ; // 0x222d7f0
|
|
/* 0222D7F0 */ _t22 = cpu->r[1] + 0x00000030u;
|
|
/* 0222D7F0 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 0222D7F4 */ _t23 = cpu->r[1] + 0x00000024u;
|
|
/* 0222D7F4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0222D7F8 */ _t24 = cpu->r[1] + 0x00000028u;
|
|
/* 0222D7F8 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t24);
|
|
/* 0222D7FC */ _t25 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0222D7FC */ _t26 = _t25 & 0x00000001u;
|
|
/* 0222D7FC */ if (_t26) goto L_0222D800; // else: addr-0 trap, fall-through
|
|
L_0222D800: ; // 0x222d800
|
|
/* 0222D800 */ _t27 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0222D800 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0222D804 */ cpu->lr = cpu->r[0];
|
|
/* 0222D808 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 0222D80C */ return;
|
|
}
|
|
|
|
// fn_0222D810 @ 0x222d810
|
|
void Gambit_fn_0222D810(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _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_0222D810: ; // 0x222d810
|
|
/* 0222D810 */ _t0 = cpu->r[1] + 0xFFFFFFA8u;
|
|
/* 0222D810 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0222D810 */ cpu->r[1] = _t0;
|
|
/* 0222D814 */ /* nop */
|
|
/* 0222D818 */ cpu->r[0] = cpu->lr;
|
|
/* 0222D81C */ _t1 = cpu->r[1] + 0x00000038u;
|
|
/* 0222D81C */ rbrew_write_f64(cpu->mem, _t1, cpu->f[30]);
|
|
/* 0222D820 */ _t2 = cpu->r[1] + 0x00000048u;
|
|
/* 0222D820 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 0222D824 */ /* nop */
|
|
/* 0222D828 */ _t3 = cpu->r[1] + 0x00000040u;
|
|
/* 0222D828 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[30]);
|
|
/* 0222D82C */ /* nop */
|
|
/* 0222D830 */ _t4 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0222D830 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0222D834 */ _t5 = cpu->r[1] + 0x00000028u;
|
|
/* 0222D834 */ rbrew_write_f64(cpu->mem, _t5, cpu->f[29]);
|
|
/* 0222D838 */ _t6 = cpu->r[1] + 0x00000050u;
|
|
/* 0222D838 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[31]);
|
|
/* 0222D83C */ /* nop */
|
|
/* 0222D840 */ _t7 = cpu->r[1] + 0x00000030u;
|
|
/* 0222D840 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[29]);
|
|
/* 0222D844 */ _t8 = cpu->r[3] + 0x00000004u;
|
|
/* 0222D844 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0222D848 */ _t9 = cpu->r[12] + 0x000003F4u;
|
|
/* 0222D848 */ cpu->r[10] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0222D84C */ cpu->r[29] = 0x00000000u;
|
|
/* 0222D850 */ cpu->f[31] = cpu->f[1];
|
|
/* 0222D854 */ cpu->ctr = cpu->r[10];
|
|
/* 0222D858 */ cpu->f[29] = cpu->f[2];
|
|
/* 0222D85C */ cpu->r[28] = cpu->r[3];
|
|
/* 0222D860 */ cpu->r[30] = cpu->r[4];
|
|
/* 0222D864 */ cpu->r[31] = cpu->r[5];
|
|
/* 0222D868 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222D86C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0222D870 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222D870 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0222D870 */ if (_t11) goto L_0222D878; else goto L_0222D874;
|
|
L_0222D874: ; // 0x222d874
|
|
/* 0222D874 */ cpu->r[29] = 0x00000020u;
|
|
L_0222D878: ; // 0x222d878
|
|
/* 0222D878 */ _t12 = cpu->r[28] + 0x00000004u;
|
|
/* 0222D878 */ cpu->r[11] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0222D87C */ _t13 = cpu->r[11] + 0x000003ECu;
|
|
/* 0222D87C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0222D880 */ cpu->ctr = cpu->r[0];
|
|
/* 0222D884 */ cpu->r[27] = 0x00000000u;
|
|
/* 0222D888 */ cpu->r[3] = cpu->r[28];
|
|
/* 0222D88C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222D890 */ _t14 = cpu->r[28] + 0x00000004u;
|
|
/* 0222D890 */ cpu->r[26] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0222D894 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0222D898 */ _t15 = cpu->r[26] + 0x00000434u;
|
|
/* 0222D898 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0222D89C */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222D89C */ _t17 = _t16 & 0x00000001u;
|
|
/* 0222D89C */ if (_t17) goto L_0222D8A4; else goto L_0222D8A0;
|
|
L_0222D8A0: ; // 0x222d8a0
|
|
/* 0222D8A0 */ cpu->r[27] = 0x00000100u;
|
|
L_0222D8A4: ; // 0x222d8a4
|
|
/* 0222D8A4 */ cpu->ctr = cpu->r[0];
|
|
/* 0222D8A8 */ cpu->r[9] = 0x000C0000u;
|
|
/* 0222D8AC */ cpu->r[9] = cpu->r[9] + 0x0000008Bu;
|
|
/* 0222D8B0 */ cpu->r[29] = cpu->r[29] | cpu->r[9];
|
|
/* 0222D8B4 */ cpu->r[3] = cpu->r[28];
|
|
/* 0222D8B8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222D8BC */ _t18 = cpu->r[26] + 0x00000424u;
|
|
/* 0222D8BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0222D8C0 */ cpu->ctr = cpu->r[0];
|
|
/* 0222D8C4 */ cpu->r[3] = cpu->r[28];
|
|
/* 0222D8C8 */ cpu->f[30] = cpu->f[1];
|
|
/* 0222D8CC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222D8D0 */ cpu->r[8] = 0x10050000u;
|
|
/* 0222D8D4 */ _t19 = cpu->r[8] + 0x0000009Cu;
|
|
/* 0222D8D4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 0222D8D8 */ cpu->r[10] = 0x101C0000u;
|
|
/* 0222D8DC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[31], cpu->f[0]);
|
|
/* 0222D8E0 */ cpu->r[8] = cpu->r[27] | 0x000000FFu;
|
|
/* 0222D8E4 */ cpu->r[0] = cpu->r[28] + 0x000000B0u;
|
|
/* 0222D8E8 */ cpu->f[4] = cpu->f[1];
|
|
/* 0222D8EC */ _t20 = cpu->r[10] + 0x00001EF8u;
|
|
/* 0222D8EC */ cpu->r[3] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0222D8F0 */ cpu->r[4] = cpu->r[30];
|
|
/* 0222D8F4 */ _t21 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0222D8F4 */ _t22 = _t21 & 0x00000001u;
|
|
/* 0222D8F4 */ if (_t22) goto L_0222D928; else goto L_0222D8F8;
|
|
L_0222D8F8: ; // 0x222d8f8
|
|
/* 0222D8F8 */ cpu->f[1] = cpu->f[29];
|
|
/* 0222D8FC */ cpu->r[5] = 0x00000000u;
|
|
/* 0222D900 */ _t23 = cpu->r[28] + 0x000000B4u;
|
|
/* 0222D900 */ cpu->r[9] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0222D904 */ cpu->f[2] = cpu->f[30];
|
|
/* 0222D908 */ cpu->r[6] = cpu->r[5];
|
|
/* 0222D90C */ cpu->r[7] = cpu->r[29];
|
|
/* 0222D910 */ cpu->r[10] = cpu->r[5];
|
|
/* 0222D914 */ _t24 = cpu->r[1] + 0x00000008u;
|
|
/* 0222D914 */ rbrew_write32(cpu->mem, _t24, cpu->r[0]);
|
|
/* 0222D918 */ Gambit_fn_0204A4DC(cpu);
|
|
/* 0222D91C */ cpu->r[0] = 0x00000001u;
|
|
/* 0222D920 */ _t25 = cpu->r[28] + 0x000000B0u;
|
|
/* 0222D920 */ rbrew_write32(cpu->mem, _t25, cpu->r[3]);
|
|
/* 0222D924 */ goto L_0222D954;
|
|
L_0222D928: ; // 0x222d928
|
|
/* 0222D928 */ cpu->f[1] = cpu->f[31];
|
|
/* 0222D92C */ cpu->r[7] = cpu->r[8];
|
|
/* 0222D930 */ cpu->f[3] = cpu->f[30];
|
|
/* 0222D934 */ _t26 = cpu->r[28] + 0x000000B4u;
|
|
/* 0222D934 */ cpu->r[8] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0222D938 */ cpu->f[2] = cpu->f[29];
|
|
/* 0222D93C */ cpu->r[5] = cpu->r[31];
|
|
/* 0222D940 */ cpu->r[6] = cpu->r[29];
|
|
/* 0222D944 */ cpu->r[9] = cpu->r[0];
|
|
/* 0222D948 */ Gambit_fn_0204A864(cpu);
|
|
/* 0222D94C */ cpu->r[0] = 0x00000001u;
|
|
/* 0222D950 */ _t27 = cpu->r[28] + 0x000000B0u;
|
|
/* 0222D950 */ rbrew_write32(cpu->mem, _t27, cpu->r[3]);
|
|
L_0222D954: ; // 0x222d954
|
|
/* 0222D954 */ /* nop */
|
|
/* 0222D958 */ _t28 = cpu->r[1] + 0x00000030u;
|
|
/* 0222D958 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 0222D95C */ _t29 = cpu->r[1] + 0x00000050u;
|
|
/* 0222D95C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 0222D960 */ _t30 = cpu->r[1] + 0x00000028u;
|
|
/* 0222D960 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t30);
|
|
/* 0222D964 */ _t31 = cpu->r[1] + 0x00000040u;
|
|
/* 0222D964 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 0222D968 */ _t32 = cpu->r[1] + 0x00000048u;
|
|
/* 0222D968 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t32);
|
|
/* 0222D96C */ _t33 = cpu->r[1] + 0x00000038u;
|
|
/* 0222D96C */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t33);
|
|
/* 0222D970 */ cpu->r[3] = cpu->r[0];
|
|
/* 0222D974 */ _t34 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0222D974 */ _t35 = _t34 & 0x00000001u;
|
|
/* 0222D974 */ if (_t35) goto L_0222D978; // else: addr-0 trap, fall-through
|
|
L_0222D978: ; // 0x222d978
|
|
/* 0222D978 */ _t36 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0222D978 */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0222D97C */ cpu->lr = cpu->r[0];
|
|
/* 0222D980 */ cpu->r[1] = cpu->r[1] + 0x00000058u;
|
|
/* 0222D984 */ return;
|
|
}
|
|
|
|
// fn_0222D988 @ 0x222d988
|
|
void Gambit_fn_0222D988(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0222D988: ; // 0x222d988
|
|
/* 0222D988 */ cpu->r[0] = cpu->lr;
|
|
/* 0222D98C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0222D98C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0222D98C */ cpu->r[1] = _t0;
|
|
/* 0222D990 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222D990 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0222D994 */ cpu->r[31] = cpu->r[3];
|
|
/* 0222D998 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0222D998 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0222D99C */ _t3 = cpu->r[31] + 0x000000A0u;
|
|
/* 0222D99C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 0222D9A0 */ _t4 = cpu->r[31] + 0x000000ACu;
|
|
/* 0222D9A0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 0222D9A4 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0222D9A8 */ _t5 = cpu->r[31] + 0x000000A4u;
|
|
/* 0222D9A8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 0222D9AC */ cpu->f[3] = cpu->f[12] - cpu->f[0];
|
|
/* 0222D9B0 */ _t6 = cpu->r[3] + 0x00001D14u;
|
|
/* 0222D9B0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0222D9B4 */ cpu->f[4] = cpu->f[12] + cpu->f[0];
|
|
/* 0222D9B8 */ cpu->r[4] = 0x101C0000u;
|
|
/* 0222D9BC */ cpu->f[2] = cpu->f[13] + cpu->f[0];
|
|
/* 0222D9C0 */ _t7 = cpu->r[4] + 0x00004FA8u;
|
|
/* 0222D9C0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0222D9C4 */ cpu->f[1] = cpu->f[13] - cpu->f[0];
|
|
/* 0222D9C8 */ _t8 = cpu->r[3] + 0x00005444u;
|
|
/* 0222D9C8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0222D9CC */ cpu->r[5] = cpu->r[31];
|
|
/* 0222D9D0 */ cpu->r[6] = 0x00000000u;
|
|
/* 0222D9D4 */ Gambit_fn_02031B20(cpu);
|
|
/* 0222D9D8 */ _t9 = cpu->r[31] + 0x00000080u;
|
|
/* 0222D9D8 */ rbrew_write32(cpu->mem, _t9, cpu->r[3]);
|
|
/* 0222D9DC */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0222D9DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0222D9E0 */ cpu->lr = cpu->r[0];
|
|
/* 0222D9E4 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222D9E4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0222D9E8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0222D9EC */ return;
|
|
}
|
|
|
|
// fn_0222D98C @ 0x222d98c
|
|
void Gambit_fn_0222D98C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0222D98C: ; // 0x222d98c
|
|
/* 0222D98C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0222D98C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0222D98C */ cpu->r[1] = _t0;
|
|
/* 0222D990 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222D990 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0222D994 */ cpu->r[31] = cpu->r[3];
|
|
/* 0222D998 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0222D998 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0222D99C */ _t3 = cpu->r[31] + 0x000000A0u;
|
|
/* 0222D99C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 0222D9A0 */ _t4 = cpu->r[31] + 0x000000ACu;
|
|
/* 0222D9A0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 0222D9A4 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0222D9A8 */ _t5 = cpu->r[31] + 0x000000A4u;
|
|
/* 0222D9A8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 0222D9AC */ cpu->f[3] = cpu->f[12] - cpu->f[0];
|
|
/* 0222D9B0 */ _t6 = cpu->r[3] + 0x00001D14u;
|
|
/* 0222D9B0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0222D9B4 */ cpu->f[4] = cpu->f[12] + cpu->f[0];
|
|
/* 0222D9B8 */ cpu->r[4] = 0x101C0000u;
|
|
/* 0222D9BC */ cpu->f[2] = cpu->f[13] + cpu->f[0];
|
|
/* 0222D9C0 */ _t7 = cpu->r[4] + 0x00004FA8u;
|
|
/* 0222D9C0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0222D9C4 */ cpu->f[1] = cpu->f[13] - cpu->f[0];
|
|
/* 0222D9C8 */ _t8 = cpu->r[3] + 0x00005444u;
|
|
/* 0222D9C8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0222D9CC */ cpu->r[5] = cpu->r[31];
|
|
/* 0222D9D0 */ cpu->r[6] = 0x00000000u;
|
|
/* 0222D9D4 */ Gambit_fn_02031B20(cpu);
|
|
/* 0222D9D8 */ _t9 = cpu->r[31] + 0x00000080u;
|
|
/* 0222D9D8 */ rbrew_write32(cpu->mem, _t9, cpu->r[3]);
|
|
/* 0222D9DC */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0222D9DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0222D9E0 */ cpu->lr = cpu->r[0];
|
|
/* 0222D9E4 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222D9E4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0222D9E8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0222D9EC */ return;
|
|
}
|
|
|
|
// fn_0222D9F0 @ 0x222d9f0
|
|
void Gambit_fn_0222D9F0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _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_02031BD0: ; // 0x2031bd0
|
|
/* 02031BD0 */ cpu->r[0] = cpu->lr;
|
|
/* 02031BD4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02031BD4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02031BD4 */ cpu->r[1] = _t0;
|
|
/* 02031BD8 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02031BD8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02031BDC */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02031BDC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02031BE0 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02031BE0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02031BE4 */ _t4 = cpu->r[4] + 0x00000000u;
|
|
/* 02031BE4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02031BE8 */ cpu->r[31] = cpu->r[4];
|
|
/* 02031BEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 02031BF0 */ cpu->r[30] = cpu->r[3];
|
|
/* 02031BF4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02031BF4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02031BF4 */ if (_t6) goto L_02031C58; else goto L_02031BF8;
|
|
L_02031BF8: ; // 0x2031bf8
|
|
/* 02031BF8 */ _t7 = cpu->r[31] + 0x00000000u;
|
|
/* 02031BF8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02031BFC */ _t8 = cpu->r[3] + 0x0000011Cu;
|
|
/* 02031BFC */ cpu->r[11] = rbrew_read8(cpu->mem, _t8);
|
|
/* 02031C00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02031C04 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02031C04 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02031C04 */ if (_t10) goto L_02031C58; else goto L_02031C08;
|
|
L_02031C08: ; // 0x2031c08
|
|
/* 02031C08 */ Gambit_fn_020346F4(cpu);
|
|
/* 02031C0C */ _t11 = cpu->r[30] + 0x00000024u;
|
|
/* 02031C0C */ cpu->r[6] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02031C10 */ cpu->r[8] = 0x4D480000u;
|
|
/* 02031C14 */ _t12 = cpu->r[31] + 0x00000000u;
|
|
/* 02031C14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02031C18 */ cpu->r[8] = cpu->r[8] + 0x000073EDu;
|
|
/* 02031C1C */ cpu->r[12] = cpu->r[0] - cpu->r[6];
|
|
/* 02031C20 */ cpu->r[8] = (uint32_t)(((int64_t)(int32_t)cpu->r[8] * (int64_t)(int32_t)cpu->r[12]) >> 32);
|
|
/* 02031C24 */ /* nop */
|
|
/* 02031C28 */ /* nop */
|
|
/* 02031C2C */ cpu->r[8] = cpu->r[8] - cpu->r[7];
|
|
/* 02031C30 */ cpu->r[9] = rbrew_rlwinm(cpu->r[8], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02031C34 */ _t13 = cpu->r[30] + 0x0000102Cu;
|
|
/* 02031C34 */ cpu->r[11] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02031C38 */ cpu->r[10] = cpu->r[30] + cpu->r[9];
|
|
/* 02031C3C */ _t14 = cpu->r[10] + 0x00000028u;
|
|
/* 02031C3C */ rbrew_write32(cpu->mem, _t14, cpu->r[11]);
|
|
/* 02031C40 */ _t15 = cpu->r[30] + 0x00001028u;
|
|
/* 02031C40 */ cpu->r[12] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02031C44 */ _t16 = cpu->r[30] + 0x0000102Cu;
|
|
/* 02031C44 */ rbrew_write32(cpu->mem, _t16, cpu->r[8]);
|
|
/* 02031C48 */ cpu->r[12] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 02031C4C */ cpu->r[0] = 0x00000000u;
|
|
/* 02031C50 */ _t17 = cpu->r[30] + 0x00001028u;
|
|
/* 02031C50 */ rbrew_write32(cpu->mem, _t17, cpu->r[12]);
|
|
/* 02031C54 */ _t18 = cpu->r[31] + 0x00000000u;
|
|
/* 02031C54 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
L_02031C58: ; // 0x2031c58
|
|
/* 02031C58 */ _t19 = cpu->r[1] + 0x00000014u;
|
|
/* 02031C58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02031C5C */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 02031C5C */ cpu->r[30] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02031C60 */ cpu->lr = cpu->r[0];
|
|
/* 02031C64 */ _t21 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02031C64 */ cpu->r[31] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02031C68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02031C6C */ return;
|
|
L_0222D9F0: ; // 0x222d9f0
|
|
/* 0222D9F0 */ cpu->r[12] = cpu->r[3];
|
|
/* 0222D9F4 */ _t22 = cpu->r[12] + 0x00000080u;
|
|
/* 0222D9F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0222D9F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0222D9FC */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222D9FC */ _t24 = _t23 & 0x00000001u;
|
|
/* 0222D9FC */ if (_t24) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0222D9FC */ goto L_0222DA00;
|
|
L_0222DA00: ; // 0x222da00
|
|
/* 0222DA00 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0222DA04 */ _t25 = cpu->r[3] + 0x00001D14u;
|
|
/* 0222DA04 */ cpu->r[3] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0222DA08 */ cpu->r[4] = cpu->r[12] + 0x00000080u;
|
|
/* 0222DA0C */ goto L_02031BD0;
|
|
}
|
|
|
|
// fn_0222DA10 @ 0x222da10
|
|
void Gambit_fn_0222DA10(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_0222DA10: ; // 0x222da10
|
|
/* 0222DA10 */ cpu->r[0] = cpu->lr;
|
|
/* 0222DA14 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0222DA14 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0222DA14 */ cpu->r[1] = _t0;
|
|
/* 0222DA18 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222DA18 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0222DA1C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0222DA1C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0222DA20 */ _t3 = cpu->r[3] + 0x00000004u;
|
|
/* 0222DA20 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0222DA24 */ _t4 = cpu->r[12] + 0x00000324u;
|
|
/* 0222DA24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0222DA28 */ cpu->ctr = cpu->r[0];
|
|
/* 0222DA2C */ cpu->r[31] = cpu->r[3];
|
|
/* 0222DA30 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222DA34 */ _t5 = cpu->r[31] + 0x000000ACu;
|
|
/* 0222DA34 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 0222DA38 */ _t6 = cpu->r[31] + 0x0000009Cu;
|
|
/* 0222DA38 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 0222DA3C */ _t7 = cpu->r[31] + 0x000000A4u;
|
|
/* 0222DA3C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 0222DA40 */ cpu->f[8] = cpu->f[6] - cpu->f[7];
|
|
/* 0222DA44 */ _t8 = cpu->r[31] + 0x00000094u;
|
|
/* 0222DA44 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 0222DA48 */ cpu->f[13] = cpu->f[11] - cpu->f[9];
|
|
/* 0222DA4C */ /* nop */
|
|
/* 0222DA50 */ /* nop */
|
|
/* 0222DA54 */ /* nop */
|
|
/* 0222DA58 */ _t9 = cpu->r[31] + 0x000000A0u;
|
|
/* 0222DA58 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 0222DA5C */ /* nop */
|
|
/* 0222DA60 */ cpu->f[1] = cpu->f[0] - cpu->f[10];
|
|
/* 0222DA64 */ cpu->f[2] = cpu->f[9] + cpu->f[10];
|
|
/* 0222DA68 */ cpu->f[4] = cpu->f[12] + cpu->f[10];
|
|
/* 0222DA6C */ cpu->r[12] = 0x10050000u;
|
|
/* 0222DA70 */ cpu->f[3] = cpu->f[11] - cpu->f[10];
|
|
/* 0222DA74 */ _t10 = cpu->r[12] + 0x0000009Cu;
|
|
/* 0222DA74 */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 0222DA78 */ Gambit_fn_02031EFC(cpu);
|
|
/* 0222DA7C */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 0222DA7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0222DA80 */ cpu->lr = cpu->r[0];
|
|
/* 0222DA84 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222DA84 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0222DA88 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0222DA8C */ return;
|
|
}
|
|
|
|
// fn_0222DA14 @ 0x222da14
|
|
void Gambit_fn_0222DA14(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_0222DA14: ; // 0x222da14
|
|
/* 0222DA14 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0222DA14 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0222DA14 */ cpu->r[1] = _t0;
|
|
/* 0222DA18 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222DA18 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0222DA1C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0222DA1C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0222DA20 */ _t3 = cpu->r[3] + 0x00000004u;
|
|
/* 0222DA20 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0222DA24 */ _t4 = cpu->r[12] + 0x00000324u;
|
|
/* 0222DA24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0222DA28 */ cpu->ctr = cpu->r[0];
|
|
/* 0222DA2C */ cpu->r[31] = cpu->r[3];
|
|
/* 0222DA30 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222DA34 */ _t5 = cpu->r[31] + 0x000000ACu;
|
|
/* 0222DA34 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 0222DA38 */ _t6 = cpu->r[31] + 0x0000009Cu;
|
|
/* 0222DA38 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 0222DA3C */ _t7 = cpu->r[31] + 0x000000A4u;
|
|
/* 0222DA3C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 0222DA40 */ cpu->f[8] = cpu->f[6] - cpu->f[7];
|
|
/* 0222DA44 */ _t8 = cpu->r[31] + 0x00000094u;
|
|
/* 0222DA44 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 0222DA48 */ cpu->f[13] = cpu->f[11] - cpu->f[9];
|
|
/* 0222DA4C */ /* nop */
|
|
/* 0222DA50 */ /* nop */
|
|
/* 0222DA54 */ /* nop */
|
|
/* 0222DA58 */ _t9 = cpu->r[31] + 0x000000A0u;
|
|
/* 0222DA58 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 0222DA5C */ /* nop */
|
|
/* 0222DA60 */ cpu->f[1] = cpu->f[0] - cpu->f[10];
|
|
/* 0222DA64 */ cpu->f[2] = cpu->f[9] + cpu->f[10];
|
|
/* 0222DA68 */ cpu->f[4] = cpu->f[12] + cpu->f[10];
|
|
/* 0222DA6C */ cpu->r[12] = 0x10050000u;
|
|
/* 0222DA70 */ cpu->f[3] = cpu->f[11] - cpu->f[10];
|
|
/* 0222DA74 */ _t10 = cpu->r[12] + 0x0000009Cu;
|
|
/* 0222DA74 */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 0222DA78 */ Gambit_fn_02031EFC(cpu);
|
|
/* 0222DA7C */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 0222DA7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0222DA80 */ cpu->lr = cpu->r[0];
|
|
/* 0222DA84 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222DA84 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0222DA88 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0222DA8C */ return;
|
|
}
|
|
|
|
// fn_0222DA90 @ 0x222da90
|
|
void Gambit_fn_0222DA90(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_0222DA90: ; // 0x222da90
|
|
/* 0222DA90 */ _t0 = cpu->r[3] + 0x00000114u;
|
|
/* 0222DA90 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0222DA94 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000010u, 0x00000010u);
|
|
/* 0222DA94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0222DA98 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222DA98 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0222DA98 */ if (_t2) goto L_0222DA9C; else goto L_0222DAC0;
|
|
L_0222DA9C: ; // 0x222da9c
|
|
/* 0222DA9C */ _t3 = cpu->r[3] + 0x00000114u;
|
|
/* 0222DA9C */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0222DAA0 */ _t4 = cpu->r[3] + 0x00000094u;
|
|
/* 0222DAA0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 0222DAA4 */ cpu->r[12] = cpu->r[12] | 0x00008000u;
|
|
/* 0222DAA8 */ _t5 = cpu->r[3] + 0x00000098u;
|
|
/* 0222DAA8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 0222DAAC */ _t6 = cpu->r[3] + 0x0000011Cu;
|
|
/* 0222DAAC */ rbrew_write_f32(cpu->mem, _t6, cpu->f[12]);
|
|
/* 0222DAB0 */ _t7 = cpu->r[3] + 0x0000009Cu;
|
|
/* 0222DAB0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 0222DAB4 */ _t8 = cpu->r[3] + 0x00000120u;
|
|
/* 0222DAB4 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[13]);
|
|
/* 0222DAB8 */ _t9 = cpu->r[3] + 0x00000114u;
|
|
/* 0222DAB8 */ rbrew_write32(cpu->mem, _t9, cpu->r[12]);
|
|
/* 0222DABC */ _t10 = cpu->r[3] + 0x00000124u;
|
|
/* 0222DABC */ rbrew_write_f32(cpu->mem, _t10, cpu->f[0]);
|
|
L_0222DAC0: ; // 0x222dac0
|
|
/* 0222DAC0 */ _t11 = cpu->r[4] + 0x00000000u;
|
|
/* 0222DAC0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 0222DAC4 */ _t12 = cpu->r[3] + 0x00000094u;
|
|
/* 0222DAC4 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[13]);
|
|
/* 0222DAC8 */ _t13 = cpu->r[4] + 0x00000004u;
|
|
/* 0222DAC8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 0222DACC */ _t14 = cpu->r[3] + 0x00000098u;
|
|
/* 0222DACC */ rbrew_write_f32(cpu->mem, _t14, cpu->f[0]);
|
|
/* 0222DAD0 */ _t15 = cpu->r[4] + 0x00000008u;
|
|
/* 0222DAD0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 0222DAD4 */ _t16 = cpu->r[3] + 0x0000009Cu;
|
|
/* 0222DAD4 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[0]);
|
|
/* 0222DAD8 */ return;
|
|
}
|
|
|
|
// fn_0222DADC @ 0x222dadc
|
|
void Gambit_fn_0222DADC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_0222DADC: ; // 0x222dadc
|
|
/* 0222DADC */ cpu->r[0] = cpu->lr;
|
|
/* 0222DAE0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0222DAE0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0222DAE0 */ cpu->r[1] = _t0;
|
|
/* 0222DAE4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222DAE4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0222DAE8 */ cpu->r[31] = cpu->r[3];
|
|
/* 0222DAEC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0222DAEC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0222DAF0 */ _t3 = cpu->r[31] + 0x00000114u;
|
|
/* 0222DAF0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0222DAF4 */ cpu->r[12] = rbrew_rlwinm(cpu->r[12], 0x00000000u, 0x00000008u, 0x00000009u);
|
|
/* 0222DAF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0222DAF8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222DAF8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0222DAF8 */ if (_t5) goto L_0222DB18; else goto L_0222DAFC;
|
|
L_0222DAFC: ; // 0x222dafc
|
|
/* 0222DAFC */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 0222DAFC */ cpu->r[11] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0222DB00 */ _t7 = cpu->r[11] + 0x00000304u;
|
|
/* 0222DB00 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0222DB04 */ cpu->ctr = cpu->r[0];
|
|
/* 0222DB08 */ cpu->r[3] = cpu->r[31];
|
|
/* 0222DB0C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222DB10 */ cpu->r[3] = cpu->r[31];
|
|
/* 0222DB14 */ Gambit_fn_02790488(cpu);
|
|
L_0222DB18: ; // 0x222db18
|
|
/* 0222DB18 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 0222DB18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0222DB1C */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222DB1C */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0222DB20 */ cpu->lr = cpu->r[0];
|
|
/* 0222DB24 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0222DB28 */ return;
|
|
}
|
|
|
|
// fn_0222DAE0 @ 0x222dae0
|
|
void Gambit_fn_0222DAE0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_0222DAE0: ; // 0x222dae0
|
|
/* 0222DAE0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0222DAE0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0222DAE0 */ cpu->r[1] = _t0;
|
|
/* 0222DAE4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222DAE4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0222DAE8 */ cpu->r[31] = cpu->r[3];
|
|
/* 0222DAEC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0222DAEC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0222DAF0 */ _t3 = cpu->r[31] + 0x00000114u;
|
|
/* 0222DAF0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0222DAF4 */ cpu->r[12] = rbrew_rlwinm(cpu->r[12], 0x00000000u, 0x00000008u, 0x00000009u);
|
|
/* 0222DAF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0222DAF8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222DAF8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0222DAF8 */ if (_t5) goto L_0222DB18; else goto L_0222DAFC;
|
|
L_0222DAFC: ; // 0x222dafc
|
|
/* 0222DAFC */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 0222DAFC */ cpu->r[11] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0222DB00 */ _t7 = cpu->r[11] + 0x00000304u;
|
|
/* 0222DB00 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0222DB04 */ cpu->ctr = cpu->r[0];
|
|
/* 0222DB08 */ cpu->r[3] = cpu->r[31];
|
|
/* 0222DB0C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222DB10 */ cpu->r[3] = cpu->r[31];
|
|
/* 0222DB14 */ Gambit_fn_02790488(cpu);
|
|
L_0222DB18: ; // 0x222db18
|
|
/* 0222DB18 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 0222DB18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0222DB1C */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222DB1C */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0222DB20 */ cpu->lr = cpu->r[0];
|
|
/* 0222DB24 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0222DB28 */ return;
|
|
}
|
|
|
|
// fn_0222DB2C @ 0x222db2c
|
|
void Gambit_fn_0222DB2C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _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, _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, _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;
|
|
double _ft78, _ft79, _ft123, _ft124;
|
|
|
|
L_0222DB2C: ; // 0x222db2c
|
|
/* 0222DB2C */ _t0 = cpu->r[1] + 0xFFFFFF00u;
|
|
/* 0222DB2C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0222DB2C */ cpu->r[1] = _t0;
|
|
/* 0222DB30 */ /* nop */
|
|
/* 0222DB34 */ cpu->r[0] = cpu->lr;
|
|
/* 0222DB38 */ _t1 = cpu->r[1] + 0x000000C0u;
|
|
/* 0222DB38 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[28]);
|
|
/* 0222DB3C */ /* nop */
|
|
/* 0222DB40 */ _t2 = cpu->r[1] + 0x000000B0u;
|
|
/* 0222DB40 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[27]);
|
|
/* 0222DB44 */ _t3 = cpu->r[1] + 0x000000C8u;
|
|
/* 0222DB44 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[28]);
|
|
/* 0222DB48 */ /* nop */
|
|
/* 0222DB4C */ _t4 = cpu->r[1] + 0x000000D0u;
|
|
/* 0222DB4C */ rbrew_write_f64(cpu->mem, _t4, cpu->f[29]);
|
|
/* 0222DB50 */ _t5 = cpu->r[1] + 0x000000B8u;
|
|
/* 0222DB50 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[27]);
|
|
/* 0222DB54 */ /* nop */
|
|
/* 0222DB58 */ _t6 = cpu->r[1] + 0x000000E0u;
|
|
/* 0222DB58 */ rbrew_write_f64(cpu->mem, _t6, cpu->f[30]);
|
|
/* 0222DB5C */ _t7 = cpu->r[1] + 0x000000D8u;
|
|
/* 0222DB5C */ rbrew_write_f32(cpu->mem, _t7, cpu->f[29]);
|
|
/* 0222DB60 */ /* nop */
|
|
/* 0222DB64 */ _t8 = cpu->r[1] + 0x000000F0u;
|
|
/* 0222DB64 */ rbrew_write_f64(cpu->mem, _t8, cpu->f[31]);
|
|
/* 0222DB68 */ _t9 = cpu->r[1] + 0x000000E8u;
|
|
/* 0222DB68 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[30]);
|
|
/* 0222DB6C */ /* nop */
|
|
/* 0222DB70 */ _t10 = cpu->r[1] + 0x00000104u;
|
|
/* 0222DB70 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 0222DB74 */ cpu->r[31] = cpu->r[3];
|
|
/* 0222DB78 */ _t11 = cpu->r[1] + 0x000000F8u;
|
|
/* 0222DB78 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[31]);
|
|
/* 0222DB7C */ _t12 = cpu->r[31] + 0x00000114u;
|
|
/* 0222DB7C */ cpu->r[8] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0222DB80 */ cpu->r[8] = rbrew_rlwinm(cpu->r[8], 0x00000000u, 0x0000000Cu, 0x0000000Du);
|
|
/* 0222DB80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0222DB84 */ cpu->r[30] = cpu->r[4];
|
|
/* 0222DB88 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222DB88 */ _t14 = _t13 & 0x00000001u;
|
|
/* 0222DB88 */ if (_t14) goto L_0222E00C; else goto L_0222DB8C;
|
|
L_0222DB8C: ; // 0x222db8c
|
|
/* 0222DB8C */ cpu->r[29] = cpu->r[31] + 0x00000088u;
|
|
/* 0222DB90 */ cpu->r[3] = cpu->r[1] + 0x0000003Cu;
|
|
/* 0222DB94 */ Gambit_fn_02043B24(cpu);
|
|
/* 0222DB98 */ _t15 = cpu->r[31] + 0x00000004u;
|
|
/* 0222DB98 */ cpu->r[12] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0222DB9C */ _t16 = cpu->r[12] + 0x00000254u;
|
|
/* 0222DB9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0222DBA0 */ cpu->ctr = cpu->r[0];
|
|
/* 0222DBA4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0222DBA8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222DBAC */ /* nop */
|
|
/* 0222DBB0 */ cpu->r[12] = 0x10050000u;
|
|
/* 0222DBB4 */ _t17 = cpu->r[31] + 0x000000A0u;
|
|
/* 0222DBB4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 0222DBB8 */ cpu->r[28] = 0x101E0000u;
|
|
/* 0222DBBC */ _t18 = cpu->r[12] + 0x0000009Cu;
|
|
/* 0222DBBC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 0222DBC0 */ cpu->r[12] = 0x10050000u;
|
|
/* 0222DBC4 */ /* nop */
|
|
/* 0222DBC8 */ cpu->r[6] = 0x101F0000u;
|
|
/* 0222DBCC */ cpu->f[28] = cpu->f[31];
|
|
/* 0222DBD0 */ _t19 = cpu->r[12] + 0x00000120u;
|
|
/* 0222DBD0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 0222DBD4 */ /* nop */
|
|
/* 0222DBD8 */ _t20 = cpu->r[6] + 0x00006338u;
|
|
/* 0222DBD8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 0222DBD8 */ cpu->r[6] = _t20;
|
|
/* 0222DBDC */ cpu->f[7] = cpu->f[8] - cpu->f[12];
|
|
/* 0222DBE0 */ /* nop */
|
|
/* 0222DBE4 */ _t21 = cpu->r[31] + 0x00000090u;
|
|
/* 0222DBE4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 0222DBE8 */ _t22 = cpu->r[3] + 0x00000008u;
|
|
/* 0222DBE8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 0222DBEC */ /* nop */
|
|
/* 0222DBF0 */ _t23 = cpu->r[1] + 0x00000018u;
|
|
/* 0222DBF0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 0222DBF4 */ cpu->f[10] = cpu->f[10] - cpu->f[0];
|
|
/* 0222DBF8 */ cpu->r[27] = 0x101C0000u;
|
|
/* 0222DBFC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[11]);
|
|
/* 0222DC00 */ cpu->r[28] = cpu->r[28] + 0xFFFF958Cu;
|
|
/* 0222DC04 */ _t24 = cpu->r[1] + 0x00000020u;
|
|
/* 0222DC04 */ rbrew_write_f32(cpu->mem, _t24, cpu->f[10]);
|
|
/* 0222DC08 */ cpu->r[27] = cpu->r[27] + 0x00001EF8u;
|
|
/* 0222DC0C */ cpu->f[29] = cpu->f[31];
|
|
/* 0222DC10 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222DC10 */ _t26 = _t25 & 0x00000001u;
|
|
/* 0222DC10 */ if (_t26) goto L_0222DC14; else goto L_0222DC74;
|
|
L_0222DC14: ; // 0x222dc14
|
|
/* 0222DC14 */ _t27 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0222DC14 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 0222DC18 */ _t28 = cpu->r[6] + 0x00000004u;
|
|
/* 0222DC18 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 0222DC1C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[13]);
|
|
/* 0222DC20 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222DC20 */ _t30 = _t29 & 0x00000001u;
|
|
/* 0222DC20 */ if (_t30) goto L_0222DC24; else goto L_0222DC74;
|
|
L_0222DC24: ; // 0x222dc24
|
|
/* 0222DC24 */ _t31 = cpu->r[6] + 0x00000008u;
|
|
/* 0222DC24 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 0222DC28 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[0]);
|
|
/* 0222DC2C */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222DC2C */ _t33 = _t32 & 0x00000001u;
|
|
/* 0222DC2C */ if (_t33) goto L_0222DC30; else goto L_0222DC74;
|
|
L_0222DC30: ; // 0x222dc30
|
|
/* 0222DC30 */ _t34 = cpu->r[28] + 0x00000000u;
|
|
/* 0222DC30 */ cpu->f[2] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 0222DC34 */ cpu->r[11] = cpu->r[1] + 0x0000003Cu;
|
|
/* 0222DC38 */ cpu->f[1] = cpu->f[27];
|
|
/* 0222DC3C */ _t35 = cpu->r[27] + 0x00000000u;
|
|
/* 0222DC3C */ cpu->r[3] = rbrew_read32(cpu->mem, _t35);
|
|
/* 0222DC40 */ cpu->r[5] = 0x00000000u;
|
|
/* 0222DC44 */ cpu->r[4] = cpu->r[29];
|
|
/* 0222DC48 */ _t36 = cpu->r[1] + 0x00000040u;
|
|
/* 0222DC48 */ cpu->r[9] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0222DC4C */ cpu->r[7] = cpu->r[5];
|
|
/* 0222DC50 */ cpu->r[6] = cpu->r[5];
|
|
/* 0222DC54 */ cpu->r[8] = 0x000001FFu;
|
|
/* 0222DC58 */ cpu->r[10] = cpu->r[7];
|
|
/* 0222DC5C */ _t37 = cpu->r[1] + 0x00000008u;
|
|
/* 0222DC5C */ rbrew_write32(cpu->mem, _t37, cpu->r[11]);
|
|
/* 0222DC60 */ Gambit_fn_0204A4DC(cpu);
|
|
/* 0222DC64 */ cpu->r[0] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0222DC64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0222DC68 */ _t38 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0222DC68 */ rbrew_write32(cpu->mem, _t38, cpu->r[3]);
|
|
/* 0222DC6C */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222DC6C */ _t40 = _t39 & 0x00000001u;
|
|
/* 0222DC6C */ if (_t40) goto L_0222DF94; else goto L_0222DC70;
|
|
L_0222DC70: ; // 0x222dc70
|
|
/* 0222DC70 */ goto L_0222DFC8;
|
|
L_0222DC74: ; // 0x222dc74
|
|
/* 0222DC74 */ _t41 = cpu->r[31] + 0x00000004u;
|
|
/* 0222DC74 */ cpu->r[7] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0222DC78 */ _t42 = cpu->r[7] + 0x00000254u;
|
|
/* 0222DC78 */ cpu->r[8] = rbrew_read32(cpu->mem, _t42);
|
|
/* 0222DC7C */ cpu->ctr = cpu->r[8];
|
|
/* 0222DC80 */ cpu->r[3] = cpu->r[31];
|
|
/* 0222DC84 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222DC88 */ _t43 = cpu->r[29] + 0x00000000u;
|
|
/* 0222DC88 */ cpu->r[10] = rbrew_read32(cpu->mem, _t43);
|
|
/* 0222DC8C */ _t44 = cpu->r[1] + 0x00000080u;
|
|
/* 0222DC8C */ rbrew_write32(cpu->mem, _t44, cpu->r[10]);
|
|
/* 0222DC90 */ _t45 = cpu->r[29] + 0x00000004u;
|
|
/* 0222DC90 */ cpu->r[0] = rbrew_read32(cpu->mem, _t45);
|
|
/* 0222DC94 */ _t46 = cpu->r[1] + 0x00000084u;
|
|
/* 0222DC94 */ rbrew_write32(cpu->mem, _t46, cpu->r[0]);
|
|
/* 0222DC98 */ _t47 = cpu->r[29] + 0x00000008u;
|
|
/* 0222DC98 */ cpu->r[6] = rbrew_read32(cpu->mem, _t47);
|
|
/* 0222DC9C */ _t48 = cpu->r[1] + 0x00000088u;
|
|
/* 0222DC9C */ rbrew_write32(cpu->mem, _t48, cpu->r[6]);
|
|
/* 0222DCA0 */ _t49 = cpu->r[3] + 0x00000000u;
|
|
/* 0222DCA0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t49);
|
|
/* 0222DCA4 */ _t50 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0222DCA4 */ rbrew_write32(cpu->mem, _t50, cpu->r[10]);
|
|
/* 0222DCA8 */ _t51 = cpu->r[3] + 0x00000004u;
|
|
/* 0222DCA8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t51);
|
|
/* 0222DCAC */ _t52 = cpu->r[1] + 0x00000090u;
|
|
/* 0222DCAC */ rbrew_write32(cpu->mem, _t52, cpu->r[11]);
|
|
/* 0222DCB0 */ _t53 = cpu->r[3] + 0x00000008u;
|
|
/* 0222DCB0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t53);
|
|
/* 0222DCB4 */ _t54 = cpu->r[1] + 0x00000094u;
|
|
/* 0222DCB4 */ rbrew_write32(cpu->mem, _t54, cpu->r[0]);
|
|
/* 0222DCB8 */ cpu->r[5] = cpu->r[1] + 0x0000004Cu;
|
|
/* 0222DCBC */ cpu->r[4] = cpu->r[1] + 0x00000080u;
|
|
/* 0222DCC0 */ cpu->r[3] = cpu->r[30];
|
|
/* 0222DCC4 */ Gambit_fn_02819764(cpu);
|
|
/* 0222DCC8 */ _t55 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0222DCC8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 0222DCCC */ _t56 = cpu->r[1] + 0x00000020u;
|
|
/* 0222DCCC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 0222DCD0 */ /* nop */
|
|
/* 0222DCD4 */ /* nop */
|
|
/* 0222DCD8 */ _t57 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0222DCD8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t57);
|
|
/* 0222DCDC */ cpu->f[8] = cpu->f[10] * cpu->f[0];
|
|
/* 0222DCE0 */ _t58 = cpu->r[1] + 0x00000060u;
|
|
/* 0222DCE0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t58);
|
|
/* 0222DCE4 */ _t59 = cpu->r[1] + 0x00000030u;
|
|
/* 0222DCE4 */ rbrew_write32(cpu->mem, _t59, cpu->r[9]);
|
|
/* 0222DCE8 */ _t60 = cpu->r[1] + 0x00000064u;
|
|
/* 0222DCE8 */ rbrew_write_f32(cpu->mem, _t60, cpu->f[8]);
|
|
/* 0222DCEC */ _t61 = cpu->r[1] + 0x00000064u;
|
|
/* 0222DCEC */ cpu->r[11] = rbrew_read32(cpu->mem, _t61);
|
|
/* 0222DCF0 */ _t62 = cpu->r[1] + 0x00000034u;
|
|
/* 0222DCF0 */ rbrew_write32(cpu->mem, _t62, cpu->r[10]);
|
|
/* 0222DCF4 */ /* nop */
|
|
/* 0222DCF8 */ _t63 = cpu->r[1] + 0x00000038u;
|
|
/* 0222DCF8 */ rbrew_write32(cpu->mem, _t63, cpu->r[11]);
|
|
/* 0222DCFC */ /* nop */
|
|
/* 0222DD00 */ _t64 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0222DD00 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 0222DD04 */ /* nop */
|
|
/* 0222DD08 */ _t65 = cpu->r[1] + 0x00000018u;
|
|
/* 0222DD08 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t65);
|
|
/* 0222DD0C */ cpu->f[8] = cpu->f[0] * cpu->f[0];
|
|
/* 0222DD10 */ /* nop */
|
|
/* 0222DD14 */ _t66 = cpu->r[29] + 0x00000008u;
|
|
/* 0222DD14 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t66);
|
|
/* 0222DD18 */ _t67 = cpu->r[1] + 0x00000038u;
|
|
/* 0222DD18 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t67);
|
|
/* 0222DD1C */ cpu->f[13] = fma(cpu->f[7], cpu->f[7], cpu->f[8]);
|
|
/* 0222DD20 */ _t68 = cpu->r[1] + 0x00000050u;
|
|
/* 0222DD20 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t68);
|
|
/* 0222DD24 */ cpu->f[8] = cpu->f[12] + cpu->f[0];
|
|
/* 0222DD28 */ _t69 = cpu->r[1] + 0x00000054u;
|
|
/* 0222DD28 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t69);
|
|
/* 0222DD2C */ cpu->r[9] = 0x10050000u;
|
|
/* 0222DD30 */ _t70 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222DD30 */ rbrew_write_f32(cpu->mem, _t70, cpu->f[9]);
|
|
/* 0222DD34 */ cpu->f[11] = fma(cpu->f[10], cpu->f[10], cpu->f[13]);
|
|
/* 0222DD38 */ _t71 = cpu->r[1] + 0x00000014u;
|
|
/* 0222DD38 */ rbrew_write_f32(cpu->mem, _t71, cpu->f[8]);
|
|
/* 0222DD3C */ cpu->r[7] = 0x10050000u;
|
|
/* 0222DD40 */ _t72 = cpu->r[1] + 0x00000010u;
|
|
/* 0222DD40 */ rbrew_write_f32(cpu->mem, _t72, cpu->f[7]);
|
|
/* 0222DD44 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[31]);
|
|
/* 0222DD48 */ _t73 = cpu->r[9] + 0x000000A0u;
|
|
/* 0222DD48 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t73);
|
|
/* 0222DD4C */ _t74 = cpu->r[7] + 0x000000A4u;
|
|
/* 0222DD4C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t74);
|
|
/* 0222DD50 */ _t75 = cpu->r[1] + 0x00000058u;
|
|
/* 0222DD50 */ rbrew_write_f32(cpu->mem, _t75, cpu->f[8]);
|
|
/* 0222DD54 */ _t76 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0222DD54 */ _t77 = _t76 & 0x00000001u;
|
|
/* 0222DD54 */ if (_t77) goto L_0222DD58; else goto L_0222DD88;
|
|
L_0222DD58: ; // 0x222dd58
|
|
/* 0222DD58 */ _ft78 = sqrt(cpu->f[11]);
|
|
/* 0222DD58 */ _ft79 = (double)(int32_t)0x00000001u;
|
|
/* 0222DD58 */ cpu->f[8] = _ft79 / _ft78;
|
|
/* 0222DD5C */ cpu->f[12] = cpu->f[8] * cpu->f[8];
|
|
/* 0222DD60 */ cpu->f[9] = cpu->f[8] * cpu->f[0];
|
|
/* 0222DD64 */ cpu->f[12] = -fma(cpu->f[12], cpu->f[11], -(cpu->f[13]));
|
|
/* 0222DD68 */ cpu->f[8] = cpu->f[12] * cpu->f[9];
|
|
/* 0222DD6C */ _t80 = cpu->r[1] + 0x00000020u;
|
|
/* 0222DD6C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t80);
|
|
/* 0222DD70 */ /* nop */
|
|
/* 0222DD74 */ cpu->f[10] = cpu->f[10] * cpu->f[8];
|
|
/* 0222DD78 */ /* nop */
|
|
/* 0222DD7C */ /* nop */
|
|
/* 0222DD80 */ _t81 = cpu->r[1] + 0x00000020u;
|
|
/* 0222DD80 */ rbrew_write_f32(cpu->mem, _t81, cpu->f[10]);
|
|
/* 0222DD84 */ /* nop */
|
|
L_0222DD88: ; // 0x222dd88
|
|
/* 0222DD88 */ cpu->f[10] = cpu->f[10] * cpu->f[27];
|
|
/* 0222DD8C */ _t82 = cpu->r[1] + 0x00000014u;
|
|
/* 0222DD8C */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t82);
|
|
/* 0222DD90 */ /* nop */
|
|
/* 0222DD94 */ _t83 = cpu->r[1] + 0x00000070u;
|
|
/* 0222DD94 */ rbrew_write_f32(cpu->mem, _t83, cpu->f[10]);
|
|
/* 0222DD98 */ _t84 = cpu->r[1] + 0x00000070u;
|
|
/* 0222DD98 */ cpu->r[9] = rbrew_read32(cpu->mem, _t84);
|
|
/* 0222DD9C */ /* nop */
|
|
/* 0222DDA0 */ _t85 = cpu->r[1] + 0x00000068u;
|
|
/* 0222DDA0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t85);
|
|
/* 0222DDA4 */ _t86 = cpu->r[1] + 0x00000038u;
|
|
/* 0222DDA4 */ rbrew_write32(cpu->mem, _t86, cpu->r[9]);
|
|
/* 0222DDA8 */ _t87 = cpu->r[1] + 0x00000038u;
|
|
/* 0222DDA8 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t87);
|
|
/* 0222DDAC */ _t88 = cpu->r[1] + 0x0000006Cu;
|
|
/* 0222DDAC */ cpu->r[8] = rbrew_read32(cpu->mem, _t88);
|
|
/* 0222DDB0 */ _t89 = cpu->r[1] + 0x00000030u;
|
|
/* 0222DDB0 */ rbrew_write32(cpu->mem, _t89, cpu->r[7]);
|
|
/* 0222DDB4 */ _t90 = cpu->r[1] + 0x00000034u;
|
|
/* 0222DDB4 */ rbrew_write32(cpu->mem, _t90, cpu->r[8]);
|
|
/* 0222DDB8 */ /* nop */
|
|
/* 0222DDBC */ cpu->f[5] = cpu->f[5] - cpu->f[7];
|
|
/* 0222DDC0 */ /* nop */
|
|
/* 0222DDC4 */ /* nop */
|
|
/* 0222DDC8 */ _t91 = cpu->r[1] + 0x00000014u;
|
|
/* 0222DDC8 */ rbrew_write_f32(cpu->mem, _t91, cpu->f[5]);
|
|
/* 0222DDCC */ /* nop */
|
|
/* 0222DDD0 */ /* nop */
|
|
/* 0222DDD4 */ _t92 = cpu->r[1] + 0x00000074u;
|
|
/* 0222DDD4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t92);
|
|
/* 0222DDD8 */ /* nop */
|
|
/* 0222DDDC */ _t93 = cpu->r[29] + 0x00000008u;
|
|
/* 0222DDDC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t93);
|
|
/* 0222DDE0 */ _t94 = cpu->r[1] + 0x00000078u;
|
|
/* 0222DDE0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t94);
|
|
/* 0222DDE4 */ cpu->f[8] = cpu->f[5] - cpu->f[9];
|
|
/* 0222DDE8 */ _t95 = cpu->r[1] + 0x00000030u;
|
|
/* 0222DDE8 */ rbrew_write32(cpu->mem, _t95, cpu->r[11]);
|
|
/* 0222DDEC */ _t96 = cpu->r[1] + 0x00000034u;
|
|
/* 0222DDEC */ rbrew_write32(cpu->mem, _t96, cpu->r[0]);
|
|
/* 0222DDF0 */ /* nop */
|
|
/* 0222DDF4 */ _t97 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0222DDF4 */ rbrew_write_f32(cpu->mem, _t97, cpu->f[8]);
|
|
/* 0222DDF8 */ _t98 = cpu->r[1] + 0x0000007Cu;
|
|
/* 0222DDF8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t98);
|
|
/* 0222DDFC */ /* nop */
|
|
/* 0222DE00 */ _t99 = cpu->r[1] + 0x00000020u;
|
|
/* 0222DE00 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t99);
|
|
/* 0222DE04 */ /* nop */
|
|
/* 0222DE08 */ _t100 = cpu->r[1] + 0x00000038u;
|
|
/* 0222DE08 */ rbrew_write32(cpu->mem, _t100, cpu->r[5]);
|
|
/* 0222DE0C */ _t101 = cpu->r[1] + 0x00000038u;
|
|
/* 0222DE0C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t101);
|
|
/* 0222DE10 */ cpu->f[12] = fma(cpu->f[9], cpu->f[10], cpu->f[7]);
|
|
/* 0222DE14 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[31]);
|
|
/* 0222DE18 */ _t102 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0222DE18 */ _t103 = _t102 & 0x00000001u;
|
|
/* 0222DE18 */ if (_t103) goto L_0222DE1C; else goto L_0222DE50;
|
|
L_0222DE1C: ; // 0x222de1c
|
|
/* 0222DE1C */ /* nop */
|
|
/* 0222DE20 */ _t104 = cpu->r[1] + 0x00000028u;
|
|
/* 0222DE20 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t104);
|
|
/* 0222DE24 */ _t105 = cpu->r[1] + 0x00000014u;
|
|
/* 0222DE24 */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t105);
|
|
/* 0222DE28 */ cpu->f[10] = cpu->f[11] * cpu->f[11];
|
|
/* 0222DE2C */ _t106 = cpu->r[29] + 0x00000008u;
|
|
/* 0222DE2C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t106);
|
|
/* 0222DE30 */ _t107 = cpu->r[1] + 0x00000024u;
|
|
/* 0222DE30 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t107);
|
|
/* 0222DE34 */ cpu->f[9] = cpu->f[5] - cpu->f[7];
|
|
/* 0222DE38 */ cpu->f[12] = fma(cpu->f[11], cpu->f[11], cpu->f[10]);
|
|
/* 0222DE3C */ cpu->f[29] = fma(cpu->f[9], cpu->f[9], cpu->f[12]);
|
|
/* 0222DE40 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[29], cpu->f[31]);
|
|
/* 0222DE44 */ _t108 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0222DE44 */ rbrew_write_f32(cpu->mem, _t108, cpu->f[9]);
|
|
/* 0222DE48 */ _t109 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0222DE48 */ _t110 = _t109 & 0x00000001u;
|
|
/* 0222DE48 */ if (_t110) goto L_0222DE4C; else goto L_0222DECC;
|
|
L_0222DE4C: ; // 0x222de4c
|
|
/* 0222DE4C */ goto L_0222DE9C;
|
|
L_0222DE50: ; // 0x222de50
|
|
/* 0222DE50 */ _t111 = cpu->r[29] + 0x00000000u;
|
|
/* 0222DE50 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t111);
|
|
/* 0222DE54 */ _t112 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222DE54 */ rbrew_write_f32(cpu->mem, _t112, cpu->f[7]);
|
|
/* 0222DE58 */ _t113 = cpu->r[29] + 0x00000004u;
|
|
/* 0222DE58 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t113);
|
|
/* 0222DE5C */ _t114 = cpu->r[1] + 0x00000010u;
|
|
/* 0222DE5C */ rbrew_write_f32(cpu->mem, _t114, cpu->f[8]);
|
|
/* 0222DE60 */ /* nop */
|
|
/* 0222DE64 */ _t115 = cpu->r[29] + 0x00000008u;
|
|
/* 0222DE64 */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t115);
|
|
/* 0222DE68 */ /* nop */
|
|
/* 0222DE6C */ /* nop */
|
|
/* 0222DE70 */ _t116 = cpu->r[1] + 0x00000028u;
|
|
/* 0222DE70 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t116);
|
|
/* 0222DE74 */ _t117 = cpu->r[1] + 0x00000014u;
|
|
/* 0222DE74 */ rbrew_write_f32(cpu->mem, _t117, cpu->f[5]);
|
|
/* 0222DE78 */ _t118 = cpu->r[29] + 0x00000008u;
|
|
/* 0222DE78 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t118);
|
|
/* 0222DE7C */ cpu->f[10] = cpu->f[11] * cpu->f[11];
|
|
/* 0222DE80 */ _t119 = cpu->r[1] + 0x00000024u;
|
|
/* 0222DE80 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t119);
|
|
/* 0222DE84 */ cpu->f[9] = cpu->f[5] - cpu->f[7];
|
|
/* 0222DE88 */ cpu->f[12] = fma(cpu->f[11], cpu->f[11], cpu->f[10]);
|
|
/* 0222DE8C */ cpu->f[29] = fma(cpu->f[9], cpu->f[9], cpu->f[12]);
|
|
/* 0222DE90 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[29], cpu->f[31]);
|
|
/* 0222DE94 */ _t120 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0222DE94 */ rbrew_write_f32(cpu->mem, _t120, cpu->f[9]);
|
|
/* 0222DE98 */ _t121 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0222DE98 */ _t122 = _t121 & 0x00000001u;
|
|
/* 0222DE98 */ if (_t122) goto L_0222DE9C; else goto L_0222DECC;
|
|
L_0222DE9C: ; // 0x222de9c
|
|
/* 0222DE9C */ _ft123 = sqrt(cpu->f[29]);
|
|
/* 0222DE9C */ _ft124 = (double)(int32_t)0x00000001u;
|
|
/* 0222DE9C */ cpu->f[7] = _ft124 / _ft123;
|
|
/* 0222DEA0 */ cpu->f[9] = cpu->f[7] * cpu->f[7];
|
|
/* 0222DEA4 */ cpu->f[11] = cpu->f[7] * cpu->f[0];
|
|
/* 0222DEA8 */ cpu->f[9] = -fma(cpu->f[9], cpu->f[29], -(cpu->f[13]));
|
|
/* 0222DEAC */ cpu->f[7] = cpu->f[9] * cpu->f[11];
|
|
/* 0222DEB0 */ /* nop */
|
|
/* 0222DEB4 */ _t125 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0222DEB4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t125);
|
|
/* 0222DEB8 */ /* nop */
|
|
/* 0222DEBC */ cpu->f[13] = cpu->f[13] * cpu->f[7];
|
|
/* 0222DEC0 */ /* nop */
|
|
/* 0222DEC4 */ cpu->f[29] = cpu->f[29] * cpu->f[7];
|
|
/* 0222DEC8 */ _t126 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0222DEC8 */ rbrew_write_f32(cpu->mem, _t126, cpu->f[13]);
|
|
L_0222DECC: ; // 0x222decc
|
|
/* 0222DECC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[29], cpu->f[31]);
|
|
/* 0222DED0 */ _t127 = cpu->r[27] + 0x00000000u;
|
|
/* 0222DED0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t127);
|
|
/* 0222DED4 */ _t128 = cpu->r[28] + 0x00000000u;
|
|
/* 0222DED4 */ cpu->f[3] = rbrew_read_f32(cpu->mem, _t128);
|
|
/* 0222DED8 */ cpu->r[4] = cpu->r[29];
|
|
/* 0222DEDC */ _t129 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222DEDC */ _t130 = _t129 & 0x00000001u;
|
|
/* 0222DEDC */ if (_t130) goto L_0222DEE0; else goto L_0222DF1C;
|
|
L_0222DEE0: ; // 0x222dee0
|
|
/* 0222DEE0 */ cpu->f[1] = cpu->f[27];
|
|
/* 0222DEE4 */ cpu->r[5] = 0x00000000u;
|
|
/* 0222DEE8 */ _t131 = cpu->r[1] + 0x00000040u;
|
|
/* 0222DEE8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t131);
|
|
/* 0222DEEC */ cpu->f[2] = cpu->f[3];
|
|
/* 0222DEF0 */ cpu->r[7] = cpu->r[5];
|
|
/* 0222DEF4 */ cpu->r[8] = 0x000001FFu;
|
|
/* 0222DEF8 */ cpu->r[0] = cpu->r[1] + 0x0000003Cu;
|
|
/* 0222DEFC */ cpu->r[10] = cpu->r[7];
|
|
/* 0222DF00 */ cpu->r[6] = cpu->r[5];
|
|
/* 0222DF04 */ _t132 = cpu->r[1] + 0x00000008u;
|
|
/* 0222DF04 */ rbrew_write32(cpu->mem, _t132, cpu->r[0]);
|
|
/* 0222DF08 */ Gambit_fn_0204A4DC(cpu);
|
|
/* 0222DF0C */ cpu->r[0] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0222DF0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0222DF10 */ _t133 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0222DF10 */ rbrew_write32(cpu->mem, _t133, cpu->r[3]);
|
|
/* 0222DF14 */ _t134 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222DF14 */ _t135 = _t134 & 0x00000001u;
|
|
/* 0222DF14 */ if (_t135) goto L_0222DF94; else goto L_0222DF18;
|
|
L_0222DF18: ; // 0x222df18
|
|
/* 0222DF18 */ goto L_0222DFC8;
|
|
L_0222DF1C: ; // 0x222df1c
|
|
/* 0222DF1C */ cpu->f[1] = cpu->f[29] + cpu->f[28];
|
|
/* 0222DF20 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[31]);
|
|
/* 0222DF24 */ _t136 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0222DF24 */ _t137 = _t136 & 0x00000001u;
|
|
/* 0222DF24 */ if (_t137) goto L_0222DF64; else goto L_0222DF28;
|
|
L_0222DF28: ; // 0x222df28
|
|
/* 0222DF28 */ cpu->f[2] = cpu->f[3];
|
|
/* 0222DF2C */ cpu->r[5] = 0x00000000u;
|
|
/* 0222DF30 */ _t138 = cpu->r[1] + 0x00000040u;
|
|
/* 0222DF30 */ cpu->r[9] = rbrew_read32(cpu->mem, _t138);
|
|
/* 0222DF34 */ cpu->f[1] = cpu->f[27];
|
|
/* 0222DF38 */ cpu->r[7] = cpu->r[5];
|
|
/* 0222DF3C */ cpu->r[8] = 0x000001FFu;
|
|
/* 0222DF40 */ cpu->r[0] = cpu->r[1] + 0x0000003Cu;
|
|
/* 0222DF44 */ cpu->r[10] = cpu->r[7];
|
|
/* 0222DF48 */ cpu->r[6] = cpu->r[5];
|
|
/* 0222DF4C */ _t139 = cpu->r[1] + 0x00000008u;
|
|
/* 0222DF4C */ rbrew_write32(cpu->mem, _t139, cpu->r[0]);
|
|
/* 0222DF50 */ Gambit_fn_0204A4DC(cpu);
|
|
/* 0222DF54 */ cpu->r[0] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0222DF54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0222DF58 */ _t140 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0222DF58 */ rbrew_write32(cpu->mem, _t140, cpu->r[3]);
|
|
/* 0222DF5C */ _t141 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222DF5C */ _t142 = _t141 & 0x00000001u;
|
|
/* 0222DF5C */ if (_t142) goto L_0222DF94; else goto L_0222DF60;
|
|
L_0222DF60: ; // 0x222df60
|
|
/* 0222DF60 */ goto L_0222DFC8;
|
|
L_0222DF64: ; // 0x222df64
|
|
/* 0222DF64 */ _t143 = cpu->r[1] + 0x00000040u;
|
|
/* 0222DF64 */ cpu->r[8] = rbrew_read32(cpu->mem, _t143);
|
|
/* 0222DF68 */ cpu->r[12] = 0x10050000u;
|
|
/* 0222DF6C */ cpu->f[2] = cpu->f[27];
|
|
/* 0222DF70 */ cpu->r[5] = cpu->r[1] + 0x00000024u;
|
|
/* 0222DF74 */ _t144 = cpu->r[12] + 0x00000098u;
|
|
/* 0222DF74 */ cpu->f[4] = rbrew_read_f32(cpu->mem, _t144);
|
|
/* 0222DF78 */ cpu->r[9] = cpu->r[1] + 0x0000003Cu;
|
|
/* 0222DF7C */ cpu->r[6] = 0x00000000u;
|
|
/* 0222DF80 */ cpu->r[7] = 0x000001FFu;
|
|
/* 0222DF84 */ Gambit_fn_0204A864(cpu);
|
|
/* 0222DF88 */ cpu->r[0] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0222DF88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0222DF8C */ _t145 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0222DF8C */ rbrew_write32(cpu->mem, _t145, cpu->r[3]);
|
|
/* 0222DF90 */ _t146 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222DF90 */ _t147 = _t146 & 0x00000001u;
|
|
/* 0222DF90 */ if (_t147) goto L_0222DF94; else goto L_0222DFC8;
|
|
L_0222DF94: ; // 0x222df94
|
|
/* 0222DF94 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0222DF98 */ _t148 = cpu->r[3] + 0x00005B90u;
|
|
/* 0222DF98 */ cpu->r[3] = rbrew_read32(cpu->mem, _t148);
|
|
/* 0222DF9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0222DFA0 */ _t149 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222DFA0 */ _t150 = _t149 & 0x00000001u;
|
|
/* 0222DFA0 */ if (_t150) goto L_0222E00C; else goto L_0222DFA4;
|
|
L_0222DFA4: ; // 0x222dfa4
|
|
/* 0222DFA4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[29], cpu->f[31]);
|
|
/* 0222DFA8 */ _t151 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0222DFA8 */ _t152 = _t151 & 0x00000001u;
|
|
/* 0222DFA8 */ if (_t152) goto L_0222DFAC; else goto L_0222E00C;
|
|
L_0222DFAC: ; // 0x222dfac
|
|
/* 0222DFAC */ cpu->f[1] = cpu->f[29];
|
|
/* 0222DFB0 */ _t153 = cpu->r[31] + 0x000000A0u;
|
|
/* 0222DFB0 */ cpu->f[2] = rbrew_read_f32(cpu->mem, _t153);
|
|
/* 0222DFB4 */ cpu->r[5] = cpu->r[1] + 0x00000024u;
|
|
/* 0222DFB8 */ cpu->r[4] = cpu->r[31] + 0x00000088u;
|
|
/* 0222DFBC */ Gambit_fn_02399D90(cpu);
|
|
/* 0222DFC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0222DFC4 */ _t154 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222DFC4 */ _t155 = _t154 & 0x00000001u;
|
|
/* 0222DFC4 */ if (_t155) goto L_0222E00C; else goto L_0222DFC8;
|
|
L_0222DFC8: ; // 0x222dfc8
|
|
/* 0222DFC8 */ /* nop */
|
|
/* 0222DFCC */ _t156 = cpu->r[1] + 0x000000E8u;
|
|
/* 0222DFCC */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t156);
|
|
/* 0222DFD0 */ _t157 = cpu->r[1] + 0x000000D8u;
|
|
/* 0222DFD0 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t157);
|
|
/* 0222DFD4 */ _t158 = cpu->r[1] + 0x000000E0u;
|
|
/* 0222DFD4 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t158);
|
|
/* 0222DFD8 */ _t159 = cpu->r[1] + 0x000000F8u;
|
|
/* 0222DFD8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t159);
|
|
/* 0222DFDC */ _t160 = cpu->r[1] + 0x000000D0u;
|
|
/* 0222DFDC */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t160);
|
|
/* 0222DFE0 */ _t161 = cpu->r[1] + 0x000000F0u;
|
|
/* 0222DFE0 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t161);
|
|
/* 0222DFE4 */ _t162 = cpu->r[1] + 0x000000B8u;
|
|
/* 0222DFE4 */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t162);
|
|
/* 0222DFE8 */ _t163 = cpu->r[1] + 0x000000C8u;
|
|
/* 0222DFE8 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t163);
|
|
/* 0222DFEC */ _t164 = cpu->r[1] + 0x000000B0u;
|
|
/* 0222DFEC */ cpu->f[27] = rbrew_read_f64(cpu->mem, _t164);
|
|
/* 0222DFF0 */ _t165 = cpu->r[1] + 0x000000C0u;
|
|
/* 0222DFF0 */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t165);
|
|
/* 0222DFF4 */ cpu->r[3] = 0x00000001u;
|
|
/* 0222DFF8 */ _t166 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0222DFF8 */ _t167 = _t166 & 0x00000001u;
|
|
/* 0222DFF8 */ if (_t167) goto L_0222DFFC; // else: addr-0 trap, fall-through
|
|
L_0222DFFC: ; // 0x222dffc
|
|
/* 0222DFFC */ _t168 = cpu->r[1] + 0x00000104u;
|
|
/* 0222DFFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t168);
|
|
/* 0222E000 */ cpu->lr = cpu->r[0];
|
|
/* 0222E004 */ cpu->r[1] = cpu->r[1] + 0x00000100u;
|
|
/* 0222E008 */ return;
|
|
L_0222E00C: ; // 0x222e00c
|
|
/* 0222E00C */ /* nop */
|
|
/* 0222E010 */ _t169 = cpu->r[1] + 0x000000E8u;
|
|
/* 0222E010 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t169);
|
|
/* 0222E014 */ _t170 = cpu->r[1] + 0x000000D8u;
|
|
/* 0222E014 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t170);
|
|
/* 0222E018 */ _t171 = cpu->r[1] + 0x000000E0u;
|
|
/* 0222E018 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t171);
|
|
/* 0222E01C */ _t172 = cpu->r[1] + 0x000000F8u;
|
|
/* 0222E01C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t172);
|
|
/* 0222E020 */ _t173 = cpu->r[1] + 0x000000D0u;
|
|
/* 0222E020 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t173);
|
|
/* 0222E024 */ _t174 = cpu->r[1] + 0x000000F0u;
|
|
/* 0222E024 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t174);
|
|
/* 0222E028 */ _t175 = cpu->r[1] + 0x000000B8u;
|
|
/* 0222E028 */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t175);
|
|
/* 0222E02C */ _t176 = cpu->r[1] + 0x000000C8u;
|
|
/* 0222E02C */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t176);
|
|
/* 0222E030 */ _t177 = cpu->r[1] + 0x000000B0u;
|
|
/* 0222E030 */ cpu->f[27] = rbrew_read_f64(cpu->mem, _t177);
|
|
/* 0222E034 */ _t178 = cpu->r[1] + 0x000000C0u;
|
|
/* 0222E034 */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t178);
|
|
/* 0222E038 */ cpu->r[3] = 0x00000000u;
|
|
/* 0222E03C */ _t179 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0222E03C */ _t180 = _t179 & 0x00000001u;
|
|
/* 0222E03C */ if (_t180) goto L_0222E040; // else: addr-0 trap, fall-through
|
|
L_0222E040: ; // 0x222e040
|
|
/* 0222E040 */ _t181 = cpu->r[1] + 0x00000104u;
|
|
/* 0222E040 */ cpu->r[0] = rbrew_read32(cpu->mem, _t181);
|
|
/* 0222E044 */ cpu->lr = cpu->r[0];
|
|
/* 0222E048 */ cpu->r[1] = cpu->r[1] + 0x00000100u;
|
|
/* 0222E04C */ return;
|
|
}
|
|
|
|
// fn_0222E050 @ 0x222e050
|
|
void Gambit_fn_0222E050(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53;
|
|
|
|
L_0222E050: ; // 0x222e050
|
|
/* 0222E050 */ cpu->r[0] = cpu->lr;
|
|
/* 0222E054 */ _t0 = cpu->r[1] + 0xFFFFFFA8u;
|
|
/* 0222E054 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0222E054 */ cpu->r[1] = _t0;
|
|
/* 0222E058 */ _t1 = cpu->r[1] + 0x00000048u;
|
|
/* 0222E058 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0222E05C */ /* nop */
|
|
/* 0222E060 */ _t2 = cpu->r[1] + 0x00000038u;
|
|
/* 0222E060 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[30]);
|
|
/* 0222E064 */ /* nop */
|
|
/* 0222E068 */ _t3 = cpu->r[1] + 0x00000050u;
|
|
/* 0222E068 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 0222E06C */ _t4 = cpu->r[1] + 0x00000040u;
|
|
/* 0222E06C */ rbrew_write_f32(cpu->mem, _t4, cpu->f[30]);
|
|
/* 0222E070 */ _t5 = cpu->r[1] + 0x00000034u;
|
|
/* 0222E070 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 0222E074 */ _t6 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0222E074 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0222E078 */ _t7 = cpu->r[3] + 0x00000004u;
|
|
/* 0222E078 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0222E07C */ _t8 = cpu->r[12] + 0x0000044Cu;
|
|
/* 0222E07C */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0222E080 */ cpu->ctr = cpu->r[0];
|
|
/* 0222E084 */ cpu->r[31] = cpu->r[3];
|
|
/* 0222E088 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222E08C */ cpu->r[3] = cpu->r[1] + 0x00000018u;
|
|
/* 0222E090 */ cpu->f[31] = cpu->f[1];
|
|
/* 0222E094 */ Gambit_fn_02043AC4(cpu);
|
|
/* 0222E098 */ _t9 = cpu->r[31] + 0x00000004u;
|
|
/* 0222E098 */ cpu->r[10] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0222E09C */ _t10 = cpu->r[10] + 0x00000254u;
|
|
/* 0222E09C */ cpu->r[11] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0222E0A0 */ cpu->ctr = cpu->r[11];
|
|
/* 0222E0A4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0222E0A8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222E0AC */ _t11 = cpu->r[3] + 0x00000004u;
|
|
/* 0222E0AC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 0222E0B0 */ cpu->r[9] = 0x10050000u;
|
|
/* 0222E0B4 */ cpu->f[30] = cpu->f[10] - cpu->f[31];
|
|
/* 0222E0B8 */ _t12 = cpu->r[9] + 0x0000009Cu;
|
|
/* 0222E0B8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 0222E0BC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[30], cpu->f[31]);
|
|
/* 0222E0C0 */ _t13 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0222E0C0 */ _t14 = _t13 & 0x00000001u;
|
|
/* 0222E0C0 */ if (_t14) goto L_0222E0C4; else goto L_0222E1C8;
|
|
L_0222E0C4: ; // 0x222e0c4
|
|
/* 0222E0C4 */ _t15 = cpu->r[31] + 0x00000004u;
|
|
/* 0222E0C4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0222E0C8 */ _t16 = cpu->r[12] + 0x000003D4u;
|
|
/* 0222E0C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0222E0CC */ cpu->ctr = cpu->r[0];
|
|
/* 0222E0D0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0222E0D4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222E0D8 */ cpu->r[10] = 0x101F0000u;
|
|
/* 0222E0DC */ cpu->r[12] = 0x10050000u;
|
|
/* 0222E0E0 */ cpu->r[10] = cpu->r[10] + 0x00006350u;
|
|
/* 0222E0E4 */ _t17 = cpu->r[12] + 0x00000124u;
|
|
/* 0222E0E4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 0222E0E8 */ /* nop */
|
|
/* 0222E0EC */ cpu->r[11] = 0x101C0000u;
|
|
/* 0222E0F0 */ _t18 = cpu->r[10] + 0x00000008u;
|
|
/* 0222E0F0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 0222E0F4 */ /* nop */
|
|
/* 0222E0F8 */ _t19 = cpu->r[11] + 0x00001EF8u;
|
|
/* 0222E0F8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0222E0FC */ cpu->f[8] = -cpu->f[9];
|
|
/* 0222E100 */ /* nop */
|
|
/* 0222E104 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222E104 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0222E108 */ _t21 = cpu->r[1] + 0x00000010u;
|
|
/* 0222E108 */ cpu->r[12] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0222E10C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[30], cpu->f[31]);
|
|
/* 0222E110 */ _t22 = cpu->r[1] + 0x00000014u;
|
|
/* 0222E110 */ rbrew_write_f32(cpu->mem, _t22, cpu->f[8]);
|
|
/* 0222E114 */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 0222E114 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0222E118 */ cpu->r[10] = 0x101E0000u;
|
|
/* 0222E11C */ _t24 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0222E11C */ rbrew_write32(cpu->mem, _t24, cpu->r[12]);
|
|
/* 0222E120 */ cpu->f[13] = cpu->f[1];
|
|
/* 0222E124 */ _t25 = cpu->r[1] + 0x00000028u;
|
|
/* 0222E124 */ rbrew_write32(cpu->mem, _t25, cpu->r[11]);
|
|
/* 0222E128 */ _t26 = cpu->r[10] + 0xFFFF958Cu;
|
|
/* 0222E128 */ cpu->f[3] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 0222E12C */ cpu->r[4] = cpu->r[31] + 0x00000088u;
|
|
/* 0222E130 */ _t27 = cpu->r[1] + 0x00000030u;
|
|
/* 0222E130 */ rbrew_write32(cpu->mem, _t27, cpu->r[0]);
|
|
/* 0222E134 */ _t28 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0222E134 */ _t29 = _t28 & 0x00000001u;
|
|
/* 0222E134 */ if (_t29) goto L_0222E198; else goto L_0222E138;
|
|
L_0222E138: ; // 0x222e138
|
|
/* 0222E138 */ cpu->f[2] = cpu->f[3];
|
|
/* 0222E13C */ cpu->r[5] = 0x00000000u;
|
|
/* 0222E140 */ _t30 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0222E140 */ cpu->r[9] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0222E144 */ cpu->f[1] = cpu->f[13];
|
|
/* 0222E148 */ cpu->r[7] = cpu->r[5];
|
|
/* 0222E14C */ cpu->r[8] = 0x000001FFu;
|
|
/* 0222E150 */ cpu->r[0] = cpu->r[1] + 0x00000018u;
|
|
/* 0222E154 */ cpu->r[10] = cpu->r[7];
|
|
/* 0222E158 */ cpu->r[6] = cpu->r[5];
|
|
/* 0222E15C */ _t31 = cpu->r[1] + 0x00000008u;
|
|
/* 0222E15C */ rbrew_write32(cpu->mem, _t31, cpu->r[0]);
|
|
/* 0222E160 */ Gambit_fn_0204A4DC(cpu);
|
|
/* 0222E164 */ cpu->r[0] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0222E164 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0222E168 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222E168 */ _t33 = _t32 & 0x00000001u;
|
|
/* 0222E168 */ if (_t33) goto L_0222E16C; else goto L_0222E1C8;
|
|
L_0222E16C: ; // 0x222e16c
|
|
/* 0222E16C */ _t34 = cpu->r[1] + 0x00000040u;
|
|
/* 0222E16C */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 0222E170 */ _t35 = cpu->r[1] + 0x00000050u;
|
|
/* 0222E170 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 0222E174 */ _t36 = cpu->r[1] + 0x00000038u;
|
|
/* 0222E174 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t36);
|
|
/* 0222E178 */ _t37 = cpu->r[1] + 0x00000048u;
|
|
/* 0222E178 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t37);
|
|
/* 0222E17C */ _t38 = cpu->r[1] + 0x00000034u;
|
|
/* 0222E17C */ cpu->r[31] = rbrew_read32(cpu->mem, _t38);
|
|
/* 0222E180 */ cpu->r[3] = 0x00000000u;
|
|
/* 0222E184 */ _t39 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0222E184 */ _t40 = _t39 & 0x00000001u;
|
|
/* 0222E184 */ if (_t40) goto L_0222E188; // else: addr-0 trap, fall-through
|
|
L_0222E188: ; // 0x222e188
|
|
/* 0222E188 */ _t41 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0222E188 */ cpu->r[0] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0222E18C */ cpu->lr = cpu->r[0];
|
|
/* 0222E190 */ cpu->r[1] = cpu->r[1] + 0x00000058u;
|
|
/* 0222E194 */ return;
|
|
L_0222E198: ; // 0x222e198
|
|
/* 0222E198 */ cpu->f[1] = cpu->f[30];
|
|
/* 0222E19C */ _t42 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0222E19C */ cpu->r[8] = rbrew_read32(cpu->mem, _t42);
|
|
/* 0222E1A0 */ cpu->r[12] = 0x10050000u;
|
|
/* 0222E1A4 */ cpu->f[2] = cpu->f[13];
|
|
/* 0222E1A8 */ cpu->r[6] = 0x00000000u;
|
|
/* 0222E1AC */ _t43 = cpu->r[12] + 0x00000098u;
|
|
/* 0222E1AC */ cpu->f[4] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 0222E1B0 */ cpu->r[5] = cpu->r[1] + 0x00000028u;
|
|
/* 0222E1B4 */ cpu->r[7] = 0x000001FFu;
|
|
/* 0222E1B8 */ cpu->r[9] = cpu->r[1] + 0x00000018u;
|
|
/* 0222E1BC */ Gambit_fn_0204A864(cpu);
|
|
/* 0222E1C0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0222E1C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0222E1C4 */ _t44 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222E1C4 */ _t45 = _t44 & 0x00000001u;
|
|
/* 0222E1C4 */ if (_t45) goto L_0222E16C; else goto L_0222E1C8;
|
|
L_0222E1C8: ; // 0x222e1c8
|
|
/* 0222E1C8 */ _t46 = cpu->r[1] + 0x00000040u;
|
|
/* 0222E1C8 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 0222E1CC */ _t47 = cpu->r[1] + 0x00000050u;
|
|
/* 0222E1CC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 0222E1D0 */ _t48 = cpu->r[1] + 0x00000038u;
|
|
/* 0222E1D0 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t48);
|
|
/* 0222E1D4 */ _t49 = cpu->r[1] + 0x00000048u;
|
|
/* 0222E1D4 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t49);
|
|
/* 0222E1D8 */ _t50 = cpu->r[1] + 0x00000034u;
|
|
/* 0222E1D8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t50);
|
|
/* 0222E1DC */ cpu->r[3] = 0x00000001u;
|
|
/* 0222E1E0 */ _t51 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0222E1E0 */ _t52 = _t51 & 0x00000001u;
|
|
/* 0222E1E0 */ if (_t52) goto L_0222E1E4; // else: addr-0 trap, fall-through
|
|
L_0222E1E4: ; // 0x222e1e4
|
|
/* 0222E1E4 */ _t53 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0222E1E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t53);
|
|
/* 0222E1E8 */ cpu->lr = cpu->r[0];
|
|
/* 0222E1EC */ cpu->r[1] = cpu->r[1] + 0x00000058u;
|
|
/* 0222E1F0 */ return;
|
|
}
|
|
|
|
// fn_0222E054 @ 0x222e054
|
|
void Gambit_fn_0222E054(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53;
|
|
|
|
L_0222E054: ; // 0x222e054
|
|
/* 0222E054 */ _t0 = cpu->r[1] + 0xFFFFFFA8u;
|
|
/* 0222E054 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0222E054 */ cpu->r[1] = _t0;
|
|
/* 0222E058 */ _t1 = cpu->r[1] + 0x00000048u;
|
|
/* 0222E058 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0222E05C */ /* nop */
|
|
/* 0222E060 */ _t2 = cpu->r[1] + 0x00000038u;
|
|
/* 0222E060 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[30]);
|
|
/* 0222E064 */ /* nop */
|
|
/* 0222E068 */ _t3 = cpu->r[1] + 0x00000050u;
|
|
/* 0222E068 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 0222E06C */ _t4 = cpu->r[1] + 0x00000040u;
|
|
/* 0222E06C */ rbrew_write_f32(cpu->mem, _t4, cpu->f[30]);
|
|
/* 0222E070 */ _t5 = cpu->r[1] + 0x00000034u;
|
|
/* 0222E070 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 0222E074 */ _t6 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0222E074 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0222E078 */ _t7 = cpu->r[3] + 0x00000004u;
|
|
/* 0222E078 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0222E07C */ _t8 = cpu->r[12] + 0x0000044Cu;
|
|
/* 0222E07C */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0222E080 */ cpu->ctr = cpu->r[0];
|
|
/* 0222E084 */ cpu->r[31] = cpu->r[3];
|
|
/* 0222E088 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222E08C */ cpu->r[3] = cpu->r[1] + 0x00000018u;
|
|
/* 0222E090 */ cpu->f[31] = cpu->f[1];
|
|
/* 0222E094 */ Gambit_fn_02043AC4(cpu);
|
|
/* 0222E098 */ _t9 = cpu->r[31] + 0x00000004u;
|
|
/* 0222E098 */ cpu->r[10] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0222E09C */ _t10 = cpu->r[10] + 0x00000254u;
|
|
/* 0222E09C */ cpu->r[11] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0222E0A0 */ cpu->ctr = cpu->r[11];
|
|
/* 0222E0A4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0222E0A8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222E0AC */ _t11 = cpu->r[3] + 0x00000004u;
|
|
/* 0222E0AC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 0222E0B0 */ cpu->r[9] = 0x10050000u;
|
|
/* 0222E0B4 */ cpu->f[30] = cpu->f[10] - cpu->f[31];
|
|
/* 0222E0B8 */ _t12 = cpu->r[9] + 0x0000009Cu;
|
|
/* 0222E0B8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 0222E0BC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[30], cpu->f[31]);
|
|
/* 0222E0C0 */ _t13 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0222E0C0 */ _t14 = _t13 & 0x00000001u;
|
|
/* 0222E0C0 */ if (_t14) goto L_0222E0C4; else goto L_0222E1C8;
|
|
L_0222E0C4: ; // 0x222e0c4
|
|
/* 0222E0C4 */ _t15 = cpu->r[31] + 0x00000004u;
|
|
/* 0222E0C4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0222E0C8 */ _t16 = cpu->r[12] + 0x000003D4u;
|
|
/* 0222E0C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0222E0CC */ cpu->ctr = cpu->r[0];
|
|
/* 0222E0D0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0222E0D4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222E0D8 */ cpu->r[10] = 0x101F0000u;
|
|
/* 0222E0DC */ cpu->r[12] = 0x10050000u;
|
|
/* 0222E0E0 */ cpu->r[10] = cpu->r[10] + 0x00006350u;
|
|
/* 0222E0E4 */ _t17 = cpu->r[12] + 0x00000124u;
|
|
/* 0222E0E4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 0222E0E8 */ /* nop */
|
|
/* 0222E0EC */ cpu->r[11] = 0x101C0000u;
|
|
/* 0222E0F0 */ _t18 = cpu->r[10] + 0x00000008u;
|
|
/* 0222E0F0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 0222E0F4 */ /* nop */
|
|
/* 0222E0F8 */ _t19 = cpu->r[11] + 0x00001EF8u;
|
|
/* 0222E0F8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0222E0FC */ cpu->f[8] = -cpu->f[9];
|
|
/* 0222E100 */ /* nop */
|
|
/* 0222E104 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222E104 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0222E108 */ _t21 = cpu->r[1] + 0x00000010u;
|
|
/* 0222E108 */ cpu->r[12] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0222E10C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[30], cpu->f[31]);
|
|
/* 0222E110 */ _t22 = cpu->r[1] + 0x00000014u;
|
|
/* 0222E110 */ rbrew_write_f32(cpu->mem, _t22, cpu->f[8]);
|
|
/* 0222E114 */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 0222E114 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0222E118 */ cpu->r[10] = 0x101E0000u;
|
|
/* 0222E11C */ _t24 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0222E11C */ rbrew_write32(cpu->mem, _t24, cpu->r[12]);
|
|
/* 0222E120 */ cpu->f[13] = cpu->f[1];
|
|
/* 0222E124 */ _t25 = cpu->r[1] + 0x00000028u;
|
|
/* 0222E124 */ rbrew_write32(cpu->mem, _t25, cpu->r[11]);
|
|
/* 0222E128 */ _t26 = cpu->r[10] + 0xFFFF958Cu;
|
|
/* 0222E128 */ cpu->f[3] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 0222E12C */ cpu->r[4] = cpu->r[31] + 0x00000088u;
|
|
/* 0222E130 */ _t27 = cpu->r[1] + 0x00000030u;
|
|
/* 0222E130 */ rbrew_write32(cpu->mem, _t27, cpu->r[0]);
|
|
/* 0222E134 */ _t28 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0222E134 */ _t29 = _t28 & 0x00000001u;
|
|
/* 0222E134 */ if (_t29) goto L_0222E198; else goto L_0222E138;
|
|
L_0222E138: ; // 0x222e138
|
|
/* 0222E138 */ cpu->f[2] = cpu->f[3];
|
|
/* 0222E13C */ cpu->r[5] = 0x00000000u;
|
|
/* 0222E140 */ _t30 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0222E140 */ cpu->r[9] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0222E144 */ cpu->f[1] = cpu->f[13];
|
|
/* 0222E148 */ cpu->r[7] = cpu->r[5];
|
|
/* 0222E14C */ cpu->r[8] = 0x000001FFu;
|
|
/* 0222E150 */ cpu->r[0] = cpu->r[1] + 0x00000018u;
|
|
/* 0222E154 */ cpu->r[10] = cpu->r[7];
|
|
/* 0222E158 */ cpu->r[6] = cpu->r[5];
|
|
/* 0222E15C */ _t31 = cpu->r[1] + 0x00000008u;
|
|
/* 0222E15C */ rbrew_write32(cpu->mem, _t31, cpu->r[0]);
|
|
/* 0222E160 */ Gambit_fn_0204A4DC(cpu);
|
|
/* 0222E164 */ cpu->r[0] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0222E164 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0222E168 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222E168 */ _t33 = _t32 & 0x00000001u;
|
|
/* 0222E168 */ if (_t33) goto L_0222E16C; else goto L_0222E1C8;
|
|
L_0222E16C: ; // 0x222e16c
|
|
/* 0222E16C */ _t34 = cpu->r[1] + 0x00000040u;
|
|
/* 0222E16C */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 0222E170 */ _t35 = cpu->r[1] + 0x00000050u;
|
|
/* 0222E170 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 0222E174 */ _t36 = cpu->r[1] + 0x00000038u;
|
|
/* 0222E174 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t36);
|
|
/* 0222E178 */ _t37 = cpu->r[1] + 0x00000048u;
|
|
/* 0222E178 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t37);
|
|
/* 0222E17C */ _t38 = cpu->r[1] + 0x00000034u;
|
|
/* 0222E17C */ cpu->r[31] = rbrew_read32(cpu->mem, _t38);
|
|
/* 0222E180 */ cpu->r[3] = 0x00000000u;
|
|
/* 0222E184 */ _t39 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0222E184 */ _t40 = _t39 & 0x00000001u;
|
|
/* 0222E184 */ if (_t40) goto L_0222E188; // else: addr-0 trap, fall-through
|
|
L_0222E188: ; // 0x222e188
|
|
/* 0222E188 */ _t41 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0222E188 */ cpu->r[0] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0222E18C */ cpu->lr = cpu->r[0];
|
|
/* 0222E190 */ cpu->r[1] = cpu->r[1] + 0x00000058u;
|
|
/* 0222E194 */ return;
|
|
L_0222E198: ; // 0x222e198
|
|
/* 0222E198 */ cpu->f[1] = cpu->f[30];
|
|
/* 0222E19C */ _t42 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0222E19C */ cpu->r[8] = rbrew_read32(cpu->mem, _t42);
|
|
/* 0222E1A0 */ cpu->r[12] = 0x10050000u;
|
|
/* 0222E1A4 */ cpu->f[2] = cpu->f[13];
|
|
/* 0222E1A8 */ cpu->r[6] = 0x00000000u;
|
|
/* 0222E1AC */ _t43 = cpu->r[12] + 0x00000098u;
|
|
/* 0222E1AC */ cpu->f[4] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 0222E1B0 */ cpu->r[5] = cpu->r[1] + 0x00000028u;
|
|
/* 0222E1B4 */ cpu->r[7] = 0x000001FFu;
|
|
/* 0222E1B8 */ cpu->r[9] = cpu->r[1] + 0x00000018u;
|
|
/* 0222E1BC */ Gambit_fn_0204A864(cpu);
|
|
/* 0222E1C0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0222E1C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0222E1C4 */ _t44 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222E1C4 */ _t45 = _t44 & 0x00000001u;
|
|
/* 0222E1C4 */ if (_t45) goto L_0222E16C; else goto L_0222E1C8;
|
|
L_0222E1C8: ; // 0x222e1c8
|
|
/* 0222E1C8 */ _t46 = cpu->r[1] + 0x00000040u;
|
|
/* 0222E1C8 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 0222E1CC */ _t47 = cpu->r[1] + 0x00000050u;
|
|
/* 0222E1CC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 0222E1D0 */ _t48 = cpu->r[1] + 0x00000038u;
|
|
/* 0222E1D0 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t48);
|
|
/* 0222E1D4 */ _t49 = cpu->r[1] + 0x00000048u;
|
|
/* 0222E1D4 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t49);
|
|
/* 0222E1D8 */ _t50 = cpu->r[1] + 0x00000034u;
|
|
/* 0222E1D8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t50);
|
|
/* 0222E1DC */ cpu->r[3] = 0x00000001u;
|
|
/* 0222E1E0 */ _t51 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0222E1E0 */ _t52 = _t51 & 0x00000001u;
|
|
/* 0222E1E0 */ if (_t52) goto L_0222E1E4; // else: addr-0 trap, fall-through
|
|
L_0222E1E4: ; // 0x222e1e4
|
|
/* 0222E1E4 */ _t53 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0222E1E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t53);
|
|
/* 0222E1E8 */ cpu->lr = cpu->r[0];
|
|
/* 0222E1EC */ cpu->r[1] = cpu->r[1] + 0x00000058u;
|
|
/* 0222E1F0 */ return;
|
|
}
|
|
|
|
// fn_0222E1F4 @ 0x222e1f4
|
|
void Gambit_fn_0222E1F4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _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_0222E1F4: ; // 0x222e1f4
|
|
/* 0222E1F4 */ cpu->r[0] = cpu->lr;
|
|
/* 0222E1F8 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 0222E1F8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0222E1F8 */ cpu->r[1] = _t0;
|
|
/* 0222E1FC */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 0222E1FC */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0222E200 */ /* nop */
|
|
/* 0222E204 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222E204 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0222E208 */ _t3 = cpu->r[1] + 0x00000018u;
|
|
/* 0222E208 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 0222E20C */ cpu->r[31] = cpu->r[3];
|
|
/* 0222E210 */ _t4 = cpu->r[1] + 0x00000024u;
|
|
/* 0222E210 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0222E214 */ _t5 = cpu->r[31] + 0x00000114u;
|
|
/* 0222E214 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0222E218 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000000Fu, 0x0000000Fu);
|
|
/* 0222E218 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0222E21C */ cpu->f[31] = cpu->f[1];
|
|
/* 0222E220 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222E220 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0222E220 */ if (_t7) goto L_0222E224; else goto L_0222E2B8;
|
|
L_0222E224: ; // 0x222e224
|
|
/* 0222E224 */ _t8 = cpu->r[31] + 0x00000114u;
|
|
/* 0222E224 */ cpu->r[0] = rbrew_read8(cpu->mem, _t8);
|
|
/* 0222E228 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x0000001Eu);
|
|
/* 0222E22C */ _t9 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0222E22C */ _t10 = _t9 & 0x00000001u;
|
|
/* 0222E22C */ if (_t10) goto L_0222E2B8; else goto L_0222E230;
|
|
L_0222E230: ; // 0x222e230
|
|
/* 0222E230 */ _t11 = cpu->r[31] + 0x00000004u;
|
|
/* 0222E230 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0222E234 */ _t12 = cpu->r[12] + 0x0000025Cu;
|
|
/* 0222E234 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0222E238 */ cpu->ctr = cpu->r[0];
|
|
/* 0222E23C */ cpu->r[3] = cpu->r[31];
|
|
/* 0222E240 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222E244 */ cpu->r[12] = 0x10050000u;
|
|
/* 0222E248 */ _t13 = cpu->r[3] + 0x00000004u;
|
|
/* 0222E248 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 0222E24C */ _t14 = cpu->r[12] + 0x0000009Cu;
|
|
/* 0222E24C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 0222E250 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 0222E254 */ _t15 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0222E254 */ _t16 = _t15 & 0x00000001u;
|
|
/* 0222E254 */ if (_t16) goto L_0222E258; else goto L_0222E2B8;
|
|
L_0222E258: ; // 0x222e258
|
|
/* 0222E258 */ _t17 = cpu->r[31] + 0x00000004u;
|
|
/* 0222E258 */ cpu->r[12] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0222E25C */ _t18 = cpu->r[12] + 0x0000025Cu;
|
|
/* 0222E25C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0222E260 */ cpu->ctr = cpu->r[0];
|
|
/* 0222E264 */ cpu->r[3] = cpu->r[31];
|
|
/* 0222E268 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222E26C */ _t19 = cpu->r[3] + 0x00000008u;
|
|
/* 0222E26C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 0222E270 */ cpu->f[12] = cpu->f[31] * cpu->f[31];
|
|
/* 0222E274 */ cpu->f[13] = cpu->f[13] * cpu->f[13];
|
|
/* 0222E278 */ _t20 = cpu->r[3] + 0x00000000u;
|
|
/* 0222E278 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 0222E27C */ cpu->f[0] = fma(cpu->f[0], cpu->f[0], cpu->f[13]);
|
|
/* 0222E280 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[12]);
|
|
/* 0222E284 */ _t21 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0222E284 */ _t22 = _t21 & 0x00000001u;
|
|
/* 0222E284 */ if (_t22) goto L_0222E288; else goto L_0222E2B8;
|
|
L_0222E288: ; // 0x222e288
|
|
/* 0222E288 */ _t23 = cpu->r[31] + 0x00000114u;
|
|
/* 0222E288 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0222E28C */ cpu->r[0] = cpu->r[0] | 0x00010000u;
|
|
/* 0222E290 */ cpu->r[3] = cpu->r[31];
|
|
/* 0222E294 */ _t24 = cpu->r[31] + 0x00000114u;
|
|
/* 0222E294 */ rbrew_write32(cpu->mem, _t24, cpu->r[0]);
|
|
/* 0222E298 */ Gambit_fn_0222E050(cpu);
|
|
/* 0222E29C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0222E2A0 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222E2A0 */ _t26 = _t25 & 0x00000001u;
|
|
/* 0222E2A0 */ if (_t26) goto L_0222E2A4; else goto L_0222E2B8;
|
|
L_0222E2A4: ; // 0x222e2a4
|
|
/* 0222E2A4 */ _t27 = cpu->r[31] + 0x00000004u;
|
|
/* 0222E2A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0222E2A8 */ _t28 = cpu->r[12] + 0x0000039Cu;
|
|
/* 0222E2A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0222E2AC */ cpu->ctr = cpu->r[0];
|
|
/* 0222E2B0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0222E2B4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0222E2B8: ; // 0x222e2b8
|
|
/* 0222E2B8 */ _t29 = cpu->r[1] + 0x00000018u;
|
|
/* 0222E2B8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 0222E2BC */ _t30 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222E2BC */ cpu->r[31] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0222E2C0 */ _t31 = cpu->r[1] + 0x00000010u;
|
|
/* 0222E2C0 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t31);
|
|
/* 0222E2C4 */ _t32 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0222E2C4 */ _t33 = _t32 & 0x00000001u;
|
|
/* 0222E2C4 */ if (_t33) goto L_0222E2C8; // else: addr-0 trap, fall-through
|
|
L_0222E2C8: ; // 0x222e2c8
|
|
/* 0222E2C8 */ _t34 = cpu->r[1] + 0x00000024u;
|
|
/* 0222E2C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t34);
|
|
/* 0222E2CC */ cpu->lr = cpu->r[0];
|
|
/* 0222E2D0 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 0222E2D4 */ return;
|
|
}
|
|
|
|
// fn_0222E1F8 @ 0x222e1f8
|
|
void Gambit_fn_0222E1F8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _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_0222E1F8: ; // 0x222e1f8
|
|
/* 0222E1F8 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 0222E1F8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0222E1F8 */ cpu->r[1] = _t0;
|
|
/* 0222E1FC */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 0222E1FC */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0222E200 */ /* nop */
|
|
/* 0222E204 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222E204 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0222E208 */ _t3 = cpu->r[1] + 0x00000018u;
|
|
/* 0222E208 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 0222E20C */ cpu->r[31] = cpu->r[3];
|
|
/* 0222E210 */ _t4 = cpu->r[1] + 0x00000024u;
|
|
/* 0222E210 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0222E214 */ _t5 = cpu->r[31] + 0x00000114u;
|
|
/* 0222E214 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0222E218 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000000Fu, 0x0000000Fu);
|
|
/* 0222E218 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0222E21C */ cpu->f[31] = cpu->f[1];
|
|
/* 0222E220 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222E220 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0222E220 */ if (_t7) goto L_0222E224; else goto L_0222E2B8;
|
|
L_0222E224: ; // 0x222e224
|
|
/* 0222E224 */ _t8 = cpu->r[31] + 0x00000114u;
|
|
/* 0222E224 */ cpu->r[0] = rbrew_read8(cpu->mem, _t8);
|
|
/* 0222E228 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x0000001Eu);
|
|
/* 0222E22C */ _t9 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0222E22C */ _t10 = _t9 & 0x00000001u;
|
|
/* 0222E22C */ if (_t10) goto L_0222E2B8; else goto L_0222E230;
|
|
L_0222E230: ; // 0x222e230
|
|
/* 0222E230 */ _t11 = cpu->r[31] + 0x00000004u;
|
|
/* 0222E230 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0222E234 */ _t12 = cpu->r[12] + 0x0000025Cu;
|
|
/* 0222E234 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0222E238 */ cpu->ctr = cpu->r[0];
|
|
/* 0222E23C */ cpu->r[3] = cpu->r[31];
|
|
/* 0222E240 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222E244 */ cpu->r[12] = 0x10050000u;
|
|
/* 0222E248 */ _t13 = cpu->r[3] + 0x00000004u;
|
|
/* 0222E248 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 0222E24C */ _t14 = cpu->r[12] + 0x0000009Cu;
|
|
/* 0222E24C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 0222E250 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 0222E254 */ _t15 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0222E254 */ _t16 = _t15 & 0x00000001u;
|
|
/* 0222E254 */ if (_t16) goto L_0222E258; else goto L_0222E2B8;
|
|
L_0222E258: ; // 0x222e258
|
|
/* 0222E258 */ _t17 = cpu->r[31] + 0x00000004u;
|
|
/* 0222E258 */ cpu->r[12] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0222E25C */ _t18 = cpu->r[12] + 0x0000025Cu;
|
|
/* 0222E25C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0222E260 */ cpu->ctr = cpu->r[0];
|
|
/* 0222E264 */ cpu->r[3] = cpu->r[31];
|
|
/* 0222E268 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222E26C */ _t19 = cpu->r[3] + 0x00000008u;
|
|
/* 0222E26C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 0222E270 */ cpu->f[12] = cpu->f[31] * cpu->f[31];
|
|
/* 0222E274 */ cpu->f[13] = cpu->f[13] * cpu->f[13];
|
|
/* 0222E278 */ _t20 = cpu->r[3] + 0x00000000u;
|
|
/* 0222E278 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 0222E27C */ cpu->f[0] = fma(cpu->f[0], cpu->f[0], cpu->f[13]);
|
|
/* 0222E280 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[12]);
|
|
/* 0222E284 */ _t21 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0222E284 */ _t22 = _t21 & 0x00000001u;
|
|
/* 0222E284 */ if (_t22) goto L_0222E288; else goto L_0222E2B8;
|
|
L_0222E288: ; // 0x222e288
|
|
/* 0222E288 */ _t23 = cpu->r[31] + 0x00000114u;
|
|
/* 0222E288 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0222E28C */ cpu->r[0] = cpu->r[0] | 0x00010000u;
|
|
/* 0222E290 */ cpu->r[3] = cpu->r[31];
|
|
/* 0222E294 */ _t24 = cpu->r[31] + 0x00000114u;
|
|
/* 0222E294 */ rbrew_write32(cpu->mem, _t24, cpu->r[0]);
|
|
/* 0222E298 */ Gambit_fn_0222E050(cpu);
|
|
/* 0222E29C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0222E2A0 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222E2A0 */ _t26 = _t25 & 0x00000001u;
|
|
/* 0222E2A0 */ if (_t26) goto L_0222E2A4; else goto L_0222E2B8;
|
|
L_0222E2A4: ; // 0x222e2a4
|
|
/* 0222E2A4 */ _t27 = cpu->r[31] + 0x00000004u;
|
|
/* 0222E2A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0222E2A8 */ _t28 = cpu->r[12] + 0x0000039Cu;
|
|
/* 0222E2A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0222E2AC */ cpu->ctr = cpu->r[0];
|
|
/* 0222E2B0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0222E2B4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0222E2B8: ; // 0x222e2b8
|
|
/* 0222E2B8 */ _t29 = cpu->r[1] + 0x00000018u;
|
|
/* 0222E2B8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 0222E2BC */ _t30 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222E2BC */ cpu->r[31] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0222E2C0 */ _t31 = cpu->r[1] + 0x00000010u;
|
|
/* 0222E2C0 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t31);
|
|
/* 0222E2C4 */ _t32 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0222E2C4 */ _t33 = _t32 & 0x00000001u;
|
|
/* 0222E2C4 */ if (_t33) goto L_0222E2C8; // else: addr-0 trap, fall-through
|
|
L_0222E2C8: ; // 0x222e2c8
|
|
/* 0222E2C8 */ _t34 = cpu->r[1] + 0x00000024u;
|
|
/* 0222E2C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t34);
|
|
/* 0222E2CC */ cpu->lr = cpu->r[0];
|
|
/* 0222E2D0 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 0222E2D4 */ return;
|
|
}
|
|
|
|
// fn_0222E2D8 @ 0x222e2d8
|
|
void Gambit_fn_0222E2D8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_0222E2D8: ; // 0x222e2d8
|
|
/* 0222E2D8 */ cpu->r[0] = cpu->lr;
|
|
/* 0222E2DC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0222E2DC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0222E2DC */ cpu->r[1] = _t0;
|
|
/* 0222E2E0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222E2E0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0222E2E4 */ cpu->r[31] = cpu->r[3];
|
|
/* 0222E2E8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0222E2E8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0222E2EC */ _t3 = cpu->r[31] + 0x00000114u;
|
|
/* 0222E2EC */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0222E2F0 */ cpu->r[12] = rbrew_rlwinm(cpu->r[12], 0x00000000u, 0x0000000Fu, 0x0000000Fu);
|
|
/* 0222E2F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0222E2F4 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222E2F4 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0222E2F4 */ if (_t5) goto L_0222E2F8; else goto L_0222E334;
|
|
L_0222E2F8: ; // 0x222e2f8
|
|
/* 0222E2F8 */ _t6 = cpu->r[31] + 0x00000114u;
|
|
/* 0222E2F8 */ cpu->r[9] = rbrew_read8(cpu->mem, _t6);
|
|
/* 0222E2FC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], 0x0000000Au);
|
|
/* 0222E300 */ _t7 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0222E300 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0222E300 */ if (_t8) goto L_0222E334; else goto L_0222E304;
|
|
L_0222E304: ; // 0x222e304
|
|
/* 0222E304 */ _t9 = cpu->r[31] + 0x00000114u;
|
|
/* 0222E304 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0222E308 */ cpu->r[0] = cpu->r[0] | 0x00010000u;
|
|
/* 0222E30C */ cpu->r[3] = cpu->r[31];
|
|
/* 0222E310 */ _t10 = cpu->r[31] + 0x00000114u;
|
|
/* 0222E310 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 0222E314 */ Gambit_fn_0222E050(cpu);
|
|
/* 0222E318 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0222E31C */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222E31C */ _t12 = _t11 & 0x00000001u;
|
|
/* 0222E31C */ if (_t12) goto L_0222E320; else goto L_0222E334;
|
|
L_0222E320: ; // 0x222e320
|
|
/* 0222E320 */ _t13 = cpu->r[31] + 0x00000004u;
|
|
/* 0222E320 */ cpu->r[11] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0222E324 */ _t14 = cpu->r[11] + 0x0000039Cu;
|
|
/* 0222E324 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0222E328 */ cpu->ctr = cpu->r[0];
|
|
/* 0222E32C */ cpu->r[3] = cpu->r[31];
|
|
/* 0222E330 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0222E334: ; // 0x222e334
|
|
/* 0222E334 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 0222E334 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0222E338 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222E338 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0222E33C */ cpu->lr = cpu->r[0];
|
|
/* 0222E340 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0222E344 */ return;
|
|
}
|
|
|
|
// fn_0222E2DC @ 0x222e2dc
|
|
void Gambit_fn_0222E2DC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_0222E2DC: ; // 0x222e2dc
|
|
/* 0222E2DC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0222E2DC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0222E2DC */ cpu->r[1] = _t0;
|
|
/* 0222E2E0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222E2E0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0222E2E4 */ cpu->r[31] = cpu->r[3];
|
|
/* 0222E2E8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0222E2E8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0222E2EC */ _t3 = cpu->r[31] + 0x00000114u;
|
|
/* 0222E2EC */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0222E2F0 */ cpu->r[12] = rbrew_rlwinm(cpu->r[12], 0x00000000u, 0x0000000Fu, 0x0000000Fu);
|
|
/* 0222E2F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0222E2F4 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222E2F4 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0222E2F4 */ if (_t5) goto L_0222E2F8; else goto L_0222E334;
|
|
L_0222E2F8: ; // 0x222e2f8
|
|
/* 0222E2F8 */ _t6 = cpu->r[31] + 0x00000114u;
|
|
/* 0222E2F8 */ cpu->r[9] = rbrew_read8(cpu->mem, _t6);
|
|
/* 0222E2FC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], 0x0000000Au);
|
|
/* 0222E300 */ _t7 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0222E300 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0222E300 */ if (_t8) goto L_0222E334; else goto L_0222E304;
|
|
L_0222E304: ; // 0x222e304
|
|
/* 0222E304 */ _t9 = cpu->r[31] + 0x00000114u;
|
|
/* 0222E304 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0222E308 */ cpu->r[0] = cpu->r[0] | 0x00010000u;
|
|
/* 0222E30C */ cpu->r[3] = cpu->r[31];
|
|
/* 0222E310 */ _t10 = cpu->r[31] + 0x00000114u;
|
|
/* 0222E310 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 0222E314 */ Gambit_fn_0222E050(cpu);
|
|
/* 0222E318 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0222E31C */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222E31C */ _t12 = _t11 & 0x00000001u;
|
|
/* 0222E31C */ if (_t12) goto L_0222E320; else goto L_0222E334;
|
|
L_0222E320: ; // 0x222e320
|
|
/* 0222E320 */ _t13 = cpu->r[31] + 0x00000004u;
|
|
/* 0222E320 */ cpu->r[11] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0222E324 */ _t14 = cpu->r[11] + 0x0000039Cu;
|
|
/* 0222E324 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0222E328 */ cpu->ctr = cpu->r[0];
|
|
/* 0222E32C */ cpu->r[3] = cpu->r[31];
|
|
/* 0222E330 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0222E334: ; // 0x222e334
|
|
/* 0222E334 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 0222E334 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0222E338 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222E338 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0222E33C */ cpu->lr = cpu->r[0];
|
|
/* 0222E340 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0222E344 */ return;
|
|
}
|
|
|
|
// fn_0222E348 @ 0x222e348
|
|
void Gambit_fn_0222E348(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t26, _t27, _t28, _t29;
|
|
double _ft13, _ft14, _ft24, _ft25;
|
|
|
|
L_0222E348: ; // 0x222e348
|
|
/* 0222E348 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0222E348 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0222E348 */ cpu->r[1] = _t0;
|
|
/* 0222E34C */ _t1 = cpu->r[5] + 0x00000008u;
|
|
/* 0222E34C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 0222E350 */ cpu->r[11] = 0x10050000u;
|
|
/* 0222E354 */ _t2 = cpu->r[5] + 0x00000000u;
|
|
/* 0222E354 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 0222E358 */ cpu->f[0] = cpu->f[8] * cpu->f[8];
|
|
/* 0222E35C */ _t3 = cpu->r[11] + 0x0000009Cu;
|
|
/* 0222E35C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 0222E360 */ cpu->r[12] = 0x10050000u;
|
|
/* 0222E364 */ _t4 = cpu->r[12] + 0x000000A0u;
|
|
/* 0222E364 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 0222E368 */ cpu->f[7] = fma(cpu->f[9], cpu->f[9], cpu->f[0]);
|
|
/* 0222E36C */ cpu->r[10] = 0x10050000u;
|
|
/* 0222E370 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[12]);
|
|
/* 0222E374 */ _t5 = cpu->r[10] + 0x000000A4u;
|
|
/* 0222E374 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 0222E378 */ _t6 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0222E378 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0222E378 */ if (_t7) goto L_0222E3A0; else goto L_0222E37C;
|
|
L_0222E37C: ; // 0x222e37c
|
|
/* 0222E37C */ cpu->r[11] = 0x10050000u;
|
|
/* 0222E380 */ cpu->f[7] = cpu->f[12] * cpu->f[7];
|
|
/* 0222E384 */ _t8 = cpu->r[11] + 0x00000128u;
|
|
/* 0222E384 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 0222E388 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222E388 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[8]);
|
|
/* 0222E38C */ cpu->f[7] = cpu->f[7] / cpu->f[0];
|
|
/* 0222E390 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[10]);
|
|
/* 0222E394 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 0222E394 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[9]);
|
|
/* 0222E398 */ _t11 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0222E398 */ _t12 = _t11 & 0x00000001u;
|
|
/* 0222E398 */ if (_t12) goto L_0222E3DC; else goto L_0222E39C;
|
|
L_0222E39C: ; // 0x222e39c
|
|
/* 0222E39C */ goto L_0222E3E0;
|
|
L_0222E3A0: ; // 0x222e3a0
|
|
/* 0222E3A0 */ _ft13 = sqrt(cpu->f[7]);
|
|
/* 0222E3A0 */ _ft14 = (double)(int32_t)0x00000001u;
|
|
/* 0222E3A0 */ cpu->f[11] = _ft14 / _ft13;
|
|
/* 0222E3A4 */ cpu->f[8] = cpu->f[11] * cpu->f[11];
|
|
/* 0222E3A8 */ cpu->f[9] = cpu->f[11] * cpu->f[13];
|
|
/* 0222E3AC */ cpu->f[8] = -fma(cpu->f[8], cpu->f[7], -(cpu->f[10]));
|
|
/* 0222E3B0 */ cpu->f[11] = cpu->f[8] * cpu->f[9];
|
|
/* 0222E3B4 */ cpu->r[11] = 0x10050000u;
|
|
/* 0222E3B8 */ cpu->f[7] = cpu->f[11] * cpu->f[7];
|
|
/* 0222E3BC */ _t15 = cpu->r[11] + 0x00000128u;
|
|
/* 0222E3BC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 0222E3C0 */ _t16 = cpu->r[5] + 0x00000008u;
|
|
/* 0222E3C0 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 0222E3C4 */ cpu->f[7] = cpu->f[7] / cpu->f[0];
|
|
/* 0222E3C8 */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222E3C8 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[8]);
|
|
/* 0222E3CC */ _t18 = cpu->r[5] + 0x00000000u;
|
|
/* 0222E3CC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 0222E3D0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[10]);
|
|
/* 0222E3D4 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 0222E3D4 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[9]);
|
|
/* 0222E3D8 */ _t20 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0222E3D8 */ _t21 = _t20 & 0x00000001u;
|
|
/* 0222E3D8 */ if (_t21) goto L_0222E3DC; else goto L_0222E3E0;
|
|
L_0222E3DC: ; // 0x222e3dc
|
|
/* 0222E3DC */ cpu->f[7] = cpu->f[10];
|
|
L_0222E3E0: ; // 0x222e3e0
|
|
/* 0222E3E0 */ cpu->f[11] = cpu->f[8] * cpu->f[8];
|
|
/* 0222E3E4 */ cpu->f[9] = fma(cpu->f[9], cpu->f[9], cpu->f[11]);
|
|
/* 0222E3E8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[12]);
|
|
/* 0222E3EC */ _t22 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0222E3EC */ _t23 = _t22 & 0x00000001u;
|
|
/* 0222E3EC */ if (_t23) goto L_0222E3F0; else goto L_0222E414;
|
|
L_0222E3F0: ; // 0x222e3f0
|
|
/* 0222E3F0 */ _ft24 = sqrt(cpu->f[9]);
|
|
/* 0222E3F0 */ _ft25 = (double)(int32_t)0x00000001u;
|
|
/* 0222E3F0 */ cpu->f[11] = _ft25 / _ft24;
|
|
/* 0222E3F4 */ cpu->f[12] = cpu->f[11] * cpu->f[11];
|
|
/* 0222E3F8 */ cpu->f[0] = cpu->f[11] * cpu->f[7];
|
|
/* 0222E3FC */ cpu->f[12] = -fma(cpu->f[12], cpu->f[9], -(cpu->f[10]));
|
|
/* 0222E400 */ cpu->f[0] = cpu->f[0] * cpu->f[13];
|
|
/* 0222E404 */ cpu->f[11] = cpu->f[12] * cpu->f[0];
|
|
/* 0222E408 */ /* nop */
|
|
/* 0222E40C */ /* nop */
|
|
/* 0222E410 */ /* nop */
|
|
L_0222E414: ; // 0x222e414
|
|
/* 0222E414 */ _t26 = cpu->r[1] + 0x00000008u;
|
|
/* 0222E414 */ cpu->r[11] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0222E418 */ _t27 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222E418 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0222E41C */ _t28 = cpu->r[4] + 0x00000000u;
|
|
/* 0222E41C */ rbrew_write32(cpu->mem, _t28, cpu->r[11]);
|
|
/* 0222E420 */ _t29 = cpu->r[4] + 0x00000004u;
|
|
/* 0222E420 */ rbrew_write32(cpu->mem, _t29, cpu->r[0]);
|
|
/* 0222E424 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0222E428 */ return;
|
|
}
|
|
|
|
// fn_0222E42C @ 0x222e42c
|
|
void Gambit_fn_0222E42C(CPUState* 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_0222E42C: ; // 0x222e42c
|
|
/* 0222E42C */ _t0 = cpu->r[4] + 0x00000000u;
|
|
/* 0222E42C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 0222E430 */ cpu->r[11] = 0x101F0000u;
|
|
/* 0222E434 */ _t1 = cpu->r[11] + 0x00006338u;
|
|
/* 0222E434 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 0222E434 */ cpu->r[11] = _t1;
|
|
/* 0222E438 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 0222E43C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222E43C */ _t3 = _t2 & 0x00000001u;
|
|
/* 0222E43C */ if (_t3) goto L_0222E440; else goto L_0222E450;
|
|
L_0222E440: ; // 0x222e440
|
|
/* 0222E440 */ _t4 = cpu->r[4] + 0x00000004u;
|
|
/* 0222E440 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 0222E444 */ _t5 = cpu->r[11] + 0x00000004u;
|
|
/* 0222E444 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 0222E448 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[9]);
|
|
/* 0222E44C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222E44C */ _t7 = _t6 & 0x00000001u;
|
|
/* 0222E44C */ if (_t7) goto L_0222E484; else goto L_0222E450;
|
|
L_0222E450: ; // 0x222e450
|
|
/* 0222E450 */ /* nop */
|
|
/* 0222E454 */ /* nop */
|
|
/* 0222E458 */ /* nop */
|
|
/* 0222E45C */ _t8 = cpu->r[4] + 0x00000008u;
|
|
/* 0222E45C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 0222E460 */ /* nop */
|
|
/* 0222E464 */ _t9 = cpu->r[5] + 0x00000008u;
|
|
/* 0222E464 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 0222E468 */ cpu->r[12] = 0x10050000u;
|
|
/* 0222E46C */ cpu->f[12] = fma(cpu->f[11], cpu->f[8], cpu->f[9]);
|
|
/* 0222E470 */ _t10 = cpu->r[12] + 0x0000009Cu;
|
|
/* 0222E470 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 0222E474 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[0]);
|
|
/* 0222E478 */ _t11 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0222E478 */ _t12 = _t11 & 0x00000001u;
|
|
/* 0222E478 */ if (_t12) goto L_0222E4BC; else goto L_0222E47C;
|
|
L_0222E47C: ; // 0x222e47c
|
|
/* 0222E47C */ cpu->r[3] = 0x00000000u;
|
|
/* 0222E480 */ return;
|
|
L_0222E484: ; // 0x222e484
|
|
/* 0222E484 */ _t13 = cpu->r[4] + 0x00000008u;
|
|
/* 0222E484 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 0222E488 */ _t14 = cpu->r[11] + 0x00000008u;
|
|
/* 0222E488 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 0222E48C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[10]);
|
|
/* 0222E490 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222E490 */ _t16 = _t15 & 0x00000001u;
|
|
/* 0222E490 */ if (_t16) goto L_0222E47C; else goto L_0222E494;
|
|
L_0222E494: ; // 0x222e494
|
|
/* 0222E494 */ /* nop */
|
|
/* 0222E498 */ /* nop */
|
|
/* 0222E49C */ /* nop */
|
|
/* 0222E4A0 */ /* nop */
|
|
/* 0222E4A4 */ _t17 = cpu->r[5] + 0x00000008u;
|
|
/* 0222E4A4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 0222E4A8 */ cpu->r[12] = 0x10050000u;
|
|
/* 0222E4AC */ cpu->f[12] = fma(cpu->f[11], cpu->f[8], cpu->f[9]);
|
|
/* 0222E4B0 */ _t18 = cpu->r[12] + 0x0000009Cu;
|
|
/* 0222E4B0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 0222E4B4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[0]);
|
|
/* 0222E4B8 */ _t19 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0222E4B8 */ _t20 = _t19 & 0x00000001u;
|
|
/* 0222E4B8 */ if (_t20) goto L_0222E4BC; else goto L_0222E47C;
|
|
L_0222E4BC: ; // 0x222e4bc
|
|
/* 0222E4BC */ cpu->r[3] = 0x00000001u;
|
|
/* 0222E4C0 */ return;
|
|
}
|
|
|
|
// fn_0222E4C4 @ 0x222e4c4
|
|
void Gambit_fn_0222E4C4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_0222E4C4: ; // 0x222e4c4
|
|
/* 0222E4C4 */ cpu->r[0] = cpu->lr;
|
|
/* 0222E4C8 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 0222E4C8 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 0222E4CC */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 0222E4CC */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 0222E4CC */ cpu->r[1] = _t1;
|
|
/* 0222E4D0 */ Gambit_fn_021F7000(cpu);
|
|
/* 0222E4D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0222E4D8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222E4D8 */ _t3 = _t2 & 0x00000001u;
|
|
/* 0222E4D8 */ if (_t3) goto L_0222E4F4; else goto L_0222E4DC;
|
|
L_0222E4DC: ; // 0x222e4dc
|
|
/* 0222E4DC */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222E4DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0222E4E0 */ cpu->r[12] = 0x101E0000u;
|
|
/* 0222E4E4 */ cpu->lr = cpu->r[0];
|
|
/* 0222E4E8 */ _t5 = cpu->r[12] + 0xFFFF9594u;
|
|
/* 0222E4E8 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 0222E4EC */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 0222E4F0 */ return;
|
|
L_0222E4F4: ; // 0x222e4f4
|
|
/* 0222E4F4 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222E4F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0222E4F8 */ cpu->r[12] = 0x101E0000u;
|
|
/* 0222E4FC */ cpu->lr = cpu->r[0];
|
|
/* 0222E500 */ _t7 = cpu->r[12] + 0xFFFF9590u;
|
|
/* 0222E500 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 0222E504 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 0222E508 */ return;
|
|
}
|
|
|
|
// fn_0222E4CC @ 0x222e4cc
|
|
void Gambit_fn_0222E4CC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_0222E4CC: ; // 0x222e4cc
|
|
/* 0222E4CC */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 0222E4CC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0222E4CC */ cpu->r[1] = _t0;
|
|
/* 0222E4D0 */ Gambit_fn_021F7000(cpu);
|
|
/* 0222E4D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0222E4D8 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222E4D8 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0222E4D8 */ if (_t2) goto L_0222E4F4; else goto L_0222E4DC;
|
|
L_0222E4DC: ; // 0x222e4dc
|
|
/* 0222E4DC */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222E4DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0222E4E0 */ cpu->r[12] = 0x101E0000u;
|
|
/* 0222E4E4 */ cpu->lr = cpu->r[0];
|
|
/* 0222E4E8 */ _t4 = cpu->r[12] + 0xFFFF9594u;
|
|
/* 0222E4E8 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 0222E4EC */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 0222E4F0 */ return;
|
|
L_0222E4F4: ; // 0x222e4f4
|
|
/* 0222E4F4 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222E4F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0222E4F8 */ cpu->r[12] = 0x101E0000u;
|
|
/* 0222E4FC */ cpu->lr = cpu->r[0];
|
|
/* 0222E500 */ _t6 = cpu->r[12] + 0xFFFF9590u;
|
|
/* 0222E500 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 0222E504 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 0222E508 */ return;
|
|
}
|
|
|
|
// fn_0222E50C @ 0x222e50c
|
|
void Gambit_fn_0222E50C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_0222E50C: ; // 0x222e50c
|
|
/* 0222E50C */ _t0 = cpu->r[4] + 0x00000000u;
|
|
/* 0222E50C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0222E510 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000003u);
|
|
/* 0222E514 */ cpu->r[0] = 0x00000001u;
|
|
/* 0222E518 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222E518 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0222E518 */ if (_t2) goto L_0222E528; else goto L_0222E51C;
|
|
L_0222E51C: ; // 0x222e51c
|
|
/* 0222E51C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000001u);
|
|
/* 0222E520 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222E520 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0222E520 */ if (_t4) goto L_0222E528; else goto L_0222E524;
|
|
L_0222E524: ; // 0x222e524
|
|
/* 0222E524 */ cpu->r[0] = 0x00000000u;
|
|
L_0222E528: ; // 0x222e528
|
|
/* 0222E528 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 0222E52C */ return;
|
|
}
|
|
|
|
// fn_0222E530 @ 0x222e530
|
|
void Gambit_fn_0222E530(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0222E530: ; // 0x222e530
|
|
/* 0222E530 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0222E534 */ _t0 = cpu->r[12] + 0x00006000u;
|
|
/* 0222E534 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0222E538 */ _t1 = cpu->r[12] + 0x000002CCu;
|
|
/* 0222E538 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 0222E53C */ return;
|
|
}
|
|
|
|
// fn_0222E540 @ 0x222e540
|
|
void Gambit_fn_0222E540(CPUState* cpu) {
|
|
uint32_t _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_0222E540: ; // 0x222e540
|
|
/* 0222E540 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 0222E540 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0222E540 */ cpu->r[1] = _t0;
|
|
/* 0222E544 */ /* nop */
|
|
/* 0222E548 */ cpu->r[0] = cpu->lr;
|
|
/* 0222E54C */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0222E54C */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0222E550 */ cpu->r[29] = cpu->r[4];
|
|
/* 0222E554 */ _t2 = cpu->r[3] + 0x00000004u;
|
|
/* 0222E554 */ cpu->r[10] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0222E558 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0222E55C */ _t3 = cpu->r[10] + 0x0000025Cu;
|
|
/* 0222E55C */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0222E560 */ _t4 = cpu->r[12] + 0x00006000u;
|
|
/* 0222E560 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0222E564 */ cpu->ctr = cpu->r[0];
|
|
/* 0222E568 */ _t5 = cpu->r[12] + 0x00000274u;
|
|
/* 0222E568 */ cpu->r[28] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0222E56C */ cpu->r[27] = cpu->r[3];
|
|
/* 0222E570 */ _t6 = cpu->r[3] + 0x00000051u;
|
|
/* 0222E570 */ cpu->r[31] = rbrew_read8(cpu->mem, _t6);
|
|
/* 0222E574 */ cpu->r[30] = cpu->r[5];
|
|
/* 0222E578 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222E57C */ cpu->r[11] = 0x101C0000u;
|
|
/* 0222E580 */ _t7 = cpu->r[11] + 0x0000556Cu;
|
|
/* 0222E580 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0222E584 */ cpu->r[10] = cpu->r[28] + cpu->r[11];
|
|
/* 0222E588 */ _t8 = cpu->r[10] + 0x00000104u;
|
|
/* 0222E588 */ cpu->r[4] = rbrew_read8(cpu->mem, _t8);
|
|
/* 0222E58C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x000000FFu);
|
|
/* 0222E590 */ cpu->r[7] = cpu->r[3];
|
|
/* 0222E594 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222E594 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0222E594 */ if (_t10) goto L_0222E614; else goto L_0222E598;
|
|
L_0222E598: ; // 0x222e598
|
|
/* 0222E598 */ cpu->r[6] = cpu->r[29];
|
|
/* 0222E59C */ cpu->r[5] = cpu->r[31];
|
|
/* 0222E5A0 */ cpu->r[3] = cpu->r[28];
|
|
/* 0222E5A4 */ Gambit_fn_021F000C(cpu);
|
|
/* 0222E5A8 */ cpu->r[28] = cpu->r[3];
|
|
/* 0222E5A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0222E5AC */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222E5AC */ _t12 = _t11 & 0x00000001u;
|
|
/* 0222E5AC */ if (_t12) goto L_0222E614; else goto L_0222E5B0;
|
|
L_0222E5B0: ; // 0x222e5b0
|
|
/* 0222E5B0 */ _t13 = cpu->r[27] + 0x00000004u;
|
|
/* 0222E5B0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0222E5B4 */ _t14 = cpu->r[31] + 0x0000025Cu;
|
|
/* 0222E5B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0222E5B8 */ cpu->ctr = cpu->r[0];
|
|
/* 0222E5BC */ cpu->r[3] = cpu->r[27];
|
|
/* 0222E5C0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222E5C4 */ _t15 = cpu->r[31] + 0x000003DCu;
|
|
/* 0222E5C4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0222E5C8 */ cpu->r[31] = cpu->r[3];
|
|
/* 0222E5CC */ cpu->ctr = cpu->r[8];
|
|
/* 0222E5D0 */ cpu->r[3] = cpu->r[27];
|
|
/* 0222E5D4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222E5D8 */ _t16 = cpu->r[27] + 0x00000051u;
|
|
/* 0222E5D8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t16);
|
|
/* 0222E5DC */ cpu->r[12] = 0x10050000u;
|
|
/* 0222E5E0 */ _t17 = cpu->r[27] + 0x00000058u;
|
|
/* 0222E5E0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0222E5E4 */ cpu->r[9] = cpu->r[3];
|
|
/* 0222E5E8 */ _t18 = cpu->r[27] + 0x00000054u;
|
|
/* 0222E5E8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0222E5EC */ cpu->r[4] = 0x00000000u;
|
|
/* 0222E5F0 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 0222E5F0 */ rbrew_write32(cpu->mem, _t19, cpu->r[0]);
|
|
/* 0222E5F4 */ _t20 = cpu->r[27] + 0x0000005Cu;
|
|
/* 0222E5F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0222E5F8 */ cpu->r[3] = cpu->r[28];
|
|
/* 0222E5FC */ cpu->r[10] = cpu->r[30];
|
|
/* 0222E600 */ _t21 = cpu->r[12] + 0x0000009Cu;
|
|
/* 0222E600 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 0222E604 */ cpu->r[8] = cpu->r[31];
|
|
/* 0222E608 */ cpu->r[7] = cpu->r[29];
|
|
/* 0222E60C */ _t22 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222E60C */ rbrew_write32(cpu->mem, _t22, cpu->r[0]);
|
|
/* 0222E610 */ Gambit_fn_0223D840(cpu);
|
|
L_0222E614: ; // 0x222e614
|
|
/* 0222E614 */ /* nop */
|
|
/* 0222E618 */ _t23 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0222E618 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0222E61C */ cpu->lr = cpu->r[0];
|
|
/* 0222E620 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 0222E624 */ return;
|
|
}
|
|
|
|
// fn_0222E628 @ 0x222e628
|
|
void Gambit_fn_0222E628(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t117, _t118, _t119, _t120, _t121, _t122, _t123, _t124, _t125, _t126, _t127, _t128, _t129, _t130, _t131, _t132, _t133, _t134, _t135, _t136, _t137;
|
|
|
|
L_0222E628: ; // 0x222e628
|
|
/* 0222E628 */ _t0 = cpu->r[1] + 0xFFFFFF98u;
|
|
/* 0222E628 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0222E628 */ cpu->r[1] = _t0;
|
|
/* 0222E62C */ _t1 = cpu->r[1] + 0x00000028u;
|
|
/* 0222E62C */ rbrew_write_f64(cpu->mem, _t1, cpu->f[28]);
|
|
/* 0222E630 */ /* nop */
|
|
/* 0222E634 */ _t2 = cpu->r[1] + 0x00000058u;
|
|
/* 0222E634 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 0222E638 */ /* nop */
|
|
/* 0222E63C */ /* nop */
|
|
/* 0222E640 */ cpu->r[0] = cpu->lr;
|
|
/* 0222E644 */ _t3 = cpu->r[1] + 0x00000048u;
|
|
/* 0222E644 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[30]);
|
|
/* 0222E648 */ _t4 = cpu->r[1] + 0x00000030u;
|
|
/* 0222E648 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[28]);
|
|
/* 0222E64C */ /* nop */
|
|
/* 0222E650 */ _t5 = cpu->r[1] + 0x00000038u;
|
|
/* 0222E650 */ rbrew_write_f64(cpu->mem, _t5, cpu->f[29]);
|
|
/* 0222E654 */ _t6 = cpu->r[1] + 0x00000060u;
|
|
/* 0222E654 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[31]);
|
|
/* 0222E658 */ /* nop */
|
|
/* 0222E65C */ _t7 = cpu->r[1] + 0x00000050u;
|
|
/* 0222E65C */ rbrew_write_f32(cpu->mem, _t7, cpu->f[30]);
|
|
/* 0222E660 */ cpu->r[8] = 0xFFFFFFFDu;
|
|
/* 0222E664 */ _t8 = cpu->r[1] + 0x00000040u;
|
|
/* 0222E664 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[29]);
|
|
/* 0222E668 */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 0222E66C */ cpu->r[7] = 0x101E0000u;
|
|
/* 0222E670 */ _t9 = cpu->r[1] + 0x0000006Cu;
|
|
/* 0222E670 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 0222E674 */ cpu->r[6] = 0xFFFFFFFEu;
|
|
/* 0222E678 */ _t10 = cpu->r[7] + 0x00002BB0u;
|
|
/* 0222E678 */ rbrew_write32(cpu->mem, _t10, cpu->r[8]);
|
|
/* 0222E678 */ cpu->r[7] = _t10;
|
|
/* 0222E67C */ cpu->r[5] = 0x101E0000u;
|
|
/* 0222E680 */ cpu->r[10] = 0x101E0000u;
|
|
/* 0222E684 */ _t11 = cpu->r[5] + 0x00002BB8u;
|
|
/* 0222E684 */ rbrew_write32(cpu->mem, _t11, cpu->r[6]);
|
|
/* 0222E684 */ cpu->r[5] = _t11;
|
|
/* 0222E688 */ cpu->r[10] = cpu->r[10] + 0x00002BC8u;
|
|
/* 0222E68C */ _t12 = cpu->r[7] + 0x00000004u;
|
|
/* 0222E68C */ rbrew_write32(cpu->mem, _t12, cpu->r[4]);
|
|
/* 0222E690 */ cpu->r[9] = 0x101F0000u;
|
|
/* 0222E694 */ _t13 = cpu->r[10] + 0x00000004u;
|
|
/* 0222E694 */ rbrew_write32(cpu->mem, _t13, cpu->r[4]);
|
|
/* 0222E698 */ cpu->r[9] = cpu->r[9] + 0x00005BFCu;
|
|
/* 0222E69C */ _t14 = cpu->r[5] + 0x00000004u;
|
|
/* 0222E69C */ rbrew_write32(cpu->mem, _t14, cpu->r[4]);
|
|
/* 0222E6A0 */ cpu->r[12] = 0x101E0000u;
|
|
/* 0222E6A4 */ _t15 = cpu->r[9] + 0x00000008u;
|
|
/* 0222E6A4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0222E6A8 */ cpu->r[31] = 0x101E0000u;
|
|
/* 0222E6AC */ _t16 = cpu->r[12] + 0x00002BC0u;
|
|
/* 0222E6AC */ rbrew_write32(cpu->mem, _t16, cpu->r[4]);
|
|
/* 0222E6AC */ cpu->r[12] = _t16;
|
|
/* 0222E6B0 */ cpu->r[11] = 0x00000002u;
|
|
/* 0222E6B4 */ _t17 = cpu->r[9] + 0x00000004u;
|
|
/* 0222E6B4 */ cpu->r[26] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0222E6B8 */ _t18 = cpu->r[9] + 0x00000000u;
|
|
/* 0222E6B8 */ cpu->r[28] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0222E6BC */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 0222E6BC */ rbrew_write32(cpu->mem, _t19, cpu->r[11]);
|
|
/* 0222E6C0 */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 0222E6C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0222E6C4 */ _t21 = cpu->r[31] + 0x00002BDCu;
|
|
/* 0222E6C4 */ rbrew_write32(cpu->mem, _t21, cpu->r[28]);
|
|
/* 0222E6C4 */ cpu->r[31] = _t21;
|
|
/* 0222E6C8 */ cpu->r[0] = 0x00000004u;
|
|
/* 0222E6CC */ _t22 = cpu->r[12] + 0x00000004u;
|
|
/* 0222E6CC */ rbrew_write32(cpu->mem, _t22, cpu->r[4]);
|
|
/* 0222E6D0 */ cpu->r[12] = 0x101F0000u;
|
|
/* 0222E6D4 */ _t23 = cpu->r[9] + 0x0000000Cu;
|
|
/* 0222E6D4 */ cpu->r[27] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0222E6D8 */ _t24 = cpu->r[12] + 0x00005C2Cu;
|
|
/* 0222E6D8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0222E6D8 */ cpu->r[12] = _t24;
|
|
/* 0222E6DC */ _t25 = cpu->r[31] + 0x00000010u;
|
|
/* 0222E6DC */ rbrew_write32(cpu->mem, _t25, cpu->r[28]);
|
|
/* 0222E6E0 */ _t26 = cpu->r[31] + 0x00000018u;
|
|
/* 0222E6E0 */ rbrew_write32(cpu->mem, _t26, cpu->r[29]);
|
|
/* 0222E6E4 */ _t27 = cpu->r[31] + 0x00000030u;
|
|
/* 0222E6E4 */ rbrew_write32(cpu->mem, _t27, cpu->r[9]);
|
|
/* 0222E6E8 */ _t28 = cpu->r[31] + 0x0000002Cu;
|
|
/* 0222E6E8 */ rbrew_write32(cpu->mem, _t28, cpu->r[27]);
|
|
/* 0222E6EC */ _t29 = cpu->r[31] + 0x00000008u;
|
|
/* 0222E6EC */ rbrew_write32(cpu->mem, _t29, cpu->r[29]);
|
|
/* 0222E6F0 */ _t30 = cpu->r[31] + 0x00000024u;
|
|
/* 0222E6F0 */ rbrew_write32(cpu->mem, _t30, cpu->r[26]);
|
|
/* 0222E6F4 */ cpu->r[7] = 0x101E0000u;
|
|
/* 0222E6F8 */ _t31 = cpu->r[31] + 0x00000028u;
|
|
/* 0222E6F8 */ rbrew_write32(cpu->mem, _t31, cpu->r[29]);
|
|
/* 0222E6FC */ cpu->r[6] = 0x101F0000u;
|
|
/* 0222E700 */ _t32 = cpu->r[7] + 0x00002BD8u;
|
|
/* 0222E700 */ rbrew_write32(cpu->mem, _t32, cpu->r[0]);
|
|
/* 0222E704 */ _t33 = cpu->r[6] + 0x00005C1Cu;
|
|
/* 0222E704 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 0222E704 */ cpu->r[6] = _t33;
|
|
/* 0222E708 */ _t34 = cpu->r[31] + 0x00000004u;
|
|
/* 0222E708 */ rbrew_write32(cpu->mem, _t34, cpu->r[26]);
|
|
/* 0222E70C */ _t35 = cpu->r[31] + 0x00000020u;
|
|
/* 0222E70C */ rbrew_write32(cpu->mem, _t35, cpu->r[28]);
|
|
/* 0222E710 */ cpu->r[5] = 0x101E0000u;
|
|
/* 0222E714 */ _t36 = cpu->r[12] + 0x0000000Cu;
|
|
/* 0222E714 */ cpu->r[11] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0222E718 */ _t37 = cpu->r[5] + 0x00002BD0u;
|
|
/* 0222E718 */ rbrew_write32(cpu->mem, _t37, cpu->r[8]);
|
|
/* 0222E718 */ cpu->r[5] = _t37;
|
|
/* 0222E71C */ _t38 = cpu->r[31] + 0x00000014u;
|
|
/* 0222E71C */ rbrew_write32(cpu->mem, _t38, cpu->r[26]);
|
|
/* 0222E720 */ _t39 = cpu->r[10] + 0x00000000u;
|
|
/* 0222E720 */ rbrew_write32(cpu->mem, _t39, cpu->r[8]);
|
|
/* 0222E724 */ _t40 = cpu->r[31] + 0x00000040u;
|
|
/* 0222E724 */ rbrew_write32(cpu->mem, _t40, cpu->r[0]);
|
|
/* 0222E728 */ _t41 = cpu->r[6] + 0x0000000Cu;
|
|
/* 0222E728 */ cpu->r[0] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0222E72C */ _t42 = cpu->r[6] + 0x00000008u;
|
|
/* 0222E72C */ cpu->r[9] = rbrew_read32(cpu->mem, _t42);
|
|
/* 0222E730 */ _t43 = cpu->r[6] + 0x00000004u;
|
|
/* 0222E730 */ cpu->r[8] = rbrew_read32(cpu->mem, _t43);
|
|
/* 0222E734 */ _t44 = cpu->r[31] + 0x0000003Cu;
|
|
/* 0222E734 */ rbrew_write32(cpu->mem, _t44, cpu->r[11]);
|
|
/* 0222E738 */ _t45 = cpu->r[31] + 0x00000044u;
|
|
/* 0222E738 */ rbrew_write32(cpu->mem, _t45, cpu->r[8]);
|
|
/* 0222E73C */ _t46 = cpu->r[31] + 0x00000048u;
|
|
/* 0222E73C */ rbrew_write32(cpu->mem, _t46, cpu->r[9]);
|
|
/* 0222E740 */ _t47 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0222E740 */ rbrew_write32(cpu->mem, _t47, cpu->r[27]);
|
|
/* 0222E744 */ _t48 = cpu->r[5] + 0x00000004u;
|
|
/* 0222E744 */ rbrew_write32(cpu->mem, _t48, cpu->r[4]);
|
|
/* 0222E748 */ _t49 = cpu->r[12] + 0x00000004u;
|
|
/* 0222E748 */ cpu->r[5] = rbrew_read32(cpu->mem, _t49);
|
|
/* 0222E74C */ _t50 = cpu->r[31] + 0x0000004Cu;
|
|
/* 0222E74C */ rbrew_write32(cpu->mem, _t50, cpu->r[0]);
|
|
/* 0222E750 */ cpu->r[11] = 0x101F0000u;
|
|
/* 0222E754 */ _t51 = cpu->r[12] + 0x00000008u;
|
|
/* 0222E754 */ cpu->r[7] = rbrew_read32(cpu->mem, _t51);
|
|
/* 0222E758 */ _t52 = cpu->r[11] + 0x00005BDCu;
|
|
/* 0222E758 */ cpu->r[30] = rbrew_read32(cpu->mem, _t52);
|
|
/* 0222E758 */ cpu->r[11] = _t52;
|
|
/* 0222E75C */ _t53 = cpu->r[11] + 0x00000008u;
|
|
/* 0222E75C */ cpu->r[3] = rbrew_read32(cpu->mem, _t53);
|
|
/* 0222E760 */ _t54 = cpu->r[11] + 0x0000000Cu;
|
|
/* 0222E760 */ cpu->r[4] = rbrew_read32(cpu->mem, _t54);
|
|
/* 0222E764 */ _t55 = cpu->r[11] + 0x00000004u;
|
|
/* 0222E764 */ cpu->r[11] = rbrew_read32(cpu->mem, _t55);
|
|
/* 0222E768 */ _t56 = cpu->r[31] + 0x00000088u;
|
|
/* 0222E768 */ rbrew_write32(cpu->mem, _t56, cpu->r[3]);
|
|
/* 0222E76C */ _t57 = cpu->r[31] + 0x00000080u;
|
|
/* 0222E76C */ rbrew_write32(cpu->mem, _t57, cpu->r[30]);
|
|
/* 0222E770 */ _t58 = cpu->r[31] + 0x00000034u;
|
|
/* 0222E770 */ rbrew_write32(cpu->mem, _t58, cpu->r[5]);
|
|
/* 0222E774 */ cpu->r[12] = 0x101F0000u;
|
|
/* 0222E778 */ _t59 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0222E778 */ rbrew_write32(cpu->mem, _t59, cpu->r[27]);
|
|
/* 0222E77C */ cpu->r[5] = 0x101F0000u;
|
|
/* 0222E780 */ _t60 = cpu->r[31] + 0x00000038u;
|
|
/* 0222E780 */ rbrew_write32(cpu->mem, _t60, cpu->r[7]);
|
|
/* 0222E784 */ cpu->r[5] = cpu->r[5] + 0x00005C4Cu;
|
|
/* 0222E788 */ _t61 = cpu->r[12] + 0x00005C3Cu;
|
|
/* 0222E788 */ cpu->r[7] = rbrew_read32(cpu->mem, _t61);
|
|
/* 0222E788 */ cpu->r[12] = _t61;
|
|
/* 0222E78C */ _t62 = cpu->r[12] + 0x00000008u;
|
|
/* 0222E78C */ cpu->r[9] = rbrew_read32(cpu->mem, _t62);
|
|
/* 0222E790 */ _t63 = cpu->r[5] + 0x00000004u;
|
|
/* 0222E790 */ cpu->r[8] = rbrew_read32(cpu->mem, _t63);
|
|
/* 0222E794 */ _t64 = cpu->r[31] + 0x00000058u;
|
|
/* 0222E794 */ rbrew_write32(cpu->mem, _t64, cpu->r[3]);
|
|
/* 0222E798 */ _t65 = cpu->r[31] + 0x00000064u;
|
|
/* 0222E798 */ rbrew_write32(cpu->mem, _t65, cpu->r[8]);
|
|
/* 0222E79C */ _t66 = cpu->r[31] + 0x00000090u;
|
|
/* 0222E79C */ rbrew_write32(cpu->mem, _t66, cpu->r[30]);
|
|
/* 0222E7A0 */ _t67 = cpu->r[31] + 0x00000070u;
|
|
/* 0222E7A0 */ rbrew_write32(cpu->mem, _t67, cpu->r[7]);
|
|
/* 0222E7A4 */ _t68 = cpu->r[12] + 0x00000004u;
|
|
/* 0222E7A4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t68);
|
|
/* 0222E7A8 */ _t69 = cpu->r[12] + 0x0000000Cu;
|
|
/* 0222E7A8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t69);
|
|
/* 0222E7AC */ _t70 = cpu->r[31] + 0x00000074u;
|
|
/* 0222E7AC */ rbrew_write32(cpu->mem, _t70, cpu->r[8]);
|
|
/* 0222E7B0 */ _t71 = cpu->r[31] + 0x0000007Cu;
|
|
/* 0222E7B0 */ rbrew_write32(cpu->mem, _t71, cpu->r[10]);
|
|
/* 0222E7B4 */ _t72 = cpu->r[5] + 0x0000000Cu;
|
|
/* 0222E7B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t72);
|
|
/* 0222E7B8 */ _t73 = cpu->r[31] + 0x0000005Cu;
|
|
/* 0222E7B8 */ rbrew_write32(cpu->mem, _t73, cpu->r[4]);
|
|
/* 0222E7BC */ _t74 = cpu->r[31] + 0x0000006Cu;
|
|
/* 0222E7BC */ rbrew_write32(cpu->mem, _t74, cpu->r[0]);
|
|
/* 0222E7C0 */ _t75 = cpu->r[31] + 0x00000094u;
|
|
/* 0222E7C0 */ rbrew_write32(cpu->mem, _t75, cpu->r[11]);
|
|
/* 0222E7C4 */ _t76 = cpu->r[31] + 0x00000054u;
|
|
/* 0222E7C4 */ rbrew_write32(cpu->mem, _t76, cpu->r[11]);
|
|
/* 0222E7C8 */ _t77 = cpu->r[31] + 0x00000084u;
|
|
/* 0222E7C8 */ rbrew_write32(cpu->mem, _t77, cpu->r[11]);
|
|
/* 0222E7CC */ _t78 = cpu->r[31] + 0x00000050u;
|
|
/* 0222E7CC */ rbrew_write32(cpu->mem, _t78, cpu->r[30]);
|
|
/* 0222E7D0 */ _t79 = cpu->r[5] + 0x00000000u;
|
|
/* 0222E7D0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t79);
|
|
/* 0222E7D4 */ cpu->r[10] = 0x101F0000u;
|
|
/* 0222E7D8 */ _t80 = cpu->r[31] + 0x0000008Cu;
|
|
/* 0222E7D8 */ rbrew_write32(cpu->mem, _t80, cpu->r[4]);
|
|
/* 0222E7DC */ _t81 = cpu->r[10] + 0x00005C0Cu;
|
|
/* 0222E7DC */ cpu->r[7] = rbrew_read32(cpu->mem, _t81);
|
|
/* 0222E7DC */ cpu->r[10] = _t81;
|
|
/* 0222E7E0 */ _t82 = cpu->r[10] + 0x00000004u;
|
|
/* 0222E7E0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t82);
|
|
/* 0222E7E4 */ _t83 = cpu->r[31] + 0x000000BCu;
|
|
/* 0222E7E4 */ rbrew_write32(cpu->mem, _t83, cpu->r[27]);
|
|
/* 0222E7E8 */ _t84 = cpu->r[31] + 0x000000A0u;
|
|
/* 0222E7E8 */ rbrew_write32(cpu->mem, _t84, cpu->r[7]);
|
|
/* 0222E7EC */ _t85 = cpu->r[31] + 0x000000A4u;
|
|
/* 0222E7EC */ rbrew_write32(cpu->mem, _t85, cpu->r[8]);
|
|
/* 0222E7F0 */ _t86 = cpu->r[31] + 0x00000078u;
|
|
/* 0222E7F0 */ rbrew_write32(cpu->mem, _t86, cpu->r[9]);
|
|
/* 0222E7F4 */ cpu->r[12] = 0x10050000u;
|
|
/* 0222E7F8 */ _t87 = cpu->r[10] + 0x00000008u;
|
|
/* 0222E7F8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t87);
|
|
/* 0222E7FC */ _t88 = cpu->r[12] + 0x00000098u;
|
|
/* 0222E7FC */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t88);
|
|
/* 0222E800 */ _t89 = cpu->r[31] + 0x000000A8u;
|
|
/* 0222E800 */ rbrew_write32(cpu->mem, _t89, cpu->r[9]);
|
|
/* 0222E804 */ _t90 = cpu->r[31] + 0x00000060u;
|
|
/* 0222E804 */ rbrew_write32(cpu->mem, _t90, cpu->r[6]);
|
|
/* 0222E808 */ _t91 = cpu->r[31] + 0x00000098u;
|
|
/* 0222E808 */ rbrew_write32(cpu->mem, _t91, cpu->r[3]);
|
|
/* 0222E80C */ _t92 = cpu->r[31] + 0x0000009Cu;
|
|
/* 0222E80C */ rbrew_write32(cpu->mem, _t92, cpu->r[4]);
|
|
/* 0222E810 */ _t93 = cpu->r[5] + 0x00000008u;
|
|
/* 0222E810 */ cpu->r[9] = rbrew_read32(cpu->mem, _t93);
|
|
/* 0222E814 */ _t94 = cpu->r[31] + 0x000000B8u;
|
|
/* 0222E814 */ rbrew_write32(cpu->mem, _t94, cpu->r[29]);
|
|
/* 0222E818 */ cpu->r[12] = 0x10050000u;
|
|
/* 0222E81C */ _t95 = cpu->r[31] + 0x00000068u;
|
|
/* 0222E81C */ rbrew_write32(cpu->mem, _t95, cpu->r[9]);
|
|
/* 0222E820 */ cpu->r[3] = cpu->r[31] + 0x000000C0u;
|
|
/* 0222E824 */ _t96 = cpu->r[12] + 0x00000130u;
|
|
/* 0222E824 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t96);
|
|
/* 0222E828 */ _t97 = cpu->r[31] + 0x000000B0u;
|
|
/* 0222E828 */ rbrew_write32(cpu->mem, _t97, cpu->r[28]);
|
|
/* 0222E82C */ cpu->r[12] = 0x10050000u;
|
|
/* 0222E830 */ _t98 = cpu->r[31] + 0x000000B4u;
|
|
/* 0222E830 */ rbrew_write32(cpu->mem, _t98, cpu->r[26]);
|
|
/* 0222E834 */ _t99 = cpu->r[12] + 0x0000012Cu;
|
|
/* 0222E834 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t99);
|
|
/* 0222E838 */ cpu->r[11] = 0x10050000u;
|
|
/* 0222E83C */ _t100 = cpu->r[10] + 0x0000000Cu;
|
|
/* 0222E83C */ cpu->r[10] = rbrew_read32(cpu->mem, _t100);
|
|
/* 0222E840 */ _t101 = cpu->r[11] + 0x000000A8u;
|
|
/* 0222E840 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t101);
|
|
/* 0222E844 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0xFFFFFF40u);
|
|
/* 0222E848 */ _t102 = cpu->r[31] + 0x000000ACu;
|
|
/* 0222E848 */ rbrew_write32(cpu->mem, _t102, cpu->r[10]);
|
|
/* 0222E84C */ _t103 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222E84C */ _t104 = _t103 & 0x00000001u;
|
|
/* 0222E84C */ if (_t104) goto L_0222E850; else goto L_0222E860;
|
|
L_0222E850: ; // 0x222e850
|
|
/* 0222E850 */ cpu->r[3] = 0x00000010u;
|
|
/* 0222E854 */ Gambit_fn_02801A78(cpu);
|
|
/* 0222E858 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0222E85C */ _t105 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222E85C */ _t106 = _t105 & 0x00000001u;
|
|
/* 0222E85C */ if (_t106) goto L_0222E870; else goto L_0222E860;
|
|
L_0222E860: ; // 0x222e860
|
|
/* 0222E860 */ _t107 = cpu->r[3] + 0x00000004u;
|
|
/* 0222E860 */ rbrew_write_f32(cpu->mem, _t107, cpu->f[29]);
|
|
/* 0222E864 */ _t108 = cpu->r[3] + 0x00000008u;
|
|
/* 0222E864 */ rbrew_write_f32(cpu->mem, _t108, cpu->f[28]);
|
|
/* 0222E868 */ _t109 = cpu->r[3] + 0x00000000u;
|
|
/* 0222E868 */ rbrew_write_f32(cpu->mem, _t109, cpu->f[31]);
|
|
/* 0222E86C */ _t110 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0222E86C */ rbrew_write_f32(cpu->mem, _t110, cpu->f[30]);
|
|
L_0222E870: ; // 0x222e870
|
|
/* 0222E870 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0xFFFFFF30u);
|
|
/* 0222E874 */ cpu->r[3] = cpu->r[31] + 0x000000D0u;
|
|
/* 0222E878 */ _t111 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222E878 */ _t112 = _t111 & 0x00000001u;
|
|
/* 0222E878 */ if (_t112) goto L_0222E87C; else goto L_0222E88C;
|
|
L_0222E87C: ; // 0x222e87c
|
|
/* 0222E87C */ cpu->r[3] = 0x00000010u;
|
|
/* 0222E880 */ Gambit_fn_02801A78(cpu);
|
|
/* 0222E884 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0222E888 */ _t113 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222E888 */ _t114 = _t113 & 0x00000001u;
|
|
/* 0222E888 */ if (_t114) goto L_0222E89C; else goto L_0222E88C;
|
|
L_0222E88C: ; // 0x222e88c
|
|
/* 0222E88C */ _t115 = cpu->r[3] + 0x00000004u;
|
|
/* 0222E88C */ rbrew_write_f32(cpu->mem, _t115, cpu->f[29]);
|
|
/* 0222E890 */ _t116 = cpu->r[3] + 0x00000008u;
|
|
/* 0222E890 */ rbrew_write_f32(cpu->mem, _t116, cpu->f[31]);
|
|
/* 0222E894 */ _t117 = cpu->r[3] + 0x00000000u;
|
|
/* 0222E894 */ rbrew_write_f32(cpu->mem, _t117, cpu->f[28]);
|
|
/* 0222E898 */ _t118 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0222E898 */ rbrew_write_f32(cpu->mem, _t118, cpu->f[30]);
|
|
L_0222E89C: ; // 0x222e89c
|
|
/* 0222E89C */ cpu->r[8] = 0x101F0000u;
|
|
/* 0222E8A0 */ cpu->r[8] = cpu->r[8] + 0x00005BCCu;
|
|
/* 0222E8A4 */ _t119 = cpu->r[8] + 0x00000004u;
|
|
/* 0222E8A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t119);
|
|
/* 0222E8A8 */ _t120 = cpu->r[8] + 0x00000000u;
|
|
/* 0222E8A8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t120);
|
|
/* 0222E8AC */ _t121 = cpu->r[31] + 0x000000E4u;
|
|
/* 0222E8AC */ rbrew_write32(cpu->mem, _t121, cpu->r[0]);
|
|
/* 0222E8B0 */ _t122 = cpu->r[31] + 0x000000E0u;
|
|
/* 0222E8B0 */ rbrew_write32(cpu->mem, _t122, cpu->r[11]);
|
|
/* 0222E8B4 */ _t123 = cpu->r[8] + 0x0000000Cu;
|
|
/* 0222E8B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t123);
|
|
/* 0222E8B8 */ _t124 = cpu->r[8] + 0x00000008u;
|
|
/* 0222E8B8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t124);
|
|
/* 0222E8BC */ _t125 = cpu->r[31] + 0x000000ECu;
|
|
/* 0222E8BC */ rbrew_write32(cpu->mem, _t125, cpu->r[0]);
|
|
/* 0222E8C0 */ _t126 = cpu->r[31] + 0x000000E8u;
|
|
/* 0222E8C0 */ rbrew_write32(cpu->mem, _t126, cpu->r[10]);
|
|
/* 0222E8C4 */ /* nop */
|
|
/* 0222E8C8 */ _t127 = cpu->r[1] + 0x00000040u;
|
|
/* 0222E8C8 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t127);
|
|
/* 0222E8CC */ _t128 = cpu->r[1] + 0x00000050u;
|
|
/* 0222E8CC */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t128);
|
|
/* 0222E8D0 */ _t129 = cpu->r[1] + 0x00000038u;
|
|
/* 0222E8D0 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t129);
|
|
/* 0222E8D4 */ _t130 = cpu->r[1] + 0x00000048u;
|
|
/* 0222E8D4 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t130);
|
|
/* 0222E8D8 */ _t131 = cpu->r[1] + 0x00000030u;
|
|
/* 0222E8D8 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t131);
|
|
/* 0222E8DC */ _t132 = cpu->r[1] + 0x00000060u;
|
|
/* 0222E8DC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t132);
|
|
/* 0222E8E0 */ _t133 = cpu->r[1] + 0x00000028u;
|
|
/* 0222E8E0 */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t133);
|
|
/* 0222E8E4 */ _t134 = cpu->r[1] + 0x00000058u;
|
|
/* 0222E8E4 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t134);
|
|
/* 0222E8E8 */ _t135 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0222E8E8 */ _t136 = _t135 & 0x00000001u;
|
|
/* 0222E8E8 */ if (_t136) goto L_0222E8EC; // else: addr-0 trap, fall-through
|
|
L_0222E8EC: ; // 0x222e8ec
|
|
/* 0222E8EC */ _t137 = cpu->r[1] + 0x0000006Cu;
|
|
/* 0222E8EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t137);
|
|
/* 0222E8F0 */ cpu->lr = cpu->r[0];
|
|
/* 0222E8F4 */ cpu->r[1] = cpu->r[1] + 0x00000068u;
|
|
/* 0222E8F8 */ return;
|
|
}
|
|
|
|
// fn_0222E8FC @ 0x222e8fc
|
|
void Gambit_fn_0222E8FC(CPUState* cpu) {
|
|
L_0222E8FC: ; // 0x222e8fc
|
|
/* 0222E8FC */ return;
|
|
}
|
|
|
|
// fn_0222E900 @ 0x222e900
|
|
void Gambit_fn_0222E900(CPUState* cpu) {
|
|
L_0222E900: ; // 0x222e900
|
|
/* 0222E900 */ return;
|
|
}
|
|
|
|
// fn_0222E904 @ 0x222e904
|
|
void Gambit_fn_0222E904(CPUState* cpu) {
|
|
L_0222E904: ; // 0x222e904
|
|
/* 0222E904 */ return;
|
|
}
|
|
|
|
// fn_0222E908 @ 0x222e908
|
|
void Gambit_fn_0222E908(CPUState* cpu) {
|
|
L_0222E908: ; // 0x222e908
|
|
/* 0222E908 */ return;
|
|
}
|
|
|
|
// fn_0222E90C @ 0x222e90c
|
|
void Gambit_fn_0222E90C(CPUState* cpu) {
|
|
L_0222E90C: ; // 0x222e90c
|
|
/* 0222E90C */ return;
|
|
}
|
|
|
|
// fn_0222E910 @ 0x222e910
|
|
void Gambit_fn_0222E910(CPUState* cpu) {
|
|
L_0222E910: ; // 0x222e910
|
|
/* 0222E910 */ return;
|
|
}
|
|
|
|
// fn_0222E914 @ 0x222e914
|
|
void Gambit_fn_0222E914(CPUState* cpu) {
|
|
L_0222E914: ; // 0x222e914
|
|
/* 0222E914 */ return;
|
|
}
|
|
|
|
// fn_0222E918 @ 0x222e918
|
|
void Gambit_fn_0222E918(CPUState* cpu) {
|
|
L_0222E918: ; // 0x222e918
|
|
/* 0222E918 */ return;
|
|
}
|
|
|
|
// fn_0222E91C @ 0x222e91c
|
|
void Gambit_fn_0222E91C(CPUState* cpu) {
|
|
L_0222E91C: ; // 0x222e91c
|
|
/* 0222E91C */ return;
|
|
}
|
|
|
|
// fn_0222E920 @ 0x222e920
|
|
void Gambit_fn_0222E920(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_0222E920: ; // 0x222e920
|
|
/* 0222E920 */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 0222E920 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0222E924 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0222E928 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222E928 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0222E928 */ if (_t2) goto L_0222E934; else goto L_0222E92C;
|
|
L_0222E92C: ; // 0x222e92c
|
|
/* 0222E92C */ cpu->r[3] = cpu->r[12] + 0x00000034u;
|
|
/* 0222E930 */ return;
|
|
L_0222E934: ; // 0x222e934
|
|
/* 0222E934 */ cpu->r[3] = 0x00000000u;
|
|
/* 0222E938 */ return;
|
|
}
|
|
|
|
// fn_0222E93C @ 0x222e93c
|
|
void Gambit_fn_0222E93C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_0222E93C: ; // 0x222e93c
|
|
/* 0222E93C */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 0222E93C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0222E940 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0222E944 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222E944 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0222E944 */ if (_t2) goto L_0222E950; else goto L_0222E948;
|
|
L_0222E948: ; // 0x222e948
|
|
/* 0222E948 */ cpu->r[3] = cpu->r[12] + 0x00000064u;
|
|
/* 0222E94C */ return;
|
|
L_0222E950: ; // 0x222e950
|
|
/* 0222E950 */ cpu->r[3] = 0x00000000u;
|
|
/* 0222E954 */ return;
|
|
}
|
|
|
|
// fn_0222E958 @ 0x222e958
|
|
void Gambit_fn_0222E958(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0222E958: ; // 0x222e958
|
|
/* 0222E958 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0222E958 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0222E95C */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0222E95C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0222E960 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222E960 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0222E960 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0222E960 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0222E960 */ goto L_0222E964;
|
|
L_0222E964: ; // 0x222e964
|
|
/* 0222E964 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0222E964 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0222E968 */ _t5 = cpu->r[12] + 0x0000004Cu;
|
|
/* 0222E968 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0222E96C */ cpu->ctr = cpu->r[0];
|
|
/* 0222E970 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0222E974 @ 0x222e974
|
|
void Gambit_fn_0222E974(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0222E974: ; // 0x222e974
|
|
/* 0222E974 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0222E974 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0222E978 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Du, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0222E978 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0222E97C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222E97C */ _t2 = _t1 & 0x00000001u;
|
|
/* 0222E97C */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0222E97C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0222E97C */ goto L_0222E980;
|
|
L_0222E980: ; // 0x222e980
|
|
/* 0222E980 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0222E980 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0222E984 */ _t5 = cpu->r[12] + 0x0000005Cu;
|
|
/* 0222E984 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0222E988 */ cpu->ctr = cpu->r[0];
|
|
/* 0222E98C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0222E990 @ 0x222e990
|
|
void Gambit_fn_0222E990(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0222E990: ; // 0x222e990
|
|
/* 0222E990 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0222E990 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0222E994 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Au, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0222E994 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0222E998 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222E998 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0222E998 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 0222E998 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0222E998 */ goto L_0222E99C;
|
|
L_0222E99C: ; // 0x222e99c
|
|
/* 0222E99C */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 0222E99C */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0222E9A0 */ _t5 = cpu->r[11] + 0x00000074u;
|
|
/* 0222E9A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0222E9A4 */ cpu->ctr = cpu->r[0];
|
|
/* 0222E9A8 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0222E9AC @ 0x222e9ac
|
|
void Gambit_fn_0222E9AC(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0222E9AC: ; // 0x222e9ac
|
|
/* 0222E9AC */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0222E9AC */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0222E9B0 */ _t1 = cpu->r[12] + 0x0000002Cu;
|
|
/* 0222E9B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0222E9B4 */ cpu->ctr = cpu->r[0];
|
|
/* 0222E9B8 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0222E9BC @ 0x222e9bc
|
|
void Gambit_fn_0222E9BC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0222E9BC: ; // 0x222e9bc
|
|
/* 0222E9BC */ cpu->r[0] = cpu->lr;
|
|
/* 0222E9C0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0222E9C0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0222E9C0 */ cpu->r[1] = _t0;
|
|
/* 0222E9C4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222E9C4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0222E9C8 */ cpu->r[31] = cpu->r[3];
|
|
/* 0222E9CC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0222E9CC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0222E9D0 */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0222E9D0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0222E9D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 0222E9D8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222E9D8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0222E9D8 */ if (_t5) goto L_0222E9DC; else goto L_0222E9F8;
|
|
L_0222E9DC: ; // 0x222e9dc
|
|
/* 0222E9DC */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 0222E9DC */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0222E9E0 */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 0222E9E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0222E9E4 */ cpu->ctr = cpu->r[0];
|
|
/* 0222E9E8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0222E9EC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222E9F0 */ cpu->r[0] = 0x00000002u;
|
|
/* 0222E9F4 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0222E9F4 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_0222E9F8: ; // 0x222e9f8
|
|
/* 0222E9F8 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0222E9F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0222E9FC */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222E9FC */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0222EA00 */ cpu->lr = cpu->r[0];
|
|
/* 0222EA04 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0222EA08 */ return;
|
|
}
|
|
|
|
// fn_0222E9C0 @ 0x222e9c0
|
|
void Gambit_fn_0222E9C0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0222E9C0: ; // 0x222e9c0
|
|
/* 0222E9C0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0222E9C0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0222E9C0 */ cpu->r[1] = _t0;
|
|
/* 0222E9C4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222E9C4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0222E9C8 */ cpu->r[31] = cpu->r[3];
|
|
/* 0222E9CC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0222E9CC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0222E9D0 */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0222E9D0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0222E9D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 0222E9D8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0222E9D8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0222E9D8 */ if (_t5) goto L_0222E9DC; else goto L_0222E9F8;
|
|
L_0222E9DC: ; // 0x222e9dc
|
|
/* 0222E9DC */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 0222E9DC */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0222E9E0 */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 0222E9E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0222E9E4 */ cpu->ctr = cpu->r[0];
|
|
/* 0222E9E8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0222E9EC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0222E9F0 */ cpu->r[0] = 0x00000002u;
|
|
/* 0222E9F4 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0222E9F4 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_0222E9F8: ; // 0x222e9f8
|
|
/* 0222E9F8 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0222E9F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0222E9FC */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0222E9FC */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0222EA00 */ cpu->lr = cpu->r[0];
|
|
/* 0222EA04 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0222EA08 */ return;
|
|
}
|
|
|
|
// fn_0222EA0C @ 0x222ea0c
|
|
void Gambit_fn_0222EA0C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0222EA0C: ; // 0x222ea0c
|
|
/* 0222EA0C */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0222EA0C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0222EA10 */ _t1 = cpu->r[12] + 0x0000008Cu;
|
|
/* 0222EA10 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0222EA14 */ cpu->ctr = cpu->r[0];
|
|
/* 0222EA18 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0222EA1C @ 0x222ea1c
|
|
void Gambit_fn_0222EA1C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0222EA1C: ; // 0x222ea1c
|
|
/* 0222EA1C */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0222EA1C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0222EA20 */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 0222EA20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0222EA24 */ cpu->ctr = cpu->r[0];
|
|
/* 0222EA28 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0222EA2C @ 0x222ea2c
|
|
void Gambit_fn_0222EA2C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0222EA2C: ; // 0x222ea2c
|
|
/* 0222EA2C */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0222EA2C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0222EA30 */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 0222EA30 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0222EA34 */ cpu->ctr = cpu->r[0];
|
|
/* 0222EA38 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0222EA3C @ 0x222ea3c
|
|
void Gambit_fn_0222EA3C(CPUState* cpu) {
|
|
L_0222EA3C: ; // 0x222ea3c
|
|
/* 0222EA3C */ cpu->r[3] = 0x00000001u;
|
|
/* 0222EA40 */ return;
|
|
}
|
|
|
|
// fn_0222EA44 @ 0x222ea44
|
|
void Gambit_fn_0222EA44(CPUState* cpu) {
|
|
L_0222EA44: ; // 0x222ea44
|
|
/* 0222EA44 */ return;
|
|
}
|
|
|
|
// fn_0222EA48 @ 0x222ea48
|
|
void Gambit_fn_0222EA48(CPUState* cpu) {
|
|
L_0222EA48: ; // 0x222ea48
|
|
/* 0222EA48 */ return;
|
|
}
|
|
|
|
// fn_0222EA4C @ 0x222ea4c
|
|
void Gambit_fn_0222EA4C(CPUState* cpu) {
|
|
L_0222EA4C: ; // 0x222ea4c
|
|
/* 0222EA4C */ return;
|
|
}
|
|
|
|
// fn_0222EA50 @ 0x222ea50
|
|
void Gambit_fn_0222EA50(CPUState* cpu) {
|
|
L_0222EA50: ; // 0x222ea50
|
|
/* 0222EA50 */ return;
|
|
}
|
|
|
|
// fn_0222EA54 @ 0x222ea54
|
|
void Gambit_fn_0222EA54(CPUState* cpu) {
|
|
L_0222EA54: ; // 0x222ea54
|
|
/* 0222EA54 */ return;
|
|
}
|
|
|
|
// fn_0222EA58 @ 0x222ea58
|
|
void Gambit_fn_0222EA58(CPUState* cpu) {
|
|
L_0222EA58: ; // 0x222ea58
|
|
/* 0222EA58 */ return;
|
|
}
|
|
|
|
// fn_0222EA5C @ 0x222ea5c
|
|
void Gambit_fn_0222EA5C(CPUState* cpu) {
|
|
L_0222EA5C: ; // 0x222ea5c
|
|
/* 0222EA5C */ return;
|
|
}
|
|
|
|
// fn_0222EA60 @ 0x222ea60
|
|
void Gambit_fn_0222EA60(CPUState* cpu) {
|
|
L_0222EA60: ; // 0x222ea60
|
|
/* 0222EA60 */ cpu->r[3] = 0x00000001u;
|
|
/* 0222EA64 */ return;
|
|
}
|
|
|
|
// fn_0222EA68 @ 0x222ea68
|
|
void Gambit_fn_0222EA68(CPUState* cpu) {
|
|
L_0222EA68: ; // 0x222ea68
|
|
/* 0222EA68 */ cpu->r[3] = 0x00000000u;
|
|
/* 0222EA6C */ return;
|
|
}
|
|
|
|
// fn_0222EA70 @ 0x222ea70
|
|
void Gambit_fn_0222EA70(CPUState* cpu) {
|
|
L_0222EA70: ; // 0x222ea70
|
|
/* 0222EA70 */ cpu->r[3] = 0x00000001u;
|
|
/* 0222EA74 */ return;
|
|
}
|
|
|
|
// fn_0222EA78 @ 0x222ea78
|
|
void Gambit_fn_0222EA78(CPUState* cpu) {
|
|
L_0222EA78: ; // 0x222ea78
|
|
/* 0222EA78 */ cpu->r[3] = 0x00000000u;
|
|
/* 0222EA7C */ return;
|
|
}
|
|
|
|
// fn_0222EA80 @ 0x222ea80
|
|
void Gambit_fn_0222EA80(CPUState* cpu) {
|
|
L_0222EA80: ; // 0x222ea80
|
|
/* 0222EA80 */ cpu->r[3] = 0x00000000u;
|
|
/* 0222EA84 */ return;
|
|
}
|
|
|
|
// fn_0222EA88 @ 0x222ea88
|
|
void Gambit_fn_0222EA88(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0222EA88: ; // 0x222ea88
|
|
/* 0222EA88 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0222EA88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0222EA8C */ _t1 = cpu->r[12] + 0x0000021Cu;
|
|
/* 0222EA8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0222EA90 */ cpu->ctr = cpu->r[0];
|
|
/* 0222EA94 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0222EA98 @ 0x222ea98
|
|
void Gambit_fn_0222EA98(CPUState* cpu) {
|
|
L_0222EA98: ; // 0x222ea98
|
|
/* 0222EA98 */ cpu->r[3] = 0x00000000u;
|
|
/* 0222EA9C */ return;
|
|
}
|
|
|
|
// fn_0222EAA0 @ 0x222eaa0
|
|
void Gambit_fn_0222EAA0(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0222EAA0: ; // 0x222eaa0
|
|
/* 0222EAA0 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0222EAA0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0222EAA4 */ _t1 = cpu->r[12] + 0x0000027Cu;
|
|
/* 0222EAA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0222EAA8 */ cpu->ctr = cpu->r[0];
|
|
/* 0222EAAC */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0222EAB0 @ 0x222eab0
|
|
void Gambit_fn_0222EAB0(CPUState* cpu) {
|
|
L_0222EAB0: ; // 0x222eab0
|
|
/* 0222EAB0 */ cpu->r[3] = 0x00000002u;
|
|
/* 0222EAB4 */ return;
|
|
}
|
|
|
|
// fn_0222EAB8 @ 0x222eab8
|
|
void Gambit_fn_0222EAB8(CPUState* cpu) {
|
|
L_0222EAB8: ; // 0x222eab8
|
|
/* 0222EAB8 */ cpu->r[3] = 0x00000000u;
|
|
/* 0222EABC */ return;
|
|
}
|
|
|
|
// fn_0222EAC0 @ 0x222eac0
|
|
void Gambit_fn_0222EAC0(CPUState* cpu) {
|
|
L_0222EAC0: ; // 0x222eac0
|
|
/* 0222EAC0 */ cpu->r[3] = 0x00000001u;
|
|
/* 0222EAC4 */ return;
|
|
}
|
|
|
|
// fn_0222EAC8 @ 0x222eac8
|
|
void Gambit_fn_0222EAC8(CPUState* cpu) {
|
|
L_0222EAC8: ; // 0x222eac8
|
|
/* 0222EAC8 */ cpu->r[3] = 0x00000000u;
|
|
/* 0222EACC */ return;
|
|
}
|
|
|